(component
  (type (;0;) (func))
  (type (;1;) (func (result string)))
  (type (;2;) (func (param "x" string) (result string)))
  (type (;3;) (list string))
  (type (;4;) (func (param "x" 3)))
  (export "x" (type 3))
  (core module (;0;)
    (type (;0;) (func (param i32 i32 i32 i32) (result i32)))
    (type (;1;) (func))
    (type (;2;) (func (result i32)))
    (type (;3;) (func (param i32 i32) (result i32)))
    (type (;4;) (func (param i32 i32)))
    (func $canonical_abi_realloc (;0;) (type 0) (param i32 i32 i32 i32) (result i32)
      unreachable
    )
    (func $a (;1;) (type 1)
      unreachable
    )
    (func $b (;2;) (type 2) (result i32)
      unreachable
    )
    (func $c (;3;) (type 3) (param i32 i32) (result i32)
      unreachable
    )
    (func $d (;4;) (type 4) (param i32 i32)
      unreachable
    )
    (memory $memory (;0;) 1)
    (export "memory" (memory $memory))
    (export "canonical_abi_realloc" (func $canonical_abi_realloc))
    (export "a" (func $a))
    (export "b" (func $b))
    (export "c" (func $c))
    (export "d" (func $d))
  )
  (core instance (;0;) (instantiate 0))
  (core alias export 0 "memory" (memory (;0;)))
  (core alias export 0 "canonical_abi_realloc" (func (;0;)))
  (core alias export 0 "a" (func (;1;)))
  (core alias export 0 "b" (func (;2;)))
  (core alias export 0 "c" (func (;3;)))
  (core alias export 0 "d" (func (;4;)))
  (func (;0;) (type 0) (canon lift (core func 1)))
  (func (;1;) (type 1) (canon lift (core func 2) (memory 0) (realloc 0) string-encoding=utf8))
  (func (;2;) (type 2) (canon lift (core func 3) (memory 0) (realloc 0) string-encoding=utf8))
  (func (;3;) (type 4) (canon lift (core func 4) (memory 0) (realloc 0) string-encoding=utf8))
  (export "a" (func 0))
  (export "b" (func 1))
  (export "c" (func 2))
  (export "d" (func 3))
)