package

public fun case_1(/*0*/ value_1: kotlin.Any?): kotlin.Unit
public fun case_10(/*0*/ value_1: kotlin.Any?): kotlin.Unit
public fun case_11(/*0*/ value_1: kotlin.Any?): kotlin.Unit
public fun case_12(/*0*/ value_1: kotlin.Any?): kotlin.Unit
public fun case_2(/*0*/ value_1: kotlin.Any?): kotlin.Unit
public fun case_3(/*0*/ value_1: kotlin.Any?): kotlin.Unit
public fun case_4(/*0*/ value_1: kotlin.Any?): kotlin.Unit
public fun case_5(/*0*/ value_1: kotlin.Any?, /*1*/ value_2: kotlin.Boolean): kotlin.Unit
public fun case_6(/*0*/ value_1: kotlin.Any?, /*1*/ value_2: kotlin.Boolean?): kotlin.Unit
public fun case_7(/*0*/ value_1: kotlin.String?): kotlin.Unit
public fun case_8(/*0*/ value_1: kotlin.Any?): kotlin.Unit
public fun case_9(/*0*/ value_1: kotlin.Any?): kotlin.Unit
public inline fun </*0*/ T> funWithAtLeastOnceCallsInPlace(/*0*/ block: () -> T): T
    CallsInPlace(block, AT_LEAST_ONCE)

public inline fun funWithAtLeastOnceCallsInPlace(/*0*/ block: () -> kotlin.Unit): kotlin.Unit
    CallsInPlace(block, AT_LEAST_ONCE)

public inline fun funWithAtMostOnceCallsInPlace(/*0*/ block: () -> kotlin.Unit): kotlin.Unit
    CallsInPlace(block, AT_MOST_ONCE)

public inline fun </*0*/ T> funWithExactlyOnceCallsInPlace(/*0*/ block: () -> T): T
    CallsInPlace(block, EXACTLY_ONCE)

public inline fun funWithExactlyOnceCallsInPlace(/*0*/ block: () -> kotlin.Unit): kotlin.Unit
    CallsInPlace(block, EXACTLY_ONCE)

public fun funWithReturns(/*0*/ cond: kotlin.Boolean): kotlin.Unit
    Returns(WILDCARD) -> cond

public fun funWithReturnsAndInvertCondition(/*0*/ cond: kotlin.Boolean): kotlin.Unit
    Returns(WILDCARD) -> !cond

public fun funWithReturnsAndInvertTypeCheck(/*0*/ value_1: kotlin.Any?): kotlin.Unit
    Returns(WILDCARD) -> value_1 !is String

public fun funWithReturnsAndNotNullCheck(/*0*/ value_1: kotlin.Any?): kotlin.Unit
    Returns(WILDCARD) -> value_1 != null

public fun funWithReturnsAndNullCheck(/*0*/ value_1: kotlin.Any?): kotlin.Unit
    Returns(WILDCARD) -> value_1 == null

public fun funWithReturnsAndTypeCheck(/*0*/ value_1: kotlin.Any?): kotlin.Unit
    Returns(WILDCARD) -> value_1 is String

public fun funWithReturnsFalse(/*0*/ cond: kotlin.Boolean): kotlin.Boolean
    Returns(FALSE) -> cond

public fun funWithReturnsFalseAndInvertCondition(/*0*/ cond: kotlin.Boolean): kotlin.Boolean
    Returns(FALSE) -> !cond

public fun funWithReturnsFalseAndInvertTypeCheck(/*0*/ value_1: kotlin.Any?): kotlin.Boolean
    Returns(FALSE) -> value_1 !is String

public fun funWithReturnsFalseAndNotNullCheck(/*0*/ value_1: kotlin.Number?): kotlin.Boolean
    Returns(FALSE) -> value_1 != null

public fun funWithReturnsFalseAndNullCheck(/*0*/ value_1: kotlin.Number?): kotlin.Boolean
    Returns(FALSE) -> value_1 == null

public fun funWithReturnsFalseAndTypeCheck(/*0*/ value_1: kotlin.Any?): kotlin.Boolean
    Returns(FALSE) -> value_1 is String

public fun funWithReturnsNotNull(/*0*/ cond: kotlin.Boolean): kotlin.Boolean?
    Returns(NOT_NULL) -> cond

public fun funWithReturnsNotNullAndInvertCondition(/*0*/ cond: kotlin.Boolean): kotlin.Boolean?
    Returns(NOT_NULL) -> !cond

public fun funWithReturnsNotNullAndInvertTypeCheck(/*0*/ value_1: kotlin.Any?): kotlin.Boolean?
    Returns(NOT_NULL) -> value_1 !is String

public fun funWithReturnsNotNullAndNotNullCheck(/*0*/ value_1: kotlin.Number?): kotlin.Boolean?
    Returns(NOT_NULL) -> value_1 != null

public fun funWithReturnsNotNullAndNullCheck(/*0*/ value_1: kotlin.Number?): kotlin.Boolean?
    Returns(NOT_NULL) -> value_1 == null

public fun funWithReturnsNotNullAndTypeCheck(/*0*/ value_1: kotlin.Any?): kotlin.Boolean?
    Returns(NOT_NULL) -> value_1 is String

public fun funWithReturnsNull(/*0*/ cond: kotlin.Boolean): kotlin.Boolean?
    Returns(NULL) -> cond

public fun funWithReturnsNullAndInvertCondition(/*0*/ cond: kotlin.Boolean): kotlin.Boolean?
    Returns(NULL) -> !cond

public fun funWithReturnsNullAndInvertTypeCheck(/*0*/ value_1: kotlin.Any?): kotlin.Boolean?
    Returns(NULL) -> value_1 !is String

public fun funWithReturnsNullAndNotNullCheck(/*0*/ value_1: kotlin.Number?): kotlin.Boolean?
    Returns(NULL) -> value_1 != null

public fun funWithReturnsNullAndNullCheck(/*0*/ value_1: kotlin.Number?): kotlin.Boolean?
    Returns(NULL) -> value_1 == null

public fun funWithReturnsNullAndTypeCheck(/*0*/ value_1: kotlin.Any?): kotlin.Boolean?
    Returns(NULL) -> value_1 is String

public fun funWithReturnsTrue(/*0*/ cond: kotlin.Boolean): kotlin.Boolean
    Returns(TRUE) -> cond

public fun funWithReturnsTrueAndInvertCondition(/*0*/ cond: kotlin.Boolean): kotlin.Boolean
    Returns(TRUE) -> !cond

public fun funWithReturnsTrueAndInvertTypeCheck(/*0*/ value_1: kotlin.Any?): kotlin.Boolean
    Returns(TRUE) -> value_1 !is String

public fun funWithReturnsTrueAndNotNullCheck(/*0*/ value_1: kotlin.Any?): kotlin.Boolean
    Returns(TRUE) -> value_1 != null

public fun funWithReturnsTrueAndNullCheck(/*0*/ value_1: kotlin.Any?): kotlin.Boolean
    Returns(TRUE) -> value_1 == null

public fun funWithReturnsTrueAndTypeCheck(/*0*/ value_1: kotlin.Any?): kotlin.Boolean
    Returns(TRUE) -> value_1 is String

public inline fun funWithUnknownCallsInPlace(/*0*/ block: () -> kotlin.Unit): kotlin.Unit
    CallsInPlace(block, UNKNOWN)

public fun getAny(): kotlin.Any
public fun getBoolean(): kotlin.Boolean
public fun getByte(): kotlin.Byte
public fun getChar(): kotlin.Char
public fun getDouble(): kotlin.Double
public fun getFloat(): kotlin.Float
public fun getInt(): kotlin.Int
public fun getList(): kotlin.collections.List<kotlin.Int>
public fun getLong(): kotlin.Long
public fun getNothing(): kotlin.Nothing
public fun getShort(): kotlin.Short
public fun getString(): kotlin.String
public fun getUnit(): () -> kotlin.Unit

public final class TypesProvider {
    public constructor TypesProvider()
    public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
    public final fun getAny(): kotlin.Any
    public final fun getBoolean(): kotlin.Boolean
    public final fun getByte(): kotlin.Byte
    public final fun getChar(): kotlin.Char
    public final fun getDouble(): kotlin.Double
    public final fun getFloat(): kotlin.Float
    public final fun getInt(): kotlin.Int
    public final fun getList(): kotlin.collections.List<kotlin.Int>
    public final fun getLong(): kotlin.Long
    public final fun getNothing(): kotlin.Nothing
    public final fun getShort(): kotlin.Short
    public final fun getString(): kotlin.String
    public final fun getUnit(): () -> kotlin.Unit
    public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
    public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}

package contracts {
    public fun </*0*/ T> T?.case_11_1(): kotlin.Boolean
        Returns(FALSE) -> <this> != null

    public fun </*0*/ T> T?.case_11_2(): kotlin.Boolean?
        Returns(NULL) -> <this> is String

    public fun </*0*/ T> T?.case_12(): kotlin.Boolean
        Returns(FALSE) -> <this> is String

    public fun </*0*/ T> T?.case_4(): kotlin.Boolean
        Returns(TRUE) -> <this> != null

    public fun </*0*/ T> T?.case_4_1(): kotlin.Boolean
        Returns(FALSE) -> <this> != null

    public fun </*0*/ T> T?.case_4_2(): kotlin.Boolean?
        Returns(NULL) -> <this> is String

}
