interface G { fun foo(t : T) : T } class GC() : G { }