class Test : IA by A(), IB by B() interface IA { var a1: String? var a2: String? var a3: String? var a4: String? var a5: String? } interface IB { var b1: String? var b2: String? var b3: String? var b4: String? var b5: String? } class A : IA { override var a1: String? = null override var a2: String? = null override var a3: String? = null override var a4: String? = null override var a5: String? = null } class B : IB { override var b1: String? = null override var b2: String? = null override var b3: String? = null override var b4: String? = null override var b5: String? = null }