BinaryenTypeNone: 0
BinaryenTypeUnreachable: 1
BinaryenTypeInt32: 2
BinaryenTypeInt64: 3
BinaryenTypeFloat32: 4
BinaryenTypeFloat64: 5
BinaryenTypeVec128: 6
BinaryenTypeFuncref: (ptr)
BinaryenTypeExternref: (ptr)
BinaryenTypeAnyref: (ptr)
BinaryenTypeEqref: (ptr)
BinaryenTypeI31ref: (ptr)
BinaryenTypeDataref: (ptr)
BinaryenTypeArrayref: (ptr)
BinaryenTypeStringref: (ptr)
BinaryenTypeStringviewWTF8: (ptr)
BinaryenTypeStringviewWTF16: (ptr)
BinaryenTypeStringviewIter: (ptr)
BinaryenTypeNullref: (ptr)
BinaryenTypeNullExternref: (ptr)
BinaryenTypeNullFuncref: (ptr)
BinaryenTypeAuto: -1
BinaryenPackedTypeNotPacked: 0
BinaryenPackedTypeInt8: 1
BinaryenPackedTypeInt16: 2
BinaryenHeapTypeExt: 0
BinaryenHeapTypeFunc: 1
BinaryenHeapTypeAny: 2
BinaryenHeapTypeEq: 3
BinaryenHeapTypeI31: 4
BinaryenHeapTypeData: 5
BinaryenHeapTypeArray: 6
BinaryenHeapTypeString: 7
BinaryenHeapTypeStringviewWTF8: 8
BinaryenHeapTypeStringviewWTF16: 9
BinaryenHeapTypeStringviewIter: 10
BinaryenHeapTypeNone: 11
BinaryenHeapTypeNoext: 12
BinaryenHeapTypeNofunc: 13
BinaryenFeatureMVP: 0
BinaryenFeatureAtomics: 1
BinaryenFeatureBulkMemory: 16
BinaryenFeatureMutableGlobals: 2
BinaryenFeatureNontrappingFPToInt: 4
BinaryenFeatureSignExt: 32
BinaryenFeatureSIMD128: 8
BinaryenFeatureExceptionHandling: 64
BinaryenFeatureTailCall: 128
BinaryenFeatureReferenceTypes: 256
BinaryenFeatureMultivalue: 512
BinaryenFeatureGC: 1024
BinaryenFeatureMemory64: 2048
BinaryenFeatureRelaxedSIMD: 8192
BinaryenFeatureExtendedConst: 16384
BinaryenFeatureStrings: 32768
BinaryenFeatureAll: 126975
(f32.neg
 (f32.const -33.61199951171875)
)
(table.set $0
 (i32.const 0)
 (ref.func "$kitchen()sinker")
)
(table.get $0
 (i32.const 0)
)
(table.size $0)
(table.grow $0
 (ref.null nofunc)
 (i32.const 0)
)
(module
 (type $[mut:i8] (array (mut i8)))
 (type ${mut:i32} (struct (field (mut i32))))
 (type $i32_i64_f32_f64_=>_i32 (func (param i32 i64 f32 f64) (result i32)))
 (type $[mut:i16] (array (mut i16)))
 (type $i32_=>_none (func (param i32)))
 (type $i32_f64_=>_f32 (func (param i32 f64) (result f32)))
 (type $none_=>_none (func))
 (import "module" "base" (func $an-imported (param i32 f64) (result f32)))
 (global $a-global i32 (i32.const 7))
 (global $a-mutable-global (mut f32) (f32.const 7.5))
 (global $i8Array-global (mut (ref null $[mut:i8])) (array.new_default $[mut:i8]
  (i32.const 0)
 ))
 (global $i16Array-global (mut (ref null $[mut:i16])) (array.new_default $[mut:i16]
  (i32.const 0)
 ))
 (global $i32Struct-global (mut (ref null ${mut:i32})) (struct.new_default ${mut:i32}))
 (global $string-global (mut stringref) (string.const ""))
 (memory $0 (shared 1 256))
 (data (i32.const 10) "hello, world")
 (data "I am passive")
 (table $tab 0 100 funcref)
 (table $0 1 1 funcref)
 (elem $0 (table $0) (i32.const 0) func "$kitchen()sinker")
 (elem $passive func "$kitchen()sinker")
 (tag $a-tag (param i32))
 (export "mem" (memory $0))
 (export "kitchen_sinker" (func "$kitchen()sinker"))
 (start $starter)
 (func "$kitchen()sinker" (param $0 i32) (param $1 i64) (param $2 f32) (param $3 f64) (result i32)
  (local $4 i32)
  (local $5 externref)
  (block $the-body (result i32)
   (block $the-nothing
    (drop
     (block $the-value (result i32)
      (drop
       (i32.clz
        (i32.const -10)
       )
      )
      (drop
       (i64.ctz
        (i64.const -22)
       )
      )
      (drop
       (i32.popcnt
        (i32.const -10)
       )
      )
      (drop
       (f32.neg
        (f32.const -33.61199951171875)
       )
      )
      (drop
       (f64.abs
        (f64.const -9005.841)
       )
      )
      (drop
       (f32.ceil
        (f32.const -33.61199951171875)
       )
      )
      (drop
       (f64.floor
        (f64.const -9005.841)
       )
      )
      (drop
       (f32.trunc
        (f32.const -33.61199951171875)
       )
      )
      (drop
       (f32.nearest
        (f32.const -33.61199951171875)
       )
      )
      (drop
       (f64.sqrt
        (f64.const -9005.841)
       )
      )
      (drop
       (i32.eqz
        (i32.const -10)
       )
      )
      (drop
       (i64.extend_i32_s
        (i32.const -10)
       )
      )
      (drop
       (i64.extend_i32_u
        (i32.const -10)
       )
      )
      (drop
       (i32.wrap_i64
        (i64.const -22)
       )
      )
      (drop
       (i32.trunc_f32_s
        (f32.const -33.61199951171875)
       )
      )
      (drop
       (i64.trunc_f32_s
        (f32.const -33.61199951171875)
       )
      )
      (drop
       (i32.trunc_f32_u
        (f32.const -33.61199951171875)
       )
      )
      (drop
       (i64.trunc_f32_u
        (f32.const -33.61199951171875)
       )
      )
      (drop
       (i32.trunc_f64_s
        (f64.const -9005.841)
       )
      )
      (drop
       (i64.trunc_f64_s
        (f64.const -9005.841)
       )
      )
      (drop
       (i32.trunc_f64_u
        (f64.const -9005.841)
       )
      )
      (drop
       (i64.trunc_f64_u
        (f64.const -9005.841)
       )
      )
      (drop
       (i32.trunc_sat_f32_s
        (f32.const -33.61199951171875)
       )
      )
      (drop
       (i64.trunc_sat_f32_s
        (f32.const -33.61199951171875)
       )
      )
      (drop
       (i32.trunc_sat_f32_u
        (f32.const -33.61199951171875)
       )
      )
      (drop
       (i64.trunc_sat_f32_u
        (f32.const -33.61199951171875)
       )
      )
      (drop
       (i32.trunc_sat_f64_s
        (f64.const -9005.841)
       )
      )
      (drop
       (i64.trunc_sat_f64_s
        (f64.const -9005.841)
       )
      )
      (drop
       (i32.trunc_sat_f64_u
        (f64.const -9005.841)
       )
      )
      (drop
       (i64.trunc_sat_f64_u
        (f64.const -9005.841)
       )
      )
      (drop
       (i32.reinterpret_f32
        (f32.const -33.61199951171875)
       )
      )
      (drop
       (i64.reinterpret_f64
        (f64.const -9005.841)
       )
      )
      (drop
       (f32.convert_i32_s
        (i32.const -10)
       )
      )
      (drop
       (f64.convert_i32_s
        (i32.const -10)
       )
      )
      (drop
       (f32.convert_i32_u
        (i32.const -10)
       )
      )
      (drop
       (f64.convert_i32_u
        (i32.const -10)
       )
      )
      (drop
       (f32.convert_i64_s
        (i64.const -22)
       )
      )
      (drop
       (f64.convert_i64_s
        (i64.const -22)
       )
      )
      (drop
       (f32.convert_i64_u
        (i64.const -22)
       )
      )
      (drop
       (f64.convert_i64_u
        (i64.const -22)
       )
      )
      (drop
       (f64.promote_f32
        (f32.const -33.61199951171875)
       )
      )
      (drop
       (f32.demote_f64
        (f64.const -9005.841)
       )
      )
      (drop
       (f32.reinterpret_i32
        (i32.const -10)
       )
      )
      (drop
       (f64.reinterpret_i64
        (i64.const -22)
       )
      )
      (drop
       (i8x16.splat
        (i32.const -10)
       )
      )
      (drop
       (i16x8.splat
        (i32.const -10)
       )
      )
      (drop
       (i32x4.splat
        (i32.const -10)
       )
      )
      (drop
       (i64x2.splat
        (i64.const -22)
       )
      )
      (drop
       (f32x4.splat
        (f32.const -33.61199951171875)
       )
      )
      (drop
       (f64x2.splat
        (f64.const -9005.841)
       )
      )
      (drop
       (v128.not
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (v128.any_true
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i8x16.popcnt
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i8x16.abs
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i8x16.neg
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i8x16.all_true
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i8x16.bitmask
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i16x8.abs
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i16x8.neg
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i16x8.all_true
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i16x8.bitmask
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i32x4.abs
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i32x4.neg
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i32x4.all_true
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i32x4.bitmask
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i64x2.abs
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i64x2.neg
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i64x2.all_true
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i64x2.bitmask
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f32x4.abs
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f32x4.neg
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f32x4.sqrt
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f64x2.abs
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f64x2.neg
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f64x2.sqrt
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i32x4.trunc_sat_f32x4_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i32x4.trunc_sat_f32x4_u
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f32x4.convert_i32x4_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f32x4.convert_i32x4_u
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i16x8.extend_low_i8x16_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i16x8.extend_high_i8x16_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i16x8.extend_low_i8x16_u
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i16x8.extend_high_i8x16_u
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i32x4.extend_low_i16x8_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i32x4.extend_high_i16x8_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i32x4.extend_low_i16x8_u
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i32x4.extend_high_i16x8_u
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i64x2.extend_low_i32x4_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i64x2.extend_high_i32x4_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i64x2.extend_low_i32x4_u
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i64x2.extend_high_i32x4_u
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f64x2.convert_low_i32x4_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f64x2.convert_low_i32x4_u
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i32x4.trunc_sat_f64x2_s_zero
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i32x4.trunc_sat_f64x2_u_zero
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f32x4.demote_f64x2_zero
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f64x2.promote_low_f32x4
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i32.add
        (i32.const -10)
        (i32.const -11)
       )
      )
      (drop
       (f64.sub
        (f64.const -9005.841)
        (f64.const -9007.333)
       )
      )
      (drop
       (i32.div_s
        (i32.const -10)
        (i32.const -11)
       )
      )
      (drop
       (i64.div_u
        (i64.const -22)
        (i64.const -23)
       )
      )
      (drop
       (i64.rem_s
        (i64.const -22)
        (i64.const -23)
       )
      )
      (drop
       (i32.rem_u
        (i32.const -10)
        (i32.const -11)
       )
      )
      (drop
       (i32.and
        (i32.const -10)
        (i32.const -11)
       )
      )
      (drop
       (i64.or
        (i64.const -22)
        (i64.const -23)
       )
      )
      (drop
       (i32.xor
        (i32.const -10)
        (i32.const -11)
       )
      )
      (drop
       (i64.shl
        (i64.const -22)
        (i64.const -23)
       )
      )
      (drop
       (i64.shr_u
        (i64.const -22)
        (i64.const -23)
       )
      )
      (drop
       (i32.shr_s
        (i32.const -10)
        (i32.const -11)
       )
      )
      (drop
       (i32.rotl
        (i32.const -10)
        (i32.const -11)
       )
      )
      (drop
       (i64.rotr
        (i64.const -22)
        (i64.const -23)
       )
      )
      (drop
       (f32.div
        (f32.const -33.61199951171875)
        (f32.const -62.5)
       )
      )
      (drop
       (f64.copysign
        (f64.const -9005.841)
        (f64.const -9007.333)
       )
      )
      (drop
       (f32.min
        (f32.const -33.61199951171875)
        (f32.const -62.5)
       )
      )
      (drop
       (f64.max
        (f64.const -9005.841)
        (f64.const -9007.333)
       )
      )
      (drop
       (i32.eq
        (i32.const -10)
        (i32.const -11)
       )
      )
      (drop
       (f32.ne
        (f32.const -33.61199951171875)
        (f32.const -62.5)
       )
      )
      (drop
       (i32.lt_s
        (i32.const -10)
        (i32.const -11)
       )
      )
      (drop
       (i64.lt_u
        (i64.const -22)
        (i64.const -23)
       )
      )
      (drop
       (i64.le_s
        (i64.const -22)
        (i64.const -23)
       )
      )
      (drop
       (i32.le_u
        (i32.const -10)
        (i32.const -11)
       )
      )
      (drop
       (i64.gt_s
        (i64.const -22)
        (i64.const -23)
       )
      )
      (drop
       (i32.gt_u
        (i32.const -10)
        (i32.const -11)
       )
      )
      (drop
       (i32.ge_s
        (i32.const -10)
        (i32.const -11)
       )
      )
      (drop
       (i64.ge_u
        (i64.const -22)
        (i64.const -23)
       )
      )
      (drop
       (f32.lt
        (f32.const -33.61199951171875)
        (f32.const -62.5)
       )
      )
      (drop
       (f64.le
        (f64.const -9005.841)
        (f64.const -9007.333)
       )
      )
      (drop
       (f64.gt
        (f64.const -9005.841)
        (f64.const -9007.333)
       )
      )
      (drop
       (f32.ge
        (f32.const -33.61199951171875)
        (f32.const -62.5)
       )
      )
      (drop
       (i8x16.eq
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i8x16.ne
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i8x16.lt_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i8x16.lt_u
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i8x16.gt_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i8x16.gt_u
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i8x16.le_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i8x16.le_u
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i8x16.ge_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i8x16.ge_u
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i16x8.eq
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i16x8.ne
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i16x8.lt_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i16x8.lt_u
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i16x8.gt_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i16x8.gt_u
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i16x8.le_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i16x8.le_u
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i16x8.ge_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i16x8.ge_u
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i32x4.eq
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i32x4.ne
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i32x4.lt_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i32x4.lt_u
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i32x4.gt_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i32x4.gt_u
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i32x4.le_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i32x4.le_u
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i32x4.ge_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i32x4.ge_u
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i64x2.eq
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i64x2.ne
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i64x2.lt_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i64x2.gt_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i64x2.le_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i64x2.ge_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f32x4.eq
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f32x4.ne
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f32x4.lt
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f32x4.gt
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f32x4.le
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f32x4.ge
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f64x2.eq
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f64x2.ne
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f64x2.lt
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f64x2.gt
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f64x2.le
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f64x2.ge
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (v128.and
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (v128.or
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (v128.xor
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (v128.andnot
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i8x16.add
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i8x16.add_sat_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i8x16.add_sat_u
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i8x16.sub
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i8x16.sub_sat_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i8x16.sub_sat_u
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i8x16.min_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i8x16.min_u
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i8x16.max_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i8x16.max_u
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i8x16.avgr_u
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i16x8.add
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i16x8.add_sat_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i16x8.add_sat_u
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i16x8.sub
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i16x8.sub_sat_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i16x8.sub_sat_u
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i16x8.mul
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i16x8.min_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i16x8.min_u
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i16x8.max_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i16x8.max_u
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i16x8.avgr_u
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i16x8.q15mulr_sat_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i16x8.extmul_low_i8x16_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i16x8.extmul_high_i8x16_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i16x8.extmul_low_i8x16_u
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i16x8.extmul_high_i8x16_u
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i32x4.add
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i32x4.sub
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i32x4.mul
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i64x2.add
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i64x2.sub
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i64x2.mul
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i64x2.extmul_low_i32x4_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i64x2.extmul_high_i32x4_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i64x2.extmul_low_i32x4_u
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i64x2.extmul_high_i32x4_u
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f32x4.add
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f32x4.sub
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f32x4.mul
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i32x4.min_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i32x4.min_u
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i32x4.max_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i32x4.max_u
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i32x4.dot_i16x8_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i32x4.extmul_low_i16x8_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i32x4.extmul_high_i16x8_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i32x4.extmul_low_i16x8_u
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i32x4.extmul_high_i16x8_u
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f32x4.div
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f32x4.min
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f32x4.max
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f32x4.pmin
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f32x4.pmax
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f32x4.ceil
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f32x4.floor
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f32x4.trunc
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f32x4.nearest
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f64x2.add
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f64x2.sub
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f64x2.mul
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f64x2.div
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f64x2.min
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f64x2.max
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f64x2.pmin
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f64x2.pmax
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f64x2.ceil
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f64x2.floor
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f64x2.trunc
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f64x2.nearest
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i16x8.extadd_pairwise_i8x16_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i16x8.extadd_pairwise_i8x16_u
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i32x4.extadd_pairwise_i16x8_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i32x4.extadd_pairwise_i16x8_u
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i8x16.narrow_i16x8_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i8x16.narrow_i16x8_u
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i16x8.narrow_i32x4_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i16x8.narrow_i32x4_u
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i8x16.swizzle
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i8x16.extract_lane_s 0
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i8x16.extract_lane_u 0
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i16x8.extract_lane_s 0
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i16x8.extract_lane_u 0
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i32x4.extract_lane 0
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i64x2.extract_lane 0
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f32x4.extract_lane 0
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (f64x2.extract_lane 0
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (i8x16.replace_lane 0
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (i32.const 42)
       )
      )
      (drop
       (i16x8.replace_lane 0
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (i32.const 42)
       )
      )
      (drop
       (i32x4.replace_lane 0
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (i32.const 42)
       )
      )
      (drop
       (i64x2.replace_lane 0
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (i64.const 42)
       )
      )
      (drop
       (f32x4.replace_lane 0
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (f32.const 42)
       )
      )
      (drop
       (f64x2.replace_lane 0
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (f64.const 42)
       )
      )
      (drop
       (i8x16.shl
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (i32.const 1)
       )
      )
      (drop
       (i8x16.shr_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (i32.const 1)
       )
      )
      (drop
       (i8x16.shr_u
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (i32.const 1)
       )
      )
      (drop
       (i16x8.shl
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (i32.const 1)
       )
      )
      (drop
       (i16x8.shr_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (i32.const 1)
       )
      )
      (drop
       (i16x8.shr_u
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (i32.const 1)
       )
      )
      (drop
       (i32x4.shl
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (i32.const 1)
       )
      )
      (drop
       (i32x4.shr_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (i32.const 1)
       )
      )
      (drop
       (i32x4.shr_u
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (i32.const 1)
       )
      )
      (drop
       (i64x2.shl
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (i32.const 1)
       )
      )
      (drop
       (i64x2.shr_s
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (i32.const 1)
       )
      )
      (drop
       (i64x2.shr_u
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (i32.const 1)
       )
      )
      (drop
       (v128.load8_splat
        (i32.const 128)
       )
      )
      (drop
       (v128.load16_splat offset=16 align=1
        (i32.const 128)
       )
      )
      (drop
       (v128.load32_splat offset=16
        (i32.const 128)
       )
      )
      (drop
       (v128.load64_splat align=4
        (i32.const 128)
       )
      )
      (drop
       (v128.load8x8_s
        (i32.const 128)
       )
      )
      (drop
       (v128.load8x8_u
        (i32.const 128)
       )
      )
      (drop
       (v128.load16x4_s
        (i32.const 128)
       )
      )
      (drop
       (v128.load16x4_u
        (i32.const 128)
       )
      )
      (drop
       (v128.load32x2_s
        (i32.const 128)
       )
      )
      (drop
       (v128.load32x2_u
        (i32.const 128)
       )
      )
      (drop
       (v128.load32_zero
        (i32.const 128)
       )
      )
      (drop
       (v128.load64_zero
        (i32.const 128)
       )
      )
      (drop
       (v128.load8_lane 0
        (i32.const 128)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (v128.load16_lane 0
        (i32.const 128)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (v128.load32_lane 0
        (i32.const 128)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (v128.load64_lane 0
        (i32.const 128)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (v128.store8_lane 0
       (i32.const 128)
       (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
      )
      (v128.store16_lane 0
       (i32.const 128)
       (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
      )
      (v128.store32_lane 0
       (i32.const 128)
       (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
      )
      (v128.store64_lane 0
       (i32.const 128)
       (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
      )
      (drop
       (i8x16.shuffle 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (drop
       (v128.bitselect
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
        (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
       )
      )
      (memory.init 0
       (i32.const 1024)
       (i32.const 0)
       (i32.const 12)
      )
      (data.drop 0)
      (memory.copy
       (i32.const 2048)
       (i32.const 1024)
       (i32.const 12)
      )
      (memory.fill
       (i32.const 0)
       (i32.const 42)
       (i32.const 1024)
      )
      (block
      )
      (if
       (i32.const 1)
       (drop
        (i32.const 2)
       )
       (drop
        (i32.const 3)
       )
      )
      (if
       (i32.const 4)
       (drop
        (i32.const 5)
       )
      )
      (drop
       (loop $in (result i32)
        (i32.const 0)
       )
      )
      (drop
       (loop (result i32)
        (i32.const 0)
       )
      )
      (drop
       (br_if $the-value
        (i32.const 1)
        (i32.const 0)
       )
      )
      (br_if $the-nothing
       (i32.const 2)
      )
      (br $the-value
       (i32.const 3)
      )
      (br $the-nothing)
      (br_table $the-value $the-value
       (i32.const 1)
       (i32.const 0)
      )
      (br_table $the-nothing $the-nothing
       (i32.const 2)
      )
      (drop
       (i32.eqz
        (call "$kitchen()sinker"
         (i32.const 13)
         (i64.const 37)
         (f32.const 1.2999999523162842)
         (f64.const 3.7)
        )
       )
      )
      (drop
       (i32.eqz
        (i32.trunc_f32_s
         (call $an-imported
          (i32.const 13)
          (f64.const 3.7)
         )
        )
       )
      )
      (drop
       (i32.eqz
        (call_indirect $tab (type $i32_i64_f32_f64_=>_i32)
         (i32.const 13)
         (i64.const 37)
         (f32.const 1.2999999523162842)
         (f64.const 3.7)
         (i32.const 2449)
        )
       )
      )
      (drop
       (local.get $0)
      )
      (local.set $0
       (i32.const 101)
      )
      (drop
       (local.tee $0
        (i32.const 102)
       )
      )
      (drop
       (i32.load
        (i32.const 1)
       )
      )
      (drop
       (i64.load16_s offset=2 align=1
        (i32.const 8)
       )
      )
      (drop
       (f32.load
        (i32.const 2)
       )
      )
      (drop
       (f64.load offset=2
        (i32.const 9)
       )
      )
      (i32.store
       (i32.const 10)
       (i32.const 11)
      )
      (i64.store offset=2 align=4
       (i32.const 110)
       (i64.const 111)
      )
      (drop
       (select
        (i32.const 3)
        (i32.const 5)
        (i32.const 1)
       )
      )
      (return
       (i32.const 1337)
      )
      (return_call "$kitchen()sinker"
       (i32.const 13)
       (i64.const 37)
       (f32.const 1.2999999523162842)
       (f64.const 3.7)
      )
      (return_call_indirect $tab (type $i32_i64_f32_f64_=>_i32)
       (i32.const 13)
       (i64.const 37)
       (f32.const 1.2999999523162842)
       (f64.const 3.7)
       (i32.const 2449)
      )
      (drop
       (ref.is_null
        (ref.null noextern)
       )
      )
      (drop
       (ref.is_null
        (ref.func "$kitchen()sinker")
       )
      )
      (drop
       (select (result funcref)
        (ref.null nofunc)
        (ref.func "$kitchen()sinker")
        (i32.const 1)
       )
      )
      (drop
       (ref.eq
        (ref.null none)
        (ref.null none)
       )
      )
      (drop
       (ref.is_func
        (ref.null none)
       )
      )
      (drop
       (ref.is_data
        (ref.null none)
       )
      )
      (drop
       (ref.is_i31
        (ref.null none)
       )
      )
      (drop
       (ref.as_non_null
        (ref.null none)
       )
      )
      (drop
       (ref.as_func
        (ref.null none)
       )
      )
      (drop
       (ref.as_data
        (ref.null none)
       )
      )
      (drop
       (ref.as_i31
        (ref.null none)
       )
      )
      (drop
       (extern.internalize
        (ref.null noextern)
       )
      )
      (drop
       (extern.externalize
        (ref.null none)
       )
      )
      (try
       (do
        (throw $a-tag
         (i32.const 0)
        )
       )
       (catch $a-tag
        (drop
         (pop i32)
        )
       )
       (catch_all
        (nop)
       )
      )
      (try $try_outer
       (do
        (try
         (do
          (throw $a-tag
           (i32.const 0)
          )
         )
         (delegate $try_outer)
        )
       )
       (catch_all
        (nop)
       )
      )
      (i32.atomic.store
       (i32.const 0)
       (i32.atomic.load
        (i32.const 0)
       )
      )
      (drop
       (memory.atomic.wait32
        (i32.const 0)
        (i32.const 0)
        (i64.const 111)
       )
      )
      (drop
       (memory.atomic.notify
        (i32.const 0)
        (i32.const 0)
       )
      )
      (atomic.fence)
      (drop
       (tuple.make
        (i32.const 13)
        (i64.const 37)
        (f32.const 1.2999999523162842)
        (f64.const 3.7)
       )
      )
      (drop
       (tuple.extract 2
        (tuple.make
         (i32.const 13)
         (i64.const 37)
         (f32.const 1.2999999523162842)
         (f64.const 3.7)
        )
       )
      )
      (drop
       (pop i32)
      )
      (drop
       (pop i64)
      )
      (drop
       (pop f32)
      )
      (drop
       (pop f64)
      )
      (drop
       (pop funcref)
      )
      (drop
       (pop externref)
      )
      (drop
       (pop i32 i64 f32 f64)
      )
      (drop
       (memory.size)
      )
      (drop
       (memory.grow
        (i32.const 0)
       )
      )
      (drop
       (i31.new
        (i32.const 0)
       )
      )
      (drop
       (i31.get_s
        (i31.new
         (i32.const 1)
        )
       )
      )
      (drop
       (i31.get_u
        (i31.new
         (i32.const 2)
        )
       )
      )
      (drop
       (ref.test_static $[mut:i8]
        (global.get $i8Array-global)
       )
      )
      (drop
       (ref.cast_static $[mut:i8]
        (global.get $i8Array-global)
       )
      )
      (drop
       (struct.new_default ${mut:i32})
      )
      (drop
       (struct.new ${mut:i32}
        (i32.const 0)
       )
      )
      (drop
       (struct.get ${mut:i32} 0
        (global.get $i32Struct-global)
       )
      )
      (struct.set ${mut:i32} 0
       (global.get $i32Struct-global)
       (i32.const 0)
      )
      (drop
       (array.new_default $[mut:i8]
        (i32.const 3)
       )
      )
      (drop
       (array.new $[mut:i8]
        (i32.const 42)
        (i32.const 3)
       )
      )
      (drop
       (array.init_static $[mut:i8]
        (i32.const 1)
        (i32.const 2)
        (i32.const 3)
       )
      )
      (drop
       (array.get_s $[mut:i8]
        (global.get $i8Array-global)
        (i32.const 0)
       )
      )
      (array.set $[mut:i8]
       (global.get $i8Array-global)
       (i32.const 0)
       (i32.const 42)
      )
      (drop
       (array.len
        (global.get $i8Array-global)
       )
      )
      (array.copy $[mut:i8] $[mut:i8]
       (global.get $i8Array-global)
       (i32.const 0)
       (global.get $i8Array-global)
       (i32.const 1)
       (i32.const 2)
      )
      (drop
       (string.new_wtf8 utf8
        (i32.const 0)
        (i32.const 0)
       )
      )
      (drop
       (string.new_wtf8 wtf8
        (i32.const 0)
        (i32.const 0)
       )
      )
      (drop
       (string.new_wtf8 replace
        (i32.const 0)
        (i32.const 0)
       )
      )
      (drop
       (string.new_wtf16
        (i32.const 0)
        (i32.const 0)
       )
      )
      (drop
       (string.new_wtf8_array utf8
        (global.get $i8Array-global)
        (i32.const 0)
        (i32.const 0)
       )
      )
      (drop
       (string.new_wtf8_array wtf8
        (global.get $i8Array-global)
        (i32.const 0)
        (i32.const 0)
       )
      )
      (drop
       (string.new_wtf8_array replace
        (global.get $i8Array-global)
        (i32.const 0)
        (i32.const 0)
       )
      )
      (drop
       (string.new_wtf16_array
        (global.get $i16Array-global)
        (i32.const 0)
        (i32.const 0)
       )
      )
      (drop
       (string.const "hello world")
      )
      (drop
       (string.measure_wtf8 utf8
        (global.get $string-global)
       )
      )
      (drop
       (string.measure_wtf8 wtf8
        (global.get $string-global)
       )
      )
      (drop
       (string.measure_wtf16
        (global.get $string-global)
       )
      )
      (drop
       (string.is_usv_sequence
        (global.get $string-global)
       )
      )
      (drop
       (stringview_wtf16.length
        (string.as_wtf16
         (global.get $string-global)
        )
       )
      )
      (drop
       (string.encode_wtf8 utf8
        (global.get $string-global)
        (i32.const 0)
       )
      )
      (drop
       (string.encode_wtf8 wtf8
        (global.get $string-global)
        (i32.const 0)
       )
      )
      (drop
       (string.encode_wtf16
        (global.get $string-global)
        (i32.const 0)
       )
      )
      (drop
       (string.encode_wtf8_array utf8
        (global.get $string-global)
        (global.get $i8Array-global)
        (i32.const 0)
       )
      )
      (drop
       (string.encode_wtf8_array wtf8
        (global.get $string-global)
        (global.get $i8Array-global)
        (i32.const 0)
       )
      )
      (drop
       (string.encode_wtf16_array
        (global.get $string-global)
        (global.get $i16Array-global)
        (i32.const 0)
       )
      )
      (drop
       (string.concat
        (global.get $string-global)
        (global.get $string-global)
       )
      )
      (drop
       (string.eq
        (global.get $string-global)
        (global.get $string-global)
       )
      )
      (drop
       (string.as_wtf8
        (global.get $string-global)
       )
      )
      (drop
       (string.as_wtf16
        (global.get $string-global)
       )
      )
      (drop
       (string.as_iter
        (global.get $string-global)
       )
      )
      (drop
       (stringview_wtf8.advance
        (string.as_wtf8
         (global.get $string-global)
        )
        (i32.const 0)
        (i32.const 0)
       )
      )
      (drop
       (stringview_wtf16.get_codeunit
        (string.as_wtf16
         (global.get $string-global)
        )
        (i32.const 0)
       )
      )
      (drop
       (stringview_iter.next
        (string.as_iter
         (global.get $string-global)
        )
       )
      )
      (drop
       (stringview_iter.advance
        (string.as_iter
         (global.get $string-global)
        )
        (i32.const 1)
       )
      )
      (drop
       (stringview_iter.rewind
        (string.as_iter
         (global.get $string-global)
        )
        (i32.const 1)
       )
      )
      (drop
       (stringview_wtf8.slice
        (string.as_wtf8
         (global.get $string-global)
        )
        (i32.const 0)
        (i32.const 0)
       )
      )
      (drop
       (stringview_wtf16.slice
        (string.as_wtf16
         (global.get $string-global)
        )
        (i32.const 0)
        (i32.const 0)
       )
      )
      (drop
       (stringview_iter.slice
        (string.as_iter
         (global.get $string-global)
        )
        (i32.const 0)
       )
      )
      (nop)
      (unreachable)
     )
    )
   )
   (i32.const 42)
  )
 )
 (func $starter
  (nop)
 )
)
(module
 (type $none_=>_i32 (func (result i32)))
 (type $none_=>_i64 (func (result i64)))
 (func $unreachable-fn (result i32)
  (call_indirect (type $none_=>_i64)
   (unreachable)
  )
 )
)
raw:
(module
 (type $none_=>_none (func))
 (type $i32_=>_none (func (param i32)))
 (type $none_=>_i32 (func (result i32)))
 (import "module" "check" (func $check (param i32)))
 (func $just-one-block
  (local $0 i32)
  (call $check
   (i32.const 1337)
  )
 )
 (func $two-blocks
  (local $0 i32)
  (block
   (call $check
    (i32.const 0)
   )
   (call $check
    (i32.const 1)
   )
  )
 )
 (func $two-blocks-plus-code
  (local $0 i32)
  (block
   (block
    (call $check
     (i32.const 0)
    )
    (drop
     (i32.const 77)
    )
   )
   (call $check
    (i32.const 1)
   )
  )
 )
 (func $loop
  (local $0 i32)
  (loop $shape$0$continue
   (block
    (call $check
     (i32.const 0)
    )
    (call $check
     (i32.const 1)
    )
   )
   (block
    (br $shape$0$continue)
   )
  )
 )
 (func $loop-plus-code
  (local $0 i32)
  (loop $shape$0$continue
   (block
    (block
     (call $check
      (i32.const 0)
     )
     (drop
      (i32.const 33)
     )
    )
    (call $check
     (i32.const 1)
    )
   )
   (block
    (drop
     (i32.const -66)
    )
    (br $shape$0$continue)
   )
  )
 )
 (func $split
  (local $0 i32)
  (call $check
   (i32.const 0)
  )
  (if
   (i32.const 55)
   (block
    (call $check
     (i32.const 1)
    )
   )
   (block
    (call $check
     (i32.const 2)
    )
   )
  )
 )
 (func $split-plus-code
  (local $0 i32)
  (call $check
   (i32.const 0)
  )
  (if
   (i32.const 55)
   (block
    (drop
     (i32.const 10)
    )
    (block
     (call $check
      (i32.const 1)
     )
    )
   )
   (block
    (drop
     (i32.const 20)
    )
    (block
     (call $check
      (i32.const 2)
     )
    )
   )
  )
 )
 (func $if
  (local $0 i32)
  (block $block$3$break
   (call $check
    (i32.const 0)
   )
   (if
    (i32.const 55)
    (block
     (call $check
      (i32.const 1)
     )
     (block
      (br $block$3$break)
     )
    )
    (br $block$3$break)
   )
  )
  (block
   (call $check
    (i32.const 2)
   )
  )
 )
 (func $if-plus-code
  (local $0 i32)
  (block $block$3$break
   (call $check
    (i32.const 0)
   )
   (if
    (i32.const 55)
    (block
     (drop
      (i32.const -1)
     )
     (block
      (call $check
       (i32.const 1)
      )
      (block
       (drop
        (i32.const -3)
       )
       (br $block$3$break)
      )
     )
    )
    (block
     (drop
      (i32.const -2)
     )
     (br $block$3$break)
    )
   )
  )
  (block
   (call $check
    (i32.const 2)
   )
  )
 )
 (func $if-else
  (local $0 i32)
  (block $block$4$break
   (call $check
    (i32.const 0)
   )
   (if
    (i32.const 55)
    (block
     (call $check
      (i32.const 1)
     )
     (block
      (br $block$4$break)
     )
    )
    (block
     (call $check
      (i32.const 2)
     )
     (block
      (br $block$4$break)
     )
    )
   )
  )
  (block
   (call $check
    (i32.const 3)
   )
  )
 )
 (func $loop-tail
  (local $0 i32)
  (block $block$3$break
   (loop $shape$0$continue
    (block
     (call $check
      (i32.const 0)
     )
     (call $check
      (i32.const 1)
     )
    )
    (if
     (i32.const 10)
     (br $shape$0$continue)
     (br $block$3$break)
    )
   )
  )
  (block
   (call $check
    (i32.const 2)
   )
  )
 )
 (func $nontrivial-loop-plus-phi-to-head
  (local $0 i32)
  (block $block$2$break
   (call $check
    (i32.const 0)
   )
   (block
    (drop
     (i32.const 10)
    )
    (br $block$2$break)
   )
  )
  (block
   (block $block$7$break
    (block $block$4$break
     (loop $shape$1$continue
      (block $block$3$break
       (call $check
        (i32.const 1)
       )
       (if
        (i32.const -2)
        (br $block$3$break)
        (block
         (drop
          (i32.const 20)
         )
         (br $block$7$break)
        )
       )
      )
      (block
       (call $check
        (i32.const 2)
       )
       (if
        (i32.const -6)
        (br $block$4$break)
        (block
         (drop
          (i32.const 30)
         )
         (br $shape$1$continue)
        )
       )
      )
     )
    )
    (block
     (block $block$6$break
      (call $check
       (i32.const 3)
      )
      (if
       (i32.const -10)
       (block
        (call $check
         (i32.const 4)
        )
        (block
         (br $block$6$break)
        )
       )
       (br $block$6$break)
      )
     )
     (block
      (call $check
       (i32.const 5)
      )
      (block
       (drop
        (i32.const 40)
       )
       (br $block$7$break)
      )
     )
    )
   )
   (block
    (call $check
     (i32.const 6)
    )
   )
  )
 )
 (func $switch
  (local $0 i32)
  (call $check
   (i32.const 0)
  )
  (block $switch$1$leave
   (block $switch$1$default
    (block $switch$1$case$3
     (block $switch$1$case$2
      (br_table $switch$1$default $switch$1$default $switch$1$case$2 $switch$1$default $switch$1$case$3 $switch$1$case$2 $switch$1$default
       (i32.const -99)
      )
     )
     (block
      (block
       (call $check
        (i32.const 1)
       )
      )
     )
     (br $switch$1$leave)
    )
    (block
     (drop
      (i32.const 55)
     )
     (block
      (call $check
       (i32.const 2)
      )
     )
    )
    (br $switch$1$leave)
   )
   (block
    (block
     (call $check
      (i32.const 3)
     )
    )
   )
   (br $switch$1$leave)
  )
 )
 (func $duffs-device
  (local $0 i32)
  (local $1 i32)
  (local $2 i64)
  (local $3 i32)
  (local $4 f32)
  (local $5 f64)
  (local $6 i32)
  (block
   (block $block$3$break
    (block $block$2$break
     (call $check
      (i32.const 0)
     )
     (if
      (i32.const 10)
      (block
       (local.set $3
        (i32.const 2)
       )
       (br $block$2$break)
      )
      (block
       (local.set $3
        (i32.const 3)
       )
       (br $block$3$break)
      )
     )
    )
   )
  )
  (loop $shape$1$continue
   (if
    (i32.eq
     (local.get $3)
     (i32.const 2)
    )
    (block
     (local.set $3
      (i32.const 0)
     )
     (call $check
      (i32.const 1)
     )
     (block
      (local.set $3
       (i32.const 3)
      )
      (br $shape$1$continue)
     )
    )
    (if
     (i32.eq
      (local.get $3)
      (i32.const 3)
     )
     (block
      (local.set $3
       (i32.const 0)
      )
      (call $check
       (i32.const 2)
      )
      (block
       (local.set $3
        (i32.const 2)
       )
       (br $shape$1$continue)
      )
     )
    )
   )
  )
 )
 (func $return (result i32)
  (local $0 i32)
  (block
   (call $check
    (i32.const 42)
   )
   (return
    (i32.const 1337)
   )
  )
 )
)
optimized:
(module
)
module loaded from binary form:
(module
 (type $i32_i32_=>_i32 (func (param i32 i32) (result i32)))
 (func $adder (param $0 i32) (param $1 i32) (result i32)
  (i32.add
   (local.get $0)
   (local.get $1)
  )
 )
)
module s-expr printed (in memory):
(module
 (type $i32_i32_=>_i32 (func (param i32 i32) (result i32)))
 (func $adder (param $0 i32) (param $1 i32) (result i32)
  (i32.add
   (local.get $0)
   (local.get $1)
  )
 )
)

module s-expr printed (in memory, caller-owned):
(module
 (type $i32_i32_=>_i32 (func (param i32 i32) (result i32)))
 (func $adder (param $0 i32) (param $1 i32) (result i32)
  (i32.add
   (local.get $0)
   (local.get $1)
  )
 )
)

(module
 (type $i32_=>_none (func (param i32)))
 (type $none_=>_none (func))
 (import "spectest" "print" (func $print-i32 (param i32)))
 (start $starter)
 (func $starter
  (call $print-i32
   (i32.const 1234)
  )
 )
)
1234 : i32
(module
 (type $none_=>_none (func))
 (func $func
  (local $0 i32)
  (local.set $0
   (i64.const 1234)
  )
 )
)
validation: 0
(module
 (type $none_=>_none (func))
 (global $a-global i32 (i32.const 125))
 (memory $0 1 256)
 (data (i32.const 10) "hello, world")
 (data (global.get $a-global) "segment data 2")
 (table $0 1 1 funcref)
 (elem $0 (i32.const 0) $fn0 $fn1 $fn2)
 (export "export0" (func $fn0))
 (export "export1" (func $fn1))
 (export "export2" (func $fn2))
 (export "mem" (memory $0))
 (func $fn0
  (nop)
 )
 (func $fn1
  (nop)
 )
 (func $fn2
  (nop)
 )
)
module with a function to optimize:
(module
 (type $none_=>_i32 (func (result i32)))
 (func $adder (result i32)
  (i32.add
   (i32.const 1)
   (i32.const 3)
  )
 )
)
optimized:
(module
 (type $none_=>_i32 (func (result i32)))
 (func $adder (result i32)
  (i32.const 4)
 )
)
BinaryenTypeSystemEquirecursive: 0
BinaryenTypeSystemNominal: 1
BinaryenTypeSystemIsorecursive: 2
TypeBuilderErrorReasonSelfSupertype: 0
TypeBuilderErrorReasonInvalidSupertype: 1
TypeBuilderErrorReasonForwardSupertypeReference: 2
TypeBuilderErrorReasonForwardChildReference: 3
module with recursive GC types:
(module
 (type $SomeArray (array_subtype (mut (ref null $SomeArray)) data))
 (type $SomeStruct (struct_subtype (field $SomeField (mut (ref null $SomeStruct))) data))
 (type $SomeSignature (func_subtype (param (ref null $SomeSignature) (ref null $SomeArray)) (result (ref null $SomeSignature)) func))
 (type $none_=>_none (func_subtype func))
 (type $SomeSubStruct (struct_subtype (field $SomeField (mut (ref null $SomeStruct))) (field $SomePackedField (mut i8)) $SomeStruct))
 (func $test (type $none_=>_none)
  (local $0 (ref null $SomeArray))
  (local $1 (ref null $SomeStruct))
  (local $2 (ref null $SomeSignature))
  (local $3 eqref)
  (local $4 (ref null $SomeSubStruct))
  (nop)
 )
)
