(module
 (type $i32_i32_i32_=>_i32 (func (param i32 i32 i32) (result i32)))
 (type $i32_i32_i64_=>_i64 (func (param i32 i32 i64) (result i64)))
 (type $i32_i32_f32_=>_f32 (func (param i32 i32 f32) (result f32)))
 (type $i32_i32_f64_=>_f64 (func (param i32 i32 f64) (result f64)))
 (type $i32_i32_funcref_=>_funcref (func (param i32 i32 funcref) (result funcref)))
 (type $i32_i32_anyref_=>_anyref (func (param i32 i32 anyref) (result anyref)))
 (type $i32_i32_nullref_=>_nullref (func (param i32 i32 nullref) (result nullref)))
 (type $i32_i32_exnref_=>_exnref (func (param i32 i32 exnref) (result exnref)))
 (type $none_=>_none (func))
 (import "env" "get_i32" (func $get_i32 (param i32 i32 i32) (result i32)))
 (import "env" "get_i64" (func $get_i64 (param i32 i32 i64) (result i64)))
 (import "env" "get_f32" (func $get_f32 (param i32 i32 f32) (result f32)))
 (import "env" "get_f64" (func $get_f64 (param i32 i32 f64) (result f64)))
 (import "env" "set_i32" (func $set_i32 (param i32 i32 i32) (result i32)))
 (import "env" "set_i64" (func $set_i64 (param i32 i32 i64) (result i64)))
 (import "env" "set_f32" (func $set_f32 (param i32 i32 f32) (result f32)))
 (import "env" "set_f64" (func $set_f64 (param i32 i32 f64) (result f64)))
 (import "env" "get_funcref" (func $get_funcref (param i32 i32 funcref) (result funcref)))
 (import "env" "set_funcref" (func $set_funcref (param i32 i32 funcref) (result funcref)))
 (import "env" "get_anyref" (func $get_anyref (param i32 i32 anyref) (result anyref)))
 (import "env" "set_anyref" (func $set_anyref (param i32 i32 anyref) (result anyref)))
 (import "env" "get_nullref" (func $get_nullref (param i32 i32 nullref) (result nullref)))
 (import "env" "set_nullref" (func $set_nullref (param i32 i32 nullref) (result nullref)))
 (import "env" "get_exnref" (func $get_exnref (param i32 i32 exnref) (result exnref)))
 (import "env" "set_exnref" (func $set_exnref (param i32 i32 exnref) (result exnref)))
 (func $test (; 16 ;)
  (local $x i32)
  (local $y i64)
  (local $z f32)
  (local $w f64)
  (local $F funcref)
  (local $A anyref)
  (local $N nullref)
  (local $E exnref)
  (drop
   (call $get_i32
    (i32.const 0)
    (i32.const 0)
    (local.get $x)
   )
  )
  (drop
   (local.get $y)
  )
  (drop
   (call $get_f32
    (i32.const 1)
    (i32.const 2)
    (local.get $z)
   )
  )
  (drop
   (call $get_f64
    (i32.const 2)
    (i32.const 3)
    (local.get $w)
   )
  )
  (drop
   (call $get_funcref
    (i32.const 3)
    (i32.const 4)
    (local.get $F)
   )
  )
  (drop
   (call $get_anyref
    (i32.const 4)
    (i32.const 5)
    (local.get $A)
   )
  )
  (drop
   (call $get_nullref
    (i32.const 5)
    (i32.const 6)
    (local.get $N)
   )
  )
  (drop
   (call $get_exnref
    (i32.const 6)
    (i32.const 7)
    (local.get $E)
   )
  )
  (drop
   (call $get_i32
    (i32.const 7)
    (i32.const 0)
    (local.get $x)
   )
  )
  (drop
   (local.get $y)
  )
  (drop
   (call $get_f32
    (i32.const 8)
    (i32.const 2)
    (local.get $z)
   )
  )
  (drop
   (call $get_f64
    (i32.const 9)
    (i32.const 3)
    (local.get $w)
   )
  )
  (drop
   (call $get_funcref
    (i32.const 10)
    (i32.const 4)
    (local.get $F)
   )
  )
  (drop
   (call $get_anyref
    (i32.const 11)
    (i32.const 5)
    (local.get $A)
   )
  )
  (drop
   (call $get_nullref
    (i32.const 12)
    (i32.const 6)
    (local.get $N)
   )
  )
  (drop
   (call $get_exnref
    (i32.const 13)
    (i32.const 7)
    (local.get $E)
   )
  )
  (local.set $x
   (call $set_i32
    (i32.const 14)
    (i32.const 0)
    (i32.const 1)
   )
  )
  (local.set $y
   (i64.const 2)
  )
  (local.set $z
   (call $set_f32
    (i32.const 15)
    (i32.const 2)
    (f32.const 3.2100000381469727)
   )
  )
  (local.set $w
   (call $set_f64
    (i32.const 16)
    (i32.const 3)
    (f64.const 4.321)
   )
  )
  (local.set $F
   (call $set_funcref
    (i32.const 17)
    (i32.const 4)
    (ref.func $test)
   )
  )
  (local.set $A
   (call $set_anyref
    (i32.const 19)
    (i32.const 5)
    (call $get_anyref
     (i32.const 18)
     (i32.const 5)
     (local.get $A)
    )
   )
  )
  (local.set $N
   (call $set_nullref
    (i32.const 20)
    (i32.const 6)
    (ref.null)
   )
  )
  (local.set $E
   (call $set_exnref
    (i32.const 22)
    (i32.const 7)
    (call $get_exnref
     (i32.const 21)
     (i32.const 7)
     (local.get $E)
    )
   )
  )
  (local.set $x
   (call $set_i32
    (i32.const 23)
    (i32.const 0)
    (i32.const 11)
   )
  )
  (local.set $y
   (i64.const 22)
  )
  (local.set $z
   (call $set_f32
    (i32.const 24)
    (i32.const 2)
    (f32.const 33.209999084472656)
   )
  )
  (local.set $w
   (call $set_f64
    (i32.const 25)
    (i32.const 3)
    (f64.const 44.321)
   )
  )
  (local.set $F
   (call $set_funcref
    (i32.const 27)
    (i32.const 4)
    (call $get_funcref
     (i32.const 26)
     (i32.const 4)
     (local.get $F)
    )
   )
  )
  (local.set $A
   (call $set_anyref
    (i32.const 29)
    (i32.const 5)
    (call $get_anyref
     (i32.const 28)
     (i32.const 5)
     (local.get $A)
    )
   )
  )
  (local.set $N
   (call $set_nullref
    (i32.const 31)
    (i32.const 6)
    (call $get_nullref
     (i32.const 30)
     (i32.const 6)
     (local.get $N)
    )
   )
  )
  (local.set $E
   (call $set_exnref
    (i32.const 33)
    (i32.const 7)
    (call $get_exnref
     (i32.const 32)
     (i32.const 7)
     (local.get $E)
    )
   )
  )
  (local.set $F
   (funcref.pop)
  )
  (local.set $A
   (anyref.pop)
  )
  (local.set $N
   (nullref.pop)
  )
  (local.set $E
   (exnref.pop)
  )
 )
)
