package

public fun test(): kotlin.Unit

public/*package*/ open class E</*0*/ T : kotlin.Any!> {
    public/*package*/ constructor E</*0*/ T : kotlin.Any!>()
    public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
    public/*package*/ open fun getT(): T!
    public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
    public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}

public/*package*/ interface I</*0*/ P : kotlin.Any!> {
    public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
    public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
    public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}

public/*package*/ open class X</*0*/ B : I<P!>!, /*1*/ P : kotlin.Any!, /*2*/ A : I<B!>!> {
    public/*package*/ constructor X</*0*/ B : I<P!>!, /*1*/ P : kotlin.Any!, /*2*/ A : I<B!>!>()
    public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
    public/*package*/ open fun getId(): kotlin.String!
    public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
    public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String

    // Static members
    public/*package*/ final val E: E<(X<(raw) I<kotlin.Any!>!, (raw) kotlin.Any!, (raw) I<I<kotlin.Any!>!>!>..X<out I<*>!, *, out I<out I<*>!>!>?)>!
}
