class test{} class list<A,B>{ A a; B b(){} C d; } class main<x> extends list<list<test,test>,list<test,test>> { x r; list <test>l = new list(); void main(){ list<test,list<test,test>>s= new list(); s.b(); } } class List<A>{ List <A>next = new List(); A object = null; }