/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
class Super {}
class Sub extends Super {}
class GenericArrayHolder<T extends Super>
{
T[] array;
@SuppressWarnings("unchecked")
GenericArrayHolder(int n)
{
array = (T[]) new Super[n];
}
void set(int i, T t)
{
array[i] = t;
}
}
class Test
{
public static void main
(String[] args
) {
GenericArrayHolder<Sub> h = new GenericArrayHolder<>(10);
//h.set(3, new Sub());
h.array[3] = null; // ClassCastException
}
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgpjbGFzcyBTdXBlciB7fQoKY2xhc3MgU3ViIGV4dGVuZHMgU3VwZXIge30KCmNsYXNzIEdlbmVyaWNBcnJheUhvbGRlcjxUIGV4dGVuZHMgU3VwZXI+CnsKICAgIFRbXSBhcnJheTsKCiAgICBAU3VwcHJlc3NXYXJuaW5ncygidW5jaGVja2VkIikKICAgIEdlbmVyaWNBcnJheUhvbGRlcihpbnQgbikKICAgIHsKICAgICAgICBhcnJheSA9IChUW10pIG5ldyBTdXBlcltuXTsKICAgIH0KCiAgICB2b2lkIHNldChpbnQgaSwgVCB0KQogICAgewogICAgICAgIGFycmF5W2ldID0gdDsKICAgIH0KfQoKY2xhc3MgVGVzdAp7CiAgICBwdWJsaWMgc3RhdGljIHZvaWQgbWFpbihTdHJpbmdbXSBhcmdzKQogICAgewogICAgICAgIEdlbmVyaWNBcnJheUhvbGRlcjxTdWI+IGggPSBuZXcgR2VuZXJpY0FycmF5SG9sZGVyPD4oMTApOwogICAgICAgIC8vaC5zZXQoMywgbmV3IFN1YigpKTsKICAgICAgICBoLmFycmF5WzNdID0gbnVsbDsgLy8gQ2xhc3NDYXN0RXhjZXB0aW9uCiAgICB9Cn0=