namespace <root>

// <namespace name="Jet87">
namespace Jet87

internal open class Jet87.A : jet.Any {
    public final /*constructor*/ fun <init>(): Jet87.A
    internal final fun foo(): jet.Int
}
internal abstract trait Jet87.B : jet.Any {
    internal open fun bar(): jet.Double
}
internal final class Jet87.Bar</*0*/ T : Jet87.Foo> : jet.Any {
    public final /*constructor*/ fun </*0*/ T : Jet87.Foo><init>(): Jet87.Bar<T>
}
internal final class Jet87.Buzz</*0*/ T : Jet87.Bar<jet.Int> & [ERROR : nioho]> : jet.Any {
    public final /*constructor*/ fun </*0*/ T : Jet87.Bar<jet.Int> & [ERROR : nioho]><init>(): Jet87.Buzz<T>
}
internal final class Jet87.C : Jet87.A, Jet87.B {
    public final /*constructor*/ fun <init>(): Jet87.C
    internal open override /*1*/ fun bar(): jet.Double
    internal final override /*1*/ fun foo(): jet.Int
}
internal final class Jet87.D : jet.Any {
    public final /*constructor*/ fun <init>(): Jet87.D
    internal final class object Jet87.D.<no name provided> : Jet87.A, Jet87.B {
        internal final /*constructor*/ fun <init>(): Jet87.D.<no name provided>
        internal open override /*1*/ fun bar(): jet.Double
        internal final override /*1*/ fun foo(): jet.Int
    }
}
internal final class Jet87.Foo : jet.Any {
    public final /*constructor*/ fun <init>(): Jet87.Foo
}
internal final class Jet87.Test</*0*/ T : jet.Any?> : jet.Any {
    public final /*constructor*/ fun </*0*/ T : jet.Any?><init>(): Jet87.Test<T>
}
internal final class Jet87.Test1</*0*/ T : Jet87.A & Jet87.B> : jet.Any {
    public final /*constructor*/ fun </*0*/ T : Jet87.A & Jet87.B><init>(): Jet87.Test1<T>
    internal final fun test(/*0*/ t: T): jet.Tuple0
}
internal final class Jet87.X</*0*/ T : Jet87.Foo> : jet.Any {
    public final /*constructor*/ fun </*0*/ T : Jet87.Foo><init>(): Jet87.X<T>
}
internal final class Jet87.Y</*0*/ T : Jet87.Bar<Jet87.Foo> & Jet87.Foo> : jet.Any {
    public final /*constructor*/ fun </*0*/ T : Jet87.Bar<Jet87.Foo> & Jet87.Foo><init>(): Jet87.Y<T>
}
internal final val t1: jet.Tuple0
internal final val t2: jet.Tuple0
internal final val t3: jet.Tuple0
internal final val  </*0*/ T : jet.Any?, /*1*/ B : T> x: jet.Int
internal final fun test(): jet.Tuple0
internal final fun </*0*/ T : Jet87.A & Jet87.B>test2(/*0*/ t: T): jet.Tuple0
// </namespace name="Jet87">
