;;; Code for synchronizedstatement.SynchronizedStatement [type definition]
(type $synchronizedstatement.SynchronizedStatement.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_testBreakAndContinue__void (ref $function.m_testBreakAndContinue__void))
 (field $m_testIfStatementWithNonVoidBodyWithoutElse__void (ref $function.m_testIfStatementWithNonVoidBodyWithoutElse__void))
 (field $m_testInitialization__int (ref $function.m_testInitialization__int))
 (field $m_testReturn__int (ref $function.m_testReturn__int))
 (field $m_testSynchronizedMethod__void (ref $function.m_testSynchronizedMethod__void))
 (field $m_testSynchronizedOnCustomMonitor__void (ref $function.m_testSynchronizedOnCustomMonitor__void))
 (field $m_testSynchronizedOnJ2ktMonitor__void (ref $function.m_testSynchronizedOnJ2ktMonitor__void))
 (field $m_testSynchronizedOnThis__void (ref $function.m_testSynchronizedOnThis__void))
 ))
)
(type $synchronizedstatement.SynchronizedStatement (sub $java.lang.Object (struct
 (field $vtable (ref $synchronizedstatement.SynchronizedStatement.vtable))
 (field $itable (ref $itable))
 (field $$systemIdentityHashCode@java.lang.Object (mut i32))
 (field $a@synchronizedstatement.SynchronizedStatement (mut i32))
 (field $b@synchronizedstatement.SynchronizedStatement (mut i32))
 (field $customMonitor@synchronizedstatement.SynchronizedStatement (mut (ref null $javaemul.lang.J2ktMonitor)))
 (field $j2ktMonitor@synchronizedstatement.SynchronizedStatement (mut (ref null $javaemul.lang.J2ktMonitor)))
 ))
)

;;; Code for synchronizedstatement.SynchronizedStatement.ExtendsSynchronized [type definition]
(type $synchronizedstatement.SynchronizedStatement.ExtendsSynchronized.vtable (sub $synchronizedstatement.SynchronizedStatement.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_testBreakAndContinue__void (ref $function.m_testBreakAndContinue__void))
 (field $m_testIfStatementWithNonVoidBodyWithoutElse__void (ref $function.m_testIfStatementWithNonVoidBodyWithoutElse__void))
 (field $m_testInitialization__int (ref $function.m_testInitialization__int))
 (field $m_testReturn__int (ref $function.m_testReturn__int))
 (field $m_testSynchronizedMethod__void (ref $function.m_testSynchronizedMethod__void))
 (field $m_testSynchronizedOnCustomMonitor__void (ref $function.m_testSynchronizedOnCustomMonitor__void))
 (field $m_testSynchronizedOnJ2ktMonitor__void (ref $function.m_testSynchronizedOnJ2ktMonitor__void))
 (field $m_testSynchronizedOnThis__void (ref $function.m_testSynchronizedOnThis__void))
 (field $m_foo__void_$pp_synchronizedstatement (ref $function.m_foo__void_$pp_synchronizedstatement))
 ))
)
(type $synchronizedstatement.SynchronizedStatement.ExtendsSynchronized (sub $synchronizedstatement.SynchronizedStatement (struct
 (field $vtable (ref $synchronizedstatement.SynchronizedStatement.ExtendsSynchronized.vtable))
 (field $itable (ref $itable))
 (field $$systemIdentityHashCode@java.lang.Object (mut i32))
 (field $a@synchronizedstatement.SynchronizedStatement (mut i32))
 (field $b@synchronizedstatement.SynchronizedStatement (mut i32))
 (field $customMonitor@synchronizedstatement.SynchronizedStatement (mut (ref null $javaemul.lang.J2ktMonitor)))
 (field $j2ktMonitor@synchronizedstatement.SynchronizedStatement (mut (ref null $javaemul.lang.J2ktMonitor)))
 ))
)

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

;;; Code for synchronizedstatement.SynchronizedStatement [imports]

;;; Code for synchronizedstatement.SynchronizedStatement.ExtendsSynchronized [imports]

;;; Code for synchronizedstatement.SynchronizedStatement.CustomMonitor [imports]

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

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

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

;;; Code for synchronizedstatement.SynchronizedStatement [vtable.init]
(global $synchronizedstatement.SynchronizedStatement.vtable (ref $synchronizedstatement.SynchronizedStatement.vtable)
 (struct.new $synchronizedstatement.SynchronizedStatement.vtable
  (ref.func $$getClassImpl__java_lang_Class@synchronizedstatement.SynchronizedStatement)
  (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_testBreakAndContinue__void@synchronizedstatement.SynchronizedStatement)
  (ref.func $m_testIfStatementWithNonVoidBodyWithoutElse__void@synchronizedstatement.SynchronizedStatement)
  (ref.func $m_testInitialization__int@synchronizedstatement.SynchronizedStatement)
  (ref.func $m_testReturn__int@synchronizedstatement.SynchronizedStatement)
  (ref.func $m_testSynchronizedMethod__void@synchronizedstatement.SynchronizedStatement)
  (ref.func $m_testSynchronizedOnCustomMonitor__void@synchronizedstatement.SynchronizedStatement)
  (ref.func $m_testSynchronizedOnJ2ktMonitor__void@synchronizedstatement.SynchronizedStatement)
  (ref.func $m_testSynchronizedOnThis__void@synchronizedstatement.SynchronizedStatement)
 )
)

;;; Code for synchronizedstatement.SynchronizedStatement.ExtendsSynchronized [vtable.init]
(global $synchronizedstatement.SynchronizedStatement.ExtendsSynchronized.vtable (ref $synchronizedstatement.SynchronizedStatement.ExtendsSynchronized.vtable)
 (struct.new $synchronizedstatement.SynchronizedStatement.ExtendsSynchronized.vtable
  (ref.func $$getClassImpl__java_lang_Class@synchronizedstatement.SynchronizedStatement.ExtendsSynchronized)
  (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_testBreakAndContinue__void@synchronizedstatement.SynchronizedStatement)
  (ref.func $m_testIfStatementWithNonVoidBodyWithoutElse__void@synchronizedstatement.SynchronizedStatement)
  (ref.func $m_testInitialization__int@synchronizedstatement.SynchronizedStatement)
  (ref.func $m_testReturn__int@synchronizedstatement.SynchronizedStatement)
  (ref.func $m_testSynchronizedMethod__void@synchronizedstatement.SynchronizedStatement)
  (ref.func $m_testSynchronizedOnCustomMonitor__void@synchronizedstatement.SynchronizedStatement)
  (ref.func $m_testSynchronizedOnJ2ktMonitor__void@synchronizedstatement.SynchronizedStatement)
  (ref.func $m_testSynchronizedOnThis__void@synchronizedstatement.SynchronizedStatement)
  (ref.func $m_foo__void_$pp_synchronizedstatement@synchronizedstatement.SynchronizedStatement.ExtendsSynchronized)
 )
)

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

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

;;; void SynchronizedStatement.$ctor()
(func $$ctor__void_$p_synchronizedstatement_SynchronizedStatement@synchronizedstatement.SynchronizedStatement
 (param $this (ref null $synchronizedstatement.SynchronizedStatement))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:21:13
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:21:13
  (call $$ctor__void_$p_java_lang_Object@java.lang.Object (ref.as_non_null (local.get $this)))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:21:13
  (call $$init__void_$p_synchronizedstatement_SynchronizedStatement@synchronizedstatement.SynchronizedStatement (ref.as_non_null (local.get $this)))
 )
)

;;; void SynchronizedStatement.testSynchronizedOnThis()
(func $m_testSynchronizedOnThis__void@synchronizedstatement.SynchronizedStatement
 (type $function.m_testSynchronizedOnThis__void)
 (param $this.untyped (ref $java.lang.Object))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:31:14
 (local $this (ref null $synchronizedstatement.SynchronizedStatement))
 (local.set $this (ref.cast (ref $synchronizedstatement.SynchronizedStatement) (local.get $this.untyped)))
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:32:4
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:32:4
  (drop (local.get $this))
  (block
   ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:33:6
   (struct.set $synchronizedstatement.SynchronizedStatement $a@synchronizedstatement.SynchronizedStatement (local.get $this) (i32.add (struct.get $synchronizedstatement.SynchronizedStatement $a@synchronizedstatement.SynchronizedStatement (local.get $this)) (i32.const 1)))
   ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:34:6
   (struct.set $synchronizedstatement.SynchronizedStatement $b@synchronizedstatement.SynchronizedStatement (local.get $this) (i32.sub (struct.get $synchronizedstatement.SynchronizedStatement $b@synchronizedstatement.SynchronizedStatement (local.get $this)) (i32.const 1)))
  )
 )
)
(elem declare func $m_testSynchronizedOnThis__void@synchronizedstatement.SynchronizedStatement)

;;; void SynchronizedStatement.testSynchronizedOnJ2ktMonitor()
(func $m_testSynchronizedOnJ2ktMonitor__void@synchronizedstatement.SynchronizedStatement
 (type $function.m_testSynchronizedOnJ2ktMonitor__void)
 (param $this.untyped (ref $java.lang.Object))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:38:14
 (local $this (ref null $synchronizedstatement.SynchronizedStatement))
 (local.set $this (ref.cast (ref $synchronizedstatement.SynchronizedStatement) (local.get $this.untyped)))
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:39:4
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:39:4
  (drop (struct.get $synchronizedstatement.SynchronizedStatement $j2ktMonitor@synchronizedstatement.SynchronizedStatement (local.get $this)))
  (block
   ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:40:6
   (struct.set $synchronizedstatement.SynchronizedStatement $a@synchronizedstatement.SynchronizedStatement (local.get $this) (i32.add (struct.get $synchronizedstatement.SynchronizedStatement $a@synchronizedstatement.SynchronizedStatement (local.get $this)) (i32.const 1)))
   ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:41:6
   (struct.set $synchronizedstatement.SynchronizedStatement $b@synchronizedstatement.SynchronizedStatement (local.get $this) (i32.sub (struct.get $synchronizedstatement.SynchronizedStatement $b@synchronizedstatement.SynchronizedStatement (local.get $this)) (i32.const 1)))
  )
 )
)
(elem declare func $m_testSynchronizedOnJ2ktMonitor__void@synchronizedstatement.SynchronizedStatement)

;;; void SynchronizedStatement.testSynchronizedOnCustomMonitor()
(func $m_testSynchronizedOnCustomMonitor__void@synchronizedstatement.SynchronizedStatement
 (type $function.m_testSynchronizedOnCustomMonitor__void)
 (param $this.untyped (ref $java.lang.Object))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:45:14
 (local $this (ref null $synchronizedstatement.SynchronizedStatement))
 (local.set $this (ref.cast (ref $synchronizedstatement.SynchronizedStatement) (local.get $this.untyped)))
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:46:4
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:46:4
  (drop (struct.get $synchronizedstatement.SynchronizedStatement $customMonitor@synchronizedstatement.SynchronizedStatement (local.get $this)))
  (block
   ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:47:6
   (struct.set $synchronizedstatement.SynchronizedStatement $a@synchronizedstatement.SynchronizedStatement (local.get $this) (i32.add (struct.get $synchronizedstatement.SynchronizedStatement $a@synchronizedstatement.SynchronizedStatement (local.get $this)) (i32.const 1)))
   ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:48:6
   (struct.set $synchronizedstatement.SynchronizedStatement $b@synchronizedstatement.SynchronizedStatement (local.get $this) (i32.sub (struct.get $synchronizedstatement.SynchronizedStatement $b@synchronizedstatement.SynchronizedStatement (local.get $this)) (i32.const 1)))
  )
 )
)
(elem declare func $m_testSynchronizedOnCustomMonitor__void@synchronizedstatement.SynchronizedStatement)

;;; void SynchronizedStatement.testSynchronizedMethod()
(func $m_testSynchronizedMethod__void@synchronizedstatement.SynchronizedStatement
 (type $function.m_testSynchronizedMethod__void)
 (param $this.untyped (ref $java.lang.Object))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:52:27
 (local $this (ref null $synchronizedstatement.SynchronizedStatement))
 (local.set $this (ref.cast (ref $synchronizedstatement.SynchronizedStatement) (local.get $this.untyped)))
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:53:4
  (struct.set $synchronizedstatement.SynchronizedStatement $a@synchronizedstatement.SynchronizedStatement (local.get $this) (i32.add (struct.get $synchronizedstatement.SynchronizedStatement $a@synchronizedstatement.SynchronizedStatement (local.get $this)) (i32.const 1)))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:54:4
  (struct.set $synchronizedstatement.SynchronizedStatement $b@synchronizedstatement.SynchronizedStatement (local.get $this) (i32.sub (struct.get $synchronizedstatement.SynchronizedStatement $b@synchronizedstatement.SynchronizedStatement (local.get $this)) (i32.const 1)))
 )
)
(elem declare func $m_testSynchronizedMethod__void@synchronizedstatement.SynchronizedStatement)

;;; void SynchronizedStatement.testSynchronizedOnClass()
(func $m_testSynchronizedOnClass__void@synchronizedstatement.SynchronizedStatement
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:57:21
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:57:47
  (call $$clinit__void_<once>_@synchronizedstatement.SynchronizedStatement )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:58:4
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:58:4
  (drop (call $$getClassMetadata__java_lang_Class_<once>_@synchronizedstatement.SynchronizedStatement ))
  (block
   ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:59:6
   (global.set $staticA@synchronizedstatement.SynchronizedStatement (i32.add (global.get $staticA@synchronizedstatement.SynchronizedStatement) (i32.const 1)))
   ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:60:6
   (global.set $staticB@synchronizedstatement.SynchronizedStatement (i32.sub (global.get $staticB@synchronizedstatement.SynchronizedStatement) (i32.const 1)))
  )
 )
)

;;; void SynchronizedStatement.testSynchronizedStaticMethod()
(func $m_testSynchronizedStaticMethod__void@synchronizedstatement.SynchronizedStatement
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:64:34
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:64:65
  (call $$clinit__void_<once>_@synchronizedstatement.SynchronizedStatement )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:65:4
  (global.set $staticA@synchronizedstatement.SynchronizedStatement (i32.add (global.get $staticA@synchronizedstatement.SynchronizedStatement) (i32.const 1)))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:66:4
  (global.set $staticB@synchronizedstatement.SynchronizedStatement (i32.sub (global.get $staticB@synchronizedstatement.SynchronizedStatement) (i32.const 1)))
 )
)

;;; int SynchronizedStatement.testReturn()
(func $m_testReturn__int@synchronizedstatement.SynchronizedStatement
 (type $function.m_testReturn__int)
 (param $this.untyped (ref $java.lang.Object))
 (result i32)
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:69:13
 (local $$value i32)
 (local $$value_1 i32)
 (local $this (ref null $synchronizedstatement.SynchronizedStatement))
 (local.set $this (ref.cast (ref $synchronizedstatement.SynchronizedStatement) (local.get $this.untyped)))
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:70:4
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:70:4
  (drop (local.get $this))
  (block
   ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:71:6
   (if (i32.lt_s (struct.get $synchronizedstatement.SynchronizedStatement $a@synchronizedstatement.SynchronizedStatement (local.get $this)) (i32.const 10))
    (then
     (block
      ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:72:8
      (return (block (result i32)
       (local.set $$value (struct.get $synchronizedstatement.SynchronizedStatement $a@synchronizedstatement.SynchronizedStatement (local.get $this)))
       (struct.set $synchronizedstatement.SynchronizedStatement $a@synchronizedstatement.SynchronizedStatement (local.get $this) (i32.add (struct.get $synchronizedstatement.SynchronizedStatement $a@synchronizedstatement.SynchronizedStatement (local.get $this)) (i32.const 1)))
       (local.get $$value)
      ))
     )
    )
   )
  )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:75:4
  (return (block (result i32)
   (local.set $$value_1 (struct.get $synchronizedstatement.SynchronizedStatement $b@synchronizedstatement.SynchronizedStatement (local.get $this)))
   (struct.set $synchronizedstatement.SynchronizedStatement $b@synchronizedstatement.SynchronizedStatement (local.get $this) (i32.sub (struct.get $synchronizedstatement.SynchronizedStatement $b@synchronizedstatement.SynchronizedStatement (local.get $this)) (i32.const 1)))
   (local.get $$value_1)
  ))
 )
)
(elem declare func $m_testReturn__int@synchronizedstatement.SynchronizedStatement)

;;; void SynchronizedStatement.testBreakAndContinue()
(func $m_testBreakAndContinue__void@synchronizedstatement.SynchronizedStatement
 (type $function.m_testBreakAndContinue__void)
 (param $this.untyped (ref $java.lang.Object))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:80:27
 (local $this (ref null $synchronizedstatement.SynchronizedStatement))
 (local.set $this (ref.cast (ref $synchronizedstatement.SynchronizedStatement) (local.get $this.untyped)))
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:81:4
  (block $LOOP.BREAK
   (loop
    (block $LOOP.CONTINUE
     (block
      ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:82:6
      ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:82:6
      (drop (local.get $this))
      (block
       ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:83:8
       (if (i32.lt_s (struct.get $synchronizedstatement.SynchronizedStatement $a@synchronizedstatement.SynchronizedStatement (local.get $this)) (i32.const 10))
        (then
         (block
          ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:84:10
          (struct.set $synchronizedstatement.SynchronizedStatement $a@synchronizedstatement.SynchronizedStatement (local.get $this) (i32.add (struct.get $synchronizedstatement.SynchronizedStatement $a@synchronizedstatement.SynchronizedStatement (local.get $this)) (i32.const 1)))
          ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:85:10
          (br $LOOP.CONTINUE)
         )
        )
       )
       ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:87:8
       (br $LOOP.BREAK)
      )
     )
    )
    (br 0)
   )
  )
 )
)
(elem declare func $m_testBreakAndContinue__void@synchronizedstatement.SynchronizedStatement)

;;; int SynchronizedStatement.testInitialization()
(func $m_testInitialization__int@synchronizedstatement.SynchronizedStatement
 (type $function.m_testInitialization__int)
 (param $this.untyped (ref $java.lang.Object))
 (result i32)
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:92:13
 (local $a i32)
 (local $this (ref null $synchronizedstatement.SynchronizedStatement))
 (local.set $this (ref.cast (ref $synchronizedstatement.SynchronizedStatement) (local.get $this.untyped)))
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:93:4
  
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:94:4
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:94:4
  (drop (local.get $this))
  (block
   ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:95:6
   (local.set $a (i32.const 0))
  )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:98:4
  (return (local.get $a))
 )
)
(elem declare func $m_testInitialization__int@synchronizedstatement.SynchronizedStatement)

;;; void SynchronizedStatement.testIfStatementWithNonVoidBodyWithoutElse()
(func $m_testIfStatementWithNonVoidBodyWithoutElse__void@synchronizedstatement.SynchronizedStatement
 (type $function.m_testIfStatementWithNonVoidBodyWithoutElse__void)
 (param $this.untyped (ref $java.lang.Object))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:101:14
 (local $this (ref null $synchronizedstatement.SynchronizedStatement))
 (local.set $this (ref.cast (ref $synchronizedstatement.SynchronizedStatement) (local.get $this.untyped)))
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:102:4
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:102:4
  (drop (local.get $this))
  (block
   ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:103:6
   (if (i32.lt_s (struct.get $synchronizedstatement.SynchronizedStatement $a@synchronizedstatement.SynchronizedStatement (local.get $this)) (i32.const 10))
    (then
     (block
      ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:104:8
      (drop (call $m_intMethod__int_$p_synchronizedstatement_SynchronizedStatement@synchronizedstatement.SynchronizedStatement (ref.as_non_null (local.get $this))))
     )
    )(else
     ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:105:13
     (if (i32.lt_s (struct.get $synchronizedstatement.SynchronizedStatement $b@synchronizedstatement.SynchronizedStatement (local.get $this)) (i32.const 10))
      (then
       (block
        ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:106:8
        (drop (call $m_intMethod__int_$p_synchronizedstatement_SynchronizedStatement@synchronizedstatement.SynchronizedStatement (ref.as_non_null (local.get $this))))
       )
      )
     )
    )
   )
  )
 )
)
(elem declare func $m_testIfStatementWithNonVoidBodyWithoutElse__void@synchronizedstatement.SynchronizedStatement)

;;; int SynchronizedStatement.intMethod()
(func $m_intMethod__int_$p_synchronizedstatement_SynchronizedStatement@synchronizedstatement.SynchronizedStatement
 (param $this (ref null $synchronizedstatement.SynchronizedStatement))
 (result i32)
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:111:14
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:112:4
  (return (i32.const 0))
 )
)

;;; void SynchronizedStatement.$init()
(func $$init__void_$p_synchronizedstatement_SynchronizedStatement@synchronizedstatement.SynchronizedStatement
 (param $this (ref null $synchronizedstatement.SynchronizedStatement))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:21:13
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:28:2
  (struct.set $synchronizedstatement.SynchronizedStatement $j2ktMonitor@synchronizedstatement.SynchronizedStatement (local.get $this) (call $$create__@javaemul.lang.J2ktMonitor ))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:29:2
  (struct.set $synchronizedstatement.SynchronizedStatement $customMonitor@synchronizedstatement.SynchronizedStatement (local.get $this) (call $$create__@synchronizedstatement.SynchronizedStatement.CustomMonitor ))
 )
)

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

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

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

;;; Code for synchronizedstatement.SynchronizedStatement.ExtendsSynchronized [methods]

;;; ExtendsSynchronized ExtendsSynchronized.$create()
(func $$create__@synchronizedstatement.SynchronizedStatement.ExtendsSynchronized
 (result (ref null $synchronizedstatement.SynchronizedStatement.ExtendsSynchronized))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:115:22
 (local $$instance (ref null $synchronizedstatement.SynchronizedStatement.ExtendsSynchronized))
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:115:22
  (call $$clinit__void_<once>_@synchronizedstatement.SynchronizedStatement.ExtendsSynchronized )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:115:22
  (local.set $$instance (struct.new $synchronizedstatement.SynchronizedStatement.ExtendsSynchronized (global.get $synchronizedstatement.SynchronizedStatement.ExtendsSynchronized.vtable) (global.get $itable.empty) (i32.const 0) (i32.const 0) (i32.const 0) (ref.null $javaemul.lang.J2ktMonitor) (ref.null $javaemul.lang.J2ktMonitor)))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:115:22
  (call $$ctor__void_$p_synchronizedstatement_SynchronizedStatement_ExtendsSynchronized@synchronizedstatement.SynchronizedStatement.ExtendsSynchronized (ref.as_non_null (local.get $$instance)))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:115:22
  (return (local.get $$instance))
 )
)

;;; void ExtendsSynchronized.$ctor()
(func $$ctor__void_$p_synchronizedstatement_SynchronizedStatement_ExtendsSynchronized@synchronizedstatement.SynchronizedStatement.ExtendsSynchronized
 (param $this (ref null $synchronizedstatement.SynchronizedStatement.ExtendsSynchronized))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:115:22
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:115:22
  (call $$ctor__void_$p_synchronizedstatement_SynchronizedStatement@synchronizedstatement.SynchronizedStatement (ref.as_non_null (local.get $this)))
 )
)

;;; void ExtendsSynchronized.foo()
(func $m_foo__void_$pp_synchronizedstatement@synchronizedstatement.SynchronizedStatement.ExtendsSynchronized
 (type $function.m_foo__void_$pp_synchronizedstatement)
 (param $this.untyped (ref $java.lang.Object))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:116:22
 (local $this (ref null $synchronizedstatement.SynchronizedStatement.ExtendsSynchronized))
 (local.set $this (ref.cast (ref $synchronizedstatement.SynchronizedStatement.ExtendsSynchronized) (local.get $this.untyped)))
 (block
 )
)
(elem declare func $m_foo__void_$pp_synchronizedstatement@synchronizedstatement.SynchronizedStatement.ExtendsSynchronized)

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

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

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

;;; Code for synchronizedstatement.SynchronizedStatement.CustomMonitor [methods]

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

;;; void CustomMonitor.$ctor()
(func $$ctor__void_$p_synchronizedstatement_SynchronizedStatement_CustomMonitor@synchronizedstatement.SynchronizedStatement.CustomMonitor
 (param $this (ref null $synchronizedstatement.SynchronizedStatement.CustomMonitor))
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:119:22
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:119:22
  (call $$ctor__void_$p_javaemul_lang_J2ktMonitor@javaemul.lang.J2ktMonitor (ref.as_non_null (local.get $this)))
 )
)

;;; void CustomMonitor.$clinit()
(func $$clinit__void_<once>_@synchronizedstatement.SynchronizedStatement.CustomMonitor
 ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:119:22
 (block
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:119:22
  (if (global.get $$class-initialized@synchronizedstatement.SynchronizedStatement.CustomMonitor)
   (then
    ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:119:22
    (return )
   )
  )
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:119:22
  (global.set $$class-initialized@synchronizedstatement.SynchronizedStatement.CustomMonitor (i32.const 1))
  ;;@ transpiler/javatests/com/google/j2cl/readable/java/synchronizedstatement/readable-j2wasm.js/synchronizedstatement/SynchronizedStatement.java:119:22
  (call $$clinit__void_<once>_@javaemul.lang.J2ktMonitor )
 )
)

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

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