interface T { fun foo() } class A(val t: T) : T { override fun foo() { t.foo() } }