import java.util.*; class Test { interface I { T foo(); } class Inner { } > Inner staticFactory() { return null; } > void foo(I coll, Inner assertion) { } void test(I>> coll) { foo(coll, staticFactory()); } }