(module
 (type $none_=>_i32 (func (result i32)))
 (type $i32_i32_=>_i32 (func (param i32 i32) (result i32)))
 (export "main" (func $main))
 (func $__original_main (result i32)
  (i32.const 0)
 )
 (func $main (param $0 i32) (param $1 i32) (result i32)
  (block $__inlined_func$__original_main (result i32)
   (i32.const 0)
  )
 )
)
(module
 (type $none_=>_i32 (func (result i32)))
 (type $i32_i32_=>_i32 (func (param i32 i32) (result i32)))
 (export "main" (func $main))
 (func $__original_main (result i32)
  (i32.const 0)
 )
 (func $main (param $0 i32) (param $1 i32) (result i32)
  (i32.const 0)
 )
)
(module
 (type $i32_i32_=>_i32 (func (param i32 i32) (result i32)))
 (export "main" (func $main))
 (func $main (param $0 i32) (param $1 i32) (result i32)
  (i32.const 0)
 )
)
(module
 (type $none_=>_i32 (func (result i32)))
 (type $i32_i32_=>_i32 (func (param i32 i32) (result i32)))
 (export "main" (func $main))
 (func $__original_main (result i32)
  (i32.const 0)
 )
 (func $main (param $0 i32) (param $1 i32) (result i32)
  (drop
   (call $__original_main)
  )
  (call $__original_main)
 )
)
(module
 (type $none_=>_i32 (func (result i32)))
 (func $__original_main (result i32)
  (i32.const 0)
 )
)
(module
 (type $none_=>_i32 (func (result i32)))
 (type $i32_i32_=>_i32 (func (param i32 i32) (result i32)))
 (import "env" "main" (func $main (param i32 i32) (result i32)))
 (export "main" (func $main))
 (func $__original_main (result i32)
  (i32.const 0)
 )
)
(module
 (type $none_=>_i32 (func (result i32)))
 (type $i32_i32_=>_i32 (func (param i32 i32) (result i32)))
 (import "env" "original_main" (func $__original_main (result i32)))
 (export "main" (func $main))
 (func $main (param $0 i32) (param $1 i32) (result i32)
  (call $__original_main)
 )
)
