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

;;; Code for localnamecollision.Class [type definition]
(type $localnamecollision.Class.vtable (sub $java.lang.Object.vtable (struct
 (field $$getClassImpl__java_lang_Class (ref $function.$getClassImpl__java_lang_Class))
 (field $m_equals__java_lang_Object__boolean (ref $function.m_equals__java_lang_Object__boolean))
 (field $m_hashCode__int (ref $function.m_hashCode__int))
 (field $m_toString__java_lang_String (ref $function.m_toString__java_lang_String))
 (field $m_main__void (ref $function.m_main__void))
 ))
)
(type $localnamecollision.Class (sub $java.lang.Object (struct
 (field $vtable (ref $localnamecollision.Class.vtable))
 (field $itable (ref $itable))
 (field $$systemIdentityHashCode@java.lang.Object (mut i32))
 ))
)

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

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

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

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

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

;;; Code for localnamecollision.Asserts [imports]

;;; Code for localnamecollision.Class [imports]

;;; Code for localnamecollision.LocalNameCollision [imports]

;;; Code for localnamecollision.A [imports]

;;; Code for localnamecollision.A.B [imports]

;;; Code for localnamecollision.package1.A [imports]

;;; Code for localnamecollision.package2.A [imports]

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

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

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

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

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

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

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

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

;;; Code for localnamecollision.Class [vtable.init]
(global $localnamecollision.Class.vtable (ref $localnamecollision.Class.vtable)
 (struct.new $localnamecollision.Class.vtable
  (ref.func $$getClassImpl__java_lang_Class@localnamecollision.Class)
  (ref.func $m_equals__java_lang_Object__boolean@java.lang.Object)
  (ref.func $m_hashCode__int@java.lang.Object)
  (ref.func $m_toString__java_lang_String@java.lang.Object)
  (ref.func $m_main__void@localnamecollision.Class)
 )
)

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

;;; Code for localnamecollision.A [vtable.init]
(global $localnamecollision.A.vtable (ref $localnamecollision.A.vtable)
 (struct.new $localnamecollision.A.vtable
  (ref.func $$getClassImpl__java_lang_Class@localnamecollision.A)
  (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 localnamecollision.A.B [vtable.init]
(global $localnamecollision.A.B.vtable (ref $localnamecollision.A.B.vtable)
 (struct.new $localnamecollision.A.B.vtable
  (ref.func $$getClassImpl__java_lang_Class@localnamecollision.A.B)
  (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 localnamecollision.package1.A [vtable.init]
(global $localnamecollision.package1.A.vtable (ref $localnamecollision.package1.A.vtable)
 (struct.new $localnamecollision.package1.A.vtable
  (ref.func $$getClassImpl__java_lang_Class@localnamecollision.package1.A)
  (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_m__int@localnamecollision.package1.A)
 )
)

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

;;; Code for localnamecollision.Asserts [methods]

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

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

;;; int Asserts.n()
(func $m_n__int_$pp_localnamecollision@localnamecollision.Asserts
 (type $function.m_n__int_$pp_localnamecollision)
 (param $this.untyped (ref $java.lang.Object))
 (result i32)
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/Asserts.java:19:6
 (local $this (ref null $localnamecollision.Asserts))
 (local.set $this (ref.cast (ref $localnamecollision.Asserts) (local.get $this.untyped)))
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/Asserts.java:20:4
  (if (call $m_areWasmAssertionsEnabled__boolean@javaemul.internal.Asserts )
   (then
    ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/Asserts.java:20:4
    (call $$assert__boolean__void@javaemul.internal.Asserts (i32.ne (i32.const 5) (i32.const 4)))
   )
  )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/Asserts.java:21:4
  (return (i32.const 5))
 )
)
(elem declare func $m_n__int_$pp_localnamecollision@localnamecollision.Asserts)

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

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

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

;;; Code for localnamecollision.Class [methods]

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

;;; Class Class.$create_$private()
(func $$create_$private__@localnamecollision.Class
 (result (ref null $localnamecollision.Class))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/Class.java:18:13
 (local $$instance (ref null $localnamecollision.Class))
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/Class.java:18:13
  (local.set $$instance (struct.new $localnamecollision.Class (global.get $localnamecollision.Class.vtable) (global.get $itable.empty) (i32.const 0)))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/Class.java:18:13
  (call $$ctor__void_$p_localnamecollision_Class@localnamecollision.Class (ref.as_non_null (local.get $$instance)))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/Class.java:18:13
  (return (local.get $$instance))
 )
)

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

;;; void Class.main()
(func $m_main__void@localnamecollision.Class
 (type $function.m_main__void)
 (param $this.untyped (ref $java.lang.Object))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/Class.java:19:14
 (local $this (ref null $localnamecollision.Class))
 (local.set $this (ref.cast (ref $localnamecollision.Class) (local.get $this.untyped)))
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/Class.java:20:4
  (drop (call $m_getClass__java_lang_Class@java.lang.Object (ref.as_non_null (call $$create_$private__@localnamecollision.Class ))))
 )
)
(elem declare func $m_main__void@localnamecollision.Class)

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

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

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

;;; Code for localnamecollision.LocalNameCollision [methods]

;;; void LocalNameCollision.testClassLocalVarCollision()
(func $m_testClassLocalVarCollision__void@localnamecollision.LocalNameCollision
 (type $function.m_testClassLocalVarCollision__void)
 (param $this.untyped (ref $java.lang.Object))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/LocalNameCollision.java:20:14
 (local $LocalNameCollision i32)
 (local $RuntimeException (ref null $java.lang.Object))
 (local $Asserts i32)
 (local $$Asserts i32)
 (local $l_Asserts i32)
 (local $com_google_j2cl_readable_localnamecollision_Class i32)
 (local $com_google_j2cl_readable_localnamecollision_package1_A i32)
 (local $com_google_j2cl_readable_localnamecollision_package2_A i32)
 (local $A i32)
 (local $$qualifier (ref null $localnamecollision.Asserts))
 (local $this (ref null $localnamecollision.LocalNameCollision))
 (local.set $this (ref.cast (ref $localnamecollision.LocalNameCollision) (local.get $this.untyped)))
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/LocalNameCollision.java:21:4
  (local.set $LocalNameCollision (i32.const 0))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/LocalNameCollision.java:22:4
  (local.set $RuntimeException (ref.null $java.lang.Object))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/LocalNameCollision.java:23:4
  (local.set $Asserts (i32.const 1))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/LocalNameCollision.java:24:4
  (local.set $$Asserts (i32.const 1))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/LocalNameCollision.java:25:4
  (local.set $l_Asserts (i32.const 1))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/LocalNameCollision.java:26:4
  (local.set $com_google_j2cl_readable_localnamecollision_Class (i32.const 1))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/LocalNameCollision.java:27:4
  (local.set $com_google_j2cl_readable_localnamecollision_package1_A (i32.const 1))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/LocalNameCollision.java:28:4
  (local.set $com_google_j2cl_readable_localnamecollision_package2_A (i32.const 1))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/LocalNameCollision.java:29:4
  (local.set $A (i32.const 1))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/LocalNameCollision.java:30:4
  (local.set $LocalNameCollision (if (result i32) (if (result i32) (if (result i32) (if (result i32) (ref.test (ref $localnamecollision.LocalNameCollision) (local.get $RuntimeException)) (then (i32.const 1)) (else (ref.test (ref $java.lang.RuntimeException) (local.get $RuntimeException)))) (then (i32.const 1)) (else (ref.test (ref $localnamecollision.package1.A) (local.get $RuntimeException)))) (then (i32.const 1)) (else (ref.test (ref $localnamecollision.package2.A) (local.get $RuntimeException)))) (then (i32.const 1)) (else (ref.test (ref $localnamecollision.Class) (local.get $RuntimeException)))))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/LocalNameCollision.java:36:4
  (if (call $m_areWasmAssertionsEnabled__boolean@javaemul.internal.Asserts )
   (then
    ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/LocalNameCollision.java:36:4
    (call $$assert__boolean__void@javaemul.internal.Asserts (i32.eq (block (result i32)
     (local.set $$qualifier (call $$create__@localnamecollision.Asserts ))
     (call_ref $function.m_n__int_$pp_localnamecollision (ref.as_non_null (local.get $$qualifier))(struct.get $localnamecollision.Asserts.vtable $m_n__int_$pp_localnamecollision (struct.get $localnamecollision.Asserts $vtable(local.get $$qualifier))))
    ) (i32.const 5)))
   )
  )
 )
)
(elem declare func $m_testClassLocalVarCollision__void@localnamecollision.LocalNameCollision)

;;; boolean LocalNameCollision.testClassParameterCollision(boolean LocalNameCollision, Object Asserts, Object $Asserts, int l_Asserts, int A)
(func $m_testClassParameterCollision__boolean__java_lang_Object__java_lang_Object__int__int__boolean@localnamecollision.LocalNameCollision
 (type $function.m_testClassParameterCollision__boolean__java_lang_Object__java_lang_Object__int__int__boolean)
 (param $this.untyped (ref $java.lang.Object))
 (param $LocalNameCollision i32)
 (param $Asserts (ref null $java.lang.Object))
 (param $$Asserts (ref null $java.lang.Object))
 (param $l_Asserts i32)
 (param $A i32)
 (result i32)
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/LocalNameCollision.java:39:17
 (local $this (ref null $localnamecollision.LocalNameCollision))
 (local.set $this (ref.cast (ref $localnamecollision.LocalNameCollision) (local.get $this.untyped)))
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/LocalNameCollision.java:41:4
  (return (if (result i32) (if (result i32) (if (result i32) (local.get $LocalNameCollision) (then (ref.test (ref $localnamecollision.LocalNameCollision) (local.get $Asserts))) (else (i32.const 0))) (then (ref.test (ref $localnamecollision.Asserts) (local.get $$Asserts))) (else (i32.const 0))) (then (i32.eq (local.get $l_Asserts) (local.get $A))) (else (i32.const 0))))
 )
)
(elem declare func $m_testClassParameterCollision__boolean__java_lang_Object__java_lang_Object__int__int__boolean@localnamecollision.LocalNameCollision)

;;; LocalNameCollision LocalNameCollision.$create(boolean LocalNameCollision, Object Asserts, Object $Asserts, int l_Asserts, int A)
(func $$create__boolean__java_lang_Object__java_lang_Object__int__int@localnamecollision.LocalNameCollision
 (param $LocalNameCollision i32)
 (param $Asserts (ref null $java.lang.Object))
 (param $$Asserts (ref null $java.lang.Object))
 (param $l_Asserts i32)
 (param $A i32)
 (result (ref null $localnamecollision.LocalNameCollision))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/LocalNameCollision.java:49:9
 (local $$instance (ref null $localnamecollision.LocalNameCollision))
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/LocalNameCollision.java:49:9
  (call $$clinit__void_<once>_@localnamecollision.LocalNameCollision )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/LocalNameCollision.java:49:9
  (local.set $$instance (struct.new $localnamecollision.LocalNameCollision (global.get $localnamecollision.LocalNameCollision.vtable) (global.get $itable.empty) (i32.const 0)))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/LocalNameCollision.java:49:9
  (call $$ctor__boolean__java_lang_Object__java_lang_Object__int__int__void_$p_localnamecollision_LocalNameCollision@localnamecollision.LocalNameCollision (ref.as_non_null (local.get $$instance))(local.get $LocalNameCollision)(local.get $Asserts)(local.get $$Asserts)(local.get $l_Asserts)(local.get $A))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/LocalNameCollision.java:49:9
  (return (local.get $$instance))
 )
)

;;; void LocalNameCollision.$ctor(boolean LocalNameCollision, Object Asserts, Object $Asserts, int l_Asserts, int A)
(func $$ctor__boolean__java_lang_Object__java_lang_Object__int__int__void_$p_localnamecollision_LocalNameCollision@localnamecollision.LocalNameCollision
 (param $this (ref null $localnamecollision.LocalNameCollision))
 (param $LocalNameCollision i32)
 (param $Asserts (ref null $java.lang.Object))
 (param $$Asserts (ref null $java.lang.Object))
 (param $l_Asserts i32)
 (param $A i32)
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/LocalNameCollision.java:49:9
 (local $result i32)
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/LocalNameCollision.java:50:89
  (call $$ctor__void_$p_java_lang_Object@java.lang.Object (ref.as_non_null (local.get $this)))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/LocalNameCollision.java:51:4
  (local.set $result (if (result i32) (if (result i32) (if (result i32) (local.get $LocalNameCollision) (then (ref.test (ref $localnamecollision.LocalNameCollision) (local.get $Asserts))) (else (i32.const 0))) (then (ref.test (ref $localnamecollision.Asserts) (local.get $$Asserts))) (else (i32.const 0))) (then (i32.eq (local.get $l_Asserts) (local.get $A))) (else (i32.const 0))))
 )
)

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

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

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

;;; Code for localnamecollision.A [methods]

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

;;; void A.$ctor()
(func $$ctor__void_$p_localnamecollision_A@localnamecollision.A
 (param $this (ref null $localnamecollision.A))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/LocalNameCollision.java:59:6
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/LocalNameCollision.java:59:6
  (call $$ctor__void_$p_java_lang_Object@java.lang.Object (ref.as_non_null (local.get $this)))
 )
)

;;; void A.test()
(func $m_test__void@localnamecollision.A
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/LocalNameCollision.java:65:14
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/LocalNameCollision.java:65:21
  (call $$clinit__void_<once>_@localnamecollision.A )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/LocalNameCollision.java:66:4
  (global.set $A@localnamecollision.A (global.get $A@localnamecollision.A))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/LocalNameCollision.java:67:4
  (global.set $B@localnamecollision.A (global.get $B@localnamecollision.A))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/LocalNameCollision.java:69:4
  (global.set $A@localnamecollision.A (global.get $A@localnamecollision.A))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/LocalNameCollision.java:70:4
  (global.set $B@localnamecollision.A (global.get $B@localnamecollision.A))
 )
)

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

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

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

;;; Code for localnamecollision.A.B [methods]

;;; B B.$create()
(func $$create__@localnamecollision.A.B
 (result (ref null $localnamecollision.A.B))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/LocalNameCollision.java:63:15
 (local $$instance (ref null $localnamecollision.A.B))
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/LocalNameCollision.java:63:15
  (call $$clinit__void_<once>_@localnamecollision.A.B )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/LocalNameCollision.java:63:15
  (local.set $$instance (struct.new $localnamecollision.A.B (global.get $localnamecollision.A.B.vtable) (global.get $itable.empty) (i32.const 0)))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/LocalNameCollision.java:63:15
  (call $$ctor__void_$p_localnamecollision_A_B@localnamecollision.A.B (ref.as_non_null (local.get $$instance)))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/LocalNameCollision.java:63:15
  (return (local.get $$instance))
 )
)

;;; void B.$ctor()
(func $$ctor__void_$p_localnamecollision_A_B@localnamecollision.A.B
 (param $this (ref null $localnamecollision.A.B))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/LocalNameCollision.java:63:15
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/LocalNameCollision.java:63:15
  (call $$ctor__void_$p_java_lang_Object@java.lang.Object (ref.as_non_null (local.get $this)))
 )
)

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

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

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

;;; Code for localnamecollision.package1.A [methods]

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

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

;;; int A.m()
(func $m_m__int@localnamecollision.package1.A
 (type $function.m_m__int)
 (param $this.untyped (ref $java.lang.Object))
 (result i32)
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/package1/A.java:19:13
 (local $this (ref null $localnamecollision.package1.A))
 (local.set $this (ref.cast (ref $localnamecollision.package1.A) (local.get $this.untyped)))
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/package1/A.java:20:4
  (return (i32.const 1))
 )
)
(elem declare func $m_m__int@localnamecollision.package1.A)

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

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

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

;;; Code for localnamecollision.package2.A [methods]

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

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

;;; int A.m()
(func $m_m__int@localnamecollision.package2.A
 (type $function.m_m__int)
 (param $this.untyped (ref $java.lang.Object))
 (result i32)
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/package2/A.java:19:13
 (local $this (ref null $localnamecollision.package2.A))
 (local.set $this (ref.cast (ref $localnamecollision.package2.A) (local.get $this.untyped)))
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/localnamecollision/readable-j2wasm.js/localnamecollision/package2/A.java:20:4
  (return (i32.const 2))
 )
)
(elem declare func $m_m__int@localnamecollision.package2.A)

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

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

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