(module
 (type $none_=>_i32_v128_f64_v128 (func (result i32 v128 f64 v128)))
 (type $none_=>_none (func))
 (type $i32_=>_none (func (param i32)))
 (type $i64_=>_none (func (param i64)))
 (type $i64_i32_=>_none (func (param i64 i32)))
 (type $f32_=>_none (func (param f32)))
 (type $f64_=>_none (func (param f64)))
 (type $v128_=>_none (func (param v128)))
 (type $exnref_=>_none (func (param exnref)))
 (type $none_=>_i32 (func (result i32)))
 (import "fuzzing-support" "log-i32" (func $log-i32 (param i32)))
 (import "fuzzing-support" "log-i64" (func $log-i64 (param i64)))
 (import "fuzzing-support" "log-f32" (func $log-f32 (param f32)))
 (import "fuzzing-support" "log-f64" (func $log-f64 (param f64)))
 (import "fuzzing-support" "log-v128" (func $log-v128 (param v128)))
 (import "fuzzing-support" "log-exnref" (func $log-exnref (param exnref)))
 (memory $0 (shared 16 17))
 (data (i32.const 0) "N\0fN\f5\f9\b1\ff\fa\eb\e5\fe\a7\ec\fb\fc\f4\a6\e4\ea\f0\ae\e3")
 (table $0 0 funcref)
 (global $global$ (mut eqref) (ref.null eq))
 (global $global$_0 (mut externref) (ref.null extern))
 (global $global$_1 (mut v128) (v128.const i32x4 0xfffffff9 0x06071c48 0x3f800000 0xc3800ae1))
 (global $global$_2 (mut eqref) (ref.null eq))
 (global $global$_3 (mut f64) (f64.const 0))
 (global $hangLimit (mut i32) (i32.const 10))
 (event $event$ (attr 0) (param i64 i32))
 (export "hashMemory" (func $hashMemory))
 (export "memory" (memory $0))
 (export "hangLimitInitializer" (func $hangLimitInitializer))
 (func $hashMemory (result i32)
  (local $0 i32)
  (block
   (if
    (i32.eqz
     (global.get $hangLimit)
    )
    (return
     (i32.const 64)
    )
   )
   (global.set $hangLimit
    (i32.sub
     (global.get $hangLimit)
     (i32.const 1)
    )
   )
  )
  (block (result i32)
   (local.set $0
    (i32.const 5381)
   )
   (local.set $0
    (i32.const 1140933654)
   )
   (local.set $0
    (i32.xor
     (i32.add
      (i32.shl
       (local.get $0)
       (i32.const 5)
      )
      (i32.const -127)
     )
     (i32.load8_u offset=1
      (i32.const 0)
     )
    )
   )
   (local.set $0
    (i32.xor
     (i32.add
      (i32.shl
       (i32.const 303045650)
       (i32.const 5)
      )
      (i32.shl
       (ref.eq
        (i31.new
         (i32.const -65535)
        )
        (tuple.extract 2
         (tuple.make
          (f64.const 274877906944)
          (i31.new
           (i32.const -134217728)
          )
          (ref.null eq)
         )
        )
       )
       (i32.const 5)
      )
     )
     (i32.load8_u offset=2
      (i32.const 0)
     )
    )
   )
   (nop)
   (local.set $0
    (i32.xor
     (i32.add
      (loop $label$1 (result i32)
       (block
        (if
         (i32.eqz
          (global.get $hangLimit)
         )
         (return
          (i32.const 4878)
         )
        )
        (global.set $hangLimit
         (i32.sub
          (global.get $hangLimit)
          (i32.const 1)
         )
        )
       )
       (block $label$2 (result i32)
        (drop
         (f64.const 3402823466385288598117041e14)
        )
        (loop $label$6
         (block
          (if
           (i32.eqz
            (global.get $hangLimit)
           )
           (return
            (i32.const -13)
           )
          )
          (global.set $hangLimit
           (i32.sub
            (global.get $hangLimit)
            (i32.const 1)
           )
          )
         )
         (block
          (block $label$7
           (nop)
           (if
            (block $label$8
             (nop)
             (br $label$1)
            )
            (block $label$9
             (f64.store offset=2 align=2
              (i32.and
               (i32.const 118163717)
               (i32.const 15)
              )
              (if (result f64)
               (call $hashMemory)
               (block $label$10 (result f64)
                (memory.copy
                 (i32.const -129)
                 (i32.and
                  (i32.const 1195786829)
                  (i32.const 15)
                 )
                 (i32.const -8)
                )
                (f64.const -562949953421312.2)
               )
               (block $label$11
                (nop)
                (br $label$7)
               )
              )
             )
             (if
              (i32.eqz
               (i32.atomic.load
                (i32.and
                 (i32.const 65535)
                 (i32.const 15)
                )
               )
              )
              (block $label$12
               (nop)
               (nop)
              )
              (block $label$13
               (br_if $label$7
                (i32.const 10539)
               )
               (loop $label$14
                (block
                 (if
                  (i32.eqz
                   (global.get $hangLimit)
                  )
                  (return
                   (i32.const 1495078923)
                  )
                 )
                 (global.set $hangLimit
                  (i32.sub
                   (global.get $hangLimit)
                   (i32.const 1)
                  )
                 )
                )
                (atomic.fence)
               )
              )
             )
            )
            (nop)
           )
          )
          (br_if $label$6
           (i32.const -50)
          )
          (loop $label$15
           (block
            (if
             (i32.eqz
              (global.get $hangLimit)
             )
             (return
              (i32.const -96)
             )
            )
            (global.set $hangLimit
             (i32.sub
              (global.get $hangLimit)
              (i32.const 1)
             )
            )
           )
           (block $label$16
            (if
             (i32.eqz
              (br_if $label$2
               (i8x16.extract_lane_s 2
                (f64x2.gt
                 (v128.const i32x4 0xffffffc0 0xffffffff 0x60631d62 0x630f6218)
                 (if (result v128)
                  (i32.eqz
                   (f32.ne
                    (block $label$18
                     (nop)
                     (br $label$15)
                    )
                    (f32.const -nan:0x7fff8a)
                   )
                  )
                  (block $label$19 (result v128)
                   (nop)
                   (v128.const i32x4 0x00000000 0x38100000 0x00000000 0x40d89880)
                  )
                  (block $label$20
                   (if
                    (i32.atomic.rmw8.cmpxchg_u offset=4
                     (i32.and
                      (i32.const 2)
                      (i32.const 15)
                     )
                     (i32.const 65525)
                     (br_if $label$2
                      (i32.const -33554432)
                      (i64.lt_u
                       (i64.const -65536)
                       (i64.const 6663)
                      )
                     )
                    )
                    (block $label$21
                     (br_if $label$21
                      (i32.eqz
                       (i32.const 65535)
                      )
                     )
                     (nop)
                    )
                    (block $label$22
                     (v128.store offset=4
                      (i32.and
                       (i32.const 55)
                       (i32.const 15)
                      )
                      (v128.const i32x4 0xfffffe00 0x7fffffff 0x00005b34 0x00000039)
                     )
                     (nop)
                    )
                   )
                   (br $label$16)
                  )
                 )
                )
               )
               (i32.eqz
                (i32.const 85459227)
               )
              )
             )
             (block $label$23
              (block $label$24
               (block $label$25
                (nop)
                (nop)
               )
               (nop)
              )
              (nop)
             )
             (block $label$26
              (if
               (br_if $label$2
                (i32.const 1091126348)
                (i32.const 1276841216)
               )
               (br_if $label$26
                (i32.eqz
                 (tuple.extract 0
                  (if (result i32 v128 f64 v128)
                   (i32.load8_u offset=3
                    (i32.and
                     (f64.ge
                      (block $label$27 (result f64)
                       (nop)
                       (f64.const 41)
                      )
                      (f64x2.extract_lane 0
                       (v128.const i32x4 0xffffc000 0x00000007 0x00000001 0x473f2147)
                      )
                     )
                     (i32.const 15)
                    )
                   )
                   (block $label$28 (result i32 v128 f64 v128)
                    (tuple.make
                     (i32.const 67308125)
                     (v128.const i32x4 0xff00011d 0x0601e545 0x7f0e14ff 0x00b1f843)
                     (f64.const 1314148947)
                     (v128.const i32x4 0x0000003a 0x42d00000 0x00000000 0x40280000)
                    )
                   )
                   (block $label$29 (result i32 v128 f64 v128)
                    (br_if $label$15
                     (i32.eqz
                      (br_if $label$2
                       (i32.const -8192)
                       (i32.eqz
                        (i32.const -2)
                       )
                      )
                     )
                    )
                    (tuple.make
                     (i32.const 65534)
                     (v128.const i32x4 0x41530000 0x008045b2 0x01ff7f00 0xff2d8349)
                     (f64.const 1797693134862315708145274e284)
                     (v128.const i32x4 0xffbc630d 0xffb6ffbb 0x00015658 0xffb4ffff)
                    )
                   )
                  )
                 )
                )
               )
               (block $label$30
                (if
                 (loop $label$31 (result i32)
                  (block
                   (if
                    (i32.eqz
                     (global.get $hangLimit)
                    )
                    (return
                     (i32.const 1578633994)
                    )
                   )
                   (global.set $hangLimit
                    (i32.sub
                     (global.get $hangLimit)
                     (i32.const 1)
                    )
                   )
                  )
                  (block $label$32 (result i32)
                   (block $label$33
                    (if
                     (i32.eqz
                      (i32.atomic.rmw.and offset=4
                       (i32.const -2147483648)
                       (block $label$34
                        (loop $label$35
                         (block
                          (if
                           (i32.eqz
                            (global.get $hangLimit)
                           )
                           (return
                            (i32.const 403574365)
                           )
                          )
                          (global.set $hangLimit
                           (i32.sub
                            (global.get $hangLimit)
                            (i32.const 1)
                           )
                          )
                         )
                         (block
                          (nop)
                          (br_if $label$35
                           (i32.const -65536)
                          )
                          (nop)
                         )
                        )
                        (br $label$1)
                       )
                      )
                     )
                     (block $label$36
                      (nop)
                      (br_if $label$16
                       (i32.const 2136)
                      )
                     )
                     (block $label$37
                      (nop)
                      (nop)
                     )
                    )
                    (atomic.fence)
                   )
                   (f32.lt
                    (f32.const 2147483648)
                    (f32.const 2147483648)
                   )
                  )
                 )
                 (block $label$40
                  (i32.atomic.store16 offset=2
                   (i32.and
                    (i31.get_s
                     (loop $label$41
                      (block
                       (if
                        (i32.eqz
                         (global.get $hangLimit)
                        )
                        (return
                         (i32.const -2)
                        )
                       )
                       (global.set $hangLimit
                        (i32.sub
                         (global.get $hangLimit)
                         (i32.const 1)
                        )
                       )
                      )
                      (block $label$42
                       (loop $label$43
                        (block
                         (if
                          (i32.eqz
                           (global.get $hangLimit)
                          )
                          (return
                           (i32.const -13)
                          )
                         )
                         (global.set $hangLimit
                          (i32.sub
                           (global.get $hangLimit)
                           (i32.const 1)
                          )
                         )
                        )
                        (block $label$44
                         (nop)
                         (nop)
                        )
                       )
                       (block $label$45
                        (nop)
                        (br $label$16)
                       )
                      )
                     )
                    )
                    (i32.const 15)
                   )
                   (block $label$46
                    (nop)
                    (ref.is_null
                     (if
                      (i32.eqz
                       (if (result i32)
                        (i32.eqz
                         (block $label$47
                          (nop)
                          (br $label$16)
                         )
                        )
                        (i32.const -4194304)
                        (i32.const 5140)
                       )
                      )
                      (block $label$48
                       (block $label$49
                        (nop)
                        (br_if $label$15
                         (i32.eqz
                          (loop $label$50 (result i32)
                           (block
                            (if
                             (i32.eqz
                              (global.get $hangLimit)
                             )
                             (return
                              (i32.const 112)
                             )
                            )
                            (global.set $hangLimit
                             (i32.sub
                              (global.get $hangLimit)
                              (i32.const 1)
                             )
                            )
                           )
                           (block (result i32)
                            (nop)
                            (br_if $label$50
                             (i32.eqz
                              (i32.const 3)
                             )
                            )
                            (i31.get_s
                             (i31.new
                              (i32.const 4095)
                             )
                            )
                           )
                          )
                         )
                        )
                       )
                       (br $label$40)
                      )
                      (block $label$51
                       (drop
                        (ref.null exn)
                       )
                       (br $label$16)
                      )
                     )
                    )
                   )
                  )
                 )
                 (block $label$52
                  (loop $label$53
                   (block
                    (if
                     (i32.eqz
                      (global.get $hangLimit)
                     )
                     (return
                      (i32.const 7506)
                     )
                    )
                    (global.set $hangLimit
                     (i32.sub
                      (global.get $hangLimit)
                      (i32.const 1)
                     )
                    )
                   )
                   (block
                    (nop)
                    (br_if $label$53
                     (loop $label$54 (result i32)
                      (block
                       (if
                        (i32.eqz
                         (global.get $hangLimit)
                        )
                        (return
                         (i32.const 50922251)
                        )
                       )
                       (global.set $hangLimit
                        (i32.sub
                         (global.get $hangLimit)
                         (i32.const 1)
                        )
                       )
                      )
                      (i32.const 6912)
                     )
                    )
                    (br_if $label$6
                     (br_if $label$2
                      (call $hashMemory)
                      (loop $label$55 (result i32)
                       (block
                        (if
                         (i32.eqz
                          (global.get $hangLimit)
                         )
                         (return
                          (i32.const 319820056)
                         )
                        )
                        (global.set $hangLimit
                         (i32.sub
                          (global.get $hangLimit)
                          (i32.const 1)
                         )
                        )
                       )
                       (i32.const 2147483647)
                      )
                     )
                    )
                   )
                  )
                  (memory.copy
                   (i32.and
                    (i32.atomic.load offset=3
                     (i32.and
                      (loop $label$56 (result i32)
                       (block
                        (if
                         (i32.eqz
                          (global.get $hangLimit)
                         )
                         (return
                          (i32.const -2147483648)
                         )
                        )
                        (global.set $hangLimit
                         (i32.sub
                          (global.get $hangLimit)
                          (i32.const 1)
                         )
                        )
                       )
                       (loop $label$57 (result i32)
                        (block
                         (if
                          (i32.eqz
                           (global.get $hangLimit)
                          )
                          (return
                           (i32.const 262143)
                          )
                         )
                         (global.set $hangLimit
                          (i32.sub
                           (global.get $hangLimit)
                           (i32.const 1)
                          )
                         )
                        )
                        (block (result i32)
                         (block $label$58
                          (if
                           (i32.eqz
                            (i32.const 775321902)
                           )
                           (nop)
                           (if
                            (i32.eqz
                             (i32.const -18)
                            )
                            (nop)
                            (nop)
                           )
                          )
                          (nop)
                         )
                         (br_if $label$57
                          (i32.const 4194304)
                         )
                         (f32.le
                          (f32.const 18446744073709551615)
                          (f32.const -nan:0x7fff87)
                         )
                        )
                       )
                      )
                      (i32.const 15)
                     )
                    )
                    (i32.const 15)
                   )
                   (i32.and
                    (block $label$59 (result i32)
                     (loop $label$60
                      (block
                       (if
                        (i32.eqz
                         (global.get $hangLimit)
                        )
                        (return
                         (i32.const -32768)
                        )
                       )
                       (global.set $hangLimit
                        (i32.sub
                         (global.get $hangLimit)
                         (i32.const 1)
                        )
                       )
                      )
                      (block
                       (block $label$61
                        (drop
                         (i31.new
                          (i32.const -8192)
                         )
                        )
                        (nop)
                       )
                       (br_if $label$60
                        (i32.eqz
                         (loop $label$62 (result i32)
                          (block
                           (if
                            (i32.eqz
                             (global.get $hangLimit)
                            )
                            (return
                             (i32.const 7)
                            )
                           )
                           (global.set $hangLimit
                            (i32.sub
                             (global.get $hangLimit)
                             (i32.const 1)
                            )
                           )
                          )
                          (block $label$63 (result i32)
                           (nop)
                           (i32.const 65521)
                          )
                         )
                        )
                       )
                       (memory.fill
                        (i32.trunc_f32_u
                         (f32.const 256)
                        )
                        (i64.eq
                         (i64.const 256)
                         (i64.const -16384)
                        )
                        (i32.const 387455770)
                       )
                      )
                     )
                     (i32.const 4627)
                    )
                    (i32.const 15)
                   )
                   (i32.load8_s offset=3
                    (i32.and
                     (br_if $label$2
                      (loop $label$64 (result i32)
                       (block
                        (if
                         (i32.eqz
                          (global.get $hangLimit)
                         )
                         (return
                          (i32.const -96)
                         )
                        )
                        (global.set $hangLimit
                         (i32.sub
                          (global.get $hangLimit)
                          (i32.const 1)
                         )
                        )
                       )
                       (block (result i32)
                        (block $label$65
                         (loop $label$66
                          (block
                           (if
                            (i32.eqz
                             (global.get $hangLimit)
                            )
                            (return
                             (i32.const 65518)
                            )
                           )
                           (global.set $hangLimit
                            (i32.sub
                             (global.get $hangLimit)
                             (i32.const 1)
                            )
                           )
                          )
                          (nop)
                         )
                         (nop)
                        )
                        (br_if $label$64
                         (tuple.extract 1
                          (tuple.make
                           (v128.const i32x4 0x0606ff82 0xfffe0000 0x04052000 0xfffe0000)
                           (i32.const 1529028702)
                          )
                         )
                        )
                        (loop $label$67 (result i32)
                         (block
                          (if
                           (i32.eqz
                            (global.get $hangLimit)
                           )
                           (return
                            (i32.const -1073741825)
                           )
                          )
                          (global.set $hangLimit
                           (i32.sub
                            (global.get $hangLimit)
                            (i32.const 1)
                           )
                          )
                         )
                         (i32.const 128)
                        )
                       )
                      )
                      (i32.eqz
                       (ref.is_null
                        (select (result anyref)
                         (ref.null eq)
                         (ref.null extern)
                         (i32.const 129)
                        )
                       )
                      )
                     )
                     (i32.const 15)
                    )
                   )
                  )
                 )
                )
                (nop)
               )
              )
              (block $label$68
               (nop)
               (nop)
              )
             )
            )
            (nop)
           )
          )
         )
        )
        (if (result i32)
         (block $label$69 (result i32)
          (if
           (if (result i32)
            (br_if $label$2
             (loop $label$71 (result i32)
              (block
               (if
                (i32.eqz
                 (global.get $hangLimit)
                )
                (return
                 (i32.const 15)
                )
               )
               (global.set $hangLimit
                (i32.sub
                 (global.get $hangLimit)
                 (i32.const 1)
                )
               )
              )
              (block (result i32)
               (block $label$72
                (br_if $label$72
                 (i32.const -1)
                )
                (nop)
               )
               (br_if $label$71
                (i32.eqz
                 (i32.const -2147483648)
                )
               )
               (if (result i32)
                (i32.eqz
                 (i32.const -32766)
                )
                (block $label$73 (result i32)
                 (br_if $label$71
                  (i32.eqz
                   (tuple.extract 1
                    (block $label$74
                     (nop)
                     (br $label$1)
                    )
                   )
                  )
                 )
                 (ref.is_null
                  (global.get $global$_0)
                 )
                )
                (i32x4.all_true
                 (v128.const i32x4 0x3c800c01 0x193fff27 0x52a20001 0x970000ff)
                )
               )
              )
             )
             (i32.eqz
              (loop $label$70 (result i32)
               (block
                (if
                 (i32.eqz
                  (global.get $hangLimit)
                 )
                 (return
                  (i32.const 1048576)
                 )
                )
                (global.set $hangLimit
                 (i32.sub
                  (global.get $hangLimit)
                  (i32.const 1)
                 )
                )
               )
               (i32.const 256)
              )
             )
            )
            (i32.atomic.load8_u offset=22
             (i32.const 858607703)
            )
            (block $label$75 (result i32)
             (nop)
             (br_if $label$75
              (i32.const 7)
              (i31.get_s
               (tuple.extract 0
                (tuple.make
                 (i31.new
                  (i32.const 219815443)
                 )
                 (v128.const i32x4 0x00000001 0x151b1e13 0x00000001 0x1a5f0000)
                )
               )
              )
             )
            )
           )
           (block $label$76
            (nop)
           )
           (nop)
          )
          (i32.const 2097152)
         )
         (i32.const -84)
         (block $label$77 (result i32)
          (i32.const -16)
         )
        )
       )
      )
      (local.get $0)
     )
     (i32.load8_u offset=4
      (i32.const 0)
     )
    )
   )
   (local.set $0
    (i32.xor
     (i32.add
      (i32.shl
       (local.get $0)
       (i32.const 5)
      )
      (local.get $0)
     )
     (i32.load8_u offset=5
      (i32.const 0)
     )
    )
   )
   (local.set $0
    (i32.xor
     (i32.add
      (i32.shl
       (local.get $0)
       (i32.const 5)
      )
      (local.get $0)
     )
     (i32.const 6506)
    )
   )
   (nop)
   (local.set $0
    (i32.xor
     (i32.add
      (i32.shl
       (local.get $0)
       (i32.const 5)
      )
      (local.get $0)
     )
     (i32.load8_u offset=6
      (i32.const 0)
     )
    )
   )
   (local.set $0
    (i32.xor
     (i32.add
      (i32.shl
       (i32.const 1633371484)
       (i32.const 5)
      )
      (i32.xor
       (i32.add
        (i32.shl
         (local.get $0)
         (i32.const 5)
        )
        (local.get $0)
       )
       (i32.load8_u offset=8
        (i32.const 0)
       )
      )
     )
     (i32.load8_u offset=9
      (i32.const 0)
     )
    )
   )
   (local.set $0
    (i32.xor
     (i32.add
      (i32.shl
       (local.get $0)
       (i32.const 5)
      )
      (local.get $0)
     )
     (i32.load8_u offset=10
      (i32.const 0)
     )
    )
   )
   (local.set $0
    (i32.xor
     (i32.const 1937132399)
     (i32.load8_u offset=11
      (i32.const 0)
     )
    )
   )
   (local.set $0
    (i32.xor
     (i32.add
      (i32.shl
       (i32.const -85)
       (i32.const 5)
      )
      (local.get $0)
     )
     (i32.shl
      (local.get $0)
      (i32.const 5)
     )
    )
   )
   (local.set $0
    (i32.xor
     (i32.add
      (i32.shl
       (local.get $0)
       (i32.const 5)
      )
      (local.get $0)
     )
     (i32.load8_u offset=13
      (i32.const 0)
     )
    )
   )
   (local.set $0
    (i32.xor
     (i32.add
      (i32.const 5)
      (local.get $0)
     )
     (i32.load8_u offset=14
      (i32.const 0)
     )
    )
   )
   (local.set $0
    (i32.xor
     (i32.add
      (i32.shl
       (local.get $0)
       (i32.const 5)
      )
      (local.get $0)
     )
     (i32.load8_u offset=12
      (i32.const 0)
     )
    )
   )
   (local.get $0)
  )
 )
 (func $hangLimitInitializer
  (global.set $hangLimit
   (i32.const 10)
  )
 )
)
