(module
 (type $0 (func (result i32)))
 (type $1 (func))
 (type $2 (func (param i32)))
 (import "spectest" "print" (func $print (param i32)))
 (memory $0 1 1)
 (export "mem" (memory $0))
 (start $main)
 (func $check (result i32)
  (if
   (i32.ge_u
    (i32.load
     (i32.const 4)
    )
    (i32.const 48)
   )
   (then
    (unreachable)
   )
  )
  (i32.store
   (i32.const 4)
   (i32.add
    (i32.load
     (i32.const 4)
    )
    (i32.const 4)
   )
  )
  (call $print
   (i32.sub
    (i32.const 0)
    (i32.load offset=4
     (i32.load
      (i32.const 4)
     )
    )
   )
  )
  (i32.load offset=4
   (i32.load
    (i32.const 4)
   )
  )
 )
 (func $main
  (local $0 i32)
  (local $1 i32)
  (block
   (call $print
    (i32.const 0)
   )
   (local.set $0
    (call $check)
   )
  )
  (block $switch$1$leave
   (block $switch$1$default
    (block $switch$1$case$4
     (block $switch$1$case$3
      (block $switch$1$case$2
       (br_table $switch$1$default $switch$1$case$2 $switch$1$default $switch$1$case$3 $switch$1$case$2 $switch$1$case$4 $switch$1$case$3 $switch$1$default $switch$1$default $switch$1$case$2 $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$case$4 $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$default $switch$1$case$4 $switch$1$default
        (i32.rem_u
         (local.get $0)
         (i32.const 1)
        )
       )
      )
      (block
       (drop
        (i32.const 4)
       )
       (block
        (block
         (call $print
          (i32.const 1)
         )
         (local.set $0
          (call $check)
         )
        )
       )
      )
      (br $switch$1$leave)
     )
     (block
      (drop
       (i32.const 4)
      )
      (block
       (block
        (call $print
         (i32.const 1)
        )
        (local.set $0
         (call $check)
        )
       )
      )
     )
     (br $switch$1$leave)
    )
    (block
     (drop
      (i32.const 4)
     )
     (block
      (block
       (call $print
        (i32.const 1)
       )
       (local.set $0
        (call $check)
       )
      )
     )
    )
    (br $switch$1$leave)
   )
   (block
    (block
     (block
      (call $print
       (i32.const 1)
      )
      (local.set $0
       (call $check)
      )
     )
    )
   )
   (br $switch$1$leave)
  )
 )
)
