(module
 (type $1 (func))
 (type $0 (func (param i32) (result i32)))
 (type $2 (func (result i32)))
 (type $3 (func (param i32 i32) (result i32)))
 (import "env" "puts" (func $puts (param i32) (result i32)))
 (global $global$0 (mut i32) (i32.const 66128))
 (global $global$1 i32 (i32.const 66128))
 (global $global$2 i32 (i32.const 581))
 (memory $0 2)
 (data $0 "Hello, world\00")
 (table $0 1 1 funcref)
 (export "memory" (memory $0))
 (export "__wasm_call_ctors" (func $__wasm_call_ctors))
 (export "__heap_base" (global $global$1))
 (export "__data_end" (global $global$2))
 (export "main" (func $main))
 (func $__wasm_call_ctors
  (call $__wasm_init_memory)
 )
 (func $__wasm_init_memory
  (memory.init $0
   (i32.const 568)
   (i32.const 0)
   (i32.const 14)
  )
 )
 (func $__original_main (result i32)
  (drop
   (call $puts
    (i32.const 568)
   )
  )
  (i32.const 0)
 )
 (func $main (param $0 i32) (param $1 i32) (result i32)
  (call $__original_main)
 )
)
