public class org.aspectj.weaver.model.AsmRelationshipProvider
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.aspectj.weaver.model.AsmRelationshipProvider
  super_class: java.lang.Object
{
  public static final java.lang.String ADVISES;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "advises"

  public static final java.lang.String ADVISED_BY;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "advised by"

  public static final java.lang.String DECLARES_ON;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "declares on"

  public static final java.lang.String DECLAREDY_BY;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "declared by"

  public static final java.lang.String SOFTENS;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "softens"

  public static final java.lang.String SOFTENED_BY;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "softened by"

  public static final java.lang.String MATCHED_BY;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "matched by"

  public static final java.lang.String MATCHES_DECLARE;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "matches declare"

  public static final java.lang.String INTER_TYPE_DECLARES;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "declared on"

  public static final java.lang.String INTER_TYPE_DECLARED_BY;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "aspect declarations"

  public static final java.lang.String ANNOTATES;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "annotates"

  public static final java.lang.String ANNOTATED_BY;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "annotated by"

  private static final java.lang.String NO_COMMENT;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 624
            aconst_null
            putstatic org.aspectj.weaver.model.AsmRelationshipProvider.NO_COMMENT:Ljava/lang/String;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.aspectj.weaver.model.AsmRelationshipProvider this
         0: .line 55
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // org.aspectj.weaver.model.AsmRelationshipProvider this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/aspectj/weaver/model/AsmRelationshipProvider;

  public static void addDeclareErrorOrWarningRelationship(org.aspectj.asm.AsmManager, org.aspectj.weaver.Shadow, org.aspectj.weaver.Checker);
    descriptor: (Lorg/aspectj/asm/AsmManager;Lorg/aspectj/weaver/Shadow;Lorg/aspectj/weaver/Checker;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=10, args_size=3
        start local 0 // org.aspectj.asm.AsmManager model
        start local 1 // org.aspectj.weaver.Shadow affectedShadow
        start local 2 // org.aspectj.weaver.Checker deow
         0: .line 78
            aload 0 /* model */
            ifnonnull 2
         1: .line 79
            return
         2: .line 81
      StackMap locals:
      StackMap stack:
            aload 1 /* affectedShadow */
            invokevirtual org.aspectj.weaver.Shadow.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            ifnull 3
            aload 2 /* deow */
            invokevirtual org.aspectj.weaver.Checker.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            ifnonnull 4
         3: .line 82
      StackMap locals:
      StackMap stack:
            return
         4: .line 85
      StackMap locals:
      StackMap stack:
            getstatic org.aspectj.weaver.World.createInjarHierarchy:Z
            ifeq 6
         5: .line 86
            aload 0 /* model */
            aload 2 /* deow */
            invokestatic org.aspectj.weaver.model.AsmRelationshipProvider.createHierarchyForBinaryAspect:(Lorg/aspectj/asm/AsmManager;Lorg/aspectj/weaver/ShadowMunger;)V
         6: .line 89
      StackMap locals:
      StackMap stack:
            aload 0 /* model */
            aload 1 /* affectedShadow */
            invokestatic org.aspectj.weaver.model.AsmRelationshipProvider.getNode:(Lorg/aspectj/asm/AsmManager;Lorg/aspectj/weaver/Shadow;)Lorg/aspectj/asm/IProgramElement;
            astore 3 /* targetNode */
        start local 3 // org.aspectj.asm.IProgramElement targetNode
         7: .line 90
            aload 3 /* targetNode */
            ifnonnull 9
         8: .line 91
            return
         9: .line 93
      StackMap locals: org.aspectj.asm.IProgramElement
      StackMap stack:
            aload 3 /* targetNode */
            invokeinterface org.aspectj.asm.IProgramElement.getHandleIdentifier:()Ljava/lang/String;
            astore 4 /* targetHandle */
        start local 4 // java.lang.String targetHandle
        10: .line 94
            aload 4 /* targetHandle */
            ifnonnull 12
        11: .line 95
            return
        12: .line 98
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* model */
            invokevirtual org.aspectj.asm.AsmManager.getHierarchy:()Lorg/aspectj/asm/IHierarchy;
            aload 2 /* deow */
            invokevirtual org.aspectj.weaver.Checker.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            invokeinterface org.aspectj.asm.IHierarchy.findElementForSourceLine:(Lorg/aspectj/bridge/ISourceLocation;)Lorg/aspectj/asm/IProgramElement;
            astore 5 /* sourceNode */
        start local 5 // org.aspectj.asm.IProgramElement sourceNode
        13: .line 99
            aload 5 /* sourceNode */
            invokeinterface org.aspectj.asm.IProgramElement.getHandleIdentifier:()Ljava/lang/String;
            astore 6 /* sourceHandle */
        start local 6 // java.lang.String sourceHandle
        14: .line 100
            aload 6 /* sourceHandle */
            ifnonnull 16
        15: .line 101
            return
        16: .line 104
      StackMap locals: org.aspectj.asm.IProgramElement java.lang.String
      StackMap stack:
            aload 0 /* model */
            invokevirtual org.aspectj.asm.AsmManager.getRelationshipMap:()Lorg/aspectj/asm/IRelationshipMap;
            astore 7 /* relmap */
        start local 7 // org.aspectj.asm.IRelationshipMap relmap
        17: .line 105
            aload 7 /* relmap */
            aload 6 /* sourceHandle */
            getstatic org.aspectj.asm.IRelationship$Kind.DECLARE:Lorg/aspectj/asm/IRelationship$Kind;
            ldc "matched by"
            iconst_0
            iconst_1
            invokeinterface org.aspectj.asm.IRelationshipMap.get:(Ljava/lang/String;Lorg/aspectj/asm/IRelationship$Kind;Ljava/lang/String;ZZ)Lorg/aspectj/asm/IRelationship;
            astore 8 /* foreward */
        start local 8 // org.aspectj.asm.IRelationship foreward
        18: .line 106
            aload 8 /* foreward */
            aload 4 /* targetHandle */
            invokeinterface org.aspectj.asm.IRelationship.addTarget:(Ljava/lang/String;)V
        19: .line 108
            aload 7 /* relmap */
            aload 4 /* targetHandle */
            getstatic org.aspectj.asm.IRelationship$Kind.DECLARE:Lorg/aspectj/asm/IRelationship$Kind;
            ldc "matches declare"
            iconst_0
            iconst_1
            invokeinterface org.aspectj.asm.IRelationshipMap.get:(Ljava/lang/String;Lorg/aspectj/asm/IRelationship$Kind;Ljava/lang/String;ZZ)Lorg/aspectj/asm/IRelationship;
            astore 9 /* back */
        start local 9 // org.aspectj.asm.IRelationship back
        20: .line 109
            aload 9 /* back */
            ifnull 22
            aload 9 /* back */
            invokeinterface org.aspectj.asm.IRelationship.getTargets:()Ljava/util/List;
            ifnull 22
        21: .line 110
            aload 9 /* back */
            aload 6 /* sourceHandle */
            invokeinterface org.aspectj.asm.IRelationship.addTarget:(Ljava/lang/String;)V
        22: .line 112
      StackMap locals: org.aspectj.asm.IRelationshipMap org.aspectj.asm.IRelationship org.aspectj.asm.IRelationship
      StackMap stack:
            aload 5 /* sourceNode */
            invokeinterface org.aspectj.asm.IProgramElement.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            ifnull 24
        23: .line 113
            aload 0 /* model */
            aload 5 /* sourceNode */
            invokeinterface org.aspectj.asm.IProgramElement.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            invokeinterface org.aspectj.bridge.ISourceLocation.getSourceFile:()Ljava/io/File;
            invokevirtual org.aspectj.asm.AsmManager.addAspectInEffectThisBuild:(Ljava/io/File;)V
        24: .line 115
      StackMap locals:
      StackMap stack:
            return
        end local 9 // org.aspectj.asm.IRelationship back
        end local 8 // org.aspectj.asm.IRelationship foreward
        end local 7 // org.aspectj.asm.IRelationshipMap relmap
        end local 6 // java.lang.String sourceHandle
        end local 5 // org.aspectj.asm.IProgramElement sourceNode
        end local 4 // java.lang.String targetHandle
        end local 3 // org.aspectj.asm.IProgramElement targetNode
        end local 2 // org.aspectj.weaver.Checker deow
        end local 1 // org.aspectj.weaver.Shadow affectedShadow
        end local 0 // org.aspectj.asm.AsmManager model
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   25     0           model  Lorg/aspectj/asm/AsmManager;
            0   25     1  affectedShadow  Lorg/aspectj/weaver/Shadow;
            0   25     2            deow  Lorg/aspectj/weaver/Checker;
            7   25     3      targetNode  Lorg/aspectj/asm/IProgramElement;
           10   25     4    targetHandle  Ljava/lang/String;
           13   25     5      sourceNode  Lorg/aspectj/asm/IProgramElement;
           14   25     6    sourceHandle  Ljava/lang/String;
           17   25     7          relmap  Lorg/aspectj/asm/IRelationshipMap;
           18   25     8        foreward  Lorg/aspectj/asm/IRelationship;
           20   25     9            back  Lorg/aspectj/asm/IRelationship;
    MethodParameters:
                Name  Flags
      model           
      affectedShadow  
      deow            

  private static boolean isMixinRelated(org.aspectj.weaver.ResolvedTypeMunger);
    descriptor: (Lorg/aspectj/weaver/ResolvedTypeMunger;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.aspectj.weaver.ResolvedTypeMunger typeTransformer
         0: .line 118
            aload 0 /* typeTransformer */
            invokevirtual org.aspectj.weaver.ResolvedTypeMunger.getKind:()Lorg/aspectj/weaver/ResolvedTypeMunger$Kind;
            astore 1 /* kind */
        start local 1 // org.aspectj.weaver.ResolvedTypeMunger$Kind kind
         1: .line 119
            aload 1 /* kind */
            getstatic org.aspectj.weaver.ResolvedTypeMunger.MethodDelegate2:Lorg/aspectj/weaver/ResolvedTypeMunger$Kind;
            if_acmpeq 4
            aload 1 /* kind */
            getstatic org.aspectj.weaver.ResolvedTypeMunger.FieldHost:Lorg/aspectj/weaver/ResolvedTypeMunger$Kind;
            if_acmpeq 4
         2: .line 120
            aload 1 /* kind */
            getstatic org.aspectj.weaver.ResolvedTypeMunger.Parent:Lorg/aspectj/weaver/ResolvedTypeMunger$Kind;
            if_acmpne 3
            aload 0 /* typeTransformer */
            checkcast org.aspectj.weaver.NewParentTypeMunger
            invokevirtual org.aspectj.weaver.NewParentTypeMunger.isMixin:()Z
            ifne 4
         3: .line 119
      StackMap locals: org.aspectj.weaver.ResolvedTypeMunger$Kind
      StackMap stack:
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         4: iconst_1
            ireturn
        end local 1 // org.aspectj.weaver.ResolvedTypeMunger$Kind kind
        end local 0 // org.aspectj.weaver.ResolvedTypeMunger typeTransformer
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    5     0  typeTransformer  Lorg/aspectj/weaver/ResolvedTypeMunger;
            1    5     1             kind  Lorg/aspectj/weaver/ResolvedTypeMunger$Kind;
    MethodParameters:
                 Name  Flags
      typeTransformer  

  public static void addRelationship(org.aspectj.asm.AsmManager, org.aspectj.weaver.ResolvedType, org.aspectj.weaver.ResolvedTypeMunger, org.aspectj.weaver.ResolvedType);
    descriptor: (Lorg/aspectj/asm/AsmManager;Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/weaver/ResolvedTypeMunger;Lorg/aspectj/weaver/ResolvedType;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=10, args_size=4
        start local 0 // org.aspectj.asm.AsmManager model
        start local 1 // org.aspectj.weaver.ResolvedType onType
        start local 2 // org.aspectj.weaver.ResolvedTypeMunger typeTransformer
        start local 3 // org.aspectj.weaver.ResolvedType originatingAspect
         0: .line 128
            aload 0 /* model */
            ifnonnull 2
         1: .line 129
            return
         2: .line 132
      StackMap locals:
      StackMap stack:
            getstatic org.aspectj.weaver.World.createInjarHierarchy:Z
            ifeq 4
            aload 3 /* originatingAspect */
            invokestatic org.aspectj.weaver.model.AsmRelationshipProvider.isBinaryAspect:(Lorg/aspectj/weaver/ResolvedType;)Z
            ifeq 4
         3: .line 133
            aload 0 /* model */
            aload 2 /* typeTransformer */
            aload 3 /* originatingAspect */
            invokestatic org.aspectj.weaver.model.AsmRelationshipProvider.createHierarchy:(Lorg/aspectj/asm/AsmManager;Lorg/aspectj/weaver/ResolvedTypeMunger;Lorg/aspectj/weaver/ResolvedType;)V
         4: .line 136
      StackMap locals:
      StackMap stack:
            aload 3 /* originatingAspect */
            invokevirtual org.aspectj.weaver.ResolvedType.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            ifnull 56
         5: .line 137
            ldc ""
            astore 4 /* sourceHandle */
        start local 4 // java.lang.String sourceHandle
         6: .line 138
            aconst_null
            astore 5 /* sourceNode */
        start local 5 // org.aspectj.asm.IProgramElement sourceNode
         7: .line 139
            aload 2 /* typeTransformer */
            invokevirtual org.aspectj.weaver.ResolvedTypeMunger.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            ifnull 36
            aload 2 /* typeTransformer */
            invokevirtual org.aspectj.weaver.ResolvedTypeMunger.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            invokeinterface org.aspectj.bridge.ISourceLocation.getOffset:()I
            iconst_m1
            if_icmpeq 36
         8: .line 140
            aload 2 /* typeTransformer */
            invokestatic org.aspectj.weaver.model.AsmRelationshipProvider.isMixinRelated:(Lorg/aspectj/weaver/ResolvedTypeMunger;)Z
            ifne 36
         9: .line 141
            aload 0 /* model */
            invokevirtual org.aspectj.asm.AsmManager.getHierarchy:()Lorg/aspectj/asm/IHierarchy;
            aload 3 /* originatingAspect */
            invokevirtual org.aspectj.weaver.ResolvedType.getPackageName:()Ljava/lang/String;
        10: .line 142
            aload 3 /* originatingAspect */
            invokevirtual org.aspectj.weaver.ResolvedType.getClassName:()Ljava/lang/String;
        11: .line 141
            invokeinterface org.aspectj.asm.IHierarchy.findElementForType:(Ljava/lang/String;Ljava/lang/String;)Lorg/aspectj/asm/IProgramElement;
            astore 5 /* sourceNode */
        12: .line 143
            aload 0 /* model */
            invokevirtual org.aspectj.asm.AsmManager.getHierarchy:()Lorg/aspectj/asm/IHierarchy;
            aload 5 /* sourceNode */
        13: .line 144
            aload 2 /* typeTransformer */
            invokevirtual org.aspectj.weaver.ResolvedTypeMunger.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            invokeinterface org.aspectj.bridge.ISourceLocation.getLine:()I
        14: .line 143
            invokeinterface org.aspectj.asm.IHierarchy.findCloserMatchForLineNumber:(Lorg/aspectj/asm/IProgramElement;I)Lorg/aspectj/asm/IProgramElement;
            astore 6 /* closer */
        start local 6 // org.aspectj.asm.IProgramElement closer
        15: .line 145
            aload 6 /* closer */
            ifnull 17
        16: .line 146
            aload 6 /* closer */
            astore 5 /* sourceNode */
        17: .line 148
      StackMap locals: java.lang.String org.aspectj.asm.IProgramElement org.aspectj.asm.IProgramElement
      StackMap stack:
            aload 5 /* sourceNode */
            ifnonnull 34
        18: .line 153
            getstatic org.aspectj.weaver.World.createInjarHierarchy:Z
            ifeq 34
        19: .line 154
            aload 0 /* model */
            aload 2 /* typeTransformer */
            aload 3 /* originatingAspect */
            invokestatic org.aspectj.weaver.model.AsmRelationshipProvider.createHierarchy:(Lorg/aspectj/asm/AsmManager;Lorg/aspectj/weaver/ResolvedTypeMunger;Lorg/aspectj/weaver/ResolvedType;)V
        20: .line 155
            aload 2 /* typeTransformer */
            invokevirtual org.aspectj.weaver.ResolvedTypeMunger.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            ifnull 31
            aload 2 /* typeTransformer */
            invokevirtual org.aspectj.weaver.ResolvedTypeMunger.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            invokeinterface org.aspectj.bridge.ISourceLocation.getOffset:()I
            iconst_m1
            if_icmpeq 31
        21: .line 156
            aload 2 /* typeTransformer */
            invokestatic org.aspectj.weaver.model.AsmRelationshipProvider.isMixinRelated:(Lorg/aspectj/weaver/ResolvedTypeMunger;)Z
            ifne 31
        22: .line 157
            aload 0 /* model */
            invokevirtual org.aspectj.asm.AsmManager.getHierarchy:()Lorg/aspectj/asm/IHierarchy;
            aload 3 /* originatingAspect */
            invokevirtual org.aspectj.weaver.ResolvedType.getPackageName:()Ljava/lang/String;
        23: .line 158
            aload 3 /* originatingAspect */
            invokevirtual org.aspectj.weaver.ResolvedType.getClassName:()Ljava/lang/String;
        24: .line 157
            invokeinterface org.aspectj.asm.IHierarchy.findElementForType:(Ljava/lang/String;Ljava/lang/String;)Lorg/aspectj/asm/IProgramElement;
            astore 5 /* sourceNode */
        25: .line 159
            aload 0 /* model */
            invokevirtual org.aspectj.asm.AsmManager.getHierarchy:()Lorg/aspectj/asm/IHierarchy;
            aload 5 /* sourceNode */
        26: .line 160
            aload 2 /* typeTransformer */
            invokevirtual org.aspectj.weaver.ResolvedTypeMunger.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            invokeinterface org.aspectj.bridge.ISourceLocation.getLine:()I
        27: .line 159
            invokeinterface org.aspectj.asm.IHierarchy.findCloserMatchForLineNumber:(Lorg/aspectj/asm/IProgramElement;I)Lorg/aspectj/asm/IProgramElement;
            astore 7 /* closer2 */
        start local 7 // org.aspectj.asm.IProgramElement closer2
        28: .line 161
            aload 7 /* closer2 */
            ifnull 34
        29: .line 162
            aload 7 /* closer2 */
            astore 5 /* sourceNode */
        end local 7 // org.aspectj.asm.IProgramElement closer2
        30: .line 164
            goto 34
        31: .line 165
      StackMap locals:
      StackMap stack:
            aload 0 /* model */
            invokevirtual org.aspectj.asm.AsmManager.getHierarchy:()Lorg/aspectj/asm/IHierarchy;
            aload 3 /* originatingAspect */
            invokevirtual org.aspectj.weaver.ResolvedType.getPackageName:()Ljava/lang/String;
        32: .line 166
            aload 3 /* originatingAspect */
            invokevirtual org.aspectj.weaver.ResolvedType.getClassName:()Ljava/lang/String;
        33: .line 165
            invokeinterface org.aspectj.asm.IHierarchy.findElementForType:(Ljava/lang/String;Ljava/lang/String;)Lorg/aspectj/asm/IProgramElement;
            astore 5 /* sourceNode */
        34: .line 170
      StackMap locals:
      StackMap stack:
            aload 5 /* sourceNode */
            invokeinterface org.aspectj.asm.IProgramElement.getHandleIdentifier:()Ljava/lang/String;
            astore 4 /* sourceHandle */
        end local 6 // org.aspectj.asm.IProgramElement closer
        35: .line 171
            goto 40
        36: .line 172
      StackMap locals:
      StackMap stack:
            aload 0 /* model */
            invokevirtual org.aspectj.asm.AsmManager.getHierarchy:()Lorg/aspectj/asm/IHierarchy;
            aload 3 /* originatingAspect */
            invokevirtual org.aspectj.weaver.ResolvedType.getPackageName:()Ljava/lang/String;
        37: .line 173
            aload 3 /* originatingAspect */
            invokevirtual org.aspectj.weaver.ResolvedType.getClassName:()Ljava/lang/String;
        38: .line 172
            invokeinterface org.aspectj.asm.IHierarchy.findElementForType:(Ljava/lang/String;Ljava/lang/String;)Lorg/aspectj/asm/IProgramElement;
            astore 5 /* sourceNode */
        39: .line 177
            aload 5 /* sourceNode */
            invokeinterface org.aspectj.asm.IProgramElement.getHandleIdentifier:()Ljava/lang/String;
            astore 4 /* sourceHandle */
        40: .line 188
      StackMap locals:
      StackMap stack:
            aload 4 /* sourceHandle */
            ifnonnull 42
        41: .line 189
            return
        42: .line 191
      StackMap locals:
      StackMap stack:
            aload 0 /* model */
            aload 1 /* onType */
            invokestatic org.aspectj.weaver.model.AsmRelationshipProvider.findOrFakeUpNode:(Lorg/aspectj/asm/AsmManager;Lorg/aspectj/weaver/ResolvedType;)Ljava/lang/String;
            astore 6 /* targetHandle */
        start local 6 // java.lang.String targetHandle
        43: .line 192
            aload 6 /* targetHandle */
            ifnonnull 45
        44: .line 193
            return
        45: .line 195
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* model */
            invokevirtual org.aspectj.asm.AsmManager.getRelationshipMap:()Lorg/aspectj/asm/IRelationshipMap;
            astore 7 /* mapper */
        start local 7 // org.aspectj.asm.IRelationshipMap mapper
        46: .line 196
            aload 7 /* mapper */
            aload 4 /* sourceHandle */
            getstatic org.aspectj.asm.IRelationship$Kind.DECLARE_INTER_TYPE:Lorg/aspectj/asm/IRelationship$Kind;
            ldc "declared on"
            iconst_0
        47: .line 197
            iconst_1
        48: .line 196
            invokeinterface org.aspectj.asm.IRelationshipMap.get:(Ljava/lang/String;Lorg/aspectj/asm/IRelationship$Kind;Ljava/lang/String;ZZ)Lorg/aspectj/asm/IRelationship;
            astore 8 /* foreward */
        start local 8 // org.aspectj.asm.IRelationship foreward
        49: .line 198
            aload 8 /* foreward */
            aload 6 /* targetHandle */
            invokeinterface org.aspectj.asm.IRelationship.addTarget:(Ljava/lang/String;)V
        50: .line 200
            aload 7 /* mapper */
            aload 6 /* targetHandle */
            getstatic org.aspectj.asm.IRelationship$Kind.DECLARE_INTER_TYPE:Lorg/aspectj/asm/IRelationship$Kind;
            ldc "aspect declarations"
            iconst_0
        51: .line 201
            iconst_1
        52: .line 200
            invokeinterface org.aspectj.asm.IRelationshipMap.get:(Ljava/lang/String;Lorg/aspectj/asm/IRelationship$Kind;Ljava/lang/String;ZZ)Lorg/aspectj/asm/IRelationship;
            astore 9 /* back */
        start local 9 // org.aspectj.asm.IRelationship back
        53: .line 202
            aload 9 /* back */
            aload 4 /* sourceHandle */
            invokeinterface org.aspectj.asm.IRelationship.addTarget:(Ljava/lang/String;)V
        54: .line 203
            aload 5 /* sourceNode */
            ifnull 56
            aload 5 /* sourceNode */
            invokeinterface org.aspectj.asm.IProgramElement.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            ifnull 56
        55: .line 205
            aload 0 /* model */
            aload 5 /* sourceNode */
            invokeinterface org.aspectj.asm.IProgramElement.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            invokeinterface org.aspectj.bridge.ISourceLocation.getSourceFile:()Ljava/io/File;
            invokevirtual org.aspectj.asm.AsmManager.addAspectInEffectThisBuild:(Ljava/io/File;)V
        end local 9 // org.aspectj.asm.IRelationship back
        end local 8 // org.aspectj.asm.IRelationship foreward
        end local 7 // org.aspectj.asm.IRelationshipMap mapper
        end local 6 // java.lang.String targetHandle
        end local 5 // org.aspectj.asm.IProgramElement sourceNode
        end local 4 // java.lang.String sourceHandle
        56: .line 208
      StackMap locals:
      StackMap stack:
            return
        end local 3 // org.aspectj.weaver.ResolvedType originatingAspect
        end local 2 // org.aspectj.weaver.ResolvedTypeMunger typeTransformer
        end local 1 // org.aspectj.weaver.ResolvedType onType
        end local 0 // org.aspectj.asm.AsmManager model
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   57     0              model  Lorg/aspectj/asm/AsmManager;
            0   57     1             onType  Lorg/aspectj/weaver/ResolvedType;
            0   57     2    typeTransformer  Lorg/aspectj/weaver/ResolvedTypeMunger;
            0   57     3  originatingAspect  Lorg/aspectj/weaver/ResolvedType;
            6   56     4       sourceHandle  Ljava/lang/String;
            7   56     5         sourceNode  Lorg/aspectj/asm/IProgramElement;
           15   35     6             closer  Lorg/aspectj/asm/IProgramElement;
           28   30     7            closer2  Lorg/aspectj/asm/IProgramElement;
           43   56     6       targetHandle  Ljava/lang/String;
           46   56     7             mapper  Lorg/aspectj/asm/IRelationshipMap;
           49   56     8           foreward  Lorg/aspectj/asm/IRelationship;
           53   56     9               back  Lorg/aspectj/asm/IRelationship;
    MethodParameters:
                   Name  Flags
      model              
      onType             
      typeTransformer    
      originatingAspect  

  private static java.lang.String findOrFakeUpNode(org.aspectj.asm.AsmManager, org.aspectj.weaver.ResolvedType);
    descriptor: (Lorg/aspectj/asm/AsmManager;Lorg/aspectj/weaver/ResolvedType;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=16, args_size=2
        start local 0 // org.aspectj.asm.AsmManager model
        start local 1 // org.aspectj.weaver.ResolvedType onType
         0: .line 211
            aload 0 /* model */
            invokevirtual org.aspectj.asm.AsmManager.getHierarchy:()Lorg/aspectj/asm/IHierarchy;
            astore 2 /* hierarchy */
        start local 2 // org.aspectj.asm.IHierarchy hierarchy
         1: .line 212
            aload 1 /* onType */
            invokevirtual org.aspectj.weaver.ResolvedType.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            astore 3 /* sourceLocation */
        start local 3 // org.aspectj.bridge.ISourceLocation sourceLocation
         2: .line 213
            aload 0 /* model */
            aload 3 /* sourceLocation */
            invokeinterface org.aspectj.bridge.ISourceLocation.getSourceFile:()Ljava/io/File;
            invokevirtual org.aspectj.asm.AsmManager.getCanonicalFilePath:(Ljava/io/File;)Ljava/lang/String;
            astore 4 /* canonicalFilePath */
        start local 4 // java.lang.String canonicalFilePath
         3: .line 214
            aload 3 /* sourceLocation */
            invokeinterface org.aspectj.bridge.ISourceLocation.getLine:()I
            istore 5 /* lineNumber */
        start local 5 // int lineNumber
         4: .line 216
            aload 2 /* hierarchy */
            aload 2 /* hierarchy */
            invokeinterface org.aspectj.asm.IHierarchy.getRoot:()Lorg/aspectj/asm/IProgramElement;
            aload 4 /* canonicalFilePath */
            invokeinterface org.aspectj.asm.IHierarchy.findNodeForSourceFile:(Lorg/aspectj/asm/IProgramElement;Ljava/lang/String;)Lorg/aspectj/asm/IProgramElement;
            astore 6 /* node */
        start local 6 // org.aspectj.asm.IProgramElement node
         5: .line 217
            aload 6 /* node */
            ifnonnull 36
         6: .line 219
            aload 1 /* onType */
            invokevirtual org.aspectj.weaver.ResolvedType.getBinaryPath:()Ljava/lang/String;
            astore 7 /* bpath */
        start local 7 // java.lang.String bpath
         7: .line 220
            aload 7 /* bpath */
            ifnonnull 9
         8: .line 221
            aload 0 /* model */
            invokevirtual org.aspectj.asm.AsmManager.getHandleProvider:()Lorg/aspectj/asm/IElementHandleProvider;
            aload 0 /* model */
            aload 4 /* canonicalFilePath */
            invokestatic org.aspectj.weaver.model.AsmRelationshipProvider.createFileStructureNode:(Lorg/aspectj/asm/AsmManager;Ljava/lang/String;)Lorg/aspectj/asm/IProgramElement;
            invokeinterface org.aspectj.asm.IElementHandleProvider.createHandleIdentifier:(Lorg/aspectj/asm/IProgramElement;)Ljava/lang/String;
            areturn
         9: .line 223
      StackMap locals: org.aspectj.asm.AsmManager org.aspectj.weaver.ResolvedType org.aspectj.asm.IHierarchy org.aspectj.bridge.ISourceLocation java.lang.String int org.aspectj.asm.IProgramElement java.lang.String
      StackMap stack:
            aload 0 /* model */
            invokevirtual org.aspectj.asm.AsmManager.getHierarchy:()Lorg/aspectj/asm/IHierarchy;
            invokeinterface org.aspectj.asm.IHierarchy.getRoot:()Lorg/aspectj/asm/IProgramElement;
            astore 8 /* programElement */
        start local 8 // org.aspectj.asm.IProgramElement programElement
        10: .line 225
            new java.lang.StringBuffer
            dup
            invokespecial java.lang.StringBuffer.<init>:()V
            astore 9 /* phantomHandle */
        start local 9 // java.lang.StringBuffer phantomHandle
        11: .line 228
            aload 9 /* phantomHandle */
            aload 8 /* programElement */
            invokeinterface org.aspectj.asm.IProgramElement.getHandleIdentifier:()Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        12: .line 231
            aload 9 /* phantomHandle */
            getstatic org.aspectj.asm.internal.HandleProviderDelimiter.PACKAGEFRAGMENTROOT:Lorg/aspectj/asm/internal/HandleProviderDelimiter;
            invokevirtual org.aspectj.asm.internal.HandleProviderDelimiter.getDelimiter:()C
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
        13: .line 232
            getstatic org.aspectj.asm.internal.HandleProviderDelimiter.PHANTOM:Lorg/aspectj/asm/internal/HandleProviderDelimiter;
            invokevirtual org.aspectj.asm.internal.HandleProviderDelimiter.getDelimiter:()C
        14: .line 231
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
        15: .line 234
            aload 7 /* bpath */
            bipush 33
            invokevirtual java.lang.String.indexOf:(I)I
            istore 10 /* pos */
        start local 10 // int pos
        16: .line 235
            iload 10 /* pos */
            iconst_m1
            if_icmpeq 21
        17: .line 237
            aload 7 /* bpath */
            iconst_0
            iload 10 /* pos */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 11 /* jarPath */
        start local 11 // java.lang.String jarPath
        18: .line 238
            aload 0 /* model */
            aload 11 /* jarPath */
            invokevirtual org.aspectj.asm.AsmManager.getHandleElementForInpath:(Ljava/lang/String;)Ljava/lang/String;
            astore 12 /* element */
        start local 12 // java.lang.String element
        19: .line 239
            aload 12 /* element */
            ifnull 21
        20: .line 240
            aload 9 /* phantomHandle */
            aload 12 /* element */
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        end local 12 // java.lang.String element
        end local 11 // java.lang.String jarPath
        21: .line 245
      StackMap locals: org.aspectj.asm.IProgramElement java.lang.StringBuffer int
      StackMap stack:
            aload 1 /* onType */
            invokevirtual org.aspectj.weaver.ResolvedType.getPackageName:()Ljava/lang/String;
            astore 11 /* packageName */
        start local 11 // java.lang.String packageName
        22: .line 246
            aload 9 /* phantomHandle */
            getstatic org.aspectj.asm.internal.HandleProviderDelimiter.PACKAGEFRAGMENT:Lorg/aspectj/asm/internal/HandleProviderDelimiter;
            invokevirtual org.aspectj.asm.internal.HandleProviderDelimiter.getDelimiter:()C
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            aload 11 /* packageName */
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        23: .line 250
            aload 7 /* bpath */
            ldc ".class"
            invokevirtual java.lang.String.lastIndexOf:(Ljava/lang/String;)I
            istore 12 /* dotClassPosition */
        start local 12 // int dotClassPosition
        24: .line 251
            iload 12 /* dotClassPosition */
            iconst_m1
            if_icmpne 27
        25: .line 252
            aload 9 /* phantomHandle */
            getstatic org.aspectj.asm.internal.HandleProviderDelimiter.CLASSFILE:Lorg/aspectj/asm/internal/HandleProviderDelimiter;
            invokevirtual org.aspectj.asm.internal.HandleProviderDelimiter.getDelimiter:()C
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            ldc "UNKNOWN.class"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        26: .line 253
            goto 34
        27: .line 254
      StackMap locals: java.lang.String int
      StackMap stack:
            iload 12 /* dotClassPosition */
            istore 13 /* startPosition */
        start local 13 // int startPosition
        28: .line 256
            goto 30
        start local 14 // char ch
        29: .line 257
      StackMap locals: int int
      StackMap stack:
            iinc 13 /* startPosition */ -1
        end local 14 // char ch
        30: .line 256
      StackMap locals:
      StackMap stack:
            iload 13 /* startPosition */
            ifle 32
            aload 7 /* bpath */
            iload 13 /* startPosition */
            invokevirtual java.lang.String.charAt:(I)C
            dup
            istore 14 /* ch */
        start local 14 // char ch
        31: bipush 47
            if_icmpeq 32
            iload 14 /* ch */
            bipush 92
            if_icmpeq 32
            iload 14 /* ch */
            bipush 33
            if_icmpne 29
        end local 14 // char ch
        32: .line 259
      StackMap locals:
      StackMap stack:
            aload 7 /* bpath */
            iload 13 /* startPosition */
            iconst_1
            iadd
            iload 12 /* dotClassPosition */
            bipush 6
            iadd
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 15 /* classFile */
        start local 15 // java.lang.String classFile
        33: .line 260
            aload 9 /* phantomHandle */
            getstatic org.aspectj.asm.internal.HandleProviderDelimiter.CLASSFILE:Lorg/aspectj/asm/internal/HandleProviderDelimiter;
            invokevirtual org.aspectj.asm.internal.HandleProviderDelimiter.getDelimiter:()C
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            aload 15 /* classFile */
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        end local 15 // java.lang.String classFile
        end local 13 // int startPosition
        34: .line 264
      StackMap locals:
      StackMap stack:
            aload 9 /* phantomHandle */
            getstatic org.aspectj.asm.internal.HandleProviderDelimiter.TYPE:Lorg/aspectj/asm/internal/HandleProviderDelimiter;
            invokevirtual org.aspectj.asm.internal.HandleProviderDelimiter.getDelimiter:()C
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            aload 1 /* onType */
            invokevirtual org.aspectj.weaver.ResolvedType.getClassName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        35: .line 266
            aload 9 /* phantomHandle */
            invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
            areturn
        end local 12 // int dotClassPosition
        end local 11 // java.lang.String packageName
        end local 10 // int pos
        end local 9 // java.lang.StringBuffer phantomHandle
        end local 8 // org.aspectj.asm.IProgramElement programElement
        end local 7 // java.lang.String bpath
        36: .line 270
      StackMap locals: org.aspectj.asm.AsmManager org.aspectj.weaver.ResolvedType org.aspectj.asm.IHierarchy org.aspectj.bridge.ISourceLocation java.lang.String int org.aspectj.asm.IProgramElement
      StackMap stack:
            aload 2 /* hierarchy */
            aload 6 /* node */
            iload 5 /* lineNumber */
            invokeinterface org.aspectj.asm.IHierarchy.findCloserMatchForLineNumber:(Lorg/aspectj/asm/IProgramElement;I)Lorg/aspectj/asm/IProgramElement;
            astore 7 /* closernode */
        start local 7 // org.aspectj.asm.IProgramElement closernode
        37: .line 271
            aload 7 /* closernode */
            ifnonnull 39
        38: .line 272
            aload 6 /* node */
            invokeinterface org.aspectj.asm.IProgramElement.getHandleIdentifier:()Ljava/lang/String;
            areturn
        39: .line 274
      StackMap locals: org.aspectj.asm.IProgramElement
      StackMap stack:
            aload 7 /* closernode */
            invokeinterface org.aspectj.asm.IProgramElement.getHandleIdentifier:()Ljava/lang/String;
            areturn
        end local 7 // org.aspectj.asm.IProgramElement closernode
        end local 6 // org.aspectj.asm.IProgramElement node
        end local 5 // int lineNumber
        end local 4 // java.lang.String canonicalFilePath
        end local 3 // org.aspectj.bridge.ISourceLocation sourceLocation
        end local 2 // org.aspectj.asm.IHierarchy hierarchy
        end local 1 // org.aspectj.weaver.ResolvedType onType
        end local 0 // org.aspectj.asm.AsmManager model
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   40     0              model  Lorg/aspectj/asm/AsmManager;
            0   40     1             onType  Lorg/aspectj/weaver/ResolvedType;
            1   40     2          hierarchy  Lorg/aspectj/asm/IHierarchy;
            2   40     3     sourceLocation  Lorg/aspectj/bridge/ISourceLocation;
            3   40     4  canonicalFilePath  Ljava/lang/String;
            4   40     5         lineNumber  I
            5   40     6               node  Lorg/aspectj/asm/IProgramElement;
            7   36     7              bpath  Ljava/lang/String;
           10   36     8     programElement  Lorg/aspectj/asm/IProgramElement;
           11   36     9      phantomHandle  Ljava/lang/StringBuffer;
           16   36    10                pos  I
           18   21    11            jarPath  Ljava/lang/String;
           19   21    12            element  Ljava/lang/String;
           22   36    11        packageName  Ljava/lang/String;
           24   36    12   dotClassPosition  I
           28   34    13      startPosition  I
           29   30    14                 ch  C
           31   32    14                 ch  C
           33   34    15          classFile  Ljava/lang/String;
           37   40     7         closernode  Lorg/aspectj/asm/IProgramElement;
    MethodParameters:
        Name  Flags
      model   
      onType  

  public static org.aspectj.asm.IProgramElement createFileStructureNode(org.aspectj.asm.AsmManager, java.lang.String);
    descriptor: (Lorg/aspectj/asm/AsmManager;Ljava/lang/String;)Lorg/aspectj/asm/IProgramElement;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=10, locals=7, args_size=2
        start local 0 // org.aspectj.asm.AsmManager asm
        start local 1 // java.lang.String sourceFilePath
         0: .line 282
            aload 1 /* sourceFilePath */
            bipush 92
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 2 /* lastSlash */
        start local 2 // int lastSlash
         1: .line 283
            iload 2 /* lastSlash */
            iconst_m1
            if_icmpne 3
         2: .line 284
            aload 1 /* sourceFilePath */
            bipush 47
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 2 /* lastSlash */
         3: .line 287
      StackMap locals: int
      StackMap stack:
            aload 1 /* sourceFilePath */
            bipush 33
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 3 /* i */
        start local 3 // int i
         4: .line 288
            aload 1 /* sourceFilePath */
            ldc ".class"
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            istore 4 /* j */
        start local 4 // int j
         5: .line 289
            iload 3 /* i */
            iload 2 /* lastSlash */
            if_icmple 7
            iload 3 /* i */
            iconst_m1
            if_icmpeq 7
            iload 4 /* j */
            iconst_m1
            if_icmpeq 7
         6: .line 291
            iload 3 /* i */
            istore 2 /* lastSlash */
         7: .line 293
      StackMap locals: int int
      StackMap stack:
            aload 1 /* sourceFilePath */
            iload 2 /* lastSlash */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 5 /* fileName */
        start local 5 // java.lang.String fileName
         8: .line 294
            new org.aspectj.asm.internal.ProgramElement
            dup
            aload 0 /* asm */
            aload 5 /* fileName */
            getstatic org.aspectj.asm.IProgramElement$Kind.FILE_JAVA:Lorg/aspectj/asm/IProgramElement$Kind;
            new org.aspectj.bridge.SourceLocation
            dup
            new java.io.File
            dup
         9: .line 295
            aload 1 /* sourceFilePath */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            iconst_1
            iconst_1
            invokespecial org.aspectj.bridge.SourceLocation.<init>:(Ljava/io/File;II)V
            iconst_0
            aconst_null
            aconst_null
        10: .line 294
            invokespecial org.aspectj.asm.internal.ProgramElement.<init>:(Lorg/aspectj/asm/AsmManager;Ljava/lang/String;Lorg/aspectj/asm/IProgramElement$Kind;Lorg/aspectj/bridge/ISourceLocation;ILjava/lang/String;Ljava/util/List;)V
            astore 6 /* fileNode */
        start local 6 // org.aspectj.asm.IProgramElement fileNode
        11: .line 297
            aload 6 /* fileNode */
            getstatic org.aspectj.asm.IHierarchy.NO_STRUCTURE:Lorg/aspectj/asm/IProgramElement;
            invokeinterface org.aspectj.asm.IProgramElement.addChild:(Lorg/aspectj/asm/IProgramElement;)V
        12: .line 298
            aload 6 /* fileNode */
            areturn
        end local 6 // org.aspectj.asm.IProgramElement fileNode
        end local 5 // java.lang.String fileName
        end local 4 // int j
        end local 3 // int i
        end local 2 // int lastSlash
        end local 1 // java.lang.String sourceFilePath
        end local 0 // org.aspectj.asm.AsmManager asm
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   13     0             asm  Lorg/aspectj/asm/AsmManager;
            0   13     1  sourceFilePath  Ljava/lang/String;
            1   13     2       lastSlash  I
            4   13     3               i  I
            5   13     4               j  I
            8   13     5        fileName  Ljava/lang/String;
           11   13     6        fileNode  Lorg/aspectj/asm/IProgramElement;
    MethodParameters:
                Name  Flags
      asm             
      sourceFilePath  

  private static boolean isBinaryAspect(org.aspectj.weaver.ResolvedType);
    descriptor: (Lorg/aspectj/weaver/ResolvedType;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.aspectj.weaver.ResolvedType aspect
         0: .line 302
            aload 0 /* aspect */
            invokevirtual org.aspectj.weaver.ResolvedType.getBinaryPath:()Ljava/lang/String;
            ifnull 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // org.aspectj.weaver.ResolvedType aspect
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0  aspect  Lorg/aspectj/weaver/ResolvedType;
    MethodParameters:
        Name  Flags
      aspect  

  private static org.aspectj.bridge.ISourceLocation getBinarySourceLocation(org.aspectj.weaver.ResolvedType, org.aspectj.bridge.ISourceLocation);
    descriptor: (Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/bridge/ISourceLocation;)Lorg/aspectj/bridge/ISourceLocation;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=8, locals=5, args_size=2
        start local 0 // org.aspectj.weaver.ResolvedType aspect
        start local 1 // org.aspectj.bridge.ISourceLocation sl
         0: .line 311
            aload 1 /* sl */
            ifnonnull 2
         1: .line 312
            aconst_null
            areturn
         2: .line 314
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 2 /* sourceFileName */
        start local 2 // java.lang.String sourceFileName
         3: .line 315
            aload 0 /* aspect */
            instanceof org.aspectj.weaver.ReferenceType
            ifeq 10
         4: .line 316
            aload 0 /* aspect */
            checkcast org.aspectj.weaver.ReferenceType
            invokevirtual org.aspectj.weaver.ReferenceType.getDelegate:()Lorg/aspectj/weaver/ReferenceTypeDelegate;
            invokeinterface org.aspectj.weaver.ReferenceTypeDelegate.getSourcefilename:()Ljava/lang/String;
            astore 3 /* s */
        start local 3 // java.lang.String s
         5: .line 317
            aload 3 /* s */
            bipush 47
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 4 /* i */
        start local 4 // int i
         6: .line 318
            iload 4 /* i */
            iconst_m1
            if_icmpeq 9
         7: .line 319
            aload 3 /* s */
            iload 4 /* i */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 2 /* sourceFileName */
         8: .line 320
            goto 10
         9: .line 321
      StackMap locals: java.lang.String java.lang.String int
      StackMap stack:
            aload 3 /* s */
            astore 2 /* sourceFileName */
        end local 4 // int i
        end local 3 // java.lang.String s
        10: .line 324
      StackMap locals:
      StackMap stack:
            new org.aspectj.bridge.SourceLocation
            dup
            aload 0 /* aspect */
            invokestatic org.aspectj.weaver.model.AsmRelationshipProvider.getBinaryFile:(Lorg/aspectj/weaver/ResolvedType;)Ljava/io/File;
            aload 1 /* sl */
            invokeinterface org.aspectj.bridge.ISourceLocation.getLine:()I
            aload 1 /* sl */
            invokeinterface org.aspectj.bridge.ISourceLocation.getEndLine:()I
        11: .line 325
            aload 1 /* sl */
            invokeinterface org.aspectj.bridge.ISourceLocation.getColumn:()I
            ifne 12
            ldc -2147483647
            goto 13
      StackMap locals: org.aspectj.weaver.ResolvedType org.aspectj.bridge.ISourceLocation java.lang.String
      StackMap stack: new 10 new 10 java.io.File int int
        12: aload 1 /* sl */
            invokeinterface org.aspectj.bridge.ISourceLocation.getColumn:()I
      StackMap locals: org.aspectj.weaver.ResolvedType org.aspectj.bridge.ISourceLocation java.lang.String
      StackMap stack: new 10 new 10 java.io.File int int int
        13: aload 1 /* sl */
            invokeinterface org.aspectj.bridge.ISourceLocation.getContext:()Ljava/lang/String;
            aload 2 /* sourceFileName */
        14: .line 324
            invokespecial org.aspectj.bridge.SourceLocation.<init>:(Ljava/io/File;IIILjava/lang/String;Ljava/lang/String;)V
            astore 3 /* sLoc */
        start local 3 // org.aspectj.bridge.ISourceLocation sLoc
        15: .line 326
            aload 3 /* sLoc */
            areturn
        end local 3 // org.aspectj.bridge.ISourceLocation sLoc
        end local 2 // java.lang.String sourceFileName
        end local 1 // org.aspectj.bridge.ISourceLocation sl
        end local 0 // org.aspectj.weaver.ResolvedType aspect
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   16     0          aspect  Lorg/aspectj/weaver/ResolvedType;
            0   16     1              sl  Lorg/aspectj/bridge/ISourceLocation;
            3   16     2  sourceFileName  Ljava/lang/String;
            5   10     3               s  Ljava/lang/String;
            6   10     4               i  I
           15   16     3            sLoc  Lorg/aspectj/bridge/ISourceLocation;
    MethodParameters:
        Name  Flags
      aspect  
      sl      

  private static org.aspectj.bridge.ISourceLocation createSourceLocation(java.lang.String, org.aspectj.weaver.ResolvedType, org.aspectj.bridge.ISourceLocation);
    descriptor: (Ljava/lang/String;Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/bridge/ISourceLocation;)Lorg/aspectj/bridge/ISourceLocation;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=8, locals=4, args_size=3
        start local 0 // java.lang.String sourcefilename
        start local 1 // org.aspectj.weaver.ResolvedType aspect
        start local 2 // org.aspectj.bridge.ISourceLocation sl
         0: .line 330
            new org.aspectj.bridge.SourceLocation
            dup
            aload 1 /* aspect */
            invokestatic org.aspectj.weaver.model.AsmRelationshipProvider.getBinaryFile:(Lorg/aspectj/weaver/ResolvedType;)Ljava/io/File;
            aload 2 /* sl */
            invokeinterface org.aspectj.bridge.ISourceLocation.getLine:()I
            aload 2 /* sl */
            invokeinterface org.aspectj.bridge.ISourceLocation.getEndLine:()I
         1: .line 331
            aload 2 /* sl */
            invokeinterface org.aspectj.bridge.ISourceLocation.getColumn:()I
            ifne 2
            ldc -2147483647
            goto 3
      StackMap locals: java.lang.String org.aspectj.weaver.ResolvedType org.aspectj.bridge.ISourceLocation
      StackMap stack: new 0 new 0 java.io.File int int
         2: aload 2 /* sl */
            invokeinterface org.aspectj.bridge.ISourceLocation.getColumn:()I
      StackMap locals: java.lang.String org.aspectj.weaver.ResolvedType org.aspectj.bridge.ISourceLocation
      StackMap stack: new 0 new 0 java.io.File int int int
         3: aload 2 /* sl */
            invokeinterface org.aspectj.bridge.ISourceLocation.getContext:()Ljava/lang/String;
            aload 0 /* sourcefilename */
         4: .line 330
            invokespecial org.aspectj.bridge.SourceLocation.<init>:(Ljava/io/File;IIILjava/lang/String;Ljava/lang/String;)V
            astore 3 /* sLoc */
        start local 3 // org.aspectj.bridge.ISourceLocation sLoc
         5: .line 332
            aload 3 /* sLoc */
            areturn
        end local 3 // org.aspectj.bridge.ISourceLocation sLoc
        end local 2 // org.aspectj.bridge.ISourceLocation sl
        end local 1 // org.aspectj.weaver.ResolvedType aspect
        end local 0 // java.lang.String sourcefilename
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    6     0  sourcefilename  Ljava/lang/String;
            0    6     1          aspect  Lorg/aspectj/weaver/ResolvedType;
            0    6     2              sl  Lorg/aspectj/bridge/ISourceLocation;
            5    6     3            sLoc  Lorg/aspectj/bridge/ISourceLocation;
    MethodParameters:
                Name  Flags
      sourcefilename  
      aspect          
      sl              

  private static java.lang.String getSourceFileName(org.aspectj.weaver.ResolvedType);
    descriptor: (Lorg/aspectj/weaver/ResolvedType;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=1
        start local 0 // org.aspectj.weaver.ResolvedType aspect
         0: .line 336
            aconst_null
            astore 1 /* sourceFileName */
        start local 1 // java.lang.String sourceFileName
         1: .line 337
            aload 0 /* aspect */
            instanceof org.aspectj.weaver.ReferenceType
            ifeq 8
         2: .line 338
            aload 0 /* aspect */
            checkcast org.aspectj.weaver.ReferenceType
            invokevirtual org.aspectj.weaver.ReferenceType.getDelegate:()Lorg/aspectj/weaver/ReferenceTypeDelegate;
            invokeinterface org.aspectj.weaver.ReferenceTypeDelegate.getSourcefilename:()Ljava/lang/String;
            astore 2 /* s */
        start local 2 // java.lang.String s
         3: .line 339
            aload 2 /* s */
            bipush 47
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 3 /* i */
        start local 3 // int i
         4: .line 340
            iload 3 /* i */
            iconst_m1
            if_icmpeq 7
         5: .line 341
            aload 2 /* s */
            iload 3 /* i */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 1 /* sourceFileName */
         6: .line 342
            goto 8
         7: .line 343
      StackMap locals: java.lang.String java.lang.String int
      StackMap stack:
            aload 2 /* s */
            astore 1 /* sourceFileName */
        end local 3 // int i
        end local 2 // java.lang.String s
         8: .line 346
      StackMap locals:
      StackMap stack:
            aload 1 /* sourceFileName */
            areturn
        end local 1 // java.lang.String sourceFileName
        end local 0 // org.aspectj.weaver.ResolvedType aspect
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    9     0          aspect  Lorg/aspectj/weaver/ResolvedType;
            1    9     1  sourceFileName  Ljava/lang/String;
            3    8     2               s  Ljava/lang/String;
            4    8     3               i  I
    MethodParameters:
        Name  Flags
      aspect  

  private static java.io.File getBinaryFile(org.aspectj.weaver.ResolvedType);
    descriptor: (Lorg/aspectj/weaver/ResolvedType;)Ljava/io/File;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=1
        start local 0 // org.aspectj.weaver.ResolvedType aspect
         0: .line 355
            aload 0 /* aspect */
            invokevirtual org.aspectj.weaver.ResolvedType.getBinaryPath:()Ljava/lang/String;
            astore 1 /* s */
        start local 1 // java.lang.String s
         1: .line 356
            aload 0 /* aspect */
            invokevirtual org.aspectj.weaver.ResolvedType.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            invokeinterface org.aspectj.bridge.ISourceLocation.getSourceFile:()Ljava/io/File;
            astore 2 /* f */
        start local 2 // java.io.File f
         2: .line 358
            aload 2 /* f */
            invokevirtual java.io.File.getPath:()Ljava/lang/String;
            bipush 46
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 3 /* i */
        start local 3 // int i
         3: .line 359
            aconst_null
            astore 4 /* path */
        start local 4 // java.lang.String path
         4: .line 360
            iload 3 /* i */
            iconst_m1
            if_icmpeq 7
         5: .line 361
            new java.lang.StringBuilder
            dup
            aload 2 /* f */
            invokevirtual java.io.File.getPath:()Ljava/lang/String;
            iconst_0
            iload 3 /* i */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ".class"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 4 /* path */
         6: .line 362
            goto 8
         7: .line 363
      StackMap locals: org.aspectj.weaver.ResolvedType java.lang.String java.io.File int java.lang.String
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 2 /* f */
            invokevirtual java.io.File.getPath:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ".class"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 4 /* path */
         8: .line 365
      StackMap locals:
      StackMap stack:
            new java.io.File
            dup
            new java.lang.StringBuilder
            dup
            aload 1 /* s */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "!"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 4 /* path */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            areturn
        end local 4 // java.lang.String path
        end local 3 // int i
        end local 2 // java.io.File f
        end local 1 // java.lang.String s
        end local 0 // org.aspectj.weaver.ResolvedType aspect
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    9     0  aspect  Lorg/aspectj/weaver/ResolvedType;
            1    9     1       s  Ljava/lang/String;
            2    9     2       f  Ljava/io/File;
            3    9     3       i  I
            4    9     4    path  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      aspect  

  private static void createHierarchy(org.aspectj.asm.AsmManager, org.aspectj.weaver.ResolvedTypeMunger, org.aspectj.weaver.ResolvedType);
    descriptor: (Lorg/aspectj/asm/AsmManager;Lorg/aspectj/weaver/ResolvedTypeMunger;Lorg/aspectj/weaver/ResolvedType;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=9, locals=13, args_size=3
        start local 0 // org.aspectj.asm.AsmManager model
        start local 1 // org.aspectj.weaver.ResolvedTypeMunger typeTransformer
        start local 2 // org.aspectj.weaver.ResolvedType aspect
         0: .line 379
            aload 0 /* model */
            invokevirtual org.aspectj.asm.AsmManager.getHierarchy:()Lorg/aspectj/asm/IHierarchy;
            aload 1 /* typeTransformer */
            invokevirtual org.aspectj.weaver.ResolvedTypeMunger.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            invokeinterface org.aspectj.asm.IHierarchy.findElementForSourceLine:(Lorg/aspectj/bridge/ISourceLocation;)Lorg/aspectj/asm/IProgramElement;
            astore 3 /* filenode */
        start local 3 // org.aspectj.asm.IProgramElement filenode
         1: .line 380
            aload 3 /* filenode */
            ifnonnull 5
         2: .line 381
            aload 1 /* typeTransformer */
            invokevirtual org.aspectj.weaver.ResolvedTypeMunger.getKind:()Lorg/aspectj/weaver/ResolvedTypeMunger$Kind;
            getstatic org.aspectj.weaver.ResolvedTypeMunger.MethodDelegate2:Lorg/aspectj/weaver/ResolvedTypeMunger$Kind;
            if_acmpeq 4
         3: .line 382
            aload 1 /* typeTransformer */
            invokevirtual org.aspectj.weaver.ResolvedTypeMunger.getKind:()Lorg/aspectj/weaver/ResolvedTypeMunger$Kind;
            getstatic org.aspectj.weaver.ResolvedTypeMunger.FieldHost:Lorg/aspectj/weaver/ResolvedTypeMunger$Kind;
            if_acmpne 5
         4: .line 384
      StackMap locals: org.aspectj.asm.IProgramElement
      StackMap stack:
            return
         5: .line 394
      StackMap locals:
      StackMap stack:
            aload 3 /* filenode */
            invokeinterface org.aspectj.asm.IProgramElement.getKind:()Lorg/aspectj/asm/IProgramElement$Kind;
            getstatic org.aspectj.asm.IProgramElement$Kind.FILE_JAVA:Lorg/aspectj/asm/IProgramElement$Kind;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifne 7
         6: .line 395
            return
         7: .line 399
      StackMap locals:
      StackMap stack:
            aload 2 /* aspect */
            aload 2 /* aspect */
            invokevirtual org.aspectj.weaver.ResolvedType.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            invokestatic org.aspectj.weaver.model.AsmRelationshipProvider.getBinarySourceLocation:(Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/bridge/ISourceLocation;)Lorg/aspectj/bridge/ISourceLocation;
            astore 4 /* binLocation */
        start local 4 // org.aspectj.bridge.ISourceLocation binLocation
         8: .line 400
            aload 2 /* aspect */
            invokestatic org.aspectj.weaver.model.AsmRelationshipProvider.getBinaryFile:(Lorg/aspectj/weaver/ResolvedType;)Ljava/io/File;
            invokevirtual java.io.File.getName:()Ljava/lang/String;
            astore 5 /* f */
        start local 5 // java.lang.String f
         9: .line 401
            new org.aspectj.asm.internal.ProgramElement
            dup
            aload 0 /* model */
            aload 5 /* f */
            getstatic org.aspectj.asm.IProgramElement$Kind.FILE:Lorg/aspectj/asm/IProgramElement$Kind;
            aload 4 /* binLocation */
            iconst_0
            aconst_null
            aconst_null
            invokespecial org.aspectj.asm.internal.ProgramElement.<init>:(Lorg/aspectj/asm/AsmManager;Ljava/lang/String;Lorg/aspectj/asm/IProgramElement$Kind;Lorg/aspectj/bridge/ISourceLocation;ILjava/lang/String;Ljava/util/List;)V
            astore 6 /* classFileNode */
        start local 6 // org.aspectj.asm.IProgramElement classFileNode
        10: .line 404
            aload 0 /* model */
            invokevirtual org.aspectj.asm.AsmManager.getHierarchy:()Lorg/aspectj/asm/IHierarchy;
            invokeinterface org.aspectj.asm.IHierarchy.getRoot:()Lorg/aspectj/asm/IProgramElement;
            astore 7 /* root */
        start local 7 // org.aspectj.asm.IProgramElement root
        11: .line 405
            aload 0 /* model */
            invokevirtual org.aspectj.asm.AsmManager.getHierarchy:()Lorg/aspectj/asm/IHierarchy;
            aload 7 /* root */
            getstatic org.aspectj.asm.IProgramElement$Kind.SOURCE_FOLDER:Lorg/aspectj/asm/IProgramElement$Kind;
            ldc "binaries"
            invokeinterface org.aspectj.asm.IHierarchy.findElementForLabel:(Lorg/aspectj/asm/IProgramElement;Lorg/aspectj/asm/IProgramElement$Kind;Ljava/lang/String;)Lorg/aspectj/asm/IProgramElement;
            astore 8 /* binaries */
        start local 8 // org.aspectj.asm.IProgramElement binaries
        12: .line 406
            aload 8 /* binaries */
            ifnonnull 15
        13: .line 407
            new org.aspectj.asm.internal.ProgramElement
            dup
            aload 0 /* model */
            ldc "binaries"
            getstatic org.aspectj.asm.IProgramElement$Kind.SOURCE_FOLDER:Lorg/aspectj/asm/IProgramElement$Kind;
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            invokespecial org.aspectj.asm.internal.ProgramElement.<init>:(Lorg/aspectj/asm/AsmManager;Ljava/lang/String;Lorg/aspectj/asm/IProgramElement$Kind;Ljava/util/List;)V
            astore 8 /* binaries */
        14: .line 408
            aload 7 /* root */
            aload 8 /* binaries */
            invokeinterface org.aspectj.asm.IProgramElement.addChild:(Lorg/aspectj/asm/IProgramElement;)V
        15: .line 411
      StackMap locals: org.aspectj.asm.AsmManager org.aspectj.weaver.ResolvedTypeMunger org.aspectj.weaver.ResolvedType org.aspectj.asm.IProgramElement org.aspectj.bridge.ISourceLocation java.lang.String org.aspectj.asm.IProgramElement org.aspectj.asm.IProgramElement org.aspectj.asm.IProgramElement
      StackMap stack:
            aload 2 /* aspect */
            invokevirtual org.aspectj.weaver.ResolvedType.getPackageName:()Ljava/lang/String;
            ifnonnull 16
            ldc ""
            goto 17
      StackMap locals:
      StackMap stack:
        16: aload 2 /* aspect */
            invokevirtual org.aspectj.weaver.ResolvedType.getPackageName:()Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
        17: astore 9 /* packagename */
        start local 9 // java.lang.String packagename
        18: .line 413
            aload 0 /* model */
            invokevirtual org.aspectj.asm.AsmManager.getHierarchy:()Lorg/aspectj/asm/IHierarchy;
            aload 8 /* binaries */
            getstatic org.aspectj.asm.IProgramElement$Kind.PACKAGE:Lorg/aspectj/asm/IProgramElement$Kind;
            aload 9 /* packagename */
            invokeinterface org.aspectj.asm.IHierarchy.findElementForLabel:(Lorg/aspectj/asm/IProgramElement;Lorg/aspectj/asm/IProgramElement$Kind;Ljava/lang/String;)Lorg/aspectj/asm/IProgramElement;
            astore 10 /* pkgNode */
        start local 10 // org.aspectj.asm.IProgramElement pkgNode
        19: .line 415
            aload 10 /* pkgNode */
            ifnonnull 24
        20: .line 416
            new org.aspectj.asm.internal.ProgramElement
            dup
            aload 0 /* model */
            aload 9 /* packagename */
            getstatic org.aspectj.asm.IProgramElement$Kind.PACKAGE:Lorg/aspectj/asm/IProgramElement$Kind;
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            invokespecial org.aspectj.asm.internal.ProgramElement.<init>:(Lorg/aspectj/asm/AsmManager;Ljava/lang/String;Lorg/aspectj/asm/IProgramElement$Kind;Ljava/util/List;)V
            astore 10 /* pkgNode */
        21: .line 417
            aload 8 /* binaries */
            aload 10 /* pkgNode */
            invokeinterface org.aspectj.asm.IProgramElement.addChild:(Lorg/aspectj/asm/IProgramElement;)V
        22: .line 418
            aload 10 /* pkgNode */
            aload 6 /* classFileNode */
            invokeinterface org.aspectj.asm.IProgramElement.addChild:(Lorg/aspectj/asm/IProgramElement;)V
        23: .line 419
            goto 31
        24: .line 423
      StackMap locals: java.lang.String org.aspectj.asm.IProgramElement
      StackMap stack:
            aload 10 /* pkgNode */
            aload 6 /* classFileNode */
            invokeinterface org.aspectj.asm.IProgramElement.addChild:(Lorg/aspectj/asm/IProgramElement;)V
        25: .line 424
            aload 10 /* pkgNode */
            invokeinterface org.aspectj.asm.IProgramElement.getChildren:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 12
            goto 30
      StackMap locals: org.aspectj.asm.AsmManager org.aspectj.weaver.ResolvedTypeMunger org.aspectj.weaver.ResolvedType org.aspectj.asm.IProgramElement org.aspectj.bridge.ISourceLocation java.lang.String org.aspectj.asm.IProgramElement org.aspectj.asm.IProgramElement org.aspectj.asm.IProgramElement java.lang.String org.aspectj.asm.IProgramElement top java.util.Iterator
      StackMap stack:
        26: aload 12
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.aspectj.asm.IProgramElement
            astore 11 /* element */
        start local 11 // org.aspectj.asm.IProgramElement element
        27: .line 425
            aload 11 /* element */
            aload 6 /* classFileNode */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifne 30
            aload 11 /* element */
            invokeinterface org.aspectj.asm.IProgramElement.getHandleIdentifier:()Ljava/lang/String;
            aload 6 /* classFileNode */
            invokeinterface org.aspectj.asm.IProgramElement.getHandleIdentifier:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 30
        28: .line 428
            aload 10 /* pkgNode */
            aload 6 /* classFileNode */
            invokeinterface org.aspectj.asm.IProgramElement.removeChild:(Lorg/aspectj/asm/IProgramElement;)Z
            pop
        29: .line 429
            return
        end local 11 // org.aspectj.asm.IProgramElement element
        30: .line 424
      StackMap locals:
      StackMap stack:
            aload 12
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 26
        31: .line 458
      StackMap locals: org.aspectj.asm.AsmManager org.aspectj.weaver.ResolvedTypeMunger org.aspectj.weaver.ResolvedType org.aspectj.asm.IProgramElement org.aspectj.bridge.ISourceLocation java.lang.String org.aspectj.asm.IProgramElement org.aspectj.asm.IProgramElement org.aspectj.asm.IProgramElement java.lang.String org.aspectj.asm.IProgramElement
      StackMap stack:
            new org.aspectj.asm.internal.ProgramElement
            dup
            aload 0 /* model */
            aload 2 /* aspect */
            invokevirtual org.aspectj.weaver.ResolvedType.getSimpleName:()Ljava/lang/String;
            getstatic org.aspectj.asm.IProgramElement$Kind.ASPECT:Lorg/aspectj/asm/IProgramElement$Kind;
        32: .line 459
            aload 2 /* aspect */
            aload 2 /* aspect */
            invokevirtual org.aspectj.weaver.ResolvedType.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            invokestatic org.aspectj.weaver.model.AsmRelationshipProvider.getBinarySourceLocation:(Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/bridge/ISourceLocation;)Lorg/aspectj/bridge/ISourceLocation;
            aload 2 /* aspect */
            invokevirtual org.aspectj.weaver.ResolvedType.getModifiers:()I
            aconst_null
            aconst_null
        33: .line 458
            invokespecial org.aspectj.asm.internal.ProgramElement.<init>:(Lorg/aspectj/asm/AsmManager;Ljava/lang/String;Lorg/aspectj/asm/IProgramElement$Kind;Lorg/aspectj/bridge/ISourceLocation;ILjava/lang/String;Ljava/util/List;)V
            astore 11 /* aspectNode */
        start local 11 // org.aspectj.asm.IProgramElement aspectNode
        34: .line 460
            aload 6 /* classFileNode */
            aload 11 /* aspectNode */
            invokeinterface org.aspectj.asm.IProgramElement.addChild:(Lorg/aspectj/asm/IProgramElement;)V
        35: .line 462
            aload 0 /* model */
            aload 2 /* aspect */
            aload 11 /* aspectNode */
            aload 2 /* aspect */
            invokevirtual org.aspectj.weaver.ResolvedType.getDeclaredPointcuts:()[Lorg/aspectj/weaver/ResolvedMember;
            invokestatic org.aspectj.weaver.model.AsmRelationshipProvider.addChildNodes:(Lorg/aspectj/asm/AsmManager;Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/asm/IProgramElement;[Lorg/aspectj/weaver/ResolvedMember;)V
        36: .line 464
            aload 0 /* model */
            aload 2 /* aspect */
            aload 11 /* aspectNode */
            aload 2 /* aspect */
            invokevirtual org.aspectj.weaver.ResolvedType.getDeclaredAdvice:()Ljava/util/List;
            invokestatic org.aspectj.weaver.model.AsmRelationshipProvider.addChildNodes:(Lorg/aspectj/asm/AsmManager;Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/asm/IProgramElement;Ljava/util/Collection;)V
        37: .line 465
            aload 0 /* model */
            aload 2 /* aspect */
            aload 11 /* aspectNode */
            aload 2 /* aspect */
            invokevirtual org.aspectj.weaver.ResolvedType.getDeclares:()Ljava/util/Collection;
            invokestatic org.aspectj.weaver.model.AsmRelationshipProvider.addChildNodes:(Lorg/aspectj/asm/AsmManager;Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/asm/IProgramElement;Ljava/util/Collection;)V
        38: .line 466
            aload 0 /* model */
            aload 2 /* aspect */
            aload 11 /* aspectNode */
            aload 2 /* aspect */
            invokevirtual org.aspectj.weaver.ResolvedType.getTypeMungers:()Ljava/util/Collection;
            invokestatic org.aspectj.weaver.model.AsmRelationshipProvider.addChildNodes:(Lorg/aspectj/asm/AsmManager;Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/asm/IProgramElement;Ljava/util/Collection;)V
        39: .line 467
            return
        end local 11 // org.aspectj.asm.IProgramElement aspectNode
        end local 10 // org.aspectj.asm.IProgramElement pkgNode
        end local 9 // java.lang.String packagename
        end local 8 // org.aspectj.asm.IProgramElement binaries
        end local 7 // org.aspectj.asm.IProgramElement root
        end local 6 // org.aspectj.asm.IProgramElement classFileNode
        end local 5 // java.lang.String f
        end local 4 // org.aspectj.bridge.ISourceLocation binLocation
        end local 3 // org.aspectj.asm.IProgramElement filenode
        end local 2 // org.aspectj.weaver.ResolvedType aspect
        end local 1 // org.aspectj.weaver.ResolvedTypeMunger typeTransformer
        end local 0 // org.aspectj.asm.AsmManager model
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   40     0            model  Lorg/aspectj/asm/AsmManager;
            0   40     1  typeTransformer  Lorg/aspectj/weaver/ResolvedTypeMunger;
            0   40     2           aspect  Lorg/aspectj/weaver/ResolvedType;
            1   40     3         filenode  Lorg/aspectj/asm/IProgramElement;
            8   40     4      binLocation  Lorg/aspectj/bridge/ISourceLocation;
            9   40     5                f  Ljava/lang/String;
           10   40     6    classFileNode  Lorg/aspectj/asm/IProgramElement;
           11   40     7             root  Lorg/aspectj/asm/IProgramElement;
           12   40     8         binaries  Lorg/aspectj/asm/IProgramElement;
           18   40     9      packagename  Ljava/lang/String;
           19   40    10          pkgNode  Lorg/aspectj/asm/IProgramElement;
           27   30    11          element  Lorg/aspectj/asm/IProgramElement;
           34   40    11       aspectNode  Lorg/aspectj/asm/IProgramElement;
    MethodParameters:
                 Name  Flags
      model            
      typeTransformer  
      aspect           

  public static void addDeclareAnnotationRelationship(org.aspectj.asm.AsmManager, org.aspectj.bridge.ISourceLocation, org.aspectj.bridge.ISourceLocation, boolean);
    descriptor: (Lorg/aspectj/asm/AsmManager;Lorg/aspectj/bridge/ISourceLocation;Lorg/aspectj/bridge/ISourceLocation;Z)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=11, args_size=4
        start local 0 // org.aspectj.asm.AsmManager model
        start local 1 // org.aspectj.bridge.ISourceLocation declareAnnotationLocation
        start local 2 // org.aspectj.bridge.ISourceLocation annotatedLocation
        start local 3 // boolean isRemove
         0: .line 475
            aload 0 /* model */
            ifnonnull 2
         1: .line 476
            return
         2: .line 479
      StackMap locals:
      StackMap stack:
            aload 0 /* model */
            invokevirtual org.aspectj.asm.AsmManager.getHierarchy:()Lorg/aspectj/asm/IHierarchy;
            aload 1 /* declareAnnotationLocation */
            invokeinterface org.aspectj.asm.IHierarchy.findElementForSourceLine:(Lorg/aspectj/bridge/ISourceLocation;)Lorg/aspectj/asm/IProgramElement;
            astore 4 /* sourceNode */
        start local 4 // org.aspectj.asm.IProgramElement sourceNode
         3: .line 480
            aload 4 /* sourceNode */
            invokeinterface org.aspectj.asm.IProgramElement.getHandleIdentifier:()Ljava/lang/String;
            astore 5 /* sourceHandle */
        start local 5 // java.lang.String sourceHandle
         4: .line 481
            aload 5 /* sourceHandle */
            ifnonnull 6
         5: .line 482
            return
         6: .line 485
      StackMap locals: org.aspectj.asm.IProgramElement java.lang.String
      StackMap stack:
            aload 0 /* model */
            invokevirtual org.aspectj.asm.AsmManager.getHierarchy:()Lorg/aspectj/asm/IHierarchy;
            aload 2 /* annotatedLocation */
            invokeinterface org.aspectj.asm.IHierarchy.findElementForSourceLine:(Lorg/aspectj/bridge/ISourceLocation;)Lorg/aspectj/asm/IProgramElement;
            astore 6 /* targetNode */
        start local 6 // org.aspectj.asm.IProgramElement targetNode
         7: .line 486
            aload 6 /* targetNode */
            invokeinterface org.aspectj.asm.IProgramElement.getHandleIdentifier:()Ljava/lang/String;
            astore 7 /* targetHandle */
        start local 7 // java.lang.String targetHandle
         8: .line 487
            aload 7 /* targetHandle */
            ifnonnull 10
         9: .line 488
            return
        10: .line 491
      StackMap locals: org.aspectj.asm.IProgramElement java.lang.String
      StackMap stack:
            aload 0 /* model */
            invokevirtual org.aspectj.asm.AsmManager.getRelationshipMap:()Lorg/aspectj/asm/IRelationshipMap;
            astore 8 /* mapper */
        start local 8 // org.aspectj.asm.IRelationshipMap mapper
        11: .line 504
            aload 8 /* mapper */
            aload 5 /* sourceHandle */
            getstatic org.aspectj.asm.IRelationship$Kind.DECLARE_INTER_TYPE:Lorg/aspectj/asm/IRelationship$Kind;
            ldc "annotates"
            iconst_0
            iconst_1
            invokeinterface org.aspectj.asm.IRelationshipMap.get:(Ljava/lang/String;Lorg/aspectj/asm/IRelationship$Kind;Ljava/lang/String;ZZ)Lorg/aspectj/asm/IRelationship;
            astore 9 /* foreward */
        start local 9 // org.aspectj.asm.IRelationship foreward
        12: .line 505
            aload 9 /* foreward */
            aload 7 /* targetHandle */
            invokeinterface org.aspectj.asm.IRelationship.addTarget:(Ljava/lang/String;)V
        13: .line 507
            aload 8 /* mapper */
            aload 7 /* targetHandle */
            getstatic org.aspectj.asm.IRelationship$Kind.DECLARE_INTER_TYPE:Lorg/aspectj/asm/IRelationship$Kind;
            ldc "annotated by"
            iconst_0
            iconst_1
            invokeinterface org.aspectj.asm.IRelationshipMap.get:(Ljava/lang/String;Lorg/aspectj/asm/IRelationship$Kind;Ljava/lang/String;ZZ)Lorg/aspectj/asm/IRelationship;
            astore 10 /* back */
        start local 10 // org.aspectj.asm.IRelationship back
        14: .line 508
            aload 10 /* back */
            aload 5 /* sourceHandle */
            invokeinterface org.aspectj.asm.IRelationship.addTarget:(Ljava/lang/String;)V
        15: .line 509
            aload 4 /* sourceNode */
            invokeinterface org.aspectj.asm.IProgramElement.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            ifnull 17
        16: .line 510
            aload 0 /* model */
            aload 4 /* sourceNode */
            invokeinterface org.aspectj.asm.IProgramElement.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            invokeinterface org.aspectj.bridge.ISourceLocation.getSourceFile:()Ljava/io/File;
            invokevirtual org.aspectj.asm.AsmManager.addAspectInEffectThisBuild:(Ljava/io/File;)V
        17: .line 513
      StackMap locals: org.aspectj.asm.IRelationshipMap org.aspectj.asm.IRelationship org.aspectj.asm.IRelationship
      StackMap stack:
            return
        end local 10 // org.aspectj.asm.IRelationship back
        end local 9 // org.aspectj.asm.IRelationship foreward
        end local 8 // org.aspectj.asm.IRelationshipMap mapper
        end local 7 // java.lang.String targetHandle
        end local 6 // org.aspectj.asm.IProgramElement targetNode
        end local 5 // java.lang.String sourceHandle
        end local 4 // org.aspectj.asm.IProgramElement sourceNode
        end local 3 // boolean isRemove
        end local 2 // org.aspectj.bridge.ISourceLocation annotatedLocation
        end local 1 // org.aspectj.bridge.ISourceLocation declareAnnotationLocation
        end local 0 // org.aspectj.asm.AsmManager model
      LocalVariableTable:
        Start  End  Slot                       Name  Signature
            0   18     0                      model  Lorg/aspectj/asm/AsmManager;
            0   18     1  declareAnnotationLocation  Lorg/aspectj/bridge/ISourceLocation;
            0   18     2          annotatedLocation  Lorg/aspectj/bridge/ISourceLocation;
            0   18     3                   isRemove  Z
            3   18     4                 sourceNode  Lorg/aspectj/asm/IProgramElement;
            4   18     5               sourceHandle  Ljava/lang/String;
            7   18     6                 targetNode  Lorg/aspectj/asm/IProgramElement;
            8   18     7               targetHandle  Ljava/lang/String;
           11   18     8                     mapper  Lorg/aspectj/asm/IRelationshipMap;
           12   18     9                   foreward  Lorg/aspectj/asm/IRelationship;
           14   18    10                       back  Lorg/aspectj/asm/IRelationship;
    MethodParameters:
                           Name  Flags
      model                      
      declareAnnotationLocation  
      annotatedLocation          
      isRemove                   

  public static void createHierarchyForBinaryAspect(org.aspectj.asm.AsmManager, org.aspectj.weaver.ShadowMunger);
    descriptor: (Lorg/aspectj/asm/AsmManager;Lorg/aspectj/weaver/ShadowMunger;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=9, locals=11, args_size=2
        start local 0 // org.aspectj.asm.AsmManager asm
        start local 1 // org.aspectj.weaver.ShadowMunger munger
         0: .line 519
            aload 1 /* munger */
            invokevirtual org.aspectj.weaver.ShadowMunger.isBinary:()Z
            ifne 2
         1: .line 520
            return
         2: .line 523
      StackMap locals:
      StackMap stack:
            aload 0 /* asm */
            invokevirtual org.aspectj.asm.AsmManager.getHierarchy:()Lorg/aspectj/asm/IHierarchy;
            aload 1 /* munger */
            invokevirtual org.aspectj.weaver.ShadowMunger.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            invokeinterface org.aspectj.asm.IHierarchy.findElementForSourceLine:(Lorg/aspectj/bridge/ISourceLocation;)Lorg/aspectj/asm/IProgramElement;
            astore 2 /* sourceFileNode */
        start local 2 // org.aspectj.asm.IProgramElement sourceFileNode
         3: .line 528
            aload 2 /* sourceFileNode */
            invokeinterface org.aspectj.asm.IProgramElement.getKind:()Lorg/aspectj/asm/IProgramElement$Kind;
            getstatic org.aspectj.asm.IProgramElement$Kind.FILE_JAVA:Lorg/aspectj/asm/IProgramElement$Kind;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifne 5
         4: .line 529
            return
         5: .line 532
      StackMap locals: org.aspectj.asm.IProgramElement
      StackMap stack:
            aload 1 /* munger */
            invokevirtual org.aspectj.weaver.ShadowMunger.getDeclaringType:()Lorg/aspectj/weaver/ResolvedType;
            astore 3 /* aspect */
        start local 3 // org.aspectj.weaver.ResolvedType aspect
         6: .line 535
            new org.aspectj.asm.internal.ProgramElement
            dup
            aload 0 /* asm */
            aload 2 /* sourceFileNode */
            invokeinterface org.aspectj.asm.IProgramElement.getName:()Ljava/lang/String;
            getstatic org.aspectj.asm.IProgramElement$Kind.FILE:Lorg/aspectj/asm/IProgramElement$Kind;
         7: .line 536
            aload 1 /* munger */
            aload 3 /* aspect */
            invokevirtual org.aspectj.weaver.ResolvedType.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            invokevirtual org.aspectj.weaver.ShadowMunger.getBinarySourceLocation:(Lorg/aspectj/bridge/ISourceLocation;)Lorg/aspectj/bridge/ISourceLocation;
            iconst_0
            aconst_null
            aconst_null
         8: .line 535
            invokespecial org.aspectj.asm.internal.ProgramElement.<init>:(Lorg/aspectj/asm/AsmManager;Ljava/lang/String;Lorg/aspectj/asm/IProgramElement$Kind;Lorg/aspectj/bridge/ISourceLocation;ILjava/lang/String;Ljava/util/List;)V
            astore 4 /* classFileNode */
        start local 4 // org.aspectj.asm.IProgramElement classFileNode
         9: .line 539
            aload 0 /* asm */
            invokevirtual org.aspectj.asm.AsmManager.getHierarchy:()Lorg/aspectj/asm/IHierarchy;
            invokeinterface org.aspectj.asm.IHierarchy.getRoot:()Lorg/aspectj/asm/IProgramElement;
            astore 5 /* root */
        start local 5 // org.aspectj.asm.IProgramElement root
        10: .line 540
            aload 0 /* asm */
            invokevirtual org.aspectj.asm.AsmManager.getHierarchy:()Lorg/aspectj/asm/IHierarchy;
            aload 5 /* root */
            getstatic org.aspectj.asm.IProgramElement$Kind.SOURCE_FOLDER:Lorg/aspectj/asm/IProgramElement$Kind;
            ldc "binaries"
            invokeinterface org.aspectj.asm.IHierarchy.findElementForLabel:(Lorg/aspectj/asm/IProgramElement;Lorg/aspectj/asm/IProgramElement$Kind;Ljava/lang/String;)Lorg/aspectj/asm/IProgramElement;
            astore 6 /* binaries */
        start local 6 // org.aspectj.asm.IProgramElement binaries
        11: .line 541
            aload 6 /* binaries */
            ifnonnull 14
        12: .line 542
            new org.aspectj.asm.internal.ProgramElement
            dup
            aload 0 /* asm */
            ldc "binaries"
            getstatic org.aspectj.asm.IProgramElement$Kind.SOURCE_FOLDER:Lorg/aspectj/asm/IProgramElement$Kind;
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            invokespecial org.aspectj.asm.internal.ProgramElement.<init>:(Lorg/aspectj/asm/AsmManager;Ljava/lang/String;Lorg/aspectj/asm/IProgramElement$Kind;Ljava/util/List;)V
            astore 6 /* binaries */
        13: .line 543
            aload 5 /* root */
            aload 6 /* binaries */
            invokeinterface org.aspectj.asm.IProgramElement.addChild:(Lorg/aspectj/asm/IProgramElement;)V
        14: .line 546
      StackMap locals: org.aspectj.asm.AsmManager org.aspectj.weaver.ShadowMunger org.aspectj.asm.IProgramElement org.aspectj.weaver.ResolvedType org.aspectj.asm.IProgramElement org.aspectj.asm.IProgramElement org.aspectj.asm.IProgramElement
      StackMap stack:
            aload 3 /* aspect */
            invokevirtual org.aspectj.weaver.ResolvedType.getPackageName:()Ljava/lang/String;
            ifnonnull 15
            ldc ""
            goto 16
      StackMap locals:
      StackMap stack:
        15: aload 3 /* aspect */
            invokevirtual org.aspectj.weaver.ResolvedType.getPackageName:()Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
        16: astore 7 /* packagename */
        start local 7 // java.lang.String packagename
        17: .line 548
            aload 0 /* asm */
            invokevirtual org.aspectj.asm.AsmManager.getHierarchy:()Lorg/aspectj/asm/IHierarchy;
            aload 6 /* binaries */
            getstatic org.aspectj.asm.IProgramElement$Kind.PACKAGE:Lorg/aspectj/asm/IProgramElement$Kind;
            aload 7 /* packagename */
            invokeinterface org.aspectj.asm.IHierarchy.findElementForLabel:(Lorg/aspectj/asm/IProgramElement;Lorg/aspectj/asm/IProgramElement$Kind;Ljava/lang/String;)Lorg/aspectj/asm/IProgramElement;
            astore 8 /* pkgNode */
        start local 8 // org.aspectj.asm.IProgramElement pkgNode
        18: .line 550
            aload 8 /* pkgNode */
            ifnonnull 23
        19: .line 551
            new org.aspectj.asm.internal.ProgramElement
            dup
            aload 0 /* asm */
            aload 7 /* packagename */
            getstatic org.aspectj.asm.IProgramElement$Kind.PACKAGE:Lorg/aspectj/asm/IProgramElement$Kind;
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            invokespecial org.aspectj.asm.internal.ProgramElement.<init>:(Lorg/aspectj/asm/AsmManager;Ljava/lang/String;Lorg/aspectj/asm/IProgramElement$Kind;Ljava/util/List;)V
            astore 8 /* pkgNode */
        20: .line 552
            aload 6 /* binaries */
            aload 8 /* pkgNode */
            invokeinterface org.aspectj.asm.IProgramElement.addChild:(Lorg/aspectj/asm/IProgramElement;)V
        21: .line 553
            aload 8 /* pkgNode */
            aload 4 /* classFileNode */
            invokeinterface org.aspectj.asm.IProgramElement.addChild:(Lorg/aspectj/asm/IProgramElement;)V
        22: .line 554
            goto 30
        23: .line 558
      StackMap locals: java.lang.String org.aspectj.asm.IProgramElement
      StackMap stack:
            aload 8 /* pkgNode */
            aload 4 /* classFileNode */
            invokeinterface org.aspectj.asm.IProgramElement.addChild:(Lorg/aspectj/asm/IProgramElement;)V
        24: .line 559
            aload 8 /* pkgNode */
            invokeinterface org.aspectj.asm.IProgramElement.getChildren:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 10
            goto 29
      StackMap locals: org.aspectj.asm.AsmManager org.aspectj.weaver.ShadowMunger org.aspectj.asm.IProgramElement org.aspectj.weaver.ResolvedType org.aspectj.asm.IProgramElement org.aspectj.asm.IProgramElement org.aspectj.asm.IProgramElement java.lang.String org.aspectj.asm.IProgramElement top java.util.Iterator
      StackMap stack:
        25: aload 10
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.aspectj.asm.IProgramElement
            astore 9 /* element */
        start local 9 // org.aspectj.asm.IProgramElement element
        26: .line 560
            aload 9 /* element */
            aload 4 /* classFileNode */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifne 29
            aload 9 /* element */
            invokeinterface org.aspectj.asm.IProgramElement.getHandleIdentifier:()Ljava/lang/String;
            aload 4 /* classFileNode */
            invokeinterface org.aspectj.asm.IProgramElement.getHandleIdentifier:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 29
        27: .line 563
            aload 8 /* pkgNode */
            aload 4 /* classFileNode */
            invokeinterface org.aspectj.asm.IProgramElement.removeChild:(Lorg/aspectj/asm/IProgramElement;)Z
            pop
        28: .line 564
            return
        end local 9 // org.aspectj.asm.IProgramElement element
        29: .line 559
      StackMap locals:
      StackMap stack:
            aload 10
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 25
        30: .line 593
      StackMap locals: org.aspectj.asm.AsmManager org.aspectj.weaver.ShadowMunger org.aspectj.asm.IProgramElement org.aspectj.weaver.ResolvedType org.aspectj.asm.IProgramElement org.aspectj.asm.IProgramElement org.aspectj.asm.IProgramElement java.lang.String org.aspectj.asm.IProgramElement
      StackMap stack:
            new org.aspectj.asm.internal.ProgramElement
            dup
            aload 0 /* asm */
            aload 3 /* aspect */
            invokevirtual org.aspectj.weaver.ResolvedType.getSimpleName:()Ljava/lang/String;
            getstatic org.aspectj.asm.IProgramElement$Kind.ASPECT:Lorg/aspectj/asm/IProgramElement$Kind;
        31: .line 594
            aload 1 /* munger */
            aload 3 /* aspect */
            invokevirtual org.aspectj.weaver.ResolvedType.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            invokevirtual org.aspectj.weaver.ShadowMunger.getBinarySourceLocation:(Lorg/aspectj/bridge/ISourceLocation;)Lorg/aspectj/bridge/ISourceLocation;
            aload 3 /* aspect */
            invokevirtual org.aspectj.weaver.ResolvedType.getModifiers:()I
            aconst_null
            aconst_null
        32: .line 593
            invokespecial org.aspectj.asm.internal.ProgramElement.<init>:(Lorg/aspectj/asm/AsmManager;Ljava/lang/String;Lorg/aspectj/asm/IProgramElement$Kind;Lorg/aspectj/bridge/ISourceLocation;ILjava/lang/String;Ljava/util/List;)V
            astore 9 /* aspectNode */
        start local 9 // org.aspectj.asm.IProgramElement aspectNode
        33: .line 595
            aload 4 /* classFileNode */
            aload 9 /* aspectNode */
            invokeinterface org.aspectj.asm.IProgramElement.addChild:(Lorg/aspectj/asm/IProgramElement;)V
        34: .line 597
            aload 3 /* aspect */
            invokestatic org.aspectj.weaver.model.AsmRelationshipProvider.getSourceFileName:(Lorg/aspectj/weaver/ResolvedType;)Ljava/lang/String;
            astore 10 /* sourcefilename */
        start local 10 // java.lang.String sourcefilename
        35: .line 598
            aload 0 /* asm */
            aload 10 /* sourcefilename */
            aload 3 /* aspect */
            aload 9 /* aspectNode */
            aload 3 /* aspect */
            invokevirtual org.aspectj.weaver.ResolvedType.getDeclaredPointcuts:()[Lorg/aspectj/weaver/ResolvedMember;
            invokestatic org.aspectj.weaver.model.AsmRelationshipProvider.addPointcuts:(Lorg/aspectj/asm/AsmManager;Ljava/lang/String;Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/asm/IProgramElement;[Lorg/aspectj/weaver/ResolvedMember;)V
        36: .line 599
            aload 0 /* asm */
            aload 3 /* aspect */
            aload 9 /* aspectNode */
            aload 3 /* aspect */
            invokevirtual org.aspectj.weaver.ResolvedType.getDeclaredAdvice:()Ljava/util/List;
            invokestatic org.aspectj.weaver.model.AsmRelationshipProvider.addChildNodes:(Lorg/aspectj/asm/AsmManager;Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/asm/IProgramElement;Ljava/util/Collection;)V
        37: .line 600
            aload 0 /* asm */
            aload 3 /* aspect */
            aload 9 /* aspectNode */
            aload 3 /* aspect */
            invokevirtual org.aspectj.weaver.ResolvedType.getDeclares:()Ljava/util/Collection;
            invokestatic org.aspectj.weaver.model.AsmRelationshipProvider.addChildNodes:(Lorg/aspectj/asm/AsmManager;Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/asm/IProgramElement;Ljava/util/Collection;)V
        38: .line 601
            aload 0 /* asm */
            aload 3 /* aspect */
            aload 9 /* aspectNode */
            aload 3 /* aspect */
            invokevirtual org.aspectj.weaver.ResolvedType.getTypeMungers:()Ljava/util/Collection;
            invokestatic org.aspectj.weaver.model.AsmRelationshipProvider.addChildNodes:(Lorg/aspectj/asm/AsmManager;Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/asm/IProgramElement;Ljava/util/Collection;)V
        39: .line 603
            return
        end local 10 // java.lang.String sourcefilename
        end local 9 // org.aspectj.asm.IProgramElement aspectNode
        end local 8 // org.aspectj.asm.IProgramElement pkgNode
        end local 7 // java.lang.String packagename
        end local 6 // org.aspectj.asm.IProgramElement binaries
        end local 5 // org.aspectj.asm.IProgramElement root
        end local 4 // org.aspectj.asm.IProgramElement classFileNode
        end local 3 // org.aspectj.weaver.ResolvedType aspect
        end local 2 // org.aspectj.asm.IProgramElement sourceFileNode
        end local 1 // org.aspectj.weaver.ShadowMunger munger
        end local 0 // org.aspectj.asm.AsmManager asm
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   40     0             asm  Lorg/aspectj/asm/AsmManager;
            0   40     1          munger  Lorg/aspectj/weaver/ShadowMunger;
            3   40     2  sourceFileNode  Lorg/aspectj/asm/IProgramElement;
            6   40     3          aspect  Lorg/aspectj/weaver/ResolvedType;
            9   40     4   classFileNode  Lorg/aspectj/asm/IProgramElement;
           10   40     5            root  Lorg/aspectj/asm/IProgramElement;
           11   40     6        binaries  Lorg/aspectj/asm/IProgramElement;
           17   40     7     packagename  Ljava/lang/String;
           18   40     8         pkgNode  Lorg/aspectj/asm/IProgramElement;
           26   29     9         element  Lorg/aspectj/asm/IProgramElement;
           33   40     9      aspectNode  Lorg/aspectj/asm/IProgramElement;
           35   40    10  sourcefilename  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      asm     
      munger  

  private static void addPointcuts(org.aspectj.asm.AsmManager, java.lang.String, org.aspectj.weaver.ResolvedType, org.aspectj.asm.IProgramElement, org.aspectj.weaver.ResolvedMember[]);
    descriptor: (Lorg/aspectj/asm/AsmManager;Ljava/lang/String;Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/asm/IProgramElement;[Lorg/aspectj/weaver/ResolvedMember;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=9, locals=12, args_size=5
        start local 0 // org.aspectj.asm.AsmManager model
        start local 1 // java.lang.String sourcefilename
        start local 2 // org.aspectj.weaver.ResolvedType aspect
        start local 3 // org.aspectj.asm.IProgramElement containingAspect
        start local 4 // org.aspectj.weaver.ResolvedMember[] pointcuts
         0: .line 607
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         1: goto 19
         2: .line 608
      StackMap locals: int
      StackMap stack:
            aload 4 /* pointcuts */
            iload 5 /* i */
            aaload
            astore 6 /* pointcut */
        start local 6 // org.aspectj.weaver.ResolvedMember pointcut
         3: .line 609
            aload 6 /* pointcut */
            instanceof org.aspectj.weaver.ResolvedPointcutDefinition
            ifeq 18
         4: .line 610
            aload 6 /* pointcut */
            checkcast org.aspectj.weaver.ResolvedPointcutDefinition
            astore 7 /* rpcd */
        start local 7 // org.aspectj.weaver.ResolvedPointcutDefinition rpcd
         5: .line 611
            aload 7 /* rpcd */
            invokevirtual org.aspectj.weaver.ResolvedPointcutDefinition.getPointcut:()Lorg/aspectj/weaver/patterns/Pointcut;
            astore 8 /* p */
        start local 8 // org.aspectj.weaver.patterns.Pointcut p
         6: .line 612
            aload 8 /* p */
            ifnonnull 7
            aconst_null
            goto 8
      StackMap locals: org.aspectj.weaver.ResolvedMember org.aspectj.weaver.ResolvedPointcutDefinition org.aspectj.weaver.patterns.Pointcut
      StackMap stack:
         7: aload 8 /* p */
            invokevirtual org.aspectj.weaver.patterns.Pointcut.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
      StackMap locals:
      StackMap stack: org.aspectj.bridge.ISourceLocation
         8: astore 9 /* sLoc */
        start local 9 // org.aspectj.bridge.ISourceLocation sLoc
         9: .line 613
            aload 9 /* sLoc */
            ifnonnull 11
        10: .line 614
            aload 7 /* rpcd */
            invokevirtual org.aspectj.weaver.ResolvedPointcutDefinition.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            astore 9 /* sLoc */
        11: .line 616
      StackMap locals: org.aspectj.bridge.ISourceLocation
      StackMap stack:
            aload 9 /* sLoc */
            ifnonnull 12
            aconst_null
            goto 13
      StackMap locals:
      StackMap stack:
        12: aload 1 /* sourcefilename */
            aload 2 /* aspect */
            aload 9 /* sLoc */
            invokestatic org.aspectj.weaver.model.AsmRelationshipProvider.createSourceLocation:(Ljava/lang/String;Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/bridge/ISourceLocation;)Lorg/aspectj/bridge/ISourceLocation;
      StackMap locals:
      StackMap stack: org.aspectj.bridge.ISourceLocation
        13: astore 10 /* pointcutLocation */
        start local 10 // org.aspectj.bridge.ISourceLocation pointcutLocation
        14: .line 617
            new org.aspectj.asm.internal.ProgramElement
            dup
            aload 0 /* model */
            aload 6 /* pointcut */
            invokeinterface org.aspectj.weaver.ResolvedMember.getName:()Ljava/lang/String;
            getstatic org.aspectj.asm.IProgramElement$Kind.POINTCUT:Lorg/aspectj/asm/IProgramElement$Kind;
        15: .line 618
            aload 10 /* pointcutLocation */
            aload 6 /* pointcut */
            invokeinterface org.aspectj.weaver.ResolvedMember.getModifiers:()I
            getstatic org.aspectj.weaver.model.AsmRelationshipProvider.NO_COMMENT:Ljava/lang/String;
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
        16: .line 617
            invokespecial org.aspectj.asm.internal.ProgramElement.<init>:(Lorg/aspectj/asm/AsmManager;Ljava/lang/String;Lorg/aspectj/asm/IProgramElement$Kind;Lorg/aspectj/bridge/ISourceLocation;ILjava/lang/String;Ljava/util/List;)V
            astore 11 /* pointcutElement */
        start local 11 // org.aspectj.asm.internal.ProgramElement pointcutElement
        17: .line 619
            aload 3 /* containingAspect */
            aload 11 /* pointcutElement */
            invokeinterface org.aspectj.asm.IProgramElement.addChild:(Lorg/aspectj/asm/IProgramElement;)V
        end local 11 // org.aspectj.asm.internal.ProgramElement pointcutElement
        end local 10 // org.aspectj.bridge.ISourceLocation pointcutLocation
        end local 9 // org.aspectj.bridge.ISourceLocation sLoc
        end local 8 // org.aspectj.weaver.patterns.Pointcut p
        end local 7 // org.aspectj.weaver.ResolvedPointcutDefinition rpcd
        end local 6 // org.aspectj.weaver.ResolvedMember pointcut
        18: .line 607
      StackMap locals: org.aspectj.asm.AsmManager java.lang.String org.aspectj.weaver.ResolvedType org.aspectj.asm.IProgramElement org.aspectj.weaver.ResolvedMember[] int
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        19: iload 5 /* i */
            aload 4 /* pointcuts */
            arraylength
            if_icmplt 2
        end local 5 // int i
        20: .line 622
            return
        end local 4 // org.aspectj.weaver.ResolvedMember[] pointcuts
        end local 3 // org.aspectj.asm.IProgramElement containingAspect
        end local 2 // org.aspectj.weaver.ResolvedType aspect
        end local 1 // java.lang.String sourcefilename
        end local 0 // org.aspectj.asm.AsmManager model
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   21     0             model  Lorg/aspectj/asm/AsmManager;
            0   21     1    sourcefilename  Ljava/lang/String;
            0   21     2            aspect  Lorg/aspectj/weaver/ResolvedType;
            0   21     3  containingAspect  Lorg/aspectj/asm/IProgramElement;
            0   21     4         pointcuts  [Lorg/aspectj/weaver/ResolvedMember;
            1   20     5                 i  I
            3   18     6          pointcut  Lorg/aspectj/weaver/ResolvedMember;
            5   18     7              rpcd  Lorg/aspectj/weaver/ResolvedPointcutDefinition;
            6   18     8                 p  Lorg/aspectj/weaver/patterns/Pointcut;
            9   18     9              sLoc  Lorg/aspectj/bridge/ISourceLocation;
           14   18    10  pointcutLocation  Lorg/aspectj/bridge/ISourceLocation;
           17   18    11   pointcutElement  Lorg/aspectj/asm/internal/ProgramElement;
    MethodParameters:
                  Name  Flags
      model             
      sourcefilename    
      aspect            
      containingAspect  
      pointcuts         

  private static void addChildNodes(org.aspectj.asm.AsmManager, org.aspectj.weaver.ResolvedType, org.aspectj.asm.IProgramElement, org.aspectj.weaver.ResolvedMember[]);
    descriptor: (Lorg/aspectj/asm/AsmManager;Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/asm/IProgramElement;[Lorg/aspectj/weaver/ResolvedMember;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=10, locals=9, args_size=4
        start local 0 // org.aspectj.asm.AsmManager asm
        start local 1 // org.aspectj.weaver.ResolvedType aspect
        start local 2 // org.aspectj.asm.IProgramElement parent
        start local 3 // org.aspectj.weaver.ResolvedMember[] children
         0: .line 627
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         1: goto 17
         2: .line 628
      StackMap locals: int
      StackMap stack:
            aload 3 /* children */
            iload 4 /* i */
            aaload
            astore 5 /* pcd */
        start local 5 // org.aspectj.weaver.ResolvedMember pcd
         3: .line 629
            aload 5 /* pcd */
            instanceof org.aspectj.weaver.ResolvedPointcutDefinition
            ifeq 16
         4: .line 630
            aload 5 /* pcd */
            checkcast org.aspectj.weaver.ResolvedPointcutDefinition
            astore 6 /* rpcd */
        start local 6 // org.aspectj.weaver.ResolvedPointcutDefinition rpcd
         5: .line 631
            aload 6 /* rpcd */
            invokevirtual org.aspectj.weaver.ResolvedPointcutDefinition.getPointcut:()Lorg/aspectj/weaver/patterns/Pointcut;
            astore 7 /* p */
        start local 7 // org.aspectj.weaver.patterns.Pointcut p
         6: .line 632
            aload 7 /* p */
            ifnonnull 7
            aconst_null
            goto 8
      StackMap locals: org.aspectj.weaver.ResolvedMember org.aspectj.weaver.ResolvedPointcutDefinition org.aspectj.weaver.patterns.Pointcut
      StackMap stack:
         7: aload 7 /* p */
            invokevirtual org.aspectj.weaver.patterns.Pointcut.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
      StackMap locals:
      StackMap stack: org.aspectj.bridge.ISourceLocation
         8: astore 8 /* sLoc */
        start local 8 // org.aspectj.bridge.ISourceLocation sLoc
         9: .line 633
            aload 8 /* sLoc */
            ifnonnull 11
        10: .line 634
            aload 6 /* rpcd */
            invokevirtual org.aspectj.weaver.ResolvedPointcutDefinition.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            astore 8 /* sLoc */
        11: .line 636
      StackMap locals: org.aspectj.bridge.ISourceLocation
      StackMap stack:
            aload 2 /* parent */
            new org.aspectj.asm.internal.ProgramElement
            dup
            aload 0 /* asm */
            aload 5 /* pcd */
            invokeinterface org.aspectj.weaver.ResolvedMember.getName:()Ljava/lang/String;
            getstatic org.aspectj.asm.IProgramElement$Kind.POINTCUT:Lorg/aspectj/asm/IProgramElement$Kind;
        12: .line 637
            aload 1 /* aspect */
            aload 8 /* sLoc */
        13: .line 636
            invokestatic org.aspectj.weaver.model.AsmRelationshipProvider.getBinarySourceLocation:(Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/bridge/ISourceLocation;)Lorg/aspectj/bridge/ISourceLocation;
        14: .line 637
            aload 5 /* pcd */
            invokeinterface org.aspectj.weaver.ResolvedMember.getModifiers:()I
            aconst_null
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            invokespecial org.aspectj.asm.internal.ProgramElement.<init>:(Lorg/aspectj/asm/AsmManager;Ljava/lang/String;Lorg/aspectj/asm/IProgramElement$Kind;Lorg/aspectj/bridge/ISourceLocation;ILjava/lang/String;Ljava/util/List;)V
        15: .line 636
            invokeinterface org.aspectj.asm.IProgramElement.addChild:(Lorg/aspectj/asm/IProgramElement;)V
        end local 8 // org.aspectj.bridge.ISourceLocation sLoc
        end local 7 // org.aspectj.weaver.patterns.Pointcut p
        end local 6 // org.aspectj.weaver.ResolvedPointcutDefinition rpcd
        end local 5 // org.aspectj.weaver.ResolvedMember pcd
        16: .line 627
      StackMap locals: org.aspectj.asm.AsmManager org.aspectj.weaver.ResolvedType org.aspectj.asm.IProgramElement org.aspectj.weaver.ResolvedMember[] int
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        17: iload 4 /* i */
            aload 3 /* children */
            arraylength
            if_icmplt 2
        end local 4 // int i
        18: .line 640
            return
        end local 3 // org.aspectj.weaver.ResolvedMember[] children
        end local 2 // org.aspectj.asm.IProgramElement parent
        end local 1 // org.aspectj.weaver.ResolvedType aspect
        end local 0 // org.aspectj.asm.AsmManager asm
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   19     0       asm  Lorg/aspectj/asm/AsmManager;
            0   19     1    aspect  Lorg/aspectj/weaver/ResolvedType;
            0   19     2    parent  Lorg/aspectj/asm/IProgramElement;
            0   19     3  children  [Lorg/aspectj/weaver/ResolvedMember;
            1   18     4         i  I
            3   16     5       pcd  Lorg/aspectj/weaver/ResolvedMember;
            5   16     6      rpcd  Lorg/aspectj/weaver/ResolvedPointcutDefinition;
            6   16     7         p  Lorg/aspectj/weaver/patterns/Pointcut;
            9   16     8      sLoc  Lorg/aspectj/bridge/ISourceLocation;
    MethodParameters:
          Name  Flags
      asm       
      aspect    
      parent    
      children  

  private static void addChildNodes(org.aspectj.asm.AsmManager, org.aspectj.weaver.ResolvedType, org.aspectj.asm.IProgramElement, java.util.Collection<?>);
    descriptor: (Lorg/aspectj/asm/AsmManager;Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/asm/IProgramElement;Ljava/util/Collection;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=10, args_size=4
        start local 0 // org.aspectj.asm.AsmManager asm
        start local 1 // org.aspectj.weaver.ResolvedType aspect
        start local 2 // org.aspectj.asm.IProgramElement parent
        start local 3 // java.util.Collection children
         0: .line 643
            iconst_1
            istore 4 /* deCtr */
        start local 4 // int deCtr
         1: .line 644
            iconst_1
            istore 5 /* dwCtr */
        start local 5 // int dwCtr
         2: .line 645
            aload 3 /* children */
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 7
            goto 24
      StackMap locals: org.aspectj.asm.AsmManager org.aspectj.weaver.ResolvedType org.aspectj.asm.IProgramElement java.util.Collection int int top java.util.Iterator
      StackMap stack:
         3: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 6 /* element */
        start local 6 // java.lang.Object element
         4: .line 646
            aload 6 /* element */
            instanceof org.aspectj.weaver.patterns.DeclareErrorOrWarning
            ifeq 13
         5: .line 647
            aload 6 /* element */
            checkcast org.aspectj.weaver.patterns.DeclareErrorOrWarning
            astore 8 /* decl */
        start local 8 // org.aspectj.weaver.patterns.DeclareErrorOrWarning decl
         6: .line 648
            iconst_0
            istore 9 /* counter */
        start local 9 // int counter
         7: .line 649
            aload 8 /* decl */
            invokevirtual org.aspectj.weaver.patterns.DeclareErrorOrWarning.isError:()Z
            ifeq 10
         8: .line 650
            iload 4 /* deCtr */
            iinc 4 /* deCtr */ 1
            istore 9 /* counter */
         9: .line 651
            goto 11
        10: .line 652
      StackMap locals: org.aspectj.asm.AsmManager org.aspectj.weaver.ResolvedType org.aspectj.asm.IProgramElement java.util.Collection int int java.lang.Object java.util.Iterator org.aspectj.weaver.patterns.DeclareErrorOrWarning int
      StackMap stack:
            iload 5 /* dwCtr */
            iinc 5 /* dwCtr */ 1
            istore 9 /* counter */
        11: .line 654
      StackMap locals:
      StackMap stack:
            aload 2 /* parent */
            aload 0 /* asm */
            aload 1 /* aspect */
            aload 8 /* decl */
            iload 9 /* counter */
            invokestatic org.aspectj.weaver.model.AsmRelationshipProvider.createDeclareErrorOrWarningChild:(Lorg/aspectj/asm/AsmManager;Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/weaver/patterns/DeclareErrorOrWarning;I)Lorg/aspectj/asm/IProgramElement;
            invokeinterface org.aspectj.asm.IProgramElement.addChild:(Lorg/aspectj/asm/IProgramElement;)V
        end local 9 // int counter
        end local 8 // org.aspectj.weaver.patterns.DeclareErrorOrWarning decl
        12: .line 655
            goto 24
      StackMap locals:
      StackMap stack:
        13: aload 6 /* element */
            instanceof org.aspectj.weaver.Advice
            ifeq 17
        14: .line 656
            aload 6 /* element */
            checkcast org.aspectj.weaver.Advice
            astore 8 /* advice */
        start local 8 // org.aspectj.weaver.Advice advice
        15: .line 657
            aload 2 /* parent */
            aload 0 /* asm */
            aload 8 /* advice */
            invokestatic org.aspectj.weaver.model.AsmRelationshipProvider.createAdviceChild:(Lorg/aspectj/asm/AsmManager;Lorg/aspectj/weaver/Advice;)Lorg/aspectj/asm/IProgramElement;
            invokeinterface org.aspectj.asm.IProgramElement.addChild:(Lorg/aspectj/asm/IProgramElement;)V
        end local 8 // org.aspectj.weaver.Advice advice
        16: .line 658
            goto 24
      StackMap locals:
      StackMap stack:
        17: aload 6 /* element */
            instanceof org.aspectj.weaver.patterns.DeclareParents
            ifeq 20
        18: .line 659
            aload 2 /* parent */
            aload 0 /* asm */
            aload 6 /* element */
            checkcast org.aspectj.weaver.patterns.DeclareParents
            invokestatic org.aspectj.weaver.model.AsmRelationshipProvider.createDeclareParentsChild:(Lorg/aspectj/asm/AsmManager;Lorg/aspectj/weaver/patterns/DeclareParents;)Lorg/aspectj/asm/IProgramElement;
            invokeinterface org.aspectj.asm.IProgramElement.addChild:(Lorg/aspectj/asm/IProgramElement;)V
        19: .line 660
            goto 24
      StackMap locals:
      StackMap stack:
        20: aload 6 /* element */
            instanceof org.aspectj.weaver.bcel.BcelTypeMunger
            ifeq 24
        21: .line 661
            aload 0 /* asm */
            aload 1 /* aspect */
            aload 6 /* element */
            checkcast org.aspectj.weaver.bcel.BcelTypeMunger
            invokestatic org.aspectj.weaver.model.AsmRelationshipProvider.createIntertypeDeclaredChild:(Lorg/aspectj/asm/AsmManager;Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/weaver/bcel/BcelTypeMunger;)Lorg/aspectj/asm/IProgramElement;
            astore 8 /* newChild */
        start local 8 // org.aspectj.asm.IProgramElement newChild
        22: .line 663
            aload 8 /* newChild */
            ifnull 24
        23: .line 664
            aload 2 /* parent */
            aload 8 /* newChild */
            invokeinterface org.aspectj.asm.IProgramElement.addChild:(Lorg/aspectj/asm/IProgramElement;)V
        end local 8 // org.aspectj.asm.IProgramElement newChild
        end local 6 // java.lang.Object element
        24: .line 645
      StackMap locals: org.aspectj.asm.AsmManager org.aspectj.weaver.ResolvedType org.aspectj.asm.IProgramElement java.util.Collection int int top java.util.Iterator
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
        25: .line 668
            return
        end local 5 // int dwCtr
        end local 4 // int deCtr
        end local 3 // java.util.Collection children
        end local 2 // org.aspectj.asm.IProgramElement parent
        end local 1 // org.aspectj.weaver.ResolvedType aspect
        end local 0 // org.aspectj.asm.AsmManager asm
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   26     0       asm  Lorg/aspectj/asm/AsmManager;
            0   26     1    aspect  Lorg/aspectj/weaver/ResolvedType;
            0   26     2    parent  Lorg/aspectj/asm/IProgramElement;
            0   26     3  children  Ljava/util/Collection<*>;
            1   26     4     deCtr  I
            2   26     5     dwCtr  I
            4   24     6   element  Ljava/lang/Object;
            6   12     8      decl  Lorg/aspectj/weaver/patterns/DeclareErrorOrWarning;
            7   12     9   counter  I
           15   16     8    advice  Lorg/aspectj/weaver/Advice;
           22   24     8  newChild  Lorg/aspectj/asm/IProgramElement;
    Signature: (Lorg/aspectj/asm/AsmManager;Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/asm/IProgramElement;Ljava/util/Collection<*>;)V
    MethodParameters:
          Name  Flags
      asm       
      aspect    
      parent    
      children  

  private static org.aspectj.asm.IProgramElement createDeclareErrorOrWarningChild(org.aspectj.asm.AsmManager, org.aspectj.weaver.ResolvedType, org.aspectj.weaver.patterns.DeclareErrorOrWarning, int);
    descriptor: (Lorg/aspectj/asm/AsmManager;Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/weaver/patterns/DeclareErrorOrWarning;I)Lorg/aspectj/asm/IProgramElement;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=9, locals=5, args_size=4
        start local 0 // org.aspectj.asm.AsmManager model
        start local 1 // org.aspectj.weaver.ResolvedType aspect
        start local 2 // org.aspectj.weaver.patterns.DeclareErrorOrWarning decl
        start local 3 // int count
         0: .line 688
            new org.aspectj.asm.internal.ProgramElement
            dup
            aload 0 /* model */
            aload 2 /* decl */
            invokevirtual org.aspectj.weaver.patterns.DeclareErrorOrWarning.getName:()Ljava/lang/String;
            aload 2 /* decl */
            invokevirtual org.aspectj.weaver.patterns.DeclareErrorOrWarning.isError:()Z
            ifeq 1
            getstatic org.aspectj.asm.IProgramElement$Kind.DECLARE_ERROR:Lorg/aspectj/asm/IProgramElement$Kind;
            goto 2
         1: .line 689
      StackMap locals: org.aspectj.asm.AsmManager org.aspectj.weaver.ResolvedType org.aspectj.weaver.patterns.DeclareErrorOrWarning int
      StackMap stack: new 0 new 0 org.aspectj.asm.AsmManager java.lang.String
            getstatic org.aspectj.asm.IProgramElement$Kind.DECLARE_WARNING:Lorg/aspectj/asm/IProgramElement$Kind;
      StackMap locals: org.aspectj.asm.AsmManager org.aspectj.weaver.ResolvedType org.aspectj.weaver.patterns.DeclareErrorOrWarning int
      StackMap stack: new 0 new 0 org.aspectj.asm.AsmManager java.lang.String org.aspectj.asm.IProgramElement$Kind
         2: aload 1 /* aspect */
            aload 2 /* decl */
            invokevirtual org.aspectj.weaver.patterns.DeclareErrorOrWarning.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            invokestatic org.aspectj.weaver.model.AsmRelationshipProvider.getBinarySourceLocation:(Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/bridge/ISourceLocation;)Lorg/aspectj/bridge/ISourceLocation;
            aload 2 /* decl */
         3: .line 690
            invokevirtual org.aspectj.weaver.patterns.DeclareErrorOrWarning.getDeclaringType:()Lorg/aspectj/weaver/ResolvedType;
            invokevirtual org.aspectj.weaver.ResolvedType.getModifiers:()I
            aconst_null
            aconst_null
         4: .line 688
            invokespecial org.aspectj.asm.internal.ProgramElement.<init>:(Lorg/aspectj/asm/AsmManager;Ljava/lang/String;Lorg/aspectj/asm/IProgramElement$Kind;Lorg/aspectj/bridge/ISourceLocation;ILjava/lang/String;Ljava/util/List;)V
            astore 4 /* deowNode */
        start local 4 // org.aspectj.asm.IProgramElement deowNode
         5: .line 691
            aload 4 /* deowNode */
            new java.lang.StringBuilder
            dup
            ldc "\""
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* decl */
            invokevirtual org.aspectj.weaver.patterns.DeclareErrorOrWarning.getMessage:()Ljava/lang/String;
            invokestatic org.aspectj.weaver.model.AsmRelationshipUtils.genDeclareMessage:(Ljava/lang/String;)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;
            invokeinterface org.aspectj.asm.IProgramElement.setDetails:(Ljava/lang/String;)V
         6: .line 692
            iload 3 /* count */
            iconst_m1
            if_icmpeq 8
         7: .line 693
            aload 4 /* deowNode */
            new java.lang.StringBuilder
            dup
            aload 2 /* decl */
            invokevirtual org.aspectj.weaver.patterns.DeclareErrorOrWarning.getName:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "_"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 3 /* count */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface org.aspectj.asm.IProgramElement.setBytecodeName:(Ljava/lang/String;)V
         8: .line 695
      StackMap locals: org.aspectj.asm.IProgramElement
      StackMap stack:
            aload 4 /* deowNode */
            areturn
        end local 4 // org.aspectj.asm.IProgramElement deowNode
        end local 3 // int count
        end local 2 // org.aspectj.weaver.patterns.DeclareErrorOrWarning decl
        end local 1 // org.aspectj.weaver.ResolvedType aspect
        end local 0 // org.aspectj.asm.AsmManager model
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0     model  Lorg/aspectj/asm/AsmManager;
            0    9     1    aspect  Lorg/aspectj/weaver/ResolvedType;
            0    9     2      decl  Lorg/aspectj/weaver/patterns/DeclareErrorOrWarning;
            0    9     3     count  I
            5    9     4  deowNode  Lorg/aspectj/asm/IProgramElement;
    MethodParameters:
        Name  Flags
      model   
      aspect  
      decl    
      count   

  private static org.aspectj.asm.IProgramElement createAdviceChild(org.aspectj.asm.AsmManager, org.aspectj.weaver.Advice);
    descriptor: (Lorg/aspectj/asm/AsmManager;Lorg/aspectj/weaver/Advice;)Lorg/aspectj/asm/IProgramElement;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=9, locals=3, args_size=2
        start local 0 // org.aspectj.asm.AsmManager model
        start local 1 // org.aspectj.weaver.Advice advice
         0: .line 699
            new org.aspectj.asm.internal.ProgramElement
            dup
            aload 0 /* model */
            aload 1 /* advice */
            invokevirtual org.aspectj.weaver.Advice.getKind:()Lorg/aspectj/weaver/AdviceKind;
            invokevirtual org.aspectj.weaver.AdviceKind.getName:()Ljava/lang/String;
            getstatic org.aspectj.asm.IProgramElement$Kind.ADVICE:Lorg/aspectj/asm/IProgramElement$Kind;
         1: .line 700
            aload 1 /* advice */
            aload 1 /* advice */
            invokevirtual org.aspectj.weaver.Advice.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            invokevirtual org.aspectj.weaver.Advice.getBinarySourceLocation:(Lorg/aspectj/bridge/ISourceLocation;)Lorg/aspectj/bridge/ISourceLocation;
            aload 1 /* advice */
            invokevirtual org.aspectj.weaver.Advice.getSignature:()Lorg/aspectj/weaver/Member;
            invokeinterface org.aspectj.weaver.Member.getModifiers:()I
            aconst_null
         2: .line 701
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
         3: .line 699
            invokespecial org.aspectj.asm.internal.ProgramElement.<init>:(Lorg/aspectj/asm/AsmManager;Ljava/lang/String;Lorg/aspectj/asm/IProgramElement$Kind;Lorg/aspectj/bridge/ISourceLocation;ILjava/lang/String;Ljava/util/List;)V
            astore 2 /* adviceNode */
        start local 2 // org.aspectj.asm.IProgramElement adviceNode
         4: .line 702
            aload 2 /* adviceNode */
            aload 1 /* advice */
            invokevirtual org.aspectj.weaver.Advice.getPointcut:()Lorg/aspectj/weaver/patterns/Pointcut;
            invokestatic org.aspectj.weaver.model.AsmRelationshipUtils.genPointcutDetails:(Lorg/aspectj/weaver/patterns/Pointcut;)Ljava/lang/String;
            invokeinterface org.aspectj.asm.IProgramElement.setDetails:(Ljava/lang/String;)V
         5: .line 703
            aload 2 /* adviceNode */
            aload 1 /* advice */
            invokevirtual org.aspectj.weaver.Advice.getSignature:()Lorg/aspectj/weaver/Member;
            invokeinterface org.aspectj.weaver.Member.getName:()Ljava/lang/String;
            invokeinterface org.aspectj.asm.IProgramElement.setBytecodeName:(Ljava/lang/String;)V
         6: .line 704
            aload 2 /* adviceNode */
            areturn
        end local 2 // org.aspectj.asm.IProgramElement adviceNode
        end local 1 // org.aspectj.weaver.Advice advice
        end local 0 // org.aspectj.asm.AsmManager model
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    7     0       model  Lorg/aspectj/asm/AsmManager;
            0    7     1      advice  Lorg/aspectj/weaver/Advice;
            4    7     2  adviceNode  Lorg/aspectj/asm/IProgramElement;
    MethodParameters:
        Name  Flags
      model   
      advice  

  private static org.aspectj.asm.IProgramElement createIntertypeDeclaredChild(org.aspectj.asm.AsmManager, org.aspectj.weaver.ResolvedType, org.aspectj.weaver.bcel.BcelTypeMunger);
    descriptor: (Lorg/aspectj/asm/AsmManager;Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/weaver/bcel/BcelTypeMunger;)Lorg/aspectj/asm/IProgramElement;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=9, locals=8, args_size=3
        start local 0 // org.aspectj.asm.AsmManager model
        start local 1 // org.aspectj.weaver.ResolvedType aspect
        start local 2 // org.aspectj.weaver.bcel.BcelTypeMunger itd
         0: .line 713
            aload 2 /* itd */
            invokevirtual org.aspectj.weaver.bcel.BcelTypeMunger.getMunger:()Lorg/aspectj/weaver/ResolvedTypeMunger;
            astore 3 /* rtMunger */
        start local 3 // org.aspectj.weaver.ResolvedTypeMunger rtMunger
         1: .line 715
            aload 3 /* rtMunger */
            invokevirtual org.aspectj.weaver.ResolvedTypeMunger.getSignature:()Lorg/aspectj/weaver/ResolvedMember;
            astore 4 /* sig */
        start local 4 // org.aspectj.weaver.ResolvedMember sig
         2: .line 716
            aload 3 /* rtMunger */
            invokevirtual org.aspectj.weaver.ResolvedTypeMunger.getKind:()Lorg/aspectj/weaver/ResolvedTypeMunger$Kind;
            astore 5 /* kind */
        start local 5 // org.aspectj.weaver.ResolvedTypeMunger$Kind kind
         3: .line 717
            aload 5 /* kind */
            getstatic org.aspectj.weaver.ResolvedTypeMunger.Field:Lorg/aspectj/weaver/ResolvedTypeMunger$Kind;
            if_acmpne 14
         4: .line 719
            new java.lang.StringBuilder
            dup
            aload 4 /* sig */
            invokeinterface org.aspectj.weaver.ResolvedMember.getDeclaringType:()Lorg/aspectj/weaver/UnresolvedType;
            invokevirtual org.aspectj.weaver.UnresolvedType.getClassName:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 4 /* sig */
            invokeinterface org.aspectj.weaver.ResolvedMember.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 6 /* name */
        start local 6 // java.lang.String name
         5: .line 720
            aload 6 /* name */
            ldc "$"
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            iconst_m1
            if_icmpeq 7
         6: .line 721
            aload 6 /* name */
            aload 6 /* name */
            ldc "$"
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 6 /* name */
         7: .line 723
      StackMap locals: org.aspectj.asm.AsmManager org.aspectj.weaver.ResolvedType org.aspectj.weaver.bcel.BcelTypeMunger org.aspectj.weaver.ResolvedTypeMunger org.aspectj.weaver.ResolvedMember org.aspectj.weaver.ResolvedTypeMunger$Kind java.lang.String
      StackMap stack:
            new org.aspectj.asm.internal.ProgramElement
            dup
            aload 0 /* model */
            aload 6 /* name */
            getstatic org.aspectj.asm.IProgramElement$Kind.INTER_TYPE_FIELD:Lorg/aspectj/asm/IProgramElement$Kind;
         8: .line 724
            aload 1 /* aspect */
            aload 2 /* itd */
            invokevirtual org.aspectj.weaver.bcel.BcelTypeMunger.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
         9: .line 723
            invokestatic org.aspectj.weaver.model.AsmRelationshipProvider.getBinarySourceLocation:(Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/bridge/ISourceLocation;)Lorg/aspectj/bridge/ISourceLocation;
        10: .line 724
            aload 3 /* rtMunger */
            invokevirtual org.aspectj.weaver.ResolvedTypeMunger.getSignature:()Lorg/aspectj/weaver/ResolvedMember;
            invokeinterface org.aspectj.weaver.ResolvedMember.getModifiers:()I
            aconst_null
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
        11: .line 723
            invokespecial org.aspectj.asm.internal.ProgramElement.<init>:(Lorg/aspectj/asm/AsmManager;Ljava/lang/String;Lorg/aspectj/asm/IProgramElement$Kind;Lorg/aspectj/bridge/ISourceLocation;ILjava/lang/String;Ljava/util/List;)V
            astore 7 /* pe */
        start local 7 // org.aspectj.asm.IProgramElement pe
        12: .line 725
            aload 7 /* pe */
            aload 4 /* sig */
            invokeinterface org.aspectj.weaver.ResolvedMember.getReturnType:()Lorg/aspectj/weaver/UnresolvedType;
            invokevirtual org.aspectj.weaver.UnresolvedType.getName:()Ljava/lang/String;
            invokeinterface org.aspectj.asm.IProgramElement.setCorrespondingType:(Ljava/lang/String;)V
        13: .line 726
            aload 7 /* pe */
            areturn
        end local 7 // org.aspectj.asm.IProgramElement pe
        end local 6 // java.lang.String name
        14: .line 727
      StackMap locals:
      StackMap stack:
            aload 5 /* kind */
            getstatic org.aspectj.weaver.ResolvedTypeMunger.Method:Lorg/aspectj/weaver/ResolvedTypeMunger$Kind;
            if_acmpne 25
        15: .line 729
            new java.lang.StringBuilder
            dup
            aload 4 /* sig */
            invokeinterface org.aspectj.weaver.ResolvedMember.getDeclaringType:()Lorg/aspectj/weaver/UnresolvedType;
            invokevirtual org.aspectj.weaver.UnresolvedType.getClassName:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 4 /* sig */
            invokeinterface org.aspectj.weaver.ResolvedMember.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 6 /* name */
        start local 6 // java.lang.String name
        16: .line 730
            aload 6 /* name */
            ldc "$"
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            iconst_m1
            if_icmpeq 18
        17: .line 731
            aload 6 /* name */
            aload 6 /* name */
            ldc "$"
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 6 /* name */
        18: .line 733
      StackMap locals: java.lang.String
      StackMap stack:
            new org.aspectj.asm.internal.ProgramElement
            dup
            aload 0 /* model */
            aload 6 /* name */
            getstatic org.aspectj.asm.IProgramElement$Kind.INTER_TYPE_METHOD:Lorg/aspectj/asm/IProgramElement$Kind;
        19: .line 734
            aload 1 /* aspect */
            aload 2 /* itd */
            invokevirtual org.aspectj.weaver.bcel.BcelTypeMunger.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
        20: .line 733
            invokestatic org.aspectj.weaver.model.AsmRelationshipProvider.getBinarySourceLocation:(Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/bridge/ISourceLocation;)Lorg/aspectj/bridge/ISourceLocation;
        21: .line 734
            aload 3 /* rtMunger */
            invokevirtual org.aspectj.weaver.ResolvedTypeMunger.getSignature:()Lorg/aspectj/weaver/ResolvedMember;
            invokeinterface org.aspectj.weaver.ResolvedMember.getModifiers:()I
            aconst_null
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
        22: .line 733
            invokespecial org.aspectj.asm.internal.ProgramElement.<init>:(Lorg/aspectj/asm/AsmManager;Ljava/lang/String;Lorg/aspectj/asm/IProgramElement$Kind;Lorg/aspectj/bridge/ISourceLocation;ILjava/lang/String;Ljava/util/List;)V
            astore 7 /* pe */
        start local 7 // org.aspectj.asm.IProgramElement pe
        23: .line 735
            aload 7 /* pe */
            aload 4 /* sig */
            invokestatic org.aspectj.weaver.model.AsmRelationshipProvider.setParams:(Lorg/aspectj/asm/IProgramElement;Lorg/aspectj/weaver/ResolvedMember;)V
        24: .line 736
            aload 7 /* pe */
            areturn
        end local 7 // org.aspectj.asm.IProgramElement pe
        end local 6 // java.lang.String name
        25: .line 737
      StackMap locals:
      StackMap stack:
            aload 5 /* kind */
            getstatic org.aspectj.weaver.ResolvedTypeMunger.Constructor:Lorg/aspectj/weaver/ResolvedTypeMunger$Kind;
            if_acmpne 35
        26: .line 738
            new java.lang.StringBuilder
            dup
            aload 4 /* sig */
            invokeinterface org.aspectj.weaver.ResolvedMember.getDeclaringType:()Lorg/aspectj/weaver/UnresolvedType;
            invokevirtual org.aspectj.weaver.UnresolvedType.getClassName:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 4 /* sig */
            invokeinterface org.aspectj.weaver.ResolvedMember.getDeclaringType:()Lorg/aspectj/weaver/UnresolvedType;
            invokevirtual org.aspectj.weaver.UnresolvedType.getClassName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 6 /* name */
        start local 6 // java.lang.String name
        27: .line 739
            aload 6 /* name */
            ldc "$"
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            iconst_m1
            if_icmpeq 29
        28: .line 740
            aload 6 /* name */
            aload 6 /* name */
            ldc "$"
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 6 /* name */
        29: .line 742
      StackMap locals: java.lang.String
      StackMap stack:
            new org.aspectj.asm.internal.ProgramElement
            dup
            aload 0 /* model */
            aload 6 /* name */
            getstatic org.aspectj.asm.IProgramElement$Kind.INTER_TYPE_CONSTRUCTOR:Lorg/aspectj/asm/IProgramElement$Kind;
        30: .line 743
            aload 1 /* aspect */
            aload 2 /* itd */
            invokevirtual org.aspectj.weaver.bcel.BcelTypeMunger.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            invokestatic org.aspectj.weaver.model.AsmRelationshipProvider.getBinarySourceLocation:(Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/bridge/ISourceLocation;)Lorg/aspectj/bridge/ISourceLocation;
            aload 3 /* rtMunger */
            invokevirtual org.aspectj.weaver.ResolvedTypeMunger.getSignature:()Lorg/aspectj/weaver/ResolvedMember;
            invokeinterface org.aspectj.weaver.ResolvedMember.getModifiers:()I
            aconst_null
        31: .line 744
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
        32: .line 742
            invokespecial org.aspectj.asm.internal.ProgramElement.<init>:(Lorg/aspectj/asm/AsmManager;Ljava/lang/String;Lorg/aspectj/asm/IProgramElement$Kind;Lorg/aspectj/bridge/ISourceLocation;ILjava/lang/String;Ljava/util/List;)V
            astore 7 /* pe */
        start local 7 // org.aspectj.asm.IProgramElement pe
        33: .line 745
            aload 7 /* pe */
            aload 4 /* sig */
            invokestatic org.aspectj.weaver.model.AsmRelationshipProvider.setParams:(Lorg/aspectj/asm/IProgramElement;Lorg/aspectj/weaver/ResolvedMember;)V
        34: .line 746
            aload 7 /* pe */
            areturn
        end local 7 // org.aspectj.asm.IProgramElement pe
        end local 6 // java.lang.String name
        35: .line 758
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 5 // org.aspectj.weaver.ResolvedTypeMunger$Kind kind
        end local 4 // org.aspectj.weaver.ResolvedMember sig
        end local 3 // org.aspectj.weaver.ResolvedTypeMunger rtMunger
        end local 2 // org.aspectj.weaver.bcel.BcelTypeMunger itd
        end local 1 // org.aspectj.weaver.ResolvedType aspect
        end local 0 // org.aspectj.asm.AsmManager model
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   36     0     model  Lorg/aspectj/asm/AsmManager;
            0   36     1    aspect  Lorg/aspectj/weaver/ResolvedType;
            0   36     2       itd  Lorg/aspectj/weaver/bcel/BcelTypeMunger;
            1   36     3  rtMunger  Lorg/aspectj/weaver/ResolvedTypeMunger;
            2   36     4       sig  Lorg/aspectj/weaver/ResolvedMember;
            3   36     5      kind  Lorg/aspectj/weaver/ResolvedTypeMunger$Kind;
            5   14     6      name  Ljava/lang/String;
           12   14     7        pe  Lorg/aspectj/asm/IProgramElement;
           16   25     6      name  Ljava/lang/String;
           23   25     7        pe  Lorg/aspectj/asm/IProgramElement;
           27   35     6      name  Ljava/lang/String;
           33   35     7        pe  Lorg/aspectj/asm/IProgramElement;
    MethodParameters:
        Name  Flags
      model   
      aspect  
      itd     

  private static void setParams(org.aspectj.asm.IProgramElement, org.aspectj.weaver.ResolvedMember);
    descriptor: (Lorg/aspectj/asm/IProgramElement;Lorg/aspectj/weaver/ResolvedMember;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // org.aspectj.asm.IProgramElement pe
        start local 1 // org.aspectj.weaver.ResolvedMember sig
         0: .line 763
            aload 1 /* sig */
            invokeinterface org.aspectj.weaver.ResolvedMember.getParameterTypes:()[Lorg/aspectj/weaver/UnresolvedType;
            astore 2 /* ts */
        start local 2 // org.aspectj.weaver.UnresolvedType[] ts
         1: .line 764
            aload 0 /* pe */
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            invokeinterface org.aspectj.asm.IProgramElement.setParameterNames:(Ljava/util/List;)V
         2: .line 766
            aload 2 /* ts */
            ifnonnull 5
         3: .line 767
            aload 0 /* pe */
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            invokeinterface org.aspectj.asm.IProgramElement.setParameterSignatures:(Ljava/util/List;Ljava/util/List;)V
         4: .line 768
            goto 12
         5: .line 769
      StackMap locals: org.aspectj.weaver.UnresolvedType[]
      StackMap stack:
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* paramSigs */
        start local 3 // java.util.List paramSigs
         6: .line 770
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         7: goto 10
         8: .line 771
      StackMap locals: java.util.List int
      StackMap stack:
            aload 3 /* paramSigs */
            aload 2 /* ts */
            iload 4 /* i */
            aaload
            invokevirtual org.aspectj.weaver.UnresolvedType.getSignature:()Ljava/lang/String;
            invokevirtual java.lang.String.toCharArray:()[C
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         9: .line 770
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        10: iload 4 /* i */
            aload 2 /* ts */
            arraylength
            if_icmplt 8
        end local 4 // int i
        11: .line 773
            aload 0 /* pe */
            aload 3 /* paramSigs */
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            invokeinterface org.aspectj.asm.IProgramElement.setParameterSignatures:(Ljava/util/List;Ljava/util/List;)V
        end local 3 // java.util.List paramSigs
        12: .line 775
      StackMap locals:
      StackMap stack:
            aload 0 /* pe */
            aload 1 /* sig */
            invokeinterface org.aspectj.weaver.ResolvedMember.getReturnType:()Lorg/aspectj/weaver/UnresolvedType;
            invokevirtual org.aspectj.weaver.UnresolvedType.getName:()Ljava/lang/String;
            invokeinterface org.aspectj.asm.IProgramElement.setCorrespondingType:(Ljava/lang/String;)V
        13: .line 776
            return
        end local 2 // org.aspectj.weaver.UnresolvedType[] ts
        end local 1 // org.aspectj.weaver.ResolvedMember sig
        end local 0 // org.aspectj.asm.IProgramElement pe
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   14     0         pe  Lorg/aspectj/asm/IProgramElement;
            0   14     1        sig  Lorg/aspectj/weaver/ResolvedMember;
            1   14     2         ts  [Lorg/aspectj/weaver/UnresolvedType;
            6   12     3  paramSigs  Ljava/util/List<[C>;
            7   11     4          i  I
    MethodParameters:
      Name  Flags
      pe    
      sig   

  private static org.aspectj.asm.IProgramElement createDeclareParentsChild(org.aspectj.asm.AsmManager, org.aspectj.weaver.patterns.DeclareParents);
    descriptor: (Lorg/aspectj/asm/AsmManager;Lorg/aspectj/weaver/patterns/DeclareParents;)Lorg/aspectj/asm/IProgramElement;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=9, locals=3, args_size=2
        start local 0 // org.aspectj.asm.AsmManager model
        start local 1 // org.aspectj.weaver.patterns.DeclareParents decp
         0: .line 779
            new org.aspectj.asm.internal.ProgramElement
            dup
            aload 0 /* model */
            ldc "declare parents"
            getstatic org.aspectj.asm.IProgramElement$Kind.DECLARE_PARENTS:Lorg/aspectj/asm/IProgramElement$Kind;
         1: .line 780
            aload 1 /* decp */
            invokevirtual org.aspectj.weaver.patterns.DeclareParents.getDeclaringType:()Lorg/aspectj/weaver/ResolvedType;
            aload 1 /* decp */
            invokevirtual org.aspectj.weaver.patterns.DeclareParents.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            invokestatic org.aspectj.weaver.model.AsmRelationshipProvider.getBinarySourceLocation:(Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/bridge/ISourceLocation;)Lorg/aspectj/bridge/ISourceLocation;
            iconst_1
            aconst_null
         2: .line 781
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
         3: .line 779
            invokespecial org.aspectj.asm.internal.ProgramElement.<init>:(Lorg/aspectj/asm/AsmManager;Ljava/lang/String;Lorg/aspectj/asm/IProgramElement$Kind;Lorg/aspectj/bridge/ISourceLocation;ILjava/lang/String;Ljava/util/List;)V
            astore 2 /* decpElement */
        start local 2 // org.aspectj.asm.IProgramElement decpElement
         4: .line 782
            aload 1 /* decp */
            aload 2 /* decpElement */
            invokestatic org.aspectj.weaver.model.AsmRelationshipProvider.setParentTypesOnDeclareParentsNode:(Lorg/aspectj/weaver/patterns/DeclareParents;Lorg/aspectj/asm/IProgramElement;)V
         5: .line 783
            aload 2 /* decpElement */
            areturn
        end local 2 // org.aspectj.asm.IProgramElement decpElement
        end local 1 // org.aspectj.weaver.patterns.DeclareParents decp
        end local 0 // org.aspectj.asm.AsmManager model
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    6     0        model  Lorg/aspectj/asm/AsmManager;
            0    6     1         decp  Lorg/aspectj/weaver/patterns/DeclareParents;
            4    6     2  decpElement  Lorg/aspectj/asm/IProgramElement;
    MethodParameters:
       Name  Flags
      model  
      decp   

  private static void setParentTypesOnDeclareParentsNode(org.aspectj.weaver.patterns.DeclareParents, org.aspectj.asm.IProgramElement);
    descriptor: (Lorg/aspectj/weaver/patterns/DeclareParents;Lorg/aspectj/asm/IProgramElement;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // org.aspectj.weaver.patterns.DeclareParents decp
        start local 1 // org.aspectj.asm.IProgramElement decpElement
         0: .line 787
            aload 0 /* decp */
            invokevirtual org.aspectj.weaver.patterns.DeclareParents.getParents:()Lorg/aspectj/weaver/patterns/TypePatternList;
            astore 2 /* tpl */
        start local 2 // org.aspectj.weaver.patterns.TypePatternList tpl
         1: .line 788
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* parents */
        start local 3 // java.util.List parents
         2: .line 789
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         3: goto 6
         4: .line 790
      StackMap locals: org.aspectj.weaver.patterns.TypePatternList java.util.List int
      StackMap stack:
            aload 3 /* parents */
            aload 2 /* tpl */
            iload 4 /* i */
            invokevirtual org.aspectj.weaver.patterns.TypePatternList.get:(I)Lorg/aspectj/weaver/patterns/TypePattern;
            invokevirtual org.aspectj.weaver.patterns.TypePattern.getExactType:()Lorg/aspectj/weaver/UnresolvedType;
            invokevirtual org.aspectj.weaver.UnresolvedType.getName:()Ljava/lang/String;
            ldc "\\$"
            ldc "."
            invokevirtual java.lang.String.replaceAll:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         5: .line 789
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 4 /* i */
            aload 2 /* tpl */
            invokevirtual org.aspectj.weaver.patterns.TypePatternList.size:()I
            if_icmplt 4
        end local 4 // int i
         7: .line 792
            aload 1 /* decpElement */
            aload 3 /* parents */
            invokeinterface org.aspectj.asm.IProgramElement.setParentTypes:(Ljava/util/List;)V
         8: .line 793
            return
        end local 3 // java.util.List parents
        end local 2 // org.aspectj.weaver.patterns.TypePatternList tpl
        end local 1 // org.aspectj.asm.IProgramElement decpElement
        end local 0 // org.aspectj.weaver.patterns.DeclareParents decp
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    9     0         decp  Lorg/aspectj/weaver/patterns/DeclareParents;
            0    9     1  decpElement  Lorg/aspectj/asm/IProgramElement;
            1    9     2          tpl  Lorg/aspectj/weaver/patterns/TypePatternList;
            2    9     3      parents  Ljava/util/List<Ljava/lang/String;>;
            3    7     4            i  I
    MethodParameters:
             Name  Flags
      decp         
      decpElement  

  public static java.lang.String getHandle(org.aspectj.asm.AsmManager, org.aspectj.weaver.Advice);
    descriptor: (Lorg/aspectj/asm/AsmManager;Lorg/aspectj/weaver/Advice;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.aspectj.asm.AsmManager asm
        start local 1 // org.aspectj.weaver.Advice advice
         0: .line 796
            aload 1 /* advice */
            getfield org.aspectj.weaver.Advice.handle:Ljava/lang/String;
            ifnonnull 5
         1: .line 797
            aload 1 /* advice */
            invokevirtual org.aspectj.weaver.Advice.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            astore 2 /* sl */
        start local 2 // org.aspectj.bridge.ISourceLocation sl
         2: .line 798
            aload 2 /* sl */
            ifnull 5
         3: .line 799
            aload 0 /* asm */
            invokevirtual org.aspectj.asm.AsmManager.getHierarchy:()Lorg/aspectj/asm/IHierarchy;
            aload 2 /* sl */
            invokeinterface org.aspectj.asm.IHierarchy.findElementForSourceLine:(Lorg/aspectj/bridge/ISourceLocation;)Lorg/aspectj/asm/IProgramElement;
            astore 3 /* ipe */
        start local 3 // org.aspectj.asm.IProgramElement ipe
         4: .line 800
            aload 1 /* advice */
            aload 3 /* ipe */
            invokeinterface org.aspectj.asm.IProgramElement.getHandleIdentifier:()Ljava/lang/String;
            putfield org.aspectj.weaver.Advice.handle:Ljava/lang/String;
        end local 3 // org.aspectj.asm.IProgramElement ipe
        end local 2 // org.aspectj.bridge.ISourceLocation sl
         5: .line 803
      StackMap locals:
      StackMap stack:
            aload 1 /* advice */
            getfield org.aspectj.weaver.Advice.handle:Ljava/lang/String;
            areturn
        end local 1 // org.aspectj.weaver.Advice advice
        end local 0 // org.aspectj.asm.AsmManager asm
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0     asm  Lorg/aspectj/asm/AsmManager;
            0    6     1  advice  Lorg/aspectj/weaver/Advice;
            2    5     2      sl  Lorg/aspectj/bridge/ISourceLocation;
            4    5     3     ipe  Lorg/aspectj/asm/IProgramElement;
    MethodParameters:
        Name  Flags
      asm     
      advice  

  public static void addAdvisedRelationship(org.aspectj.asm.AsmManager, org.aspectj.weaver.Shadow, org.aspectj.weaver.ShadowMunger);
    descriptor: (Lorg/aspectj/asm/AsmManager;Lorg/aspectj/weaver/Shadow;Lorg/aspectj/weaver/ShadowMunger;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=13, args_size=3
        start local 0 // org.aspectj.asm.AsmManager model
        start local 1 // org.aspectj.weaver.Shadow matchedShadow
        start local 2 // org.aspectj.weaver.ShadowMunger munger
         0: .line 807
            aload 0 /* model */
            ifnonnull 2
         1: .line 808
            return
         2: .line 811
      StackMap locals:
      StackMap stack:
            aload 2 /* munger */
            instanceof org.aspectj.weaver.Advice
            ifeq 38
         3: .line 812
            aload 2 /* munger */
            checkcast org.aspectj.weaver.Advice
            astore 3 /* advice */
        start local 3 // org.aspectj.weaver.Advice advice
         4: .line 814
            aload 3 /* advice */
            invokevirtual org.aspectj.weaver.Advice.getKind:()Lorg/aspectj/weaver/AdviceKind;
            invokevirtual org.aspectj.weaver.AdviceKind.isPerEntry:()Z
            ifne 5
            aload 3 /* advice */
            invokevirtual org.aspectj.weaver.Advice.getKind:()Lorg/aspectj/weaver/AdviceKind;
            invokevirtual org.aspectj.weaver.AdviceKind.isCflow:()Z
            ifeq 6
         5: .line 816
      StackMap locals: org.aspectj.weaver.Advice
      StackMap stack:
            return
         6: .line 819
      StackMap locals:
      StackMap stack:
            getstatic org.aspectj.weaver.World.createInjarHierarchy:Z
            ifeq 8
         7: .line 820
            aload 0 /* model */
            aload 3 /* advice */
            invokestatic org.aspectj.weaver.model.AsmRelationshipProvider.createHierarchyForBinaryAspect:(Lorg/aspectj/asm/AsmManager;Lorg/aspectj/weaver/ShadowMunger;)V
         8: .line 823
      StackMap locals:
      StackMap stack:
            aload 0 /* model */
            invokevirtual org.aspectj.asm.AsmManager.getRelationshipMap:()Lorg/aspectj/asm/IRelationshipMap;
            astore 4 /* mapper */
        start local 4 // org.aspectj.asm.IRelationshipMap mapper
         9: .line 824
            aload 0 /* model */
            aload 1 /* matchedShadow */
            invokestatic org.aspectj.weaver.model.AsmRelationshipProvider.getNode:(Lorg/aspectj/asm/AsmManager;Lorg/aspectj/weaver/Shadow;)Lorg/aspectj/asm/IProgramElement;
            astore 5 /* targetNode */
        start local 5 // org.aspectj.asm.IProgramElement targetNode
        10: .line 825
            aload 5 /* targetNode */
            ifnonnull 12
        11: .line 826
            return
        12: .line 828
      StackMap locals: org.aspectj.asm.IRelationshipMap org.aspectj.asm.IProgramElement
      StackMap stack:
            aload 3 /* advice */
            invokevirtual org.aspectj.weaver.Advice.hasDynamicTests:()Z
            istore 6 /* runtimeTest */
        start local 6 // boolean runtimeTest
        13: .line 830
            new org.aspectj.asm.IProgramElement$ExtraInformation
            dup
            invokespecial org.aspectj.asm.IProgramElement$ExtraInformation.<init>:()V
            astore 7 /* extra */
        start local 7 // org.aspectj.asm.IProgramElement$ExtraInformation extra
        14: .line 832
            aload 0 /* model */
            aload 3 /* advice */
            invokestatic org.aspectj.weaver.model.AsmRelationshipProvider.getHandle:(Lorg/aspectj/asm/AsmManager;Lorg/aspectj/weaver/Advice;)Ljava/lang/String;
            astore 8 /* adviceHandle */
        start local 8 // java.lang.String adviceHandle
        15: .line 833
            aload 8 /* adviceHandle */
            ifnonnull 17
        16: .line 834
            return
        17: .line 837
      StackMap locals: int org.aspectj.asm.IProgramElement$ExtraInformation java.lang.String
      StackMap stack:
            aload 7 /* extra */
            aload 3 /* advice */
            invokevirtual org.aspectj.weaver.Advice.getKind:()Lorg/aspectj/weaver/AdviceKind;
            invokevirtual org.aspectj.weaver.AdviceKind.getName:()Ljava/lang/String;
            invokevirtual org.aspectj.asm.IProgramElement$ExtraInformation.setExtraAdviceInformation:(Ljava/lang/String;)V
        18: .line 838
            aload 0 /* model */
            invokevirtual org.aspectj.asm.AsmManager.getHierarchy:()Lorg/aspectj/asm/IHierarchy;
            aload 8 /* adviceHandle */
            invokeinterface org.aspectj.asm.IHierarchy.findElementForHandle:(Ljava/lang/String;)Lorg/aspectj/asm/IProgramElement;
            astore 9 /* adviceElement */
        start local 9 // org.aspectj.asm.IProgramElement adviceElement
        19: .line 839
            aload 9 /* adviceElement */
            ifnull 21
        20: .line 840
            aload 9 /* adviceElement */
            aload 7 /* extra */
            invokeinterface org.aspectj.asm.IProgramElement.setExtraInfo:(Lorg/aspectj/asm/IProgramElement$ExtraInformation;)V
        21: .line 842
      StackMap locals: org.aspectj.asm.IProgramElement
      StackMap stack:
            aload 5 /* targetNode */
            invokeinterface org.aspectj.asm.IProgramElement.getHandleIdentifier:()Ljava/lang/String;
            astore 10 /* targetHandle */
        start local 10 // java.lang.String targetHandle
        22: .line 843
            aload 3 /* advice */
            invokevirtual org.aspectj.weaver.Advice.getKind:()Lorg/aspectj/weaver/AdviceKind;
            getstatic org.aspectj.weaver.AdviceKind.Softener:Lorg/aspectj/weaver/AdviceKind;
            invokevirtual org.aspectj.weaver.AdviceKind.equals:(Ljava/lang/Object;)Z
            ifeq 30
        23: .line 844
            aload 4 /* mapper */
            aload 8 /* adviceHandle */
            getstatic org.aspectj.asm.IRelationship$Kind.DECLARE_SOFT:Lorg/aspectj/asm/IRelationship$Kind;
            ldc "softens"
            iload 6 /* runtimeTest */
            iconst_1
            invokeinterface org.aspectj.asm.IRelationshipMap.get:(Ljava/lang/String;Lorg/aspectj/asm/IRelationship$Kind;Ljava/lang/String;ZZ)Lorg/aspectj/asm/IRelationship;
            astore 11 /* foreward */
        start local 11 // org.aspectj.asm.IRelationship foreward
        24: .line 845
            aload 11 /* foreward */
            ifnull 26
        25: .line 846
            aload 11 /* foreward */
            aload 10 /* targetHandle */
            invokeinterface org.aspectj.asm.IRelationship.addTarget:(Ljava/lang/String;)V
        26: .line 849
      StackMap locals: java.lang.String org.aspectj.asm.IRelationship
      StackMap stack:
            aload 4 /* mapper */
            aload 10 /* targetHandle */
            getstatic org.aspectj.asm.IRelationship$Kind.DECLARE:Lorg/aspectj/asm/IRelationship$Kind;
            ldc "softened by"
            iload 6 /* runtimeTest */
            iconst_1
            invokeinterface org.aspectj.asm.IRelationshipMap.get:(Ljava/lang/String;Lorg/aspectj/asm/IRelationship$Kind;Ljava/lang/String;ZZ)Lorg/aspectj/asm/IRelationship;
            astore 12 /* back */
        start local 12 // org.aspectj.asm.IRelationship back
        27: .line 850
            aload 12 /* back */
            ifnull 36
        28: .line 851
            aload 12 /* back */
            aload 8 /* adviceHandle */
            invokeinterface org.aspectj.asm.IRelationship.addTarget:(Ljava/lang/String;)V
        end local 12 // org.aspectj.asm.IRelationship back
        end local 11 // org.aspectj.asm.IRelationship foreward
        29: .line 853
            goto 36
        30: .line 854
      StackMap locals:
      StackMap stack:
            aload 4 /* mapper */
            aload 8 /* adviceHandle */
            getstatic org.aspectj.asm.IRelationship$Kind.ADVICE:Lorg/aspectj/asm/IRelationship$Kind;
            ldc "advises"
            iload 6 /* runtimeTest */
            iconst_1
            invokeinterface org.aspectj.asm.IRelationshipMap.get:(Ljava/lang/String;Lorg/aspectj/asm/IRelationship$Kind;Ljava/lang/String;ZZ)Lorg/aspectj/asm/IRelationship;
            astore 11 /* foreward */
        start local 11 // org.aspectj.asm.IRelationship foreward
        31: .line 855
            aload 11 /* foreward */
            ifnull 33
        32: .line 856
            aload 11 /* foreward */
            aload 10 /* targetHandle */
            invokeinterface org.aspectj.asm.IRelationship.addTarget:(Ljava/lang/String;)V
        33: .line 859
      StackMap locals: org.aspectj.asm.IRelationship
      StackMap stack:
            aload 4 /* mapper */
            aload 10 /* targetHandle */
            getstatic org.aspectj.asm.IRelationship$Kind.ADVICE:Lorg/aspectj/asm/IRelationship$Kind;
            ldc "advised by"
            iload 6 /* runtimeTest */
            iconst_1
            invokeinterface org.aspectj.asm.IRelationshipMap.get:(Ljava/lang/String;Lorg/aspectj/asm/IRelationship$Kind;Ljava/lang/String;ZZ)Lorg/aspectj/asm/IRelationship;
            astore 12 /* back */
        start local 12 // org.aspectj.asm.IRelationship back
        34: .line 860
            aload 12 /* back */
            ifnull 36
        35: .line 861
            aload 12 /* back */
            aload 8 /* adviceHandle */
            invokeinterface org.aspectj.asm.IRelationship.addTarget:(Ljava/lang/String;)V
        end local 12 // org.aspectj.asm.IRelationship back
        end local 11 // org.aspectj.asm.IRelationship foreward
        36: .line 864
      StackMap locals:
      StackMap stack:
            aload 9 /* adviceElement */
            invokeinterface org.aspectj.asm.IProgramElement.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            ifnull 38
        37: .line 865
            aload 0 /* model */
            aload 9 /* adviceElement */
            invokeinterface org.aspectj.asm.IProgramElement.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            invokeinterface org.aspectj.bridge.ISourceLocation.getSourceFile:()Ljava/io/File;
            invokevirtual org.aspectj.asm.AsmManager.addAspectInEffectThisBuild:(Ljava/io/File;)V
        end local 10 // java.lang.String targetHandle
        end local 9 // org.aspectj.asm.IProgramElement adviceElement
        end local 8 // java.lang.String adviceHandle
        end local 7 // org.aspectj.asm.IProgramElement$ExtraInformation extra
        end local 6 // boolean runtimeTest
        end local 5 // org.aspectj.asm.IProgramElement targetNode
        end local 4 // org.aspectj.asm.IRelationshipMap mapper
        end local 3 // org.aspectj.weaver.Advice advice
        38: .line 868
      StackMap locals: org.aspectj.asm.AsmManager org.aspectj.weaver.Shadow org.aspectj.weaver.ShadowMunger
      StackMap stack:
            return
        end local 2 // org.aspectj.weaver.ShadowMunger munger
        end local 1 // org.aspectj.weaver.Shadow matchedShadow
        end local 0 // org.aspectj.asm.AsmManager model
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   39     0          model  Lorg/aspectj/asm/AsmManager;
            0   39     1  matchedShadow  Lorg/aspectj/weaver/Shadow;
            0   39     2         munger  Lorg/aspectj/weaver/ShadowMunger;
            4   38     3         advice  Lorg/aspectj/weaver/Advice;
            9   38     4         mapper  Lorg/aspectj/asm/IRelationshipMap;
           10   38     5     targetNode  Lorg/aspectj/asm/IProgramElement;
           13   38     6    runtimeTest  Z
           14   38     7          extra  Lorg/aspectj/asm/IProgramElement$ExtraInformation;
           15   38     8   adviceHandle  Ljava/lang/String;
           19   38     9  adviceElement  Lorg/aspectj/asm/IProgramElement;
           22   38    10   targetHandle  Ljava/lang/String;
           24   29    11       foreward  Lorg/aspectj/asm/IRelationship;
           27   29    12           back  Lorg/aspectj/asm/IRelationship;
           31   36    11       foreward  Lorg/aspectj/asm/IRelationship;
           34   36    12           back  Lorg/aspectj/asm/IRelationship;
    MethodParameters:
               Name  Flags
      model          
      matchedShadow  
      munger         

  protected static org.aspectj.asm.IProgramElement getNode(org.aspectj.asm.AsmManager, org.aspectj.weaver.Shadow);
    descriptor: (Lorg/aspectj/asm/AsmManager;Lorg/aspectj/weaver/Shadow;)Lorg/aspectj/asm/IProgramElement;
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=4, locals=7, args_size=2
        start local 0 // org.aspectj.asm.AsmManager model
        start local 1 // org.aspectj.weaver.Shadow shadow
         0: .line 871
            aload 1 /* shadow */
            invokevirtual org.aspectj.weaver.Shadow.getEnclosingCodeSignature:()Lorg/aspectj/weaver/Member;
            astore 2 /* enclosingMember */
        start local 2 // org.aspectj.weaver.Member enclosingMember
         1: .line 888
            aconst_null
            astore 3 /* enclosingNode */
        start local 3 // org.aspectj.asm.IProgramElement enclosingNode
         2: .line 889
            aload 1 /* shadow */
            instanceof org.aspectj.weaver.bcel.BcelShadow
            ifeq 14
         3: .line 890
            aload 1 /* shadow */
            checkcast org.aspectj.weaver.bcel.BcelShadow
            invokevirtual org.aspectj.weaver.bcel.BcelShadow.getRealEnclosingCodeSignature:()Lorg/aspectj/weaver/Member;
            astore 4 /* actualEnclosingMember */
        start local 4 // org.aspectj.weaver.Member actualEnclosingMember
         4: .line 892
            aload 4 /* actualEnclosingMember */
            ifnonnull 7
         5: .line 893
            aload 0 /* model */
            invokevirtual org.aspectj.asm.AsmManager.getHierarchy:()Lorg/aspectj/asm/IHierarchy;
            aload 1 /* shadow */
            invokevirtual org.aspectj.weaver.Shadow.getEnclosingType:()Lorg/aspectj/weaver/UnresolvedType;
            aload 2 /* enclosingMember */
            invokestatic org.aspectj.weaver.model.AsmRelationshipProvider.lookupMember:(Lorg/aspectj/asm/IHierarchy;Lorg/aspectj/weaver/UnresolvedType;Lorg/aspectj/weaver/Member;)Lorg/aspectj/asm/IProgramElement;
            astore 3 /* enclosingNode */
         6: .line 894
            goto 15
         7: .line 895
      StackMap locals: org.aspectj.weaver.Member org.aspectj.asm.IProgramElement org.aspectj.weaver.Member
      StackMap stack:
            aload 2 /* enclosingMember */
            invokeinterface org.aspectj.weaver.Member.getDeclaringType:()Lorg/aspectj/weaver/UnresolvedType;
            astore 5 /* type */
        start local 5 // org.aspectj.weaver.UnresolvedType type
         8: .line 896
            aload 4 /* actualEnclosingMember */
            invokeinterface org.aspectj.weaver.Member.getDeclaringType:()Lorg/aspectj/weaver/UnresolvedType;
            astore 6 /* actualType */
        start local 6 // org.aspectj.weaver.UnresolvedType actualType
         9: .line 900
            aload 5 /* type */
            aload 6 /* actualType */
            invokevirtual org.aspectj.weaver.UnresolvedType.equals:(Ljava/lang/Object;)Z
            ifeq 12
        10: .line 901
            aload 0 /* model */
            invokevirtual org.aspectj.asm.AsmManager.getHierarchy:()Lorg/aspectj/asm/IHierarchy;
            aload 1 /* shadow */
            invokevirtual org.aspectj.weaver.Shadow.getEnclosingType:()Lorg/aspectj/weaver/UnresolvedType;
            aload 2 /* enclosingMember */
            invokestatic org.aspectj.weaver.model.AsmRelationshipProvider.lookupMember:(Lorg/aspectj/asm/IHierarchy;Lorg/aspectj/weaver/UnresolvedType;Lorg/aspectj/weaver/Member;)Lorg/aspectj/asm/IProgramElement;
            astore 3 /* enclosingNode */
        11: .line 902
            goto 15
        12: .line 903
      StackMap locals: org.aspectj.weaver.UnresolvedType org.aspectj.weaver.UnresolvedType
      StackMap stack:
            aload 0 /* model */
            invokevirtual org.aspectj.asm.AsmManager.getHierarchy:()Lorg/aspectj/asm/IHierarchy;
            aload 1 /* shadow */
            invokevirtual org.aspectj.weaver.Shadow.getEnclosingType:()Lorg/aspectj/weaver/UnresolvedType;
            aload 4 /* actualEnclosingMember */
            invokestatic org.aspectj.weaver.model.AsmRelationshipProvider.lookupMember:(Lorg/aspectj/asm/IHierarchy;Lorg/aspectj/weaver/UnresolvedType;Lorg/aspectj/weaver/Member;)Lorg/aspectj/asm/IProgramElement;
            astore 3 /* enclosingNode */
        end local 6 // org.aspectj.weaver.UnresolvedType actualType
        end local 5 // org.aspectj.weaver.UnresolvedType type
        end local 4 // org.aspectj.weaver.Member actualEnclosingMember
        13: .line 906
            goto 15
        14: .line 907
      StackMap locals:
      StackMap stack:
            aload 0 /* model */
            invokevirtual org.aspectj.asm.AsmManager.getHierarchy:()Lorg/aspectj/asm/IHierarchy;
            aload 1 /* shadow */
            invokevirtual org.aspectj.weaver.Shadow.getEnclosingType:()Lorg/aspectj/weaver/UnresolvedType;
            aload 2 /* enclosingMember */
            invokestatic org.aspectj.weaver.model.AsmRelationshipProvider.lookupMember:(Lorg/aspectj/asm/IHierarchy;Lorg/aspectj/weaver/UnresolvedType;Lorg/aspectj/weaver/Member;)Lorg/aspectj/asm/IProgramElement;
            astore 3 /* enclosingNode */
        15: .line 910
      StackMap locals:
      StackMap stack:
            aload 3 /* enclosingNode */
            ifnonnull 20
        16: .line 911
            aload 1 /* shadow */
            invokevirtual org.aspectj.weaver.Shadow.getIWorld:()Lorg/aspectj/weaver/World;
            invokevirtual org.aspectj.weaver.World.getLint:()Lorg/aspectj/weaver/Lint;
            getfield org.aspectj.weaver.Lint.shadowNotInStructure:Lorg/aspectj/weaver/Lint$Kind;
            astore 4 /* err */
        start local 4 // org.aspectj.weaver.Lint$Kind err
        17: .line 912
            aload 4 /* err */
            invokevirtual org.aspectj.weaver.Lint$Kind.isEnabled:()Z
            ifeq 19
        18: .line 913
            aload 4 /* err */
            aload 1 /* shadow */
            invokevirtual org.aspectj.weaver.Shadow.toString:()Ljava/lang/String;
            aload 1 /* shadow */
            invokevirtual org.aspectj.weaver.Shadow.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            invokevirtual org.aspectj.weaver.Lint$Kind.signal:(Ljava/lang/String;Lorg/aspectj/bridge/ISourceLocation;)V
        19: .line 915
      StackMap locals: org.aspectj.weaver.Lint$Kind
      StackMap stack:
            aconst_null
            areturn
        end local 4 // org.aspectj.weaver.Lint$Kind err
        20: .line 918
      StackMap locals:
      StackMap stack:
            aload 1 /* shadow */
            invokevirtual org.aspectj.weaver.Shadow.getSignature:()Lorg/aspectj/weaver/Member;
            astore 4 /* shadowSig */
        start local 4 // org.aspectj.weaver.Member shadowSig
        21: .line 920
            aload 1 /* shadow */
            invokevirtual org.aspectj.weaver.Shadow.getKind:()Lorg/aspectj/weaver/Shadow$Kind;
            getstatic org.aspectj.weaver.Shadow.MethodCall:Lorg/aspectj/weaver/Shadow$Kind;
            if_acmpeq 23
            aload 1 /* shadow */
            invokevirtual org.aspectj.weaver.Shadow.getKind:()Lorg/aspectj/weaver/Shadow$Kind;
            getstatic org.aspectj.weaver.Shadow.ConstructorCall:Lorg/aspectj/weaver/Shadow$Kind;
            if_acmpeq 23
        22: .line 921
            aload 4 /* shadowSig */
            aload 2 /* enclosingMember */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifne 25
        23: .line 922
      StackMap locals: org.aspectj.weaver.Member
      StackMap stack:
            aload 0 /* model */
            aload 3 /* enclosingNode */
            aload 4 /* shadowSig */
            aload 1 /* shadow */
            invokestatic org.aspectj.weaver.model.AsmRelationshipProvider.findOrCreateCodeNode:(Lorg/aspectj/asm/AsmManager;Lorg/aspectj/asm/IProgramElement;Lorg/aspectj/weaver/Member;Lorg/aspectj/weaver/Shadow;)Lorg/aspectj/asm/IProgramElement;
            astore 5 /* bodyNode */
        start local 5 // org.aspectj.asm.IProgramElement bodyNode
        24: .line 923
            aload 5 /* bodyNode */
            areturn
        end local 5 // org.aspectj.asm.IProgramElement bodyNode
        25: .line 925
      StackMap locals:
      StackMap stack:
            aload 3 /* enclosingNode */
            areturn
        end local 4 // org.aspectj.weaver.Member shadowSig
        end local 3 // org.aspectj.asm.IProgramElement enclosingNode
        end local 2 // org.aspectj.weaver.Member enclosingMember
        end local 1 // org.aspectj.weaver.Shadow shadow
        end local 0 // org.aspectj.asm.AsmManager model
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0   26     0                  model  Lorg/aspectj/asm/AsmManager;
            0   26     1                 shadow  Lorg/aspectj/weaver/Shadow;
            1   26     2        enclosingMember  Lorg/aspectj/weaver/Member;
            2   26     3          enclosingNode  Lorg/aspectj/asm/IProgramElement;
            4   13     4  actualEnclosingMember  Lorg/aspectj/weaver/Member;
            8   13     5                   type  Lorg/aspectj/weaver/UnresolvedType;
            9   13     6             actualType  Lorg/aspectj/weaver/UnresolvedType;
           17   20     4                    err  Lorg/aspectj/weaver/Lint$Kind;
           21   26     4              shadowSig  Lorg/aspectj/weaver/Member;
           24   25     5               bodyNode  Lorg/aspectj/asm/IProgramElement;
    MethodParameters:
        Name  Flags
      model   
      shadow  

  private static boolean sourceLinesMatch(org.aspectj.bridge.ISourceLocation, org.aspectj.bridge.ISourceLocation);
    descriptor: (Lorg/aspectj/bridge/ISourceLocation;Lorg/aspectj/bridge/ISourceLocation;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.aspectj.bridge.ISourceLocation location1
        start local 1 // org.aspectj.bridge.ISourceLocation location2
         0: .line 930
            aload 0 /* location1 */
            invokeinterface org.aspectj.bridge.ISourceLocation.getLine:()I
            aload 1 /* location2 */
            invokeinterface org.aspectj.bridge.ISourceLocation.getLine:()I
            if_icmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // org.aspectj.bridge.ISourceLocation location2
        end local 0 // org.aspectj.bridge.ISourceLocation location1
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0  location1  Lorg/aspectj/bridge/ISourceLocation;
            0    2     1  location2  Lorg/aspectj/bridge/ISourceLocation;
    MethodParameters:
           Name  Flags
      location1  
      location2  

  private static org.aspectj.asm.IProgramElement findOrCreateCodeNode(org.aspectj.asm.AsmManager, org.aspectj.asm.IProgramElement, org.aspectj.weaver.Member, org.aspectj.weaver.Shadow);
    descriptor: (Lorg/aspectj/asm/AsmManager;Lorg/aspectj/asm/IProgramElement;Lorg/aspectj/weaver/Member;Lorg/aspectj/weaver/Shadow;)Lorg/aspectj/asm/IProgramElement;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=9, locals=10, args_size=4
        start local 0 // org.aspectj.asm.AsmManager asm
        start local 1 // org.aspectj.asm.IProgramElement enclosingNode
        start local 2 // org.aspectj.weaver.Member shadowSig
        start local 3 // org.aspectj.weaver.Shadow shadow
         0: .line 947
            aload 1 /* enclosingNode */
            invokeinterface org.aspectj.asm.IProgramElement.getChildren:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 4 /* it */
        start local 4 // java.util.Iterator it
         1: goto 10
         2: .line 948
      StackMap locals: java.util.Iterator
      StackMap stack:
            aload 4 /* it */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.aspectj.asm.IProgramElement
            astore 5 /* node */
        start local 5 // org.aspectj.asm.IProgramElement node
         3: .line 949
            aload 5 /* node */
            invokeinterface org.aspectj.asm.IProgramElement.getBytecodeName:()Ljava/lang/String;
            bipush 33
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 6 /* excl */
        start local 6 // int excl
         4: .line 950
            iload 6 /* excl */
            iconst_m1
            if_icmpeq 5
            aload 2 /* shadowSig */
            invokeinterface org.aspectj.weaver.Member.getName:()Ljava/lang/String;
            aload 5 /* node */
            invokeinterface org.aspectj.asm.IProgramElement.getBytecodeName:()Ljava/lang/String;
            iconst_0
            iload 6 /* excl */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 7
      StackMap locals: org.aspectj.asm.IProgramElement int
      StackMap stack:
         5: aload 2 /* shadowSig */
            invokeinterface org.aspectj.weaver.Member.getName:()Ljava/lang/String;
         6: .line 951
            aload 5 /* node */
            invokeinterface org.aspectj.asm.IProgramElement.getBytecodeName:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 10
         7: .line 952
      StackMap locals:
      StackMap stack:
            aload 2 /* shadowSig */
            invokeinterface org.aspectj.weaver.Member.getSignature:()Ljava/lang/String;
            aload 5 /* node */
            invokeinterface org.aspectj.asm.IProgramElement.getBytecodeSignature:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 10
         8: .line 953
            aload 5 /* node */
            invokeinterface org.aspectj.asm.IProgramElement.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            aload 3 /* shadow */
            invokevirtual org.aspectj.weaver.Shadow.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            invokestatic org.aspectj.weaver.model.AsmRelationshipProvider.sourceLinesMatch:(Lorg/aspectj/bridge/ISourceLocation;Lorg/aspectj/bridge/ISourceLocation;)Z
            ifeq 10
         9: .line 954
            aload 5 /* node */
            areturn
        end local 6 // int excl
        end local 5 // org.aspectj.asm.IProgramElement node
        10: .line 947
      StackMap locals:
      StackMap stack:
            aload 4 /* it */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
        end local 4 // java.util.Iterator it
        11: .line 958
            aload 3 /* shadow */
            invokevirtual org.aspectj.weaver.Shadow.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            astore 4 /* sl */
        start local 4 // org.aspectj.bridge.ISourceLocation sl
        12: .line 962
            new org.aspectj.bridge.SourceLocation
            dup
            aload 1 /* enclosingNode */
            invokeinterface org.aspectj.asm.IProgramElement.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            invokeinterface org.aspectj.bridge.ISourceLocation.getSourceFile:()Ljava/io/File;
            aload 4 /* sl */
            invokeinterface org.aspectj.bridge.ISourceLocation.getLine:()I
            invokespecial org.aspectj.bridge.SourceLocation.<init>:(Ljava/io/File;I)V
            astore 5 /* peLoc */
        start local 5 // org.aspectj.bridge.SourceLocation peLoc
        13: .line 963
            aload 5 /* peLoc */
            aload 4 /* sl */
            invokeinterface org.aspectj.bridge.ISourceLocation.getOffset:()I
            invokevirtual org.aspectj.bridge.SourceLocation.setOffset:(I)V
        14: .line 964
            new org.aspectj.asm.internal.ProgramElement
            dup
            aload 0 /* asm */
            aload 3 /* shadow */
            invokevirtual org.aspectj.weaver.Shadow.toString:()Ljava/lang/String;
            getstatic org.aspectj.asm.IProgramElement$Kind.CODE:Lorg/aspectj/asm/IProgramElement$Kind;
            aload 5 /* peLoc */
            iconst_0
            aconst_null
            aconst_null
            invokespecial org.aspectj.asm.internal.ProgramElement.<init>:(Lorg/aspectj/asm/AsmManager;Ljava/lang/String;Lorg/aspectj/asm/IProgramElement$Kind;Lorg/aspectj/bridge/ISourceLocation;ILjava/lang/String;Ljava/util/List;)V
            astore 6 /* peNode */
        start local 6 // org.aspectj.asm.IProgramElement peNode
        15: .line 970
            iconst_0
            istore 7 /* numberOfChildrenWithThisName */
        start local 7 // int numberOfChildrenWithThisName
        16: .line 971
            aload 1 /* enclosingNode */
            invokeinterface org.aspectj.asm.IProgramElement.getChildren:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 9
            goto 20
      StackMap locals: org.aspectj.asm.AsmManager org.aspectj.asm.IProgramElement org.aspectj.weaver.Member org.aspectj.weaver.Shadow org.aspectj.bridge.ISourceLocation org.aspectj.bridge.SourceLocation org.aspectj.asm.IProgramElement int top java.util.Iterator
      StackMap stack:
        17: aload 9
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.aspectj.asm.IProgramElement
            astore 8 /* child */
        start local 8 // org.aspectj.asm.IProgramElement child
        18: .line 972
            aload 8 /* child */
            invokeinterface org.aspectj.asm.IProgramElement.getName:()Ljava/lang/String;
            aload 3 /* shadow */
            invokevirtual org.aspectj.weaver.Shadow.toString:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 20
        19: .line 973
            iinc 7 /* numberOfChildrenWithThisName */ 1
        end local 8 // org.aspectj.asm.IProgramElement child
        20: .line 971
      StackMap locals:
      StackMap stack:
            aload 9
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 17
        21: .line 976
            aload 6 /* peNode */
            new java.lang.StringBuilder
            dup
            aload 2 /* shadowSig */
            invokeinterface org.aspectj.weaver.Member.getName:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "!"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 7 /* numberOfChildrenWithThisName */
            iconst_1
            iadd
            invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface org.aspectj.asm.IProgramElement.setBytecodeName:(Ljava/lang/String;)V
        22: .line 977
            aload 6 /* peNode */
            aload 2 /* shadowSig */
            invokeinterface org.aspectj.weaver.Member.getSignature:()Ljava/lang/String;
            invokeinterface org.aspectj.asm.IProgramElement.setBytecodeSignature:(Ljava/lang/String;)V
        23: .line 978
            aload 1 /* enclosingNode */
            aload 6 /* peNode */
            invokeinterface org.aspectj.asm.IProgramElement.addChild:(Lorg/aspectj/asm/IProgramElement;)V
        24: .line 979
            aload 6 /* peNode */
            areturn
        end local 7 // int numberOfChildrenWithThisName
        end local 6 // org.aspectj.asm.IProgramElement peNode
        end local 5 // org.aspectj.bridge.SourceLocation peLoc
        end local 4 // org.aspectj.bridge.ISourceLocation sl
        end local 3 // org.aspectj.weaver.Shadow shadow
        end local 2 // org.aspectj.weaver.Member shadowSig
        end local 1 // org.aspectj.asm.IProgramElement enclosingNode
        end local 0 // org.aspectj.asm.AsmManager asm
      LocalVariableTable:
        Start  End  Slot                          Name  Signature
            0   25     0                           asm  Lorg/aspectj/asm/AsmManager;
            0   25     1                 enclosingNode  Lorg/aspectj/asm/IProgramElement;
            0   25     2                     shadowSig  Lorg/aspectj/weaver/Member;
            0   25     3                        shadow  Lorg/aspectj/weaver/Shadow;
            1   11     4                            it  Ljava/util/Iterator;
            3   10     5                          node  Lorg/aspectj/asm/IProgramElement;
            4   10     6                          excl  I
           12   25     4                            sl  Lorg/aspectj/bridge/ISourceLocation;
           13   25     5                         peLoc  Lorg/aspectj/bridge/SourceLocation;
           15   25     6                        peNode  Lorg/aspectj/asm/IProgramElement;
           16   25     7  numberOfChildrenWithThisName  I
           18   20     8                         child  Lorg/aspectj/asm/IProgramElement;
    MethodParameters:
               Name  Flags
      asm            
      enclosingNode  
      shadowSig      
      shadow         

  private static org.aspectj.asm.IProgramElement lookupMember(org.aspectj.asm.IHierarchy, org.aspectj.weaver.UnresolvedType, org.aspectj.weaver.Member);
    descriptor: (Lorg/aspectj/asm/IHierarchy;Lorg/aspectj/weaver/UnresolvedType;Lorg/aspectj/weaver/Member;)Lorg/aspectj/asm/IProgramElement;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // org.aspectj.asm.IHierarchy model
        start local 1 // org.aspectj.weaver.UnresolvedType declaringType
        start local 2 // org.aspectj.weaver.Member member
         0: .line 983
            aload 0 /* model */
            aload 1 /* declaringType */
            invokevirtual org.aspectj.weaver.UnresolvedType.getPackageName:()Ljava/lang/String;
            aload 1 /* declaringType */
            invokevirtual org.aspectj.weaver.UnresolvedType.getClassName:()Ljava/lang/String;
            invokeinterface org.aspectj.asm.IHierarchy.findElementForType:(Ljava/lang/String;Ljava/lang/String;)Lorg/aspectj/asm/IProgramElement;
            astore 3 /* typeElement */
        start local 3 // org.aspectj.asm.IProgramElement typeElement
         1: .line 984
            aload 3 /* typeElement */
            ifnonnull 3
         2: .line 985
            aconst_null
            areturn
         3: .line 987
      StackMap locals: org.aspectj.asm.IProgramElement
      StackMap stack:
            aload 3 /* typeElement */
            invokeinterface org.aspectj.asm.IProgramElement.getChildren:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 4 /* it */
        start local 4 // java.util.Iterator it
         4: goto 8
         5: .line 988
      StackMap locals: java.util.Iterator
      StackMap stack:
            aload 4 /* it */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.aspectj.asm.IProgramElement
            astore 5 /* element */
        start local 5 // org.aspectj.asm.IProgramElement element
         6: .line 989
            aload 2 /* member */
            invokeinterface org.aspectj.weaver.Member.getName:()Ljava/lang/String;
            aload 5 /* element */
            invokeinterface org.aspectj.asm.IProgramElement.getBytecodeName:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 8
            aload 2 /* member */
            invokeinterface org.aspectj.weaver.Member.getSignature:()Ljava/lang/String;
            aload 5 /* element */
            invokeinterface org.aspectj.asm.IProgramElement.getBytecodeSignature:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 8
         7: .line 990
            aload 5 /* element */
            areturn
        end local 5 // org.aspectj.asm.IProgramElement element
         8: .line 987
      StackMap locals:
      StackMap stack:
            aload 4 /* it */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
        end local 4 // java.util.Iterator it
         9: .line 994
            aload 3 /* typeElement */
            areturn
        end local 3 // org.aspectj.asm.IProgramElement typeElement
        end local 2 // org.aspectj.weaver.Member member
        end local 1 // org.aspectj.weaver.UnresolvedType declaringType
        end local 0 // org.aspectj.asm.IHierarchy model
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   10     0          model  Lorg/aspectj/asm/IHierarchy;
            0   10     1  declaringType  Lorg/aspectj/weaver/UnresolvedType;
            0   10     2         member  Lorg/aspectj/weaver/Member;
            1   10     3    typeElement  Lorg/aspectj/asm/IProgramElement;
            4    9     4             it  Ljava/util/Iterator;
            6    8     5        element  Lorg/aspectj/asm/IProgramElement;
    MethodParameters:
               Name  Flags
      model          
      declaringType  
      member         

  public static void addDeclareAnnotationMethodRelationship(org.aspectj.bridge.ISourceLocation, java.lang.String, org.aspectj.weaver.ResolvedMember, org.aspectj.asm.AsmManager);
    descriptor: (Lorg/aspectj/bridge/ISourceLocation;Ljava/lang/String;Lorg/aspectj/weaver/ResolvedMember;Lorg/aspectj/asm/AsmManager;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=18, args_size=4
        start local 0 // org.aspectj.bridge.ISourceLocation sourceLocation
        start local 1 // java.lang.String affectedTypeName
        start local 2 // org.aspectj.weaver.ResolvedMember affectedMethod
        start local 3 // org.aspectj.asm.AsmManager model
         0: .line 1003
            aload 3 /* model */
            ifnonnull 2
         1: .line 1004
            return
         2: .line 1007
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 4 /* pkg */
        start local 4 // java.lang.String pkg
         3: .line 1008
            aload 1 /* affectedTypeName */
            astore 5 /* type */
        start local 5 // java.lang.String type
         4: .line 1009
            aload 1 /* affectedTypeName */
            ldc "."
            invokevirtual java.lang.String.lastIndexOf:(Ljava/lang/String;)I
            istore 6 /* packageSeparator */
        start local 6 // int packageSeparator
         5: .line 1010
            iload 6 /* packageSeparator */
            iconst_m1
            if_icmpeq 8
         6: .line 1011
            aload 1 /* affectedTypeName */
            iconst_0
            iload 6 /* packageSeparator */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 4 /* pkg */
         7: .line 1012
            aload 1 /* affectedTypeName */
            iload 6 /* packageSeparator */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 5 /* type */
         8: .line 1015
      StackMap locals: java.lang.String java.lang.String int
      StackMap stack:
            aload 3 /* model */
            invokevirtual org.aspectj.asm.AsmManager.getHierarchy:()Lorg/aspectj/asm/IHierarchy;
            astore 7 /* hierarchy */
        start local 7 // org.aspectj.asm.IHierarchy hierarchy
         9: .line 1017
            aload 7 /* hierarchy */
            aload 4 /* pkg */
            aload 5 /* type */
            invokeinterface org.aspectj.asm.IHierarchy.findElementForType:(Ljava/lang/String;Ljava/lang/String;)Lorg/aspectj/asm/IProgramElement;
            astore 8 /* typeElem */
        start local 8 // org.aspectj.asm.IProgramElement typeElem
        10: .line 1018
            aload 8 /* typeElem */
            ifnonnull 12
        11: .line 1019
            return
        12: .line 1021
      StackMap locals: org.aspectj.asm.IHierarchy org.aspectj.asm.IProgramElement
      StackMap stack:
            aload 8 /* typeElem */
            invokeinterface org.aspectj.asm.IProgramElement.getKind:()Lorg/aspectj/asm/IProgramElement$Kind;
            invokevirtual org.aspectj.asm.IProgramElement$Kind.isType:()Z
            ifne 14
        13: .line 1022
            new java.lang.IllegalStateException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Did not find a type element, found a "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 8 /* typeElem */
            invokeinterface org.aspectj.asm.IProgramElement.getKind:()Lorg/aspectj/asm/IProgramElement$Kind;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " element"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
        14: .line 1025
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc "("
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            astore 9 /* parmString */
        start local 9 // java.lang.StringBuilder parmString
        15: .line 1026
            aload 2 /* affectedMethod */
            invokeinterface org.aspectj.weaver.ResolvedMember.getParameterTypes:()[Lorg/aspectj/weaver/UnresolvedType;
            astore 10 /* args */
        start local 10 // org.aspectj.weaver.UnresolvedType[] args
        16: .line 1027
            iconst_0
            istore 11 /* i */
        start local 11 // int i
        17: goto 22
        18: .line 1028
      StackMap locals: java.lang.StringBuilder org.aspectj.weaver.UnresolvedType[] int
      StackMap stack:
            aload 9 /* parmString */
            aload 10 /* args */
            iload 11 /* i */
            aaload
            invokevirtual org.aspectj.weaver.UnresolvedType.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        19: .line 1029
            iload 11 /* i */
            iconst_1
            iadd
            aload 10 /* args */
            arraylength
            if_icmpge 21
        20: .line 1030
            aload 9 /* parmString */
            ldc ","
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        21: .line 1027
      StackMap locals:
      StackMap stack:
            iinc 11 /* i */ 1
      StackMap locals:
      StackMap stack:
        22: iload 11 /* i */
            aload 10 /* args */
            arraylength
            if_icmplt 18
        end local 11 // int i
        23: .line 1033
            aload 9 /* parmString */
            ldc ")"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        24: .line 1034
            aconst_null
            astore 11 /* methodElem */
        start local 11 // org.aspectj.asm.IProgramElement methodElem
        25: .line 1036
            aload 2 /* affectedMethod */
            invokeinterface org.aspectj.weaver.ResolvedMember.getName:()Ljava/lang/String;
            ldc "<init>"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 30
        26: .line 1038
            aload 7 /* hierarchy */
            aload 8 /* typeElem */
            getstatic org.aspectj.asm.IProgramElement$Kind.CONSTRUCTOR:Lorg/aspectj/asm/IProgramElement$Kind;
            new java.lang.StringBuilder
            dup
            aload 5 /* type */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 9 /* parmString */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface org.aspectj.asm.IHierarchy.findElementForSignature:(Lorg/aspectj/asm/IProgramElement;Lorg/aspectj/asm/IProgramElement$Kind;Ljava/lang/String;)Lorg/aspectj/asm/IProgramElement;
            astore 11 /* methodElem */
        27: .line 1039
            aload 11 /* methodElem */
            ifnonnull 33
            aload 10 /* args */
            arraylength
            ifne 33
        28: .line 1040
            aload 8 /* typeElem */
            astore 11 /* methodElem */
        29: .line 1042
            goto 33
        30: .line 1044
      StackMap locals: org.aspectj.bridge.ISourceLocation java.lang.String org.aspectj.weaver.ResolvedMember org.aspectj.asm.AsmManager java.lang.String java.lang.String int org.aspectj.asm.IHierarchy org.aspectj.asm.IProgramElement java.lang.StringBuilder org.aspectj.weaver.UnresolvedType[] org.aspectj.asm.IProgramElement
      StackMap stack:
            aload 7 /* hierarchy */
            aload 8 /* typeElem */
            getstatic org.aspectj.asm.IProgramElement$Kind.METHOD:Lorg/aspectj/asm/IProgramElement$Kind;
            new java.lang.StringBuilder
            dup
            aload 2 /* affectedMethod */
            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
        31: .line 1045
            aload 9 /* parmString */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        32: .line 1044
            invokeinterface org.aspectj.asm.IHierarchy.findElementForSignature:(Lorg/aspectj/asm/IProgramElement;Lorg/aspectj/asm/IProgramElement$Kind;Ljava/lang/String;)Lorg/aspectj/asm/IProgramElement;
            astore 11 /* methodElem */
        33: .line 1048
      StackMap locals:
      StackMap stack:
            aload 11 /* methodElem */
            ifnonnull 35
        34: .line 1049
            return
        35: .line 1053
      StackMap locals:
      StackMap stack:
            aload 11 /* methodElem */
            invokeinterface org.aspectj.asm.IProgramElement.getHandleIdentifier:()Ljava/lang/String;
            astore 12 /* targetHandle */
        start local 12 // java.lang.String targetHandle
        36: .line 1054
            aload 12 /* targetHandle */
            ifnonnull 38
        37: .line 1055
            return
        38: .line 1058
      StackMap locals: java.lang.String
      StackMap stack:
            aload 7 /* hierarchy */
            aload 0 /* sourceLocation */
            invokeinterface org.aspectj.asm.IHierarchy.findElementForSourceLine:(Lorg/aspectj/bridge/ISourceLocation;)Lorg/aspectj/asm/IProgramElement;
            astore 13 /* sourceNode */
        start local 13 // org.aspectj.asm.IProgramElement sourceNode
        39: .line 1059
            aload 13 /* sourceNode */
            invokeinterface org.aspectj.asm.IProgramElement.getHandleIdentifier:()Ljava/lang/String;
            astore 14 /* sourceHandle */
        start local 14 // java.lang.String sourceHandle
        40: .line 1060
            aload 14 /* sourceHandle */
            ifnonnull 42
        41: .line 1061
            return
        42: .line 1064
      StackMap locals: org.aspectj.asm.IProgramElement java.lang.String
      StackMap stack:
            aload 3 /* model */
            invokevirtual org.aspectj.asm.AsmManager.getRelationshipMap:()Lorg/aspectj/asm/IRelationshipMap;
            astore 15 /* mapper */
        start local 15 // org.aspectj.asm.IRelationshipMap mapper
        43: .line 1065
            aload 15 /* mapper */
            aload 14 /* sourceHandle */
            getstatic org.aspectj.asm.IRelationship$Kind.DECLARE_INTER_TYPE:Lorg/aspectj/asm/IRelationship$Kind;
            ldc "annotates"
            iconst_0
            iconst_1
            invokeinterface org.aspectj.asm.IRelationshipMap.get:(Ljava/lang/String;Lorg/aspectj/asm/IRelationship$Kind;Ljava/lang/String;ZZ)Lorg/aspectj/asm/IRelationship;
            astore 16 /* foreward */
        start local 16 // org.aspectj.asm.IRelationship foreward
        44: .line 1066
            aload 16 /* foreward */
            aload 12 /* targetHandle */
            invokeinterface org.aspectj.asm.IRelationship.addTarget:(Ljava/lang/String;)V
        45: .line 1068
            aload 15 /* mapper */
            aload 12 /* targetHandle */
            getstatic org.aspectj.asm.IRelationship$Kind.DECLARE_INTER_TYPE:Lorg/aspectj/asm/IRelationship$Kind;
            ldc "annotated by"
            iconst_0
            iconst_1
            invokeinterface org.aspectj.asm.IRelationshipMap.get:(Ljava/lang/String;Lorg/aspectj/asm/IRelationship$Kind;Ljava/lang/String;ZZ)Lorg/aspectj/asm/IRelationship;
            astore 17 /* back */
        start local 17 // org.aspectj.asm.IRelationship back
        46: .line 1069
            aload 17 /* back */
            aload 14 /* sourceHandle */
            invokeinterface org.aspectj.asm.IRelationship.addTarget:(Ljava/lang/String;)V
        end local 17 // org.aspectj.asm.IRelationship back
        end local 16 // org.aspectj.asm.IRelationship foreward
        end local 15 // org.aspectj.asm.IRelationshipMap mapper
        end local 14 // java.lang.String sourceHandle
        end local 13 // org.aspectj.asm.IProgramElement sourceNode
        end local 12 // java.lang.String targetHandle
        47: .line 1070
            goto 50
      StackMap locals: org.aspectj.bridge.ISourceLocation java.lang.String org.aspectj.weaver.ResolvedMember org.aspectj.asm.AsmManager java.lang.String java.lang.String int org.aspectj.asm.IHierarchy org.aspectj.asm.IProgramElement java.lang.StringBuilder org.aspectj.weaver.UnresolvedType[] org.aspectj.asm.IProgramElement
      StackMap stack: java.lang.Throwable
        48: astore 12 /* t */
        start local 12 // java.lang.Throwable t
        49: .line 1072
            aload 12 /* t */
            invokevirtual java.lang.Throwable.printStackTrace:()V
        end local 12 // java.lang.Throwable t
        50: .line 1075
      StackMap locals:
      StackMap stack:
            return
        end local 11 // org.aspectj.asm.IProgramElement methodElem
        end local 10 // org.aspectj.weaver.UnresolvedType[] args
        end local 9 // java.lang.StringBuilder parmString
        end local 8 // org.aspectj.asm.IProgramElement typeElem
        end local 7 // org.aspectj.asm.IHierarchy hierarchy
        end local 6 // int packageSeparator
        end local 5 // java.lang.String type
        end local 4 // java.lang.String pkg
        end local 3 // org.aspectj.asm.AsmManager model
        end local 2 // org.aspectj.weaver.ResolvedMember affectedMethod
        end local 1 // java.lang.String affectedTypeName
        end local 0 // org.aspectj.bridge.ISourceLocation sourceLocation
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   51     0    sourceLocation  Lorg/aspectj/bridge/ISourceLocation;
            0   51     1  affectedTypeName  Ljava/lang/String;
            0   51     2    affectedMethod  Lorg/aspectj/weaver/ResolvedMember;
            0   51     3             model  Lorg/aspectj/asm/AsmManager;
            3   51     4               pkg  Ljava/lang/String;
            4   51     5              type  Ljava/lang/String;
            5   51     6  packageSeparator  I
            9   51     7         hierarchy  Lorg/aspectj/asm/IHierarchy;
           10   51     8          typeElem  Lorg/aspectj/asm/IProgramElement;
           15   51     9        parmString  Ljava/lang/StringBuilder;
           16   51    10              args  [Lorg/aspectj/weaver/UnresolvedType;
           17   23    11                 i  I
           25   51    11        methodElem  Lorg/aspectj/asm/IProgramElement;
           36   47    12      targetHandle  Ljava/lang/String;
           39   47    13        sourceNode  Lorg/aspectj/asm/IProgramElement;
           40   47    14      sourceHandle  Ljava/lang/String;
           43   47    15            mapper  Lorg/aspectj/asm/IRelationshipMap;
           44   47    16          foreward  Lorg/aspectj/asm/IRelationship;
           46   47    17              back  Lorg/aspectj/asm/IRelationship;
           49   50    12                 t  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
          35    37      48  Class java.lang.Throwable
          38    41      48  Class java.lang.Throwable
          42    47      48  Class java.lang.Throwable
    MethodParameters:
                  Name  Flags
      sourceLocation    
      affectedTypeName  
      affectedMethod    
      model             

  public static void addDeclareAnnotationFieldRelationship(org.aspectj.asm.AsmManager, org.aspectj.bridge.ISourceLocation, java.lang.String, org.aspectj.weaver.ResolvedMember, boolean);
    descriptor: (Lorg/aspectj/asm/AsmManager;Lorg/aspectj/bridge/ISourceLocation;Ljava/lang/String;Lorg/aspectj/weaver/ResolvedMember;Z)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=17, args_size=5
        start local 0 // org.aspectj.asm.AsmManager model
        start local 1 // org.aspectj.bridge.ISourceLocation declareLocation
        start local 2 // java.lang.String affectedTypeName
        start local 3 // org.aspectj.weaver.ResolvedMember affectedFieldName
        start local 4 // boolean isRemove
         0: .line 1083
            aload 0 /* model */
            ifnonnull 2
         1: .line 1084
            return
         2: .line 1087
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 5 /* pkg */
        start local 5 // java.lang.String pkg
         3: .line 1088
            aload 2 /* affectedTypeName */
            astore 6 /* type */
        start local 6 // java.lang.String type
         4: .line 1089
            aload 2 /* affectedTypeName */
            ldc "."
            invokevirtual java.lang.String.lastIndexOf:(Ljava/lang/String;)I
            istore 7 /* packageSeparator */
        start local 7 // int packageSeparator
         5: .line 1090
            iload 7 /* packageSeparator */
            iconst_m1
            if_icmpeq 8
         6: .line 1091
            aload 2 /* affectedTypeName */
            iconst_0
            iload 7 /* packageSeparator */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 5 /* pkg */
         7: .line 1092
            aload 2 /* affectedTypeName */
            iload 7 /* packageSeparator */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 6 /* type */
         8: .line 1094
      StackMap locals: java.lang.String java.lang.String int
      StackMap stack:
            aload 0 /* model */
            invokevirtual org.aspectj.asm.AsmManager.getHierarchy:()Lorg/aspectj/asm/IHierarchy;
            astore 8 /* hierarchy */
        start local 8 // org.aspectj.asm.IHierarchy hierarchy
         9: .line 1095
            aload 8 /* hierarchy */
            aload 5 /* pkg */
            aload 6 /* type */
            invokeinterface org.aspectj.asm.IHierarchy.findElementForType:(Ljava/lang/String;Ljava/lang/String;)Lorg/aspectj/asm/IProgramElement;
            astore 9 /* typeElem */
        start local 9 // org.aspectj.asm.IProgramElement typeElem
        10: .line 1096
            aload 9 /* typeElem */
            ifnonnull 12
        11: .line 1097
            return
        12: .line 1100
      StackMap locals: org.aspectj.asm.IHierarchy org.aspectj.asm.IProgramElement
      StackMap stack:
            aload 8 /* hierarchy */
            aload 9 /* typeElem */
            getstatic org.aspectj.asm.IProgramElement$Kind.FIELD:Lorg/aspectj/asm/IProgramElement$Kind;
        13: .line 1101
            aload 3 /* affectedFieldName */
            invokeinterface org.aspectj.weaver.ResolvedMember.getName:()Ljava/lang/String;
        14: .line 1100
            invokeinterface org.aspectj.asm.IHierarchy.findElementForSignature:(Lorg/aspectj/asm/IProgramElement;Lorg/aspectj/asm/IProgramElement$Kind;Ljava/lang/String;)Lorg/aspectj/asm/IProgramElement;
            astore 10 /* fieldElem */
        start local 10 // org.aspectj.asm.IProgramElement fieldElem
        15: .line 1102
            aload 10 /* fieldElem */
            ifnonnull 17
        16: .line 1103
            return
        17: .line 1106
      StackMap locals: org.aspectj.asm.IProgramElement
      StackMap stack:
            aload 10 /* fieldElem */
            invokeinterface org.aspectj.asm.IProgramElement.getHandleIdentifier:()Ljava/lang/String;
            astore 11 /* targetHandle */
        start local 11 // java.lang.String targetHandle
        18: .line 1107
            aload 11 /* targetHandle */
            ifnonnull 20
        19: .line 1108
            return
        20: .line 1111
      StackMap locals: java.lang.String
      StackMap stack:
            aload 8 /* hierarchy */
            aload 1 /* declareLocation */
            invokeinterface org.aspectj.asm.IHierarchy.findElementForSourceLine:(Lorg/aspectj/bridge/ISourceLocation;)Lorg/aspectj/asm/IProgramElement;
            astore 12 /* sourceNode */
        start local 12 // org.aspectj.asm.IProgramElement sourceNode
        21: .line 1112
            aload 12 /* sourceNode */
            invokeinterface org.aspectj.asm.IProgramElement.getHandleIdentifier:()Ljava/lang/String;
            astore 13 /* sourceHandle */
        start local 13 // java.lang.String sourceHandle
        22: .line 1113
            aload 13 /* sourceHandle */
            ifnonnull 24
        23: .line 1114
            return
        24: .line 1117
      StackMap locals: org.aspectj.asm.IProgramElement java.lang.String
      StackMap stack:
            aload 0 /* model */
            invokevirtual org.aspectj.asm.AsmManager.getRelationshipMap:()Lorg/aspectj/asm/IRelationshipMap;
            astore 14 /* relmap */
        start local 14 // org.aspectj.asm.IRelationshipMap relmap
        25: .line 1126
            aload 14 /* relmap */
            aload 13 /* sourceHandle */
            getstatic org.aspectj.asm.IRelationship$Kind.DECLARE_INTER_TYPE:Lorg/aspectj/asm/IRelationship$Kind;
            ldc "annotates"
            iconst_0
            iconst_1
            invokeinterface org.aspectj.asm.IRelationshipMap.get:(Ljava/lang/String;Lorg/aspectj/asm/IRelationship$Kind;Ljava/lang/String;ZZ)Lorg/aspectj/asm/IRelationship;
            astore 15 /* foreward */
        start local 15 // org.aspectj.asm.IRelationship foreward
        26: .line 1127
            aload 15 /* foreward */
            aload 11 /* targetHandle */
            invokeinterface org.aspectj.asm.IRelationship.addTarget:(Ljava/lang/String;)V
        27: .line 1128
            aload 14 /* relmap */
            aload 11 /* targetHandle */
            getstatic org.aspectj.asm.IRelationship$Kind.DECLARE_INTER_TYPE:Lorg/aspectj/asm/IRelationship$Kind;
            ldc "annotated by"
            iconst_0
            iconst_1
            invokeinterface org.aspectj.asm.IRelationshipMap.get:(Ljava/lang/String;Lorg/aspectj/asm/IRelationship$Kind;Ljava/lang/String;ZZ)Lorg/aspectj/asm/IRelationship;
            astore 16 /* back */
        start local 16 // org.aspectj.asm.IRelationship back
        28: .line 1129
            aload 16 /* back */
            aload 13 /* sourceHandle */
            invokeinterface org.aspectj.asm.IRelationship.addTarget:(Ljava/lang/String;)V
        29: .line 1131
            return
        end local 16 // org.aspectj.asm.IRelationship back
        end local 15 // org.aspectj.asm.IRelationship foreward
        end local 14 // org.aspectj.asm.IRelationshipMap relmap
        end local 13 // java.lang.String sourceHandle
        end local 12 // org.aspectj.asm.IProgramElement sourceNode
        end local 11 // java.lang.String targetHandle
        end local 10 // org.aspectj.asm.IProgramElement fieldElem
        end local 9 // org.aspectj.asm.IProgramElement typeElem
        end local 8 // org.aspectj.asm.IHierarchy hierarchy
        end local 7 // int packageSeparator
        end local 6 // java.lang.String type
        end local 5 // java.lang.String pkg
        end local 4 // boolean isRemove
        end local 3 // org.aspectj.weaver.ResolvedMember affectedFieldName
        end local 2 // java.lang.String affectedTypeName
        end local 1 // org.aspectj.bridge.ISourceLocation declareLocation
        end local 0 // org.aspectj.asm.AsmManager model
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   30     0              model  Lorg/aspectj/asm/AsmManager;
            0   30     1    declareLocation  Lorg/aspectj/bridge/ISourceLocation;
            0   30     2   affectedTypeName  Ljava/lang/String;
            0   30     3  affectedFieldName  Lorg/aspectj/weaver/ResolvedMember;
            0   30     4           isRemove  Z
            3   30     5                pkg  Ljava/lang/String;
            4   30     6               type  Ljava/lang/String;
            5   30     7   packageSeparator  I
            9   30     8          hierarchy  Lorg/aspectj/asm/IHierarchy;
           10   30     9           typeElem  Lorg/aspectj/asm/IProgramElement;
           15   30    10          fieldElem  Lorg/aspectj/asm/IProgramElement;
           18   30    11       targetHandle  Ljava/lang/String;
           21   30    12         sourceNode  Lorg/aspectj/asm/IProgramElement;
           22   30    13       sourceHandle  Ljava/lang/String;
           25   30    14             relmap  Lorg/aspectj/asm/IRelationshipMap;
           26   30    15           foreward  Lorg/aspectj/asm/IRelationship;
           28   30    16               back  Lorg/aspectj/asm/IRelationship;
    MethodParameters:
                   Name  Flags
      model              
      declareLocation    
      affectedTypeName   
      affectedFieldName  
      isRemove           
}
SourceFile: "AsmRelationshipProvider.java"
InnerClasses:
  public ExtraInformation = org.aspectj.asm.IProgramElement$ExtraInformation of org.aspectj.asm.IProgramElement
  public Kind = org.aspectj.asm.IProgramElement$Kind of org.aspectj.asm.IProgramElement
  public Kind = org.aspectj.asm.IRelationship$Kind of org.aspectj.asm.IRelationship
  public Kind = org.aspectj.weaver.Lint$Kind of org.aspectj.weaver.Lint
  public Kind = org.aspectj.weaver.ResolvedTypeMunger$Kind of org.aspectj.weaver.ResolvedTypeMunger
  public final Kind = org.aspectj.weaver.Shadow$Kind of org.aspectj.weaver.Shadow