package test

public trait DeeplySubstitutedClassParameter2 : java.lang.Object {
    
    public trait Middle</*0*/ E> : test.DeeplySubstitutedClassParameter2.Super<E> {
        public abstract override /*1*/ /*fake_override*/ fun foo(/*0*/ p0 : E) : Unit
    }
    
    public trait Sub : test.DeeplySubstitutedClassParameter2.Middle<jet.String> {
        public abstract override /*1*/ fun foo(/*0*/ p0 : jet.String) : Unit
    }
    
    public trait Super</*0*/ T> : java.lang.Object {
        public abstract fun foo(/*0*/ p0 : T) : Unit
    }
}
