package test public trait InheritedSameAdaptersWithSubstitution { public trait Sub : test.InheritedSameAdaptersWithSubstitution.Super1, test.InheritedSameAdaptersWithSubstitution.Super2Substituted { public final override /*2*/ /*fake_override*/ fun foo(/*0*/ p0: ((kotlin.String!, kotlin.String!) -> kotlin.Int)!): kotlin.Unit public abstract override /*2*/ /*fake_override*/ fun foo(/*0*/ p0: java.util.Comparator!): kotlin.Unit } public trait Super1 { public final /*synthesized*/ fun foo(/*0*/ p0: ((kotlin.String!, kotlin.String!) -> kotlin.Int)!): kotlin.Unit public abstract fun foo(/*0*/ p0: java.util.Comparator!): kotlin.Unit } public trait Super2 { public final /*synthesized*/ fun foo(/*0*/ p0: ((T!, T!) -> kotlin.Int)!): kotlin.Unit public abstract fun foo(/*0*/ p0: java.util.Comparator!): kotlin.Unit } public trait Super2Substituted : test.InheritedSameAdaptersWithSubstitution.Super2 { public final override /*1*/ /*fake_override*/ fun foo(/*0*/ p0: ((kotlin.String!, kotlin.String!) -> kotlin.Int)!): kotlin.Unit public abstract override /*1*/ /*fake_override*/ fun foo(/*0*/ p0: java.util.Comparator!): kotlin.Unit } // Static members public final /*synthesized*/ fun Sub(/*0*/ function: (java.util.Comparator!) -> kotlin.Unit): test.InheritedSameAdaptersWithSubstitution.Sub public final /*synthesized*/ fun Super1(/*0*/ function: (java.util.Comparator!) -> kotlin.Unit): test.InheritedSameAdaptersWithSubstitution.Super1 public final /*synthesized*/ fun Super2(/*0*/ function: (java.util.Comparator!) -> kotlin.Unit): test.InheritedSameAdaptersWithSubstitution.Super2 public final /*synthesized*/ fun Super2Substituted(/*0*/ function: (java.util.Comparator!) -> kotlin.Unit): test.InheritedSameAdaptersWithSubstitution.Super2Substituted }