package

public fun test1(/*0*/ js: JSub): kotlin.CharSequence
public fun test2(/*0*/ js: JSub): java.lang.CharSequence
public fun test3(/*0*/ s: Sub): kotlin.CharSequence
public fun test4(/*0*/ s: Sub): java.lang.CharSequence
public fun test5(/*0*/ js: JSub): Sub
public fun test6(/*0*/ s: Sub): JSub

public final class JSub : java.lang.CharSequence {
    public constructor JSub()
    public abstract override /*1*/ /*fake_override*/ fun charAt(/*0*/ p0: kotlin.Int): kotlin.Char
    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 abstract override /*1*/ /*fake_override*/ fun length(): kotlin.Int
    public abstract override /*1*/ /*fake_override*/ fun subSequence(/*0*/ p0: kotlin.Int, /*1*/ p1: kotlin.Int): kotlin.CharSequence!
    public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}

public final class Sub : kotlin.CharSequence {
    public constructor Sub()
    public abstract override /*1*/ /*fake_override*/ val length: kotlin.Int
    public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
    public abstract override /*1*/ /*fake_override*/ fun get(/*0*/ index: kotlin.Int): kotlin.Char
    public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
    public abstract override /*1*/ /*fake_override*/ fun subSequence(/*0*/ startIndex: kotlin.Int, /*1*/ endIndex: kotlin.Int): kotlin.CharSequence
    public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
