;;; Code for varargs.Varargs.FunctionalInterface [type definition]
(type $varargs.Varargs.FunctionalInterface.vtable (sub (struct
 (field $m_apply__arrayOf_java_lang_String__void (ref $function.m_apply__arrayOf_java_lang_String__void))
 ))
)

;;; Code for varargs.Varargs [type definition]
(type $varargs.Varargs.vtable (sub $java.lang.Object.vtable (struct
 (field $$getClassImpl__java_lang_Class (ref $function.$getClassImpl__java_lang_Class))
 (field $m_equals__java_lang_Object__boolean (ref $function.m_equals__java_lang_Object__boolean))
 (field $m_hashCode__int (ref $function.m_hashCode__int))
 (field $m_toString__java_lang_String (ref $function.m_toString__java_lang_String))
 (field $m_main__void (ref $function.m_main__void))
 (field $m_testAssignment__arrayOf_java_lang_Object__void (ref $function.m_testAssignment__arrayOf_java_lang_Object__void))
 (field $m_testCloneable__arrayOf_java_lang_Cloneable__void (ref $function.m_testCloneable__arrayOf_java_lang_Cloneable__void))
 (field $m_testLambda__varargs_Varargs_FunctionalInterface__void (ref $function.m_testLambda__varargs_Varargs_FunctionalInterface__void))
 (field $m_testOverloaded__java_lang_Object__void (ref $function.m_testOverloaded__java_lang_Object__void))
 (field $m_testOverloaded__java_lang_String__arrayOf_java_lang_Object__void (ref $function.m_testOverloaded__java_lang_String__arrayOf_java_lang_Object__void))
 (field $m_testOverloaded__long__arrayOf_long__void (ref $function.m_testOverloaded__long__arrayOf_long__void))
 (field $m_testOverloaded__long__void (ref $function.m_testOverloaded__long__void))
 (field $m_testSerializable__arrayOf_java_io_Serializable__void (ref $function.m_testSerializable__arrayOf_java_io_Serializable__void))
 (field $m_test__int__arrayOf_java_lang_Object__void (ref $function.m_test__int__arrayOf_java_lang_Object__void))
 ))
)
(type $varargs.Varargs (sub $java.lang.Object (struct
 (field $vtable (ref $varargs.Varargs.vtable))
 (field $itable (ref $itable))
 (field $$systemIdentityHashCode@java.lang.Object (mut i32))
 (field $args@varargs.Varargs (mut (ref null $javaemul.internal.WasmArray.OfObject)))
 ))
)

;;; Code for varargs.Varargs.FunctionalInterface.$LambdaAdaptor [type definition]
(type $varargs.Varargs.FunctionalInterface.$LambdaAdaptor.vtable (sub $java.lang.Object.vtable (struct
 (field $$getClassImpl__java_lang_Class (ref $function.$getClassImpl__java_lang_Class))
 (field $m_equals__java_lang_Object__boolean (ref $function.m_equals__java_lang_Object__boolean))
 (field $m_hashCode__int (ref $function.m_hashCode__int))
 (field $m_toString__java_lang_String (ref $function.m_toString__java_lang_String))
 (field $m_apply__arrayOf_java_lang_String__void (ref $function.m_apply__arrayOf_java_lang_String__void))
 ))
)
(type $varargs.Varargs.FunctionalInterface.$LambdaAdaptor (sub $java.lang.Object (struct
 (field $vtable (ref $varargs.Varargs.FunctionalInterface.$LambdaAdaptor.vtable))
 (field $itable (ref $varargs.Varargs.FunctionalInterface.$LambdaAdaptor.itable))
 (field $$systemIdentityHashCode@java.lang.Object (mut i32))
 ))
)

;;; Code for varargs.Child [type definition]
(type $varargs.Child.vtable (sub $varargs.Varargs.vtable (struct
 (field $$getClassImpl__java_lang_Class (ref $function.$getClassImpl__java_lang_Class))
 (field $m_equals__java_lang_Object__boolean (ref $function.m_equals__java_lang_Object__boolean))
 (field $m_hashCode__int (ref $function.m_hashCode__int))
 (field $m_toString__java_lang_String (ref $function.m_toString__java_lang_String))
 (field $m_main__void (ref $function.m_main__void))
 (field $m_testAssignment__arrayOf_java_lang_Object__void (ref $function.m_testAssignment__arrayOf_java_lang_Object__void))
 (field $m_testCloneable__arrayOf_java_lang_Cloneable__void (ref $function.m_testCloneable__arrayOf_java_lang_Cloneable__void))
 (field $m_testLambda__varargs_Varargs_FunctionalInterface__void (ref $function.m_testLambda__varargs_Varargs_FunctionalInterface__void))
 (field $m_testOverloaded__java_lang_Object__void (ref $function.m_testOverloaded__java_lang_Object__void))
 (field $m_testOverloaded__java_lang_String__arrayOf_java_lang_Object__void (ref $function.m_testOverloaded__java_lang_String__arrayOf_java_lang_Object__void))
 (field $m_testOverloaded__long__arrayOf_long__void (ref $function.m_testOverloaded__long__arrayOf_long__void))
 (field $m_testOverloaded__long__void (ref $function.m_testOverloaded__long__void))
 (field $m_testSerializable__arrayOf_java_io_Serializable__void (ref $function.m_testSerializable__arrayOf_java_io_Serializable__void))
 (field $m_test__int__arrayOf_java_lang_Object__void (ref $function.m_test__int__arrayOf_java_lang_Object__void))
 ))
)
(type $varargs.Child (sub $varargs.Varargs (struct
 (field $vtable (ref $varargs.Child.vtable))
 (field $itable (ref $itable))
 (field $$systemIdentityHashCode@java.lang.Object (mut i32))
 (field $args@varargs.Varargs (mut (ref null $javaemul.internal.WasmArray.OfObject)))
 ))
)

;;; Code for varargs.Varargs.$LambdaImplementor$1 [type definition]
(type $varargs.Varargs.$LambdaImplementor$1.vtable (sub $varargs.Varargs.FunctionalInterface.$LambdaAdaptor.vtable (struct
 (field $$getClassImpl__java_lang_Class (ref $function.$getClassImpl__java_lang_Class))
 (field $m_equals__java_lang_Object__boolean (ref $function.m_equals__java_lang_Object__boolean))
 (field $m_hashCode__int (ref $function.m_hashCode__int))
 (field $m_toString__java_lang_String (ref $function.m_toString__java_lang_String))
 (field $m_apply__arrayOf_java_lang_String__void (ref $function.m_apply__arrayOf_java_lang_String__void))
 ))
)
(type $varargs.Varargs.$LambdaImplementor$1 (sub $varargs.Varargs.FunctionalInterface.$LambdaAdaptor (struct
 (field $vtable (ref $varargs.Varargs.$LambdaImplementor$1.vtable))
 (field $itable (ref $varargs.Varargs.$LambdaImplementor$1.itable))
 (field $$systemIdentityHashCode@java.lang.Object (mut i32))
 (field $$outer_this@varargs.Varargs.$LambdaImplementor$1 (mut (ref null $varargs.Varargs)))
 ))
)

;;; Code for varargs.Varargs.FunctionalInterface [imports]

;;; Code for varargs.Varargs [imports]

;;; Code for varargs.Varargs.FunctionalInterface.$LambdaAdaptor [imports]

;;; Code for varargs.Child [imports]

;;; Code for varargs.Varargs.$LambdaImplementor$1 [imports]

;;; Code for varargs.Varargs [static fields]
(global $$class-initialized@varargs.Varargs (mut i32)
 (i32.const 0)
)
(global $$class@varargs.Varargs (mut (ref null $java.lang.Class))
 (ref.null $java.lang.Class)
)

;;; Code for varargs.Child [static fields]
(global $$class-initialized@varargs.Child (mut i32)
 (i32.const 0)
)
(global $$class@varargs.Child (mut (ref null $java.lang.Class))
 (ref.null $java.lang.Class)
)

;;; Code for varargs.Varargs.FunctionalInterface.$LambdaAdaptor [static fields]
(global $$class-initialized@varargs.Varargs.FunctionalInterface.$LambdaAdaptor (mut i32)
 (i32.const 0)
)
(global $$class@varargs.Varargs.FunctionalInterface.$LambdaAdaptor (mut (ref null $java.lang.Class))
 (ref.null $java.lang.Class)
)

;;; Code for varargs.Varargs.$LambdaImplementor$1 [static fields]
(global $$class-initialized@varargs.Varargs.$LambdaImplementor$1 (mut i32)
 (i32.const 0)
)
(global $$class@varargs.Varargs.$LambdaImplementor$1 (mut (ref null $java.lang.Class))
 (ref.null $java.lang.Class)
)

;;; Code for varargs.Varargs.FunctionalInterface [static fields]
(global $$class-initialized@varargs.Varargs.FunctionalInterface (mut i32)
 (i32.const 0)
)
(global $$class@varargs.Varargs.FunctionalInterface (mut (ref null $java.lang.Class))
 (ref.null $java.lang.Class)
)

;;; Code for varargs.Varargs [vtable.init]
(global $varargs.Varargs.vtable (ref $varargs.Varargs.vtable)
 (struct.new $varargs.Varargs.vtable
  (ref.func $$getClassImpl__java_lang_Class@varargs.Varargs)
  (ref.func $m_equals__java_lang_Object__boolean@java.lang.Object)
  (ref.func $m_hashCode__int@java.lang.Object)
  (ref.func $m_toString__java_lang_String@java.lang.Object)
  (ref.func $m_main__void@varargs.Varargs)
  (ref.func $m_testAssignment__arrayOf_java_lang_Object__void@varargs.Varargs)
  (ref.func $m_testCloneable__arrayOf_java_lang_Cloneable__void@varargs.Varargs)
  (ref.func $m_testLambda__varargs_Varargs_FunctionalInterface__void@varargs.Varargs)
  (ref.func $m_testOverloaded__java_lang_Object__void@varargs.Varargs)
  (ref.func $m_testOverloaded__java_lang_String__arrayOf_java_lang_Object__void@varargs.Varargs)
  (ref.func $m_testOverloaded__long__arrayOf_long__void@varargs.Varargs)
  (ref.func $m_testOverloaded__long__void@varargs.Varargs)
  (ref.func $m_testSerializable__arrayOf_java_io_Serializable__void@varargs.Varargs)
  (ref.func $m_test__int__arrayOf_java_lang_Object__void@varargs.Varargs)
 )
)

;;; Code for varargs.Child [vtable.init]
(global $varargs.Child.vtable (ref $varargs.Child.vtable)
 (struct.new $varargs.Child.vtable
  (ref.func $$getClassImpl__java_lang_Class@varargs.Child)
  (ref.func $m_equals__java_lang_Object__boolean@java.lang.Object)
  (ref.func $m_hashCode__int@java.lang.Object)
  (ref.func $m_toString__java_lang_String@java.lang.Object)
  (ref.func $m_main__void@varargs.Varargs)
  (ref.func $m_testAssignment__arrayOf_java_lang_Object__void@varargs.Varargs)
  (ref.func $m_testCloneable__arrayOf_java_lang_Cloneable__void@varargs.Varargs)
  (ref.func $m_testLambda__varargs_Varargs_FunctionalInterface__void@varargs.Varargs)
  (ref.func $m_testOverloaded__java_lang_Object__void@varargs.Varargs)
  (ref.func $m_testOverloaded__java_lang_String__arrayOf_java_lang_Object__void@varargs.Varargs)
  (ref.func $m_testOverloaded__long__arrayOf_long__void@varargs.Varargs)
  (ref.func $m_testOverloaded__long__void@varargs.Varargs)
  (ref.func $m_testSerializable__arrayOf_java_io_Serializable__void@varargs.Varargs)
  (ref.func $m_test__int__arrayOf_java_lang_Object__void@varargs.Varargs)
 )
)

;;; Code for varargs.Varargs.$LambdaImplementor$1 [vtable.init]
(global $varargs.Varargs.$LambdaImplementor$1.vtable (ref $varargs.Varargs.$LambdaImplementor$1.vtable)
 (struct.new $varargs.Varargs.$LambdaImplementor$1.vtable
  (ref.func $$getClassImpl__java_lang_Class@varargs.Varargs.FunctionalInterface.$LambdaAdaptor)
  (ref.func $m_equals__java_lang_Object__boolean@java.lang.Object)
  (ref.func $m_hashCode__int@java.lang.Object)
  (ref.func $m_toString__java_lang_String@java.lang.Object)
  (ref.func $m_apply__arrayOf_java_lang_String__void@varargs.Varargs.$LambdaImplementor$1)
 )
)
(global $varargs.Varargs.FunctionalInterface.vtable@$varargs.Varargs.$LambdaImplementor$1 (ref $varargs.Varargs.FunctionalInterface.vtable)
 (struct.new $varargs.Varargs.FunctionalInterface.vtable
  (ref.func $m_apply__arrayOf_java_lang_String__void@varargs.Varargs.$LambdaImplementor$1)
 )
)

;;; Code for varargs.Varargs.FunctionalInterface [methods]

;;; void FunctionalInterface.$clinit()
(func $$clinit__void_<once>_@varargs.Varargs.FunctionalInterface
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:21:12
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:21:12
  (if (global.get $$class-initialized@varargs.Varargs.FunctionalInterface)
   (then
    ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:21:12
    (return )
   )
  )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:21:12
  (global.set $$class-initialized@varargs.Varargs.FunctionalInterface (i32.const 1))
 )
)

;;; Class<T> FunctionalInterface.$getClassMetadata()
(func $$getClassMetadata__java_lang_Class_<once>_@varargs.Varargs.FunctionalInterface
 (result (ref null $java.lang.Class))
 (block
  (if (i32.eqz (ref.is_null (global.get $$class@varargs.Varargs.FunctionalInterface)))
   (then
    (return (global.get $$class@varargs.Varargs.FunctionalInterface))
   )
  )
  (global.set $$class@varargs.Varargs.FunctionalInterface (call $m_createForInterface__java_lang_String__java_lang_Class@java.lang.Class (call $$getString_|varargs.Vara...|__java_lang_String_<once>_@varargs.Varargs.FunctionalInterface )))
  (return (global.get $$class@varargs.Varargs.FunctionalInterface))
 )
)

;;; Code for varargs.Varargs [methods]

;;; Varargs Varargs.$create(int... args)
(func $$create__arrayOf_int@varargs.Varargs
 (param $args (ref null $javaemul.internal.WasmArray.OfInt))
 (result (ref null $varargs.Varargs))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:27:9
 (local $$instance (ref null $varargs.Varargs))
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:27:9
  (call $$clinit__void_<once>_@varargs.Varargs )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:27:9
  (local.set $$instance (struct.new $varargs.Varargs (global.get $varargs.Varargs.vtable) (global.get $itable.empty) (i32.const 0) (ref.null $javaemul.internal.WasmArray.OfObject)))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:27:9
  (call $$ctor__arrayOf_int__void_$p_varargs_Varargs@varargs.Varargs (ref.as_non_null (local.get $$instance))(local.get $args))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:27:9
  (return (local.get $$instance))
 )
)

;;; void Varargs.$ctor(int... args)
(func $$ctor__arrayOf_int__void_$p_varargs_Varargs@varargs.Varargs
 (param $this (ref null $varargs.Varargs))
 (param $args (ref null $javaemul.internal.WasmArray.OfInt))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:27:9
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:27:30
  (call $$ctor__void_$p_java_lang_Object@java.lang.Object (ref.as_non_null (local.get $this)))
 )
)

;;; Varargs Varargs.$create()
(func $$create__@varargs.Varargs
 (result (ref null $varargs.Varargs))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:29:9
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:29:9
  (call $$clinit__void_<once>_@varargs.Varargs )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:29:9
  (return (call $$create_$private__@varargs.Varargs ))
 )
)

;;; Varargs Varargs.$create_$private()
(func $$create_$private__@varargs.Varargs
 (result (ref null $varargs.Varargs))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:29:9
 (local $$instance (ref null $varargs.Varargs))
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:29:9
  (local.set $$instance (struct.new $varargs.Varargs (global.get $varargs.Varargs.vtable) (global.get $itable.empty) (i32.const 0) (ref.null $javaemul.internal.WasmArray.OfObject)))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:29:9
  (call $$ctor__void_$p_varargs_Varargs@varargs.Varargs (ref.as_non_null (local.get $$instance)))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:29:9
  (return (local.get $$instance))
 )
)

;;; void Varargs.$ctor()
(func $$ctor__void_$p_varargs_Varargs@varargs.Varargs
 (param $this (ref null $varargs.Varargs))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:29:9
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:30:4
  (call $$ctor__arrayOf_int__void_$p_varargs_Varargs@varargs.Varargs (ref.as_non_null (local.get $this))(call $m_newWithLiteral__arrayOf_int__javaemul_internal_WasmArray_OfInt@javaemul.internal.WasmArray.OfInt (array.new_data $int.array $arrayliteral@varargs.Varargs-1 (i32.const 0) (i32.const 1))))
 )
)

;;; void Varargs.test(int a, Object... args)
(func $m_test__int__arrayOf_java_lang_Object__void@varargs.Varargs
 (type $function.m_test__int__arrayOf_java_lang_Object__void)
 (param $this.untyped (ref $java.lang.Object))
 (param $a i32)
 (param $args (ref null $javaemul.internal.WasmArray.OfObject))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:33:14
 (local $this (ref null $varargs.Varargs))
 (local.set $this (ref.cast (ref $varargs.Varargs) (local.get $this.untyped)))
 (block
 )
)
(elem declare func $m_test__int__arrayOf_java_lang_Object__void@varargs.Varargs)

;;; void Varargs.testCloneable(Cloneable... args)
(func $m_testCloneable__arrayOf_java_lang_Cloneable__void@varargs.Varargs
 (type $function.m_testCloneable__arrayOf_java_lang_Cloneable__void)
 (param $this.untyped (ref $java.lang.Object))
 (param $args (ref null $javaemul.internal.WasmArray.OfObject))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:35:14
 (local $this (ref null $varargs.Varargs))
 (local.set $this (ref.cast (ref $varargs.Varargs) (local.get $this.untyped)))
 (block
 )
)
(elem declare func $m_testCloneable__arrayOf_java_lang_Cloneable__void@varargs.Varargs)

;;; void Varargs.testSerializable(Serializable... args)
(func $m_testSerializable__arrayOf_java_io_Serializable__void@varargs.Varargs
 (type $function.m_testSerializable__arrayOf_java_io_Serializable__void)
 (param $this.untyped (ref $java.lang.Object))
 (param $args (ref null $javaemul.internal.WasmArray.OfObject))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:37:14
 (local $this (ref null $varargs.Varargs))
 (local.set $this (ref.cast (ref $varargs.Varargs) (local.get $this.untyped)))
 (block
 )
)
(elem declare func $m_testSerializable__arrayOf_java_io_Serializable__void@varargs.Varargs)

;;; void Varargs.testAssignment(Object... args)
(func $m_testAssignment__arrayOf_java_lang_Object__void@varargs.Varargs
 (type $function.m_testAssignment__arrayOf_java_lang_Object__void)
 (param $this.untyped (ref $java.lang.Object))
 (param $args (ref null $javaemul.internal.WasmArray.OfObject))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:39:14
 (local $this (ref null $varargs.Varargs))
 (local.set $this (ref.cast (ref $varargs.Varargs) (local.get $this.untyped)))
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:40:4
  (struct.set $varargs.Varargs $args@varargs.Varargs (local.get $this) (local.get $args))
 )
)
(elem declare func $m_testAssignment__arrayOf_java_lang_Object__void@varargs.Varargs)

;;; void Varargs.testLambda(FunctionalInterface functionalInterface)
(func $m_testLambda__varargs_Varargs_FunctionalInterface__void@varargs.Varargs
 (type $function.m_testLambda__varargs_Varargs_FunctionalInterface__void)
 (param $this.untyped (ref $java.lang.Object))
 (param $functionalInterface (ref null $java.lang.Object))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:43:14
 (local $this (ref null $varargs.Varargs))
 (local.set $this (ref.cast (ref $varargs.Varargs) (local.get $this.untyped)))
 (block
 )
)
(elem declare func $m_testLambda__varargs_Varargs_FunctionalInterface__void@varargs.Varargs)

;;; void Varargs.fun(T... arg0)
(func $m_fun__arrayOf_java_lang_Number__void@varargs.Varargs
 (param $arg0 (ref null $javaemul.internal.WasmArray.OfObject))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:45:40
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:45:40
  (call $$clinit__void_<once>_@varargs.Varargs )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:45:40
  (call $m_fun_$private__arrayOf_java_lang_Number__void@varargs.Varargs (local.get $arg0))
 )
)

;;; void Varargs.fun_$private(T... elements)
(func $m_fun_$private__arrayOf_java_lang_Number__void@varargs.Varargs
 (param $elements (ref null $javaemul.internal.WasmArray.OfObject))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:45:40
 (block
 )
)

;;; void Varargs.bar(E a, E b)
(func $m_bar__java_lang_Number__java_lang_Number__void@varargs.Varargs
 (param $a (ref null $java.lang.Number))
 (param $b (ref null $java.lang.Number))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:47:40
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:47:54
  (call $$clinit__void_<once>_@varargs.Varargs )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:48:4
  (call $m_fun_$private__arrayOf_java_lang_Number__void@varargs.Varargs (call $m_newWithLiteral__arrayOf_java_lang_Object__javaemul_internal_WasmArray_OfObject@javaemul.internal.WasmArray.OfObject (array.new_fixed $java.lang.Object.array 2 (local.get $a)(local.get $b))))
 )
)

;;; T Varargs.passthrough(T arg0)
(func $m_passthrough__java_lang_Object__java_lang_Object@varargs.Varargs
 (param $arg0 (ref null $java.lang.Object))
 (result (ref null $java.lang.Object))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:51:22
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:51:22
  (call $$clinit__void_<once>_@varargs.Varargs )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:51:22
  (return (call $m_passthrough_$private__java_lang_Object__java_lang_Object@varargs.Varargs (local.get $arg0)))
 )
)

;;; T Varargs.passthrough_$private(T o)
(func $m_passthrough_$private__java_lang_Object__java_lang_Object@varargs.Varargs
 (param $o (ref null $java.lang.Object))
 (result (ref null $java.lang.Object))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:51:22
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:52:4
  (return (local.get $o))
 )
)

;;; void Varargs.testOverloaded(Object o)
(func $m_testOverloaded__java_lang_Object__void@varargs.Varargs
 (type $function.m_testOverloaded__java_lang_Object__void)
 (param $this.untyped (ref $java.lang.Object))
 (param $o (ref null $java.lang.Object))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:55:14
 (local $this (ref null $varargs.Varargs))
 (local.set $this (ref.cast (ref $varargs.Varargs) (local.get $this.untyped)))
 (block
 )
)
(elem declare func $m_testOverloaded__java_lang_Object__void@varargs.Varargs)

;;; void Varargs.testOverloaded(String o, Object... rest)
(func $m_testOverloaded__java_lang_String__arrayOf_java_lang_Object__void@varargs.Varargs
 (type $function.m_testOverloaded__java_lang_String__arrayOf_java_lang_Object__void)
 (param $this.untyped (ref $java.lang.Object))
 (param $o (ref null $java.lang.String))
 (param $rest (ref null $javaemul.internal.WasmArray.OfObject))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:57:14
 (local $this (ref null $varargs.Varargs))
 (local.set $this (ref.cast (ref $varargs.Varargs) (local.get $this.untyped)))
 (block
 )
)
(elem declare func $m_testOverloaded__java_lang_String__arrayOf_java_lang_Object__void@varargs.Varargs)

;;; void Varargs.testOverloaded(long l)
(func $m_testOverloaded__long__void@varargs.Varargs
 (type $function.m_testOverloaded__long__void)
 (param $this.untyped (ref $java.lang.Object))
 (param $l i64)
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:59:14
 (local $this (ref null $varargs.Varargs))
 (local.set $this (ref.cast (ref $varargs.Varargs) (local.get $this.untyped)))
 (block
 )
)
(elem declare func $m_testOverloaded__long__void@varargs.Varargs)

;;; void Varargs.testOverloaded(long l, long... rest)
(func $m_testOverloaded__long__arrayOf_long__void@varargs.Varargs
 (type $function.m_testOverloaded__long__arrayOf_long__void)
 (param $this.untyped (ref $java.lang.Object))
 (param $l i64)
 (param $rest (ref null $javaemul.internal.WasmArray.OfLong))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:61:14
 (local $this (ref null $varargs.Varargs))
 (local.set $this (ref.cast (ref $varargs.Varargs) (local.get $this.untyped)))
 (block
 )
)
(elem declare func $m_testOverloaded__long__arrayOf_long__void@varargs.Varargs)

;;; void Varargs.main()
(func $m_main__void@varargs.Varargs
 (type $function.m_main__void)
 (param $this.untyped (ref $java.lang.Object))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:63:14
 (local $v (ref null $varargs.Varargs))
 (local $this (ref null $varargs.Varargs))
 (local.set $this (ref.cast (ref $varargs.Varargs) (local.get $this.untyped)))
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:64:4
  (local.set $v (call $$create_$private__@varargs.Varargs ))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:65:4
  (call_ref $function.m_test__int__arrayOf_java_lang_Object__void (ref.as_non_null (local.get $v))(i32.const 1)(call $m_newWithLiteral__arrayOf_java_lang_Object__javaemul_internal_WasmArray_OfObject@javaemul.internal.WasmArray.OfObject (array.new_fixed $java.lang.Object.array 0 ))(struct.get $varargs.Varargs.vtable $m_test__int__arrayOf_java_lang_Object__void (struct.get $varargs.Varargs $vtable(local.get $v))))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:66:4
  (call_ref $function.m_test__int__arrayOf_java_lang_Object__void (ref.as_non_null (local.get $v))(i32.const 1)(call $m_newWithLiteral__arrayOf_java_lang_Object__javaemul_internal_WasmArray_OfObject@javaemul.internal.WasmArray.OfObject (array.new_fixed $java.lang.Object.array 1 (call $$create__@java.lang.Object )))(struct.get $varargs.Varargs.vtable $m_test__int__arrayOf_java_lang_Object__void (struct.get $varargs.Varargs $vtable(local.get $v))))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:67:4
  (call_ref $function.m_test__int__arrayOf_java_lang_Object__void (ref.as_non_null (local.get $v))(i32.const 1)(call $m_newWithLiteral__arrayOf_java_lang_Object__javaemul_internal_WasmArray_OfObject@javaemul.internal.WasmArray.OfObject (array.new_fixed $java.lang.Object.array 1 (call $$create__@java.lang.Object )))(struct.get $varargs.Varargs.vtable $m_test__int__arrayOf_java_lang_Object__void (struct.get $varargs.Varargs $vtable(local.get $v))))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:68:4
  (call_ref $function.m_test__int__arrayOf_java_lang_Object__void (ref.as_non_null (local.get $v))(i32.const 1)(call $m_newWithLiteral__arrayOf_java_lang_Object__javaemul_internal_WasmArray_OfObject@javaemul.internal.WasmArray.OfObject (array.new_fixed $java.lang.Object.array 0 ))(struct.get $varargs.Varargs.vtable $m_test__int__arrayOf_java_lang_Object__void (struct.get $varargs.Varargs $vtable(local.get $v))))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:69:4
  (call_ref $function.m_test__int__arrayOf_java_lang_Object__void (ref.as_non_null (local.get $v))(i32.const 1)(call $m_newWithLiteral__arrayOf_java_lang_Object__javaemul_internal_WasmArray_OfObject@javaemul.internal.WasmArray.OfObject (array.new_fixed $java.lang.Object.array 0 ))(struct.get $varargs.Varargs.vtable $m_test__int__arrayOf_java_lang_Object__void (struct.get $varargs.Varargs $vtable(local.get $v))))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:70:4
  (call_ref $function.m_test__int__arrayOf_java_lang_Object__void (ref.as_non_null (local.get $v))(i32.const 1)(ref.cast (ref null $javaemul.internal.WasmArray.OfObject) (call $m_passthrough_$private__java_lang_Object__java_lang_Object@varargs.Varargs (call $m_newWithLiteral__arrayOf_java_lang_Object__javaemul_internal_WasmArray_OfObject@javaemul.internal.WasmArray.OfObject (array.new_fixed $java.lang.Object.array 1 (call $$getString_|a|__java_lang_String_<once>_@varargs.Varargs )))))(struct.get $varargs.Varargs.vtable $m_test__int__arrayOf_java_lang_Object__void (struct.get $varargs.Varargs $vtable(local.get $v))))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:71:4
  (call_ref $function.m_test__int__arrayOf_java_lang_Object__void (ref.as_non_null (local.get $v))(i32.const 1)(ref.null $javaemul.internal.WasmArray.OfObject)(struct.get $varargs.Varargs.vtable $m_test__int__arrayOf_java_lang_Object__void (struct.get $varargs.Varargs $vtable(local.get $v))))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:72:4
  (call_ref $function.m_testCloneable__arrayOf_java_lang_Cloneable__void (ref.as_non_null (local.get $v))(call $m_newWithLiteral__arrayOf_java_lang_Object__javaemul_internal_WasmArray_OfObject@javaemul.internal.WasmArray.OfObject (array.new_fixed $java.lang.Object.array 0 ))(struct.get $varargs.Varargs.vtable $m_testCloneable__arrayOf_java_lang_Cloneable__void (struct.get $varargs.Varargs $vtable(local.get $v))))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:73:4
  (call_ref $function.m_testSerializable__arrayOf_java_io_Serializable__void (ref.as_non_null (local.get $v))(call $m_newWithLiteral__arrayOf_java_lang_Object__javaemul_internal_WasmArray_OfObject@javaemul.internal.WasmArray.OfObject (array.new_fixed $java.lang.Object.array 0 ))(struct.get $varargs.Varargs.vtable $m_testSerializable__arrayOf_java_io_Serializable__void (struct.get $varargs.Varargs $vtable(local.get $v))))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:74:4
  (call_ref $function.m_testLambda__varargs_Varargs_FunctionalInterface__void (ref.as_non_null (local.get $v))(call $$create__varargs_Varargs@varargs.Varargs.$LambdaImplementor$1 (local.get $this))(struct.get $varargs.Varargs.vtable $m_testLambda__varargs_Varargs_FunctionalInterface__void (struct.get $varargs.Varargs $vtable(local.get $v))))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:77:4
  (call_ref $function.m_testOverloaded__java_lang_Object__void (ref.as_non_null (local.get $v))(call $$getString_|foo|__java_lang_String_<once>_@varargs.Varargs )(struct.get $varargs.Varargs.vtable $m_testOverloaded__java_lang_Object__void (struct.get $varargs.Varargs $vtable(local.get $v))))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:79:4
  (call_ref $function.m_testOverloaded__java_lang_String__arrayOf_java_lang_Object__void (ref.as_non_null (local.get $v))(call $$getString_|foo|__java_lang_String_<once>_@varargs.Varargs )(call $m_newWithLiteral__arrayOf_java_lang_Object__javaemul_internal_WasmArray_OfObject@javaemul.internal.WasmArray.OfObject (array.new_fixed $java.lang.Object.array 1 (call $$getString_|bar|__java_lang_String_<once>_@varargs.Varargs )))(struct.get $varargs.Varargs.vtable $m_testOverloaded__java_lang_String__arrayOf_java_lang_Object__void (struct.get $varargs.Varargs $vtable(local.get $v))))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:81:4
  (call_ref $function.m_testOverloaded__java_lang_Object__void (ref.as_non_null (local.get $v))(call $$getString_|foo|__java_lang_String_<once>_@varargs.Varargs )(struct.get $varargs.Varargs.vtable $m_testOverloaded__java_lang_Object__void (struct.get $varargs.Varargs $vtable(local.get $v))))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:83:4
  (call_ref $function.m_testOverloaded__long__void (ref.as_non_null (local.get $v))(i64.const 1)(struct.get $varargs.Varargs.vtable $m_testOverloaded__long__void (struct.get $varargs.Varargs $vtable(local.get $v))))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:85:4
  (call_ref $function.m_testOverloaded__java_lang_Object__void (ref.as_non_null (local.get $v))(call $m_valueOf__long__java_lang_Long@java.lang.Long (i64.const 1))(struct.get $varargs.Varargs.vtable $m_testOverloaded__java_lang_Object__void (struct.get $varargs.Varargs $vtable(local.get $v))))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:87:4
  (call_ref $function.m_testOverloaded__long__void (ref.as_non_null (local.get $v))(i64.const 1)(struct.get $varargs.Varargs.vtable $m_testOverloaded__long__void (struct.get $varargs.Varargs $vtable(local.get $v))))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:89:4
  (call_ref $function.m_testOverloaded__long__arrayOf_long__void (ref.as_non_null (local.get $v))(i64.const 1)(call $m_newWithLiteral__arrayOf_long__javaemul_internal_WasmArray_OfLong@javaemul.internal.WasmArray.OfLong (array.new_data $long.array $arrayliteral@varargs.Varargs-2 (i32.const 0) (i32.const 2)))(struct.get $varargs.Varargs.vtable $m_testOverloaded__long__arrayOf_long__void (struct.get $varargs.Varargs $vtable(local.get $v))))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:91:4
  (call_ref $function.m_testOverloaded__long__arrayOf_long__void (ref.as_non_null (local.get $v))(i64.const 1)(call $m_newWithLiteral__arrayOf_long__javaemul_internal_WasmArray_OfLong@javaemul.internal.WasmArray.OfLong (array.new_data $long.array $arrayliteral@varargs.Varargs-3 (i32.const 0) (i32.const 2)))(struct.get $varargs.Varargs.vtable $m_testOverloaded__long__arrayOf_long__void (struct.get $varargs.Varargs $vtable(local.get $v))))
 )
)
(elem declare func $m_main__void@varargs.Varargs)

;;; void Varargs.$clinit()
(func $$clinit__void_<once>_@varargs.Varargs
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:20:13
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:20:13
  (if (global.get $$class-initialized@varargs.Varargs)
   (then
    ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:20:13
    (return )
   )
  )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:20:13
  (global.set $$class-initialized@varargs.Varargs (i32.const 1))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:20:13
  (call $$clinit__void_<once>_@java.lang.Object )
 )
)

;;; Class<T> Varargs.$getClassMetadata()
(func $$getClassMetadata__java_lang_Class_<once>_@varargs.Varargs
 (result (ref null $java.lang.Class))
 (block
  (if (i32.eqz (ref.is_null (global.get $$class@varargs.Varargs)))
   (then
    (return (global.get $$class@varargs.Varargs))
   )
  )
  (global.set $$class@varargs.Varargs (call $m_createForClass__java_lang_String__java_lang_Class__java_lang_Class@java.lang.Class (call $$getString_|varargs.Varargs|__java_lang_String_<once>_@varargs.Varargs )(call $$getClassMetadata__java_lang_Class_<once>_@java.lang.Object )))
  (return (global.get $$class@varargs.Varargs))
 )
)

;;; Class<?> Varargs.$getClassImpl()
(func $$getClassImpl__java_lang_Class@varargs.Varargs
 (type $function.$getClassImpl__java_lang_Class)
 (param $this.untyped (ref $java.lang.Object))
 (result (ref null $java.lang.Class))
 (local $this (ref null $varargs.Varargs))
 (local.set $this (ref.cast (ref $varargs.Varargs) (local.get $this.untyped)))
 (block
  (return (call $$getClassMetadata__java_lang_Class_<once>_@varargs.Varargs ))
 )
)
(elem declare func $$getClassImpl__java_lang_Class@varargs.Varargs)

;;; Code for varargs.Varargs.FunctionalInterface.$LambdaAdaptor [methods]

;;; void $LambdaAdaptor.$ctor()
(func $$ctor__void_$p_varargs_Varargs_FunctionalInterface_$LambdaAdaptor@varargs.Varargs.FunctionalInterface.$LambdaAdaptor
 (param $this (ref null $varargs.Varargs.FunctionalInterface.$LambdaAdaptor))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:21:12
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:21:12
  (call $$ctor__void_$p_java_lang_Object@java.lang.Object (ref.as_non_null (local.get $this)))
 )
)

;;; void $LambdaAdaptor.$clinit()
(func $$clinit__void_<once>_@varargs.Varargs.FunctionalInterface.$LambdaAdaptor
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:21:12
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:21:12
  (if (global.get $$class-initialized@varargs.Varargs.FunctionalInterface.$LambdaAdaptor)
   (then
    ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:21:12
    (return )
   )
  )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:21:12
  (global.set $$class-initialized@varargs.Varargs.FunctionalInterface.$LambdaAdaptor (i32.const 1))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:21:12
  (call $$clinit__void_<once>_@java.lang.Object )
 )
)

;;; Class<T> $LambdaAdaptor.$getClassMetadata()
(func $$getClassMetadata__java_lang_Class_<once>_@varargs.Varargs.FunctionalInterface.$LambdaAdaptor
 (result (ref null $java.lang.Class))
 (block
  (if (i32.eqz (ref.is_null (global.get $$class@varargs.Varargs.FunctionalInterface.$LambdaAdaptor)))
   (then
    (return (global.get $$class@varargs.Varargs.FunctionalInterface.$LambdaAdaptor))
   )
  )
  (global.set $$class@varargs.Varargs.FunctionalInterface.$LambdaAdaptor (call $m_createForClass__java_lang_String__java_lang_Class__java_lang_Class@java.lang.Class (call $$getString_|varargs.Vara...|__java_lang_String_<once>_@varargs.Varargs.FunctionalInterface.$LambdaAdaptor )(call $$getClassMetadata__java_lang_Class_<once>_@java.lang.Object )))
  (return (global.get $$class@varargs.Varargs.FunctionalInterface.$LambdaAdaptor))
 )
)

;;; Class<?> $LambdaAdaptor.$getClassImpl()
(func $$getClassImpl__java_lang_Class@varargs.Varargs.FunctionalInterface.$LambdaAdaptor
 (type $function.$getClassImpl__java_lang_Class)
 (param $this.untyped (ref $java.lang.Object))
 (result (ref null $java.lang.Class))
 (local $this (ref null $varargs.Varargs.FunctionalInterface.$LambdaAdaptor))
 (local.set $this (ref.cast (ref $varargs.Varargs.FunctionalInterface.$LambdaAdaptor) (local.get $this.untyped)))
 (block
  (return (call $$getClassMetadata__java_lang_Class_<once>_@varargs.Varargs.FunctionalInterface.$LambdaAdaptor ))
 )
)
(elem declare func $$getClassImpl__java_lang_Class@varargs.Varargs.FunctionalInterface.$LambdaAdaptor)

;;; Code for varargs.Child [methods]

;;; Child Child.$create()
(func $$create__@varargs.Child
 (result (ref null $varargs.Child))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:96:9
 (local $$instance (ref null $varargs.Child))
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:96:9
  (call $$clinit__void_<once>_@varargs.Child )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:96:9
  (local.set $$instance (struct.new $varargs.Child (global.get $varargs.Child.vtable) (global.get $itable.empty) (i32.const 0) (ref.null $javaemul.internal.WasmArray.OfObject)))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:96:9
  (call $$ctor__void_$p_varargs_Child@varargs.Child (ref.as_non_null (local.get $$instance)))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:96:9
  (return (local.get $$instance))
 )
)

;;; void Child.$ctor()
(func $$ctor__void_$p_varargs_Child@varargs.Child
 (param $this (ref null $varargs.Child))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:96:9
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:97:4
  (call $$ctor__arrayOf_int__void_$p_varargs_Varargs@varargs.Varargs (ref.as_non_null (local.get $this))(call $m_newWithLiteral__arrayOf_int__javaemul_internal_WasmArray_OfInt@javaemul.internal.WasmArray.OfInt (array.new_data $int.array $arrayliteral@varargs.Child-1 (i32.const 0) (i32.const 1))))
 )
)

;;; void Child.$clinit()
(func $$clinit__void_<once>_@varargs.Child
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:95:6
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:95:6
  (if (global.get $$class-initialized@varargs.Child)
   (then
    ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:95:6
    (return )
   )
  )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:95:6
  (global.set $$class-initialized@varargs.Child (i32.const 1))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:95:6
  (call $$clinit__void_<once>_@varargs.Varargs )
 )
)

;;; Class<T> Child.$getClassMetadata()
(func $$getClassMetadata__java_lang_Class_<once>_@varargs.Child
 (result (ref null $java.lang.Class))
 (block
  (if (i32.eqz (ref.is_null (global.get $$class@varargs.Child)))
   (then
    (return (global.get $$class@varargs.Child))
   )
  )
  (global.set $$class@varargs.Child (call $m_createForClass__java_lang_String__java_lang_Class__java_lang_Class@java.lang.Class (call $$getString_|varargs.Child|__java_lang_String_<once>_@varargs.Child )(call $$getClassMetadata__java_lang_Class_<once>_@varargs.Varargs )))
  (return (global.get $$class@varargs.Child))
 )
)

;;; Class<?> Child.$getClassImpl()
(func $$getClassImpl__java_lang_Class@varargs.Child
 (type $function.$getClassImpl__java_lang_Class)
 (param $this.untyped (ref $java.lang.Object))
 (result (ref null $java.lang.Class))
 (local $this (ref null $varargs.Child))
 (local.set $this (ref.cast (ref $varargs.Child) (local.get $this.untyped)))
 (block
  (return (call $$getClassMetadata__java_lang_Class_<once>_@varargs.Child ))
 )
)
(elem declare func $$getClassImpl__java_lang_Class@varargs.Child)

;;; Code for varargs.Varargs.$LambdaImplementor$1 [methods]

;;; <anonymous> implements FunctionalInterface <anonymous> implements FunctionalInterface.$create(Varargs $outer_this)
(func $$create__varargs_Varargs@varargs.Varargs.$LambdaImplementor$1
 (param $$outer_this (ref null $varargs.Varargs))
 (result (ref null $varargs.Varargs.$LambdaImplementor$1))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:74:17
 (local $$instance (ref null $varargs.Varargs.$LambdaImplementor$1))
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:74:17
  (call $$clinit__void_<once>_@varargs.Varargs.$LambdaImplementor$1 )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:74:17
  (local.set $$instance (struct.new $varargs.Varargs.$LambdaImplementor$1 (global.get $varargs.Varargs.$LambdaImplementor$1.vtable) (global.get $varargs.Varargs.$LambdaImplementor$1.itable) (i32.const 0) (ref.null $varargs.Varargs)))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:74:17
  (call $$ctor__varargs_Varargs__void_$p_varargs_Varargs_$LambdaImplementor$1@varargs.Varargs.$LambdaImplementor$1 (ref.as_non_null (local.get $$instance))(local.get $$outer_this))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:74:17
  (return (local.get $$instance))
 )
)

;;; void <anonymous> implements FunctionalInterface.$ctor(Varargs $outer_this)
(func $$ctor__varargs_Varargs__void_$p_varargs_Varargs_$LambdaImplementor$1@varargs.Varargs.$LambdaImplementor$1
 (param $this (ref null $varargs.Varargs.$LambdaImplementor$1))
 (param $$outer_this (ref null $varargs.Varargs))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:74:17
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:74:17
  (struct.set $varargs.Varargs.$LambdaImplementor$1 $$outer_this@varargs.Varargs.$LambdaImplementor$1 (local.get $this) (local.get $$outer_this))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:74:17
  (call $$ctor__void_$p_varargs_Varargs_FunctionalInterface_$LambdaAdaptor@varargs.Varargs.FunctionalInterface.$LambdaAdaptor (ref.as_non_null (local.get $this)))
 )
)

;;; void <anonymous> implements FunctionalInterface.apply(String... it)
(func $m_apply__arrayOf_java_lang_String__void@varargs.Varargs.$LambdaImplementor$1
 (type $function.m_apply__arrayOf_java_lang_String__void)
 (param $this.untyped (ref $java.lang.Object))
 (param $it (ref null $javaemul.internal.WasmArray.OfObject))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:74:17
 (local $this (ref null $varargs.Varargs.$LambdaImplementor$1))
 (local.set $this (ref.cast (ref $varargs.Varargs.$LambdaImplementor$1) (local.get $this.untyped)))
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:74:23
  (struct.set $varargs.Varargs $args@varargs.Varargs (struct.get $varargs.Varargs.$LambdaImplementor$1 $$outer_this@varargs.Varargs.$LambdaImplementor$1 (local.get $this)) (local.get $it))
 )
)
(elem declare func $m_apply__arrayOf_java_lang_String__void@varargs.Varargs.$LambdaImplementor$1)

;;; void <anonymous> implements FunctionalInterface.$clinit()
(func $$clinit__void_<once>_@varargs.Varargs.$LambdaImplementor$1
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:74:17
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:74:17
  (if (global.get $$class-initialized@varargs.Varargs.$LambdaImplementor$1)
   (then
    ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:74:17
    (return )
   )
  )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:74:17
  (global.set $$class-initialized@varargs.Varargs.$LambdaImplementor$1 (i32.const 1))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/varargs/readable-j2wasm.js/varargs/Varargs.java:74:17
  (call $$clinit__void_<once>_@varargs.Varargs.FunctionalInterface.$LambdaAdaptor )
 )
)

;;; Class<T> <anonymous> implements FunctionalInterface.$getClassMetadata()
(func $$getClassMetadata__java_lang_Class_<once>_@varargs.Varargs.$LambdaImplementor$1
 (result (ref null $java.lang.Class))
 (block
  (if (i32.eqz (ref.is_null (global.get $$class@varargs.Varargs.$LambdaImplementor$1)))
   (then
    (return (global.get $$class@varargs.Varargs.$LambdaImplementor$1))
   )
  )
  (global.set $$class@varargs.Varargs.$LambdaImplementor$1 (call $m_createForClass__java_lang_String__java_lang_Class__java_lang_Class@java.lang.Class (call $$getString_|varargs.Vara...|__java_lang_String_<once>_@varargs.Varargs.$LambdaImplementor$1 )(call $$getClassMetadata__java_lang_Class_<once>_@varargs.Varargs.FunctionalInterface.$LambdaAdaptor )))
  (return (global.get $$class@varargs.Varargs.$LambdaImplementor$1))
 )
)
