data class Result { constructor(i: Int) /* primary */ { super/*Any*/() /* () */ } var i: Int field = i get set operator fun component1(): Int { return .#i } fun copy(i: Int = .#i): Result { return Result(i = i) } override fun toString(): String { return "Result(" + "i=" + .#i + ")" } override fun hashCode(): Int { return .#i.hashCode() } override operator fun equals(other: Any?): Boolean { when { EQEQEQ(arg0 = , arg1 = other) -> return true } when { other !is Result -> return false } val tmp0_other_with_cast: Result = other as Result when { EQEQ(arg0 = .#i, arg1 = tmp0_other_with_cast.#i).not() -> return false } return true } } var operationScore: Int field = 0 get set operator fun Result.plus($context_receiver_0: Int, other: Result): Result { { // BLOCK ( = ().plus(other = $context_receiver_0)) } return Result(i = .().plus(other = other.())) } operator fun Result.plusAssign($context_receiver_0: Int, other: Result) { { // BLOCK ( = ().plus(other = $context_receiver_0)) } { // BLOCK val tmp0_this: Result = tmp0_this.( = tmp0_this.().plus(other = other.())) } } operator fun Result.minus($context_receiver_0: Int, other: Result): Result { { // BLOCK ( = ().plus(other = $context_receiver_0)) } return Result(i = .().minus(other = other.())) } operator fun Result.minusAssign($context_receiver_0: Int, other: Result) { { // BLOCK ( = ().plus(other = $context_receiver_0)) } { // BLOCK val tmp0_this: Result = tmp0_this.( = tmp0_this.().minus(other = other.())) } } operator fun Result.times($context_receiver_0: Int, other: Result): Result { { // BLOCK ( = ().plus(other = $context_receiver_0)) } return Result(i = .().times(other = other.())) } operator fun Result.timesAssign($context_receiver_0: Int, other: Result) { { // BLOCK ( = ().plus(other = $context_receiver_0)) } { // BLOCK val tmp0_this: Result = tmp0_this.( = tmp0_this.().times(other = other.())) } } operator fun Result.div($context_receiver_0: Int, other: Result): Result { { // BLOCK ( = ().plus(other = $context_receiver_0)) } return Result(i = .().div(other = other.())) } operator fun Result.divAssign($context_receiver_0: Int, other: Result) { { // BLOCK ( = ().plus(other = $context_receiver_0)) } { // BLOCK val tmp0_this: Result = tmp0_this.( = tmp0_this.().div(other = other.())) } } fun box(): String { val result: Result = Result(i = 0) with(receiver = 1, block = local fun Int.() { result.plusAssign($context_receiver_0 = $this$with, other = Result(i = 1).plus($context_receiver_0 = $this$with, other = Result(i = 1))) result.minusAssign($context_receiver_0 = $this$with, other = Result(i = 1).minus($context_receiver_0 = $this$with, other = Result(i = 0))) result.timesAssign($context_receiver_0 = $this$with, other = Result(i = 1).times($context_receiver_0 = $this$with, other = Result(i = 2))) result.divAssign($context_receiver_0 = $this$with, other = Result(i = 4).div($context_receiver_0 = $this$with, other = Result(i = 2))) } ) return when { when { EQEQ(arg0 = result.(), arg1 = 1) -> EQEQ(arg0 = (), arg1 = 8) else -> false } -> "OK" else -> "fail" } }