package

public open class Invariant</*0*/ T> {
    public constructor Invariant</*0*/ 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 MemberScope {
    public constructor MemberScope()
    public final fun TestBasic(): kotlin.Unit
    @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public final fun TestBasicReverse(): kotlin.Unit
    public final fun TestDifferencesInInternalAndPublicVisibilitiesA(): kotlin.Unit
    @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public final fun TestDifferencesInInternalAndPublicVisibilitiesAReverse(): kotlin.Unit
    internal final fun TestDifferencesInInternalAndPublicVisibilitiesB(): kotlin.Unit
    @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") internal final fun TestDifferencesInInternalAndPublicVisibilitiesBReverse(): kotlin.Unit
    internal final fun TestDifferencesInPrivateAndInternalVisibilitiesA(): kotlin.Unit
    @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") internal final fun TestDifferencesInPrivateAndInternalVisibilitiesAReverse(): kotlin.Unit
    private final fun TestDifferencesInPrivateAndInternalVisibilitiesB(): kotlin.Unit
    @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") private final fun TestDifferencesInPrivateAndInternalVisibilitiesBReverse(): kotlin.Unit
    public final fun TestDifferencesInPrivateAndPublicVisibilitiesA(): kotlin.Unit
    @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public final fun TestDifferencesInPrivateAndPublicVisibilitiesAReverse(): kotlin.Unit
    private final fun TestDifferencesInPrivateAndPublicVisibilitiesB(): kotlin.Unit
    @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") private final fun TestDifferencesInPrivateAndPublicVisibilitiesBReverse(): kotlin.Unit
    public final fun TestDifferentlyNamedValueParameters(/*0*/ argB: UserKlass): kotlin.Unit
    @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public final fun TestDifferentlyNamedValueParametersReverse(/*0*/ argB: UserKlass): kotlin.Unit
    public final fun TestFunctionVsDelegatedPrimaryConstructorCall(): kotlin.Unit
    @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public final fun TestFunctionVsDelegatedPrimaryConstructorCallReverse(): kotlin.Unit
    public final fun TestFunctionVsDelegatedSuperConstructorCall(): kotlin.Unit
    @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public final fun TestFunctionVsDelegatedSuperConstructorCallReverse(): kotlin.Unit
    public final fun TestFunctionVsPrimaryConstructor(): kotlin.Unit
    @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public final fun TestFunctionVsPrimaryConstructorReverse(): kotlin.Unit
    public final inline fun </*0*/ reified T> TestFunctionWithReifiedTypeParameterVsConstructorA(): kotlin.Unit
    @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public final inline fun </*0*/ reified T> TestFunctionWithReifiedTypeParameterVsConstructorAReverse(): kotlin.Unit
    public final inline fun </*0*/ reified T> TestFunctionWithReifiedTypeParameterVsConstructorB(/*0*/ arg: T): kotlin.Unit
    @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public final inline fun </*0*/ reified T> TestFunctionWithReifiedTypeParameterVsConstructorBReverse(/*0*/ arg: T): kotlin.Unit
    public final inline fun </*0*/ reified T> TestFunctionWithReifiedTypeParameterVsConstructorC(/*0*/ arg: Invariant<T>): kotlin.Unit
    @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public final inline fun </*0*/ reified T> TestFunctionWithReifiedTypeParameterVsConstructorCReverse(/*0*/ arg: Invariant<T>): kotlin.Unit
    internal final fun TestIdenticalInternalVisibility(): kotlin.Unit
    @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") internal final fun TestIdenticalInternalVisibilityReverse(): kotlin.Unit
    private final fun TestIdenticalPrivateVisibility(): kotlin.Unit
    @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") private final fun TestIdenticalPrivateVisibilityReverse(): kotlin.Unit
    public final fun TestIdenticalReturnTypes(): MemberScope.TestIdenticalReturnTypes
    @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public final fun TestIdenticalReturnTypesReverse(): MemberScope.TestIdenticalReturnTypesReverse
    public final fun </*0*/ T> TestIdenticalTypeParametersA(): kotlin.Unit
    @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public final fun </*0*/ T> TestIdenticalTypeParametersAReverse(): kotlin.Unit
    public final fun </*0*/ T> TestIdenticalTypeParametersB(/*0*/ arg: T): kotlin.Unit
    @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public final fun </*0*/ T> TestIdenticalTypeParametersBReverse(/*0*/ arg: T): kotlin.Unit
    public final fun </*0*/ T> TestIdenticalTypeParametersC(/*0*/ arg: Invariant<T>): kotlin.Unit
    @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public final fun </*0*/ T> TestIdenticalTypeParametersCReverse(/*0*/ arg: Invariant<T>): kotlin.Unit
    public final fun TestIdenticalValueParameters(/*0*/ arg: UserKlass): kotlin.Unit
    @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public final fun TestIdenticalValueParametersReverse(/*0*/ arg: UserKlass): kotlin.Unit
    public final inline fun TestInlineFunctionVsConstructor(): kotlin.Unit
    @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public final inline fun TestInlineFunctionVsConstructorReverse(): kotlin.Unit
    public final fun TestMultipleDifferentlyNamedValueParametersA(/*0*/ arg1: UserKlassA, /*1*/ arg2B: UserKlassB): kotlin.Unit
    @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public final fun TestMultipleDifferentlyNamedValueParametersAReverse(/*0*/ arg1: UserKlassA, /*1*/ arg2B: UserKlassB): kotlin.Unit
    public final fun TestMultipleDifferentlyNamedValueParametersB(/*0*/ arg1B: UserKlassA, /*1*/ arg2B: UserKlassB): kotlin.Unit
    @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public final fun TestMultipleDifferentlyNamedValueParametersBReverse(/*0*/ arg1B: UserKlassA, /*1*/ arg2B: UserKlassB): kotlin.Unit
    public final fun </*0*/ T1, /*1*/ T2> TestMultipleIdenticalTypeParameters(): kotlin.Unit
    @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public final fun </*0*/ T1, /*1*/ T2> TestMultipleIdenticalTypeParametersReverse(): kotlin.Unit
    public final fun TestMultipleIdenticalValueParameters(/*0*/ arg1: UserKlassA, /*1*/ arg2: UserKlassB): kotlin.Unit
    @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public final fun TestMultipleIdenticalValueParametersReverse(/*0*/ arg1: UserKlassA, /*1*/ arg2: UserKlassB): kotlin.Unit
    public final fun TestMultipleTypeAliasedValueParameterTypesA(/*0*/ arg1: UserKlassA, /*1*/ arg2: SameUserKlassB /* = UserKlassB */): kotlin.Unit
    @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public final fun TestMultipleTypeAliasedValueParameterTypesAReverse(/*0*/ arg1: UserKlassA, /*1*/ arg2: SameUserKlassB /* = UserKlassB */): kotlin.Unit
    public final fun TestMultipleTypeAliasedValueParameterTypesB(/*0*/ arg1: SameUserKlassA /* = UserKlassA */, /*1*/ arg2: SameUserKlassB /* = UserKlassB */): kotlin.Unit
    @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public final fun TestMultipleTypeAliasedValueParameterTypesBReverse(/*0*/ arg1: SameUserKlassA /* = UserKlassA */, /*1*/ arg2: SameUserKlassB /* = UserKlassB */): kotlin.Unit
    public final tailrec fun TestTailrecFunctionVsConstructor(): kotlin.Unit
    @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public final tailrec fun TestTailrecFunctionVsConstructorReverse(): kotlin.Unit
    public final fun TestTypeAliasedValueParameterTypesA(/*0*/ arg: SameUserKlass /* = UserKlass */): kotlin.Unit
    @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public final fun TestTypeAliasedValueParameterTypesAReverse(/*0*/ arg: SameUserKlass /* = UserKlass */): kotlin.Unit
    public final fun TestTypeAliasedValueParameterTypesB(/*0*/ arg: UserKlass): kotlin.Unit
    @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public final fun TestTypeAliasedValueParameterTypesBReverse(/*0*/ arg: UserKlass): kotlin.Unit
    public final fun </*0*/ T : UserInterface> TestTypeParameterWithIdenticalUpperBoundsA(): kotlin.Unit
    @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public final fun </*0*/ T : UserInterface> TestTypeParameterWithIdenticalUpperBoundsAReverse(): kotlin.Unit
    public final fun </*0*/ T : UserInterface> TestTypeParameterWithIdenticalUpperBoundsB(/*0*/ arg: T): kotlin.Unit
    @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public final fun </*0*/ T : UserInterface> TestTypeParameterWithIdenticalUpperBoundsBReverse(/*0*/ arg: T): kotlin.Unit
    public final fun </*0*/ T : UserInterface> TestTypeParameterWithIdenticalUpperBoundsC(/*0*/ arg: Invariant<T>): kotlin.Unit
    @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public final fun </*0*/ T : UserInterface> TestTypeParameterWithIdenticalUpperBoundsCReverse(/*0*/ arg: Invariant<T>): kotlin.Unit
    public final fun </*0*/ T : UserInterfaceA> TestTypeParameterWithMultipleIdenticalUpperBoundsAA(): kotlin.Unit where T : UserInterfaceB
    @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public final fun </*0*/ T : UserInterfaceA> TestTypeParameterWithMultipleIdenticalUpperBoundsAAReverse(): kotlin.Unit where T : UserInterfaceB
    public final fun </*0*/ T : UserInterfaceA> TestTypeParameterWithMultipleIdenticalUpperBoundsAB(/*0*/ arg: T): kotlin.Unit where T : UserInterfaceB
    @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public final fun </*0*/ T : UserInterfaceA> TestTypeParameterWithMultipleIdenticalUpperBoundsABReverse(/*0*/ arg: T): kotlin.Unit where T : UserInterfaceB
    public final fun </*0*/ T : UserInterfaceA> TestTypeParameterWithMultipleIdenticalUpperBoundsAC(/*0*/ arg: Invariant<T>): kotlin.Unit where T : UserInterfaceB
    @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public final fun </*0*/ T : UserInterfaceA> TestTypeParameterWithMultipleIdenticalUpperBoundsACReverse(/*0*/ arg: Invariant<T>): kotlin.Unit where T : UserInterfaceB
    public final fun </*0*/ T : UserInterfaceA> TestTypeParameterWithMultipleIdenticalUpperBoundsBA(): kotlin.Unit where T : UserInterfaceB
    @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public final fun </*0*/ T : UserInterfaceA> TestTypeParameterWithMultipleIdenticalUpperBoundsBAReverse(): kotlin.Unit where T : UserInterfaceB
    public final fun </*0*/ T : UserInterfaceA> TestTypeParameterWithMultipleIdenticalUpperBoundsBB(/*0*/ arg: T): kotlin.Unit where T : UserInterfaceB
    @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public final fun </*0*/ T : UserInterfaceA> TestTypeParameterWithMultipleIdenticalUpperBoundsBBReverse(/*0*/ arg: T): kotlin.Unit where T : UserInterfaceB
    public final fun </*0*/ T : UserInterfaceA> TestTypeParameterWithMultipleIdenticalUpperBoundsBC(/*0*/ arg: Invariant<T>): kotlin.Unit where T : UserInterfaceB
    @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public final fun </*0*/ T : UserInterfaceA> TestTypeParameterWithMultipleIdenticalUpperBoundsBCReverse(/*0*/ arg: Invariant<T>): kotlin.Unit where T : UserInterfaceB
    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 SuperConstructorSource {
        public constructor SuperConstructorSource(/*0*/ placeholder: UserKlass)
        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 TestBasic {
        @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public constructor TestBasic()
        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 TestBasicReverse {
        public constructor TestBasicReverse()
        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 TestDifferencesInInternalAndPublicVisibilitiesA {
        @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") internal constructor TestDifferencesInInternalAndPublicVisibilitiesA()
        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 TestDifferencesInInternalAndPublicVisibilitiesAReverse {
        internal constructor TestDifferencesInInternalAndPublicVisibilitiesAReverse()
        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 TestDifferencesInInternalAndPublicVisibilitiesB {
        @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public constructor TestDifferencesInInternalAndPublicVisibilitiesB()
        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 TestDifferencesInInternalAndPublicVisibilitiesBReverse {
        public constructor TestDifferencesInInternalAndPublicVisibilitiesBReverse()
        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 TestDifferencesInPrivateAndInternalVisibilitiesA {
        @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") private constructor TestDifferencesInPrivateAndInternalVisibilitiesA()
        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 TestDifferencesInPrivateAndInternalVisibilitiesAReverse {
        private constructor TestDifferencesInPrivateAndInternalVisibilitiesAReverse()
        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 TestDifferencesInPrivateAndInternalVisibilitiesB {
        @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") internal constructor TestDifferencesInPrivateAndInternalVisibilitiesB()
        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 TestDifferencesInPrivateAndInternalVisibilitiesBReverse {
        internal constructor TestDifferencesInPrivateAndInternalVisibilitiesBReverse()
        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 TestDifferencesInPrivateAndPublicVisibilitiesA {
        @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") private constructor TestDifferencesInPrivateAndPublicVisibilitiesA()
        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 TestDifferencesInPrivateAndPublicVisibilitiesAReverse {
        private constructor TestDifferencesInPrivateAndPublicVisibilitiesAReverse()
        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 TestDifferencesInPrivateAndPublicVisibilitiesB {
        @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public constructor TestDifferencesInPrivateAndPublicVisibilitiesB()
        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 TestDifferencesInPrivateAndPublicVisibilitiesBReverse {
        public constructor TestDifferencesInPrivateAndPublicVisibilitiesBReverse()
        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 TestDifferentlyNamedValueParameters {
        @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public constructor TestDifferentlyNamedValueParameters(/*0*/ argA: UserKlass)
        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 TestDifferentlyNamedValueParametersReverse {
        public constructor TestDifferentlyNamedValueParametersReverse(/*0*/ argA: UserKlass)
        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 TestFunctionVsDelegatedPrimaryConstructorCall {
        @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public constructor TestFunctionVsDelegatedPrimaryConstructorCall()
        public constructor TestFunctionVsDelegatedPrimaryConstructorCall(/*0*/ placeholder: UserKlass)
        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 TestFunctionVsDelegatedPrimaryConstructorCallReverse {
        public constructor TestFunctionVsDelegatedPrimaryConstructorCallReverse()
        public constructor TestFunctionVsDelegatedPrimaryConstructorCallReverse(/*0*/ placeholder: UserKlass)
        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 TestFunctionVsDelegatedSuperConstructorCall : MemberScope.SuperConstructorSource {
        @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public constructor TestFunctionVsDelegatedSuperConstructorCall()
        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 TestFunctionVsDelegatedSuperConstructorCallReverse : MemberScope.SuperConstructorSource {
        public constructor TestFunctionVsDelegatedSuperConstructorCallReverse()
        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 TestFunctionVsPrimaryConstructor {
        @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public constructor TestFunctionVsPrimaryConstructor()
        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 TestFunctionVsPrimaryConstructorReverse {
        public constructor TestFunctionVsPrimaryConstructorReverse()
        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 TestFunctionWithReifiedTypeParameterVsConstructorA</*0*/ T> {
        @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public constructor TestFunctionWithReifiedTypeParameterVsConstructorA</*0*/ 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 TestFunctionWithReifiedTypeParameterVsConstructorAReverse</*0*/ T> {
        public constructor TestFunctionWithReifiedTypeParameterVsConstructorAReverse</*0*/ 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 TestFunctionWithReifiedTypeParameterVsConstructorB</*0*/ T> {
        @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public constructor TestFunctionWithReifiedTypeParameterVsConstructorB</*0*/ T>(/*0*/ arg: 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 TestFunctionWithReifiedTypeParameterVsConstructorBReverse</*0*/ T> {
        public constructor TestFunctionWithReifiedTypeParameterVsConstructorBReverse</*0*/ T>(/*0*/ arg: 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 TestFunctionWithReifiedTypeParameterVsConstructorC</*0*/ T> {
        @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public constructor TestFunctionWithReifiedTypeParameterVsConstructorC</*0*/ T>(/*0*/ arg: Invariant<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 TestFunctionWithReifiedTypeParameterVsConstructorCReverse</*0*/ T> {
        public constructor TestFunctionWithReifiedTypeParameterVsConstructorCReverse</*0*/ T>(/*0*/ arg: Invariant<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 TestIdenticalInternalVisibility {
        @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") internal constructor TestIdenticalInternalVisibility()
        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 TestIdenticalInternalVisibilityReverse {
        internal constructor TestIdenticalInternalVisibilityReverse()
        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 TestIdenticalPrivateVisibility {
        @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") private constructor TestIdenticalPrivateVisibility()
        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 TestIdenticalPrivateVisibilityReverse {
        private constructor TestIdenticalPrivateVisibilityReverse()
        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 TestIdenticalReturnTypes {
        @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public constructor TestIdenticalReturnTypes()
        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 TestIdenticalReturnTypesReverse {
        public constructor TestIdenticalReturnTypesReverse()
        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 TestIdenticalTypeParametersA</*0*/ T> {
        @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public constructor TestIdenticalTypeParametersA</*0*/ 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 TestIdenticalTypeParametersAReverse</*0*/ T> {
        public constructor TestIdenticalTypeParametersAReverse</*0*/ 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 TestIdenticalTypeParametersB</*0*/ T> {
        @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public constructor TestIdenticalTypeParametersB</*0*/ T>(/*0*/ arg: 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 TestIdenticalTypeParametersBReverse</*0*/ T> {
        public constructor TestIdenticalTypeParametersBReverse</*0*/ T>(/*0*/ arg: 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 TestIdenticalTypeParametersC</*0*/ T> {
        @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public constructor TestIdenticalTypeParametersC</*0*/ T>(/*0*/ arg: Invariant<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 TestIdenticalTypeParametersCReverse</*0*/ T> {
        public constructor TestIdenticalTypeParametersCReverse</*0*/ T>(/*0*/ arg: Invariant<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 TestIdenticalValueParameters {
        @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public constructor TestIdenticalValueParameters(/*0*/ arg: UserKlass)
        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 TestIdenticalValueParametersReverse {
        public constructor TestIdenticalValueParametersReverse(/*0*/ arg: UserKlass)
        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 TestInlineFunctionVsConstructor {
        @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public constructor TestInlineFunctionVsConstructor()
        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 TestInlineFunctionVsConstructorReverse {
        public constructor TestInlineFunctionVsConstructorReverse()
        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 TestMultipleDifferentlyNamedValueParametersA {
        @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public constructor TestMultipleDifferentlyNamedValueParametersA(/*0*/ arg1: UserKlassA, /*1*/ arg2A: UserKlassB)
        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 TestMultipleDifferentlyNamedValueParametersAReverse {
        public constructor TestMultipleDifferentlyNamedValueParametersAReverse(/*0*/ arg1: UserKlassA, /*1*/ arg2A: UserKlassB)
        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 TestMultipleDifferentlyNamedValueParametersB {
        @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public constructor TestMultipleDifferentlyNamedValueParametersB(/*0*/ arg1A: UserKlassA, /*1*/ arg2A: UserKlassB)
        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 TestMultipleDifferentlyNamedValueParametersBReverse {
        public constructor TestMultipleDifferentlyNamedValueParametersBReverse(/*0*/ arg1A: UserKlassA, /*1*/ arg2A: UserKlassB)
        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 TestMultipleIdenticalTypeParameters</*0*/ T1, /*1*/ T2> {
        @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public constructor TestMultipleIdenticalTypeParameters</*0*/ T1, /*1*/ T2>()
        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 TestMultipleIdenticalTypeParametersReverse</*0*/ T1, /*1*/ T2> {
        public constructor TestMultipleIdenticalTypeParametersReverse</*0*/ T1, /*1*/ T2>()
        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 TestMultipleIdenticalValueParameters {
        @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public constructor TestMultipleIdenticalValueParameters(/*0*/ arg1: UserKlassA, /*1*/ arg2: UserKlassB)
        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 TestMultipleIdenticalValueParametersReverse {
        public constructor TestMultipleIdenticalValueParametersReverse(/*0*/ arg1: UserKlassA, /*1*/ arg2: UserKlassB)
        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 TestMultipleTypeAliasedValueParameterTypesA {
        @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public constructor TestMultipleTypeAliasedValueParameterTypesA(/*0*/ arg1: UserKlassA, /*1*/ arg2: SameUserKlassB /* = UserKlassB */)
        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 TestMultipleTypeAliasedValueParameterTypesAReverse {
        public constructor TestMultipleTypeAliasedValueParameterTypesAReverse(/*0*/ arg1: UserKlassA, /*1*/ arg2: SameUserKlassB /* = UserKlassB */)
        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 TestMultipleTypeAliasedValueParameterTypesB {
        @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public constructor TestMultipleTypeAliasedValueParameterTypesB(/*0*/ arg1: SameUserKlassA /* = UserKlassA */, /*1*/ arg2: SameUserKlassB /* = UserKlassB */)
        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 TestMultipleTypeAliasedValueParameterTypesBReverse {
        public constructor TestMultipleTypeAliasedValueParameterTypesBReverse(/*0*/ arg1: SameUserKlassA /* = UserKlassA */, /*1*/ arg2: SameUserKlassB /* = UserKlassB */)
        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 TestTailrecFunctionVsConstructor {
        @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public constructor TestTailrecFunctionVsConstructor()
        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 TestTailrecFunctionVsConstructorReverse {
        public constructor TestTailrecFunctionVsConstructorReverse()
        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 TestTypeAliasedValueParameterTypesA {
        @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public constructor TestTypeAliasedValueParameterTypesA(/*0*/ arg: UserKlass)
        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 TestTypeAliasedValueParameterTypesAReverse {
        public constructor TestTypeAliasedValueParameterTypesAReverse(/*0*/ arg: UserKlass)
        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 TestTypeAliasedValueParameterTypesB {
        @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public constructor TestTypeAliasedValueParameterTypesB(/*0*/ arg: SameUserKlass /* = UserKlass */)
        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 TestTypeAliasedValueParameterTypesBReverse {
        public constructor TestTypeAliasedValueParameterTypesBReverse(/*0*/ arg: SameUserKlass /* = UserKlass */)
        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 TestTypeParameterWithIdenticalUpperBoundsA</*0*/ T : UserInterface> {
        @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public constructor TestTypeParameterWithIdenticalUpperBoundsA</*0*/ T : UserInterface>()
        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 TestTypeParameterWithIdenticalUpperBoundsAReverse</*0*/ T : UserInterface> {
        public constructor TestTypeParameterWithIdenticalUpperBoundsAReverse</*0*/ T : UserInterface>()
        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 TestTypeParameterWithIdenticalUpperBoundsB</*0*/ T : UserInterface> {
        @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public constructor TestTypeParameterWithIdenticalUpperBoundsB</*0*/ T : UserInterface>(/*0*/ arg: 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 TestTypeParameterWithIdenticalUpperBoundsBReverse</*0*/ T : UserInterface> {
        public constructor TestTypeParameterWithIdenticalUpperBoundsBReverse</*0*/ T : UserInterface>(/*0*/ arg: 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 TestTypeParameterWithIdenticalUpperBoundsC</*0*/ T : UserInterface> {
        @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public constructor TestTypeParameterWithIdenticalUpperBoundsC</*0*/ T : UserInterface>(/*0*/ arg: Invariant<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 TestTypeParameterWithIdenticalUpperBoundsCReverse</*0*/ T : UserInterface> {
        public constructor TestTypeParameterWithIdenticalUpperBoundsCReverse</*0*/ T : UserInterface>(/*0*/ arg: Invariant<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 TestTypeParameterWithMultipleIdenticalUpperBoundsAA</*0*/ T : UserInterfaceA> where T : UserInterfaceB {
        @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public constructor TestTypeParameterWithMultipleIdenticalUpperBoundsAA</*0*/ T : UserInterfaceA>() where T : UserInterfaceB
        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 TestTypeParameterWithMultipleIdenticalUpperBoundsAAReverse</*0*/ T : UserInterfaceA> where T : UserInterfaceB {
        public constructor TestTypeParameterWithMultipleIdenticalUpperBoundsAAReverse</*0*/ T : UserInterfaceA>() where T : UserInterfaceB
        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 TestTypeParameterWithMultipleIdenticalUpperBoundsAB</*0*/ T : UserInterfaceA> where T : UserInterfaceB {
        @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public constructor TestTypeParameterWithMultipleIdenticalUpperBoundsAB</*0*/ T : UserInterfaceA>(/*0*/ arg: T) where T : UserInterfaceB
        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 TestTypeParameterWithMultipleIdenticalUpperBoundsABReverse</*0*/ T : UserInterfaceA> where T : UserInterfaceB {
        public constructor TestTypeParameterWithMultipleIdenticalUpperBoundsABReverse</*0*/ T : UserInterfaceA>(/*0*/ arg: T) where T : UserInterfaceB
        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 TestTypeParameterWithMultipleIdenticalUpperBoundsAC</*0*/ T : UserInterfaceA> where T : UserInterfaceB {
        @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public constructor TestTypeParameterWithMultipleIdenticalUpperBoundsAC</*0*/ T : UserInterfaceA>(/*0*/ arg: Invariant<T>) where T : UserInterfaceB
        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 TestTypeParameterWithMultipleIdenticalUpperBoundsACReverse</*0*/ T : UserInterfaceA> where T : UserInterfaceB {
        public constructor TestTypeParameterWithMultipleIdenticalUpperBoundsACReverse</*0*/ T : UserInterfaceA>(/*0*/ arg: Invariant<T>) where T : UserInterfaceB
        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 TestTypeParameterWithMultipleIdenticalUpperBoundsBA</*0*/ T : UserInterfaceA> where T : UserInterfaceB {
        @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public constructor TestTypeParameterWithMultipleIdenticalUpperBoundsBA</*0*/ T : UserInterfaceA>() where T : UserInterfaceB
        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 TestTypeParameterWithMultipleIdenticalUpperBoundsBAReverse</*0*/ T : UserInterfaceA> where T : UserInterfaceB {
        public constructor TestTypeParameterWithMultipleIdenticalUpperBoundsBAReverse</*0*/ T : UserInterfaceA>() where T : UserInterfaceB
        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 TestTypeParameterWithMultipleIdenticalUpperBoundsBB</*0*/ T : UserInterfaceA> where T : UserInterfaceB {
        @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public constructor TestTypeParameterWithMultipleIdenticalUpperBoundsBB</*0*/ T : UserInterfaceA>(/*0*/ arg: T) where T : UserInterfaceB
        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 TestTypeParameterWithMultipleIdenticalUpperBoundsBBReverse</*0*/ T : UserInterfaceA> where T : UserInterfaceB {
        public constructor TestTypeParameterWithMultipleIdenticalUpperBoundsBBReverse</*0*/ T : UserInterfaceA>(/*0*/ arg: T) where T : UserInterfaceB
        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 TestTypeParameterWithMultipleIdenticalUpperBoundsBC</*0*/ T : UserInterfaceA> where T : UserInterfaceB {
        @kotlin.Deprecated(level = DeprecationLevel.HIDDEN, message = "") public constructor TestTypeParameterWithMultipleIdenticalUpperBoundsBC</*0*/ T : UserInterfaceA>(/*0*/ arg: Invariant<T>) where T : UserInterfaceB
        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 TestTypeParameterWithMultipleIdenticalUpperBoundsBCReverse</*0*/ T : UserInterfaceA> where T : UserInterfaceB {
        public constructor TestTypeParameterWithMultipleIdenticalUpperBoundsBCReverse</*0*/ T : UserInterfaceA>(/*0*/ arg: Invariant<T>) where T : UserInterfaceB
        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 UserInterface {
    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 UserInterfaceA {
    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 UserInterfaceB {
    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 UserKlass {
    public constructor UserKlass()
    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 UserKlassA {
    public constructor UserKlassA()
    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 UserKlassB {
    public constructor UserKlassB()
    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 typealias SameUserKlass = UserKlass
public typealias SameUserKlassA = UserKlassA
public typealias SameUserKlassB = UserKlassB

