package

public fun foo(/*0*/ javaClass: JavaClass<kotlin.String>): kotlin.String

public/*package*/ interface I</*0*/ T : kotlin.Any!> {
    public abstract fun doIt(/*0*/ t: T!): T!
    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 open class JavaClass</*0*/ T : kotlin.Any!> {
    public constructor JavaClass</*0*/ T : kotlin.Any!>()
    public open fun doSomething(/*0*/ t: T!, /*1*/ anInt: kotlin.Int, /*2*/ i: I<T!>!): T!
    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
}
