public class org.aspectj.weaver.loadtime.ConcreteAspectCodeGen
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.aspectj.weaver.loadtime.ConcreteAspectCodeGen
  super_class: java.lang.Object
{
  private static final java.lang.String[] EMPTY_STRINGS;
    descriptor: [Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final org.aspectj.apache.bcel.generic.Type[] EMPTY_TYPES;
    descriptor: [Lorg/aspectj/apache/bcel/generic/Type;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private final org.aspectj.weaver.loadtime.definition.Definition$ConcreteAspect concreteAspect;
    descriptor: Lorg/aspectj/weaver/loadtime/definition/Definition$ConcreteAspect;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.aspectj.weaver.World world;
    descriptor: Lorg/aspectj/weaver/World;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private boolean isValid;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private org.aspectj.weaver.ResolvedType parent;
    descriptor: Lorg/aspectj/weaver/ResolvedType;
    flags: (0x0002) ACC_PRIVATE

  private org.aspectj.weaver.patterns.PerClause perclause;
    descriptor: Lorg/aspectj/weaver/patterns/PerClause;
    flags: (0x0002) ACC_PRIVATE

  private byte[] bytes;
    descriptor: [B
    flags: (0x0002) ACC_PRIVATE

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 78
            iconst_0
            anewarray java.lang.String
            putstatic org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.EMPTY_STRINGS:[Ljava/lang/String;
         1: .line 79
            iconst_0
            anewarray org.aspectj.apache.bcel.generic.Type
            putstatic org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.EMPTY_TYPES:[Lorg/aspectj/apache/bcel/generic/Type;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  void <init>(org.aspectj.weaver.loadtime.definition.Definition$ConcreteAspect, org.aspectj.weaver.World);
    descriptor: (Lorg/aspectj/weaver/loadtime/definition/Definition$ConcreteAspect;Lorg/aspectj/weaver/World;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.aspectj.weaver.loadtime.ConcreteAspectCodeGen this
        start local 1 // org.aspectj.weaver.loadtime.definition.Definition$ConcreteAspect concreteAspect
        start local 2 // org.aspectj.weaver.World world
         0: .line 117
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 94
            aload 0 /* this */
            iconst_0
            putfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.isValid:Z
         2: .line 118
            aload 0 /* this */
            aload 1 /* concreteAspect */
            putfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.concreteAspect:Lorg/aspectj/weaver/loadtime/definition/Definition$ConcreteAspect;
         3: .line 119
            aload 0 /* this */
            aload 2 /* world */
            putfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.world:Lorg/aspectj/weaver/World;
         4: .line 120
            return
        end local 2 // org.aspectj.weaver.World world
        end local 1 // org.aspectj.weaver.loadtime.definition.Definition$ConcreteAspect concreteAspect
        end local 0 // org.aspectj.weaver.loadtime.ConcreteAspectCodeGen this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    5     0            this  Lorg/aspectj/weaver/loadtime/ConcreteAspectCodeGen;
            0    5     1  concreteAspect  Lorg/aspectj/weaver/loadtime/definition/Definition$ConcreteAspect;
            0    5     2           world  Lorg/aspectj/weaver/World;
    MethodParameters:
                Name  Flags
      concreteAspect  
      world           

  public boolean validate();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=8, args_size=1
        start local 0 // org.aspectj.weaver.loadtime.ConcreteAspectCodeGen this
         0: .line 128
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.world:Lorg/aspectj/weaver/World;
            instanceof org.aspectj.weaver.bcel.BcelWorld
            ifne 3
         1: .line 129
            aload 0 /* this */
            ldc "Internal error: world must be of type BcelWorld"
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.reportError:(Ljava/lang/String;)V
         2: .line 130
            iconst_0
            ireturn
         3: .line 135
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.world:Lorg/aspectj/weaver/World;
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.concreteAspect:Lorg/aspectj/weaver/loadtime/definition/Definition$ConcreteAspect;
            getfield org.aspectj.weaver.loadtime.definition.Definition$ConcreteAspect.name:Ljava/lang/String;
            invokestatic org.aspectj.weaver.UnresolvedType.forName:(Ljava/lang/String;)Lorg/aspectj/weaver/UnresolvedType;
            invokevirtual org.aspectj.weaver.UnresolvedType.getSignature:()Ljava/lang/String;
            invokevirtual org.aspectj.weaver.World.lookupBySignature:(Ljava/lang/String;)Lorg/aspectj/weaver/ReferenceType;
            astore 1 /* current */
        start local 1 // org.aspectj.weaver.ResolvedType current
         4: .line 137
            aload 1 /* current */
            ifnull 7
            aload 1 /* current */
            invokevirtual org.aspectj.weaver.ResolvedType.isMissing:()Z
            ifne 7
         5: .line 138
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "Attempt to concretize but chosen aspect name already defined: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.stringify:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.reportError:(Ljava/lang/String;)V
         6: .line 139
            iconst_0
            ireturn
         7: .line 142
      StackMap locals: org.aspectj.weaver.ResolvedType
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.concreteAspect:Lorg/aspectj/weaver/loadtime/definition/Definition$ConcreteAspect;
            getfield org.aspectj.weaver.loadtime.definition.Definition$ConcreteAspect.pointcutsAndAdvice:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            ifeq 10
         8: .line 143
            aload 0 /* this */
            iconst_1
            putfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.isValid:Z
         9: .line 144
            iconst_1
            ireturn
        10: .line 147
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.concreteAspect:Lorg/aspectj/weaver/loadtime/definition/Definition$ConcreteAspect;
            getfield org.aspectj.weaver.loadtime.definition.Definition$ConcreteAspect.declareAnnotations:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            ifeq 13
        11: .line 148
            aload 0 /* this */
            iconst_1
            putfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.isValid:Z
        12: .line 149
            iconst_1
            ireturn
        13: .line 153
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.concreteAspect:Lorg/aspectj/weaver/loadtime/definition/Definition$ConcreteAspect;
            getfield org.aspectj.weaver.loadtime.definition.Definition$ConcreteAspect.extend:Ljava/lang/String;
            ifnonnull 20
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.concreteAspect:Lorg/aspectj/weaver/loadtime/definition/Definition$ConcreteAspect;
            getfield org.aspectj.weaver.loadtime.definition.Definition$ConcreteAspect.precedence:Ljava/lang/String;
            ifnull 20
        14: .line 154
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.concreteAspect:Lorg/aspectj/weaver/loadtime/definition/Definition$ConcreteAspect;
            getfield org.aspectj.weaver.loadtime.definition.Definition$ConcreteAspect.pointcuts:Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 18
        15: .line 155
            aload 0 /* this */
            iconst_1
            putfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.isValid:Z
        16: .line 157
            aload 0 /* this */
            aconst_null
            putfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.parent:Lorg/aspectj/weaver/ResolvedType;
        17: .line 158
            iconst_1
            ireturn
        18: .line 160
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "Attempt to use nested pointcuts without extends clause: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.stringify:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.reportError:(Ljava/lang/String;)V
        19: .line 161
            iconst_0
            ireturn
        20: .line 165
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.concreteAspect:Lorg/aspectj/weaver/loadtime/definition/Definition$ConcreteAspect;
            getfield org.aspectj.weaver.loadtime.definition.Definition$ConcreteAspect.extend:Ljava/lang/String;
            astore 2 /* parentAspectName */
        start local 2 // java.lang.String parentAspectName
        21: .line 167
            aload 2 /* parentAspectName */
            ldc "<"
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            iconst_m1
            if_icmpeq 37
        22: .line 169
            aload 0 /* this */
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.world:Lorg/aspectj/weaver/World;
            aload 2 /* parentAspectName */
            invokestatic org.aspectj.weaver.UnresolvedType.forName:(Ljava/lang/String;)Lorg/aspectj/weaver/UnresolvedType;
            iconst_1
            invokevirtual org.aspectj.weaver.World.resolve:(Lorg/aspectj/weaver/UnresolvedType;Z)Lorg/aspectj/weaver/ResolvedType;
            putfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.parent:Lorg/aspectj/weaver/ResolvedType;
        23: .line 170
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.parent:Lorg/aspectj/weaver/ResolvedType;
            invokevirtual org.aspectj.weaver.ResolvedType.isMissing:()Z
            ifeq 26
        24: .line 171
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "Unable to resolve type reference: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.stringify:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.reportError:(Ljava/lang/String;)V
        25: .line 172
            iconst_0
            ireturn
        26: .line 174
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.parent:Lorg/aspectj/weaver/ResolvedType;
            invokevirtual org.aspectj.weaver.ResolvedType.isParameterizedType:()Z
            ifeq 38
        27: .line 175
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.parent:Lorg/aspectj/weaver/ResolvedType;
            invokevirtual org.aspectj.weaver.ResolvedType.getTypeParameters:()[Lorg/aspectj/weaver/UnresolvedType;
            astore 3 /* typeParameters */
        start local 3 // org.aspectj.weaver.UnresolvedType[] typeParameters
        28: .line 176
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        29: goto 35
        30: .line 177
      StackMap locals: org.aspectj.weaver.UnresolvedType[] int
      StackMap stack:
            aload 3 /* typeParameters */
            iload 4 /* i */
            aaload
            astore 5 /* typeParameter */
        start local 5 // org.aspectj.weaver.UnresolvedType typeParameter
        31: .line 178
            aload 5 /* typeParameter */
            instanceof org.aspectj.weaver.ResolvedType
            ifeq 34
            aload 5 /* typeParameter */
            checkcast org.aspectj.weaver.ResolvedType
            invokevirtual org.aspectj.weaver.ResolvedType.isMissing:()Z
            ifeq 34
        32: .line 179
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "Unablet to resolve type parameter '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 5 /* typeParameter */
            invokevirtual org.aspectj.weaver.UnresolvedType.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "' from "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.stringify:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.reportError:(Ljava/lang/String;)V
        33: .line 180
            iconst_0
            ireturn
        end local 5 // org.aspectj.weaver.UnresolvedType typeParameter
        34: .line 176
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        35: iload 4 /* i */
            aload 3 /* typeParameters */
            arraylength
            if_icmplt 30
        end local 4 // int i
        end local 3 // org.aspectj.weaver.UnresolvedType[] typeParameters
        36: .line 184
            goto 38
        37: .line 185
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.world:Lorg/aspectj/weaver/World;
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.concreteAspect:Lorg/aspectj/weaver/loadtime/definition/Definition$ConcreteAspect;
            getfield org.aspectj.weaver.loadtime.definition.Definition$ConcreteAspect.extend:Ljava/lang/String;
            iconst_1
            invokevirtual org.aspectj.weaver.World.resolve:(Ljava/lang/String;Z)Lorg/aspectj/weaver/ResolvedType;
            putfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.parent:Lorg/aspectj/weaver/ResolvedType;
        38: .line 188
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.parent:Lorg/aspectj/weaver/ResolvedType;
            invokevirtual org.aspectj.weaver.ResolvedType.isMissing:()Z
            ifeq 50
        39: .line 190
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.concreteAspect:Lorg/aspectj/weaver/loadtime/definition/Definition$ConcreteAspect;
            getfield org.aspectj.weaver.loadtime.definition.Definition$ConcreteAspect.extend:Ljava/lang/String;
            astore 3 /* fixedName */
        start local 3 // java.lang.String fixedName
        40: .line 191
            aload 3 /* fixedName */
            bipush 46
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 4 /* hasDot */
        start local 4 // int hasDot
        41: .line 192
            goto 49
        42: .line 193
      StackMap locals: java.lang.String int
      StackMap stack:
            aload 3 /* fixedName */
            invokevirtual java.lang.String.toCharArray:()[C
            astore 5 /* fixedNameChars */
        start local 5 // char[] fixedNameChars
        43: .line 194
            aload 5 /* fixedNameChars */
            iload 4 /* hasDot */
            bipush 36
            castore
        44: .line 195
            new java.lang.String
            dup
            aload 5 /* fixedNameChars */
            invokespecial java.lang.String.<init>:([C)V
            astore 3 /* fixedName */
        45: .line 196
            aload 3 /* fixedName */
            bipush 46
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 4 /* hasDot */
        46: .line 197
            aload 0 /* this */
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.world:Lorg/aspectj/weaver/World;
            aload 3 /* fixedName */
            invokestatic org.aspectj.weaver.UnresolvedType.forName:(Ljava/lang/String;)Lorg/aspectj/weaver/UnresolvedType;
            iconst_1
            invokevirtual org.aspectj.weaver.World.resolve:(Lorg/aspectj/weaver/UnresolvedType;Z)Lorg/aspectj/weaver/ResolvedType;
            putfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.parent:Lorg/aspectj/weaver/ResolvedType;
        47: .line 198
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.parent:Lorg/aspectj/weaver/ResolvedType;
            invokevirtual org.aspectj.weaver.ResolvedType.isMissing:()Z
            ifne 49
        48: .line 199
            goto 50
        end local 5 // char[] fixedNameChars
        49: .line 192
      StackMap locals:
      StackMap stack:
            iload 4 /* hasDot */
            ifgt 42
        end local 4 // int hasDot
        end local 3 // java.lang.String fixedName
        50: .line 204
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.parent:Lorg/aspectj/weaver/ResolvedType;
            invokevirtual org.aspectj.weaver.ResolvedType.isMissing:()Z
            ifeq 53
        51: .line 205
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "Cannot find parent aspect for: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.stringify:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.reportError:(Ljava/lang/String;)V
        52: .line 206
            iconst_0
            ireturn
        53: .line 210
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.parent:Lorg/aspectj/weaver/ResolvedType;
            invokevirtual org.aspectj.weaver.ResolvedType.isAbstract:()Z
            ifne 56
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.parent:Lorg/aspectj/weaver/ResolvedType;
            getstatic org.aspectj.weaver.ResolvedType.OBJECT:Lorg/aspectj/weaver/UnresolvedType;
            invokevirtual org.aspectj.weaver.ResolvedType.equals:(Ljava/lang/Object;)Z
            ifne 56
        54: .line 211
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "Attempt to concretize a non-abstract aspect: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.stringify:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.reportError:(Ljava/lang/String;)V
        55: .line 212
            iconst_0
            ireturn
        56: .line 216
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.parent:Lorg/aspectj/weaver/ResolvedType;
            invokevirtual org.aspectj.weaver.ResolvedType.isAspect:()Z
            ifne 59
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.parent:Lorg/aspectj/weaver/ResolvedType;
            getstatic org.aspectj.weaver.ResolvedType.OBJECT:Lorg/aspectj/weaver/UnresolvedType;
            invokevirtual org.aspectj.weaver.ResolvedType.equals:(Ljava/lang/Object;)Z
            ifne 59
        57: .line 217
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "Attempt to concretize a non aspect: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.stringify:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.reportError:(Ljava/lang/String;)V
        58: .line 218
            iconst_0
            ireturn
        59: .line 222
      StackMap locals:
      StackMap stack:
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* elligibleAbstractions */
        start local 3 // java.util.List elligibleAbstractions
        60: .line 224
            aload 0 /* this */
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.parent:Lorg/aspectj/weaver/ResolvedType;
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.getOutstandingAbstractMethods:(Lorg/aspectj/weaver/ResolvedType;)Ljava/util/Collection;
            astore 4 /* abstractMethods */
        start local 4 // java.util.Collection abstractMethods
        61: .line 225
            aload 4 /* abstractMethods */
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 6
            goto 84
      StackMap locals: org.aspectj.weaver.loadtime.ConcreteAspectCodeGen org.aspectj.weaver.ResolvedType java.lang.String java.util.List java.util.Collection top java.util.Iterator
      StackMap stack:
        62: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.aspectj.weaver.ResolvedMember
            astore 5 /* method */
        start local 5 // org.aspectj.weaver.ResolvedMember method
        63: .line 226
            ldc "()V"
            aload 5 /* method */
            invokeinterface org.aspectj.weaver.ResolvedMember.getSignature:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 75
        64: .line 227
            aload 5 /* method */
            invokeinterface org.aspectj.weaver.ResolvedMember.getName:()Ljava/lang/String;
            astore 7 /* n */
        start local 7 // java.lang.String n
        65: .line 230
            aload 7 /* n */
            ldc "ajc$pointcut"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 70
        66: .line 231
            aload 7 /* n */
            bipush 14
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 7 /* n */
        67: .line 232
            aload 7 /* n */
            iconst_0
            aload 7 /* n */
            ldc "$"
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 7 /* n */
        68: .line 233
            aload 3 /* elligibleAbstractions */
            aload 7 /* n */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        69: .line 234
            goto 84
      StackMap locals: org.aspectj.weaver.loadtime.ConcreteAspectCodeGen org.aspectj.weaver.ResolvedType java.lang.String java.util.List java.util.Collection org.aspectj.weaver.ResolvedMember java.util.Iterator java.lang.String
      StackMap stack:
        70: aload 0 /* this */
            aload 5 /* method */
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.hasPointcutAnnotation:(Lorg/aspectj/weaver/ResolvedMember;)Z
            ifeq 73
        71: .line 235
            aload 3 /* elligibleAbstractions */
            aload 5 /* method */
            invokeinterface org.aspectj.weaver.ResolvedMember.getName:()Ljava/lang/String;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        72: .line 236
            goto 84
        73: .line 239
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "Abstract method '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 5 /* method */
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "' cannot be concretized in XML: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.stringify:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.reportError:(Ljava/lang/String;)V
        74: .line 240
            iconst_0
            ireturn
        end local 7 // java.lang.String n
        75: .line 243
      StackMap locals:
      StackMap stack:
            aload 5 /* method */
            invokeinterface org.aspectj.weaver.ResolvedMember.getName:()Ljava/lang/String;
            ldc "ajc$pointcut"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 76
            aload 0 /* this */
            aload 5 /* method */
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.hasPointcutAnnotation:(Lorg/aspectj/weaver/ResolvedMember;)Z
            ifeq 82
        76: .line 245
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "Abstract method '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        77: .line 246
            aload 5 /* method */
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        78: .line 247
            ldc "' cannot be concretized as a pointcut (illegal signature, must have no arguments, must return void): "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        79: .line 248
            aload 0 /* this */
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.stringify:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        80: .line 245
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.reportError:(Ljava/lang/String;)V
        81: .line 249
            iconst_0
            ireturn
        82: .line 253
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "Abstract method '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 5 /* method */
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "' cannot be concretized in XML: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.stringify:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.reportError:(Ljava/lang/String;)V
        83: .line 254
            iconst_0
            ireturn
        end local 5 // org.aspectj.weaver.ResolvedMember method
        84: .line 225
      StackMap locals: org.aspectj.weaver.loadtime.ConcreteAspectCodeGen org.aspectj.weaver.ResolvedType java.lang.String java.util.List java.util.Collection top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 62
        85: .line 258
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 5 /* pointcutNames */
        start local 5 // java.util.List pointcutNames
        86: .line 259
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.concreteAspect:Lorg/aspectj/weaver/loadtime/definition/Definition$ConcreteAspect;
            getfield org.aspectj.weaver.loadtime.definition.Definition$ConcreteAspect.pointcuts:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 7
            goto 89
      StackMap locals: org.aspectj.weaver.loadtime.ConcreteAspectCodeGen org.aspectj.weaver.ResolvedType java.lang.String java.util.List java.util.Collection java.util.List top java.util.Iterator
      StackMap stack:
        87: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.aspectj.weaver.loadtime.definition.Definition$Pointcut
            astore 6 /* abstractPc */
        start local 6 // org.aspectj.weaver.loadtime.definition.Definition$Pointcut abstractPc
        88: .line 260
            aload 5 /* pointcutNames */
            aload 6 /* abstractPc */
            getfield org.aspectj.weaver.loadtime.definition.Definition$Pointcut.name:Ljava/lang/String;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 6 // org.aspectj.weaver.loadtime.definition.Definition$Pointcut abstractPc
        89: .line 259
      StackMap locals:
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 87
        90: .line 262
            aload 3 /* elligibleAbstractions */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 7
            goto 95
      StackMap locals:
      StackMap stack:
        91: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 6 /* elligiblePc */
        start local 6 // java.lang.String elligiblePc
        92: .line 263
            aload 5 /* pointcutNames */
            aload 6 /* elligiblePc */
            invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
            ifne 95
        93: .line 264
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "Abstract pointcut '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 6 /* elligiblePc */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "' not configured: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.stringify:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.reportError:(Ljava/lang/String;)V
        94: .line 265
            iconst_0
            ireturn
        end local 6 // java.lang.String elligiblePc
        95: .line 262
      StackMap locals:
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 91
        96: .line 269
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.concreteAspect:Lorg/aspectj/weaver/loadtime/definition/Definition$ConcreteAspect;
            getfield org.aspectj.weaver.loadtime.definition.Definition$ConcreteAspect.perclause:Ljava/lang/String;
            ifnull 106
        97: .line 270
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.concreteAspect:Lorg/aspectj/weaver/loadtime/definition/Definition$ConcreteAspect;
            getfield org.aspectj.weaver.loadtime.definition.Definition$ConcreteAspect.perclause:Ljava/lang/String;
            astore 6 /* perclauseString */
        start local 6 // java.lang.String perclauseString
        98: .line 271
            aload 6 /* perclauseString */
            ldc "persingleton"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 106
        99: .line 272
            aload 6 /* perclauseString */
            ldc "percflow"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 106
       100: .line 273
            aload 6 /* perclauseString */
            ldc "pertypewithin"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 106
       101: .line 274
            aload 6 /* perclauseString */
            ldc "perthis"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 106
       102: .line 275
            aload 6 /* perclauseString */
            ldc "pertarget"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 106
       103: .line 276
            aload 6 /* perclauseString */
            ldc "percflowbelow"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 106
       104: .line 278
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "Unrecognized per clause specified "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.stringify:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.reportError:(Ljava/lang/String;)V
       105: .line 279
            iconst_0
            ireturn
        end local 6 // java.lang.String perclauseString
       106: .line 282
      StackMap locals: org.aspectj.weaver.loadtime.ConcreteAspectCodeGen org.aspectj.weaver.ResolvedType java.lang.String java.util.List java.util.Collection java.util.List
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.isValid:Z
       107: .line 283
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.isValid:Z
            ireturn
        end local 5 // java.util.List pointcutNames
        end local 4 // java.util.Collection abstractMethods
        end local 3 // java.util.List elligibleAbstractions
        end local 2 // java.lang.String parentAspectName
        end local 1 // org.aspectj.weaver.ResolvedType current
        end local 0 // org.aspectj.weaver.loadtime.ConcreteAspectCodeGen this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0  108     0                   this  Lorg/aspectj/weaver/loadtime/ConcreteAspectCodeGen;
            4  108     1                current  Lorg/aspectj/weaver/ResolvedType;
           21  108     2       parentAspectName  Ljava/lang/String;
           28   36     3         typeParameters  [Lorg/aspectj/weaver/UnresolvedType;
           29   36     4                      i  I
           31   34     5          typeParameter  Lorg/aspectj/weaver/UnresolvedType;
           40   50     3              fixedName  Ljava/lang/String;
           41   50     4                 hasDot  I
           43   49     5         fixedNameChars  [C
           60  108     3  elligibleAbstractions  Ljava/util/List<Ljava/lang/String;>;
           61  108     4        abstractMethods  Ljava/util/Collection<Lorg/aspectj/weaver/ResolvedMember;>;
           63   84     5                 method  Lorg/aspectj/weaver/ResolvedMember;
           65   75     7                      n  Ljava/lang/String;
           86  108     5          pointcutNames  Ljava/util/List<Ljava/lang/String;>;
           88   89     6             abstractPc  Lorg/aspectj/weaver/loadtime/definition/Definition$Pointcut;
           92   95     6            elligiblePc  Ljava/lang/String;
           98  106     6        perclauseString  Ljava/lang/String;

  private java.util.Collection<org.aspectj.weaver.ResolvedMember> getOutstandingAbstractMethods(org.aspectj.weaver.ResolvedType);
    descriptor: (Lorg/aspectj/weaver/ResolvedType;)Ljava/util/Collection;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.aspectj.weaver.loadtime.ConcreteAspectCodeGen this
        start local 1 // org.aspectj.weaver.ResolvedType type
         0: .line 287
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 2 /* collector */
        start local 2 // java.util.Map collector
         1: .line 291
            aload 0 /* this */
            aload 1 /* type */
            aload 2 /* collector */
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.getOutstandingAbstractMethodsHelper:(Lorg/aspectj/weaver/ResolvedType;Ljava/util/Map;)V
         2: .line 292
            aload 2 /* collector */
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            areturn
        end local 2 // java.util.Map collector
        end local 1 // org.aspectj.weaver.ResolvedType type
        end local 0 // org.aspectj.weaver.loadtime.ConcreteAspectCodeGen this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Lorg/aspectj/weaver/loadtime/ConcreteAspectCodeGen;
            0    3     1       type  Lorg/aspectj/weaver/ResolvedType;
            1    3     2  collector  Ljava/util/Map<Ljava/lang/String;Lorg/aspectj/weaver/ResolvedMember;>;
    Signature: (Lorg/aspectj/weaver/ResolvedType;)Ljava/util/Collection<Lorg/aspectj/weaver/ResolvedMember;>;
    MethodParameters:
      Name  Flags
      type  

  private void getOutstandingAbstractMethodsHelper(org.aspectj.weaver.ResolvedType, java.util.Map<java.lang.String, org.aspectj.weaver.ResolvedMember>);
    descriptor: (Lorg/aspectj/weaver/ResolvedType;Ljava/util/Map;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=7, args_size=3
        start local 0 // org.aspectj.weaver.loadtime.ConcreteAspectCodeGen this
        start local 1 // org.aspectj.weaver.ResolvedType type
        start local 2 // java.util.Map collector
         0: .line 298
            aload 1 /* type */
            ifnonnull 2
         1: .line 299
            return
         2: .line 302
      StackMap locals:
      StackMap stack:
            aload 1 /* type */
            getstatic org.aspectj.weaver.ResolvedType.OBJECT:Lorg/aspectj/weaver/UnresolvedType;
            invokevirtual org.aspectj.weaver.ResolvedType.equals:(Ljava/lang/Object;)Z
            ifne 5
         3: .line 303
            aload 1 /* type */
            invokevirtual org.aspectj.weaver.ResolvedType.getSuperclass:()Lorg/aspectj/weaver/ResolvedType;
            ifnull 5
         4: .line 304
            aload 0 /* this */
            aload 1 /* type */
            invokevirtual org.aspectj.weaver.ResolvedType.getSuperclass:()Lorg/aspectj/weaver/ResolvedType;
            aload 2 /* collector */
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.getOutstandingAbstractMethodsHelper:(Lorg/aspectj/weaver/ResolvedType;Ljava/util/Map;)V
         5: .line 307
      StackMap locals:
      StackMap stack:
            aload 1 /* type */
            invokevirtual org.aspectj.weaver.ResolvedType.getDeclaredMethods:()[Lorg/aspectj/weaver/ResolvedMember;
            astore 3 /* rms */
        start local 3 // org.aspectj.weaver.ResolvedMember[] rms
         6: .line 308
            aload 3 /* rms */
            ifnull 17
         7: .line 309
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         8: goto 16
         9: .line 310
      StackMap locals: org.aspectj.weaver.ResolvedMember[] int
      StackMap stack:
            aload 3 /* rms */
            iload 4 /* i */
            aaload
            astore 5 /* member */
        start local 5 // org.aspectj.weaver.ResolvedMember member
        10: .line 311
            new java.lang.StringBuilder
            dup
            aload 5 /* member */
            invokeinterface org.aspectj.weaver.ResolvedMember.getName:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 5 /* member */
            invokeinterface org.aspectj.weaver.ResolvedMember.getSignature:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 6 /* key */
        start local 6 // java.lang.String key
        11: .line 312
            aload 5 /* member */
            invokeinterface org.aspectj.weaver.ResolvedMember.isAbstract:()Z
            ifeq 14
        12: .line 313
            aload 2 /* collector */
            aload 6 /* key */
            aload 5 /* member */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        13: .line 314
            goto 15
        14: .line 315
      StackMap locals: org.aspectj.weaver.ResolvedMember java.lang.String
      StackMap stack:
            aload 2 /* collector */
            aload 6 /* key */
            invokeinterface java.util.Map.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 6 // java.lang.String key
        end local 5 // org.aspectj.weaver.ResolvedMember member
        15: .line 309
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        16: iload 4 /* i */
            aload 3 /* rms */
            arraylength
            if_icmplt 9
        end local 4 // int i
        17: .line 319
      StackMap locals:
      StackMap stack:
            return
        end local 3 // org.aspectj.weaver.ResolvedMember[] rms
        end local 2 // java.util.Map collector
        end local 1 // org.aspectj.weaver.ResolvedType type
        end local 0 // org.aspectj.weaver.loadtime.ConcreteAspectCodeGen this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   18     0       this  Lorg/aspectj/weaver/loadtime/ConcreteAspectCodeGen;
            0   18     1       type  Lorg/aspectj/weaver/ResolvedType;
            0   18     2  collector  Ljava/util/Map<Ljava/lang/String;Lorg/aspectj/weaver/ResolvedMember;>;
            6   18     3        rms  [Lorg/aspectj/weaver/ResolvedMember;
            8   17     4          i  I
           10   15     5     member  Lorg/aspectj/weaver/ResolvedMember;
           11   15     6        key  Ljava/lang/String;
    Signature: (Lorg/aspectj/weaver/ResolvedType;Ljava/util/Map<Ljava/lang/String;Lorg/aspectj/weaver/ResolvedMember;>;)V
    MethodParameters:
           Name  Flags
      type       
      collector  

  private java.lang.String stringify();
    descriptor: ()Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // org.aspectj.weaver.loadtime.ConcreteAspectCodeGen this
         0: .line 327
            new java.lang.StringBuffer
            dup
            ldc "<concrete-aspect name='"
            invokespecial java.lang.StringBuffer.<init>:(Ljava/lang/String;)V
            astore 1 /* sb */
        start local 1 // java.lang.StringBuffer sb
         1: .line 328
            aload 1 /* sb */
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.concreteAspect:Lorg/aspectj/weaver/loadtime/definition/Definition$ConcreteAspect;
            getfield org.aspectj.weaver.loadtime.definition.Definition$ConcreteAspect.name:Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         2: .line 329
            aload 1 /* sb */
            ldc "' extends='"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         3: .line 330
            aload 1 /* sb */
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.concreteAspect:Lorg/aspectj/weaver/loadtime/definition/Definition$ConcreteAspect;
            getfield org.aspectj.weaver.loadtime.definition.Definition$ConcreteAspect.extend:Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         4: .line 331
            aload 1 /* sb */
            ldc "' perclause='"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         5: .line 332
            aload 1 /* sb */
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.concreteAspect:Lorg/aspectj/weaver/loadtime/definition/Definition$ConcreteAspect;
            getfield org.aspectj.weaver.loadtime.definition.Definition$ConcreteAspect.perclause:Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         6: .line 333
            aload 1 /* sb */
            ldc "'/> in aop.xml"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         7: .line 335
            aload 1 /* sb */
            invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
            areturn
        end local 1 // java.lang.StringBuffer sb
        end local 0 // org.aspectj.weaver.loadtime.ConcreteAspectCodeGen this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lorg/aspectj/weaver/loadtime/ConcreteAspectCodeGen;
            1    8     1    sb  Ljava/lang/StringBuffer;

  private boolean hasPointcutAnnotation(org.aspectj.weaver.ResolvedMember);
    descriptor: (Lorg/aspectj/weaver/ResolvedMember;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.aspectj.weaver.loadtime.ConcreteAspectCodeGen this
        start local 1 // org.aspectj.weaver.ResolvedMember member
         0: .line 339
            aload 1 /* member */
            invokeinterface org.aspectj.weaver.ResolvedMember.getAnnotations:()[Lorg/aspectj/weaver/AnnotationAJ;
            astore 2 /* as */
        start local 2 // org.aspectj.weaver.AnnotationAJ[] as
         1: .line 340
            aload 2 /* as */
            ifnull 2
            aload 2 /* as */
            arraylength
            ifne 3
         2: .line 341
      StackMap locals: org.aspectj.weaver.AnnotationAJ[]
      StackMap stack:
            iconst_0
            ireturn
         3: .line 343
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         4: goto 8
         5: .line 344
      StackMap locals: int
      StackMap stack:
            aload 2 /* as */
            iload 3 /* i */
            aaload
            invokeinterface org.aspectj.weaver.AnnotationAJ.getTypeSignature:()Ljava/lang/String;
            ldc "Lorg/aspectj/lang/annotation/Pointcut;"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 7
         6: .line 345
            iconst_1
            ireturn
         7: .line 343
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 3 /* i */
            aload 2 /* as */
            arraylength
            if_icmplt 5
        end local 3 // int i
         9: .line 348
            iconst_0
            ireturn
        end local 2 // org.aspectj.weaver.AnnotationAJ[] as
        end local 1 // org.aspectj.weaver.ResolvedMember member
        end local 0 // org.aspectj.weaver.loadtime.ConcreteAspectCodeGen this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   10     0    this  Lorg/aspectj/weaver/loadtime/ConcreteAspectCodeGen;
            0   10     1  member  Lorg/aspectj/weaver/ResolvedMember;
            1   10     2      as  [Lorg/aspectj/weaver/AnnotationAJ;
            4    9     3       i  I
    MethodParameters:
        Name  Flags
      member  

  public java.lang.String getClassName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.aspectj.weaver.loadtime.ConcreteAspectCodeGen this
         0: .line 352
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.concreteAspect:Lorg/aspectj/weaver/loadtime/definition/Definition$ConcreteAspect;
            getfield org.aspectj.weaver.loadtime.definition.Definition$ConcreteAspect.name:Ljava/lang/String;
            areturn
        end local 0 // org.aspectj.weaver.loadtime.ConcreteAspectCodeGen this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/aspectj/weaver/loadtime/ConcreteAspectCodeGen;

  public byte[] getBytes();
    descriptor: ()[B
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=16, args_size=1
        start local 0 // org.aspectj.weaver.loadtime.ConcreteAspectCodeGen this
         0: .line 359
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.isValid:Z
            ifne 2
         1: .line 360
            new java.lang.RuntimeException
            dup
            ldc "Must validate first"
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 362
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.bytes:[B
            ifnull 4
         3: .line 363
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.bytes:[B
            areturn
         4: .line 365
      StackMap locals:
      StackMap stack:
            getstatic org.aspectj.weaver.patterns.PerClause.SINGLETON:Lorg/aspectj/weaver/patterns/PerClause$Kind;
            astore 1 /* perclauseKind */
        start local 1 // org.aspectj.weaver.patterns.PerClause$Kind perclauseKind
         5: .line 366
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.parent:Lorg/aspectj/weaver/ResolvedType;
            ifnull 6
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.parent:Lorg/aspectj/weaver/ResolvedType;
            invokevirtual org.aspectj.weaver.ResolvedType.getPerClause:()Lorg/aspectj/weaver/patterns/PerClause;
            goto 7
      StackMap locals: org.aspectj.weaver.patterns.PerClause$Kind
      StackMap stack:
         6: aconst_null
      StackMap locals:
      StackMap stack: org.aspectj.weaver.patterns.PerClause
         7: astore 2 /* parentPerClause */
        start local 2 // org.aspectj.weaver.patterns.PerClause parentPerClause
         8: .line 367
            aload 2 /* parentPerClause */
            ifnull 10
         9: .line 368
            aload 2 /* parentPerClause */
            invokevirtual org.aspectj.weaver.patterns.PerClause.getKind:()Lorg/aspectj/weaver/patterns/PerClause$Kind;
            astore 1 /* perclauseKind */
        10: .line 370
      StackMap locals: org.aspectj.weaver.patterns.PerClause
      StackMap stack:
            aconst_null
            astore 3 /* perclauseString */
        start local 3 // java.lang.String perclauseString
        11: .line 372
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.concreteAspect:Lorg/aspectj/weaver/loadtime/definition/Definition$ConcreteAspect;
            getfield org.aspectj.weaver.loadtime.definition.Definition$ConcreteAspect.perclause:Ljava/lang/String;
            ifnull 30
        12: .line 373
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.concreteAspect:Lorg/aspectj/weaver/loadtime/definition/Definition$ConcreteAspect;
            getfield org.aspectj.weaver.loadtime.definition.Definition$ConcreteAspect.perclause:Ljava/lang/String;
            astore 3 /* perclauseString */
        13: .line 374
            aload 3 /* perclauseString */
            ldc "persingleton"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 16
        14: .line 375
            getstatic org.aspectj.weaver.patterns.PerClause.SINGLETON:Lorg/aspectj/weaver/patterns/PerClause$Kind;
            astore 1 /* perclauseKind */
        15: .line 376
            goto 30
      StackMap locals: java.lang.String
      StackMap stack:
        16: aload 3 /* perclauseString */
            ldc "percflow"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 19
        17: .line 377
            getstatic org.aspectj.weaver.patterns.PerClause.PERCFLOW:Lorg/aspectj/weaver/patterns/PerClause$Kind;
            astore 1 /* perclauseKind */
        18: .line 378
            goto 30
      StackMap locals:
      StackMap stack:
        19: aload 3 /* perclauseString */
            ldc "pertypewithin"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 22
        20: .line 379
            getstatic org.aspectj.weaver.patterns.PerClause.PERTYPEWITHIN:Lorg/aspectj/weaver/patterns/PerClause$Kind;
            astore 1 /* perclauseKind */
        21: .line 380
            goto 30
      StackMap locals:
      StackMap stack:
        22: aload 3 /* perclauseString */
            ldc "perthis"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 25
        23: .line 381
            getstatic org.aspectj.weaver.patterns.PerClause.PEROBJECT:Lorg/aspectj/weaver/patterns/PerClause$Kind;
            astore 1 /* perclauseKind */
        24: .line 382
            goto 30
      StackMap locals:
      StackMap stack:
        25: aload 3 /* perclauseString */
            ldc "pertarget"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 28
        26: .line 383
            getstatic org.aspectj.weaver.patterns.PerClause.PEROBJECT:Lorg/aspectj/weaver/patterns/PerClause$Kind;
            astore 1 /* perclauseKind */
        27: .line 384
            goto 30
      StackMap locals:
      StackMap stack:
        28: aload 3 /* perclauseString */
            ldc "percflowbelow"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 30
        29: .line 385
            getstatic org.aspectj.weaver.patterns.PerClause.PERCFLOW:Lorg/aspectj/weaver/patterns/PerClause$Kind;
            astore 1 /* perclauseKind */
        30: .line 395
      StackMap locals:
      StackMap stack:
            ldc "java/lang/Object"
            astore 4 /* parentName */
        start local 4 // java.lang.String parentName
        31: .line 396
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.parent:Lorg/aspectj/weaver/ResolvedType;
            ifnull 36
        32: .line 397
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.parent:Lorg/aspectj/weaver/ResolvedType;
            invokevirtual org.aspectj.weaver.ResolvedType.isParameterizedType:()Z
            ifeq 35
        33: .line 398
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.parent:Lorg/aspectj/weaver/ResolvedType;
            invokevirtual org.aspectj.weaver.ResolvedType.getGenericType:()Lorg/aspectj/weaver/ReferenceType;
            invokevirtual org.aspectj.weaver.ReferenceType.getName:()Ljava/lang/String;
            bipush 46
            bipush 47
            invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
            astore 4 /* parentName */
        34: .line 399
            goto 36
        35: .line 400
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.parent:Lorg/aspectj/weaver/ResolvedType;
            invokevirtual org.aspectj.weaver.ResolvedType.getName:()Ljava/lang/String;
            bipush 46
            bipush 47
            invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
            astore 4 /* parentName */
        36: .line 405
      StackMap locals:
      StackMap stack:
            new org.aspectj.weaver.bcel.LazyClassGen
            dup
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.concreteAspect:Lorg/aspectj/weaver/loadtime/definition/Definition$ConcreteAspect;
            getfield org.aspectj.weaver.loadtime.definition.Definition$ConcreteAspect.name:Ljava/lang/String;
            bipush 46
            bipush 47
            invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
            aload 4 /* parentName */
            aconst_null
            bipush 33
        37: .line 406
            getstatic org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.EMPTY_STRINGS:[Ljava/lang/String;
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.world:Lorg/aspectj/weaver/World;
        38: .line 405
            invokespecial org.aspectj.weaver.bcel.LazyClassGen.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I[Ljava/lang/String;Lorg/aspectj/weaver/World;)V
            astore 5 /* cg */
        start local 5 // org.aspectj.weaver.bcel.LazyClassGen cg
        39: .line 407
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.parent:Lorg/aspectj/weaver/ResolvedType;
            ifnull 41
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.parent:Lorg/aspectj/weaver/ResolvedType;
            invokevirtual org.aspectj.weaver.ResolvedType.isParameterizedType:()Z
            ifeq 41
        40: .line 408
            aload 5 /* cg */
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.parent:Lorg/aspectj/weaver/ResolvedType;
            invokevirtual org.aspectj.weaver.bcel.LazyClassGen.setSuperClass:(Lorg/aspectj/weaver/ResolvedType;)V
        41: .line 410
      StackMap locals: org.aspectj.weaver.bcel.LazyClassGen
      StackMap stack:
            aload 3 /* perclauseString */
            ifnonnull 47
        42: .line 411
            new org.aspectj.apache.bcel.classfile.annotation.AnnotationGen
            dup
            new org.aspectj.apache.bcel.generic.ObjectType
            dup
            ldc "org/aspectj/lang/annotation/Aspect"
            invokespecial org.aspectj.apache.bcel.generic.ObjectType.<init>:(Ljava/lang/String;)V
        43: .line 412
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            iconst_1
            aload 5 /* cg */
            invokevirtual org.aspectj.weaver.bcel.LazyClassGen.getConstantPool:()Lorg/aspectj/apache/bcel/classfile/ConstantPool;
        44: .line 411
            invokespecial org.aspectj.apache.bcel.classfile.annotation.AnnotationGen.<init>:(Lorg/aspectj/apache/bcel/generic/ObjectType;Ljava/util/List;ZLorg/aspectj/apache/bcel/classfile/ConstantPool;)V
            astore 6 /* ag */
        start local 6 // org.aspectj.apache.bcel.classfile.annotation.AnnotationGen ag
        45: .line 413
            aload 5 /* cg */
            aload 6 /* ag */
            invokevirtual org.aspectj.weaver.bcel.LazyClassGen.addAnnotation:(Lorg/aspectj/apache/bcel/classfile/annotation/AnnotationGen;)V
        end local 6 // org.aspectj.apache.bcel.classfile.annotation.AnnotationGen ag
        46: .line 414
            goto 55
        47: .line 416
      StackMap locals:
      StackMap stack:
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 6 /* elems */
        start local 6 // java.util.List elems
        48: .line 417
            aload 6 /* elems */
            new org.aspectj.apache.bcel.classfile.annotation.NameValuePair
            dup
            ldc "value"
        49: .line 418
            new org.aspectj.apache.bcel.classfile.annotation.SimpleElementValue
            dup
            bipush 115
            aload 5 /* cg */
            invokevirtual org.aspectj.weaver.bcel.LazyClassGen.getConstantPool:()Lorg/aspectj/apache/bcel/classfile/ConstantPool;
            aload 3 /* perclauseString */
            invokespecial org.aspectj.apache.bcel.classfile.annotation.SimpleElementValue.<init>:(ILorg/aspectj/apache/bcel/classfile/ConstantPool;Ljava/lang/String;)V
            aload 5 /* cg */
            invokevirtual org.aspectj.weaver.bcel.LazyClassGen.getConstantPool:()Lorg/aspectj/apache/bcel/classfile/ConstantPool;
            invokespecial org.aspectj.apache.bcel.classfile.annotation.NameValuePair.<init>:(Ljava/lang/String;Lorg/aspectj/apache/bcel/classfile/annotation/ElementValue;Lorg/aspectj/apache/bcel/classfile/ConstantPool;)V
        50: .line 417
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        51: .line 419
            new org.aspectj.apache.bcel.classfile.annotation.AnnotationGen
            dup
            new org.aspectj.apache.bcel.generic.ObjectType
            dup
            ldc "org/aspectj/lang/annotation/Aspect"
            invokespecial org.aspectj.apache.bcel.generic.ObjectType.<init>:(Ljava/lang/String;)V
            aload 6 /* elems */
            iconst_1
        52: .line 420
            aload 5 /* cg */
            invokevirtual org.aspectj.weaver.bcel.LazyClassGen.getConstantPool:()Lorg/aspectj/apache/bcel/classfile/ConstantPool;
        53: .line 419
            invokespecial org.aspectj.apache.bcel.classfile.annotation.AnnotationGen.<init>:(Lorg/aspectj/apache/bcel/generic/ObjectType;Ljava/util/List;ZLorg/aspectj/apache/bcel/classfile/ConstantPool;)V
            astore 7 /* ag */
        start local 7 // org.aspectj.apache.bcel.classfile.annotation.AnnotationGen ag
        54: .line 421
            aload 5 /* cg */
            aload 7 /* ag */
            invokevirtual org.aspectj.weaver.bcel.LazyClassGen.addAnnotation:(Lorg/aspectj/apache/bcel/classfile/annotation/AnnotationGen;)V
        end local 7 // org.aspectj.apache.bcel.classfile.annotation.AnnotationGen ag
        end local 6 // java.util.List elems
        55: .line 423
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.concreteAspect:Lorg/aspectj/weaver/loadtime/definition/Definition$ConcreteAspect;
            getfield org.aspectj.weaver.loadtime.definition.Definition$ConcreteAspect.precedence:Ljava/lang/String;
            ifnull 63
        56: .line 424
            new org.aspectj.apache.bcel.classfile.annotation.SimpleElementValue
            dup
            bipush 115
            aload 5 /* cg */
            invokevirtual org.aspectj.weaver.bcel.LazyClassGen.getConstantPool:()Lorg/aspectj/apache/bcel/classfile/ConstantPool;
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.concreteAspect:Lorg/aspectj/weaver/loadtime/definition/Definition$ConcreteAspect;
            getfield org.aspectj.weaver.loadtime.definition.Definition$ConcreteAspect.precedence:Ljava/lang/String;
            invokespecial org.aspectj.apache.bcel.classfile.annotation.SimpleElementValue.<init>:(ILorg/aspectj/apache/bcel/classfile/ConstantPool;Ljava/lang/String;)V
            astore 6 /* svg */
        start local 6 // org.aspectj.apache.bcel.classfile.annotation.SimpleElementValue svg
        57: .line 425
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 7 /* elems */
        start local 7 // java.util.List elems
        58: .line 426
            aload 7 /* elems */
            new org.aspectj.apache.bcel.classfile.annotation.NameValuePair
            dup
            ldc "value"
            aload 6 /* svg */
            aload 5 /* cg */
            invokevirtual org.aspectj.weaver.bcel.LazyClassGen.getConstantPool:()Lorg/aspectj/apache/bcel/classfile/ConstantPool;
            invokespecial org.aspectj.apache.bcel.classfile.annotation.NameValuePair.<init>:(Ljava/lang/String;Lorg/aspectj/apache/bcel/classfile/annotation/ElementValue;Lorg/aspectj/apache/bcel/classfile/ConstantPool;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        59: .line 427
            new org.aspectj.apache.bcel.classfile.annotation.AnnotationGen
            dup
            new org.aspectj.apache.bcel.generic.ObjectType
            dup
            ldc "org/aspectj/lang/annotation/DeclarePrecedence"
            invokespecial org.aspectj.apache.bcel.generic.ObjectType.<init>:(Ljava/lang/String;)V
            aload 7 /* elems */
            iconst_1
        60: .line 428
            aload 5 /* cg */
            invokevirtual org.aspectj.weaver.bcel.LazyClassGen.getConstantPool:()Lorg/aspectj/apache/bcel/classfile/ConstantPool;
        61: .line 427
            invokespecial org.aspectj.apache.bcel.classfile.annotation.AnnotationGen.<init>:(Lorg/aspectj/apache/bcel/generic/ObjectType;Ljava/util/List;ZLorg/aspectj/apache/bcel/classfile/ConstantPool;)V
            astore 8 /* agprec */
        start local 8 // org.aspectj.apache.bcel.classfile.annotation.AnnotationGen agprec
        62: .line 429
            aload 5 /* cg */
            aload 8 /* agprec */
            invokevirtual org.aspectj.weaver.bcel.LazyClassGen.addAnnotation:(Lorg/aspectj/apache/bcel/classfile/annotation/AnnotationGen;)V
        end local 8 // org.aspectj.apache.bcel.classfile.annotation.AnnotationGen agprec
        end local 7 // java.util.List elems
        end local 6 // org.aspectj.apache.bcel.classfile.annotation.SimpleElementValue svg
        63: .line 433
      StackMap locals:
      StackMap stack:
            new org.aspectj.weaver.bcel.LazyMethodGen
            dup
            iconst_1
            getstatic org.aspectj.apache.bcel.generic.Type.VOID:Lorg/aspectj/apache/bcel/generic/BasicType;
            ldc "<init>"
            getstatic org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.EMPTY_TYPES:[Lorg/aspectj/apache/bcel/generic/Type;
            getstatic org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.EMPTY_STRINGS:[Ljava/lang/String;
            aload 5 /* cg */
            invokespecial org.aspectj.weaver.bcel.LazyMethodGen.<init>:(ILorg/aspectj/apache/bcel/generic/Type;Ljava/lang/String;[Lorg/aspectj/apache/bcel/generic/Type;[Ljava/lang/String;Lorg/aspectj/weaver/bcel/LazyClassGen;)V
            astore 6 /* init */
        start local 6 // org.aspectj.weaver.bcel.LazyMethodGen init
        64: .line 434
            aload 6 /* init */
            invokevirtual org.aspectj.weaver.bcel.LazyMethodGen.getBody:()Lorg/aspectj/apache/bcel/generic/InstructionList;
            astore 7 /* cbody */
        start local 7 // org.aspectj.apache.bcel.generic.InstructionList cbody
        65: .line 435
            aload 7 /* cbody */
            getstatic org.aspectj.apache.bcel.generic.InstructionConstants.ALOAD_0:Lorg/aspectj/apache/bcel/generic/InstructionLV;
            invokevirtual org.aspectj.apache.bcel.generic.InstructionList.append:(Lorg/aspectj/apache/bcel/generic/Instruction;)Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            pop
        66: .line 437
            aload 7 /* cbody */
            aload 5 /* cg */
            invokevirtual org.aspectj.weaver.bcel.LazyClassGen.getFactory:()Lorg/aspectj/apache/bcel/generic/InstructionFactory;
            aload 4 /* parentName */
            ldc "<init>"
            getstatic org.aspectj.apache.bcel.generic.Type.VOID:Lorg/aspectj/apache/bcel/generic/BasicType;
            getstatic org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.EMPTY_TYPES:[Lorg/aspectj/apache/bcel/generic/Type;
            sipush 183
            invokevirtual org.aspectj.apache.bcel.generic.InstructionFactory.createInvoke:(Ljava/lang/String;Ljava/lang/String;Lorg/aspectj/apache/bcel/generic/Type;[Lorg/aspectj/apache/bcel/generic/Type;S)Lorg/aspectj/apache/bcel/generic/InvokeInstruction;
            invokevirtual org.aspectj.apache.bcel.generic.InstructionList.append:(Lorg/aspectj/apache/bcel/generic/Instruction;)Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            pop
        67: .line 438
            aload 7 /* cbody */
            getstatic org.aspectj.apache.bcel.generic.InstructionConstants.RETURN:Lorg/aspectj/apache/bcel/generic/Instruction;
            invokevirtual org.aspectj.apache.bcel.generic.InstructionList.append:(Lorg/aspectj/apache/bcel/generic/Instruction;)Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            pop
        68: .line 439
            aload 5 /* cg */
            aload 6 /* init */
            invokevirtual org.aspectj.weaver.bcel.LazyClassGen.addMethodGen:(Lorg/aspectj/weaver/bcel/LazyMethodGen;)V
        69: .line 441
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.concreteAspect:Lorg/aspectj/weaver/loadtime/definition/Definition$ConcreteAspect;
            getfield org.aspectj.weaver.loadtime.definition.Definition$ConcreteAspect.pointcuts:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 8 /* it */
        start local 8 // java.util.Iterator it
        70: goto 84
        71: .line 442
      StackMap locals: org.aspectj.weaver.bcel.LazyMethodGen org.aspectj.apache.bcel.generic.InstructionList java.util.Iterator
      StackMap stack:
            aload 8 /* it */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.aspectj.weaver.loadtime.definition.Definition$Pointcut
            astore 9 /* abstractPc */
        start local 9 // org.aspectj.weaver.loadtime.definition.Definition$Pointcut abstractPc
        72: .line 444
            new org.aspectj.weaver.bcel.LazyMethodGen
            dup
            iconst_1
            getstatic org.aspectj.apache.bcel.generic.Type.VOID:Lorg/aspectj/apache/bcel/generic/BasicType;
            aload 9 /* abstractPc */
            getfield org.aspectj.weaver.loadtime.definition.Definition$Pointcut.name:Ljava/lang/String;
            getstatic org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.EMPTY_TYPES:[Lorg/aspectj/apache/bcel/generic/Type;
            getstatic org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.EMPTY_STRINGS:[Ljava/lang/String;
            aload 5 /* cg */
            invokespecial org.aspectj.weaver.bcel.LazyMethodGen.<init>:(ILorg/aspectj/apache/bcel/generic/Type;Ljava/lang/String;[Lorg/aspectj/apache/bcel/generic/Type;[Ljava/lang/String;Lorg/aspectj/weaver/bcel/LazyClassGen;)V
            astore 10 /* mg */
        start local 10 // org.aspectj.weaver.bcel.LazyMethodGen mg
        73: .line 445
            new org.aspectj.apache.bcel.classfile.annotation.SimpleElementValue
            dup
            bipush 115
            aload 5 /* cg */
            invokevirtual org.aspectj.weaver.bcel.LazyClassGen.getConstantPool:()Lorg/aspectj/apache/bcel/classfile/ConstantPool;
            aload 9 /* abstractPc */
            getfield org.aspectj.weaver.loadtime.definition.Definition$Pointcut.expression:Ljava/lang/String;
            invokespecial org.aspectj.apache.bcel.classfile.annotation.SimpleElementValue.<init>:(ILorg/aspectj/apache/bcel/classfile/ConstantPool;Ljava/lang/String;)V
            astore 11 /* svg */
        start local 11 // org.aspectj.apache.bcel.classfile.annotation.SimpleElementValue svg
        74: .line 446
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 12 /* elems */
        start local 12 // java.util.List elems
        75: .line 447
            aload 12 /* elems */
            new org.aspectj.apache.bcel.classfile.annotation.NameValuePair
            dup
            ldc "value"
            aload 11 /* svg */
            aload 5 /* cg */
            invokevirtual org.aspectj.weaver.bcel.LazyClassGen.getConstantPool:()Lorg/aspectj/apache/bcel/classfile/ConstantPool;
            invokespecial org.aspectj.apache.bcel.classfile.annotation.NameValuePair.<init>:(Ljava/lang/String;Lorg/aspectj/apache/bcel/classfile/annotation/ElementValue;Lorg/aspectj/apache/bcel/classfile/ConstantPool;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        76: .line 448
            new org.aspectj.apache.bcel.classfile.annotation.AnnotationGen
            dup
            new org.aspectj.apache.bcel.generic.ObjectType
            dup
            ldc "org/aspectj/lang/annotation/Pointcut"
            invokespecial org.aspectj.apache.bcel.generic.ObjectType.<init>:(Ljava/lang/String;)V
            aload 12 /* elems */
            iconst_1
        77: .line 449
            aload 5 /* cg */
            invokevirtual org.aspectj.weaver.bcel.LazyClassGen.getConstantPool:()Lorg/aspectj/apache/bcel/classfile/ConstantPool;
        78: .line 448
            invokespecial org.aspectj.apache.bcel.classfile.annotation.AnnotationGen.<init>:(Lorg/aspectj/apache/bcel/generic/ObjectType;Ljava/util/List;ZLorg/aspectj/apache/bcel/classfile/ConstantPool;)V
            astore 13 /* mag */
        start local 13 // org.aspectj.apache.bcel.classfile.annotation.AnnotationGen mag
        79: .line 450
            new org.aspectj.weaver.bcel.BcelAnnotation
            dup
            aload 13 /* mag */
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.world:Lorg/aspectj/weaver/World;
            invokespecial org.aspectj.weaver.bcel.BcelAnnotation.<init>:(Lorg/aspectj/apache/bcel/classfile/annotation/AnnotationGen;Lorg/aspectj/weaver/World;)V
            astore 14 /* max */
        start local 14 // org.aspectj.weaver.AnnotationAJ max
        80: .line 451
            aload 10 /* mg */
            aload 14 /* max */
            invokevirtual org.aspectj.weaver.bcel.LazyMethodGen.addAnnotation:(Lorg/aspectj/weaver/AnnotationAJ;)V
        81: .line 453
            aload 10 /* mg */
            invokevirtual org.aspectj.weaver.bcel.LazyMethodGen.getBody:()Lorg/aspectj/apache/bcel/generic/InstructionList;
            astore 15 /* body */
        start local 15 // org.aspectj.apache.bcel.generic.InstructionList body
        82: .line 454
            aload 15 /* body */
            getstatic org.aspectj.apache.bcel.generic.InstructionConstants.RETURN:Lorg/aspectj/apache/bcel/generic/Instruction;
            invokevirtual org.aspectj.apache.bcel.generic.InstructionList.append:(Lorg/aspectj/apache/bcel/generic/Instruction;)Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            pop
        83: .line 455
            aload 5 /* cg */
            aload 10 /* mg */
            invokevirtual org.aspectj.weaver.bcel.LazyClassGen.addMethodGen:(Lorg/aspectj/weaver/bcel/LazyMethodGen;)V
        end local 15 // org.aspectj.apache.bcel.generic.InstructionList body
        end local 14 // org.aspectj.weaver.AnnotationAJ max
        end local 13 // org.aspectj.apache.bcel.classfile.annotation.AnnotationGen mag
        end local 12 // java.util.List elems
        end local 11 // org.aspectj.apache.bcel.classfile.annotation.SimpleElementValue svg
        end local 10 // org.aspectj.weaver.bcel.LazyMethodGen mg
        end local 9 // org.aspectj.weaver.loadtime.definition.Definition$Pointcut abstractPc
        84: .line 441
      StackMap locals:
      StackMap stack:
            aload 8 /* it */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 71
        end local 8 // java.util.Iterator it
        85: .line 459
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.concreteAspect:Lorg/aspectj/weaver/loadtime/definition/Definition$ConcreteAspect;
            getfield org.aspectj.weaver.loadtime.definition.Definition$ConcreteAspect.deows:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            ifle 103
        86: .line 460
            iconst_1
            istore 8 /* counter */
        start local 8 // int counter
        87: .line 461
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.concreteAspect:Lorg/aspectj/weaver/loadtime/definition/Definition$ConcreteAspect;
            getfield org.aspectj.weaver.loadtime.definition.Definition$ConcreteAspect.deows:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 10
            goto 102
      StackMap locals: org.aspectj.weaver.loadtime.ConcreteAspectCodeGen org.aspectj.weaver.patterns.PerClause$Kind org.aspectj.weaver.patterns.PerClause java.lang.String java.lang.String org.aspectj.weaver.bcel.LazyClassGen org.aspectj.weaver.bcel.LazyMethodGen org.aspectj.apache.bcel.generic.InstructionList int top java.util.Iterator
      StackMap stack:
        88: aload 10
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.aspectj.weaver.loadtime.definition.Definition$DeclareErrorOrWarning
            astore 9 /* deow */
        start local 9 // org.aspectj.weaver.loadtime.definition.Definition$DeclareErrorOrWarning deow
        89: .line 466
            new org.aspectj.apache.bcel.generic.FieldGen
            dup
            bipush 16
            getstatic org.aspectj.apache.bcel.generic.ObjectType.STRING:Lorg/aspectj/apache/bcel/generic/ObjectType;
            new java.lang.StringBuilder
            dup
            ldc "rule"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 8 /* counter */
            iinc 8 /* counter */ 1
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 5 /* cg */
            invokevirtual org.aspectj.weaver.bcel.LazyClassGen.getConstantPool:()Lorg/aspectj/apache/bcel/classfile/ConstantPool;
            invokespecial org.aspectj.apache.bcel.generic.FieldGen.<init>:(ILorg/aspectj/apache/bcel/generic/Type;Ljava/lang/String;Lorg/aspectj/apache/bcel/classfile/ConstantPool;)V
            astore 11 /* field */
        start local 11 // org.aspectj.apache.bcel.generic.FieldGen field
        90: .line 467
            new org.aspectj.apache.bcel.classfile.annotation.SimpleElementValue
            dup
            bipush 115
            aload 5 /* cg */
            invokevirtual org.aspectj.weaver.bcel.LazyClassGen.getConstantPool:()Lorg/aspectj/apache/bcel/classfile/ConstantPool;
            aload 9 /* deow */
            getfield org.aspectj.weaver.loadtime.definition.Definition$DeclareErrorOrWarning.pointcut:Ljava/lang/String;
            invokespecial org.aspectj.apache.bcel.classfile.annotation.SimpleElementValue.<init>:(ILorg/aspectj/apache/bcel/classfile/ConstantPool;Ljava/lang/String;)V
            astore 12 /* svg */
        start local 12 // org.aspectj.apache.bcel.classfile.annotation.SimpleElementValue svg
        91: .line 468
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 13 /* elems */
        start local 13 // java.util.List elems
        92: .line 469
            aload 13 /* elems */
            new org.aspectj.apache.bcel.classfile.annotation.NameValuePair
            dup
            ldc "value"
            aload 12 /* svg */
            aload 5 /* cg */
            invokevirtual org.aspectj.weaver.bcel.LazyClassGen.getConstantPool:()Lorg/aspectj/apache/bcel/classfile/ConstantPool;
            invokespecial org.aspectj.apache.bcel.classfile.annotation.NameValuePair.<init>:(Ljava/lang/String;Lorg/aspectj/apache/bcel/classfile/annotation/ElementValue;Lorg/aspectj/apache/bcel/classfile/ConstantPool;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        93: .line 470
            new org.aspectj.apache.bcel.classfile.annotation.AnnotationGen
            dup
        94: new org.aspectj.apache.bcel.generic.ObjectType
            dup
            new java.lang.StringBuilder
            dup
            ldc "org/aspectj/lang/annotation/Declare"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        95: .line 471
            aload 9 /* deow */
            getfield org.aspectj.weaver.loadtime.definition.Definition$DeclareErrorOrWarning.isError:Z
            ifeq 96
            ldc "Error"
            goto 97
      StackMap locals: org.aspectj.weaver.loadtime.ConcreteAspectCodeGen org.aspectj.weaver.patterns.PerClause$Kind org.aspectj.weaver.patterns.PerClause java.lang.String java.lang.String org.aspectj.weaver.bcel.LazyClassGen org.aspectj.weaver.bcel.LazyMethodGen org.aspectj.apache.bcel.generic.InstructionList int org.aspectj.weaver.loadtime.definition.Definition$DeclareErrorOrWarning java.util.Iterator org.aspectj.apache.bcel.generic.FieldGen org.aspectj.apache.bcel.classfile.annotation.SimpleElementValue java.util.List
      StackMap stack: new 93 new 93 new 94 new 94 java.lang.StringBuilder
        96: ldc "Warning"
      StackMap locals: org.aspectj.weaver.loadtime.ConcreteAspectCodeGen org.aspectj.weaver.patterns.PerClause$Kind org.aspectj.weaver.patterns.PerClause java.lang.String java.lang.String org.aspectj.weaver.bcel.LazyClassGen org.aspectj.weaver.bcel.LazyMethodGen org.aspectj.apache.bcel.generic.InstructionList int org.aspectj.weaver.loadtime.definition.Definition$DeclareErrorOrWarning java.util.Iterator org.aspectj.apache.bcel.generic.FieldGen org.aspectj.apache.bcel.classfile.annotation.SimpleElementValue java.util.List
      StackMap stack: new 93 new 93 new 94 new 94 java.lang.StringBuilder java.lang.String
        97: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial org.aspectj.apache.bcel.generic.ObjectType.<init>:(Ljava/lang/String;)V
            aload 13 /* elems */
            iconst_1
            aload 5 /* cg */
            invokevirtual org.aspectj.weaver.bcel.LazyClassGen.getConstantPool:()Lorg/aspectj/apache/bcel/classfile/ConstantPool;
        98: .line 470
            invokespecial org.aspectj.apache.bcel.classfile.annotation.AnnotationGen.<init>:(Lorg/aspectj/apache/bcel/generic/ObjectType;Ljava/util/List;ZLorg/aspectj/apache/bcel/classfile/ConstantPool;)V
            astore 14 /* mag */
        start local 14 // org.aspectj.apache.bcel.classfile.annotation.AnnotationGen mag
        99: .line 472
            aload 11 /* field */
            aload 14 /* mag */
            invokevirtual org.aspectj.apache.bcel.generic.FieldGen.addAnnotation:(Lorg/aspectj/apache/bcel/classfile/annotation/AnnotationGen;)V
       100: .line 474
            aload 11 /* field */
            aload 9 /* deow */
            getfield org.aspectj.weaver.loadtime.definition.Definition$DeclareErrorOrWarning.message:Ljava/lang/String;
            invokevirtual org.aspectj.apache.bcel.generic.FieldGen.setValue:(Ljava/lang/String;)V
       101: .line 475
            aload 5 /* cg */
            aload 11 /* field */
            aconst_null
            invokevirtual org.aspectj.weaver.bcel.LazyClassGen.addField:(Lorg/aspectj/apache/bcel/generic/FieldGen;Lorg/aspectj/bridge/ISourceLocation;)V
        end local 14 // org.aspectj.apache.bcel.classfile.annotation.AnnotationGen mag
        end local 13 // java.util.List elems
        end local 12 // org.aspectj.apache.bcel.classfile.annotation.SimpleElementValue svg
        end local 11 // org.aspectj.apache.bcel.generic.FieldGen field
        end local 9 // org.aspectj.weaver.loadtime.definition.Definition$DeclareErrorOrWarning deow
       102: .line 461
      StackMap locals: org.aspectj.weaver.loadtime.ConcreteAspectCodeGen org.aspectj.weaver.patterns.PerClause$Kind org.aspectj.weaver.patterns.PerClause java.lang.String java.lang.String org.aspectj.weaver.bcel.LazyClassGen org.aspectj.weaver.bcel.LazyMethodGen org.aspectj.apache.bcel.generic.InstructionList int top java.util.Iterator
      StackMap stack:
            aload 10
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 88
        end local 8 // int counter
       103: .line 479
      StackMap locals: org.aspectj.weaver.loadtime.ConcreteAspectCodeGen org.aspectj.weaver.patterns.PerClause$Kind org.aspectj.weaver.patterns.PerClause java.lang.String java.lang.String org.aspectj.weaver.bcel.LazyClassGen org.aspectj.weaver.bcel.LazyMethodGen org.aspectj.apache.bcel.generic.InstructionList
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.concreteAspect:Lorg/aspectj/weaver/loadtime/definition/Definition$ConcreteAspect;
            getfield org.aspectj.weaver.loadtime.definition.Definition$ConcreteAspect.pointcutsAndAdvice:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            ifle 110
       104: .line 480
            iconst_1
            istore 8 /* adviceCounter */
        start local 8 // int adviceCounter
       105: .line 481
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.concreteAspect:Lorg/aspectj/weaver/loadtime/definition/Definition$ConcreteAspect;
            getfield org.aspectj.weaver.loadtime.definition.Definition$ConcreteAspect.pointcutsAndAdvice:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 10
            goto 109
      StackMap locals: org.aspectj.weaver.loadtime.ConcreteAspectCodeGen org.aspectj.weaver.patterns.PerClause$Kind org.aspectj.weaver.patterns.PerClause java.lang.String java.lang.String org.aspectj.weaver.bcel.LazyClassGen org.aspectj.weaver.bcel.LazyMethodGen org.aspectj.apache.bcel.generic.InstructionList int top java.util.Iterator
      StackMap stack:
       106: aload 10
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.aspectj.weaver.loadtime.definition.Definition$PointcutAndAdvice
            astore 9 /* paa */
        start local 9 // org.aspectj.weaver.loadtime.definition.Definition$PointcutAndAdvice paa
       107: .line 482
            aload 0 /* this */
            aload 9 /* paa */
            iload 8 /* adviceCounter */
            aload 5 /* cg */
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.generateAdviceMethod:(Lorg/aspectj/weaver/loadtime/definition/Definition$PointcutAndAdvice;ILorg/aspectj/weaver/bcel/LazyClassGen;)V
       108: .line 483
            iinc 8 /* adviceCounter */ 1
        end local 9 // org.aspectj.weaver.loadtime.definition.Definition$PointcutAndAdvice paa
       109: .line 481
      StackMap locals:
      StackMap stack:
            aload 10
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 106
        end local 8 // int adviceCounter
       110: .line 487
      StackMap locals: org.aspectj.weaver.loadtime.ConcreteAspectCodeGen org.aspectj.weaver.patterns.PerClause$Kind org.aspectj.weaver.patterns.PerClause java.lang.String java.lang.String org.aspectj.weaver.bcel.LazyClassGen org.aspectj.weaver.bcel.LazyMethodGen org.aspectj.apache.bcel.generic.InstructionList
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.concreteAspect:Lorg/aspectj/weaver/loadtime/definition/Definition$ConcreteAspect;
            getfield org.aspectj.weaver.loadtime.definition.Definition$ConcreteAspect.declareAnnotations:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            ifle 116
       111: .line 488
            iconst_1
            istore 8 /* decCounter */
        start local 8 // int decCounter
       112: .line 489
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.concreteAspect:Lorg/aspectj/weaver/loadtime/definition/Definition$ConcreteAspect;
            getfield org.aspectj.weaver.loadtime.definition.Definition$ConcreteAspect.declareAnnotations:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 10
            goto 115
      StackMap locals: org.aspectj.weaver.loadtime.ConcreteAspectCodeGen org.aspectj.weaver.patterns.PerClause$Kind org.aspectj.weaver.patterns.PerClause java.lang.String java.lang.String org.aspectj.weaver.bcel.LazyClassGen org.aspectj.weaver.bcel.LazyMethodGen org.aspectj.apache.bcel.generic.InstructionList int top java.util.Iterator
      StackMap stack:
       113: aload 10
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.aspectj.weaver.loadtime.definition.Definition$DeclareAnnotation
            astore 9 /* da */
        start local 9 // org.aspectj.weaver.loadtime.definition.Definition$DeclareAnnotation da
       114: .line 490
            aload 0 /* this */
            aload 9 /* da */
            iload 8 /* decCounter */
            iinc 8 /* decCounter */ 1
            aload 5 /* cg */
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.generateDeclareAnnotation:(Lorg/aspectj/weaver/loadtime/definition/Definition$DeclareAnnotation;ILorg/aspectj/weaver/bcel/LazyClassGen;)V
        end local 9 // org.aspectj.weaver.loadtime.definition.Definition$DeclareAnnotation da
       115: .line 489
      StackMap locals:
      StackMap stack:
            aload 10
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 113
        end local 8 // int decCounter
       116: .line 495
      StackMap locals: org.aspectj.weaver.loadtime.ConcreteAspectCodeGen org.aspectj.weaver.patterns.PerClause$Kind org.aspectj.weaver.patterns.PerClause java.lang.String java.lang.String org.aspectj.weaver.bcel.LazyClassGen org.aspectj.weaver.bcel.LazyMethodGen org.aspectj.apache.bcel.generic.InstructionList
      StackMap stack:
            new org.aspectj.weaver.ReferenceType
            dup
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.concreteAspect:Lorg/aspectj/weaver/loadtime/definition/Definition$ConcreteAspect;
            getfield org.aspectj.weaver.loadtime.definition.Definition$ConcreteAspect.name:Ljava/lang/String;
            invokestatic org.aspectj.weaver.ResolvedType.forName:(Ljava/lang/String;)Lorg/aspectj/weaver/UnresolvedType;
            invokevirtual org.aspectj.weaver.UnresolvedType.getSignature:()Ljava/lang/String;
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.world:Lorg/aspectj/weaver/World;
            invokespecial org.aspectj.weaver.ReferenceType.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/World;)V
            astore 8 /* rt */
        start local 8 // org.aspectj.weaver.ReferenceType rt
       117: .line 496
            new org.aspectj.weaver.GeneratedReferenceTypeDelegate
            dup
            aload 8 /* rt */
            invokespecial org.aspectj.weaver.GeneratedReferenceTypeDelegate.<init>:(Lorg/aspectj/weaver/ReferenceType;)V
            astore 9 /* grtd */
        start local 9 // org.aspectj.weaver.GeneratedReferenceTypeDelegate grtd
       118: .line 497
            aload 9 /* grtd */
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.parent:Lorg/aspectj/weaver/ResolvedType;
            invokevirtual org.aspectj.weaver.GeneratedReferenceTypeDelegate.setSuperclass:(Lorg/aspectj/weaver/ResolvedType;)V
       119: .line 498
            aload 8 /* rt */
            aload 9 /* grtd */
            invokevirtual org.aspectj.weaver.ReferenceType.setDelegate:(Lorg/aspectj/weaver/ReferenceTypeDelegate;)V
       120: .line 500
            new org.aspectj.weaver.bcel.BcelPerClauseAspectAdder
            dup
            aload 8 /* rt */
            aload 1 /* perclauseKind */
            invokespecial org.aspectj.weaver.bcel.BcelPerClauseAspectAdder.<init>:(Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/weaver/patterns/PerClause$Kind;)V
            astore 10 /* perClauseMunger */
        start local 10 // org.aspectj.weaver.bcel.BcelPerClauseAspectAdder perClauseMunger
       121: .line 501
            aload 10 /* perClauseMunger */
            aload 5 /* cg */
            iconst_0
            invokevirtual org.aspectj.weaver.bcel.BcelPerClauseAspectAdder.forceMunge:(Lorg/aspectj/weaver/bcel/LazyClassGen;Z)Z
            pop
       122: .line 506
            aload 5 /* cg */
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.world:Lorg/aspectj/weaver/World;
            checkcast org.aspectj.weaver.bcel.BcelWorld
            invokevirtual org.aspectj.weaver.bcel.LazyClassGen.getJavaClass:(Lorg/aspectj/weaver/bcel/BcelWorld;)Lorg/aspectj/apache/bcel/classfile/JavaClass;
            astore 11 /* jc */
        start local 11 // org.aspectj.apache.bcel.classfile.JavaClass jc
       123: .line 507
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.world:Lorg/aspectj/weaver/World;
            checkcast org.aspectj.weaver.bcel.BcelWorld
            aload 11 /* jc */
            iconst_1
            invokevirtual org.aspectj.weaver.bcel.BcelWorld.addSourceObjectType:(Lorg/aspectj/apache/bcel/classfile/JavaClass;Z)Lorg/aspectj/weaver/bcel/BcelObjectType;
            pop
       124: .line 509
            aload 0 /* this */
            aload 11 /* jc */
            invokevirtual org.aspectj.apache.bcel.classfile.JavaClass.getBytes:()[B
            putfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.bytes:[B
       125: .line 510
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.bytes:[B
            areturn
        end local 11 // org.aspectj.apache.bcel.classfile.JavaClass jc
        end local 10 // org.aspectj.weaver.bcel.BcelPerClauseAspectAdder perClauseMunger
        end local 9 // org.aspectj.weaver.GeneratedReferenceTypeDelegate grtd
        end local 8 // org.aspectj.weaver.ReferenceType rt
        end local 7 // org.aspectj.apache.bcel.generic.InstructionList cbody
        end local 6 // org.aspectj.weaver.bcel.LazyMethodGen init
        end local 5 // org.aspectj.weaver.bcel.LazyClassGen cg
        end local 4 // java.lang.String parentName
        end local 3 // java.lang.String perclauseString
        end local 2 // org.aspectj.weaver.patterns.PerClause parentPerClause
        end local 1 // org.aspectj.weaver.patterns.PerClause$Kind perclauseKind
        end local 0 // org.aspectj.weaver.loadtime.ConcreteAspectCodeGen this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0  126     0             this  Lorg/aspectj/weaver/loadtime/ConcreteAspectCodeGen;
            5  126     1    perclauseKind  Lorg/aspectj/weaver/patterns/PerClause$Kind;
            8  126     2  parentPerClause  Lorg/aspectj/weaver/patterns/PerClause;
           11  126     3  perclauseString  Ljava/lang/String;
           31  126     4       parentName  Ljava/lang/String;
           39  126     5               cg  Lorg/aspectj/weaver/bcel/LazyClassGen;
           45   46     6               ag  Lorg/aspectj/apache/bcel/classfile/annotation/AnnotationGen;
           48   55     6            elems  Ljava/util/List<Lorg/aspectj/apache/bcel/classfile/annotation/NameValuePair;>;
           54   55     7               ag  Lorg/aspectj/apache/bcel/classfile/annotation/AnnotationGen;
           57   63     6              svg  Lorg/aspectj/apache/bcel/classfile/annotation/SimpleElementValue;
           58   63     7            elems  Ljava/util/List<Lorg/aspectj/apache/bcel/classfile/annotation/NameValuePair;>;
           62   63     8           agprec  Lorg/aspectj/apache/bcel/classfile/annotation/AnnotationGen;
           64  126     6             init  Lorg/aspectj/weaver/bcel/LazyMethodGen;
           65  126     7            cbody  Lorg/aspectj/apache/bcel/generic/InstructionList;
           70   85     8               it  Ljava/util/Iterator<Lorg/aspectj/weaver/loadtime/definition/Definition$Pointcut;>;
           72   84     9       abstractPc  Lorg/aspectj/weaver/loadtime/definition/Definition$Pointcut;
           73   84    10               mg  Lorg/aspectj/weaver/bcel/LazyMethodGen;
           74   84    11              svg  Lorg/aspectj/apache/bcel/classfile/annotation/SimpleElementValue;
           75   84    12            elems  Ljava/util/List<Lorg/aspectj/apache/bcel/classfile/annotation/NameValuePair;>;
           79   84    13              mag  Lorg/aspectj/apache/bcel/classfile/annotation/AnnotationGen;
           80   84    14              max  Lorg/aspectj/weaver/AnnotationAJ;
           82   84    15             body  Lorg/aspectj/apache/bcel/generic/InstructionList;
           87  103     8          counter  I
           89  102     9             deow  Lorg/aspectj/weaver/loadtime/definition/Definition$DeclareErrorOrWarning;
           90  102    11            field  Lorg/aspectj/apache/bcel/generic/FieldGen;
           91  102    12              svg  Lorg/aspectj/apache/bcel/classfile/annotation/SimpleElementValue;
           92  102    13            elems  Ljava/util/List<Lorg/aspectj/apache/bcel/classfile/annotation/NameValuePair;>;
           99  102    14              mag  Lorg/aspectj/apache/bcel/classfile/annotation/AnnotationGen;
          105  110     8    adviceCounter  I
          107  109     9              paa  Lorg/aspectj/weaver/loadtime/definition/Definition$PointcutAndAdvice;
          112  116     8       decCounter  I
          114  115     9               da  Lorg/aspectj/weaver/loadtime/definition/Definition$DeclareAnnotation;
          117  126     8               rt  Lorg/aspectj/weaver/ReferenceType;
          118  126     9             grtd  Lorg/aspectj/weaver/GeneratedReferenceTypeDelegate;
          121  126    10  perClauseMunger  Lorg/aspectj/weaver/bcel/BcelPerClauseAspectAdder;
          123  126    11               jc  Lorg/aspectj/apache/bcel/classfile/JavaClass;

  private void generateDeclareAnnotation(org.aspectj.weaver.loadtime.definition.Definition$DeclareAnnotation, int, org.aspectj.weaver.bcel.LazyClassGen);
    descriptor: (Lorg/aspectj/weaver/loadtime/definition/Definition$DeclareAnnotation;ILorg/aspectj/weaver/bcel/LazyClassGen;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=13, args_size=4
        start local 0 // org.aspectj.weaver.loadtime.ConcreteAspectCodeGen this
        start local 1 // org.aspectj.weaver.loadtime.definition.Definition$DeclareAnnotation da
        start local 2 // int decCounter
        start local 3 // org.aspectj.weaver.bcel.LazyClassGen cg
         0: .line 547
            aload 0 /* this */
            aload 3 /* cg */
            aload 1 /* da */
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.buildDeclareAnnotation_actualAnnotation:(Lorg/aspectj/weaver/bcel/LazyClassGen;Lorg/aspectj/weaver/loadtime/definition/Definition$DeclareAnnotation;)Lorg/aspectj/weaver/AnnotationAJ;
            astore 4 /* constructedAnnotation */
        start local 4 // org.aspectj.weaver.AnnotationAJ constructedAnnotation
         1: .line 548
            aload 4 /* constructedAnnotation */
            ifnonnull 3
         2: .line 549
            return
         3: .line 552
      StackMap locals: org.aspectj.weaver.AnnotationAJ
      StackMap stack:
            aload 1 /* da */
            getfield org.aspectj.weaver.loadtime.definition.Definition$DeclareAnnotation.declareAnnotationKind:Lorg/aspectj/weaver/loadtime/definition/Definition$DeclareAnnotationKind;
            invokevirtual org.aspectj.weaver.loadtime.definition.Definition$DeclareAnnotationKind.name:()Ljava/lang/String;
            invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
            astore 5 /* nameComponent */
        start local 5 // java.lang.String nameComponent
         4: .line 553
            new java.lang.StringBuilder
            dup
            ldc "ajc$declare_at_"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 5 /* nameComponent */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "_"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 2 /* decCounter */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 6 /* declareName */
        start local 6 // java.lang.String declareName
         5: .line 554
            new org.aspectj.weaver.bcel.LazyMethodGen
            dup
            iconst_1
            getstatic org.aspectj.apache.bcel.generic.Type.VOID:Lorg/aspectj/apache/bcel/generic/BasicType;
            aload 6 /* declareName */
            getstatic org.aspectj.apache.bcel.generic.Type.NO_ARGS:[Lorg/aspectj/apache/bcel/generic/Type;
            getstatic org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.EMPTY_STRINGS:[Ljava/lang/String;
            aload 3 /* cg */
            invokespecial org.aspectj.weaver.bcel.LazyMethodGen.<init>:(ILorg/aspectj/apache/bcel/generic/Type;Ljava/lang/String;[Lorg/aspectj/apache/bcel/generic/Type;[Ljava/lang/String;Lorg/aspectj/weaver/bcel/LazyClassGen;)V
            astore 7 /* declareMethod */
        start local 7 // org.aspectj.weaver.bcel.LazyMethodGen declareMethod
         6: .line 555
            aload 7 /* declareMethod */
            invokevirtual org.aspectj.weaver.bcel.LazyMethodGen.getBody:()Lorg/aspectj/apache/bcel/generic/InstructionList;
            astore 8 /* declareMethodBody */
        start local 8 // org.aspectj.apache.bcel.generic.InstructionList declareMethodBody
         7: .line 556
            aload 8 /* declareMethodBody */
            getstatic org.aspectj.apache.bcel.generic.InstructionFactory.RETURN:Lorg/aspectj/apache/bcel/generic/Instruction;
            invokevirtual org.aspectj.apache.bcel.generic.InstructionList.append:(Lorg/aspectj/apache/bcel/generic/Instruction;)Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            pop
         8: .line 557
            aload 7 /* declareMethod */
            aload 4 /* constructedAnnotation */
            invokevirtual org.aspectj.weaver.bcel.LazyMethodGen.addAnnotation:(Lorg/aspectj/weaver/AnnotationAJ;)V
         9: .line 559
            aconst_null
            astore 9 /* deca */
        start local 9 // org.aspectj.weaver.patterns.DeclareAnnotation deca
        10: .line 560
            aload 1 /* da */
            getfield org.aspectj.weaver.loadtime.definition.Definition$DeclareAnnotation.pattern:Ljava/lang/String;
            aconst_null
            invokestatic org.aspectj.weaver.patterns.BasicTokenSource.makeTokenSource:(Ljava/lang/String;Lorg/aspectj/weaver/ISourceContext;)Lorg/aspectj/weaver/patterns/ITokenSource;
            astore 10 /* tokenSource */
        start local 10 // org.aspectj.weaver.patterns.ITokenSource tokenSource
        11: .line 561
            new org.aspectj.weaver.patterns.PatternParser
            dup
            aload 10 /* tokenSource */
            invokespecial org.aspectj.weaver.patterns.PatternParser.<init>:(Lorg/aspectj/weaver/patterns/ITokenSource;)V
            astore 11 /* pp */
        start local 11 // org.aspectj.weaver.patterns.PatternParser pp
        12: .line 563
            aload 1 /* da */
            getfield org.aspectj.weaver.loadtime.definition.Definition$DeclareAnnotation.declareAnnotationKind:Lorg/aspectj/weaver/loadtime/definition/Definition$DeclareAnnotationKind;
            getstatic org.aspectj.weaver.loadtime.definition.Definition$DeclareAnnotationKind.Method:Lorg/aspectj/weaver/loadtime/definition/Definition$DeclareAnnotationKind;
            if_acmpeq 13
            aload 1 /* da */
            getfield org.aspectj.weaver.loadtime.definition.Definition$DeclareAnnotation.declareAnnotationKind:Lorg/aspectj/weaver/loadtime/definition/Definition$DeclareAnnotationKind;
            getstatic org.aspectj.weaver.loadtime.definition.Definition$DeclareAnnotationKind.Field:Lorg/aspectj/weaver/loadtime/definition/Definition$DeclareAnnotationKind;
            if_acmpne 20
        13: .line 564
      StackMap locals: org.aspectj.weaver.loadtime.ConcreteAspectCodeGen org.aspectj.weaver.loadtime.definition.Definition$DeclareAnnotation int org.aspectj.weaver.bcel.LazyClassGen org.aspectj.weaver.AnnotationAJ java.lang.String java.lang.String org.aspectj.weaver.bcel.LazyMethodGen org.aspectj.apache.bcel.generic.InstructionList org.aspectj.weaver.patterns.DeclareAnnotation org.aspectj.weaver.patterns.ITokenSource org.aspectj.weaver.patterns.PatternParser
      StackMap stack:
            aload 1 /* da */
            getfield org.aspectj.weaver.loadtime.definition.Definition$DeclareAnnotation.declareAnnotationKind:Lorg/aspectj/weaver/loadtime/definition/Definition$DeclareAnnotationKind;
            getstatic org.aspectj.weaver.loadtime.definition.Definition$DeclareAnnotationKind.Method:Lorg/aspectj/weaver/loadtime/definition/Definition$DeclareAnnotationKind;
            if_acmpne 14
            aload 11 /* pp */
            iconst_1
            invokevirtual org.aspectj.weaver.patterns.PatternParser.parseCompoundMethodOrConstructorSignaturePattern:(Z)Lorg/aspectj/weaver/patterns/ISignaturePattern;
            goto 15
      StackMap locals:
      StackMap stack:
        14: aload 11 /* pp */
            invokevirtual org.aspectj.weaver.patterns.PatternParser.parseCompoundFieldSignaturePattern:()Lorg/aspectj/weaver/patterns/ISignaturePattern;
      StackMap locals:
      StackMap stack: org.aspectj.weaver.patterns.ISignaturePattern
        15: astore 12 /* isp */
        start local 12 // org.aspectj.weaver.patterns.ISignaturePattern isp
        16: .line 565
            new org.aspectj.weaver.patterns.DeclareAnnotation
            dup
            aload 1 /* da */
            getfield org.aspectj.weaver.loadtime.definition.Definition$DeclareAnnotation.declareAnnotationKind:Lorg/aspectj/weaver/loadtime/definition/Definition$DeclareAnnotationKind;
            getstatic org.aspectj.weaver.loadtime.definition.Definition$DeclareAnnotationKind.Method:Lorg/aspectj/weaver/loadtime/definition/Definition$DeclareAnnotationKind;
            if_acmpne 17
            getstatic org.aspectj.weaver.patterns.DeclareAnnotation.AT_METHOD:Lorg/aspectj/weaver/patterns/DeclareAnnotation$Kind;
            goto 18
      StackMap locals: org.aspectj.weaver.loadtime.ConcreteAspectCodeGen org.aspectj.weaver.loadtime.definition.Definition$DeclareAnnotation int org.aspectj.weaver.bcel.LazyClassGen org.aspectj.weaver.AnnotationAJ java.lang.String java.lang.String org.aspectj.weaver.bcel.LazyMethodGen org.aspectj.apache.bcel.generic.InstructionList org.aspectj.weaver.patterns.DeclareAnnotation org.aspectj.weaver.patterns.ITokenSource org.aspectj.weaver.patterns.PatternParser org.aspectj.weaver.patterns.ISignaturePattern
      StackMap stack: new 16 new 16
        17: getstatic org.aspectj.weaver.patterns.DeclareAnnotation.AT_FIELD:Lorg/aspectj/weaver/patterns/DeclareAnnotation$Kind;
      StackMap locals: org.aspectj.weaver.loadtime.ConcreteAspectCodeGen org.aspectj.weaver.loadtime.definition.Definition$DeclareAnnotation int org.aspectj.weaver.bcel.LazyClassGen org.aspectj.weaver.AnnotationAJ java.lang.String java.lang.String org.aspectj.weaver.bcel.LazyMethodGen org.aspectj.apache.bcel.generic.InstructionList org.aspectj.weaver.patterns.DeclareAnnotation org.aspectj.weaver.patterns.ITokenSource org.aspectj.weaver.patterns.PatternParser org.aspectj.weaver.patterns.ISignaturePattern
      StackMap stack: new 16 new 16 org.aspectj.weaver.patterns.DeclareAnnotation$Kind
        18: aload 12 /* isp */
            invokespecial org.aspectj.weaver.patterns.DeclareAnnotation.<init>:(Lorg/aspectj/weaver/patterns/DeclareAnnotation$Kind;Lorg/aspectj/weaver/patterns/ISignaturePattern;)V
            astore 9 /* deca */
        end local 12 // org.aspectj.weaver.patterns.ISignaturePattern isp
        19: .line 566
            goto 23
      StackMap locals:
      StackMap stack:
        20: aload 1 /* da */
            getfield org.aspectj.weaver.loadtime.definition.Definition$DeclareAnnotation.declareAnnotationKind:Lorg/aspectj/weaver/loadtime/definition/Definition$DeclareAnnotationKind;
            getstatic org.aspectj.weaver.loadtime.definition.Definition$DeclareAnnotationKind.Type:Lorg/aspectj/weaver/loadtime/definition/Definition$DeclareAnnotationKind;
            if_acmpne 23
        21: .line 567
            aload 11 /* pp */
            invokevirtual org.aspectj.weaver.patterns.PatternParser.parseTypePattern:()Lorg/aspectj/weaver/patterns/TypePattern;
            astore 12 /* tp */
        start local 12 // org.aspectj.weaver.patterns.TypePattern tp
        22: .line 568
            new org.aspectj.weaver.patterns.DeclareAnnotation
            dup
            getstatic org.aspectj.weaver.patterns.DeclareAnnotation.AT_TYPE:Lorg/aspectj/weaver/patterns/DeclareAnnotation$Kind;
            aload 12 /* tp */
            invokespecial org.aspectj.weaver.patterns.DeclareAnnotation.<init>:(Lorg/aspectj/weaver/patterns/DeclareAnnotation$Kind;Lorg/aspectj/weaver/patterns/TypePattern;)V
            astore 9 /* deca */
        end local 12 // org.aspectj.weaver.patterns.TypePattern tp
        23: .line 571
      StackMap locals:
      StackMap stack:
            aload 9 /* deca */
            aload 6 /* declareName */
            invokevirtual org.aspectj.weaver.patterns.DeclareAnnotation.setAnnotationMethod:(Ljava/lang/String;)V
        24: .line 572
            aload 9 /* deca */
            aload 1 /* da */
            getfield org.aspectj.weaver.loadtime.definition.Definition$DeclareAnnotation.annotation:Ljava/lang/String;
            invokevirtual org.aspectj.weaver.patterns.DeclareAnnotation.setAnnotationString:(Ljava/lang/String;)V
        25: .line 573
            new org.aspectj.weaver.AjAttribute$DeclareAttribute
            dup
            aload 9 /* deca */
            invokespecial org.aspectj.weaver.AjAttribute$DeclareAttribute.<init>:(Lorg/aspectj/weaver/patterns/Declare;)V
            astore 12 /* attribute */
        start local 12 // org.aspectj.weaver.AjAttribute attribute
        26: .line 574
            aload 3 /* cg */
            aload 12 /* attribute */
            invokevirtual org.aspectj.weaver.bcel.LazyClassGen.addAttribute:(Lorg/aspectj/weaver/AjAttribute;)V
        27: .line 575
            aload 3 /* cg */
            aload 7 /* declareMethod */
            invokevirtual org.aspectj.weaver.bcel.LazyClassGen.addMethodGen:(Lorg/aspectj/weaver/bcel/LazyMethodGen;)V
        28: .line 576
            return
        end local 12 // org.aspectj.weaver.AjAttribute attribute
        end local 11 // org.aspectj.weaver.patterns.PatternParser pp
        end local 10 // org.aspectj.weaver.patterns.ITokenSource tokenSource
        end local 9 // org.aspectj.weaver.patterns.DeclareAnnotation deca
        end local 8 // org.aspectj.apache.bcel.generic.InstructionList declareMethodBody
        end local 7 // org.aspectj.weaver.bcel.LazyMethodGen declareMethod
        end local 6 // java.lang.String declareName
        end local 5 // java.lang.String nameComponent
        end local 4 // org.aspectj.weaver.AnnotationAJ constructedAnnotation
        end local 3 // org.aspectj.weaver.bcel.LazyClassGen cg
        end local 2 // int decCounter
        end local 1 // org.aspectj.weaver.loadtime.definition.Definition$DeclareAnnotation da
        end local 0 // org.aspectj.weaver.loadtime.ConcreteAspectCodeGen this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0   29     0                   this  Lorg/aspectj/weaver/loadtime/ConcreteAspectCodeGen;
            0   29     1                     da  Lorg/aspectj/weaver/loadtime/definition/Definition$DeclareAnnotation;
            0   29     2             decCounter  I
            0   29     3                     cg  Lorg/aspectj/weaver/bcel/LazyClassGen;
            1   29     4  constructedAnnotation  Lorg/aspectj/weaver/AnnotationAJ;
            4   29     5          nameComponent  Ljava/lang/String;
            5   29     6            declareName  Ljava/lang/String;
            6   29     7          declareMethod  Lorg/aspectj/weaver/bcel/LazyMethodGen;
            7   29     8      declareMethodBody  Lorg/aspectj/apache/bcel/generic/InstructionList;
           10   29     9                   deca  Lorg/aspectj/weaver/patterns/DeclareAnnotation;
           11   29    10            tokenSource  Lorg/aspectj/weaver/patterns/ITokenSource;
           12   29    11                     pp  Lorg/aspectj/weaver/patterns/PatternParser;
           16   19    12                    isp  Lorg/aspectj/weaver/patterns/ISignaturePattern;
           22   23    12                     tp  Lorg/aspectj/weaver/patterns/TypePattern;
           26   29    12              attribute  Lorg/aspectj/weaver/AjAttribute;
    MethodParameters:
            Name  Flags
      da          
      decCounter  
      cg          

  private org.aspectj.weaver.AnnotationAJ buildDeclareAnnotation_actualAnnotation(org.aspectj.weaver.bcel.LazyClassGen, org.aspectj.weaver.loadtime.definition.Definition$DeclareAnnotation);
    descriptor: (Lorg/aspectj/weaver/bcel/LazyClassGen;Lorg/aspectj/weaver/loadtime/definition/Definition$DeclareAnnotation;)Lorg/aspectj/weaver/AnnotationAJ;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // org.aspectj.weaver.loadtime.ConcreteAspectCodeGen this
        start local 1 // org.aspectj.weaver.bcel.LazyClassGen cg
        start local 2 // org.aspectj.weaver.loadtime.definition.Definition$DeclareAnnotation da
         0: .line 582
            aload 0 /* this */
            aload 1 /* cg */
            invokevirtual org.aspectj.weaver.bcel.LazyClassGen.getConstantPool:()Lorg/aspectj/apache/bcel/classfile/ConstantPool;
            aload 1 /* cg */
            invokevirtual org.aspectj.weaver.bcel.LazyClassGen.getWorld:()Lorg/aspectj/weaver/World;
            aload 2 /* da */
            getfield org.aspectj.weaver.loadtime.definition.Definition$DeclareAnnotation.annotation:Ljava/lang/String;
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.buildAnnotationFromString:(Lorg/aspectj/apache/bcel/classfile/ConstantPool;Lorg/aspectj/weaver/World;Ljava/lang/String;)Lorg/aspectj/apache/bcel/classfile/annotation/AnnotationGen;
            astore 3 /* anno */
        start local 3 // org.aspectj.apache.bcel.classfile.annotation.AnnotationGen anno
         1: .line 583
            aload 3 /* anno */
            ifnonnull 3
         2: .line 584
            aconst_null
            areturn
         3: .line 586
      StackMap locals: org.aspectj.apache.bcel.classfile.annotation.AnnotationGen
      StackMap stack:
            new org.aspectj.weaver.bcel.BcelAnnotation
            dup
            aload 3 /* anno */
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.world:Lorg/aspectj/weaver/World;
            invokespecial org.aspectj.weaver.bcel.BcelAnnotation.<init>:(Lorg/aspectj/apache/bcel/classfile/annotation/AnnotationGen;Lorg/aspectj/weaver/World;)V
            astore 4 /* bcelAnnotation */
        start local 4 // org.aspectj.weaver.AnnotationAJ bcelAnnotation
         4: .line 587
            aload 4 /* bcelAnnotation */
            areturn
        end local 4 // org.aspectj.weaver.AnnotationAJ bcelAnnotation
        end local 3 // org.aspectj.apache.bcel.classfile.annotation.AnnotationGen anno
        end local 2 // org.aspectj.weaver.loadtime.definition.Definition$DeclareAnnotation da
        end local 1 // org.aspectj.weaver.bcel.LazyClassGen cg
        end local 0 // org.aspectj.weaver.loadtime.ConcreteAspectCodeGen this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    5     0            this  Lorg/aspectj/weaver/loadtime/ConcreteAspectCodeGen;
            0    5     1              cg  Lorg/aspectj/weaver/bcel/LazyClassGen;
            0    5     2              da  Lorg/aspectj/weaver/loadtime/definition/Definition$DeclareAnnotation;
            1    5     3            anno  Lorg/aspectj/apache/bcel/classfile/annotation/AnnotationGen;
            4    5     4  bcelAnnotation  Lorg/aspectj/weaver/AnnotationAJ;
    MethodParameters:
      Name  Flags
      cg    
      da    

  private org.aspectj.apache.bcel.classfile.annotation.AnnotationGen buildAnnotationFromString(org.aspectj.apache.bcel.classfile.ConstantPool, org.aspectj.weaver.World, java.lang.String);
    descriptor: (Lorg/aspectj/apache/bcel/classfile/ConstantPool;Lorg/aspectj/weaver/World;Ljava/lang/String;)Lorg/aspectj/apache/bcel/classfile/annotation/AnnotationGen;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=25, args_size=4
        start local 0 // org.aspectj.weaver.loadtime.ConcreteAspectCodeGen this
        start local 1 // org.aspectj.apache.bcel.classfile.ConstantPool cp
        start local 2 // org.aspectj.weaver.World w
        start local 3 // java.lang.String annotationString
         0: .line 598
            aload 3 /* annotationString */
            bipush 40
            invokevirtual java.lang.String.indexOf:(I)I
            istore 4 /* paren */
        start local 4 // int paren
         1: .line 599
            iload 4 /* paren */
            iconst_m1
            if_icmpne 4
         2: .line 601
            aload 0 /* this */
            aload 1 /* cp */
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.world:Lorg/aspectj/weaver/World;
            aload 3 /* annotationString */
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.buildBaseAnnotationType:(Lorg/aspectj/apache/bcel/classfile/ConstantPool;Lorg/aspectj/weaver/World;Ljava/lang/String;)Lorg/aspectj/apache/bcel/classfile/annotation/AnnotationGen;
            astore 5 /* aaj */
        start local 5 // org.aspectj.apache.bcel.classfile.annotation.AnnotationGen aaj
         3: .line 602
            aload 5 /* aaj */
            areturn
        end local 5 // org.aspectj.apache.bcel.classfile.annotation.AnnotationGen aaj
         4: .line 605
      StackMap locals: int
      StackMap stack:
            aload 3 /* annotationString */
            iconst_0
            iload 4 /* paren */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 5 /* name */
        start local 5 // java.lang.String name
         5: .line 607
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 6 /* values */
        start local 6 // java.util.List values
         6: .line 608
            iload 4 /* paren */
            iconst_1
            iadd
            istore 7 /* pos */
        start local 7 // int pos
         7: .line 609
            iconst_0
            istore 8 /* depth */
        start local 8 // int depth
         8: .line 610
            aload 3 /* annotationString */
            invokevirtual java.lang.String.length:()I
            istore 9 /* len */
        start local 9 // int len
         9: .line 611
            iload 7 /* pos */
            istore 10 /* start */
        start local 10 // int start
        10: .line 612
            goto 23
        11: .line 613
      StackMap locals: org.aspectj.weaver.loadtime.ConcreteAspectCodeGen org.aspectj.apache.bcel.classfile.ConstantPool org.aspectj.weaver.World java.lang.String int java.lang.String java.util.List int int int int
      StackMap stack:
            aload 3 /* annotationString */
            iload 7 /* pos */
            invokevirtual java.lang.String.charAt:(I)C
            istore 11 /* ch */
        start local 11 // char ch
        12: .line 614
            iload 11 /* ch */
            bipush 41
            if_icmpne 14
            iload 8 /* depth */
            ifne 14
        13: .line 615
            goto 24
        14: .line 617
      StackMap locals: int
      StackMap stack:
            iload 11 /* ch */
            bipush 40
            if_icmpeq 15
            iload 11 /* ch */
            bipush 91
            if_icmpne 17
        15: .line 618
      StackMap locals:
      StackMap stack:
            iinc 8 /* depth */ 1
        16: .line 619
            goto 19
      StackMap locals:
      StackMap stack:
        17: iload 11 /* ch */
            bipush 41
            if_icmpeq 18
            iload 11 /* ch */
            bipush 93
            if_icmpne 19
        18: .line 620
      StackMap locals:
      StackMap stack:
            iinc 8 /* depth */ -1
        19: .line 622
      StackMap locals:
      StackMap stack:
            iload 11 /* ch */
            bipush 44
            if_icmpne 22
            iload 8 /* depth */
            ifne 22
        20: .line 624
            aload 6 /* values */
            aload 3 /* annotationString */
            iload 10 /* start */
            iload 7 /* pos */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        21: .line 625
            iload 7 /* pos */
            iconst_1
            iadd
            istore 10 /* start */
        22: .line 627
      StackMap locals:
      StackMap stack:
            iinc 7 /* pos */ 1
        end local 11 // char ch
        23: .line 612
      StackMap locals:
      StackMap stack:
            iload 7 /* pos */
            iload 9 /* len */
            if_icmplt 11
        24: .line 629
      StackMap locals:
      StackMap stack:
            iload 10 /* start */
            iload 7 /* pos */
            if_icmpeq 26
        25: .line 631
            aload 6 /* values */
            aload 3 /* annotationString */
            iload 10 /* start */
            iload 7 /* pos */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        26: .line 633
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* cp */
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.world:Lorg/aspectj/weaver/World;
            aload 5 /* name */
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.buildBaseAnnotationType:(Lorg/aspectj/apache/bcel/classfile/ConstantPool;Lorg/aspectj/weaver/World;Ljava/lang/String;)Lorg/aspectj/apache/bcel/classfile/annotation/AnnotationGen;
            astore 11 /* aaj */
        start local 11 // org.aspectj.apache.bcel.classfile.annotation.AnnotationGen aaj
        27: .line 634
            aload 11 /* aaj */
            ifnonnull 29
        28: .line 635
            aconst_null
            areturn
        29: .line 637
      StackMap locals: org.aspectj.apache.bcel.classfile.annotation.AnnotationGen
      StackMap stack:
            aload 11 /* aaj */
            invokevirtual org.aspectj.apache.bcel.classfile.annotation.AnnotationGen.getTypeName:()Ljava/lang/String;
            astore 12 /* typename */
        start local 12 // java.lang.String typename
        30: .line 638
            aload 12 /* typename */
            invokestatic org.aspectj.weaver.UnresolvedType.forName:(Ljava/lang/String;)Lorg/aspectj/weaver/UnresolvedType;
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.world:Lorg/aspectj/weaver/World;
            invokevirtual org.aspectj.weaver.UnresolvedType.resolve:(Lorg/aspectj/weaver/World;)Lorg/aspectj/weaver/ResolvedType;
            astore 13 /* type */
        start local 13 // org.aspectj.weaver.ResolvedType type
        31: .line 639
            aload 13 /* type */
            invokevirtual org.aspectj.weaver.ResolvedType.getDeclaredMethods:()[Lorg/aspectj/weaver/ResolvedMember;
            astore 14 /* rms */
        start local 14 // org.aspectj.weaver.ResolvedMember[] rms
        32: .line 641
            aload 6 /* values */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 16
            goto 123
      StackMap locals: org.aspectj.weaver.loadtime.ConcreteAspectCodeGen org.aspectj.apache.bcel.classfile.ConstantPool org.aspectj.weaver.World java.lang.String int java.lang.String java.util.List int int int int org.aspectj.apache.bcel.classfile.annotation.AnnotationGen java.lang.String org.aspectj.weaver.ResolvedType org.aspectj.weaver.ResolvedMember[] top java.util.Iterator
      StackMap stack:
        33: aload 16
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 15 /* value */
        start local 15 // java.lang.String value
        34: .line 642
            aload 15 /* value */
            ldc "="
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            istore 17 /* equalsIndex */
        start local 17 // int equalsIndex
        35: .line 643
            ldc "value"
            astore 18 /* key */
        start local 18 // java.lang.String key
        36: .line 644
            aload 15 /* value */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            bipush 34
            if_icmpeq 39
            iload 17 /* equalsIndex */
            iconst_m1
            if_icmpeq 39
        37: .line 645
            aload 15 /* value */
            iconst_0
            iload 17 /* equalsIndex */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            astore 18 /* key */
        38: .line 646
            aload 15 /* value */
            iload 17 /* equalsIndex */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            astore 15 /* value */
        39: .line 648
      StackMap locals: org.aspectj.weaver.loadtime.ConcreteAspectCodeGen org.aspectj.apache.bcel.classfile.ConstantPool org.aspectj.weaver.World java.lang.String int java.lang.String java.util.List int int int int org.aspectj.apache.bcel.classfile.annotation.AnnotationGen java.lang.String org.aspectj.weaver.ResolvedType org.aspectj.weaver.ResolvedMember[] java.lang.String java.util.Iterator int java.lang.String
      StackMap stack:
            iconst_0
            istore 19 /* keyIsOk */
        start local 19 // boolean keyIsOk
        40: .line 649
            iconst_0
            istore 20 /* m */
        start local 20 // int m
        41: goto 119
        42: .line 650
      StackMap locals: int int
      StackMap stack:
            aconst_null
            astore 21 /* nvp */
        start local 21 // org.aspectj.apache.bcel.classfile.annotation.NameValuePair nvp
        43: .line 651
            aload 14 /* rms */
            iload 20 /* m */
            aaload
            invokeinterface org.aspectj.weaver.ResolvedMember.getName:()Ljava/lang/String;
            aload 18 /* key */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 116
        44: .line 653
            iconst_1
            istore 19 /* keyIsOk */
        45: .line 654
            aload 14 /* rms */
            iload 20 /* m */
            aaload
            invokeinterface org.aspectj.weaver.ResolvedMember.getReturnType:()Lorg/aspectj/weaver/UnresolvedType;
            astore 22 /* rt */
        start local 22 // org.aspectj.weaver.UnresolvedType rt
        46: .line 655
            aload 22 /* rt */
            invokevirtual org.aspectj.weaver.UnresolvedType.isPrimitiveType:()Z
            ifeq 98
        47: .line 656
            aload 22 /* rt */
            invokevirtual org.aspectj.weaver.UnresolvedType.getSignature:()Ljava/lang/String;
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            lookupswitch { // 8
                   66: 78
                   67: 84
                   68: 66
                   70: 60
                   73: 72
                   74: 48
                   83: 54
                   90: 89
              default: 95
          }
        48: .line 659
      StackMap locals: org.aspectj.apache.bcel.classfile.annotation.NameValuePair org.aspectj.weaver.UnresolvedType
      StackMap stack:
            aload 15 /* value */
            invokestatic java.lang.Long.parseLong:(Ljava/lang/String;)J
            lstore 23 /* longValue */
        start local 23 // long longValue
        49: .line 660
            new org.aspectj.apache.bcel.classfile.annotation.NameValuePair
            dup
            aload 18 /* key */
            new org.aspectj.apache.bcel.classfile.annotation.SimpleElementValue
            dup
            bipush 74
            aload 1 /* cp */
            lload 23 /* longValue */
            invokespecial org.aspectj.apache.bcel.classfile.annotation.SimpleElementValue.<init>:(ILorg/aspectj/apache/bcel/classfile/ConstantPool;J)V
            aload 1 /* cp */
            invokespecial org.aspectj.apache.bcel.classfile.annotation.NameValuePair.<init>:(Ljava/lang/String;Lorg/aspectj/apache/bcel/classfile/annotation/ElementValue;Lorg/aspectj/apache/bcel/classfile/ConstantPool;)V
            astore 21 /* nvp */
        end local 23 // long longValue
        50: .line 661
            goto 116
      StackMap locals:
      StackMap stack: java.lang.NumberFormatException
        51: pop
        52: .line 662
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "unable to interpret annotation value '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 15 /* value */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "' as a long"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.reportError:(Ljava/lang/String;)V
        53: .line 663
            aconst_null
            areturn
        54: .line 668
      StackMap locals:
      StackMap stack:
            aload 15 /* value */
            invokestatic java.lang.Short.parseShort:(Ljava/lang/String;)S
            istore 23 /* shortValue */
        start local 23 // short shortValue
        55: .line 669
            new org.aspectj.apache.bcel.classfile.annotation.NameValuePair
            dup
            aload 18 /* key */
            new org.aspectj.apache.bcel.classfile.annotation.SimpleElementValue
            dup
            bipush 83
            aload 1 /* cp */
            iload 23 /* shortValue */
            invokespecial org.aspectj.apache.bcel.classfile.annotation.SimpleElementValue.<init>:(ILorg/aspectj/apache/bcel/classfile/ConstantPool;S)V
            aload 1 /* cp */
            invokespecial org.aspectj.apache.bcel.classfile.annotation.NameValuePair.<init>:(Ljava/lang/String;Lorg/aspectj/apache/bcel/classfile/annotation/ElementValue;Lorg/aspectj/apache/bcel/classfile/ConstantPool;)V
            astore 21 /* nvp */
        end local 23 // short shortValue
        56: .line 670
            goto 116
      StackMap locals:
      StackMap stack: java.lang.NumberFormatException
        57: pop
        58: .line 671
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "unable to interpret annotation value '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 15 /* value */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "' as a short"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.reportError:(Ljava/lang/String;)V
        59: .line 672
            aconst_null
            areturn
        60: .line 677
      StackMap locals:
      StackMap stack:
            aload 15 /* value */
            invokestatic java.lang.Float.parseFloat:(Ljava/lang/String;)F
            fstore 23 /* floatValue */
        start local 23 // float floatValue
        61: .line 678
            new org.aspectj.apache.bcel.classfile.annotation.NameValuePair
            dup
            aload 18 /* key */
            new org.aspectj.apache.bcel.classfile.annotation.SimpleElementValue
            dup
            bipush 70
            aload 1 /* cp */
            fload 23 /* floatValue */
            invokespecial org.aspectj.apache.bcel.classfile.annotation.SimpleElementValue.<init>:(ILorg/aspectj/apache/bcel/classfile/ConstantPool;F)V
            aload 1 /* cp */
            invokespecial org.aspectj.apache.bcel.classfile.annotation.NameValuePair.<init>:(Ljava/lang/String;Lorg/aspectj/apache/bcel/classfile/annotation/ElementValue;Lorg/aspectj/apache/bcel/classfile/ConstantPool;)V
            astore 21 /* nvp */
        end local 23 // float floatValue
        62: .line 679
            goto 116
      StackMap locals:
      StackMap stack: java.lang.NumberFormatException
        63: pop
        64: .line 680
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "unable to interpret annotation value '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 15 /* value */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "' as a float"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.reportError:(Ljava/lang/String;)V
        65: .line 681
            aconst_null
            areturn
        66: .line 686
      StackMap locals:
      StackMap stack:
            aload 15 /* value */
            invokestatic java.lang.Double.parseDouble:(Ljava/lang/String;)D
            dstore 23 /* doubleValue */
        start local 23 // double doubleValue
        67: .line 687
            new org.aspectj.apache.bcel.classfile.annotation.NameValuePair
            dup
            aload 18 /* key */
            new org.aspectj.apache.bcel.classfile.annotation.SimpleElementValue
            dup
            bipush 68
            aload 1 /* cp */
            dload 23 /* doubleValue */
            invokespecial org.aspectj.apache.bcel.classfile.annotation.SimpleElementValue.<init>:(ILorg/aspectj/apache/bcel/classfile/ConstantPool;D)V
            aload 1 /* cp */
            invokespecial org.aspectj.apache.bcel.classfile.annotation.NameValuePair.<init>:(Ljava/lang/String;Lorg/aspectj/apache/bcel/classfile/annotation/ElementValue;Lorg/aspectj/apache/bcel/classfile/ConstantPool;)V
            astore 21 /* nvp */
        end local 23 // double doubleValue
        68: .line 688
            goto 116
      StackMap locals:
      StackMap stack: java.lang.NumberFormatException
        69: pop
        70: .line 689
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "unable to interpret annotation value '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 15 /* value */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "' as a double"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.reportError:(Ljava/lang/String;)V
        71: .line 690
            aconst_null
            areturn
        72: .line 695
      StackMap locals:
      StackMap stack:
            aload 15 /* value */
            invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
            istore 23 /* intValue */
        start local 23 // int intValue
        73: .line 696
            new org.aspectj.apache.bcel.classfile.annotation.NameValuePair
            dup
            aload 18 /* key */
            new org.aspectj.apache.bcel.classfile.annotation.SimpleElementValue
            dup
            bipush 73
            aload 1 /* cp */
            iload 23 /* intValue */
            invokespecial org.aspectj.apache.bcel.classfile.annotation.SimpleElementValue.<init>:(ILorg/aspectj/apache/bcel/classfile/ConstantPool;I)V
            aload 1 /* cp */
            invokespecial org.aspectj.apache.bcel.classfile.annotation.NameValuePair.<init>:(Ljava/lang/String;Lorg/aspectj/apache/bcel/classfile/annotation/ElementValue;Lorg/aspectj/apache/bcel/classfile/ConstantPool;)V
            astore 21 /* nvp */
        end local 23 // int intValue
        74: .line 697
            goto 116
      StackMap locals:
      StackMap stack: java.lang.NumberFormatException
        75: pop
        76: .line 698
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "unable to interpret annotation value '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 15 /* value */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "' as an integer"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.reportError:(Ljava/lang/String;)V
        77: .line 699
            aconst_null
            areturn
        78: .line 704
      StackMap locals:
      StackMap stack:
            aload 15 /* value */
            invokestatic java.lang.Byte.parseByte:(Ljava/lang/String;)B
            istore 23 /* byteValue */
        start local 23 // byte byteValue
        79: .line 705
            new org.aspectj.apache.bcel.classfile.annotation.NameValuePair
            dup
            aload 18 /* key */
            new org.aspectj.apache.bcel.classfile.annotation.SimpleElementValue
            dup
            bipush 66
            aload 1 /* cp */
            iload 23 /* byteValue */
            invokespecial org.aspectj.apache.bcel.classfile.annotation.SimpleElementValue.<init>:(ILorg/aspectj/apache/bcel/classfile/ConstantPool;B)V
            aload 1 /* cp */
            invokespecial org.aspectj.apache.bcel.classfile.annotation.NameValuePair.<init>:(Ljava/lang/String;Lorg/aspectj/apache/bcel/classfile/annotation/ElementValue;Lorg/aspectj/apache/bcel/classfile/ConstantPool;)V
            astore 21 /* nvp */
        end local 23 // byte byteValue
        80: .line 706
            goto 116
      StackMap locals:
      StackMap stack: java.lang.NumberFormatException
        81: pop
        82: .line 707
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "unable to interpret annotation value '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 15 /* value */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "' as a byte"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.reportError:(Ljava/lang/String;)V
        83: .line 708
            aconst_null
            areturn
        84: .line 712
      StackMap locals:
      StackMap stack:
            aload 15 /* value */
            invokevirtual java.lang.String.length:()I
            iconst_2
            if_icmpge 87
        85: .line 713
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "unable to interpret annotation value '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 15 /* value */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "' as a char"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.reportError:(Ljava/lang/String;)V
        86: .line 714
            aconst_null
            areturn
        87: .line 716
      StackMap locals:
      StackMap stack:
            new org.aspectj.apache.bcel.classfile.annotation.NameValuePair
            dup
            aload 18 /* key */
            new org.aspectj.apache.bcel.classfile.annotation.SimpleElementValue
            dup
            bipush 67
            aload 1 /* cp */
            aload 15 /* value */
            iconst_1
            invokevirtual java.lang.String.charAt:(I)C
            invokespecial org.aspectj.apache.bcel.classfile.annotation.SimpleElementValue.<init>:(ILorg/aspectj/apache/bcel/classfile/ConstantPool;C)V
            aload 1 /* cp */
            invokespecial org.aspectj.apache.bcel.classfile.annotation.NameValuePair.<init>:(Ljava/lang/String;Lorg/aspectj/apache/bcel/classfile/annotation/ElementValue;Lorg/aspectj/apache/bcel/classfile/ConstantPool;)V
            astore 21 /* nvp */
        88: .line 717
            goto 116
        89: .line 720
      StackMap locals:
      StackMap stack:
            aload 15 /* value */
            invokestatic java.lang.Boolean.parseBoolean:(Ljava/lang/String;)Z
            istore 23 /* booleanValue */
        start local 23 // boolean booleanValue
        90: .line 721
            new org.aspectj.apache.bcel.classfile.annotation.NameValuePair
            dup
            aload 18 /* key */
            new org.aspectj.apache.bcel.classfile.annotation.SimpleElementValue
            dup
            bipush 90
            aload 1 /* cp */
            iload 23 /* booleanValue */
            invokespecial org.aspectj.apache.bcel.classfile.annotation.SimpleElementValue.<init>:(ILorg/aspectj/apache/bcel/classfile/ConstantPool;Z)V
            aload 1 /* cp */
            invokespecial org.aspectj.apache.bcel.classfile.annotation.NameValuePair.<init>:(Ljava/lang/String;Lorg/aspectj/apache/bcel/classfile/annotation/ElementValue;Lorg/aspectj/apache/bcel/classfile/ConstantPool;)V
            astore 21 /* nvp */
        end local 23 // boolean booleanValue
        91: .line 722
            goto 116
      StackMap locals:
      StackMap stack: java.lang.NumberFormatException
        92: pop
        93: .line 723
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "unable to interpret annotation value '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 15 /* value */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "' as a boolean"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.reportError:(Ljava/lang/String;)V
        94: .line 724
            aconst_null
            areturn
        95: .line 728
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "not yet supporting XML setting of annotation values of type "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 22 /* rt */
            invokevirtual org.aspectj.weaver.UnresolvedType.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.reportError:(Ljava/lang/String;)V
        96: .line 729
            aconst_null
            areturn
        97: .line 731
      StackMap locals:
      StackMap stack:
            goto 116
      StackMap locals:
      StackMap stack:
        98: getstatic org.aspectj.weaver.UnresolvedType.JL_STRING:Lorg/aspectj/weaver/UnresolvedType;
            aload 22 /* rt */
            invokevirtual org.aspectj.weaver.UnresolvedType.equals:(Ljava/lang/Object;)Z
            ifeq 105
        99: .line 732
            aload 15 /* value */
            invokevirtual java.lang.String.length:()I
            iconst_2
            if_icmpge 102
       100: .line 733
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "Invalid string value specified in annotation string: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 3 /* annotationString */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.reportError:(Ljava/lang/String;)V
       101: .line 734
            aconst_null
            areturn
       102: .line 736
      StackMap locals:
      StackMap stack:
            aload 15 /* value */
            iconst_1
            aload 15 /* value */
            invokevirtual java.lang.String.length:()I
            iconst_1
            isub
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 15 /* value */
       103: .line 737
            new org.aspectj.apache.bcel.classfile.annotation.NameValuePair
            dup
            aload 18 /* key */
            new org.aspectj.apache.bcel.classfile.annotation.SimpleElementValue
            dup
            bipush 115
            aload 1 /* cp */
            aload 15 /* value */
            invokespecial org.aspectj.apache.bcel.classfile.annotation.SimpleElementValue.<init>:(ILorg/aspectj/apache/bcel/classfile/ConstantPool;Ljava/lang/String;)V
            aload 1 /* cp */
            invokespecial org.aspectj.apache.bcel.classfile.annotation.NameValuePair.<init>:(Ljava/lang/String;Lorg/aspectj/apache/bcel/classfile/annotation/ElementValue;Lorg/aspectj/apache/bcel/classfile/ConstantPool;)V
            astore 21 /* nvp */
       104: .line 738
            goto 116
      StackMap locals:
      StackMap stack:
       105: getstatic org.aspectj.weaver.UnresolvedType.JL_CLASS:Lorg/aspectj/weaver/UnresolvedType;
            aload 22 /* rt */
            invokevirtual org.aspectj.weaver.UnresolvedType.equals:(Ljava/lang/Object;)Z
            ifeq 116
       106: .line 742
            aload 15 /* value */
            invokevirtual java.lang.String.length:()I
            bipush 6
            if_icmpge 109
       107: .line 743
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "Not a well formed class value for an annotation '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 15 /* value */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "'"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.reportError:(Ljava/lang/String;)V
       108: .line 744
            aconst_null
            areturn
       109: .line 746
      StackMap locals:
      StackMap stack:
            aload 15 /* value */
            iconst_0
            aload 15 /* value */
            invokevirtual java.lang.String.length:()I
            bipush 6
            isub
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 23 /* clazz */
        start local 23 // java.lang.String clazz
       110: .line 747
            aload 23 /* clazz */
            ldc "."
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            iconst_m1
            if_icmpeq 111
            iconst_1
            goto 112
      StackMap locals: java.lang.String
      StackMap stack:
       111: iconst_0
      StackMap locals:
      StackMap stack: int
       112: istore 24 /* qualified */
        start local 24 // boolean qualified
       113: .line 748
            iload 24 /* qualified */
            ifne 115
       114: .line 750
            new java.lang.StringBuilder
            dup
            ldc "java.lang."
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 23 /* clazz */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 23 /* clazz */
       115: .line 752
      StackMap locals: int
      StackMap stack:
            new org.aspectj.apache.bcel.classfile.annotation.NameValuePair
            dup
            aload 18 /* key */
            new org.aspectj.apache.bcel.classfile.annotation.ClassElementValue
            dup
            new org.aspectj.apache.bcel.generic.ObjectType
            dup
            aload 23 /* clazz */
            invokespecial org.aspectj.apache.bcel.generic.ObjectType.<init>:(Ljava/lang/String;)V
            aload 1 /* cp */
            invokespecial org.aspectj.apache.bcel.classfile.annotation.ClassElementValue.<init>:(Lorg/aspectj/apache/bcel/generic/ObjectType;Lorg/aspectj/apache/bcel/classfile/ConstantPool;)V
            aload 1 /* cp */
            invokespecial org.aspectj.apache.bcel.classfile.annotation.NameValuePair.<init>:(Ljava/lang/String;Lorg/aspectj/apache/bcel/classfile/annotation/ElementValue;Lorg/aspectj/apache/bcel/classfile/ConstantPool;)V
            astore 21 /* nvp */
        end local 24 // boolean qualified
        end local 23 // java.lang.String clazz
        end local 22 // org.aspectj.weaver.UnresolvedType rt
       116: .line 755
      StackMap locals:
      StackMap stack:
            aload 21 /* nvp */
            ifnull 118
       117: .line 756
            aload 11 /* aaj */
            aload 21 /* nvp */
            invokevirtual org.aspectj.apache.bcel.classfile.annotation.AnnotationGen.addElementNameValuePair:(Lorg/aspectj/apache/bcel/classfile/annotation/NameValuePair;)V
        end local 21 // org.aspectj.apache.bcel.classfile.annotation.NameValuePair nvp
       118: .line 649
      StackMap locals:
      StackMap stack:
            iinc 20 /* m */ 1
      StackMap locals:
      StackMap stack:
       119: iload 20 /* m */
            aload 14 /* rms */
            arraylength
            if_icmplt 42
        end local 20 // int m
       120: .line 759
            iload 19 /* keyIsOk */
            ifne 123
       121: .line 760
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "annotation @"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 12 /* typename */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " does not have a value named "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 18 /* key */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.reportError:(Ljava/lang/String;)V
       122: .line 761
            aconst_null
            areturn
        end local 19 // boolean keyIsOk
        end local 18 // java.lang.String key
        end local 17 // int equalsIndex
        end local 15 // java.lang.String value
       123: .line 641
      StackMap locals: org.aspectj.weaver.loadtime.ConcreteAspectCodeGen org.aspectj.apache.bcel.classfile.ConstantPool org.aspectj.weaver.World java.lang.String int java.lang.String java.util.List int int int int org.aspectj.apache.bcel.classfile.annotation.AnnotationGen java.lang.String org.aspectj.weaver.ResolvedType org.aspectj.weaver.ResolvedMember[] top java.util.Iterator
      StackMap stack:
            aload 16
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 33
       124: .line 764
            aload 11 /* aaj */
            areturn
        end local 14 // org.aspectj.weaver.ResolvedMember[] rms
        end local 13 // org.aspectj.weaver.ResolvedType type
        end local 12 // java.lang.String typename
        end local 11 // org.aspectj.apache.bcel.classfile.annotation.AnnotationGen aaj
        end local 10 // int start
        end local 9 // int len
        end local 8 // int depth
        end local 7 // int pos
        end local 6 // java.util.List values
        end local 5 // java.lang.String name
        end local 4 // int paren
        end local 3 // java.lang.String annotationString
        end local 2 // org.aspectj.weaver.World w
        end local 1 // org.aspectj.apache.bcel.classfile.ConstantPool cp
        end local 0 // org.aspectj.weaver.loadtime.ConcreteAspectCodeGen this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0  125     0              this  Lorg/aspectj/weaver/loadtime/ConcreteAspectCodeGen;
            0  125     1                cp  Lorg/aspectj/apache/bcel/classfile/ConstantPool;
            0  125     2                 w  Lorg/aspectj/weaver/World;
            0  125     3  annotationString  Ljava/lang/String;
            1  125     4             paren  I
            3    4     5               aaj  Lorg/aspectj/apache/bcel/classfile/annotation/AnnotationGen;
            5  125     5              name  Ljava/lang/String;
            6  125     6            values  Ljava/util/List<Ljava/lang/String;>;
            7  125     7               pos  I
            8  125     8             depth  I
            9  125     9               len  I
           10  125    10             start  I
           12   23    11                ch  C
           27  125    11               aaj  Lorg/aspectj/apache/bcel/classfile/annotation/AnnotationGen;
           30  125    12          typename  Ljava/lang/String;
           31  125    13              type  Lorg/aspectj/weaver/ResolvedType;
           32  125    14               rms  [Lorg/aspectj/weaver/ResolvedMember;
           34  123    15             value  Ljava/lang/String;
           35  123    17       equalsIndex  I
           36  123    18               key  Ljava/lang/String;
           40  123    19           keyIsOk  Z
           41  120    20                 m  I
           43  118    21               nvp  Lorg/aspectj/apache/bcel/classfile/annotation/NameValuePair;
           46  116    22                rt  Lorg/aspectj/weaver/UnresolvedType;
           49   50    23         longValue  J
           55   56    23        shortValue  S
           61   62    23        floatValue  F
           67   68    23       doubleValue  D
           73   74    23          intValue  I
           79   80    23         byteValue  B
           90   91    23      booleanValue  Z
          110  116    23             clazz  Ljava/lang/String;
          113  116    24         qualified  Z
      Exception table:
        from    to  target  type
          48    50      51  Class java.lang.NumberFormatException
          54    56      57  Class java.lang.NumberFormatException
          60    62      63  Class java.lang.NumberFormatException
          66    68      69  Class java.lang.NumberFormatException
          72    74      75  Class java.lang.NumberFormatException
          78    80      81  Class java.lang.NumberFormatException
          89    91      92  Class java.lang.NumberFormatException
    MethodParameters:
                  Name  Flags
      cp                
      w                 
      annotationString  

  private org.aspectj.apache.bcel.classfile.annotation.AnnotationGen buildBaseAnnotationType(org.aspectj.apache.bcel.classfile.ConstantPool, org.aspectj.weaver.World, java.lang.String);
    descriptor: (Lorg/aspectj/apache/bcel/classfile/ConstantPool;Lorg/aspectj/weaver/World;Ljava/lang/String;)Lorg/aspectj/apache/bcel/classfile/annotation/AnnotationGen;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=7, args_size=4
        start local 0 // org.aspectj.weaver.loadtime.ConcreteAspectCodeGen this
        start local 1 // org.aspectj.apache.bcel.classfile.ConstantPool cp
        start local 2 // org.aspectj.weaver.World world
        start local 3 // java.lang.String typename
         0: .line 769
            aload 3 /* typename */
            astore 4 /* annoname */
        start local 4 // java.lang.String annoname
         1: .line 770
            aload 4 /* annoname */
            ldc "@"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 3
         2: .line 771
            aload 4 /* annoname */
            iconst_1
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 4 /* annoname */
         3: .line 773
      StackMap locals: java.lang.String
      StackMap stack:
            aload 4 /* annoname */
            invokestatic org.aspectj.weaver.UnresolvedType.forName:(Ljava/lang/String;)Lorg/aspectj/weaver/UnresolvedType;
            aload 2 /* world */
            invokevirtual org.aspectj.weaver.UnresolvedType.resolve:(Lorg/aspectj/weaver/World;)Lorg/aspectj/weaver/ResolvedType;
            astore 5 /* annotationType */
        start local 5 // org.aspectj.weaver.ResolvedType annotationType
         4: .line 774
            aload 5 /* annotationType */
            invokevirtual org.aspectj.weaver.ResolvedType.isAnnotation:()Z
            ifne 7
         5: .line 775
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "declare is not specifying an annotation type :"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 3 /* typename */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.reportError:(Ljava/lang/String;)V
         6: .line 776
            aconst_null
            areturn
         7: .line 778
      StackMap locals: org.aspectj.weaver.ResolvedType
      StackMap stack:
            aload 5 /* annotationType */
            invokevirtual org.aspectj.weaver.ResolvedType.isAnnotationWithRuntimeRetention:()Z
            ifne 10
         8: .line 779
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "declare is using an annotation type that does not have runtime retention: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 3 /* typename */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.reportError:(Ljava/lang/String;)V
         9: .line 780
            aconst_null
            areturn
        10: .line 782
      StackMap locals:
      StackMap stack:
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 6 /* elems */
        start local 6 // java.util.List elems
        11: .line 783
            new org.aspectj.apache.bcel.classfile.annotation.AnnotationGen
            dup
            new org.aspectj.apache.bcel.generic.ObjectType
            dup
            aload 4 /* annoname */
            invokespecial org.aspectj.apache.bcel.generic.ObjectType.<init>:(Ljava/lang/String;)V
            aload 6 /* elems */
            iconst_1
            aload 1 /* cp */
            invokespecial org.aspectj.apache.bcel.classfile.annotation.AnnotationGen.<init>:(Lorg/aspectj/apache/bcel/generic/ObjectType;Ljava/util/List;ZLorg/aspectj/apache/bcel/classfile/ConstantPool;)V
            areturn
        end local 6 // java.util.List elems
        end local 5 // org.aspectj.weaver.ResolvedType annotationType
        end local 4 // java.lang.String annoname
        end local 3 // java.lang.String typename
        end local 2 // org.aspectj.weaver.World world
        end local 1 // org.aspectj.apache.bcel.classfile.ConstantPool cp
        end local 0 // org.aspectj.weaver.loadtime.ConcreteAspectCodeGen this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   12     0            this  Lorg/aspectj/weaver/loadtime/ConcreteAspectCodeGen;
            0   12     1              cp  Lorg/aspectj/apache/bcel/classfile/ConstantPool;
            0   12     2           world  Lorg/aspectj/weaver/World;
            0   12     3        typename  Ljava/lang/String;
            1   12     4        annoname  Ljava/lang/String;
            4   12     5  annotationType  Lorg/aspectj/weaver/ResolvedType;
           11   12     6           elems  Ljava/util/List<Lorg/aspectj/apache/bcel/classfile/annotation/NameValuePair;>;
    MethodParameters:
          Name  Flags
      cp        
      world     
      typename  

  private void generateAdviceMethod(org.aspectj.weaver.loadtime.definition.Definition$PointcutAndAdvice, int, org.aspectj.weaver.bcel.LazyClassGen);
    descriptor: (Lorg/aspectj/weaver/loadtime/definition/Definition$PointcutAndAdvice;ILorg/aspectj/weaver/bcel/LazyClassGen;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=23, args_size=4
        start local 0 // org.aspectj.weaver.loadtime.ConcreteAspectCodeGen this
        start local 1 // org.aspectj.weaver.loadtime.definition.Definition$PointcutAndAdvice paa
        start local 2 // int adviceCounter
        start local 3 // org.aspectj.weaver.bcel.LazyClassGen cg
         0: .line 797
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.world:Lorg/aspectj/weaver/World;
            aload 1 /* paa */
            getfield org.aspectj.weaver.loadtime.definition.Definition$PointcutAndAdvice.adviceClass:Ljava/lang/String;
            invokestatic org.aspectj.weaver.UnresolvedType.forName:(Ljava/lang/String;)Lorg/aspectj/weaver/UnresolvedType;
            invokevirtual org.aspectj.weaver.World.resolve:(Lorg/aspectj/weaver/UnresolvedType;)Lorg/aspectj/weaver/ResolvedType;
            astore 4 /* delegateClass */
        start local 4 // org.aspectj.weaver.ResolvedType delegateClass
         1: .line 798
            aload 4 /* delegateClass */
            invokevirtual org.aspectj.weaver.ResolvedType.isMissing:()Z
            ifeq 4
         2: .line 799
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "Class to invoke cannot be found: '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* paa */
            getfield org.aspectj.weaver.loadtime.definition.Definition$PointcutAndAdvice.adviceClass:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "'"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.reportError:(Ljava/lang/String;)V
         3: .line 800
            return
         4: .line 804
      StackMap locals: org.aspectj.weaver.ResolvedType
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc "generated$"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* paa */
            getfield org.aspectj.weaver.loadtime.definition.Definition$PointcutAndAdvice.adviceKind:Lorg/aspectj/weaver/loadtime/definition/Definition$AdviceKind;
            invokevirtual org.aspectj.weaver.loadtime.definition.Definition$AdviceKind.toString:()Ljava/lang/String;
            invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "$advice$"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         5: .line 805
            iload 2 /* adviceCounter */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         6: .line 804
            astore 5 /* adviceName */
        start local 5 // java.lang.String adviceName
         7: .line 808
            aload 0 /* this */
            aload 3 /* cg */
            aload 1 /* paa */
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.buildAdviceAnnotation:(Lorg/aspectj/weaver/bcel/LazyClassGen;Lorg/aspectj/weaver/loadtime/definition/Definition$PointcutAndAdvice;)Lorg/aspectj/weaver/AnnotationAJ;
            astore 6 /* aaj */
        start local 6 // org.aspectj.weaver.AnnotationAJ aaj
         8: .line 813
            aload 1 /* paa */
            getfield org.aspectj.weaver.loadtime.definition.Definition$PointcutAndAdvice.adviceMethod:Ljava/lang/String;
            astore 7 /* method */
        start local 7 // java.lang.String method
         9: .line 815
            aload 7 /* method */
            ldc "("
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            istore 8 /* paren */
        start local 8 // int paren
        10: .line 816
            aload 7 /* method */
            iconst_0
            iload 8 /* paren */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 9 /* methodName */
        start local 9 // java.lang.String methodName
        11: .line 817
            aload 7 /* method */
            iload 8 /* paren */
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 10 /* signature */
        start local 10 // java.lang.String signature
        12: .line 820
            aload 10 /* signature */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            bipush 40
            if_icmpne 13
            aload 10 /* signature */
            ldc ")"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifne 15
        13: .line 821
      StackMap locals: org.aspectj.weaver.loadtime.ConcreteAspectCodeGen org.aspectj.weaver.loadtime.definition.Definition$PointcutAndAdvice int org.aspectj.weaver.bcel.LazyClassGen org.aspectj.weaver.ResolvedType java.lang.String org.aspectj.weaver.AnnotationAJ java.lang.String int java.lang.String java.lang.String
      StackMap stack:
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "Badly formatted parameter signature: '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 7 /* method */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "'"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.reportError:(Ljava/lang/String;)V
        14: .line 822
            return
        15: .line 826
      StackMap locals:
      StackMap stack:
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 11 /* paramTypes */
        start local 11 // java.util.List paramTypes
        16: .line 827
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 12 /* paramNames */
        start local 12 // java.util.List paramNames
        17: .line 828
            aload 10 /* signature */
            iconst_1
            invokevirtual java.lang.String.charAt:(I)C
            bipush 41
            if_icmpeq 64
        18: .line 830
            new java.lang.StringBuilder
            dup
            ldc "("
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            astore 13 /* convertedSignature */
        start local 13 // java.lang.StringBuilder convertedSignature
        19: .line 831
            iconst_0
            istore 14 /* paramsBroken */
        start local 14 // boolean paramsBroken
        20: .line 832
            iconst_1
            istore 15 /* pos */
        start local 15 // int pos
        21: .line 833
            goto 59
        22: .line 834
      StackMap locals: org.aspectj.weaver.loadtime.ConcreteAspectCodeGen org.aspectj.weaver.loadtime.definition.Definition$PointcutAndAdvice int org.aspectj.weaver.bcel.LazyClassGen org.aspectj.weaver.ResolvedType java.lang.String org.aspectj.weaver.AnnotationAJ java.lang.String int java.lang.String java.lang.String java.util.List java.util.List java.lang.StringBuilder int int
      StackMap stack:
            aload 10 /* signature */
            bipush 44
            iload 15 /* pos */
            invokevirtual java.lang.String.indexOf:(II)I
            istore 16 /* nextChunkEndPos */
        start local 16 // int nextChunkEndPos
        23: .line 835
            iload 16 /* nextChunkEndPos */
            iconst_m1
            if_icmpne 25
        24: .line 836
            aload 10 /* signature */
            bipush 41
            iload 15 /* pos */
            invokevirtual java.lang.String.indexOf:(II)I
            istore 16 /* nextChunkEndPos */
        25: .line 839
      StackMap locals: int
      StackMap stack:
            aload 10 /* signature */
            iload 15 /* pos */
            iload 16 /* nextChunkEndPos */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            astore 17 /* nextChunk */
        start local 17 // java.lang.String nextChunk
        26: .line 840
            aload 17 /* nextChunk */
            ldc " "
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            istore 18 /* space */
        start local 18 // int space
        27: .line 841
            aconst_null
            astore 19 /* resolvedParamType */
        start local 19 // org.aspectj.weaver.ResolvedType resolvedParamType
        28: .line 842
            iload 18 /* space */
            iconst_m1
            if_icmpne 40
        29: .line 844
            aload 17 /* nextChunk */
            ldc "JoinPoint"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 32
        30: .line 845
            ldc "org.aspectj.lang.JoinPoint"
            astore 17 /* nextChunk */
        31: .line 846
            goto 37
      StackMap locals: java.lang.String int org.aspectj.weaver.ResolvedType
      StackMap stack:
        32: aload 17 /* nextChunk */
            ldc "JoinPoint.StaticPart"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 35
        33: .line 847
            ldc "org.aspectj.lang.JoinPoint$StaticPart"
            astore 17 /* nextChunk */
        34: .line 848
            goto 37
      StackMap locals:
      StackMap stack:
        35: aload 17 /* nextChunk */
            ldc "ProceedingJoinPoint"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 37
        36: .line 849
            ldc "org.aspectj.lang.ProceedingJoinPoint"
            astore 17 /* nextChunk */
        37: .line 851
      StackMap locals:
      StackMap stack:
            aload 17 /* nextChunk */
            invokestatic org.aspectj.weaver.UnresolvedType.forName:(Ljava/lang/String;)Lorg/aspectj/weaver/UnresolvedType;
            astore 20 /* unresolvedParamType */
        start local 20 // org.aspectj.weaver.UnresolvedType unresolvedParamType
        38: .line 852
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.world:Lorg/aspectj/weaver/World;
            aload 20 /* unresolvedParamType */
            invokevirtual org.aspectj.weaver.World.resolve:(Lorg/aspectj/weaver/UnresolvedType;)Lorg/aspectj/weaver/ResolvedType;
            astore 19 /* resolvedParamType */
        end local 20 // org.aspectj.weaver.UnresolvedType unresolvedParamType
        39: .line 853
            goto 53
        40: .line 854
      StackMap locals:
      StackMap stack:
            aload 17 /* nextChunk */
            iconst_0
            iload 18 /* space */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 20 /* typename */
        start local 20 // java.lang.String typename
        41: .line 855
            aload 20 /* typename */
            ldc "JoinPoint"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 44
        42: .line 856
            ldc "org.aspectj.lang.JoinPoint"
            astore 20 /* typename */
        43: .line 857
            goto 49
      StackMap locals: java.lang.String
      StackMap stack:
        44: aload 20 /* typename */
            ldc "JoinPoint.StaticPart"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 47
        45: .line 858
            ldc "org.aspectj.lang.JoinPoint$StaticPart"
            astore 20 /* typename */
        46: .line 859
            goto 49
      StackMap locals:
      StackMap stack:
        47: aload 20 /* typename */
            ldc "ProceedingJoinPoint"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 49
        48: .line 860
            ldc "org.aspectj.lang.ProceedingJoinPoint"
            astore 20 /* typename */
        49: .line 862
      StackMap locals:
      StackMap stack:
            aload 20 /* typename */
            invokestatic org.aspectj.weaver.UnresolvedType.forName:(Ljava/lang/String;)Lorg/aspectj/weaver/UnresolvedType;
            astore 21 /* unresolvedParamType */
        start local 21 // org.aspectj.weaver.UnresolvedType unresolvedParamType
        50: .line 863
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.world:Lorg/aspectj/weaver/World;
            aload 21 /* unresolvedParamType */
            invokevirtual org.aspectj.weaver.World.resolve:(Lorg/aspectj/weaver/UnresolvedType;)Lorg/aspectj/weaver/ResolvedType;
            astore 19 /* resolvedParamType */
        51: .line 864
            aload 17 /* nextChunk */
            iload 18 /* space */
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            astore 22 /* paramname */
        start local 22 // java.lang.String paramname
        52: .line 865
            aload 12 /* paramNames */
            aload 22 /* paramname */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 22 // java.lang.String paramname
        end local 21 // org.aspectj.weaver.UnresolvedType unresolvedParamType
        end local 20 // java.lang.String typename
        53: .line 867
      StackMap locals:
      StackMap stack:
            aload 19 /* resolvedParamType */
            invokevirtual org.aspectj.weaver.ResolvedType.isMissing:()Z
            ifeq 56
        54: .line 868
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "Cannot find type specified as parameter: '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 17 /* nextChunk */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "' from signature '"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 10 /* signature */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "'"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.reportError:(Ljava/lang/String;)V
        55: .line 869
            iconst_1
            istore 14 /* paramsBroken */
        56: .line 871
      StackMap locals:
      StackMap stack:
            aload 11 /* paramTypes */
            aload 19 /* resolvedParamType */
            invokevirtual org.aspectj.weaver.ResolvedType.getSignature:()Ljava/lang/String;
            invokestatic org.aspectj.apache.bcel.generic.Type.getType:(Ljava/lang/String;)Lorg/aspectj/apache/bcel/generic/Type;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        57: .line 872
            aload 13 /* convertedSignature */
            aload 19 /* resolvedParamType */
            invokevirtual org.aspectj.weaver.ResolvedType.getSignature:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        58: .line 873
            iload 16 /* nextChunkEndPos */
            iconst_1
            iadd
            istore 15 /* pos */
        end local 19 // org.aspectj.weaver.ResolvedType resolvedParamType
        end local 18 // int space
        end local 17 // java.lang.String nextChunk
        end local 16 // int nextChunkEndPos
        59: .line 833
      StackMap locals: org.aspectj.weaver.loadtime.ConcreteAspectCodeGen org.aspectj.weaver.loadtime.definition.Definition$PointcutAndAdvice int org.aspectj.weaver.bcel.LazyClassGen org.aspectj.weaver.ResolvedType java.lang.String org.aspectj.weaver.AnnotationAJ java.lang.String int java.lang.String java.lang.String java.util.List java.util.List java.lang.StringBuilder int int
      StackMap stack:
            iload 15 /* pos */
            aload 10 /* signature */
            invokevirtual java.lang.String.length:()I
            if_icmpge 60
            aload 10 /* signature */
            iload 15 /* pos */
            invokevirtual java.lang.String.charAt:(I)C
            bipush 41
            if_icmpeq 60
            iload 14 /* paramsBroken */
            ifeq 22
        60: .line 875
      StackMap locals:
      StackMap stack:
            aload 13 /* convertedSignature */
            ldc ")"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        61: .line 876
            aload 13 /* convertedSignature */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 10 /* signature */
        62: .line 877
            iload 14 /* paramsBroken */
            ifeq 64
        63: .line 878
            return
        end local 15 // int pos
        end local 14 // boolean paramsBroken
        end local 13 // java.lang.StringBuilder convertedSignature
        64: .line 882
      StackMap locals:
      StackMap stack:
            getstatic org.aspectj.apache.bcel.generic.Type.VOID:Lorg/aspectj/apache/bcel/generic/BasicType;
            astore 13 /* returnType */
        start local 13 // org.aspectj.apache.bcel.generic.Type returnType
        65: .line 885
            aload 1 /* paa */
            getfield org.aspectj.weaver.loadtime.definition.Definition$PointcutAndAdvice.adviceKind:Lorg/aspectj/weaver/loadtime/definition/Definition$AdviceKind;
            getstatic org.aspectj.weaver.loadtime.definition.Definition$AdviceKind.Around:Lorg/aspectj/weaver/loadtime/definition/Definition$AdviceKind;
            if_acmpne 93
        66: .line 886
            aload 4 /* delegateClass */
            invokevirtual org.aspectj.weaver.ResolvedType.getDeclaredMethods:()[Lorg/aspectj/weaver/ResolvedMember;
            astore 14 /* methods */
        start local 14 // org.aspectj.weaver.ResolvedMember[] methods
        67: .line 887
            aconst_null
            astore 15 /* found */
        start local 15 // org.aspectj.weaver.ResolvedMember found
        68: .line 888
            aload 14 /* methods */
            dup
            astore 19
            arraylength
            istore 18
            iconst_0
            istore 17
            goto 85
      StackMap locals: org.aspectj.weaver.loadtime.ConcreteAspectCodeGen org.aspectj.weaver.loadtime.definition.Definition$PointcutAndAdvice int org.aspectj.weaver.bcel.LazyClassGen org.aspectj.weaver.ResolvedType java.lang.String org.aspectj.weaver.AnnotationAJ java.lang.String int java.lang.String java.lang.String java.util.List java.util.List org.aspectj.apache.bcel.generic.Type org.aspectj.weaver.ResolvedMember[] org.aspectj.weaver.ResolvedMember top int int org.aspectj.weaver.ResolvedMember[]
      StackMap stack:
        69: aload 19
            iload 17
            aaload
            astore 16 /* candidate */
        start local 16 // org.aspectj.weaver.ResolvedMember candidate
        70: .line 889
            aload 16 /* candidate */
            invokeinterface org.aspectj.weaver.ResolvedMember.getName:()Ljava/lang/String;
            aload 9 /* methodName */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 84
        71: .line 890
            aload 16 /* candidate */
            invokeinterface org.aspectj.weaver.ResolvedMember.getParameterTypes:()[Lorg/aspectj/weaver/UnresolvedType;
            astore 20 /* cparms */
        start local 20 // org.aspectj.weaver.UnresolvedType[] cparms
        72: .line 891
            aload 20 /* cparms */
            arraylength
            aload 11 /* paramTypes */
            invokeinterface java.util.List.size:()I
            if_icmpne 84
        73: .line 892
            iconst_1
            istore 21 /* paramsMatch */
        start local 21 // boolean paramsMatch
        74: .line 893
            iconst_0
            istore 22 /* i */
        start local 22 // int i
        75: goto 80
        76: .line 894
      StackMap locals: org.aspectj.weaver.loadtime.ConcreteAspectCodeGen org.aspectj.weaver.loadtime.definition.Definition$PointcutAndAdvice int org.aspectj.weaver.bcel.LazyClassGen org.aspectj.weaver.ResolvedType java.lang.String org.aspectj.weaver.AnnotationAJ java.lang.String int java.lang.String java.lang.String java.util.List java.util.List org.aspectj.apache.bcel.generic.Type org.aspectj.weaver.ResolvedMember[] org.aspectj.weaver.ResolvedMember org.aspectj.weaver.ResolvedMember int int org.aspectj.weaver.ResolvedMember[] org.aspectj.weaver.UnresolvedType[] int int
      StackMap stack:
            aload 20 /* cparms */
            iload 22 /* i */
            aaload
            invokevirtual org.aspectj.weaver.UnresolvedType.getSignature:()Ljava/lang/String;
            aload 11 /* paramTypes */
            iload 22 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast org.aspectj.apache.bcel.generic.Type
            invokevirtual org.aspectj.apache.bcel.generic.Type.getSignature:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 79
        77: .line 895
            iconst_0
            istore 21 /* paramsMatch */
        78: .line 896
            goto 81
        79: .line 893
      StackMap locals:
      StackMap stack:
            iinc 22 /* i */ 1
      StackMap locals:
      StackMap stack:
        80: iload 22 /* i */
            aload 20 /* cparms */
            arraylength
            if_icmplt 76
        end local 22 // int i
        81: .line 899
      StackMap locals:
      StackMap stack:
            iload 21 /* paramsMatch */
            ifeq 84
        82: .line 900
            aload 16 /* candidate */
            astore 15 /* found */
        83: .line 901
            goto 86
        end local 21 // boolean paramsMatch
        end local 20 // org.aspectj.weaver.UnresolvedType[] cparms
        end local 16 // org.aspectj.weaver.ResolvedMember candidate
        84: .line 888
      StackMap locals: org.aspectj.weaver.loadtime.ConcreteAspectCodeGen org.aspectj.weaver.loadtime.definition.Definition$PointcutAndAdvice int org.aspectj.weaver.bcel.LazyClassGen org.aspectj.weaver.ResolvedType java.lang.String org.aspectj.weaver.AnnotationAJ java.lang.String int java.lang.String java.lang.String java.util.List java.util.List org.aspectj.apache.bcel.generic.Type org.aspectj.weaver.ResolvedMember[] org.aspectj.weaver.ResolvedMember top int int org.aspectj.weaver.ResolvedMember[]
      StackMap stack:
            iinc 17 1
      StackMap locals:
      StackMap stack:
        85: iload 17
            iload 18
            if_icmplt 69
        86: .line 906
      StackMap locals: org.aspectj.weaver.loadtime.ConcreteAspectCodeGen org.aspectj.weaver.loadtime.definition.Definition$PointcutAndAdvice int org.aspectj.weaver.bcel.LazyClassGen org.aspectj.weaver.ResolvedType java.lang.String org.aspectj.weaver.AnnotationAJ java.lang.String int java.lang.String java.lang.String java.util.List java.util.List org.aspectj.apache.bcel.generic.Type org.aspectj.weaver.ResolvedMember[] org.aspectj.weaver.ResolvedMember
      StackMap stack:
            aload 15 /* found */
            ifnull 89
        87: .line 907
            aload 15 /* found */
            invokeinterface org.aspectj.weaver.ResolvedMember.getReturnType:()Lorg/aspectj/weaver/UnresolvedType;
            invokevirtual org.aspectj.weaver.UnresolvedType.getSignature:()Ljava/lang/String;
            invokestatic org.aspectj.apache.bcel.generic.Type.getType:(Ljava/lang/String;)Lorg/aspectj/apache/bcel/generic/Type;
            astore 13 /* returnType */
        88: .line 908
            goto 93
        89: .line 909
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "Unable to find method to invoke.  In class: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* delegateClass */
            invokevirtual org.aspectj.weaver.ResolvedType.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " cant find "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        90: .line 910
            aload 1 /* paa */
            getfield org.aspectj.weaver.loadtime.definition.Definition$PointcutAndAdvice.adviceMethod:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        91: .line 909
            invokevirtual org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.reportError:(Ljava/lang/String;)V
        92: .line 911
            return
        end local 15 // org.aspectj.weaver.ResolvedMember found
        end local 14 // org.aspectj.weaver.ResolvedMember[] methods
        93: .line 916
      StackMap locals:
      StackMap stack:
            new org.aspectj.weaver.bcel.LazyMethodGen
            dup
            iconst_1
            aload 13 /* returnType */
            aload 5 /* adviceName */
            aload 11 /* paramTypes */
            aload 11 /* paramTypes */
        94: .line 917
            invokeinterface java.util.List.size:()I
            anewarray org.aspectj.apache.bcel.generic.Type
        95: .line 916
            invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast org.aspectj.apache.bcel.generic.Type[]
        96: .line 917
            getstatic org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.EMPTY_STRINGS:[Ljava/lang/String;
            aload 3 /* cg */
        97: .line 916
            invokespecial org.aspectj.weaver.bcel.LazyMethodGen.<init>:(ILorg/aspectj/apache/bcel/generic/Type;Ljava/lang/String;[Lorg/aspectj/apache/bcel/generic/Type;[Ljava/lang/String;Lorg/aspectj/weaver/bcel/LazyClassGen;)V
            astore 14 /* advice */
        start local 14 // org.aspectj.weaver.bcel.LazyMethodGen advice
        98: .line 919
            aload 14 /* advice */
            invokevirtual org.aspectj.weaver.bcel.LazyMethodGen.getBody:()Lorg/aspectj/apache/bcel/generic/InstructionList;
            astore 15 /* adviceBody */
        start local 15 // org.aspectj.apache.bcel.generic.InstructionList adviceBody
        99: .line 922
            iconst_1
            istore 16 /* pos */
        start local 16 // int pos
       100: .line 923
            iconst_0
            istore 17 /* i */
        start local 17 // int i
       101: goto 105
       102: .line 924
      StackMap locals: org.aspectj.weaver.loadtime.ConcreteAspectCodeGen org.aspectj.weaver.loadtime.definition.Definition$PointcutAndAdvice int org.aspectj.weaver.bcel.LazyClassGen org.aspectj.weaver.ResolvedType java.lang.String org.aspectj.weaver.AnnotationAJ java.lang.String int java.lang.String java.lang.String java.util.List java.util.List org.aspectj.apache.bcel.generic.Type org.aspectj.weaver.bcel.LazyMethodGen org.aspectj.apache.bcel.generic.InstructionList int int
      StackMap stack:
            aload 15 /* adviceBody */
            aload 11 /* paramTypes */
            iload 17 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast org.aspectj.apache.bcel.generic.Type
            iload 16 /* pos */
            invokestatic org.aspectj.apache.bcel.generic.InstructionFactory.createLoad:(Lorg/aspectj/apache/bcel/generic/Type;I)Lorg/aspectj/apache/bcel/generic/InstructionLV;
            invokevirtual org.aspectj.apache.bcel.generic.InstructionList.append:(Lorg/aspectj/apache/bcel/generic/Instruction;)Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            pop
       103: .line 925
            iload 16 /* pos */
            aload 11 /* paramTypes */
            iload 17 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast org.aspectj.apache.bcel.generic.Type
            invokevirtual org.aspectj.apache.bcel.generic.Type.getSize:()I
            iadd
            istore 16 /* pos */
       104: .line 923
            iinc 17 /* i */ 1
      StackMap locals:
      StackMap stack:
       105: iload 17 /* i */
            aload 11 /* paramTypes */
            invokeinterface java.util.List.size:()I
            if_icmplt 102
        end local 17 // int i
       106: .line 929
            aload 15 /* adviceBody */
            aload 3 /* cg */
            invokevirtual org.aspectj.weaver.bcel.LazyClassGen.getFactory:()Lorg/aspectj/apache/bcel/generic/InstructionFactory;
            aload 1 /* paa */
            getfield org.aspectj.weaver.loadtime.definition.Definition$PointcutAndAdvice.adviceClass:Ljava/lang/String;
            aload 9 /* methodName */
            new java.lang.StringBuilder
            dup
            aload 10 /* signature */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 13 /* returnType */
            invokevirtual org.aspectj.apache.bcel.generic.Type.getSignature:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
       107: .line 930
            sipush 184
       108: .line 929
            invokevirtual org.aspectj.apache.bcel.generic.InstructionFactory.createInvoke:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;S)Lorg/aspectj/apache/bcel/generic/InvokeInstruction;
            invokevirtual org.aspectj.apache.bcel.generic.InstructionList.append:(Lorg/aspectj/apache/bcel/generic/Instruction;)Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            pop
       109: .line 933
            aload 13 /* returnType */
            getstatic org.aspectj.apache.bcel.generic.Type.VOID:Lorg/aspectj/apache/bcel/generic/BasicType;
            if_acmpne 112
       110: .line 934
            aload 15 /* adviceBody */
            getstatic org.aspectj.apache.bcel.generic.InstructionConstants.RETURN:Lorg/aspectj/apache/bcel/generic/Instruction;
            invokevirtual org.aspectj.apache.bcel.generic.InstructionList.append:(Lorg/aspectj/apache/bcel/generic/Instruction;)Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            pop
       111: .line 935
            goto 126
       112: .line 936
      StackMap locals:
      StackMap stack:
            aload 13 /* returnType */
            invokevirtual org.aspectj.apache.bcel.generic.Type.getSignature:()Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            iconst_2
            if_icmpge 125
       113: .line 937
            aload 13 /* returnType */
            invokevirtual org.aspectj.apache.bcel.generic.Type.getSignature:()Ljava/lang/String;
            astore 17 /* sig */
        start local 17 // java.lang.String sig
       114: .line 938
            aload 17 /* sig */
            ldc "F"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 117
       115: .line 939
            aload 15 /* adviceBody */
            getstatic org.aspectj.apache.bcel.generic.InstructionConstants.FRETURN:Lorg/aspectj/apache/bcel/generic/Instruction;
            invokevirtual org.aspectj.apache.bcel.generic.InstructionList.append:(Lorg/aspectj/apache/bcel/generic/Instruction;)Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            pop
       116: .line 940
            goto 126
      StackMap locals: java.lang.String
      StackMap stack:
       117: aload 17 /* sig */
            ldc "D"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 120
       118: .line 941
            aload 15 /* adviceBody */
            getstatic org.aspectj.apache.bcel.generic.InstructionConstants.DRETURN:Lorg/aspectj/apache/bcel/generic/Instruction;
            invokevirtual org.aspectj.apache.bcel.generic.InstructionList.append:(Lorg/aspectj/apache/bcel/generic/Instruction;)Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            pop
       119: .line 942
            goto 126
      StackMap locals:
      StackMap stack:
       120: aload 17 /* sig */
            ldc "J"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 123
       121: .line 943
            aload 15 /* adviceBody */
            getstatic org.aspectj.apache.bcel.generic.InstructionConstants.LRETURN:Lorg/aspectj/apache/bcel/generic/Instruction;
            invokevirtual org.aspectj.apache.bcel.generic.InstructionList.append:(Lorg/aspectj/apache/bcel/generic/Instruction;)Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            pop
       122: .line 944
            goto 126
       123: .line 945
      StackMap locals:
      StackMap stack:
            aload 15 /* adviceBody */
            getstatic org.aspectj.apache.bcel.generic.InstructionConstants.IRETURN:Lorg/aspectj/apache/bcel/generic/Instruction;
            invokevirtual org.aspectj.apache.bcel.generic.InstructionList.append:(Lorg/aspectj/apache/bcel/generic/Instruction;)Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            pop
        end local 17 // java.lang.String sig
       124: .line 947
            goto 126
       125: .line 948
      StackMap locals:
      StackMap stack:
            aload 15 /* adviceBody */
            getstatic org.aspectj.apache.bcel.generic.InstructionConstants.ARETURN:Lorg/aspectj/apache/bcel/generic/Instruction;
            invokevirtual org.aspectj.apache.bcel.generic.InstructionList.append:(Lorg/aspectj/apache/bcel/generic/Instruction;)Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            pop
       126: .line 952
      StackMap locals:
      StackMap stack:
            aload 14 /* advice */
            aload 6 /* aaj */
            invokevirtual org.aspectj.weaver.bcel.LazyMethodGen.addAnnotation:(Lorg/aspectj/weaver/AnnotationAJ;)V
       127: .line 953
            aload 15 /* adviceBody */
            invokevirtual org.aspectj.apache.bcel.generic.InstructionList.getStart:()Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            astore 17 /* start */
        start local 17 // org.aspectj.apache.bcel.generic.InstructionHandle start
       128: .line 956
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.concreteAspect:Lorg/aspectj/weaver/loadtime/definition/Definition$ConcreteAspect;
            getfield org.aspectj.weaver.loadtime.definition.Definition$ConcreteAspect.name:Ljava/lang/String;
            bipush 46
            bipush 47
            invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
            astore 18 /* sig */
        start local 18 // java.lang.String sig
       129: .line 957
            aload 17 /* start */
            new org.aspectj.apache.bcel.generic.LocalVariableTag
            dup
            new java.lang.StringBuilder
            dup
            ldc "L"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 18 /* sig */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ";"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            ldc "this"
            iconst_0
            aload 17 /* start */
            invokevirtual org.aspectj.apache.bcel.generic.InstructionHandle.getPosition:()I
            invokespecial org.aspectj.apache.bcel.generic.LocalVariableTag.<init>:(Ljava/lang/String;Ljava/lang/String;II)V
            invokevirtual org.aspectj.apache.bcel.generic.InstructionHandle.addTargeter:(Lorg/aspectj/apache/bcel/generic/InstructionTargeter;)V
       130: .line 958
            aload 12 /* paramNames */
            invokeinterface java.util.List.size:()I
            ifle 138
       131: .line 959
            iconst_0
            istore 19 /* i */
        start local 19 // int i
       132: goto 137
       133: .line 960
      StackMap locals: org.aspectj.apache.bcel.generic.InstructionHandle java.lang.String int
      StackMap stack:
            aload 17 /* start */
            new org.aspectj.apache.bcel.generic.LocalVariableTag
            dup
            aload 11 /* paramTypes */
            iload 19 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast org.aspectj.apache.bcel.generic.Type
            invokevirtual org.aspectj.apache.bcel.generic.Type.getSignature:()Ljava/lang/String;
            aload 12 /* paramNames */
            iload 19 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.lang.String
            iload 19 /* i */
            iconst_1
            iadd
            aload 17 /* start */
       134: .line 961
            invokevirtual org.aspectj.apache.bcel.generic.InstructionHandle.getPosition:()I
            invokespecial org.aspectj.apache.bcel.generic.LocalVariableTag.<init>:(Ljava/lang/String;Ljava/lang/String;II)V
       135: .line 960
            invokevirtual org.aspectj.apache.bcel.generic.InstructionHandle.addTargeter:(Lorg/aspectj/apache/bcel/generic/InstructionTargeter;)V
       136: .line 959
            iinc 19 /* i */ 1
      StackMap locals:
      StackMap stack:
       137: iload 19 /* i */
            aload 12 /* paramNames */
            invokeinterface java.util.List.size:()I
            if_icmplt 133
        end local 19 // int i
       138: .line 966
      StackMap locals:
      StackMap stack:
            aload 3 /* cg */
            aload 14 /* advice */
            invokevirtual org.aspectj.weaver.bcel.LazyClassGen.addMethodGen:(Lorg/aspectj/weaver/bcel/LazyMethodGen;)V
       139: .line 967
            return
        end local 18 // java.lang.String sig
        end local 17 // org.aspectj.apache.bcel.generic.InstructionHandle start
        end local 16 // int pos
        end local 15 // org.aspectj.apache.bcel.generic.InstructionList adviceBody
        end local 14 // org.aspectj.weaver.bcel.LazyMethodGen advice
        end local 13 // org.aspectj.apache.bcel.generic.Type returnType
        end local 12 // java.util.List paramNames
        end local 11 // java.util.List paramTypes
        end local 10 // java.lang.String signature
        end local 9 // java.lang.String methodName
        end local 8 // int paren
        end local 7 // java.lang.String method
        end local 6 // org.aspectj.weaver.AnnotationAJ aaj
        end local 5 // java.lang.String adviceName
        end local 4 // org.aspectj.weaver.ResolvedType delegateClass
        end local 3 // org.aspectj.weaver.bcel.LazyClassGen cg
        end local 2 // int adviceCounter
        end local 1 // org.aspectj.weaver.loadtime.definition.Definition$PointcutAndAdvice paa
        end local 0 // org.aspectj.weaver.loadtime.ConcreteAspectCodeGen this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0  140     0                 this  Lorg/aspectj/weaver/loadtime/ConcreteAspectCodeGen;
            0  140     1                  paa  Lorg/aspectj/weaver/loadtime/definition/Definition$PointcutAndAdvice;
            0  140     2        adviceCounter  I
            0  140     3                   cg  Lorg/aspectj/weaver/bcel/LazyClassGen;
            1  140     4        delegateClass  Lorg/aspectj/weaver/ResolvedType;
            7  140     5           adviceName  Ljava/lang/String;
            8  140     6                  aaj  Lorg/aspectj/weaver/AnnotationAJ;
            9  140     7               method  Ljava/lang/String;
           10  140     8                paren  I
           11  140     9           methodName  Ljava/lang/String;
           12  140    10            signature  Ljava/lang/String;
           16  140    11           paramTypes  Ljava/util/List<Lorg/aspectj/apache/bcel/generic/Type;>;
           17  140    12           paramNames  Ljava/util/List<Ljava/lang/String;>;
           19   64    13   convertedSignature  Ljava/lang/StringBuilder;
           20   64    14         paramsBroken  Z
           21   64    15                  pos  I
           23   59    16      nextChunkEndPos  I
           26   59    17            nextChunk  Ljava/lang/String;
           27   59    18                space  I
           28   59    19    resolvedParamType  Lorg/aspectj/weaver/ResolvedType;
           38   39    20  unresolvedParamType  Lorg/aspectj/weaver/UnresolvedType;
           41   53    20             typename  Ljava/lang/String;
           50   53    21  unresolvedParamType  Lorg/aspectj/weaver/UnresolvedType;
           52   53    22            paramname  Ljava/lang/String;
           65  140    13           returnType  Lorg/aspectj/apache/bcel/generic/Type;
           67   93    14              methods  [Lorg/aspectj/weaver/ResolvedMember;
           68   93    15                found  Lorg/aspectj/weaver/ResolvedMember;
           70   84    16            candidate  Lorg/aspectj/weaver/ResolvedMember;
           72   84    20               cparms  [Lorg/aspectj/weaver/UnresolvedType;
           74   84    21          paramsMatch  Z
           75   81    22                    i  I
           98  140    14               advice  Lorg/aspectj/weaver/bcel/LazyMethodGen;
           99  140    15           adviceBody  Lorg/aspectj/apache/bcel/generic/InstructionList;
          100  140    16                  pos  I
          101  106    17                    i  I
          114  124    17                  sig  Ljava/lang/String;
          128  140    17                start  Lorg/aspectj/apache/bcel/generic/InstructionHandle;
          129  140    18                  sig  Ljava/lang/String;
          132  138    19                    i  I
    MethodParameters:
               Name  Flags
      paa            
      adviceCounter  
      cg             

  private org.aspectj.weaver.AnnotationAJ buildAdviceAnnotation(org.aspectj.weaver.bcel.LazyClassGen, org.aspectj.weaver.loadtime.definition.Definition$PointcutAndAdvice);
    descriptor: (Lorg/aspectj/weaver/bcel/LazyClassGen;Lorg/aspectj/weaver/loadtime/definition/Definition$PointcutAndAdvice;)Lorg/aspectj/weaver/AnnotationAJ;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=7, args_size=3
        start local 0 // org.aspectj.weaver.loadtime.ConcreteAspectCodeGen this
        start local 1 // org.aspectj.weaver.bcel.LazyClassGen cg
        start local 2 // org.aspectj.weaver.loadtime.definition.Definition$PointcutAndAdvice paa
         0: .line 973
            new org.aspectj.apache.bcel.classfile.annotation.SimpleElementValue
            dup
            bipush 115
            aload 1 /* cg */
            invokevirtual org.aspectj.weaver.bcel.LazyClassGen.getConstantPool:()Lorg/aspectj/apache/bcel/classfile/ConstantPool;
            aload 2 /* paa */
            getfield org.aspectj.weaver.loadtime.definition.Definition$PointcutAndAdvice.pointcut:Ljava/lang/String;
            invokespecial org.aspectj.apache.bcel.classfile.annotation.SimpleElementValue.<init>:(ILorg/aspectj/apache/bcel/classfile/ConstantPool;Ljava/lang/String;)V
            astore 3 /* svg */
        start local 3 // org.aspectj.apache.bcel.classfile.annotation.SimpleElementValue svg
         1: .line 974
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 4 /* elems */
        start local 4 // java.util.List elems
         2: .line 975
            aload 4 /* elems */
            new org.aspectj.apache.bcel.classfile.annotation.NameValuePair
            dup
            ldc "value"
            aload 3 /* svg */
            aload 1 /* cg */
            invokevirtual org.aspectj.weaver.bcel.LazyClassGen.getConstantPool:()Lorg/aspectj/apache/bcel/classfile/ConstantPool;
            invokespecial org.aspectj.apache.bcel.classfile.annotation.NameValuePair.<init>:(Ljava/lang/String;Lorg/aspectj/apache/bcel/classfile/annotation/ElementValue;Lorg/aspectj/apache/bcel/classfile/ConstantPool;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         3: .line 976
            new org.aspectj.apache.bcel.classfile.annotation.AnnotationGen
            dup
            new org.aspectj.apache.bcel.generic.ObjectType
            dup
            new java.lang.StringBuilder
            dup
            ldc "org/aspectj/lang/annotation/"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* paa */
            getfield org.aspectj.weaver.loadtime.definition.Definition$PointcutAndAdvice.adviceKind:Lorg/aspectj/weaver/loadtime/definition/Definition$AdviceKind;
            invokevirtual org.aspectj.weaver.loadtime.definition.Definition$AdviceKind.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial org.aspectj.apache.bcel.generic.ObjectType.<init>:(Ljava/lang/String;)V
            aload 4 /* elems */
         4: .line 977
            iconst_1
            aload 1 /* cg */
            invokevirtual org.aspectj.weaver.bcel.LazyClassGen.getConstantPool:()Lorg/aspectj/apache/bcel/classfile/ConstantPool;
         5: .line 976
            invokespecial org.aspectj.apache.bcel.classfile.annotation.AnnotationGen.<init>:(Lorg/aspectj/apache/bcel/generic/ObjectType;Ljava/util/List;ZLorg/aspectj/apache/bcel/classfile/ConstantPool;)V
            astore 5 /* mag */
        start local 5 // org.aspectj.apache.bcel.classfile.annotation.AnnotationGen mag
         6: .line 978
            new org.aspectj.weaver.bcel.BcelAnnotation
            dup
            aload 5 /* mag */
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.world:Lorg/aspectj/weaver/World;
            invokespecial org.aspectj.weaver.bcel.BcelAnnotation.<init>:(Lorg/aspectj/apache/bcel/classfile/annotation/AnnotationGen;Lorg/aspectj/weaver/World;)V
            astore 6 /* aaj */
        start local 6 // org.aspectj.weaver.AnnotationAJ aaj
         7: .line 979
            aload 6 /* aaj */
            areturn
        end local 6 // org.aspectj.weaver.AnnotationAJ aaj
        end local 5 // org.aspectj.apache.bcel.classfile.annotation.AnnotationGen mag
        end local 4 // java.util.List elems
        end local 3 // org.aspectj.apache.bcel.classfile.annotation.SimpleElementValue svg
        end local 2 // org.aspectj.weaver.loadtime.definition.Definition$PointcutAndAdvice paa
        end local 1 // org.aspectj.weaver.bcel.LazyClassGen cg
        end local 0 // org.aspectj.weaver.loadtime.ConcreteAspectCodeGen this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    8     0   this  Lorg/aspectj/weaver/loadtime/ConcreteAspectCodeGen;
            0    8     1     cg  Lorg/aspectj/weaver/bcel/LazyClassGen;
            0    8     2    paa  Lorg/aspectj/weaver/loadtime/definition/Definition$PointcutAndAdvice;
            1    8     3    svg  Lorg/aspectj/apache/bcel/classfile/annotation/SimpleElementValue;
            2    8     4  elems  Ljava/util/List<Lorg/aspectj/apache/bcel/classfile/annotation/NameValuePair;>;
            6    8     5    mag  Lorg/aspectj/apache/bcel/classfile/annotation/AnnotationGen;
            7    8     6    aaj  Lorg/aspectj/weaver/AnnotationAJ;
    MethodParameters:
      Name  Flags
      cg    
      paa   

  private void reportError(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=2, args_size=2
        start local 0 // org.aspectj.weaver.loadtime.ConcreteAspectCodeGen this
        start local 1 // java.lang.String message
         0: .line 988
            aload 0 /* this */
            getfield org.aspectj.weaver.loadtime.ConcreteAspectCodeGen.world:Lorg/aspectj/weaver/World;
            invokevirtual org.aspectj.weaver.World.getMessageHandler:()Lorg/aspectj/bridge/IMessageHandler;
            new org.aspectj.bridge.Message
            dup
            aload 1 /* message */
            getstatic org.aspectj.bridge.IMessage.ERROR:Lorg/aspectj/bridge/IMessage$Kind;
            aconst_null
            aconst_null
            invokespecial org.aspectj.bridge.Message.<init>:(Ljava/lang/String;Lorg/aspectj/bridge/IMessage$Kind;Ljava/lang/Throwable;Lorg/aspectj/bridge/ISourceLocation;)V
            invokeinterface org.aspectj.bridge.IMessageHandler.handleMessage:(Lorg/aspectj/bridge/IMessage;)Z
            pop
         1: .line 989
            return
        end local 1 // java.lang.String message
        end local 0 // org.aspectj.weaver.loadtime.ConcreteAspectCodeGen this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/aspectj/weaver/loadtime/ConcreteAspectCodeGen;
            0    2     1  message  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      message  
}
SourceFile: "ConcreteAspectCodeGen.java"
InnerClasses:
  public final Kind = org.aspectj.bridge.IMessage$Kind of org.aspectj.bridge.IMessage
  public DeclareAttribute = org.aspectj.weaver.AjAttribute$DeclareAttribute of org.aspectj.weaver.AjAttribute
  public final AdviceKind = org.aspectj.weaver.loadtime.definition.Definition$AdviceKind of org.aspectj.weaver.loadtime.definition.Definition
  public ConcreteAspect = org.aspectj.weaver.loadtime.definition.Definition$ConcreteAspect of org.aspectj.weaver.loadtime.definition.Definition
  public DeclareAnnotation = org.aspectj.weaver.loadtime.definition.Definition$DeclareAnnotation of org.aspectj.weaver.loadtime.definition.Definition
  public final DeclareAnnotationKind = org.aspectj.weaver.loadtime.definition.Definition$DeclareAnnotationKind of org.aspectj.weaver.loadtime.definition.Definition
  public DeclareErrorOrWarning = org.aspectj.weaver.loadtime.definition.Definition$DeclareErrorOrWarning of org.aspectj.weaver.loadtime.definition.Definition
  public Pointcut = org.aspectj.weaver.loadtime.definition.Definition$Pointcut of org.aspectj.weaver.loadtime.definition.Definition
  public PointcutAndAdvice = org.aspectj.weaver.loadtime.definition.Definition$PointcutAndAdvice of org.aspectj.weaver.loadtime.definition.Definition
  public Kind = org.aspectj.weaver.patterns.DeclareAnnotation$Kind of org.aspectj.weaver.patterns.DeclareAnnotation
  public Kind = org.aspectj.weaver.patterns.PerClause$Kind of org.aspectj.weaver.patterns.PerClause