import java.util.List; import java.util.function.Function; class Base { interface Seq extends Iterable { static Seq of(Iterable source) { return null; } Seq map(Function mapper); } } class Test3 extends Base { void test4(Seq> map) { Seq> mapped = map.map(Seq::of); } }