class Generic {
class A {}
class B extends A {}
void f() {
B b = new B();
C l = asC(new A[]{b});
A a = new A();
C m = asC(new A[]{a});
}
public static C asC(T... ts) {
return null;
}
class C {}
void m() {
System.out.println(String.format("%s %s", new Object[] {"Z", "X"}));
}
}