public abstract interface HalfSubstitutedTypeParameters : R|kotlin/Any| {
    public abstract interface Sub : R|test/HalfSubstitutedTypeParameters.Super| {
        public abstract fun foo(): R|ft<test/HalfSubstitutedTypeParameters.TrickyList<kotlin/Int!, kotlin/String!>, test/HalfSubstitutedTypeParameters.TrickyList<kotlin/Int!, kotlin/String!>?>|

    }
    public abstract interface Super : R|kotlin/Any| {
        public abstract fun foo(): R|ft<kotlin/collections/MutableList<kotlin/String!>, kotlin/collections/List<kotlin/String!>?>|

        public abstract fun dummy(): R|kotlin/Unit|

    }
    public abstract interface TrickyList<X : R|kotlin/Any!|, E : R|kotlin/Any!|> : R|kotlin/collections/MutableList<ft<E & Any, E?>>| {
    }
}
