package

public final class CBar : IBar {
    public constructor CBar()
    public open override /*1*/ val bar: kotlin.Int
    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 final class CBarT</*0*/ T> : IBarT<T> {
    public constructor CBarT</*0*/ T>()
    public open override /*1*/ val bar: 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 final class CFoo : IFoo {
    public constructor CFoo()
    public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
    public open override /*1*/ fun foo(): kotlin.Unit
    public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
    public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}

public final class CQux : IQux {
    public constructor CQux()
    public open override /*1*/ val qux: kotlin.Int
    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 Derived : Final {
    public constructor Derived()
    public final override /*1*/ /*fake_override*/ val bar: kotlin.Int
    public final override /*1*/ /*fake_override*/ var qux: kotlin.Int
    public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
    public final override /*1*/ /*fake_override*/ fun foo(): kotlin.Unit
    public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
    public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}

public open class Final {
    public constructor Final()
    public final val bar: kotlin.Int = 0
    public final var qux: kotlin.Int
    public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
    public final fun foo(): kotlin.Unit
    public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
    public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}

public interface IBar {
    public abstract val bar: kotlin.Int
    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 interface IBarT</*0*/ T> {
    public abstract val bar: 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 interface IFoo {
    public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
    public abstract fun foo(): kotlin.Unit
    public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
    public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}

public interface IQux {
    public abstract val qux: kotlin.Int
    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 final class Test1 : Final, IFoo {
    public constructor Test1()
    public final override /*1*/ /*fake_override*/ val bar: kotlin.Int
    public final override /*1*/ /*fake_override*/ var qux: kotlin.Int
    public open override /*2*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
    public open override /*2*/ /*delegation*/ fun foo(): kotlin.Unit
    public open override /*2*/ /*fake_override*/ fun hashCode(): kotlin.Int
    public open override /*2*/ /*fake_override*/ fun toString(): kotlin.String
}

public final class Test2 : Final, IBar {
    public constructor Test2()
    public open override /*2*/ /*delegation*/ val bar: kotlin.Int
    public final override /*1*/ /*fake_override*/ var qux: kotlin.Int
    public open override /*2*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
    public final override /*1*/ /*fake_override*/ fun foo(): kotlin.Unit
    public open override /*2*/ /*fake_override*/ fun hashCode(): kotlin.Int
    public open override /*2*/ /*fake_override*/ fun toString(): kotlin.String
}

public final class Test3 : Final, IQux {
    public constructor Test3()
    public final override /*1*/ /*fake_override*/ val bar: kotlin.Int
    public open override /*2*/ /*delegation*/ val qux: kotlin.Int
    public open override /*2*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
    public final override /*1*/ /*fake_override*/ fun foo(): kotlin.Unit
    public open override /*2*/ /*fake_override*/ fun hashCode(): kotlin.Int
    public open override /*2*/ /*fake_override*/ fun toString(): kotlin.String
}

public final class Test4 : Derived, IFoo {
    public constructor Test4()
    public final override /*1*/ /*fake_override*/ val bar: kotlin.Int
    public final override /*1*/ /*fake_override*/ var qux: kotlin.Int
    public open override /*2*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
    public open override /*2*/ /*delegation*/ fun foo(): kotlin.Unit
    public open override /*2*/ /*fake_override*/ fun hashCode(): kotlin.Int
    public open override /*2*/ /*fake_override*/ fun toString(): kotlin.String
}

public final class Test5 : Derived, IBar {
    public constructor Test5()
    public open override /*2*/ /*delegation*/ val bar: kotlin.Int
    public final override /*1*/ /*fake_override*/ var qux: kotlin.Int
    public open override /*2*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
    public final override /*1*/ /*fake_override*/ fun foo(): kotlin.Unit
    public open override /*2*/ /*fake_override*/ fun hashCode(): kotlin.Int
    public open override /*2*/ /*fake_override*/ fun toString(): kotlin.String
}

public final class Test6 : Derived, IQux {
    public constructor Test6()
    public final override /*1*/ /*fake_override*/ val bar: kotlin.Int
    public open override /*2*/ /*delegation*/ val qux: kotlin.Int
    public open override /*2*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
    public final override /*1*/ /*fake_override*/ fun foo(): kotlin.Unit
    public open override /*2*/ /*fake_override*/ fun hashCode(): kotlin.Int
    public open override /*2*/ /*fake_override*/ fun toString(): kotlin.String
}

public final class Test7 : Final, IBarT<kotlin.Int> {
    public constructor Test7()
    public open override /*2*/ /*delegation*/ val bar: kotlin.Int
    public final override /*1*/ /*fake_override*/ var qux: kotlin.Int
    public open override /*2*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
    public final override /*1*/ /*fake_override*/ fun foo(): kotlin.Unit
    public open override /*2*/ /*fake_override*/ fun hashCode(): kotlin.Int
    public open override /*2*/ /*fake_override*/ fun toString(): kotlin.String
}

public final class Test8 : Final, IBarT<kotlin.Int> {
    public constructor Test8()
    public open override /*2*/ /*delegation*/ val bar: kotlin.Int
    public final override /*1*/ /*fake_override*/ var qux: kotlin.Int
    public open override /*2*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
    public final override /*1*/ /*fake_override*/ fun foo(): kotlin.Unit
    public open override /*2*/ /*fake_override*/ fun hashCode(): kotlin.Int
    public open override /*2*/ /*fake_override*/ fun toString(): kotlin.String
}
