;;; Code for innerclassinheritance.ParentOuter [type definition]
(type $innerclassinheritance.ParentOuter.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_funInParentOuter__void (ref $function.m_funInParentOuter__void))
 ))
)
(type $innerclassinheritance.ParentOuter (sub $java.lang.Object (struct
 (field $vtable (ref $innerclassinheritance.ParentOuter.vtable))
 (field $itable (ref $itable))
 (field $$systemIdentityHashCode@java.lang.Object (mut i32))
 (field $fieldInParentOuter@innerclassinheritance.ParentOuter (mut i32))
 ))
)

;;; Code for innerclassinheritance.ParentInner [type definition]
(type $innerclassinheritance.ParentInner.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_funInParentInner__void (ref $function.m_funInParentInner__void))
 ))
)
(type $innerclassinheritance.ParentInner (sub $java.lang.Object (struct
 (field $vtable (ref $innerclassinheritance.ParentInner.vtable))
 (field $itable (ref $itable))
 (field $$systemIdentityHashCode@java.lang.Object (mut i32))
 (field $fieldInParentInner@innerclassinheritance.ParentInner (mut i32))
 ))
)

;;; Code for innerclassinheritance.MultipleNestings [type definition]
(type $innerclassinheritance.MultipleNestings.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_funInM__void (ref $function.m_funInM__void))
 ))
)
(type $innerclassinheritance.MultipleNestings (sub $java.lang.Object (struct
 (field $vtable (ref $innerclassinheritance.MultipleNestings.vtable))
 (field $itable (ref $itable))
 (field $$systemIdentityHashCode@java.lang.Object (mut i32))
 ))
)

;;; Code for innerclassinheritance.MultipleNestings.Parent [type definition]
(type $innerclassinheritance.MultipleNestings.Parent.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_fun__void (ref $function.m_fun__void))
 ))
)
(type $innerclassinheritance.MultipleNestings.Parent (sub $java.lang.Object (struct
 (field $vtable (ref $innerclassinheritance.MultipleNestings.Parent.vtable))
 (field $itable (ref $itable))
 (field $$systemIdentityHashCode@java.lang.Object (mut i32))
 (field $$outer_this@innerclassinheritance.MultipleNestings.Parent (mut (ref null $innerclassinheritance.MultipleNestings)))
 ))
)

;;; Code for innerclassinheritance.ChildClass [type definition]
(type $innerclassinheritance.ChildClass.vtable (sub $innerclassinheritance.ParentOuter.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_funInParentOuter__void (ref $function.m_funInParentOuter__void))
 (field $m_funInOuter__void (ref $function.m_funInOuter__void))
 (field $m_testLocalClass__void (ref $function.m_testLocalClass__void))
 ))
)
(type $innerclassinheritance.ChildClass (sub $innerclassinheritance.ParentOuter (struct
 (field $vtable (ref $innerclassinheritance.ChildClass.vtable))
 (field $itable (ref $itable))
 (field $$systemIdentityHashCode@java.lang.Object (mut i32))
 (field $fieldInParentOuter@innerclassinheritance.ParentOuter (mut i32))
 (field $fieldInOuter@innerclassinheritance.ChildClass (mut i32))
 ))
)

;;; Code for innerclassinheritance.ChildClass.InnerClass [type definition]
(type $innerclassinheritance.ChildClass.InnerClass.vtable (sub $innerclassinheritance.ParentInner.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_funInParentInner__void (ref $function.m_funInParentInner__void))
 (field $m_funInInner__void (ref $function.m_funInInner__void))
 (field $m_testInnerClass__int (ref $function.m_testInnerClass__int))
 ))
)
(type $innerclassinheritance.ChildClass.InnerClass (sub $innerclassinheritance.ParentInner (struct
 (field $vtable (ref $innerclassinheritance.ChildClass.InnerClass.vtable))
 (field $itable (ref $itable))
 (field $$systemIdentityHashCode@java.lang.Object (mut i32))
 (field $fieldInParentInner@innerclassinheritance.ParentInner (mut i32))
 (field $$outer_this@innerclassinheritance.ChildClass.InnerClass (mut (ref null $innerclassinheritance.ChildClass)))
 (field $fieldInInner@innerclassinheritance.ChildClass.InnerClass (mut i32))
 ))
)

;;; Code for innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2 [type definition]
(type $innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2.vtable (sub $innerclassinheritance.MultipleNestings.Parent.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_fun__void (ref $function.m_fun__void))
 (field $m_funInI2__void (ref $function.m_funInI2__void))
 (field $m_test__void (ref $function.m_test__void))
 ))
)
(type $innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2 (sub $innerclassinheritance.MultipleNestings.Parent (struct
 (field $vtable (ref $innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2.vtable))
 (field $itable (ref $itable))
 (field $$systemIdentityHashCode@java.lang.Object (mut i32))
 (field $$outer_this@innerclassinheritance.MultipleNestings.Parent (mut (ref null $innerclassinheritance.MultipleNestings)))
 (field $$outer_this@innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2 (mut (ref null $innerclassinheritance.MultipleNestings.InnerClass1)))
 ))
)

;;; Code for innerclassinheritance.MultipleNestings.InnerClass1 [type definition]
(type $innerclassinheritance.MultipleNestings.InnerClass1.vtable (sub $innerclassinheritance.MultipleNestings.Parent.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_fun__void (ref $function.m_fun__void))
 (field $m_funInI1__void (ref $function.m_funInI1__void))
 ))
)
(type $innerclassinheritance.MultipleNestings.InnerClass1 (sub $innerclassinheritance.MultipleNestings.Parent (struct
 (field $vtable (ref $innerclassinheritance.MultipleNestings.InnerClass1.vtable))
 (field $itable (ref $itable))
 (field $$systemIdentityHashCode@java.lang.Object (mut i32))
 (field $$outer_this@innerclassinheritance.MultipleNestings.Parent (mut (ref null $innerclassinheritance.MultipleNestings)))
 (field $$outer_this@innerclassinheritance.MultipleNestings.InnerClass1 (mut (ref null $innerclassinheritance.MultipleNestings)))
 ))
)

;;; Code for innerclassinheritance.ChildClass.1LocalClass [type definition]
(type $innerclassinheritance.ChildClass.1LocalClass.vtable (sub $innerclassinheritance.ChildClass.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_funInParentOuter__void (ref $function.m_funInParentOuter__void))
 (field $m_funInOuter__void (ref $function.m_funInOuter__void))
 (field $m_testLocalClass__void (ref $function.m_testLocalClass__void))
 (field $m_test__void (ref $function.m_test__void))
 ))
)
(type $innerclassinheritance.ChildClass.1LocalClass (sub $innerclassinheritance.ChildClass (struct
 (field $vtable (ref $innerclassinheritance.ChildClass.1LocalClass.vtable))
 (field $itable (ref $itable))
 (field $$systemIdentityHashCode@java.lang.Object (mut i32))
 (field $fieldInParentOuter@innerclassinheritance.ParentOuter (mut i32))
 (field $fieldInOuter@innerclassinheritance.ChildClass (mut i32))
 (field $$outer_this@innerclassinheritance.ChildClass.1LocalClass (mut (ref null $innerclassinheritance.ChildClass)))
 (field $object@innerclassinheritance.ChildClass.1LocalClass (mut (ref null $java.lang.Object)))
 ))
)

;;; Code for innerclassinheritance.ParentOuter [imports]

;;; Code for innerclassinheritance.ParentInner [imports]

;;; Code for innerclassinheritance.MultipleNestings [imports]

;;; Code for innerclassinheritance.MultipleNestings.Parent [imports]

;;; Code for innerclassinheritance.ChildClass [imports]

;;; Code for innerclassinheritance.ChildClass.InnerClass [imports]

;;; Code for innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2 [imports]

;;; Code for innerclassinheritance.MultipleNestings.InnerClass1 [imports]

;;; Code for innerclassinheritance.ChildClass.1LocalClass [imports]

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

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

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

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

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

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

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

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

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

;;; Code for innerclassinheritance.ParentOuter [vtable.init]
(global $innerclassinheritance.ParentOuter.vtable (ref $innerclassinheritance.ParentOuter.vtable)
 (struct.new $innerclassinheritance.ParentOuter.vtable
  (ref.func $$getClassImpl__java_lang_Class@innerclassinheritance.ParentOuter)
  (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_funInParentOuter__void@innerclassinheritance.ParentOuter)
 )
)

;;; Code for innerclassinheritance.ParentInner [vtable.init]
(global $innerclassinheritance.ParentInner.vtable (ref $innerclassinheritance.ParentInner.vtable)
 (struct.new $innerclassinheritance.ParentInner.vtable
  (ref.func $$getClassImpl__java_lang_Class@innerclassinheritance.ParentInner)
  (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_funInParentInner__void@innerclassinheritance.ParentInner)
 )
)

;;; Code for innerclassinheritance.ChildClass [vtable.init]
(global $innerclassinheritance.ChildClass.vtable (ref $innerclassinheritance.ChildClass.vtable)
 (struct.new $innerclassinheritance.ChildClass.vtable
  (ref.func $$getClassImpl__java_lang_Class@innerclassinheritance.ChildClass)
  (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_funInParentOuter__void@innerclassinheritance.ParentOuter)
  (ref.func $m_funInOuter__void@innerclassinheritance.ChildClass)
  (ref.func $m_testLocalClass__void@innerclassinheritance.ChildClass)
 )
)

;;; Code for innerclassinheritance.ChildClass.InnerClass [vtable.init]
(global $innerclassinheritance.ChildClass.InnerClass.vtable (ref $innerclassinheritance.ChildClass.InnerClass.vtable)
 (struct.new $innerclassinheritance.ChildClass.InnerClass.vtable
  (ref.func $$getClassImpl__java_lang_Class@innerclassinheritance.ChildClass.InnerClass)
  (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_funInParentInner__void@innerclassinheritance.ParentInner)
  (ref.func $m_funInInner__void@innerclassinheritance.ChildClass.InnerClass)
  (ref.func $m_testInnerClass__int@innerclassinheritance.ChildClass.InnerClass)
 )
)

;;; Code for innerclassinheritance.ChildClass.1LocalClass [vtable.init]
(global $innerclassinheritance.ChildClass.1LocalClass.vtable (ref $innerclassinheritance.ChildClass.1LocalClass.vtable)
 (struct.new $innerclassinheritance.ChildClass.1LocalClass.vtable
  (ref.func $$getClassImpl__java_lang_Class@innerclassinheritance.ChildClass.1LocalClass)
  (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_funInParentOuter__void@innerclassinheritance.ChildClass.1LocalClass)
  (ref.func $m_funInOuter__void@innerclassinheritance.ChildClass)
  (ref.func $m_testLocalClass__void@innerclassinheritance.ChildClass)
  (ref.func $m_test__void@innerclassinheritance.ChildClass.1LocalClass)
 )
)

;;; Code for innerclassinheritance.MultipleNestings [vtable.init]
(global $innerclassinheritance.MultipleNestings.vtable (ref $innerclassinheritance.MultipleNestings.vtable)
 (struct.new $innerclassinheritance.MultipleNestings.vtable
  (ref.func $$getClassImpl__java_lang_Class@innerclassinheritance.MultipleNestings)
  (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_funInM__void@innerclassinheritance.MultipleNestings)
 )
)

;;; Code for innerclassinheritance.MultipleNestings.Parent [vtable.init]
(global $innerclassinheritance.MultipleNestings.Parent.vtable (ref $innerclassinheritance.MultipleNestings.Parent.vtable)
 (struct.new $innerclassinheritance.MultipleNestings.Parent.vtable
  (ref.func $$getClassImpl__java_lang_Class@innerclassinheritance.MultipleNestings.Parent)
  (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_fun__void@innerclassinheritance.MultipleNestings.Parent)
 )
)

;;; Code for innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2 [vtable.init]
(global $innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2.vtable (ref $innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2.vtable)
 (struct.new $innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2.vtable
  (ref.func $$getClassImpl__java_lang_Class@innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2)
  (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_fun__void@innerclassinheritance.MultipleNestings.Parent)
  (ref.func $m_funInI2__void@innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2)
  (ref.func $m_test__void@innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2)
 )
)

;;; Code for innerclassinheritance.MultipleNestings.InnerClass1 [vtable.init]
(global $innerclassinheritance.MultipleNestings.InnerClass1.vtable (ref $innerclassinheritance.MultipleNestings.InnerClass1.vtable)
 (struct.new $innerclassinheritance.MultipleNestings.InnerClass1.vtable
  (ref.func $$getClassImpl__java_lang_Class@innerclassinheritance.MultipleNestings.InnerClass1)
  (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_fun__void@innerclassinheritance.MultipleNestings.Parent)
  (ref.func $m_funInI1__void@innerclassinheritance.MultipleNestings.InnerClass1)
 )
)

;;; Code for innerclassinheritance.ParentOuter [methods]

;;; ParentOuter ParentOuter.$create()
(func $$create__@innerclassinheritance.ParentOuter
 (result (ref null $innerclassinheritance.ParentOuter))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:18:6
 (local $$instance (ref null $innerclassinheritance.ParentOuter))
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:18:6
  (call $$clinit__void_<once>_@innerclassinheritance.ParentOuter )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:18:6
  (local.set $$instance (struct.new $innerclassinheritance.ParentOuter (global.get $innerclassinheritance.ParentOuter.vtable) (global.get $itable.empty) (i32.const 0) (i32.const 0)))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:18:6
  (call $$ctor__void_$p_innerclassinheritance_ParentOuter@innerclassinheritance.ParentOuter (ref.as_non_null (local.get $$instance)))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:18:6
  (return (local.get $$instance))
 )
)

;;; void ParentOuter.$ctor()
(func $$ctor__void_$p_innerclassinheritance_ParentOuter@innerclassinheritance.ParentOuter
 (param $this (ref null $innerclassinheritance.ParentOuter))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:18:6
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:18:6
  (call $$ctor__void_$p_java_lang_Object@java.lang.Object (ref.as_non_null (local.get $this)))
 )
)

;;; void ParentOuter.funInParentOuter()
(func $m_funInParentOuter__void@innerclassinheritance.ParentOuter
 (type $function.m_funInParentOuter__void)
 (param $this.untyped (ref $java.lang.Object))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:21:14
 (local $this (ref null $innerclassinheritance.ParentOuter))
 (local.set $this (ref.cast (ref $innerclassinheritance.ParentOuter) (local.get $this.untyped)))
 (block
 )
)
(elem declare func $m_funInParentOuter__void@innerclassinheritance.ParentOuter)

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

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

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

;;; Code for innerclassinheritance.ParentInner [methods]

;;; ParentInner ParentInner.$create()
(func $$create__@innerclassinheritance.ParentInner
 (result (ref null $innerclassinheritance.ParentInner))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:24:6
 (local $$instance (ref null $innerclassinheritance.ParentInner))
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:24:6
  (call $$clinit__void_<once>_@innerclassinheritance.ParentInner )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:24:6
  (local.set $$instance (struct.new $innerclassinheritance.ParentInner (global.get $innerclassinheritance.ParentInner.vtable) (global.get $itable.empty) (i32.const 0) (i32.const 0)))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:24:6
  (call $$ctor__void_$p_innerclassinheritance_ParentInner@innerclassinheritance.ParentInner (ref.as_non_null (local.get $$instance)))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:24:6
  (return (local.get $$instance))
 )
)

;;; void ParentInner.$ctor()
(func $$ctor__void_$p_innerclassinheritance_ParentInner@innerclassinheritance.ParentInner
 (param $this (ref null $innerclassinheritance.ParentInner))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:24:6
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:24:6
  (call $$ctor__void_$p_java_lang_Object@java.lang.Object (ref.as_non_null (local.get $this)))
 )
)

;;; void ParentInner.funInParentInner()
(func $m_funInParentInner__void@innerclassinheritance.ParentInner
 (type $function.m_funInParentInner__void)
 (param $this.untyped (ref $java.lang.Object))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:27:14
 (local $this (ref null $innerclassinheritance.ParentInner))
 (local.set $this (ref.cast (ref $innerclassinheritance.ParentInner) (local.get $this.untyped)))
 (block
 )
)
(elem declare func $m_funInParentInner__void@innerclassinheritance.ParentInner)

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

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

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

;;; Code for innerclassinheritance.MultipleNestings [methods]

;;; MultipleNestings MultipleNestings.$create()
(func $$create__@innerclassinheritance.MultipleNestings
 (result (ref null $innerclassinheritance.MultipleNestings))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:18:13
 (local $$instance (ref null $innerclassinheritance.MultipleNestings))
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:18:13
  (call $$clinit__void_<once>_@innerclassinheritance.MultipleNestings )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:18:13
  (local.set $$instance (struct.new $innerclassinheritance.MultipleNestings (global.get $innerclassinheritance.MultipleNestings.vtable) (global.get $itable.empty) (i32.const 0)))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:18:13
  (call $$ctor__void_$p_innerclassinheritance_MultipleNestings@innerclassinheritance.MultipleNestings (ref.as_non_null (local.get $$instance)))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:18:13
  (return (local.get $$instance))
 )
)

;;; void MultipleNestings.$ctor()
(func $$ctor__void_$p_innerclassinheritance_MultipleNestings@innerclassinheritance.MultipleNestings
 (param $this (ref null $innerclassinheritance.MultipleNestings))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:18:13
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:18:13
  (call $$ctor__void_$p_java_lang_Object@java.lang.Object (ref.as_non_null (local.get $this)))
 )
)

;;; void MultipleNestings.funInM()
(func $m_funInM__void@innerclassinheritance.MultipleNestings
 (type $function.m_funInM__void)
 (param $this.untyped (ref $java.lang.Object))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:23:14
 (local $this (ref null $innerclassinheritance.MultipleNestings))
 (local.set $this (ref.cast (ref $innerclassinheritance.MultipleNestings) (local.get $this.untyped)))
 (block
 )
)
(elem declare func $m_funInM__void@innerclassinheritance.MultipleNestings)

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

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

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

;;; Code for innerclassinheritance.MultipleNestings.Parent [methods]

;;; Parent Parent.$create(MultipleNestings $outer_this)
(func $$create__innerclassinheritance_MultipleNestings@innerclassinheritance.MultipleNestings.Parent
 (param $$outer_this (ref null $innerclassinheritance.MultipleNestings))
 (result (ref null $innerclassinheritance.MultipleNestings.Parent))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:19:15
 (local $$instance (ref null $innerclassinheritance.MultipleNestings.Parent))
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:19:15
  (call $$clinit__void_<once>_@innerclassinheritance.MultipleNestings.Parent )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:19:15
  (local.set $$instance (struct.new $innerclassinheritance.MultipleNestings.Parent (global.get $innerclassinheritance.MultipleNestings.Parent.vtable) (global.get $itable.empty) (i32.const 0) (ref.null $innerclassinheritance.MultipleNestings)))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:19:15
  (call $$ctor__innerclassinheritance_MultipleNestings__void_$p_innerclassinheritance_MultipleNestings_Parent@innerclassinheritance.MultipleNestings.Parent (ref.as_non_null (local.get $$instance))(local.get $$outer_this))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:19:15
  (return (local.get $$instance))
 )
)

;;; void Parent.$ctor(MultipleNestings $outer_this)
(func $$ctor__innerclassinheritance_MultipleNestings__void_$p_innerclassinheritance_MultipleNestings_Parent@innerclassinheritance.MultipleNestings.Parent
 (param $this (ref null $innerclassinheritance.MultipleNestings.Parent))
 (param $$outer_this (ref null $innerclassinheritance.MultipleNestings))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:19:15
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:19:15
  (struct.set $innerclassinheritance.MultipleNestings.Parent $$outer_this@innerclassinheritance.MultipleNestings.Parent (local.get $this) (local.get $$outer_this))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:19:15
  (call $$ctor__void_$p_java_lang_Object@java.lang.Object (ref.as_non_null (local.get $this)))
 )
)

;;; void Parent.fun()
(func $m_fun__void@innerclassinheritance.MultipleNestings.Parent
 (type $function.m_fun__void)
 (param $this.untyped (ref $java.lang.Object))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:20:16
 (local $this (ref null $innerclassinheritance.MultipleNestings.Parent))
 (local.set $this (ref.cast (ref $innerclassinheritance.MultipleNestings.Parent) (local.get $this.untyped)))
 (block
 )
)
(elem declare func $m_fun__void@innerclassinheritance.MultipleNestings.Parent)

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

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

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

;;; Code for innerclassinheritance.ChildClass [methods]

;;; ChildClass ChildClass.$create()
(func $$create__@innerclassinheritance.ChildClass
 (result (ref null $innerclassinheritance.ChildClass))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:30:13
 (local $$instance (ref null $innerclassinheritance.ChildClass))
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:30:13
  (call $$clinit__void_<once>_@innerclassinheritance.ChildClass )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:30:13
  (local.set $$instance (struct.new $innerclassinheritance.ChildClass (global.get $innerclassinheritance.ChildClass.vtable) (global.get $itable.empty) (i32.const 0) (i32.const 0) (i32.const 0)))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:30:13
  (call $$ctor__void_$p_innerclassinheritance_ChildClass@innerclassinheritance.ChildClass (ref.as_non_null (local.get $$instance)))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:30:13
  (return (local.get $$instance))
 )
)

;;; void ChildClass.$ctor()
(func $$ctor__void_$p_innerclassinheritance_ChildClass@innerclassinheritance.ChildClass
 (param $this (ref null $innerclassinheritance.ChildClass))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:30:13
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:30:13
  (call $$ctor__void_$p_innerclassinheritance_ParentOuter@innerclassinheritance.ParentOuter (ref.as_non_null (local.get $this)))
 )
)

;;; void ChildClass.funInOuter()
(func $m_funInOuter__void@innerclassinheritance.ChildClass
 (type $function.m_funInOuter__void)
 (param $this.untyped (ref $java.lang.Object))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:33:14
 (local $this (ref null $innerclassinheritance.ChildClass))
 (local.set $this (ref.cast (ref $innerclassinheritance.ChildClass) (local.get $this.untyped)))
 (block
 )
)
(elem declare func $m_funInOuter__void@innerclassinheritance.ChildClass)

;;; void ChildClass.testLocalClass()
(func $m_testLocalClass__void@innerclassinheritance.ChildClass
 (type $function.m_testLocalClass__void)
 (param $this.untyped (ref $java.lang.Object))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:72:14
 (local $$qualifier (ref null $innerclassinheritance.ChildClass.1LocalClass))
 (local $this (ref null $innerclassinheritance.ChildClass))
 (local.set $this (ref.cast (ref $innerclassinheritance.ChildClass) (local.get $this.untyped)))
 (block
  (block
   ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:87:4
   (local.set $$qualifier (call $$create__innerclassinheritance_ChildClass@innerclassinheritance.ChildClass.1LocalClass (local.get $this)))
   ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:87:4
   (call_ref $function.m_test__void (ref.as_non_null (local.get $$qualifier))(struct.get $innerclassinheritance.ChildClass.1LocalClass.vtable $m_test__void (struct.get $innerclassinheritance.ChildClass.1LocalClass $vtable(local.get $$qualifier))))
  )
 )
)
(elem declare func $m_testLocalClass__void@innerclassinheritance.ChildClass)

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

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

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

;;; Code for innerclassinheritance.ChildClass.InnerClass [methods]

;;; InnerClass InnerClass.$create(ChildClass $outer_this)
(func $$create__innerclassinheritance_ChildClass@innerclassinheritance.ChildClass.InnerClass
 (param $$outer_this (ref null $innerclassinheritance.ChildClass))
 (result (ref null $innerclassinheritance.ChildClass.InnerClass))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:35:8
 (local $$instance (ref null $innerclassinheritance.ChildClass.InnerClass))
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:35:8
  (call $$clinit__void_<once>_@innerclassinheritance.ChildClass.InnerClass )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:35:8
  (local.set $$instance (struct.new $innerclassinheritance.ChildClass.InnerClass (global.get $innerclassinheritance.ChildClass.InnerClass.vtable) (global.get $itable.empty) (i32.const 0) (i32.const 0) (ref.null $innerclassinheritance.ChildClass) (i32.const 0)))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:35:8
  (call $$ctor__innerclassinheritance_ChildClass__void_$p_innerclassinheritance_ChildClass_InnerClass@innerclassinheritance.ChildClass.InnerClass (ref.as_non_null (local.get $$instance))(local.get $$outer_this))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:35:8
  (return (local.get $$instance))
 )
)

;;; void InnerClass.$ctor(ChildClass $outer_this)
(func $$ctor__innerclassinheritance_ChildClass__void_$p_innerclassinheritance_ChildClass_InnerClass@innerclassinheritance.ChildClass.InnerClass
 (param $this (ref null $innerclassinheritance.ChildClass.InnerClass))
 (param $$outer_this (ref null $innerclassinheritance.ChildClass))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:35:8
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:35:8
  (struct.set $innerclassinheritance.ChildClass.InnerClass $$outer_this@innerclassinheritance.ChildClass.InnerClass (local.get $this) (local.get $$outer_this))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:35:8
  (call $$ctor__void_$p_innerclassinheritance_ParentInner@innerclassinheritance.ParentInner (ref.as_non_null (local.get $this)))
 )
)

;;; void InnerClass.funInInner()
(func $m_funInInner__void@innerclassinheritance.ChildClass.InnerClass
 (type $function.m_funInInner__void)
 (param $this.untyped (ref $java.lang.Object))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:38:16
 (local $this (ref null $innerclassinheritance.ChildClass.InnerClass))
 (local.set $this (ref.cast (ref $innerclassinheritance.ChildClass.InnerClass) (local.get $this.untyped)))
 (block
 )
)
(elem declare func $m_funInInner__void@innerclassinheritance.ChildClass.InnerClass)

;;; int InnerClass.testInnerClass()
(func $m_testInnerClass__int@innerclassinheritance.ChildClass.InnerClass
 (type $function.m_testInnerClass__int)
 (param $this.untyped (ref $java.lang.Object))
 (result i32)
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:40:15
 (local $a i32)
 (local $this (ref null $innerclassinheritance.ChildClass.InnerClass))
 (local.set $this (ref.cast (ref $innerclassinheritance.ChildClass.InnerClass) (local.get $this.untyped)))
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:42:6
  (call_ref $function.m_funInParentOuter__void (ref.as_non_null (struct.get $innerclassinheritance.ChildClass.InnerClass $$outer_this@innerclassinheritance.ChildClass.InnerClass (local.get $this)))(struct.get $innerclassinheritance.ChildClass.vtable $m_funInParentOuter__void (struct.get $innerclassinheritance.ChildClass $vtable(struct.get $innerclassinheritance.ChildClass.InnerClass $$outer_this@innerclassinheritance.ChildClass.InnerClass (local.get $this)))))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:43:6
  (call_ref $function.m_funInParentOuter__void (ref.as_non_null (struct.get $innerclassinheritance.ChildClass.InnerClass $$outer_this@innerclassinheritance.ChildClass.InnerClass (local.get $this)))(struct.get $innerclassinheritance.ChildClass.vtable $m_funInParentOuter__void (struct.get $innerclassinheritance.ChildClass $vtable(struct.get $innerclassinheritance.ChildClass.InnerClass $$outer_this@innerclassinheritance.ChildClass.InnerClass (local.get $this)))))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:46:6
  (call_ref $function.m_funInOuter__void (ref.as_non_null (struct.get $innerclassinheritance.ChildClass.InnerClass $$outer_this@innerclassinheritance.ChildClass.InnerClass (local.get $this)))(struct.get $innerclassinheritance.ChildClass.vtable $m_funInOuter__void (struct.get $innerclassinheritance.ChildClass $vtable(struct.get $innerclassinheritance.ChildClass.InnerClass $$outer_this@innerclassinheritance.ChildClass.InnerClass (local.get $this)))))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:47:6
  (call_ref $function.m_funInOuter__void (ref.as_non_null (struct.get $innerclassinheritance.ChildClass.InnerClass $$outer_this@innerclassinheritance.ChildClass.InnerClass (local.get $this)))(struct.get $innerclassinheritance.ChildClass.vtable $m_funInOuter__void (struct.get $innerclassinheritance.ChildClass $vtable(struct.get $innerclassinheritance.ChildClass.InnerClass $$outer_this@innerclassinheritance.ChildClass.InnerClass (local.get $this)))))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:50:6
  (call_ref $function.m_funInParentInner__void (ref.as_non_null (local.get $this))(struct.get $innerclassinheritance.ChildClass.InnerClass.vtable $m_funInParentInner__void (struct.get $innerclassinheritance.ChildClass.InnerClass $vtable(local.get $this))))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:51:6
  (call_ref $function.m_funInParentInner__void (ref.as_non_null (local.get $this))(struct.get $innerclassinheritance.ChildClass.InnerClass.vtable $m_funInParentInner__void (struct.get $innerclassinheritance.ChildClass.InnerClass $vtable(local.get $this))))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:54:6
  (call_ref $function.m_funInInner__void (ref.as_non_null (local.get $this))(struct.get $innerclassinheritance.ChildClass.InnerClass.vtable $m_funInInner__void (struct.get $innerclassinheritance.ChildClass.InnerClass $vtable(local.get $this))))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:55:6
  (call_ref $function.m_funInInner__void (ref.as_non_null (local.get $this))(struct.get $innerclassinheritance.ChildClass.InnerClass.vtable $m_funInInner__void (struct.get $innerclassinheritance.ChildClass.InnerClass $vtable(local.get $this))))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:58:6
  (local.set $a (struct.get $innerclassinheritance.ParentOuter $fieldInParentOuter@innerclassinheritance.ParentOuter (struct.get $innerclassinheritance.ChildClass.InnerClass $$outer_this@innerclassinheritance.ChildClass.InnerClass (local.get $this))))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:59:6
  (local.set $a (struct.get $innerclassinheritance.ParentOuter $fieldInParentOuter@innerclassinheritance.ParentOuter (struct.get $innerclassinheritance.ChildClass.InnerClass $$outer_this@innerclassinheritance.ChildClass.InnerClass (local.get $this))))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:60:6
  (local.set $a (struct.get $innerclassinheritance.ChildClass $fieldInOuter@innerclassinheritance.ChildClass (struct.get $innerclassinheritance.ChildClass.InnerClass $$outer_this@innerclassinheritance.ChildClass.InnerClass (local.get $this))))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:61:6
  (local.set $a (struct.get $innerclassinheritance.ChildClass $fieldInOuter@innerclassinheritance.ChildClass (struct.get $innerclassinheritance.ChildClass.InnerClass $$outer_this@innerclassinheritance.ChildClass.InnerClass (local.get $this))))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:64:6
  (local.set $a (struct.get $innerclassinheritance.ParentInner $fieldInParentInner@innerclassinheritance.ParentInner (local.get $this)))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:65:6
  (local.set $a (struct.get $innerclassinheritance.ParentInner $fieldInParentInner@innerclassinheritance.ParentInner (local.get $this)))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:66:6
  (local.set $a (struct.get $innerclassinheritance.ChildClass.InnerClass $fieldInInner@innerclassinheritance.ChildClass.InnerClass (local.get $this)))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:67:6
  (local.set $a (struct.get $innerclassinheritance.ChildClass.InnerClass $fieldInInner@innerclassinheritance.ChildClass.InnerClass (local.get $this)))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:68:6
  (return (local.get $a))
 )
)
(elem declare func $m_testInnerClass__int@innerclassinheritance.ChildClass.InnerClass)

;;; void InnerClass.$clinit()
(func $$clinit__void_<once>_@innerclassinheritance.ChildClass.InnerClass
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:35:8
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:35:8
  (if (global.get $$class-initialized@innerclassinheritance.ChildClass.InnerClass)
   (then
    ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:35:8
    (return )
   )
  )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:35:8
  (global.set $$class-initialized@innerclassinheritance.ChildClass.InnerClass (i32.const 1))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:35:8
  (call $$clinit__void_<once>_@innerclassinheritance.ParentInner )
 )
)

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

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

;;; Code for innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2 [methods]

;;; InnerClass2 InnerClass2.$create(InnerClass1 $outer_this)
(func $$create__innerclassinheritance_MultipleNestings_InnerClass1@innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2
 (param $$outer_this (ref null $innerclassinheritance.MultipleNestings.InnerClass1))
 (result (ref null $innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:31:17
 (local $$instance (ref null $innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2))
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:31:17
  (call $$clinit__void_<once>_@innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2 )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:31:17
  (local.set $$instance (struct.new $innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2 (global.get $innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2.vtable) (global.get $itable.empty) (i32.const 0) (ref.null $innerclassinheritance.MultipleNestings) (ref.null $innerclassinheritance.MultipleNestings.InnerClass1)))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:31:17
  (call $$ctor__innerclassinheritance_MultipleNestings_InnerClass1__void_$p_innerclassinheritance_MultipleNestings_InnerClass1_InnerClass2@innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2 (ref.as_non_null (local.get $$instance))(local.get $$outer_this))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:31:17
  (return (local.get $$instance))
 )
)

;;; void InnerClass2.$ctor(InnerClass1 $outer_this)
(func $$ctor__innerclassinheritance_MultipleNestings_InnerClass1__void_$p_innerclassinheritance_MultipleNestings_InnerClass1_InnerClass2@innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2
 (param $this (ref null $innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2))
 (param $$outer_this (ref null $innerclassinheritance.MultipleNestings.InnerClass1))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:31:17
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:31:17
  (struct.set $innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2 $$outer_this@innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2 (local.get $this) (local.get $$outer_this))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:31:17
  (call $$ctor__innerclassinheritance_MultipleNestings__void_$p_innerclassinheritance_MultipleNestings_Parent@innerclassinheritance.MultipleNestings.Parent (ref.as_non_null (local.get $this))(struct.get $innerclassinheritance.MultipleNestings.InnerClass1 $$outer_this@innerclassinheritance.MultipleNestings.InnerClass1 (struct.get $innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2 $$outer_this@innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2 (local.get $this))))
 )
)

;;; void InnerClass2.funInI2()
(func $m_funInI2__void@innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2
 (type $function.m_funInI2__void)
 (param $this.untyped (ref $java.lang.Object))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:32:18
 (local $this (ref null $innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2))
 (local.set $this (ref.cast (ref $innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2) (local.get $this.untyped)))
 (block
 )
)
(elem declare func $m_funInI2__void@innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2)

;;; void InnerClass2.test()
(func $m_test__void@innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2
 (type $function.m_test__void)
 (param $this.untyped (ref $java.lang.Object))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:34:18
 (local $this (ref null $innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2))
 (local.set $this (ref.cast (ref $innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2) (local.get $this.untyped)))
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:36:8
  (call_ref $function.m_fun__void (ref.as_non_null (local.get $this))(struct.get $innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2.vtable $m_fun__void (struct.get $innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2 $vtable(local.get $this))))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:37:8
  (call_ref $function.m_fun__void (ref.as_non_null (local.get $this))(struct.get $innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2.vtable $m_fun__void (struct.get $innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2 $vtable(local.get $this))))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:38:8
  (call_ref $function.m_fun__void (ref.as_non_null (struct.get $innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2 $$outer_this@innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2 (local.get $this)))(struct.get $innerclassinheritance.MultipleNestings.InnerClass1.vtable $m_fun__void (struct.get $innerclassinheritance.MultipleNestings.InnerClass1 $vtable(struct.get $innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2 $$outer_this@innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2 (local.get $this)))))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:41:8
  (call_ref $function.m_funInM__void (ref.as_non_null (struct.get $innerclassinheritance.MultipleNestings.InnerClass1 $$outer_this@innerclassinheritance.MultipleNestings.InnerClass1 (struct.get $innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2 $$outer_this@innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2 (local.get $this))))(struct.get $innerclassinheritance.MultipleNestings.vtable $m_funInM__void (struct.get $innerclassinheritance.MultipleNestings $vtable(struct.get $innerclassinheritance.MultipleNestings.InnerClass1 $$outer_this@innerclassinheritance.MultipleNestings.InnerClass1 (struct.get $innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2 $$outer_this@innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2 (local.get $this))))))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:42:8
  (call_ref $function.m_funInM__void (ref.as_non_null (struct.get $innerclassinheritance.MultipleNestings.InnerClass1 $$outer_this@innerclassinheritance.MultipleNestings.InnerClass1 (struct.get $innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2 $$outer_this@innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2 (local.get $this))))(struct.get $innerclassinheritance.MultipleNestings.vtable $m_funInM__void (struct.get $innerclassinheritance.MultipleNestings $vtable(struct.get $innerclassinheritance.MultipleNestings.InnerClass1 $$outer_this@innerclassinheritance.MultipleNestings.InnerClass1 (struct.get $innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2 $$outer_this@innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2 (local.get $this))))))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:43:8
  (call_ref $function.m_funInI1__void (ref.as_non_null (struct.get $innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2 $$outer_this@innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2 (local.get $this)))(struct.get $innerclassinheritance.MultipleNestings.InnerClass1.vtable $m_funInI1__void (struct.get $innerclassinheritance.MultipleNestings.InnerClass1 $vtable(struct.get $innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2 $$outer_this@innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2 (local.get $this)))))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:44:8
  (call_ref $function.m_funInI1__void (ref.as_non_null (struct.get $innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2 $$outer_this@innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2 (local.get $this)))(struct.get $innerclassinheritance.MultipleNestings.InnerClass1.vtable $m_funInI1__void (struct.get $innerclassinheritance.MultipleNestings.InnerClass1 $vtable(struct.get $innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2 $$outer_this@innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2 (local.get $this)))))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:46:8
  (call_ref $function.m_funInI2__void (ref.as_non_null (local.get $this))(struct.get $innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2.vtable $m_funInI2__void (struct.get $innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2 $vtable(local.get $this))))
 )
)
(elem declare func $m_test__void@innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2)

;;; void InnerClass2.$clinit()
(func $$clinit__void_<once>_@innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:31:17
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:31:17
  (if (global.get $$class-initialized@innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2)
   (then
    ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:31:17
    (return )
   )
  )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:31:17
  (global.set $$class-initialized@innerclassinheritance.MultipleNestings.InnerClass1.InnerClass2 (i32.const 1))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:31:17
  (call $$clinit__void_<once>_@innerclassinheritance.MultipleNestings.Parent )
 )
)

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

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

;;; Code for innerclassinheritance.MultipleNestings.InnerClass1 [methods]

;;; InnerClass1 InnerClass1.$create(MultipleNestings $outer_this)
(func $$create__innerclassinheritance_MultipleNestings@innerclassinheritance.MultipleNestings.InnerClass1
 (param $$outer_this (ref null $innerclassinheritance.MultipleNestings))
 (result (ref null $innerclassinheritance.MultipleNestings.InnerClass1))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:25:15
 (local $$instance (ref null $innerclassinheritance.MultipleNestings.InnerClass1))
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:25:15
  (call $$clinit__void_<once>_@innerclassinheritance.MultipleNestings.InnerClass1 )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:25:15
  (local.set $$instance (struct.new $innerclassinheritance.MultipleNestings.InnerClass1 (global.get $innerclassinheritance.MultipleNestings.InnerClass1.vtable) (global.get $itable.empty) (i32.const 0) (ref.null $innerclassinheritance.MultipleNestings) (ref.null $innerclassinheritance.MultipleNestings)))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:25:15
  (call $$ctor__innerclassinheritance_MultipleNestings__void_$p_innerclassinheritance_MultipleNestings_InnerClass1@innerclassinheritance.MultipleNestings.InnerClass1 (ref.as_non_null (local.get $$instance))(local.get $$outer_this))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:25:15
  (return (local.get $$instance))
 )
)

;;; void InnerClass1.$ctor(MultipleNestings $outer_this)
(func $$ctor__innerclassinheritance_MultipleNestings__void_$p_innerclassinheritance_MultipleNestings_InnerClass1@innerclassinheritance.MultipleNestings.InnerClass1
 (param $this (ref null $innerclassinheritance.MultipleNestings.InnerClass1))
 (param $$outer_this (ref null $innerclassinheritance.MultipleNestings))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:25:15
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:25:15
  (struct.set $innerclassinheritance.MultipleNestings.InnerClass1 $$outer_this@innerclassinheritance.MultipleNestings.InnerClass1 (local.get $this) (local.get $$outer_this))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:25:15
  (call $$ctor__innerclassinheritance_MultipleNestings__void_$p_innerclassinheritance_MultipleNestings_Parent@innerclassinheritance.MultipleNestings.Parent (ref.as_non_null (local.get $this))(local.get $$outer_this))
 )
)

;;; void InnerClass1.funInI1()
(func $m_funInI1__void@innerclassinheritance.MultipleNestings.InnerClass1
 (type $function.m_funInI1__void)
 (param $this.untyped (ref $java.lang.Object))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:26:16
 (local $this (ref null $innerclassinheritance.MultipleNestings.InnerClass1))
 (local.set $this (ref.cast (ref $innerclassinheritance.MultipleNestings.InnerClass1) (local.get $this.untyped)))
 (block
 )
)
(elem declare func $m_funInI1__void@innerclassinheritance.MultipleNestings.InnerClass1)

;;; void InnerClass1.$clinit()
(func $$clinit__void_<once>_@innerclassinheritance.MultipleNestings.InnerClass1
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:25:15
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:25:15
  (if (global.get $$class-initialized@innerclassinheritance.MultipleNestings.InnerClass1)
   (then
    ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:25:15
    (return )
   )
  )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:25:15
  (global.set $$class-initialized@innerclassinheritance.MultipleNestings.InnerClass1 (i32.const 1))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/MultipleNestings.java:25:15
  (call $$clinit__void_<once>_@innerclassinheritance.MultipleNestings.Parent )
 )
)

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

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

;;; Code for innerclassinheritance.ChildClass.1LocalClass [methods]

;;; LocalClass LocalClass.$create(ChildClass $outer_this)
(func $$create__innerclassinheritance_ChildClass@innerclassinheritance.ChildClass.1LocalClass
 (param $$outer_this (ref null $innerclassinheritance.ChildClass))
 (result (ref null $innerclassinheritance.ChildClass.1LocalClass))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:73:10
 (local $$instance (ref null $innerclassinheritance.ChildClass.1LocalClass))
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:73:10
  (call $$clinit__void_<once>_@innerclassinheritance.ChildClass.1LocalClass )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:73:10
  (local.set $$instance (struct.new $innerclassinheritance.ChildClass.1LocalClass (global.get $innerclassinheritance.ChildClass.1LocalClass.vtable) (global.get $itable.empty) (i32.const 0) (i32.const 0) (i32.const 0) (ref.null $innerclassinheritance.ChildClass) (ref.null $java.lang.Object)))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:73:10
  (call $$ctor__innerclassinheritance_ChildClass__void_$p_innerclassinheritance_ChildClass_1LocalClass@innerclassinheritance.ChildClass.1LocalClass (ref.as_non_null (local.get $$instance))(local.get $$outer_this))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:73:10
  (return (local.get $$instance))
 )
)

;;; void LocalClass.$ctor(ChildClass $outer_this)
(func $$ctor__innerclassinheritance_ChildClass__void_$p_innerclassinheritance_ChildClass_1LocalClass@innerclassinheritance.ChildClass.1LocalClass
 (param $this (ref null $innerclassinheritance.ChildClass.1LocalClass))
 (param $$outer_this (ref null $innerclassinheritance.ChildClass))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:73:10
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:73:10
  (struct.set $innerclassinheritance.ChildClass.1LocalClass $$outer_this@innerclassinheritance.ChildClass.1LocalClass (local.get $this) (local.get $$outer_this))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:73:10
  (call $$ctor__void_$p_innerclassinheritance_ChildClass@innerclassinheritance.ChildClass (ref.as_non_null (local.get $this)))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:73:10
  (call $$init__void_$p_innerclassinheritance_ChildClass_1LocalClass@innerclassinheritance.ChildClass.1LocalClass (ref.as_non_null (local.get $this)))
 )
)

;;; void LocalClass.funInParentOuter()
(func $m_funInParentOuter__void@innerclassinheritance.ChildClass.1LocalClass
 (type $function.m_funInParentOuter__void)
 (param $this.untyped (ref $java.lang.Object))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:77:18
 (local $this (ref null $innerclassinheritance.ChildClass.1LocalClass))
 (local.set $this (ref.cast (ref $innerclassinheritance.ChildClass.1LocalClass) (local.get $this.untyped)))
 (block
 )
)
(elem declare func $m_funInParentOuter__void@innerclassinheritance.ChildClass.1LocalClass)

;;; void LocalClass.test()
(func $m_test__void@innerclassinheritance.ChildClass.1LocalClass
 (type $function.m_test__void)
 (param $this.untyped (ref $java.lang.Object))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:79:18
 (local $this (ref null $innerclassinheritance.ChildClass.1LocalClass))
 (local.set $this (ref.cast (ref $innerclassinheritance.ChildClass.1LocalClass) (local.get $this.untyped)))
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:80:8
  (call_ref $function.m_funInOuter__void (ref.as_non_null (local.get $this))(struct.get $innerclassinheritance.ChildClass.1LocalClass.vtable $m_funInOuter__void (struct.get $innerclassinheritance.ChildClass.1LocalClass $vtable(local.get $this))))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:81:8
  (call_ref $function.m_funInOuter__void (ref.as_non_null (struct.get $innerclassinheritance.ChildClass.1LocalClass $$outer_this@innerclassinheritance.ChildClass.1LocalClass (local.get $this)))(struct.get $innerclassinheritance.ChildClass.vtable $m_funInOuter__void (struct.get $innerclassinheritance.ChildClass $vtable(struct.get $innerclassinheritance.ChildClass.1LocalClass $$outer_this@innerclassinheritance.ChildClass.1LocalClass (local.get $this)))))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:82:8
  (call_ref $function.m_funInParentOuter__void (ref.as_non_null (local.get $this))(struct.get $innerclassinheritance.ChildClass.1LocalClass.vtable $m_funInParentOuter__void (struct.get $innerclassinheritance.ChildClass.1LocalClass $vtable(local.get $this))))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:83:8
  (call_ref $function.m_funInParentOuter__void (ref.as_non_null (local.get $this))(struct.get $innerclassinheritance.ChildClass.1LocalClass.vtable $m_funInParentOuter__void (struct.get $innerclassinheritance.ChildClass.1LocalClass $vtable(local.get $this))))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:84:8
  (call_ref $function.m_funInParentOuter__void (ref.as_non_null (struct.get $innerclassinheritance.ChildClass.1LocalClass $$outer_this@innerclassinheritance.ChildClass.1LocalClass (local.get $this)))(struct.get $innerclassinheritance.ChildClass.vtable $m_funInParentOuter__void (struct.get $innerclassinheritance.ChildClass $vtable(struct.get $innerclassinheritance.ChildClass.1LocalClass $$outer_this@innerclassinheritance.ChildClass.1LocalClass (local.get $this)))))
 )
)
(elem declare func $m_test__void@innerclassinheritance.ChildClass.1LocalClass)

;;; void LocalClass.$init()
(func $$init__void_$p_innerclassinheritance_ChildClass_1LocalClass@innerclassinheritance.ChildClass.1LocalClass
 (param $this (ref null $innerclassinheritance.ChildClass.1LocalClass))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:73:10
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:74:6
  (struct.set $innerclassinheritance.ChildClass.1LocalClass $object@innerclassinheritance.ChildClass.1LocalClass (local.get $this) (local.get $this))
 )
)

;;; void LocalClass.$clinit()
(func $$clinit__void_<once>_@innerclassinheritance.ChildClass.1LocalClass
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:73:10
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:73:10
  (if (global.get $$class-initialized@innerclassinheritance.ChildClass.1LocalClass)
   (then
    ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:73:10
    (return )
   )
  )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:73:10
  (global.set $$class-initialized@innerclassinheritance.ChildClass.1LocalClass (i32.const 1))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/innerclassinheritance/readable-j2wasm.js/innerclassinheritance/ChildClass.java:73:10
  (call $$clinit__void_<once>_@innerclassinheritance.ChildClass )
 )
)

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

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