(module
 (type $0 (func (param v128 v128) (result v128)))
 (type $1 (func (param v128) (result v128)))
 (type $2 (func (param v128 i32) (result v128)))
 (type $3 (func (param i32) (result v128)))
 (type $4 (func (param v128) (result i32)))
 (type $5 (func (result v128)))
 (type $6 (func (param v128 v128 v128) (result v128)))
 (type $7 (func (param i32 v128)))
 (type $8 (func (param v128) (result i64)))
 (type $9 (func (param v128) (result f32)))
 (type $10 (func (param v128) (result f64)))
 (type $11 (func (param f32) (result v128)))
 (type $12 (func (param f64) (result v128)))
 (type $13 (func (param v128 i64) (result v128)))
 (type $14 (func (param v128 f32) (result v128)))
 (type $15 (func (param v128 f64) (result v128)))
 (memory $0 1 1)
 (func $v128.load (; 0 ;) (type $3) (param $0 i32) (result v128)
  (v128.load
   (local.get $0)
  )
 )
 (func $v128.store (; 1 ;) (type $7) (param $0 i32) (param $1 v128)
  (v128.store
   (local.get $0)
   (local.get $1)
  )
 )
 (func $v128.const.i8x16 (; 2 ;) (type $5) (result v128)
  (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
 )
 (func $v128.const.i16x8 (; 3 ;) (type $5) (result v128)
  (v128.const i32x4 0x00020001 0x00040003 0x00060005 0x00080007)
 )
 (func $v128.const.i32x4 (; 4 ;) (type $5) (result v128)
  (v128.const i32x4 0x00000001 0x00000002 0x00000003 0x00000004)
 )
 (func $v128.const.i64x2 (; 5 ;) (type $5) (result v128)
  (v128.const i32x4 0x00000001 0x00000000 0x00000002 0x00000000)
 )
 (func $v128.const.f32x4 (; 6 ;) (type $5) (result v128)
  (v128.const i32x4 0x3f800000 0x40000000 0x40400000 0x40800000)
 )
 (func $v128.const.f64x2 (; 7 ;) (type $5) (result v128)
  (v128.const i32x4 0x00000000 0x3ff00000 0x00000000 0x40000000)
 )
 (func $v128.shuffle (; 8 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (v8x16.shuffle 0 17 2 19 4 21 6 23 8 25 10 27 12 29 14 31
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i8x16.splat (; 9 ;) (type $3) (param $0 i32) (result v128)
  (i8x16.splat
   (local.get $0)
  )
 )
 (func $i8x16.extract_lane_s (; 10 ;) (type $4) (param $0 v128) (result i32)
  (i8x16.extract_lane_s 0
   (local.get $0)
  )
 )
 (func $i8x16.extract_lane_u (; 11 ;) (type $4) (param $0 v128) (result i32)
  (i8x16.extract_lane_u 0
   (local.get $0)
  )
 )
 (func $i8x16.replace_lane (; 12 ;) (type $2) (param $0 v128) (param $1 i32) (result v128)
  (i8x16.replace_lane 0
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i16x8.splat (; 13 ;) (type $3) (param $0 i32) (result v128)
  (i16x8.splat
   (local.get $0)
  )
 )
 (func $i16x8.extract_lane_s (; 14 ;) (type $4) (param $0 v128) (result i32)
  (i16x8.extract_lane_s 0
   (local.get $0)
  )
 )
 (func $i16x8.extract_lane_u (; 15 ;) (type $4) (param $0 v128) (result i32)
  (i16x8.extract_lane_u 0
   (local.get $0)
  )
 )
 (func $i16x8.replace_lane (; 16 ;) (type $2) (param $0 v128) (param $1 i32) (result v128)
  (i16x8.replace_lane 0
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i32x4.splat (; 17 ;) (type $3) (param $0 i32) (result v128)
  (i32x4.splat
   (local.get $0)
  )
 )
 (func $i32x4.extract_lane (; 18 ;) (type $4) (param $0 v128) (result i32)
  (i32x4.extract_lane 0
   (local.get $0)
  )
 )
 (func $i32x4.replace_lane (; 19 ;) (type $2) (param $0 v128) (param $1 i32) (result v128)
  (i32x4.replace_lane 0
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i64x2.extract_lane (; 20 ;) (type $8) (param $0 v128) (result i64)
  (i64x2.extract_lane 0
   (local.get $0)
  )
 )
 (func $i64x2.replace_lane (; 21 ;) (type $13) (param $0 v128) (param $1 i64) (result v128)
  (i64x2.replace_lane 0
   (local.get $0)
   (local.get $1)
  )
 )
 (func $f32x4.splat (; 22 ;) (type $11) (param $0 f32) (result v128)
  (f32x4.splat
   (local.get $0)
  )
 )
 (func $f32x4.extract_lane (; 23 ;) (type $9) (param $0 v128) (result f32)
  (f32x4.extract_lane 0
   (local.get $0)
  )
 )
 (func $f32x4.replace_lane (; 24 ;) (type $14) (param $0 v128) (param $1 f32) (result v128)
  (f32x4.replace_lane 0
   (local.get $0)
   (local.get $1)
  )
 )
 (func $f64x2.splat (; 25 ;) (type $12) (param $0 f64) (result v128)
  (f64x2.splat
   (local.get $0)
  )
 )
 (func $f64x2.extract_lane (; 26 ;) (type $10) (param $0 v128) (result f64)
  (f64x2.extract_lane 0
   (local.get $0)
  )
 )
 (func $f64x2.replace_lane (; 27 ;) (type $15) (param $0 v128) (param $1 f64) (result v128)
  (f64x2.replace_lane 0
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i8x16.eq (; 28 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i8x16.eq
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i8x16.ne (; 29 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i8x16.ne
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i8x16.lt_s (; 30 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i8x16.lt_s
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i8x16.lt_u (; 31 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i8x16.lt_u
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i8x16.gt_s (; 32 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i8x16.gt_s
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i8x16.gt_u (; 33 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i8x16.gt_u
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i8x16.le_s (; 34 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i8x16.le_s
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i8x16.le_u (; 35 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i8x16.le_u
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i8x16.ge_s (; 36 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i8x16.ge_s
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i8x16.ge_u (; 37 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i8x16.ge_u
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i16x8.eq (; 38 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i16x8.eq
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i16x8.ne (; 39 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i16x8.ne
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i16x8.lt_s (; 40 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i16x8.lt_s
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i16x8.lt_u (; 41 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i16x8.lt_u
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i16x8.gt_s (; 42 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i16x8.gt_s
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i16x8.gt_u (; 43 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i16x8.gt_u
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i16x8.le_s (; 44 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i16x8.le_s
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i16x8.le_u (; 45 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i16x8.le_u
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i16x8.ge_s (; 46 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i16x8.ge_s
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i16x8.ge_u (; 47 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i16x8.ge_u
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i32x4.eq (; 48 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i32x4.eq
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i32x4.ne (; 49 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i32x4.ne
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i32x4.lt_s (; 50 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i32x4.lt_s
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i32x4.lt_u (; 51 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i32x4.lt_u
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i32x4.gt_s (; 52 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i32x4.gt_s
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i32x4.gt_u (; 53 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i32x4.gt_u
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i32x4.le_s (; 54 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i32x4.le_s
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i32x4.le_u (; 55 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i32x4.le_u
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i32x4.ge_s (; 56 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i32x4.ge_s
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i32x4.ge_u (; 57 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i32x4.ge_u
   (local.get $0)
   (local.get $1)
  )
 )
 (func $f32x4.eq (; 58 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (f32x4.eq
   (local.get $0)
   (local.get $1)
  )
 )
 (func $f32x4.ne (; 59 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (f32x4.ne
   (local.get $0)
   (local.get $1)
  )
 )
 (func $f32x4.lt (; 60 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (f32x4.lt
   (local.get $0)
   (local.get $1)
  )
 )
 (func $f32x4.gt (; 61 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (f32x4.gt
   (local.get $0)
   (local.get $1)
  )
 )
 (func $f32x4.le (; 62 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (f32x4.le
   (local.get $0)
   (local.get $1)
  )
 )
 (func $f32x4.ge (; 63 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (f32x4.ge
   (local.get $0)
   (local.get $1)
  )
 )
 (func $f64x2.eq (; 64 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (f64x2.eq
   (local.get $0)
   (local.get $1)
  )
 )
 (func $f64x2.ne (; 65 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (f64x2.ne
   (local.get $0)
   (local.get $1)
  )
 )
 (func $f64x2.lt (; 66 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (f64x2.lt
   (local.get $0)
   (local.get $1)
  )
 )
 (func $f64x2.gt (; 67 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (f64x2.gt
   (local.get $0)
   (local.get $1)
  )
 )
 (func $f64x2.le (; 68 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (f64x2.le
   (local.get $0)
   (local.get $1)
  )
 )
 (func $f64x2.ge (; 69 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (f64x2.ge
   (local.get $0)
   (local.get $1)
  )
 )
 (func $v128.not (; 70 ;) (type $1) (param $0 v128) (result v128)
  (v128.not
   (local.get $0)
  )
 )
 (func $v128.and (; 71 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (v128.and
   (local.get $0)
   (local.get $1)
  )
 )
 (func $v128.or (; 72 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (v128.or
   (local.get $0)
   (local.get $1)
  )
 )
 (func $v128.xor (; 73 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (v128.xor
   (local.get $0)
   (local.get $1)
  )
 )
 (func $v128.andnot (; 74 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (v128.andnot
   (local.get $0)
   (local.get $1)
  )
 )
 (func $v128.bitselect (; 75 ;) (type $6) (param $0 v128) (param $1 v128) (param $2 v128) (result v128)
  (v128.bitselect
   (local.get $0)
   (local.get $1)
   (local.get $2)
  )
 )
 (func $i8x16.neg (; 76 ;) (type $1) (param $0 v128) (result v128)
  (i8x16.neg
   (local.get $0)
  )
 )
 (func $i8x16.any_true (; 77 ;) (type $4) (param $0 v128) (result i32)
  (i8x16.any_true
   (local.get $0)
  )
 )
 (func $i8x16.all_true (; 78 ;) (type $4) (param $0 v128) (result i32)
  (i8x16.all_true
   (local.get $0)
  )
 )
 (func $i8x16.shl (; 79 ;) (type $2) (param $0 v128) (param $1 i32) (result v128)
  (i8x16.shl
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i8x16.shr_s (; 80 ;) (type $2) (param $0 v128) (param $1 i32) (result v128)
  (i8x16.shr_s
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i8x16.shr_u (; 81 ;) (type $2) (param $0 v128) (param $1 i32) (result v128)
  (i8x16.shr_u
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i8x16.add (; 82 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i8x16.add
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i8x16.add_saturate_s (; 83 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i8x16.add_saturate_s
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i8x16.add_saturate_u (; 84 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i8x16.add_saturate_u
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i8x16.sub (; 85 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i8x16.sub
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i8x16.sub_saturate_s (; 86 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i8x16.sub_saturate_s
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i8x16.sub_saturate_u (; 87 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i8x16.sub_saturate_u
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i8x16.mul (; 88 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i8x16.mul
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i8x16.min_s (; 89 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i8x16.min_s
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i8x16.min_u (; 90 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i8x16.min_u
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i8x16.max_s (; 91 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i8x16.max_s
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i8x16.max_u (; 92 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i8x16.max_u
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i16x8.neg (; 93 ;) (type $1) (param $0 v128) (result v128)
  (i16x8.neg
   (local.get $0)
  )
 )
 (func $i16x8.any_true (; 94 ;) (type $4) (param $0 v128) (result i32)
  (i16x8.any_true
   (local.get $0)
  )
 )
 (func $i16x8.all_true (; 95 ;) (type $4) (param $0 v128) (result i32)
  (i16x8.all_true
   (local.get $0)
  )
 )
 (func $i16x8.shl (; 96 ;) (type $2) (param $0 v128) (param $1 i32) (result v128)
  (i16x8.shl
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i16x8.shr_s (; 97 ;) (type $2) (param $0 v128) (param $1 i32) (result v128)
  (i16x8.shr_s
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i16x8.shr_u (; 98 ;) (type $2) (param $0 v128) (param $1 i32) (result v128)
  (i16x8.shr_u
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i16x8.add (; 99 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i16x8.add
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i16x8.add_saturate_s (; 100 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i16x8.add_saturate_s
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i16x8.add_saturate_u (; 101 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i16x8.add_saturate_u
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i16x8.sub (; 102 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i16x8.sub
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i16x8.sub_saturate_s (; 103 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i16x8.sub_saturate_s
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i16x8.sub_saturate_u (; 104 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i16x8.sub_saturate_u
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i16x8.mul (; 105 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i16x8.mul
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i16x8.min_s (; 106 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i16x8.min_s
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i16x8.min_u (; 107 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i16x8.min_u
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i16x8.max_s (; 108 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i16x8.max_s
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i16x8.max_u (; 109 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i16x8.max_u
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i32x4.neg (; 110 ;) (type $1) (param $0 v128) (result v128)
  (i32x4.neg
   (local.get $0)
  )
 )
 (func $i32x4.any_true (; 111 ;) (type $4) (param $0 v128) (result i32)
  (i32x4.any_true
   (local.get $0)
  )
 )
 (func $i32x4.all_true (; 112 ;) (type $4) (param $0 v128) (result i32)
  (i32x4.all_true
   (local.get $0)
  )
 )
 (func $i32x4.shl (; 113 ;) (type $2) (param $0 v128) (param $1 i32) (result v128)
  (i32x4.shl
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i32x4.shr_s (; 114 ;) (type $2) (param $0 v128) (param $1 i32) (result v128)
  (i32x4.shr_s
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i32x4.shr_u (; 115 ;) (type $2) (param $0 v128) (param $1 i32) (result v128)
  (i32x4.shr_u
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i32x4.add (; 116 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i32x4.add
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i32x4.sub (; 117 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i32x4.sub
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i32x4.mul (; 118 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i32x4.mul
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i32x4.min_s (; 119 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i32x4.min_s
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i32x4.min_u (; 120 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i32x4.min_u
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i32x4.max_s (; 121 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i32x4.max_s
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i32x4.max_u (; 122 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i32x4.max_u
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i32x4.dot_i16x8_s (; 123 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i32x4.dot_i16x8_s
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i64x2.neg (; 124 ;) (type $1) (param $0 v128) (result v128)
  (i64x2.neg
   (local.get $0)
  )
 )
 (func $i64x2.any_true (; 125 ;) (type $4) (param $0 v128) (result i32)
  (i64x2.any_true
   (local.get $0)
  )
 )
 (func $i64x2.all_true (; 126 ;) (type $4) (param $0 v128) (result i32)
  (i64x2.all_true
   (local.get $0)
  )
 )
 (func $i64x2.shl (; 127 ;) (type $2) (param $0 v128) (param $1 i32) (result v128)
  (i64x2.shl
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i64x2.shr_s (; 128 ;) (type $2) (param $0 v128) (param $1 i32) (result v128)
  (i64x2.shr_s
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i64x2.shr_u (; 129 ;) (type $2) (param $0 v128) (param $1 i32) (result v128)
  (i64x2.shr_u
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i64x2.add (; 130 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i64x2.add
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i64x2.sub (; 131 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i64x2.sub
   (local.get $0)
   (local.get $1)
  )
 )
 (func $f32x4.add (; 132 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (f32x4.add
   (local.get $0)
   (local.get $1)
  )
 )
 (func $f32x4.sub (; 133 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (f32x4.sub
   (local.get $0)
   (local.get $1)
  )
 )
 (func $f32x4.mul (; 134 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (f32x4.mul
   (local.get $0)
   (local.get $1)
  )
 )
 (func $f32x4.div (; 135 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (f32x4.div
   (local.get $0)
   (local.get $1)
  )
 )
 (func $f32x4.min (; 136 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (f32x4.min
   (local.get $0)
   (local.get $1)
  )
 )
 (func $f32x4.max (; 137 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (f32x4.max
   (local.get $0)
   (local.get $1)
  )
 )
 (func $f32x4.abs (; 138 ;) (type $1) (param $0 v128) (result v128)
  (f32x4.abs
   (local.get $0)
  )
 )
 (func $f32x4.neg (; 139 ;) (type $1) (param $0 v128) (result v128)
  (f32x4.neg
   (local.get $0)
  )
 )
 (func $f32x4.sqrt (; 140 ;) (type $1) (param $0 v128) (result v128)
  (f32x4.sqrt
   (local.get $0)
  )
 )
 (func $f32x4.qfma (; 141 ;) (type $6) (param $0 v128) (param $1 v128) (param $2 v128) (result v128)
  (f32x4.qfma
   (local.get $0)
   (local.get $1)
   (local.get $2)
  )
 )
 (func $f32x4.qfms (; 142 ;) (type $6) (param $0 v128) (param $1 v128) (param $2 v128) (result v128)
  (f32x4.qfms
   (local.get $0)
   (local.get $1)
   (local.get $2)
  )
 )
 (func $f64x2.add (; 143 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (f64x2.add
   (local.get $0)
   (local.get $1)
  )
 )
 (func $f64x2.sub (; 144 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (f64x2.sub
   (local.get $0)
   (local.get $1)
  )
 )
 (func $f64x2.mul (; 145 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (f64x2.mul
   (local.get $0)
   (local.get $1)
  )
 )
 (func $f64x2.div (; 146 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (f64x2.div
   (local.get $0)
   (local.get $1)
  )
 )
 (func $f64x2.min (; 147 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (f64x2.min
   (local.get $0)
   (local.get $1)
  )
 )
 (func $f64x2.max (; 148 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (f64x2.max
   (local.get $0)
   (local.get $1)
  )
 )
 (func $f64x2.abs (; 149 ;) (type $1) (param $0 v128) (result v128)
  (f64x2.abs
   (local.get $0)
  )
 )
 (func $f64x2.neg (; 150 ;) (type $1) (param $0 v128) (result v128)
  (f64x2.neg
   (local.get $0)
  )
 )
 (func $f64x2.sqrt (; 151 ;) (type $1) (param $0 v128) (result v128)
  (f64x2.sqrt
   (local.get $0)
  )
 )
 (func $f64x2.qfma (; 152 ;) (type $6) (param $0 v128) (param $1 v128) (param $2 v128) (result v128)
  (f64x2.qfma
   (local.get $0)
   (local.get $1)
   (local.get $2)
  )
 )
 (func $f64x2.qfms (; 153 ;) (type $6) (param $0 v128) (param $1 v128) (param $2 v128) (result v128)
  (f64x2.qfms
   (local.get $0)
   (local.get $1)
   (local.get $2)
  )
 )
 (func $i32x4.trunc_sat_f32x4_s (; 154 ;) (type $1) (param $0 v128) (result v128)
  (i32x4.trunc_sat_f32x4_s
   (local.get $0)
  )
 )
 (func $i32x4.trunc_sat_f32x4_u (; 155 ;) (type $1) (param $0 v128) (result v128)
  (i32x4.trunc_sat_f32x4_u
   (local.get $0)
  )
 )
 (func $i64x2.trunc_sat_f64x2_s (; 156 ;) (type $1) (param $0 v128) (result v128)
  (i64x2.trunc_sat_f64x2_s
   (local.get $0)
  )
 )
 (func $i64x2.trunc_sat_f64x2_u (; 157 ;) (type $1) (param $0 v128) (result v128)
  (i64x2.trunc_sat_f64x2_u
   (local.get $0)
  )
 )
 (func $f32x4.convert_i32x4_s (; 158 ;) (type $1) (param $0 v128) (result v128)
  (f32x4.convert_i32x4_s
   (local.get $0)
  )
 )
 (func $f32x4.convert_i32x4_u (; 159 ;) (type $1) (param $0 v128) (result v128)
  (f32x4.convert_i32x4_u
   (local.get $0)
  )
 )
 (func $f64x2.convert_i64x2_s (; 160 ;) (type $1) (param $0 v128) (result v128)
  (f64x2.convert_i64x2_s
   (local.get $0)
  )
 )
 (func $f64x2.convert_i64x2_u (; 161 ;) (type $1) (param $0 v128) (result v128)
  (f64x2.convert_i64x2_u
   (local.get $0)
  )
 )
 (func $v8x16.load_splat (; 162 ;) (type $3) (param $0 i32) (result v128)
  (v8x16.load_splat
   (local.get $0)
  )
 )
 (func $v16x8.load_splat (; 163 ;) (type $3) (param $0 i32) (result v128)
  (v16x8.load_splat
   (local.get $0)
  )
 )
 (func $v32x4.load_splat (; 164 ;) (type $3) (param $0 i32) (result v128)
  (v32x4.load_splat
   (local.get $0)
  )
 )
 (func $v64x2.load_splat (; 165 ;) (type $3) (param $0 i32) (result v128)
  (v64x2.load_splat
   (local.get $0)
  )
 )
 (func $i8x16.narrow_i16x8_s (; 166 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i8x16.narrow_i16x8_s
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i8x16.narrow_i16x8_u (; 167 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i8x16.narrow_i16x8_u
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i16x8.narrow_i32x4_s (; 168 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i16x8.narrow_i32x4_s
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i16x8.narrow_i32x4_u (; 169 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (i16x8.narrow_i32x4_u
   (local.get $0)
   (local.get $1)
  )
 )
 (func $i16x8.widen_low_i8x16_s (; 170 ;) (type $1) (param $0 v128) (result v128)
  (i16x8.widen_low_i8x16_s
   (local.get $0)
  )
 )
 (func $i16x8.widen_high_i8x16_s (; 171 ;) (type $1) (param $0 v128) (result v128)
  (i16x8.widen_high_i8x16_s
   (local.get $0)
  )
 )
 (func $i16x8.widen_low_i8x16_u (; 172 ;) (type $1) (param $0 v128) (result v128)
  (i16x8.widen_low_i8x16_u
   (local.get $0)
  )
 )
 (func $i16x8.widen_high_i8x16_u (; 173 ;) (type $1) (param $0 v128) (result v128)
  (i16x8.widen_high_i8x16_u
   (local.get $0)
  )
 )
 (func $i32x4.widen_low_i16x8_s (; 174 ;) (type $1) (param $0 v128) (result v128)
  (i32x4.widen_low_i16x8_s
   (local.get $0)
  )
 )
 (func $i32x4.widen_high_i16x8_s (; 175 ;) (type $1) (param $0 v128) (result v128)
  (i32x4.widen_high_i16x8_s
   (local.get $0)
  )
 )
 (func $i32x4.widen_low_i16x8_u (; 176 ;) (type $1) (param $0 v128) (result v128)
  (i32x4.widen_low_i16x8_u
   (local.get $0)
  )
 )
 (func $i32x4.widen_high_i16x8_u (; 177 ;) (type $1) (param $0 v128) (result v128)
  (i32x4.widen_high_i16x8_u
   (local.get $0)
  )
 )
 (func $i16x8.load8x8_u (; 178 ;) (type $3) (param $0 i32) (result v128)
  (i16x8.load8x8_u
   (local.get $0)
  )
 )
 (func $i16x8.load8x8_s (; 179 ;) (type $3) (param $0 i32) (result v128)
  (i16x8.load8x8_s
   (local.get $0)
  )
 )
 (func $i32x4.load16x4_s (; 180 ;) (type $3) (param $0 i32) (result v128)
  (i32x4.load16x4_s
   (local.get $0)
  )
 )
 (func $i32x4.load16x4_u (; 181 ;) (type $3) (param $0 i32) (result v128)
  (i32x4.load16x4_u
   (local.get $0)
  )
 )
 (func $i64x2.load32x2_s (; 182 ;) (type $3) (param $0 i32) (result v128)
  (i64x2.load32x2_s
   (local.get $0)
  )
 )
 (func $i64x2.load32x2_u (; 183 ;) (type $3) (param $0 i32) (result v128)
  (i64x2.load32x2_u
   (local.get $0)
  )
 )
 (func $v8x16.swizzle (; 184 ;) (type $0) (param $0 v128) (param $1 v128) (result v128)
  (v8x16.swizzle
   (local.get $0)
   (local.get $1)
  )
 )
)

