FILE: contractOnInfixFunction.kt @R|kotlin/OptIn|(markerClass = vararg((Q|kotlin/contracts/ExperimentalContracts|))) public final infix fun R|kotlin/Boolean|.takeRight(cond: R|kotlin/Boolean|): R|kotlin/Boolean| [R|Contract description] < Returns(TRUE) -> cond > { { R|kotlin/contracts/contract|( = contract@fun R|kotlin/contracts/ContractBuilder|.(): R|kotlin/Unit| { this@R|special/anonymous|.R|kotlin/contracts/ContractBuilder.returns|(Boolean(true)).R|kotlin/contracts/SimpleEffect.implies|(R|/cond|) } ) } ^takeRight R|/cond| } @R|kotlin/OptIn|(markerClass = vararg((Q|kotlin/contracts/ExperimentalContracts|))) public final infix fun R|kotlin/Boolean?|.ensureLeft(x: R|kotlin/Any|): R|kotlin/Boolean| [R|Contract description] < Returns(TRUE) -> this != null > { { R|kotlin/contracts/contract|( = contract@fun R|kotlin/contracts/ContractBuilder|.(): R|kotlin/Unit| { this@R|special/anonymous|.R|kotlin/contracts/ContractBuilder.returns|(Boolean(true)).R|kotlin/contracts/SimpleEffect.implies|(!=(this@R|/ensureLeft|, Null(null))) } ) } ^ensureLeft !=(this@R|/ensureLeft|, Null(null)) } public final fun test_1(b: R|kotlin/Boolean|, x: R|kotlin/Any|): R|kotlin/Unit| { when () { R|/b|.R|/takeRight|((R|/x| is R|kotlin/String|)) -> { R|/x|.R|kotlin/String.length| } } } public final fun test_2(b: R|kotlin/Boolean?|, x: R|kotlin/Any|): R|kotlin/Unit| { when () { R|/b|.R|/ensureLeft|((R|/x| is R|kotlin/String|)) -> { R|/b|.R|kotlin/Boolean.not|() } } }