// DIAGNOSTICS: -MISPLACED_TYPE_PARAMETER_CONSTRAINTS // FIR_IDENTICAL open class MemberScope { @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testBasic() {} open fun testBasic() {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testIdenticalReturnTypes(): UserKlass = UserKlass() open fun testIdenticalReturnTypes(): UserKlass = UserKlass() @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testDifferencesInReturnTypePresence(): Unit {} open fun testDifferencesInReturnTypePresence() {} open fun testDifferencesInReturnTypePresenceReverse(): Unit {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testDifferencesInReturnTypePresenceReverse() {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testDifferentReturnTypes(): UserKlassA = UserKlassA() open fun testDifferentReturnTypes(): UserKlassB = UserKlassB() @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testVarianceDifferentReturnTypesA(): Invariant = Invariant() open fun testVarianceDifferentReturnTypesA(): Invariant = Invariant() open fun testVarianceDifferentReturnTypesAReverse(): Invariant = Invariant() @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testVarianceDifferentReturnTypesAReverse(): Invariant = Invariant() @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testVarianceDifferentReturnTypesB(): Invariant = Invariant() open fun testVarianceDifferentReturnTypesB(): Invariant = Invariant() open fun testVarianceDifferentReturnTypesBReverse(): Invariant = Invariant() @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testVarianceDifferentReturnTypesBReverse(): Invariant = Invariant() @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testVarianceDifferentReturnTypesC(): Invariant = Invariant() open fun testVarianceDifferentReturnTypesC(): Invariant<*> = Invariant() open fun testVarianceDifferentReturnTypesCReverse(): Invariant = Invariant() @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testVarianceDifferentReturnTypesCReverse(): Invariant<*> = Invariant() @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testVarianceDifferentReturnTypesD(): Invariant = Invariant() open fun testVarianceDifferentReturnTypesD(): Invariant<*> = Invariant() open fun testVarianceDifferentReturnTypesDReverse(): Invariant = Invariant() @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testVarianceDifferentReturnTypesDReverse(): Invariant<*> = Invariant() @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testVarianceDifferentReturnTypesE(): Invariant = Invariant() open fun testVarianceDifferentReturnTypesE(): Invariant<*> = Invariant() open fun testVarianceDifferentReturnTypesEReverse(): Invariant = Invariant() @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testVarianceDifferentReturnTypesEReverse(): Invariant<*> = Invariant() @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testVarianceDifferentReturnTypesF(): Invariant = Invariant() open fun testVarianceDifferentReturnTypesF(): Invariant = Invariant() open fun testVarianceDifferentReturnTypesFReverse(): Invariant = Invariant() @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testVarianceDifferentReturnTypesFReverse(): Invariant = Invariant() @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeAliasedReturnTypes(): UserKlass = UserKlass() open fun testTypeAliasedReturnTypes(): SameUserKlass = UserKlass() open fun testTypeAliasedReturnTypesReverse(): UserKlass = UserKlass() @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeAliasedReturnTypesReverse(): SameUserKlass = UserKlass() @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun UserKlass.testIdenticalExtensionReceivers() {} open fun UserKlass.testIdenticalExtensionReceivers() {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun UserKlass.testTypeAliasedExtensionReceivers() {} open fun SameUserKlass.testTypeAliasedExtensionReceivers() {} open fun UserKlass.testTypeAliasedExtensionReceiversReverse() {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun SameUserKlass.testTypeAliasedExtensionReceiversReverse() {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testIdenticalValueParameters(arg: UserKlass) {} open fun testIdenticalValueParameters(arg: UserKlass) {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testDifferentlyNamedValueParameters(argA: UserKlass) {} open fun testDifferentlyNamedValueParameters(argB: UserKlass) {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeAliasedValueParameterTypes(arg: UserKlass) {} open fun testTypeAliasedValueParameterTypes(arg: SameUserKlass) {} open fun testTypeAliasedValueParameterTypesReverse(arg: UserKlass) {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeAliasedValueParameterTypesReverse(arg: SameUserKlass) {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testMultipleIdenticalValueParameters(arg1: UserKlassA, arg2: UserKlassB) {} open fun testMultipleIdenticalValueParameters(arg1: UserKlassA, arg2: UserKlassB) {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testMultipleDifferentlyNamedValueParametersA(arg1: UserKlassA, arg2A: UserKlassB) {} open fun testMultipleDifferentlyNamedValueParametersA(arg1: UserKlassA, arg2B: UserKlassB) {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testMultipleDifferentlyNamedValueParametersB(arg1A: UserKlassA, arg2A: UserKlassB) {} open fun testMultipleDifferentlyNamedValueParametersB(arg1B: UserKlassA, arg2B: UserKlassB) {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testMultipleTypeAliasedValueParameterTypesA(arg1: UserKlassA, arg2: UserKlassB) {} open fun testMultipleTypeAliasedValueParameterTypesA(arg1: UserKlassA, arg2: SameUserKlassB) {} open fun testMultipleTypeAliasedValueParameterTypesAReverse(arg1: UserKlassA, arg2: UserKlassB) {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testMultipleTypeAliasedValueParameterTypesAReverse(arg1: UserKlassA, arg2: SameUserKlassB) {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testMultipleTypeAliasedValueParameterTypesB(arg1: UserKlassA, arg2: UserKlassB) {} open fun testMultipleTypeAliasedValueParameterTypesB(arg1: SameUserKlassA, arg2: SameUserKlassB) {} open fun testMultipleTypeAliasedValueParameterTypesBReverse(arg1: UserKlassA, arg2: UserKlassB) {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testMultipleTypeAliasedValueParameterTypesBReverse(arg1: SameUserKlassA, arg2: SameUserKlassB) {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testValueParameterWithIdenticalDefaultArguments(arg: UserKlass = defaultArgument) {} open fun testValueParameterWithIdenticalDefaultArguments(arg: UserKlass = defaultArgument) {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testDifferencesInValueParameterDefaultArgumentsPresence(arg: UserKlass = defaultArgument) {} open fun testDifferencesInValueParameterDefaultArgumentsPresence(arg: UserKlass) {} open fun testDifferencesInValueParameterDefaultArgumentsPresenceReverse(arg: UserKlass = defaultArgument) {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testDifferencesInValueParameterDefaultArgumentsPresenceReverse(arg: UserKlass) {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testValueParameterWithDifferentDefaultArguments(arg: UserKlass = defaultArgumentA) {} open fun testValueParameterWithDifferentDefaultArguments(arg: UserKlass = defaultArgumentB) {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testValueParameterWithAliasedDefaultArguments(arg: UserKlass = defaultArgument) {} open fun testValueParameterWithAliasedDefaultArguments(arg: UserKlass = sameDefaultArgument) {} open fun testValueParameterWithAliasedDefaultArgumentsReverse(arg: UserKlass = defaultArgument) {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testValueParameterWithAliasedDefaultArgumentsReverse(arg: UserKlass = sameDefaultArgument) {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testIdenticalTypeParametersA() {} open fun testIdenticalTypeParametersA() {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testIdenticalTypeParametersB(arg: T) {} open fun testIdenticalTypeParametersB(arg: T) {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testIdenticalTypeParametersC(arg: Invariant) {} open fun testIdenticalTypeParametersC(arg: Invariant) {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testDifferentlyNamedTypeParametersA() {} open fun testDifferentlyNamedTypeParametersA() {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testDifferentlyNamedTypeParametersB(arg: TA) {} open fun testDifferentlyNamedTypeParametersB(arg: TB) {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testDifferentlyNamedTypeParametersC(arg: Invariant) {} open fun testDifferentlyNamedTypeParametersC(arg: Invariant) {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testMultipleIdenticalTypeParameters() {} open fun testMultipleIdenticalTypeParameters() {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testMultipleDifferentlyNamedTypeParametersA() {} open fun testMultipleDifferentlyNamedTypeParametersA() {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testMultipleDifferentlyNamedTypeParametersB() {} open fun testMultipleDifferentlyNamedTypeParametersB() {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithIdenticalUpperBoundsA() {} open fun testTypeParameterWithIdenticalUpperBoundsA() {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithIdenticalUpperBoundsB(arg: T) {} open fun testTypeParameterWithIdenticalUpperBoundsB(arg: T) {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithIdenticalUpperBoundsC(arg: Invariant) {} open fun testTypeParameterWithIdenticalUpperBoundsC(arg: Invariant) {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testDifferencesInTypeParameterUpperBoundsPresence() {} open fun testDifferencesInTypeParameterUpperBoundsPresence() {} open fun testDifferencesInTypeParameterUpperBoundsPresenceReverse() {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testDifferencesInTypeParameterUpperBoundsPresenceReverse() {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithDifferentUpperBounds() {} open fun testTypeParameterWithDifferentUpperBounds() {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun > testTypeParameterWithVarianceDifferentUpperBoundsA() {} open fun > testTypeParameterWithVarianceDifferentUpperBoundsA() {} open fun > testTypeParameterWithVarianceDifferentUpperBoundsAReverse() {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun > testTypeParameterWithVarianceDifferentUpperBoundsAReverse() {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun > testTypeParameterWithVarianceDifferentUpperBoundsB() {} open fun > testTypeParameterWithVarianceDifferentUpperBoundsB() {} open fun > testTypeParameterWithVarianceDifferentUpperBoundsBReverse() {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun > testTypeParameterWithVarianceDifferentUpperBoundsBReverse() {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun > testTypeParameterWithVarianceDifferentUpperBoundsC() {} open fun > testTypeParameterWithVarianceDifferentUpperBoundsC() {} open fun > testTypeParameterWithVarianceDifferentUpperBoundsCReverse() {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun > testTypeParameterWithVarianceDifferentUpperBoundsCReverse() {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun > testTypeParameterWithVarianceDifferentUpperBoundsD() {} open fun > testTypeParameterWithVarianceDifferentUpperBoundsD() {} open fun > testTypeParameterWithVarianceDifferentUpperBoundsDReverse() {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun > testTypeParameterWithVarianceDifferentUpperBoundsDReverse() {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun > testTypeParameterWithVarianceDifferentUpperBoundsE() {} open fun > testTypeParameterWithVarianceDifferentUpperBoundsE() {} open fun > testTypeParameterWithVarianceDifferentUpperBoundsEReverse() {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun > testTypeParameterWithVarianceDifferentUpperBoundsEReverse() {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun > testTypeParameterWithVarianceDifferentUpperBoundsF() {} open fun > testTypeParameterWithVarianceDifferentUpperBoundsF() {} open fun > testTypeParameterWithVarianceDifferentUpperBoundsFReverse() {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun > testTypeParameterWithVarianceDifferentUpperBoundsFReverse() {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithTypeAliasedUpperBoundsA() {} open fun testTypeParameterWithTypeAliasedUpperBoundsA() {} open fun testTypeParameterWithTypeAliasedUpperBoundsAReverse() {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithTypeAliasedUpperBoundsAReverse() {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithTypeAliasedUpperBoundsB(arg: T) {} open fun testTypeParameterWithTypeAliasedUpperBoundsB(arg: T) {} open fun testTypeParameterWithTypeAliasedUpperBoundsBReverse(arg: T) {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithTypeAliasedUpperBoundsBReverse(arg: T) {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithTypeAliasedUpperBoundsC(arg: Invariant) {} open fun testTypeParameterWithTypeAliasedUpperBoundsC(arg: Invariant) {} open fun testTypeParameterWithTypeAliasedUpperBoundsCReverse(arg: Invariant) {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithTypeAliasedUpperBoundsCReverse(arg: Invariant) {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithMultipleIdenticalUpperBoundsAA() where T: UserInterfaceA, T: UserInterfaceB {} open fun testTypeParameterWithMultipleIdenticalUpperBoundsAA() where T: UserInterfaceA, T: UserInterfaceB {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithMultipleIdenticalUpperBoundsAB(arg: T) where T: UserInterfaceA, T: UserInterfaceB {} open fun testTypeParameterWithMultipleIdenticalUpperBoundsAB(arg: T) where T: UserInterfaceA, T: UserInterfaceB {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithMultipleIdenticalUpperBoundsAC(arg: Invariant) where T: UserInterfaceA, T: UserInterfaceB {} open fun testTypeParameterWithMultipleIdenticalUpperBoundsAC(arg: Invariant) where T: UserInterfaceA, T: UserInterfaceB {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithMultipleIdenticalUpperBoundsBA() where T: UserInterfaceB {} open fun testTypeParameterWithMultipleIdenticalUpperBoundsBA() where T: UserInterfaceB {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithMultipleIdenticalUpperBoundsBB(arg: T) where T: UserInterfaceB {} open fun testTypeParameterWithMultipleIdenticalUpperBoundsBB(arg: T) where T: UserInterfaceB {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithMultipleIdenticalUpperBoundsBC(arg: Invariant) where T: UserInterfaceB {} open fun testTypeParameterWithMultipleIdenticalUpperBoundsBC(arg: Invariant) where T: UserInterfaceB {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testDifferencesInTypeParameterMultipleUpperBoundsPresenceA() where T: UserInterfaceA, T: UserInterfaceB {} open fun testDifferencesInTypeParameterMultipleUpperBoundsPresenceA() where T: UserInterfaceA {} open fun testDifferencesInTypeParameterMultipleUpperBoundsPresenceB() where T: UserInterfaceB {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testDifferencesInTypeParameterMultipleUpperBoundsPresenceB() {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithMultipleDifferentUpperBoundsAA() where T: UserInterfaceA, T: UserInterfaceB {} open fun testTypeParameterWithMultipleDifferentUpperBoundsAA() where T: UserInterfaceA, T: UserInterfaceC {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithMultipleDifferentUpperBoundsAB() where T: UserInterfaceB {} open fun testTypeParameterWithMultipleDifferentUpperBoundsAB() where T: UserInterfaceC {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithMultipleDifferentUpperBoundsAC() where T: UserInterfaceA {} open fun testTypeParameterWithMultipleDifferentUpperBoundsAC() where T: UserInterfaceA {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithMultipleDifferentUpperBoundsBA() where T: UserInterfaceA, T: UserInterfaceB {} open fun testTypeParameterWithMultipleDifferentUpperBoundsBA() where T: UserInterfaceC, T: UserInterfaceD {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithMultipleDifferentUpperBoundsBB() where T: UserInterfaceB {} open fun testTypeParameterWithMultipleDifferentUpperBoundsBB() where T: UserInterfaceD {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsAAA() where T: UserInterfaceA, T: UserInterfaceB {} open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsAAA() where T: UserInterfaceA, T: SameUserInterfaceB {} open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsAAAReverse() where T: UserInterfaceA, T: UserInterfaceB {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsAAAReverse() where T: UserInterfaceA, T: SameUserInterfaceB {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsAAB(arg: T) where T: UserInterfaceA, T: UserInterfaceB {} open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsAAB(arg: T) where T: UserInterfaceA, T: SameUserInterfaceB {} open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsAABReverse(arg: T) where T: UserInterfaceA, T: UserInterfaceB {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsAABReverse(arg: T) where T: UserInterfaceA, T: SameUserInterfaceB {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsAAC(arg: Invariant) where T: UserInterfaceA, T: UserInterfaceB {} open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsAAC(arg: Invariant) where T: UserInterfaceA, T: SameUserInterfaceB {} open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsAACReverse(arg: Invariant) where T: UserInterfaceA, T: UserInterfaceB {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsAACReverse(arg: Invariant) where T: UserInterfaceA, T: SameUserInterfaceB {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsABA() where T: UserInterfaceB {} open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsABA() where T: SameUserInterfaceB {} open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsABAReverse() where T: UserInterfaceB {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsABAReverse() where T: SameUserInterfaceB {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsABB(arg: T) where T: UserInterfaceB {} open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsABB(arg: T) where T: SameUserInterfaceB {} open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsABBReverse(arg: T) where T: UserInterfaceB {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsABBReverse(arg: T) where T: SameUserInterfaceB {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsABC(arg: Invariant) where T: UserInterfaceB {} open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsABC(arg: Invariant) where T: SameUserInterfaceB {} open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsABCReverse(arg: Invariant) where T: UserInterfaceB {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsABCReverse(arg: Invariant) where T: SameUserInterfaceB {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsACA() where T: UserInterfaceA {} open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsACA() where T: UserInterfaceA {} open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsACAReverse() where T: UserInterfaceA {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsACAReverse() where T: UserInterfaceA {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsACB(arg: T) where T: UserInterfaceA {} open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsACB(arg: T) where T: UserInterfaceA {} open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsACBReverse(arg: T) where T: UserInterfaceA {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsACBReverse(arg: T) where T: UserInterfaceA {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsACC(arg: Invariant) where T: UserInterfaceA {} open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsACC(arg: Invariant) where T: UserInterfaceA {} open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsACCReverse(arg: Invariant) where T: UserInterfaceA {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsACCReverse(arg: Invariant) where T: UserInterfaceA {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsBAA() where T: UserInterfaceA, T: UserInterfaceB {} open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsBAA() where T: SameUserInterfaceA, T: SameUserInterfaceB {} open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsBAAReverse() where T: UserInterfaceA, T: UserInterfaceB {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsBAAReverse() where T: SameUserInterfaceA, T: SameUserInterfaceB {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsBAB(arg: T) where T: UserInterfaceA, T: UserInterfaceB {} open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsBAB(arg: T) where T: SameUserInterfaceA, T: SameUserInterfaceB {} open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsBABReverse(arg: T) where T: UserInterfaceA, T: UserInterfaceB {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsBABReverse(arg: T) where T: SameUserInterfaceA, T: SameUserInterfaceB {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsBAC(arg: Invariant) where T: UserInterfaceA, T: UserInterfaceB {} open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsBAC(arg: Invariant) where T: SameUserInterfaceA, T: SameUserInterfaceB {} open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsBACReverse(arg: Invariant) where T: UserInterfaceA, T: UserInterfaceB {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsBACReverse(arg: Invariant) where T: SameUserInterfaceA, T: SameUserInterfaceB {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsBBA() where T: UserInterfaceB {} open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsBBA() where T: SameUserInterfaceB {} open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsBBAReverse() where T: UserInterfaceB {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsBBAReverse() where T: SameUserInterfaceB {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsBBB(arg: T) where T: UserInterfaceB {} open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsBBB(arg: T) where T: SameUserInterfaceB {} open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsBBBReverse(arg: T) where T: UserInterfaceB {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsBBBReverse(arg: T) where T: SameUserInterfaceB {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsBBC(arg: Invariant) where T: UserInterfaceB {} open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsBBC(arg: Invariant) where T: SameUserInterfaceB {} open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsBBCReverse(arg: Invariant) where T: UserInterfaceB {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithMultipleTypeAliasedUpperBoundsBBCReverse(arg: Invariant) where T: SameUserInterfaceB {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithMultipleShuffledUpperBoundsAA() where T: UserInterfaceA, T: UserInterfaceB {} open fun testTypeParameterWithMultipleShuffledUpperBoundsAA() where T: UserInterfaceB, T: UserInterfaceA {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithMultipleShuffledUpperBoundsAB(arg: T) where T: UserInterfaceA, T: UserInterfaceB {} open fun testTypeParameterWithMultipleShuffledUpperBoundsAB(arg: T) where T: UserInterfaceB, T: UserInterfaceA {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithMultipleShuffledUpperBoundsAC(arg: Invariant) where T: UserInterfaceA, T: UserInterfaceB {} open fun testTypeParameterWithMultipleShuffledUpperBoundsAC(arg: Invariant) where T: UserInterfaceB, T: UserInterfaceA {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithMultipleShuffledUpperBoundsBA() where T: UserInterfaceB {} open fun testTypeParameterWithMultipleShuffledUpperBoundsBA() where T: UserInterfaceA {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithMultipleShuffledUpperBoundsBB(arg: T) where T: UserInterfaceB {} open fun testTypeParameterWithMultipleShuffledUpperBoundsBB(arg: T) where T: UserInterfaceA {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun testTypeParameterWithMultipleShuffledUpperBoundsBC(arg: Invariant) where T: UserInterfaceB {} open fun testTypeParameterWithMultipleShuffledUpperBoundsBC(arg: Invariant) where T: UserInterfaceA {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) infix open fun UserKlass.testIdenticalPresenceOfInfixModifier(arg: UserKlass) {} infix open fun UserKlass.testIdenticalPresenceOfInfixModifier(arg: UserKlass) {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) infix open fun UserKlass.testDifferencesInInfixModifierPresence(arg: UserKlass) {} open fun UserKlass.testDifferencesInInfixModifierPresence(arg: UserKlass) {} infix open fun UserKlass.testDifferencesInInfixModifierPresenceReverse(arg: UserKlass) {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun UserKlass.testDifferencesInInfixModifierPresenceReverse(arg: UserKlass) {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) operator open fun UserKlassA.unaryPlus() {} operator open fun UserKlassA.unaryPlus() {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) operator open fun UserKlassB.unaryPlus() {} open fun UserKlassB.unaryPlus() {} operator open fun UserKlassB.unaryMinus() {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) open fun UserKlassB.unaryMinus() {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) internal open fun testIdenticalInternalVisibility() {} internal open fun testIdenticalInternalVisibility() {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) internal open fun testDifferencesInInternalAndPublicVisibilities() {} public open fun testDifferencesInInternalAndPublicVisibilities() {} internal open fun testDifferencesInInternalAndPublicVisibilitiesReverse() {} @Deprecated(message = "", level = DeprecationLevel.HIDDEN) public open fun testDifferencesInInternalAndPublicVisibilitiesReverse() {} } open class Invariant class UserKlass class UserKlassA class UserKlassB typealias SameUserKlass = UserKlass typealias SameUserKlassA = UserKlassA typealias SameUserKlassB = UserKlassB val defaultArgument = UserKlass() val defaultArgumentA = UserKlass() val defaultArgumentB = UserKlass() val sameDefaultArgument = defaultArgument interface UserInterface interface UserInterfaceA interface UserInterfaceB interface UserInterfaceC interface UserInterfaceD typealias SameUserInterface = UserInterface typealias SameUserInterfaceA = UserInterfaceA typealias SameUserInterfaceB = UserInterfaceB