public class HelloWorld extends java.lang.Object: public void (): ALOAD_0 // LHelloWorld; this (line 5) INVOKESPECIAL java.lang.Object. ()V constructor-execution(void HelloWorld.()) | INVOKESTATIC Aspect.ajc_before_constructor_execution ()V | ICONST_1 | ANEWARRAY java.lang.Object | ASTORE_2 | ALOAD_2 | ICONST_0 | ALOAD_0 | AASTORE | NEW HelloWorld$AjcClosure3 | DUP | ALOAD_2 | INVOKESPECIAL HelloWorld$AjcClosure3. ([Ljava/lang/Object;)V | INVOKESTATIC Aspect.ajc_around (Lorg/aspectj/runtime/internal/AroundClosure;)Ljava/lang/Object; | POP | RETURN constructor-execution(void HelloWorld.()) end public void () public static void main(String[]): ALOAD_0 ASTORE 7 method-execution(void HelloWorld.main(java.lang.String[])) | INVOKESTATIC Aspect.ajc_before_method_execution ()V (line 8) | ICONST_1 | ANEWARRAY java.lang.Object | ASTORE 9 | ALOAD 9 | ICONST_0 | ALOAD 7 | AASTORE | NEW HelloWorld$AjcClosure15 | DUP | ALOAD 9 | INVOKESPECIAL HelloWorld$AjcClosure15. ([Ljava/lang/Object;)V | INVOKESTATIC Aspect.ajc_around (Lorg/aspectj/runtime/internal/AroundClosure;)Ljava/lang/Object; | POP | RETURN method-execution(void HelloWorld.main(java.lang.String[])) end public static void main(String[]) static final void init$_aroundBody0(HelloWorld): RETURN (line 5) end static final void init$_aroundBody0(HelloWorld) static final void init$_aroundBody2(HelloWorld): INVOKESTATIC Aspect.ajc_before_constructor_execution ()V ICONST_1 ANEWARRAY java.lang.Object ASTORE_1 ALOAD_1 ICONST_0 ALOAD_0 AASTORE NEW HelloWorld$AjcClosure1 DUP ALOAD_1 INVOKESPECIAL HelloWorld$AjcClosure1. ([Ljava/lang/Object;)V INVOKESTATIC Aspect.ajc_around (Lorg/aspectj/runtime/internal/AroundClosure;)Ljava/lang/Object; POP RETURN end static final void init$_aroundBody2(HelloWorld) static final java.io.PrintStream out_aroundBody4(): GETSTATIC java.lang.System.out Ljava/io/PrintStream; (line 8) ARETURN end static final java.io.PrintStream out_aroundBody4() static final java.io.PrintStream out_aroundBody6(): INVOKESTATIC Aspect.ajc_before_field_get ()V ICONST_0 ANEWARRAY java.lang.Object ASTORE_0 NEW HelloWorld$AjcClosure5 DUP ALOAD_0 INVOKESPECIAL HelloWorld$AjcClosure5. ([Ljava/lang/Object;)V INVOKESTATIC Aspect.ajc_around (Lorg/aspectj/runtime/internal/AroundClosure;)Ljava/lang/Object; CHECKCAST java.io.PrintStream ARETURN end static final java.io.PrintStream out_aroundBody6() static final void println_aroundBody8(java.io.PrintStream, String): ALOAD_0 ALOAD_1 INVOKEVIRTUAL java.io.PrintStream.println (Ljava/lang/String;)V (line 9) RETURN end static final void println_aroundBody8(java.io.PrintStream, String) static final void println_aroundBody10(java.io.PrintStream, String): INVOKESTATIC Aspect.ajc_before_method_call ()V ICONST_2 ANEWARRAY java.lang.Object ASTORE_2 ALOAD_2 ICONST_0 ALOAD_0 AASTORE ALOAD_2 ICONST_1 ALOAD_1 AASTORE NEW HelloWorld$AjcClosure9 DUP ALOAD_2 INVOKESPECIAL HelloWorld$AjcClosure9. ([Ljava/lang/Object;)V INVOKESTATIC Aspect.ajc_around (Lorg/aspectj/runtime/internal/AroundClosure;)Ljava/lang/Object; POP RETURN end static final void println_aroundBody10(java.io.PrintStream, String) static final void main_aroundBody12(String[]): field-get(java.io.PrintStream java.lang.System.out) | INVOKESTATIC Aspect.ajc_before_field_get ()V | ICONST_0 | ANEWARRAY java.lang.Object | ASTORE_1 | NEW HelloWorld$AjcClosure7 | DUP | ALOAD_1 | INVOKESPECIAL HelloWorld$AjcClosure7. ([Ljava/lang/Object;)V | INVOKESTATIC Aspect.ajc_around (Lorg/aspectj/runtime/internal/AroundClosure;)Ljava/lang/Object; | CHECKCAST java.io.PrintStream field-get(java.io.PrintStream java.lang.System.out) LDC "hello world" (line 9) ASTORE_3 ASTORE 5 method-call(void java.io.PrintStream.println(java.lang.String)) | INVOKESTATIC Aspect.ajc_before_method_call ()V | ICONST_2 | ANEWARRAY java.lang.Object | ASTORE 7 | ALOAD 7 | ICONST_0 | ALOAD 5 | AASTORE | ALOAD 7 | ICONST_1 | ALOAD_3 | AASTORE | NEW HelloWorld$AjcClosure11 | DUP | ALOAD 7 | INVOKESPECIAL HelloWorld$AjcClosure11. ([Ljava/lang/Object;)V | INVOKESTATIC Aspect.ajc_around (Lorg/aspectj/runtime/internal/AroundClosure;)Ljava/lang/Object; | POP method-call(void java.io.PrintStream.println(java.lang.String)) RETURN (line 11) end static final void main_aroundBody12(String[]) static final void main_aroundBody14(String[]): INVOKESTATIC Aspect.ajc_before_method_execution ()V (line 8) ICONST_1 ANEWARRAY java.lang.Object ASTORE_1 ALOAD_1 ICONST_0 ALOAD_0 AASTORE NEW HelloWorld$AjcClosure13 DUP ALOAD_1 INVOKESPECIAL HelloWorld$AjcClosure13. ([Ljava/lang/Object;)V INVOKESTATIC Aspect.ajc_around (Lorg/aspectj/runtime/internal/AroundClosure;)Ljava/lang/Object; POP RETURN end static final void main_aroundBody14(String[]) end public class HelloWorld public class HelloWorld$AjcClosure1 extends org.aspectj.runtime.internal.AroundClosure: public void (Object[]): ALOAD_0 ALOAD_1 INVOKESPECIAL org.aspectj.runtime.internal.AroundClosure. ([Ljava/lang/Object;)V RETURN end public void (Object[]) public Object run(Object[]): ALOAD_0 GETFIELD org.aspectj.runtime.internal.AroundClosure.state [Ljava/lang/Object; ASTORE_2 ALOAD_2 ICONST_0 AALOAD CHECKCAST HelloWorld INVOKESTATIC HelloWorld.init$_aroundBody0 (LHelloWorld;)V ACONST_NULL ARETURN end public Object run(Object[]) end public class HelloWorld$AjcClosure1 public class HelloWorld$AjcClosure3 extends org.aspectj.runtime.internal.AroundClosure: public void (Object[]): ALOAD_0 ALOAD_1 INVOKESPECIAL org.aspectj.runtime.internal.AroundClosure. ([Ljava/lang/Object;)V RETURN end public void (Object[]) public Object run(Object[]): ALOAD_0 GETFIELD org.aspectj.runtime.internal.AroundClosure.state [Ljava/lang/Object; ASTORE_2 ALOAD_2 ICONST_0 AALOAD CHECKCAST HelloWorld INVOKESTATIC HelloWorld.init$_aroundBody2 (LHelloWorld;)V ACONST_NULL ARETURN end public Object run(Object[]) end public class HelloWorld$AjcClosure3 public class HelloWorld$AjcClosure5 extends org.aspectj.runtime.internal.AroundClosure: public void (Object[]): ALOAD_0 ALOAD_1 INVOKESPECIAL org.aspectj.runtime.internal.AroundClosure. ([Ljava/lang/Object;)V RETURN end public void (Object[]) public Object run(Object[]): ALOAD_0 GETFIELD org.aspectj.runtime.internal.AroundClosure.state [Ljava/lang/Object; ASTORE_2 INVOKESTATIC HelloWorld.out_aroundBody4 ()Ljava/io/PrintStream; ARETURN end public Object run(Object[]) end public class HelloWorld$AjcClosure5 public class HelloWorld$AjcClosure7 extends org.aspectj.runtime.internal.AroundClosure: public void (Object[]): ALOAD_0 ALOAD_1 INVOKESPECIAL org.aspectj.runtime.internal.AroundClosure. ([Ljava/lang/Object;)V RETURN end public void (Object[]) public Object run(Object[]): ALOAD_0 GETFIELD org.aspectj.runtime.internal.AroundClosure.state [Ljava/lang/Object; ASTORE_2 INVOKESTATIC HelloWorld.out_aroundBody6 ()Ljava/io/PrintStream; ARETURN end public Object run(Object[]) end public class HelloWorld$AjcClosure7 public class HelloWorld$AjcClosure9 extends org.aspectj.runtime.internal.AroundClosure: public void (Object[]): ALOAD_0 ALOAD_1 INVOKESPECIAL org.aspectj.runtime.internal.AroundClosure. ([Ljava/lang/Object;)V RETURN end public void (Object[]) public Object run(Object[]): ALOAD_0 GETFIELD org.aspectj.runtime.internal.AroundClosure.state [Ljava/lang/Object; ASTORE_2 ALOAD_2 ICONST_0 AALOAD CHECKCAST java.io.PrintStream ALOAD_2 ICONST_1 AALOAD CHECKCAST java.lang.String INVOKESTATIC HelloWorld.println_aroundBody8 (Ljava/io/PrintStream;Ljava/lang/String;)V ACONST_NULL ARETURN end public Object run(Object[]) end public class HelloWorld$AjcClosure9 public class HelloWorld$AjcClosure11 extends org.aspectj.runtime.internal.AroundClosure: public void (Object[]): ALOAD_0 ALOAD_1 INVOKESPECIAL org.aspectj.runtime.internal.AroundClosure. ([Ljava/lang/Object;)V RETURN end public void (Object[]) public Object run(Object[]): ALOAD_0 GETFIELD org.aspectj.runtime.internal.AroundClosure.state [Ljava/lang/Object; ASTORE_2 ALOAD_2 ICONST_0 AALOAD CHECKCAST java.io.PrintStream ALOAD_2 ICONST_1 AALOAD CHECKCAST java.lang.String INVOKESTATIC HelloWorld.println_aroundBody10 (Ljava/io/PrintStream;Ljava/lang/String;)V ACONST_NULL ARETURN end public Object run(Object[]) end public class HelloWorld$AjcClosure11 public class HelloWorld$AjcClosure13 extends org.aspectj.runtime.internal.AroundClosure: public void (Object[]): ALOAD_0 ALOAD_1 INVOKESPECIAL org.aspectj.runtime.internal.AroundClosure. ([Ljava/lang/Object;)V RETURN end public void (Object[]) public Object run(Object[]): ALOAD_0 GETFIELD org.aspectj.runtime.internal.AroundClosure.state [Ljava/lang/Object; ASTORE_2 ALOAD_2 ICONST_0 AALOAD CHECKCAST [Ljava.lang.String; INVOKESTATIC HelloWorld.main_aroundBody12 ([Ljava/lang/String;)V ACONST_NULL ARETURN end public Object run(Object[]) end public class HelloWorld$AjcClosure13 public class HelloWorld$AjcClosure15 extends org.aspectj.runtime.internal.AroundClosure: public void (Object[]): ALOAD_0 ALOAD_1 INVOKESPECIAL org.aspectj.runtime.internal.AroundClosure. ([Ljava/lang/Object;)V RETURN end public void (Object[]) public Object run(Object[]): ALOAD_0 GETFIELD org.aspectj.runtime.internal.AroundClosure.state [Ljava/lang/Object; ASTORE_2 ALOAD_2 ICONST_0 AALOAD CHECKCAST [Ljava.lang.String; INVOKESTATIC HelloWorld.main_aroundBody14 ([Ljava/lang/String;)V ACONST_NULL ARETURN end public Object run(Object[]) end public class HelloWorld$AjcClosure15