FILE fqName:<root> fileName:/ifWithLoop.kt
  FUN name:topLevelMethod visibility:public modality:FINAL <> () returnType:kotlin.Unit
    BLOCK_BODY
      VAR name:z type:kotlin.Int [var]
        CONST Int type=kotlin.Int value=1
      WHEN type=kotlin.Unit origin=IF
        BRANCH
          if: CONST Boolean type=kotlin.Boolean value=true
          then: BLOCK type=kotlin.Unit origin=null
            BLOCK type=kotlin.Unit origin=FOR_LOOP
              VAR FOR_LOOP_ITERATOR name:tmp_0 type:kotlin.collections.IntIterator [val]
                CALL 'public open fun iterator (): kotlin.collections.IntIterator declared in kotlin.ranges.IntRange' type=kotlin.collections.IntIterator origin=FOR_LOOP_ITERATOR
                  $this: CALL 'public final fun rangeTo (other: kotlin.Int): kotlin.ranges.IntRange declared in kotlin.Int' type=kotlin.ranges.IntRange origin=RANGE
                    $this: CONST Int type=kotlin.Int value=0
                    other: CONST Int type=kotlin.Int value=2
              WHILE label=null origin=FOR_LOOP_INNER_WHILE
                condition: CALL 'public abstract fun hasNext (): kotlin.Boolean declared in kotlin.collections.IntIterator' type=kotlin.Boolean origin=FOR_LOOP_HAS_NEXT
                  $this: GET_VAR 'val tmp_0: kotlin.collections.IntIterator declared in <root>.topLevelMethod' type=kotlin.collections.IntIterator origin=null
                body: BLOCK type=kotlin.Unit origin=FOR_LOOP_INNER_WHILE
                  VAR FOR_LOOP_VARIABLE name:i type:kotlin.Int [val]
                    CALL 'public final fun next (): kotlin.Int declared in kotlin.collections.IntIterator' type=kotlin.Int origin=FOR_LOOP_NEXT
                      $this: GET_VAR 'val tmp_0: kotlin.collections.IntIterator declared in <root>.topLevelMethod' type=kotlin.collections.IntIterator origin=null
                  SET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Unit origin=PLUSEQ
                    CALL 'public final fun plus (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=PLUSEQ
                      $this: GET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Int origin=PLUSEQ
                      other: GET_VAR 'val i: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Int origin=null
        BRANCH
          if: CONST Boolean type=kotlin.Boolean value=true
          then: BLOCK type=kotlin.Unit origin=null
            BLOCK type=kotlin.Unit origin=FOR_LOOP
              VAR FOR_LOOP_ITERATOR name:tmp_1 type:kotlin.collections.IntIterator [val]
                CALL 'public open fun iterator (): kotlin.collections.IntIterator declared in kotlin.ranges.IntRange' type=kotlin.collections.IntIterator origin=FOR_LOOP_ITERATOR
                  $this: CALL 'public final fun rangeTo (other: kotlin.Int): kotlin.ranges.IntRange declared in kotlin.Int' type=kotlin.ranges.IntRange origin=RANGE
                    $this: CONST Int type=kotlin.Int value=0
                    other: CONST Int type=kotlin.Int value=3
              WHILE label=null origin=FOR_LOOP_INNER_WHILE
                condition: CALL 'public abstract fun hasNext (): kotlin.Boolean declared in kotlin.collections.IntIterator' type=kotlin.Boolean origin=FOR_LOOP_HAS_NEXT
                  $this: GET_VAR 'val tmp_1: kotlin.collections.IntIterator declared in <root>.topLevelMethod' type=kotlin.collections.IntIterator origin=null
                body: BLOCK type=kotlin.Unit origin=FOR_LOOP_INNER_WHILE
                  VAR FOR_LOOP_VARIABLE name:i type:kotlin.Int [val]
                    CALL 'public final fun next (): kotlin.Int declared in kotlin.collections.IntIterator' type=kotlin.Int origin=FOR_LOOP_NEXT
                      $this: GET_VAR 'val tmp_1: kotlin.collections.IntIterator declared in <root>.topLevelMethod' type=kotlin.collections.IntIterator origin=null
                  SET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Unit origin=PLUSEQ
                    CALL 'public final fun plus (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=PLUSEQ
                      $this: GET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Int origin=PLUSEQ
                      other: GET_VAR 'val i: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Int origin=null
      WHEN type=kotlin.Unit origin=IF
        BRANCH
          if: CONST Boolean type=kotlin.Boolean value=true
          then: BLOCK type=kotlin.Unit origin=FOR_LOOP
            VAR FOR_LOOP_ITERATOR name:tmp_2 type:kotlin.collections.IntIterator [val]
              CALL 'public open fun iterator (): kotlin.collections.IntIterator declared in kotlin.ranges.IntRange' type=kotlin.collections.IntIterator origin=FOR_LOOP_ITERATOR
                $this: CALL 'public final fun rangeTo (other: kotlin.Int): kotlin.ranges.IntRange declared in kotlin.Int' type=kotlin.ranges.IntRange origin=RANGE
                  $this: CONST Int type=kotlin.Int value=0
                  other: CONST Int type=kotlin.Int value=4
            WHILE label=null origin=FOR_LOOP_INNER_WHILE
              condition: CALL 'public abstract fun hasNext (): kotlin.Boolean declared in kotlin.collections.IntIterator' type=kotlin.Boolean origin=FOR_LOOP_HAS_NEXT
                $this: GET_VAR 'val tmp_2: kotlin.collections.IntIterator declared in <root>.topLevelMethod' type=kotlin.collections.IntIterator origin=null
              body: BLOCK type=kotlin.Unit origin=FOR_LOOP_INNER_WHILE
                VAR FOR_LOOP_VARIABLE name:i type:kotlin.Int [val]
                  CALL 'public final fun next (): kotlin.Int declared in kotlin.collections.IntIterator' type=kotlin.Int origin=FOR_LOOP_NEXT
                    $this: GET_VAR 'val tmp_2: kotlin.collections.IntIterator declared in <root>.topLevelMethod' type=kotlin.collections.IntIterator origin=null
                SET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Unit origin=PLUSEQ
                  CALL 'public final fun plus (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=PLUSEQ
                    $this: GET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Int origin=PLUSEQ
                    other: GET_VAR 'val i: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Int origin=null
        BRANCH
          if: CONST Boolean type=kotlin.Boolean value=true
          then: BLOCK type=kotlin.Unit origin=FOR_LOOP
            VAR FOR_LOOP_ITERATOR name:tmp_3 type:kotlin.collections.IntIterator [val]
              CALL 'public open fun iterator (): kotlin.collections.IntIterator declared in kotlin.ranges.IntRange' type=kotlin.collections.IntIterator origin=FOR_LOOP_ITERATOR
                $this: CALL 'public final fun rangeTo (other: kotlin.Int): kotlin.ranges.IntRange declared in kotlin.Int' type=kotlin.ranges.IntRange origin=RANGE
                  $this: CONST Int type=kotlin.Int value=0
                  other: CONST Int type=kotlin.Int value=5
            WHILE label=null origin=FOR_LOOP_INNER_WHILE
              condition: CALL 'public abstract fun hasNext (): kotlin.Boolean declared in kotlin.collections.IntIterator' type=kotlin.Boolean origin=FOR_LOOP_HAS_NEXT
                $this: GET_VAR 'val tmp_3: kotlin.collections.IntIterator declared in <root>.topLevelMethod' type=kotlin.collections.IntIterator origin=null
              body: BLOCK type=kotlin.Unit origin=FOR_LOOP_INNER_WHILE
                VAR FOR_LOOP_VARIABLE name:i type:kotlin.Int [val]
                  CALL 'public final fun next (): kotlin.Int declared in kotlin.collections.IntIterator' type=kotlin.Int origin=FOR_LOOP_NEXT
                    $this: GET_VAR 'val tmp_3: kotlin.collections.IntIterator declared in <root>.topLevelMethod' type=kotlin.collections.IntIterator origin=null
                SET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Unit origin=PLUSEQ
                  CALL 'public final fun plus (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=PLUSEQ
                    $this: GET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Int origin=PLUSEQ
                    other: GET_VAR 'val i: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Int origin=null
      WHEN type=kotlin.Unit origin=IF
        BRANCH
          if: CONST Boolean type=kotlin.Boolean value=true
          then: BLOCK type=kotlin.Unit origin=null
            WHILE label=null origin=WHILE_LOOP
              condition: CONST Boolean type=kotlin.Boolean value=false
              body: SET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Unit origin=PLUSEQ
                CALL 'public final fun plus (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=PLUSEQ
                  $this: GET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Int origin=PLUSEQ
                  other: CONST Int type=kotlin.Int value=6
        BRANCH
          if: CONST Boolean type=kotlin.Boolean value=true
          then: BLOCK type=kotlin.Unit origin=null
            WHILE label=null origin=WHILE_LOOP
              condition: CONST Boolean type=kotlin.Boolean value=false
              body: SET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Unit origin=PLUSEQ
                CALL 'public final fun plus (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=PLUSEQ
                  $this: GET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Int origin=PLUSEQ
                  other: CONST Int type=kotlin.Int value=7
      WHEN type=kotlin.Unit origin=IF
        BRANCH
          if: CONST Boolean type=kotlin.Boolean value=true
          then: WHILE label=null origin=WHILE_LOOP
            condition: CONST Boolean type=kotlin.Boolean value=false
            body: SET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Unit origin=PLUSEQ
              CALL 'public final fun plus (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=PLUSEQ
                $this: GET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Int origin=PLUSEQ
                other: CONST Int type=kotlin.Int value=8
        BRANCH
          if: CONST Boolean type=kotlin.Boolean value=true
          then: WHILE label=null origin=WHILE_LOOP
            condition: CONST Boolean type=kotlin.Boolean value=false
            body: SET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Unit origin=PLUSEQ
              CALL 'public final fun plus (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=PLUSEQ
                $this: GET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Int origin=PLUSEQ
                other: CONST Int type=kotlin.Int value=9
      WHEN type=kotlin.Unit origin=IF
        BRANCH
          if: CONST Boolean type=kotlin.Boolean value=true
          then: BLOCK type=kotlin.Unit origin=null
            BLOCK type=kotlin.Unit origin=null
              DO_WHILE label=null origin=DO_WHILE_LOOP
                body: COMPOSITE type=kotlin.Unit origin=null
                  SET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Unit origin=PLUSEQ
                    CALL 'public final fun plus (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=PLUSEQ
                      $this: GET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Int origin=PLUSEQ
                      other: CONST Int type=kotlin.Int value=10
                condition: CONST Boolean type=kotlin.Boolean value=false
        BRANCH
          if: CONST Boolean type=kotlin.Boolean value=true
          then: BLOCK type=kotlin.Unit origin=null
            BLOCK type=kotlin.Unit origin=null
              DO_WHILE label=null origin=DO_WHILE_LOOP
                body: COMPOSITE type=kotlin.Unit origin=null
                  SET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Unit origin=PLUSEQ
                    CALL 'public final fun plus (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=PLUSEQ
                      $this: GET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Int origin=PLUSEQ
                      other: CONST Int type=kotlin.Int value=11
                condition: CONST Boolean type=kotlin.Boolean value=false
      WHEN type=kotlin.Unit origin=IF
        BRANCH
          if: CONST Boolean type=kotlin.Boolean value=true
          then: BLOCK type=kotlin.Unit origin=null
            DO_WHILE label=null origin=DO_WHILE_LOOP
              body: COMPOSITE type=kotlin.Unit origin=null
                SET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Unit origin=PLUSEQ
                  CALL 'public final fun plus (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=PLUSEQ
                    $this: GET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Int origin=PLUSEQ
                    other: CONST Int type=kotlin.Int value=12
              condition: CONST Boolean type=kotlin.Boolean value=false
        BRANCH
          if: CONST Boolean type=kotlin.Boolean value=true
          then: BLOCK type=kotlin.Unit origin=null
            DO_WHILE label=null origin=DO_WHILE_LOOP
              body: COMPOSITE type=kotlin.Unit origin=null
                SET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Unit origin=PLUSEQ
                  CALL 'public final fun plus (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=PLUSEQ
                    $this: GET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Int origin=PLUSEQ
                    other: CONST Int type=kotlin.Int value=13
              condition: CONST Boolean type=kotlin.Boolean value=false
      BLOCK type=kotlin.Unit origin=WHEN
        VAR IR_TEMPORARY_VARIABLE name:tmp_4 type:kotlin.Int [val]
          GET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Int origin=null
        WHEN type=kotlin.Unit origin=WHEN
          BRANCH
            if: CALL 'public final fun EQEQ (arg0: kotlin.Any?, arg1: kotlin.Any?): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=EQEQ
              arg0: GET_VAR 'val tmp_4: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Int origin=null
              arg1: CONST Int type=kotlin.Int value=1
            then: BLOCK type=kotlin.Unit origin=null
              BLOCK type=kotlin.Unit origin=FOR_LOOP
                VAR FOR_LOOP_ITERATOR name:tmp_5 type:kotlin.collections.IntIterator [val]
                  CALL 'public open fun iterator (): kotlin.collections.IntIterator declared in kotlin.ranges.IntRange' type=kotlin.collections.IntIterator origin=FOR_LOOP_ITERATOR
                    $this: CALL 'public final fun rangeTo (other: kotlin.Int): kotlin.ranges.IntRange declared in kotlin.Int' type=kotlin.ranges.IntRange origin=RANGE
                      $this: CONST Int type=kotlin.Int value=0
                      other: CONST Int type=kotlin.Int value=14
                WHILE label=null origin=FOR_LOOP_INNER_WHILE
                  condition: CALL 'public abstract fun hasNext (): kotlin.Boolean declared in kotlin.collections.IntIterator' type=kotlin.Boolean origin=FOR_LOOP_HAS_NEXT
                    $this: GET_VAR 'val tmp_5: kotlin.collections.IntIterator declared in <root>.topLevelMethod' type=kotlin.collections.IntIterator origin=null
                  body: BLOCK type=kotlin.Unit origin=FOR_LOOP_INNER_WHILE
                    VAR FOR_LOOP_VARIABLE name:i type:kotlin.Int [val]
                      CALL 'public final fun next (): kotlin.Int declared in kotlin.collections.IntIterator' type=kotlin.Int origin=FOR_LOOP_NEXT
                        $this: GET_VAR 'val tmp_5: kotlin.collections.IntIterator declared in <root>.topLevelMethod' type=kotlin.collections.IntIterator origin=null
                    SET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Unit origin=PLUSEQ
                      CALL 'public final fun plus (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=PLUSEQ
                        $this: GET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Int origin=PLUSEQ
                        other: GET_VAR 'val i: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Int origin=null
          BRANCH
            if: CONST Boolean type=kotlin.Boolean value=true
            then: BLOCK type=kotlin.Unit origin=null
              BLOCK type=kotlin.Unit origin=FOR_LOOP
                VAR FOR_LOOP_ITERATOR name:tmp_6 type:kotlin.collections.IntIterator [val]
                  CALL 'public open fun iterator (): kotlin.collections.IntIterator declared in kotlin.ranges.IntRange' type=kotlin.collections.IntIterator origin=FOR_LOOP_ITERATOR
                    $this: CALL 'public final fun rangeTo (other: kotlin.Int): kotlin.ranges.IntRange declared in kotlin.Int' type=kotlin.ranges.IntRange origin=RANGE
                      $this: CONST Int type=kotlin.Int value=0
                      other: CONST Int type=kotlin.Int value=15
                WHILE label=null origin=FOR_LOOP_INNER_WHILE
                  condition: CALL 'public abstract fun hasNext (): kotlin.Boolean declared in kotlin.collections.IntIterator' type=kotlin.Boolean origin=FOR_LOOP_HAS_NEXT
                    $this: GET_VAR 'val tmp_6: kotlin.collections.IntIterator declared in <root>.topLevelMethod' type=kotlin.collections.IntIterator origin=null
                  body: BLOCK type=kotlin.Unit origin=FOR_LOOP_INNER_WHILE
                    VAR FOR_LOOP_VARIABLE name:i type:kotlin.Int [val]
                      CALL 'public final fun next (): kotlin.Int declared in kotlin.collections.IntIterator' type=kotlin.Int origin=FOR_LOOP_NEXT
                        $this: GET_VAR 'val tmp_6: kotlin.collections.IntIterator declared in <root>.topLevelMethod' type=kotlin.collections.IntIterator origin=null
                    SET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Unit origin=PLUSEQ
                      CALL 'public final fun plus (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=PLUSEQ
                        $this: GET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Int origin=PLUSEQ
                        other: GET_VAR 'val i: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Int origin=null
      BLOCK type=kotlin.Unit origin=WHEN
        VAR IR_TEMPORARY_VARIABLE name:tmp_7 type:kotlin.Int [val]
          GET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Int origin=null
        WHEN type=kotlin.Unit origin=WHEN
          BRANCH
            if: CALL 'public final fun EQEQ (arg0: kotlin.Any?, arg1: kotlin.Any?): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=EQEQ
              arg0: GET_VAR 'val tmp_7: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Int origin=null
              arg1: CONST Int type=kotlin.Int value=1
            then: BLOCK type=kotlin.Unit origin=FOR_LOOP
              VAR FOR_LOOP_ITERATOR name:tmp_8 type:kotlin.collections.IntIterator [val]
                CALL 'public open fun iterator (): kotlin.collections.IntIterator declared in kotlin.ranges.IntRange' type=kotlin.collections.IntIterator origin=FOR_LOOP_ITERATOR
                  $this: CALL 'public final fun rangeTo (other: kotlin.Int): kotlin.ranges.IntRange declared in kotlin.Int' type=kotlin.ranges.IntRange origin=RANGE
                    $this: CONST Int type=kotlin.Int value=0
                    other: CONST Int type=kotlin.Int value=16
              WHILE label=null origin=FOR_LOOP_INNER_WHILE
                condition: CALL 'public abstract fun hasNext (): kotlin.Boolean declared in kotlin.collections.IntIterator' type=kotlin.Boolean origin=FOR_LOOP_HAS_NEXT
                  $this: GET_VAR 'val tmp_8: kotlin.collections.IntIterator declared in <root>.topLevelMethod' type=kotlin.collections.IntIterator origin=null
                body: BLOCK type=kotlin.Unit origin=FOR_LOOP_INNER_WHILE
                  VAR FOR_LOOP_VARIABLE name:i type:kotlin.Int [val]
                    CALL 'public final fun next (): kotlin.Int declared in kotlin.collections.IntIterator' type=kotlin.Int origin=FOR_LOOP_NEXT
                      $this: GET_VAR 'val tmp_8: kotlin.collections.IntIterator declared in <root>.topLevelMethod' type=kotlin.collections.IntIterator origin=null
                  SET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Unit origin=PLUSEQ
                    CALL 'public final fun plus (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=PLUSEQ
                      $this: GET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Int origin=PLUSEQ
                      other: GET_VAR 'val i: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Int origin=null
          BRANCH
            if: CONST Boolean type=kotlin.Boolean value=true
            then: BLOCK type=kotlin.Unit origin=FOR_LOOP
              VAR FOR_LOOP_ITERATOR name:tmp_9 type:kotlin.collections.IntIterator [val]
                CALL 'public open fun iterator (): kotlin.collections.IntIterator declared in kotlin.ranges.IntRange' type=kotlin.collections.IntIterator origin=FOR_LOOP_ITERATOR
                  $this: CALL 'public final fun rangeTo (other: kotlin.Int): kotlin.ranges.IntRange declared in kotlin.Int' type=kotlin.ranges.IntRange origin=RANGE
                    $this: CONST Int type=kotlin.Int value=0
                    other: CONST Int type=kotlin.Int value=17
              WHILE label=null origin=FOR_LOOP_INNER_WHILE
                condition: CALL 'public abstract fun hasNext (): kotlin.Boolean declared in kotlin.collections.IntIterator' type=kotlin.Boolean origin=FOR_LOOP_HAS_NEXT
                  $this: GET_VAR 'val tmp_9: kotlin.collections.IntIterator declared in <root>.topLevelMethod' type=kotlin.collections.IntIterator origin=null
                body: BLOCK type=kotlin.Unit origin=FOR_LOOP_INNER_WHILE
                  VAR FOR_LOOP_VARIABLE name:i type:kotlin.Int [val]
                    CALL 'public final fun next (): kotlin.Int declared in kotlin.collections.IntIterator' type=kotlin.Int origin=FOR_LOOP_NEXT
                      $this: GET_VAR 'val tmp_9: kotlin.collections.IntIterator declared in <root>.topLevelMethod' type=kotlin.collections.IntIterator origin=null
                  SET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Unit origin=PLUSEQ
                    CALL 'public final fun plus (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=PLUSEQ
                      $this: GET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Int origin=PLUSEQ
                      other: GET_VAR 'val i: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Int origin=null
      BLOCK type=kotlin.Unit origin=WHEN
        VAR IR_TEMPORARY_VARIABLE name:tmp_10 type:kotlin.Int [val]
          GET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Int origin=null
        WHEN type=kotlin.Unit origin=WHEN
          BRANCH
            if: CALL 'public final fun EQEQ (arg0: kotlin.Any?, arg1: kotlin.Any?): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=EQEQ
              arg0: GET_VAR 'val tmp_10: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Int origin=null
              arg1: CONST Int type=kotlin.Int value=1
            then: BLOCK type=kotlin.Unit origin=null
              WHILE label=null origin=WHILE_LOOP
                condition: CONST Boolean type=kotlin.Boolean value=false
                body: SET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Unit origin=PLUSEQ
                  CALL 'public final fun plus (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=PLUSEQ
                    $this: GET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Int origin=PLUSEQ
                    other: CONST Int type=kotlin.Int value=18
          BRANCH
            if: CONST Boolean type=kotlin.Boolean value=true
            then: BLOCK type=kotlin.Unit origin=null
              WHILE label=null origin=WHILE_LOOP
                condition: CONST Boolean type=kotlin.Boolean value=false
                body: SET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Unit origin=PLUSEQ
                  CALL 'public final fun plus (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=PLUSEQ
                    $this: GET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Int origin=PLUSEQ
                    other: CONST Int type=kotlin.Int value=19
      BLOCK type=kotlin.Unit origin=WHEN
        VAR IR_TEMPORARY_VARIABLE name:tmp_11 type:kotlin.Int [val]
          GET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Int origin=null
        WHEN type=kotlin.Unit origin=WHEN
          BRANCH
            if: CALL 'public final fun EQEQ (arg0: kotlin.Any?, arg1: kotlin.Any?): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=EQEQ
              arg0: GET_VAR 'val tmp_11: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Int origin=null
              arg1: CONST Int type=kotlin.Int value=1
            then: WHILE label=null origin=WHILE_LOOP
              condition: CONST Boolean type=kotlin.Boolean value=false
              body: SET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Unit origin=PLUSEQ
                CALL 'public final fun plus (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=PLUSEQ
                  $this: GET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Int origin=PLUSEQ
                  other: CONST Int type=kotlin.Int value=20
          BRANCH
            if: CONST Boolean type=kotlin.Boolean value=true
            then: WHILE label=null origin=WHILE_LOOP
              condition: CONST Boolean type=kotlin.Boolean value=false
              body: SET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Unit origin=PLUSEQ
                CALL 'public final fun plus (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=PLUSEQ
                  $this: GET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Int origin=PLUSEQ
                  other: CONST Int type=kotlin.Int value=21
      BLOCK type=kotlin.Unit origin=WHEN
        VAR IR_TEMPORARY_VARIABLE name:tmp_12 type:kotlin.Int [val]
          GET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Int origin=null
        WHEN type=kotlin.Unit origin=WHEN
          BRANCH
            if: CALL 'public final fun EQEQ (arg0: kotlin.Any?, arg1: kotlin.Any?): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=EQEQ
              arg0: GET_VAR 'val tmp_12: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Int origin=null
              arg1: CONST Int type=kotlin.Int value=1
            then: BLOCK type=kotlin.Unit origin=null
              BLOCK type=kotlin.Unit origin=null
                DO_WHILE label=null origin=DO_WHILE_LOOP
                  body: COMPOSITE type=kotlin.Unit origin=null
                    SET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Unit origin=PLUSEQ
                      CALL 'public final fun plus (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=PLUSEQ
                        $this: GET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Int origin=PLUSEQ
                        other: CONST Int type=kotlin.Int value=22
                  condition: CONST Boolean type=kotlin.Boolean value=false
          BRANCH
            if: CONST Boolean type=kotlin.Boolean value=true
            then: BLOCK type=kotlin.Unit origin=null
              BLOCK type=kotlin.Unit origin=null
                DO_WHILE label=null origin=DO_WHILE_LOOP
                  body: COMPOSITE type=kotlin.Unit origin=null
                    SET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Unit origin=PLUSEQ
                      CALL 'public final fun plus (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=PLUSEQ
                        $this: GET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Int origin=PLUSEQ
                        other: CONST Int type=kotlin.Int value=23
                  condition: CONST Boolean type=kotlin.Boolean value=false
      BLOCK type=kotlin.Unit origin=WHEN
        VAR IR_TEMPORARY_VARIABLE name:tmp_13 type:kotlin.Int [val]
          GET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Int origin=null
        WHEN type=kotlin.Unit origin=WHEN
          BRANCH
            if: CALL 'public final fun EQEQ (arg0: kotlin.Any?, arg1: kotlin.Any?): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=EQEQ
              arg0: GET_VAR 'val tmp_13: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Int origin=null
              arg1: CONST Int type=kotlin.Int value=1
            then: BLOCK type=kotlin.Unit origin=null
              DO_WHILE label=null origin=DO_WHILE_LOOP
                body: COMPOSITE type=kotlin.Unit origin=null
                  SET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Unit origin=PLUSEQ
                    CALL 'public final fun plus (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=PLUSEQ
                      $this: GET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Int origin=PLUSEQ
                      other: CONST Int type=kotlin.Int value=24
                condition: CONST Boolean type=kotlin.Boolean value=false
          BRANCH
            if: CONST Boolean type=kotlin.Boolean value=true
            then: BLOCK type=kotlin.Unit origin=null
              DO_WHILE label=null origin=DO_WHILE_LOOP
                body: COMPOSITE type=kotlin.Unit origin=null
                  SET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Unit origin=PLUSEQ
                    CALL 'public final fun plus (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=PLUSEQ
                      $this: GET_VAR 'var z: kotlin.Int declared in <root>.topLevelMethod' type=kotlin.Int origin=PLUSEQ
                      other: CONST Int type=kotlin.Int value=25
                condition: CONST Boolean type=kotlin.Boolean value=false
