(module
 (type $none_=>_i32 (func (result i32)))
 (type $none_=>_none (func))
 (type $i32_=>_none (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)
   )
   (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)
  )
 )
)
