class A {} class B extends A> { void bar(B b, B eb, B sb, B s) { foo(b); foo(eb); foo(sb); foo(s); foo1(b); foo1(eb); foo1(sb); foo1(s); foo2(b); foo2(eb); foo2(sb); foo2(s); foo3(b); foo3(eb); foo3(sb); foo3(s); foo4(b); foo4(eb); foo4(sb); foo4(s); foo5(b); foo5(eb); foo5(sb); foo5(s); } void foo(A> x) {} void foo1(A> x) {} void foo2(A> x) {} void foo3(A> x) {} void foo4(A> x) {} void foo5(A> x) {} }