;;; Code for multipleabstractparents.MultipleAbstractParents.List [type definition]
(type $multipleabstractparents.MultipleAbstractParents.List.vtable (sub (struct
 (field $m_getFoo__java_lang_Object__java_lang_String (ref $function.m_getFoo__java_lang_Object__java_lang_String))
 ))
)

;;; Code for multipleabstractparents.MultipleAbstractParents.Collection [type definition]
(type $multipleabstractparents.MultipleAbstractParents.Collection.vtable (sub (struct
 (field $m_getFoo__java_lang_Object__java_lang_String (ref $function.m_getFoo__java_lang_Object__java_lang_String))
 ))
)

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

;;; Code for multipleabstractparents.MultipleAbstractParents.List.$LambdaAdaptor [type definition]
(type $multipleabstractparents.MultipleAbstractParents.List.$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_getFoo__java_lang_Object__java_lang_String (ref $function.m_getFoo__java_lang_Object__java_lang_String))
 ))
)
(type $multipleabstractparents.MultipleAbstractParents.List.$LambdaAdaptor (sub $java.lang.Object (struct
 (field $vtable (ref $multipleabstractparents.MultipleAbstractParents.List.$LambdaAdaptor.vtable))
 (field $itable (ref $multipleabstractparents.MultipleAbstractParents.List.$LambdaAdaptor.itable))
 (field $$systemIdentityHashCode@java.lang.Object (mut i32))
 ))
)

;;; Code for multipleabstractparents.MultipleAbstractParents.Collection.$LambdaAdaptor [type definition]
(type $multipleabstractparents.MultipleAbstractParents.Collection.$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_getFoo__java_lang_Object__java_lang_String (ref $function.m_getFoo__java_lang_Object__java_lang_String))
 ))
)
(type $multipleabstractparents.MultipleAbstractParents.Collection.$LambdaAdaptor (sub $java.lang.Object (struct
 (field $vtable (ref $multipleabstractparents.MultipleAbstractParents.Collection.$LambdaAdaptor.vtable))
 (field $itable (ref $multipleabstractparents.MultipleAbstractParents.Collection.$LambdaAdaptor.itable))
 (field $$systemIdentityHashCode@java.lang.Object (mut i32))
 ))
)

;;; Code for multipleabstractparents.MultipleAbstractParents.AbstractListCollection [type definition]
(type $multipleabstractparents.MultipleAbstractParents.AbstractListCollection.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_getFoo__java_lang_Object__java_lang_String (ref $function.m_getFoo__java_lang_Object__java_lang_String))
 ))
)
(type $multipleabstractparents.MultipleAbstractParents.AbstractListCollection (sub $java.lang.Object (struct
 (field $vtable (ref $multipleabstractparents.MultipleAbstractParents.AbstractListCollection.vtable))
 (field $itable (ref $multipleabstractparents.MultipleAbstractParents.AbstractListCollection.itable))
 (field $$systemIdentityHashCode@java.lang.Object (mut i32))
 ))
)

;;; Code for multipleabstractparents.MultipleAbstractParents.AbstractCollection [type definition]
(type $multipleabstractparents.MultipleAbstractParents.AbstractCollection.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_getFoo__java_lang_Object__java_lang_String (ref $function.m_getFoo__java_lang_Object__java_lang_String))
 ))
)
(type $multipleabstractparents.MultipleAbstractParents.AbstractCollection (sub $java.lang.Object (struct
 (field $vtable (ref $multipleabstractparents.MultipleAbstractParents.AbstractCollection.vtable))
 (field $itable (ref $itable))
 (field $$systemIdentityHashCode@java.lang.Object (mut i32))
 ))
)

;;; Code for multipleabstractparents.MultipleAbstractParents.AbstractList2 [type definition]
(type $multipleabstractparents.MultipleAbstractParents.AbstractList2.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_getFoo__java_lang_Object__java_lang_String (ref $function.m_getFoo__java_lang_Object__java_lang_String))
 ))
)
(type $multipleabstractparents.MultipleAbstractParents.AbstractList2 (sub $java.lang.Object (struct
 (field $vtable (ref $multipleabstractparents.MultipleAbstractParents.AbstractList2.vtable))
 (field $itable (ref $multipleabstractparents.MultipleAbstractParents.AbstractList2.itable))
 (field $$systemIdentityHashCode@java.lang.Object (mut i32))
 ))
)

;;; Code for multipleabstractparents.MultipleAbstractParents.IStringList [type definition]
(type $multipleabstractparents.MultipleAbstractParents.IStringList.vtable (sub $multipleabstractparents.MultipleAbstractParents.List.vtable (struct
 (field $m_getFoo__java_lang_Object__java_lang_String (ref $function.m_getFoo__java_lang_Object__java_lang_String))
 (field $m_getFoo__java_lang_String__java_lang_String (ref $function.m_getFoo__java_lang_String__java_lang_String))
 ))
)

;;; Code for multipleabstractparents.MultipleAbstractParents.IStringList.$LambdaAdaptor [type definition]
(type $multipleabstractparents.MultipleAbstractParents.IStringList.$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_getFoo__java_lang_Object__java_lang_String (ref $function.m_getFoo__java_lang_Object__java_lang_String))
 (field $m_getFoo__java_lang_String__java_lang_String (ref $function.m_getFoo__java_lang_String__java_lang_String))
 ))
)
(type $multipleabstractparents.MultipleAbstractParents.IStringList.$LambdaAdaptor (sub $java.lang.Object (struct
 (field $vtable (ref $multipleabstractparents.MultipleAbstractParents.IStringList.$LambdaAdaptor.vtable))
 (field $itable (ref $multipleabstractparents.MultipleAbstractParents.IStringList.$LambdaAdaptor.itable))
 (field $$systemIdentityHashCode@java.lang.Object (mut i32))
 ))
)

;;; Code for multipleabstractparents.MultipleAbstractParents.AbstractList [type definition]
(type $multipleabstractparents.MultipleAbstractParents.AbstractList.vtable (sub $multipleabstractparents.MultipleAbstractParents.AbstractCollection.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_getFoo__java_lang_Object__java_lang_String (ref $function.m_getFoo__java_lang_Object__java_lang_String))
 ))
)
(type $multipleabstractparents.MultipleAbstractParents.AbstractList (sub $multipleabstractparents.MultipleAbstractParents.AbstractCollection (struct
 (field $vtable (ref $multipleabstractparents.MultipleAbstractParents.AbstractList.vtable))
 (field $itable (ref $multipleabstractparents.MultipleAbstractParents.AbstractList.itable))
 (field $$systemIdentityHashCode@java.lang.Object (mut i32))
 ))
)

;;; Code for multipleabstractparents.MultipleAbstractParents.AbstractStringList2 [type definition]
(type $multipleabstractparents.MultipleAbstractParents.AbstractStringList2.vtable (sub $multipleabstractparents.MultipleAbstractParents.AbstractList2.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_getFoo__java_lang_Object__java_lang_String (ref $function.m_getFoo__java_lang_Object__java_lang_String))
 (field $m_getFoo__java_lang_String__java_lang_String (ref $function.m_getFoo__java_lang_String__java_lang_String))
 ))
)
(type $multipleabstractparents.MultipleAbstractParents.AbstractStringList2 (sub $multipleabstractparents.MultipleAbstractParents.AbstractList2 (struct
 (field $vtable (ref $multipleabstractparents.MultipleAbstractParents.AbstractStringList2.vtable))
 (field $itable (ref $multipleabstractparents.MultipleAbstractParents.AbstractStringList2.itable))
 (field $$systemIdentityHashCode@java.lang.Object (mut i32))
 ))
)

;;; Code for multipleabstractparents.MultipleAbstractParents.AbstractStringList3 [type definition]
(type $multipleabstractparents.MultipleAbstractParents.AbstractStringList3.vtable (sub $multipleabstractparents.MultipleAbstractParents.AbstractList2.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_getFoo__java_lang_Object__java_lang_String (ref $function.m_getFoo__java_lang_Object__java_lang_String))
 ))
)
(type $multipleabstractparents.MultipleAbstractParents.AbstractStringList3 (sub $multipleabstractparents.MultipleAbstractParents.AbstractList2 (struct
 (field $vtable (ref $multipleabstractparents.MultipleAbstractParents.AbstractStringList3.vtable))
 (field $itable (ref $multipleabstractparents.MultipleAbstractParents.AbstractStringList3.itable))
 (field $$systemIdentityHashCode@java.lang.Object (mut i32))
 ))
)

;;; Code for multipleabstractparents.MultipleAbstractParents.ArrayList [type definition]
(type $multipleabstractparents.MultipleAbstractParents.ArrayList.vtable (sub $multipleabstractparents.MultipleAbstractParents.AbstractList.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_getFoo__java_lang_Object__java_lang_String (ref $function.m_getFoo__java_lang_Object__java_lang_String))
 ))
)
(type $multipleabstractparents.MultipleAbstractParents.ArrayList (sub $multipleabstractparents.MultipleAbstractParents.AbstractList (struct
 (field $vtable (ref $multipleabstractparents.MultipleAbstractParents.ArrayList.vtable))
 (field $itable (ref $multipleabstractparents.MultipleAbstractParents.ArrayList.itable))
 (field $$systemIdentityHashCode@java.lang.Object (mut i32))
 ))
)

;;; Code for multipleabstractparents.MultipleAbstractParents.AbstractStringList [type definition]
(type $multipleabstractparents.MultipleAbstractParents.AbstractStringList.vtable (sub $multipleabstractparents.MultipleAbstractParents.AbstractList.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_getFoo__java_lang_Object__java_lang_String (ref $function.m_getFoo__java_lang_Object__java_lang_String))
 (field $m_getFoo__java_lang_String__java_lang_String (ref $function.m_getFoo__java_lang_String__java_lang_String))
 ))
)
(type $multipleabstractparents.MultipleAbstractParents.AbstractStringList (sub $multipleabstractparents.MultipleAbstractParents.AbstractList (struct
 (field $vtable (ref $multipleabstractparents.MultipleAbstractParents.AbstractStringList.vtable))
 (field $itable (ref $multipleabstractparents.MultipleAbstractParents.AbstractStringList.itable))
 (field $$systemIdentityHashCode@java.lang.Object (mut i32))
 ))
)

;;; Code for multipleabstractparents.MultipleAbstractParents.SubAbstractStringList2 [type definition]
(type $multipleabstractparents.MultipleAbstractParents.SubAbstractStringList2.vtable (sub $multipleabstractparents.MultipleAbstractParents.AbstractStringList2.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_getFoo__java_lang_Object__java_lang_String (ref $function.m_getFoo__java_lang_Object__java_lang_String))
 (field $m_getFoo__java_lang_String__java_lang_String (ref $function.m_getFoo__java_lang_String__java_lang_String))
 ))
)
(type $multipleabstractparents.MultipleAbstractParents.SubAbstractStringList2 (sub $multipleabstractparents.MultipleAbstractParents.AbstractStringList2 (struct
 (field $vtable (ref $multipleabstractparents.MultipleAbstractParents.SubAbstractStringList2.vtable))
 (field $itable (ref $multipleabstractparents.MultipleAbstractParents.SubAbstractStringList2.itable))
 (field $$systemIdentityHashCode@java.lang.Object (mut i32))
 ))
)

;;; Code for multipleabstractparents.MultipleAbstractParents.StringList [type definition]
(type $multipleabstractparents.MultipleAbstractParents.StringList.vtable (sub $multipleabstractparents.MultipleAbstractParents.AbstractStringList.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_getFoo__java_lang_Object__java_lang_String (ref $function.m_getFoo__java_lang_Object__java_lang_String))
 (field $m_getFoo__java_lang_String__java_lang_String (ref $function.m_getFoo__java_lang_String__java_lang_String))
 ))
)
(type $multipleabstractparents.MultipleAbstractParents.StringList (sub $multipleabstractparents.MultipleAbstractParents.AbstractStringList (struct
 (field $vtable (ref $multipleabstractparents.MultipleAbstractParents.StringList.vtable))
 (field $itable (ref $multipleabstractparents.MultipleAbstractParents.StringList.itable))
 (field $$systemIdentityHashCode@java.lang.Object (mut i32))
 ))
)

;;; Code for multipleabstractparents.MultipleAbstractParents.StringListChild [type definition]
(type $multipleabstractparents.MultipleAbstractParents.StringListChild.vtable (sub $multipleabstractparents.MultipleAbstractParents.StringList.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_getFoo__java_lang_Object__java_lang_String (ref $function.m_getFoo__java_lang_Object__java_lang_String))
 (field $m_getFoo__java_lang_String__java_lang_String (ref $function.m_getFoo__java_lang_String__java_lang_String))
 ))
)
(type $multipleabstractparents.MultipleAbstractParents.StringListChild (sub $multipleabstractparents.MultipleAbstractParents.StringList (struct
 (field $vtable (ref $multipleabstractparents.MultipleAbstractParents.StringListChild.vtable))
 (field $itable (ref $multipleabstractparents.MultipleAbstractParents.StringListChild.itable))
 (field $$systemIdentityHashCode@java.lang.Object (mut i32))
 ))
)

;;; Code for multipleabstractparents.MultipleAbstractParents.List [imports]

;;; Code for multipleabstractparents.MultipleAbstractParents.Collection [imports]

;;; Code for multipleabstractparents.MultipleAbstractParents [imports]

;;; Code for multipleabstractparents.MultipleAbstractParents.List.$LambdaAdaptor [imports]

;;; Code for multipleabstractparents.MultipleAbstractParents.Collection.$LambdaAdaptor [imports]

;;; Code for multipleabstractparents.MultipleAbstractParents.AbstractListCollection [imports]

;;; Code for multipleabstractparents.MultipleAbstractParents.AbstractCollection [imports]

;;; Code for multipleabstractparents.MultipleAbstractParents.AbstractList2 [imports]

;;; Code for multipleabstractparents.MultipleAbstractParents.IStringList [imports]

;;; Code for multipleabstractparents.MultipleAbstractParents.IStringList.$LambdaAdaptor [imports]

;;; Code for multipleabstractparents.MultipleAbstractParents.AbstractList [imports]

;;; Code for multipleabstractparents.MultipleAbstractParents.AbstractStringList2 [imports]

;;; Code for multipleabstractparents.MultipleAbstractParents.AbstractStringList3 [imports]

;;; Code for multipleabstractparents.MultipleAbstractParents.ArrayList [imports]

;;; Code for multipleabstractparents.MultipleAbstractParents.AbstractStringList [imports]

;;; Code for multipleabstractparents.MultipleAbstractParents.SubAbstractStringList2 [imports]

;;; Code for multipleabstractparents.MultipleAbstractParents.StringList [imports]

;;; Code for multipleabstractparents.MultipleAbstractParents.StringListChild [imports]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

;;; Code for multipleabstractparents.MultipleAbstractParents.ArrayList [vtable.init]
(global $multipleabstractparents.MultipleAbstractParents.ArrayList.vtable (ref $multipleabstractparents.MultipleAbstractParents.ArrayList.vtable)
 (struct.new $multipleabstractparents.MultipleAbstractParents.ArrayList.vtable
  (ref.func $$getClassImpl__java_lang_Class@multipleabstractparents.MultipleAbstractParents.ArrayList)
  (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_getFoo__java_lang_Object__java_lang_String@multipleabstractparents.MultipleAbstractParents.AbstractCollection)
 )
)
(global $multipleabstractparents.MultipleAbstractParents.List.vtable@$multipleabstractparents.MultipleAbstractParents.ArrayList (ref $multipleabstractparents.MultipleAbstractParents.List.vtable)
 (struct.new $multipleabstractparents.MultipleAbstractParents.List.vtable
  (ref.func $m_getFoo__java_lang_Object__java_lang_String@multipleabstractparents.MultipleAbstractParents.AbstractCollection)
 )
)

;;; Code for multipleabstractparents.MultipleAbstractParents.SubAbstractStringList2 [vtable.init]
(global $multipleabstractparents.MultipleAbstractParents.SubAbstractStringList2.vtable (ref $multipleabstractparents.MultipleAbstractParents.SubAbstractStringList2.vtable)
 (struct.new $multipleabstractparents.MultipleAbstractParents.SubAbstractStringList2.vtable
  (ref.func $$getClassImpl__java_lang_Class@multipleabstractparents.MultipleAbstractParents.SubAbstractStringList2)
  (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_getFoo__java_lang_Object__java_lang_String@multipleabstractparents.MultipleAbstractParents.AbstractStringList2)
  (ref.func $m_getFoo__java_lang_String__java_lang_String@multipleabstractparents.MultipleAbstractParents.SubAbstractStringList2)
 )
)
(global $multipleabstractparents.MultipleAbstractParents.IStringList.vtable@$multipleabstractparents.MultipleAbstractParents.SubAbstractStringList2 (ref $multipleabstractparents.MultipleAbstractParents.IStringList.vtable)
 (struct.new $multipleabstractparents.MultipleAbstractParents.IStringList.vtable
  (ref.func $m_getFoo__java_lang_Object__java_lang_String@multipleabstractparents.MultipleAbstractParents.AbstractStringList2)
  (ref.func $m_getFoo__java_lang_String__java_lang_String@multipleabstractparents.MultipleAbstractParents.SubAbstractStringList2)
 )
)
(global $multipleabstractparents.MultipleAbstractParents.List.vtable@$multipleabstractparents.MultipleAbstractParents.SubAbstractStringList2 (ref $multipleabstractparents.MultipleAbstractParents.IStringList.vtable) (global.get $multipleabstractparents.MultipleAbstractParents.IStringList.vtable@$multipleabstractparents.MultipleAbstractParents.SubAbstractStringList2))

;;; Code for multipleabstractparents.MultipleAbstractParents.StringList [vtable.init]
(global $multipleabstractparents.MultipleAbstractParents.StringList.vtable (ref $multipleabstractparents.MultipleAbstractParents.StringList.vtable)
 (struct.new $multipleabstractparents.MultipleAbstractParents.StringList.vtable
  (ref.func $$getClassImpl__java_lang_Class@multipleabstractparents.MultipleAbstractParents.StringList)
  (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_getFoo__java_lang_Object__java_lang_String@multipleabstractparents.MultipleAbstractParents.AbstractCollection)
  (ref.func $m_getFoo__java_lang_String__java_lang_String@multipleabstractparents.MultipleAbstractParents.AbstractStringList)
 )
)
(global $multipleabstractparents.MultipleAbstractParents.IStringList.vtable@$multipleabstractparents.MultipleAbstractParents.StringList (ref $multipleabstractparents.MultipleAbstractParents.IStringList.vtable)
 (struct.new $multipleabstractparents.MultipleAbstractParents.IStringList.vtable
  (ref.func $m_getFoo__java_lang_Object__java_lang_String@multipleabstractparents.MultipleAbstractParents.AbstractCollection)
  (ref.func $m_getFoo__java_lang_String__java_lang_String@multipleabstractparents.MultipleAbstractParents.AbstractStringList)
 )
)
(global $multipleabstractparents.MultipleAbstractParents.List.vtable@$multipleabstractparents.MultipleAbstractParents.StringList (ref $multipleabstractparents.MultipleAbstractParents.IStringList.vtable) (global.get $multipleabstractparents.MultipleAbstractParents.IStringList.vtable@$multipleabstractparents.MultipleAbstractParents.StringList))

;;; Code for multipleabstractparents.MultipleAbstractParents.StringListChild [vtable.init]
(global $multipleabstractparents.MultipleAbstractParents.StringListChild.vtable (ref $multipleabstractparents.MultipleAbstractParents.StringListChild.vtable)
 (struct.new $multipleabstractparents.MultipleAbstractParents.StringListChild.vtable
  (ref.func $$getClassImpl__java_lang_Class@multipleabstractparents.MultipleAbstractParents.StringListChild)
  (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_getFoo__java_lang_Object__java_lang_String@multipleabstractparents.MultipleAbstractParents.AbstractCollection)
  (ref.func $m_getFoo__java_lang_String__java_lang_String@multipleabstractparents.MultipleAbstractParents.AbstractStringList)
 )
)
(global $multipleabstractparents.MultipleAbstractParents.IStringList.vtable@$multipleabstractparents.MultipleAbstractParents.StringListChild (ref $multipleabstractparents.MultipleAbstractParents.IStringList.vtable)
 (struct.new $multipleabstractparents.MultipleAbstractParents.IStringList.vtable
  (ref.func $m_getFoo__java_lang_Object__java_lang_String@multipleabstractparents.MultipleAbstractParents.AbstractCollection)
  (ref.func $m_getFoo__java_lang_String__java_lang_String@multipleabstractparents.MultipleAbstractParents.AbstractStringList)
 )
)
(global $multipleabstractparents.MultipleAbstractParents.List.vtable@$multipleabstractparents.MultipleAbstractParents.StringListChild (ref $multipleabstractparents.MultipleAbstractParents.IStringList.vtable) (global.get $multipleabstractparents.MultipleAbstractParents.IStringList.vtable@$multipleabstractparents.MultipleAbstractParents.StringListChild))

;;; Code for multipleabstractparents.MultipleAbstractParents.List [methods]

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

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

;;; Code for multipleabstractparents.MultipleAbstractParents.Collection [methods]

;;; void Collection.$clinit()
(func $$clinit__void_<once>_@multipleabstractparents.MultipleAbstractParents.Collection
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:23:19
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:23:19
  (if (global.get $$class-initialized@multipleabstractparents.MultipleAbstractParents.Collection)
   (then
    ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:23:19
    (return )
   )
  )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:23:19
  (global.set $$class-initialized@multipleabstractparents.MultipleAbstractParents.Collection (i32.const 1))
 )
)

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

;;; Code for multipleabstractparents.MultipleAbstractParents [methods]

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

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

;;; void MultipleAbstractParents.main(String... args)
(func $m_main__arrayOf_java_lang_String__void@multipleabstractparents.MultipleAbstractParents
 (param $args (ref null $javaemul.internal.WasmArray.OfObject))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:66:21
 (local $$qualifier (ref null $multipleabstractparents.MultipleAbstractParents.ArrayList))
 (local $$qualifier_1 (ref null $multipleabstractparents.MultipleAbstractParents.StringList))
 (local $$qualifier_2 (ref null $java.lang.Object))
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:66:42
  (call $$clinit__void_<once>_@multipleabstractparents.MultipleAbstractParents )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:67:4
  (if (call $m_areWasmAssertionsEnabled__boolean@javaemul.internal.Asserts )
   (then
    ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:67:4
    (call $$assert__boolean__void@javaemul.internal.Asserts (call $m_equals__java_lang_Object__boolean@java.lang.String (ref.as_non_null (block (result (ref null $java.lang.String))
     (local.set $$qualifier (call $$create__@multipleabstractparents.MultipleAbstractParents.ArrayList ))
     (call_ref $function.m_getFoo__java_lang_Object__java_lang_String (ref.as_non_null (local.get $$qualifier))(ref.null $java.lang.String)(struct.get $multipleabstractparents.MultipleAbstractParents.ArrayList.vtable $m_getFoo__java_lang_Object__java_lang_String (struct.get $multipleabstractparents.MultipleAbstractParents.ArrayList $vtable(local.get $$qualifier))))
    ))(call $$getString_|AbstractColl...|__java_lang_String_<once>_@multipleabstractparents.MultipleAbstractParents )))
   )
  )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:68:4
  (if (call $m_areWasmAssertionsEnabled__boolean@javaemul.internal.Asserts )
   (then
    ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:68:4
    (call $$assert__boolean__void@javaemul.internal.Asserts (call $m_equals__java_lang_Object__boolean@java.lang.String (ref.as_non_null (block (result (ref null $java.lang.String))
     (local.set $$qualifier_1 (call $$create__@multipleabstractparents.MultipleAbstractParents.StringList ))
     (call_ref $function.m_getFoo__java_lang_Object__java_lang_String (ref.as_non_null (local.get $$qualifier_1))(ref.null $java.lang.String)(struct.get $multipleabstractparents.MultipleAbstractParents.StringList.vtable $m_getFoo__java_lang_Object__java_lang_String (struct.get $multipleabstractparents.MultipleAbstractParents.StringList $vtable(local.get $$qualifier_1))))
    ))(call $$getString_|AbstractColl...|__java_lang_String_<once>_@multipleabstractparents.MultipleAbstractParents )))
   )
  )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:69:4
  (if (call $m_areWasmAssertionsEnabled__boolean@javaemul.internal.Asserts )
   (then
    ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:69:4
    (call $$assert__boolean__void@javaemul.internal.Asserts (call $m_equals__java_lang_Object__boolean@java.lang.String (ref.as_non_null (block (result (ref null $java.lang.String))
     (local.set $$qualifier_2 (call $$create__@multipleabstractparents.MultipleAbstractParents.StringList ))
     (call_ref $function.m_getFoo__java_lang_String__java_lang_String (ref.as_non_null (local.get $$qualifier_2))(ref.null $java.lang.String)(struct.get $multipleabstractparents.MultipleAbstractParents.IStringList.vtable $m_getFoo__java_lang_String__java_lang_String (ref.cast (ref $multipleabstractparents.MultipleAbstractParents.IStringList.vtable) (call $get.itable.$multipleabstractparents.MultipleAbstractParents.IStringList (local.get $$qualifier_2)))))
    ))(call $$getString_|AbstractColl...|__java_lang_String_<once>_@multipleabstractparents.MultipleAbstractParents )))
   )
  )
 )
)

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

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

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

;;; Code for multipleabstractparents.MultipleAbstractParents.List.$LambdaAdaptor [methods]

;;; void $LambdaAdaptor.$ctor()
(func $$ctor__void_$p_multipleabstractparents_MultipleAbstractParents_List_$LambdaAdaptor@multipleabstractparents.MultipleAbstractParents.List.$LambdaAdaptor
 (param $this (ref null $multipleabstractparents.MultipleAbstractParents.List.$LambdaAdaptor))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:19:19
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:19:19
  (call $$ctor__void_$p_java_lang_Object@java.lang.Object (ref.as_non_null (local.get $this)))
 )
)

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

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

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

;;; Code for multipleabstractparents.MultipleAbstractParents.Collection.$LambdaAdaptor [methods]

;;; void $LambdaAdaptor.$ctor()
(func $$ctor__void_$p_multipleabstractparents_MultipleAbstractParents_Collection_$LambdaAdaptor@multipleabstractparents.MultipleAbstractParents.Collection.$LambdaAdaptor
 (param $this (ref null $multipleabstractparents.MultipleAbstractParents.Collection.$LambdaAdaptor))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:23:19
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:23:19
  (call $$ctor__void_$p_java_lang_Object@java.lang.Object (ref.as_non_null (local.get $this)))
 )
)

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

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

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

;;; Code for multipleabstractparents.MultipleAbstractParents.AbstractListCollection [methods]

;;; void AbstractListCollection.$ctor()
(func $$ctor__void_$p_multipleabstractparents_MultipleAbstractParents_AbstractListCollection@multipleabstractparents.MultipleAbstractParents.AbstractListCollection
 (param $this (ref null $multipleabstractparents.MultipleAbstractParents.AbstractListCollection))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:27:31
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:27:31
  (call $$ctor__void_$p_java_lang_Object@java.lang.Object (ref.as_non_null (local.get $this)))
 )
)

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

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

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

;;; Code for multipleabstractparents.MultipleAbstractParents.AbstractCollection [methods]

;;; void AbstractCollection.$ctor()
(func $$ctor__void_$p_multipleabstractparents_MultipleAbstractParents_AbstractCollection@multipleabstractparents.MultipleAbstractParents.AbstractCollection
 (param $this (ref null $multipleabstractparents.MultipleAbstractParents.AbstractCollection))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:29:31
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:29:31
  (call $$ctor__void_$p_java_lang_Object@java.lang.Object (ref.as_non_null (local.get $this)))
 )
)

;;; String AbstractCollection.getFoo(T t)
(func $m_getFoo__java_lang_Object__java_lang_String@multipleabstractparents.MultipleAbstractParents.AbstractCollection
 (type $function.m_getFoo__java_lang_Object__java_lang_String)
 (param $this.untyped (ref $java.lang.Object))
 (param $t (ref null $java.lang.Object))
 (result (ref null $java.lang.String))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:31:18
 (local $this (ref null $multipleabstractparents.MultipleAbstractParents.AbstractCollection))
 (local.set $this (ref.cast (ref $multipleabstractparents.MultipleAbstractParents.AbstractCollection) (local.get $this.untyped)))
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:32:6
  (return (call $$getString_|AbstractColl...|__java_lang_String_<once>_@multipleabstractparents.MultipleAbstractParents ))
 )
)
(elem declare func $m_getFoo__java_lang_Object__java_lang_String@multipleabstractparents.MultipleAbstractParents.AbstractCollection)

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

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

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

;;; Code for multipleabstractparents.MultipleAbstractParents.AbstractList2 [methods]

;;; void AbstractList2.$ctor()
(func $$ctor__void_$p_multipleabstractparents_MultipleAbstractParents_AbstractList2@multipleabstractparents.MultipleAbstractParents.AbstractList2
 (param $this (ref null $multipleabstractparents.MultipleAbstractParents.AbstractList2))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:38:31
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:38:31
  (call $$ctor__void_$p_java_lang_Object@java.lang.Object (ref.as_non_null (local.get $this)))
 )
)

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

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

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

;;; Code for multipleabstractparents.MultipleAbstractParents.IStringList [methods]

;;; void IStringList.$clinit()
(func $$clinit__void_<once>_@multipleabstractparents.MultipleAbstractParents.IStringList
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:42:19
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:42:19
  (if (global.get $$class-initialized@multipleabstractparents.MultipleAbstractParents.IStringList)
   (then
    ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:42:19
    (return )
   )
  )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:42:19
  (global.set $$class-initialized@multipleabstractparents.MultipleAbstractParents.IStringList (i32.const 1))
 )
)

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

;;; Code for multipleabstractparents.MultipleAbstractParents.IStringList.$LambdaAdaptor [methods]

;;; void $LambdaAdaptor.$ctor()
(func $$ctor__void_$p_multipleabstractparents_MultipleAbstractParents_IStringList_$LambdaAdaptor@multipleabstractparents.MultipleAbstractParents.IStringList.$LambdaAdaptor
 (param $this (ref null $multipleabstractparents.MultipleAbstractParents.IStringList.$LambdaAdaptor))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:42:19
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:42:19
  (call $$ctor__void_$p_java_lang_Object@java.lang.Object (ref.as_non_null (local.get $this)))
 )
)

;;; String $LambdaAdaptor.getFoo(T arg0)
(func $m_getFoo__java_lang_Object__java_lang_String@multipleabstractparents.MultipleAbstractParents.IStringList.$LambdaAdaptor
 (type $function.m_getFoo__java_lang_Object__java_lang_String)
 (param $this.untyped (ref $java.lang.Object))
 (param $arg0 (ref null $java.lang.Object))
 (result (ref null $java.lang.String))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:42:19
 (local $this (ref null $multipleabstractparents.MultipleAbstractParents.IStringList.$LambdaAdaptor))
 (local.set $this (ref.cast (ref $multipleabstractparents.MultipleAbstractParents.IStringList.$LambdaAdaptor) (local.get $this.untyped)))
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:42:19
  (return (call_ref $function.m_getFoo__java_lang_String__java_lang_String (ref.as_non_null (local.get $this))(ref.cast (ref null $java.lang.String) (local.get $arg0))(struct.get $multipleabstractparents.MultipleAbstractParents.IStringList.$LambdaAdaptor.vtable $m_getFoo__java_lang_String__java_lang_String (struct.get $multipleabstractparents.MultipleAbstractParents.IStringList.$LambdaAdaptor $vtable(local.get $this)))))
 )
)
(elem declare func $m_getFoo__java_lang_Object__java_lang_String@multipleabstractparents.MultipleAbstractParents.IStringList.$LambdaAdaptor)

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

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

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

;;; Code for multipleabstractparents.MultipleAbstractParents.AbstractList [methods]

;;; void AbstractList.$ctor()
(func $$ctor__void_$p_multipleabstractparents_MultipleAbstractParents_AbstractList@multipleabstractparents.MultipleAbstractParents.AbstractList
 (param $this (ref null $multipleabstractparents.MultipleAbstractParents.AbstractList))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:36:31
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:36:31
  (call $$ctor__void_$p_multipleabstractparents_MultipleAbstractParents_AbstractCollection@multipleabstractparents.MultipleAbstractParents.AbstractCollection (ref.as_non_null (local.get $this)))
 )
)

;;; void AbstractList.$clinit()
(func $$clinit__void_<once>_@multipleabstractparents.MultipleAbstractParents.AbstractList
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:36:31
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:36:31
  (if (global.get $$class-initialized@multipleabstractparents.MultipleAbstractParents.AbstractList)
   (then
    ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:36:31
    (return )
   )
  )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:36:31
  (global.set $$class-initialized@multipleabstractparents.MultipleAbstractParents.AbstractList (i32.const 1))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:36:31
  (call $$clinit__void_<once>_@multipleabstractparents.MultipleAbstractParents.AbstractCollection )
 )
)

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

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

;;; Code for multipleabstractparents.MultipleAbstractParents.AbstractStringList2 [methods]

;;; void AbstractStringList2.$ctor()
(func $$ctor__void_$p_multipleabstractparents_MultipleAbstractParents_AbstractStringList2@multipleabstractparents.MultipleAbstractParents.AbstractStringList2
 (param $this (ref null $multipleabstractparents.MultipleAbstractParents.AbstractStringList2))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:50:31
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:50:31
  (call $$ctor__void_$p_multipleabstractparents_MultipleAbstractParents_AbstractList2@multipleabstractparents.MultipleAbstractParents.AbstractList2 (ref.as_non_null (local.get $this)))
 )
)

;;; String AbstractStringList2.getFoo(T arg0)
(func $m_getFoo__java_lang_Object__java_lang_String@multipleabstractparents.MultipleAbstractParents.AbstractStringList2
 (type $function.m_getFoo__java_lang_Object__java_lang_String)
 (param $this.untyped (ref $java.lang.Object))
 (param $arg0 (ref null $java.lang.Object))
 (result (ref null $java.lang.String))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:50:31
 (local $this (ref null $multipleabstractparents.MultipleAbstractParents.AbstractStringList2))
 (local.set $this (ref.cast (ref $multipleabstractparents.MultipleAbstractParents.AbstractStringList2) (local.get $this.untyped)))
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:50:31
  (return (call_ref $function.m_getFoo__java_lang_String__java_lang_String (ref.as_non_null (local.get $this))(ref.cast (ref null $java.lang.String) (local.get $arg0))(struct.get $multipleabstractparents.MultipleAbstractParents.AbstractStringList2.vtable $m_getFoo__java_lang_String__java_lang_String (struct.get $multipleabstractparents.MultipleAbstractParents.AbstractStringList2 $vtable(local.get $this)))))
 )
)
(elem declare func $m_getFoo__java_lang_Object__java_lang_String@multipleabstractparents.MultipleAbstractParents.AbstractStringList2)

;;; void AbstractStringList2.$clinit()
(func $$clinit__void_<once>_@multipleabstractparents.MultipleAbstractParents.AbstractStringList2
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:50:31
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:50:31
  (if (global.get $$class-initialized@multipleabstractparents.MultipleAbstractParents.AbstractStringList2)
   (then
    ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:50:31
    (return )
   )
  )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:50:31
  (global.set $$class-initialized@multipleabstractparents.MultipleAbstractParents.AbstractStringList2 (i32.const 1))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:50:31
  (call $$clinit__void_<once>_@multipleabstractparents.MultipleAbstractParents.AbstractList2 )
 )
)

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

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

;;; Code for multipleabstractparents.MultipleAbstractParents.AbstractStringList3 [methods]

;;; void AbstractStringList3.$ctor()
(func $$ctor__void_$p_multipleabstractparents_MultipleAbstractParents_AbstractStringList3@multipleabstractparents.MultipleAbstractParents.AbstractStringList3
 (param $this (ref null $multipleabstractparents.MultipleAbstractParents.AbstractStringList3))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:60:31
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:60:31
  (call $$ctor__void_$p_multipleabstractparents_MultipleAbstractParents_AbstractList2@multipleabstractparents.MultipleAbstractParents.AbstractList2 (ref.as_non_null (local.get $this)))
 )
)

;;; void AbstractStringList3.$clinit()
(func $$clinit__void_<once>_@multipleabstractparents.MultipleAbstractParents.AbstractStringList3
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:60:31
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:60:31
  (if (global.get $$class-initialized@multipleabstractparents.MultipleAbstractParents.AbstractStringList3)
   (then
    ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:60:31
    (return )
   )
  )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:60:31
  (global.set $$class-initialized@multipleabstractparents.MultipleAbstractParents.AbstractStringList3 (i32.const 1))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:60:31
  (call $$clinit__void_<once>_@multipleabstractparents.MultipleAbstractParents.AbstractList2 )
 )
)

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

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

;;; Code for multipleabstractparents.MultipleAbstractParents.ArrayList [methods]

;;; ArrayList<T> ArrayList.$create()
(func $$create__@multipleabstractparents.MultipleAbstractParents.ArrayList
 (result (ref null $multipleabstractparents.MultipleAbstractParents.ArrayList))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:40:22
 (local $$instance (ref null $multipleabstractparents.MultipleAbstractParents.ArrayList))
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:40:22
  (call $$clinit__void_<once>_@multipleabstractparents.MultipleAbstractParents.ArrayList )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:40:22
  (local.set $$instance (struct.new $multipleabstractparents.MultipleAbstractParents.ArrayList (global.get $multipleabstractparents.MultipleAbstractParents.ArrayList.vtable) (global.get $multipleabstractparents.MultipleAbstractParents.ArrayList.itable) (i32.const 0)))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:40:22
  (call $$ctor__void_$p_multipleabstractparents_MultipleAbstractParents_ArrayList@multipleabstractparents.MultipleAbstractParents.ArrayList (ref.as_non_null (local.get $$instance)))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:40:22
  (return (local.get $$instance))
 )
)

;;; void ArrayList.$ctor()
(func $$ctor__void_$p_multipleabstractparents_MultipleAbstractParents_ArrayList@multipleabstractparents.MultipleAbstractParents.ArrayList
 (param $this (ref null $multipleabstractparents.MultipleAbstractParents.ArrayList))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:40:22
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:40:22
  (call $$ctor__void_$p_multipleabstractparents_MultipleAbstractParents_AbstractList@multipleabstractparents.MultipleAbstractParents.AbstractList (ref.as_non_null (local.get $this)))
 )
)

;;; void ArrayList.$clinit()
(func $$clinit__void_<once>_@multipleabstractparents.MultipleAbstractParents.ArrayList
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:40:22
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:40:22
  (if (global.get $$class-initialized@multipleabstractparents.MultipleAbstractParents.ArrayList)
   (then
    ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:40:22
    (return )
   )
  )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:40:22
  (global.set $$class-initialized@multipleabstractparents.MultipleAbstractParents.ArrayList (i32.const 1))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:40:22
  (call $$clinit__void_<once>_@multipleabstractparents.MultipleAbstractParents.AbstractList )
 )
)

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

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

;;; Code for multipleabstractparents.MultipleAbstractParents.AbstractStringList [methods]

;;; void AbstractStringList.$ctor()
(func $$ctor__void_$p_multipleabstractparents_MultipleAbstractParents_AbstractStringList@multipleabstractparents.MultipleAbstractParents.AbstractStringList
 (param $this (ref null $multipleabstractparents.MultipleAbstractParents.AbstractStringList))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:47:31
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:47:31
  (call $$ctor__void_$p_multipleabstractparents_MultipleAbstractParents_AbstractList@multipleabstractparents.MultipleAbstractParents.AbstractList (ref.as_non_null (local.get $this)))
 )
)

;;; String AbstractStringList.getFoo(String arg0)
(func $m_getFoo__java_lang_String__java_lang_String@multipleabstractparents.MultipleAbstractParents.AbstractStringList
 (type $function.m_getFoo__java_lang_String__java_lang_String)
 (param $this.untyped (ref $java.lang.Object))
 (param $arg0 (ref null $java.lang.String))
 (result (ref null $java.lang.String))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:47:31
 (local $this (ref null $multipleabstractparents.MultipleAbstractParents.AbstractStringList))
 (local.set $this (ref.cast (ref $multipleabstractparents.MultipleAbstractParents.AbstractStringList) (local.get $this.untyped)))
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:47:31
  (return (call $m_getFoo__java_lang_Object__java_lang_String@multipleabstractparents.MultipleAbstractParents.AbstractCollection (ref.as_non_null (local.get $this))(local.get $arg0)))
 )
)
(elem declare func $m_getFoo__java_lang_String__java_lang_String@multipleabstractparents.MultipleAbstractParents.AbstractStringList)

;;; void AbstractStringList.$clinit()
(func $$clinit__void_<once>_@multipleabstractparents.MultipleAbstractParents.AbstractStringList
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:47:31
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:47:31
  (if (global.get $$class-initialized@multipleabstractparents.MultipleAbstractParents.AbstractStringList)
   (then
    ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:47:31
    (return )
   )
  )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:47:31
  (global.set $$class-initialized@multipleabstractparents.MultipleAbstractParents.AbstractStringList (i32.const 1))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:47:31
  (call $$clinit__void_<once>_@multipleabstractparents.MultipleAbstractParents.AbstractList )
 )
)

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

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

;;; Code for multipleabstractparents.MultipleAbstractParents.SubAbstractStringList2 [methods]

;;; SubAbstractStringList2 SubAbstractStringList2.$create()
(func $$create__@multipleabstractparents.MultipleAbstractParents.SubAbstractStringList2
 (result (ref null $multipleabstractparents.MultipleAbstractParents.SubAbstractStringList2))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:53:22
 (local $$instance (ref null $multipleabstractparents.MultipleAbstractParents.SubAbstractStringList2))
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:53:22
  (call $$clinit__void_<once>_@multipleabstractparents.MultipleAbstractParents.SubAbstractStringList2 )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:53:22
  (local.set $$instance (struct.new $multipleabstractparents.MultipleAbstractParents.SubAbstractStringList2 (global.get $multipleabstractparents.MultipleAbstractParents.SubAbstractStringList2.vtable) (global.get $multipleabstractparents.MultipleAbstractParents.SubAbstractStringList2.itable) (i32.const 0)))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:53:22
  (call $$ctor__void_$p_multipleabstractparents_MultipleAbstractParents_SubAbstractStringList2@multipleabstractparents.MultipleAbstractParents.SubAbstractStringList2 (ref.as_non_null (local.get $$instance)))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:53:22
  (return (local.get $$instance))
 )
)

;;; void SubAbstractStringList2.$ctor()
(func $$ctor__void_$p_multipleabstractparents_MultipleAbstractParents_SubAbstractStringList2@multipleabstractparents.MultipleAbstractParents.SubAbstractStringList2
 (param $this (ref null $multipleabstractparents.MultipleAbstractParents.SubAbstractStringList2))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:53:22
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:53:22
  (call $$ctor__void_$p_multipleabstractparents_MultipleAbstractParents_AbstractStringList2@multipleabstractparents.MultipleAbstractParents.AbstractStringList2 (ref.as_non_null (local.get $this)))
 )
)

;;; String SubAbstractStringList2.getFoo(String t)
(func $m_getFoo__java_lang_String__java_lang_String@multipleabstractparents.MultipleAbstractParents.SubAbstractStringList2
 (type $function.m_getFoo__java_lang_String__java_lang_String)
 (param $this.untyped (ref $java.lang.Object))
 (param $t (ref null $java.lang.String))
 (result (ref null $java.lang.String))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:55:18
 (local $this (ref null $multipleabstractparents.MultipleAbstractParents.SubAbstractStringList2))
 (local.set $this (ref.cast (ref $multipleabstractparents.MultipleAbstractParents.SubAbstractStringList2) (local.get $this.untyped)))
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:56:6
  (return (ref.null $java.lang.String))
 )
)
(elem declare func $m_getFoo__java_lang_String__java_lang_String@multipleabstractparents.MultipleAbstractParents.SubAbstractStringList2)

;;; void SubAbstractStringList2.$clinit()
(func $$clinit__void_<once>_@multipleabstractparents.MultipleAbstractParents.SubAbstractStringList2
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:53:22
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:53:22
  (if (global.get $$class-initialized@multipleabstractparents.MultipleAbstractParents.SubAbstractStringList2)
   (then
    ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:53:22
    (return )
   )
  )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:53:22
  (global.set $$class-initialized@multipleabstractparents.MultipleAbstractParents.SubAbstractStringList2 (i32.const 1))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:53:22
  (call $$clinit__void_<once>_@multipleabstractparents.MultipleAbstractParents.AbstractStringList2 )
 )
)

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

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

;;; Code for multipleabstractparents.MultipleAbstractParents.StringList [methods]

;;; StringList StringList.$create()
(func $$create__@multipleabstractparents.MultipleAbstractParents.StringList
 (result (ref null $multipleabstractparents.MultipleAbstractParents.StringList))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:62:22
 (local $$instance (ref null $multipleabstractparents.MultipleAbstractParents.StringList))
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:62:22
  (call $$clinit__void_<once>_@multipleabstractparents.MultipleAbstractParents.StringList )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:62:22
  (local.set $$instance (struct.new $multipleabstractparents.MultipleAbstractParents.StringList (global.get $multipleabstractparents.MultipleAbstractParents.StringList.vtable) (global.get $multipleabstractparents.MultipleAbstractParents.StringList.itable) (i32.const 0)))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:62:22
  (call $$ctor__void_$p_multipleabstractparents_MultipleAbstractParents_StringList@multipleabstractparents.MultipleAbstractParents.StringList (ref.as_non_null (local.get $$instance)))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:62:22
  (return (local.get $$instance))
 )
)

;;; void StringList.$ctor()
(func $$ctor__void_$p_multipleabstractparents_MultipleAbstractParents_StringList@multipleabstractparents.MultipleAbstractParents.StringList
 (param $this (ref null $multipleabstractparents.MultipleAbstractParents.StringList))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:62:22
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:62:22
  (call $$ctor__void_$p_multipleabstractparents_MultipleAbstractParents_AbstractStringList@multipleabstractparents.MultipleAbstractParents.AbstractStringList (ref.as_non_null (local.get $this)))
 )
)

;;; void StringList.$clinit()
(func $$clinit__void_<once>_@multipleabstractparents.MultipleAbstractParents.StringList
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:62:22
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:62:22
  (if (global.get $$class-initialized@multipleabstractparents.MultipleAbstractParents.StringList)
   (then
    ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:62:22
    (return )
   )
  )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:62:22
  (global.set $$class-initialized@multipleabstractparents.MultipleAbstractParents.StringList (i32.const 1))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:62:22
  (call $$clinit__void_<once>_@multipleabstractparents.MultipleAbstractParents.AbstractStringList )
 )
)

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

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

;;; Code for multipleabstractparents.MultipleAbstractParents.StringListChild [methods]

;;; StringListChild StringListChild.$create()
(func $$create__@multipleabstractparents.MultipleAbstractParents.StringListChild
 (result (ref null $multipleabstractparents.MultipleAbstractParents.StringListChild))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:64:22
 (local $$instance (ref null $multipleabstractparents.MultipleAbstractParents.StringListChild))
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:64:22
  (call $$clinit__void_<once>_@multipleabstractparents.MultipleAbstractParents.StringListChild )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:64:22
  (local.set $$instance (struct.new $multipleabstractparents.MultipleAbstractParents.StringListChild (global.get $multipleabstractparents.MultipleAbstractParents.StringListChild.vtable) (global.get $multipleabstractparents.MultipleAbstractParents.StringListChild.itable) (i32.const 0)))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:64:22
  (call $$ctor__void_$p_multipleabstractparents_MultipleAbstractParents_StringListChild@multipleabstractparents.MultipleAbstractParents.StringListChild (ref.as_non_null (local.get $$instance)))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:64:22
  (return (local.get $$instance))
 )
)

;;; void StringListChild.$ctor()
(func $$ctor__void_$p_multipleabstractparents_MultipleAbstractParents_StringListChild@multipleabstractparents.MultipleAbstractParents.StringListChild
 (param $this (ref null $multipleabstractparents.MultipleAbstractParents.StringListChild))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:64:22
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:64:22
  (call $$ctor__void_$p_multipleabstractparents_MultipleAbstractParents_StringList@multipleabstractparents.MultipleAbstractParents.StringList (ref.as_non_null (local.get $this)))
 )
)

;;; void StringListChild.$clinit()
(func $$clinit__void_<once>_@multipleabstractparents.MultipleAbstractParents.StringListChild
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:64:22
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:64:22
  (if (global.get $$class-initialized@multipleabstractparents.MultipleAbstractParents.StringListChild)
   (then
    ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:64:22
    (return )
   )
  )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:64:22
  (global.set $$class-initialized@multipleabstractparents.MultipleAbstractParents.StringListChild (i32.const 1))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/multipleabstractparents/readable-j2wasm.js/multipleabstractparents/MultipleAbstractParents.java:64:22
  (call $$clinit__void_<once>_@multipleabstractparents.MultipleAbstractParents.StringList )
 )
)

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

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