FILE: eqNotEq.kt
    @R|kotlin/OptIn|(markerClass = vararg(<getClass>(Q|kotlin/contracts/ExperimentalContracts|))) public final fun checkNotNull(x: R|kotlin/Any?|): R|kotlin/Boolean|
        [R|Contract description]
         <
            Returns(TRUE) -> x != null
            Returns(FALSE) -> x == null
        >
     {
         {
            R|kotlin/contracts/contract|(<L> = contract@fun R|kotlin/contracts/ContractBuilder|.<anonymous>(): R|kotlin/Unit| <inline=Inline, kind=UNKNOWN>  {
                this@R|special/anonymous|.R|kotlin/contracts/ContractBuilder.returns|(Boolean(true)).R|kotlin/contracts/SimpleEffect.implies|(!=(R|<local>/x|, Null(null)))
                this@R|special/anonymous|.R|kotlin/contracts/ContractBuilder.returns|(Boolean(false)).R|kotlin/contracts/SimpleEffect.implies|(==(R|<local>/x|, Null(null)))
            }
            )
        }

        ^checkNotNull !=(R|<local>/x|, Null(null))
    }
    @R|kotlin/OptIn|(markerClass = vararg(<getClass>(Q|kotlin/contracts/ExperimentalContracts|))) public final fun trickyRequireNotNull(x: R|kotlin/Any?|): R|kotlin/Unit|
        [R|Contract description]
         <
            Returns(WILDCARD) -> !x == null
        >
     {
         {
            R|kotlin/contracts/contract|(<L> = contract@fun R|kotlin/contracts/ContractBuilder|.<anonymous>(): R|kotlin/Unit| <inline=Inline, kind=UNKNOWN>  {
                this@R|special/anonymous|.R|kotlin/contracts/ContractBuilder.returns|().R|kotlin/contracts/SimpleEffect.implies|(==(R|<local>/x|, Null(null)).R|kotlin/Boolean.not|())
            }
            )
        }

        when () {
            ==(R|<local>/x|, Null(null)) ->  {
                throw R|java/lang/IllegalStateException.IllegalStateException|()
            }
        }

    }
    public final fun test_1(x: R|kotlin/String?|): R|kotlin/Unit| {
        when () {
            R|/checkNotNull|(R|<local>/x|) ->  {
                R|<local>/x|.R|kotlin/String.length|
            }
            else ->  {
                R|<local>/x|.R|kotlin/String.length<Inapplicable(UNSAFE_CALL): kotlin/String.length>#|
            }
        }

    }
    public final fun test_2(x: R|kotlin/String?|): R|kotlin/Unit| {
        R|/trickyRequireNotNull|(R|<local>/x|)
        R|<local>/x|.R|kotlin/String.length|
    }
