(module
 (type $i32_i32_=>_i32 (func (param i32 i32) (result i32)))
 (type $i32_i32_i32_=>_none (func (param i32 i32 i32)))
 (type $none_=>_f64 (func (result f64)))
 (memory $0 0)
 (func $conditionals (param $0 i32) (param $1 i32) (result i32)
  (local $2 i32)
  (local $3 i32)
  (local $4 i32)
  (local $5 i32)
  (local $6 i32)
  (local $7 i32)
  (local.set $0
   (i32.const 0)
  )
  (loop $while-in
   (local.set $3
    (i32.const 0)
   )
   (loop $while-in6
    (local.set $6
     (i32.add
      (local.get $0)
      (i32.const 1)
     )
    )
    (local.set $0
     (if (result i32)
      (if (result i32)
       (i32.rem_s
        (i32.add
         (i32.mul
          (local.get $0)
          (local.tee $7
           (i32.add
            (local.get $0)
            (i32.const 2)
           )
          )
         )
         (i32.const 17)
        )
        (i32.const 5)
       )
       (i32.eqz
        (i32.rem_u
         (i32.add
          (i32.mul
           (local.get $0)
           (local.get $0)
          )
          (i32.const 11)
         )
         (i32.const 3)
        )
       )
       (i32.const 1)
      )
      (local.get $7)
      (local.get $6)
     )
    )
    (br_if $while-in6
     (i32.gt_s
      (local.get $4)
      (local.tee $3
       (i32.add
        (local.get $3)
        (i32.const 1)
       )
      )
     )
    )
   )
   (br_if $while-in
    (i32.ne
     (local.tee $1
      (i32.add
       (local.get $1)
       (i32.const 1)
      )
     )
     (i32.const 27000)
    )
   )
  )
  (return
   (local.get $5)
  )
 )
 (func $side-effect (param $0 i32) (param $1 i32) (result i32)
  (local $2 i32)
  (local $3 i32)
  (local $4 i32)
  (local $5 i32)
  (local $6 i32)
  (local $7 i32)
  (local.set $0
   (i32.const 0)
  )
  (loop $while-in
   (local.set $3
    (i32.const 0)
   )
   (loop $while-in6
    (local.set $6
     (i32.add
      (local.get $0)
      (i32.const 1)
     )
    )
    (local.set $0
     (if (result i32)
      (i32.or
       (i32.eqz
        (i32.rem_s
         (i32.add
          (i32.mul
           (local.get $0)
           (local.tee $7
            (local.get $0)
           )
          )
          (i32.const 17)
         )
         (i32.const 5)
        )
       )
       (i32.eqz
        (i32.rem_u
         (i32.add
          (i32.mul
           (local.get $0)
           (local.get $0)
          )
          (unreachable)
         )
         (i32.const 3)
        )
       )
      )
      (local.get $7)
      (local.get $6)
     )
    )
    (br_if $while-in6
     (i32.gt_s
      (local.get $4)
      (local.tee $3
       (i32.add
        (local.get $3)
        (i32.const 1)
       )
      )
     )
    )
   )
   (br_if $while-in
    (i32.ne
     (local.tee $1
      (i32.add
       (local.get $1)
       (i32.const 1)
      )
     )
     (i32.const 27000)
    )
   )
  )
  (return
   (local.get $5)
  )
 )
 (func $flip (param $0 i32) (param $1 i32) (result i32)
  (local $2 i32)
  (local $3 i32)
  (local $4 i32)
  (local $5 i32)
  (local $6 i32)
  (local $7 i32)
  (local.set $0
   (i32.const 0)
  )
  (loop $while-in
   (local.set $3
    (i32.const 0)
   )
   (loop $while-in6
    (local.set $6
     (i32.add
      (local.get $0)
      (i32.const 1)
     )
    )
    (local.set $0
     (if (result i32)
      (if (result i32)
       (i32.rem_u
        (i32.add
         (i32.mul
          (local.get $0)
          (local.get $0)
         )
         (i32.const 100)
        )
        (i32.const 3)
       )
       (i32.eqz
        (i32.rem_s
         (i32.add
          (i32.mul
           (local.get $0)
           (i32.eqz
            (local.get $0)
           )
          )
          (i32.const 17)
         )
         (i32.const 5)
        )
       )
       (i32.const 1)
      )
      (local.get $7)
      (local.get $6)
     )
    )
    (br_if $while-in6
     (i32.gt_s
      (local.get $4)
      (local.tee $3
       (i32.add
        (local.get $3)
        (i32.const 1)
       )
      )
     )
    )
   )
   (br_if $while-in
    (i32.ne
     (local.tee $1
      (i32.add
       (local.get $1)
       (i32.const 1)
      )
     )
     (i32.const 27000)
    )
   )
  )
  (return
   (local.get $5)
  )
 )
 (func $invalidate-conditionalizeExpensiveOnBitwise (param $0 i32) (param $1 i32) (result i32)
  (if
   (i32.eqz
    (i32.and
     (i32.lt_u
      (i32.and
       (i32.shr_s
        (i32.shl
         (i32.sub
          (local.get $1)
          (i32.const 1)
         )
         (i32.const 24)
        )
        (i32.const 24)
       )
       (i32.const 255)
      )
      (i32.const 3)
     )
     (i32.ne
      (local.tee $1
       (i32.const 0)
      )
      (i32.const 0)
     )
    )
   )
   (return
    (local.get $0)
   )
  )
  (return
   (local.get $1)
  )
 )
 (func $invalidate-conditionalizeExpensiveOnBitwise-ok (param $0 i32) (param $1 i32) (result i32)
  (if
   (i32.eqz
    (if (result i32)
     (local.tee $1
      (i32.const 0)
     )
     (i32.lt_u
      (i32.and
       (i32.shr_s
        (i32.shl
         (i32.sub
          (local.get $0)
          (i32.const 1)
         )
         (i32.const 24)
        )
        (i32.const 24)
       )
       (i32.const 255)
      )
      (i32.const 3)
     )
     (i32.const 0)
    )
   )
   (return
    (local.get $0)
   )
  )
  (return
   (local.get $1)
  )
 )
 (func $conditionalize-if-type-change (result f64)
  (local $0 i32)
  (drop
   (loop $label$1 (result f32)
    (block $label$2 (result f32)
     (drop
      (block $label$3 (result f32)
       (br_if $label$1
        (i32.or
         (f32.gt
          (br_if $label$3
           (f32.const 1)
           (local.get $0)
          )
          (br $label$2
           (f32.const 71)
          )
         )
         (i64.eqz
          (select
           (i64.const 58)
           (i64.const -982757)
           (i64.eqz
            (i64.const 0)
           )
          )
         )
        )
       )
      )
     )
     (f32.const 1)
    )
   )
  )
  (f64.const -nan:0xfffffffffffff)
 )
 (func $optimize-bulk-memory-copy (param $dst i32) (param $src i32) (param $sz i32)
  (block
   (drop
    (local.get $dst)
   )
   (drop
    (local.get $dst)
   )
   (drop
    (local.get $sz)
   )
  )
  (block
   (drop
    (local.get $dst)
   )
   (drop
    (local.get $src)
   )
  )
 )
)
