public class org.aspectj.weaver.patterns.DeclareParents extends org.aspectj.weaver.patterns.Declare
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.aspectj.weaver.patterns.DeclareParents
  super_class: org.aspectj.weaver.patterns.Declare
{
  protected org.aspectj.weaver.patterns.TypePattern child;
    descriptor: Lorg/aspectj/weaver/patterns/TypePattern;
    flags: (0x0004) ACC_PROTECTED

  protected org.aspectj.weaver.patterns.TypePatternList parents;
    descriptor: Lorg/aspectj/weaver/patterns/TypePatternList;
    flags: (0x0004) ACC_PROTECTED

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

  protected boolean isExtends;
    descriptor: Z
    flags: (0x0004) ACC_PROTECTED

  public void <init>(org.aspectj.weaver.patterns.TypePattern, java.util.List<org.aspectj.weaver.patterns.TypePattern>, );
    descriptor: (Lorg/aspectj/weaver/patterns/TypePattern;Ljava/util/List;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.aspectj.weaver.patterns.DeclareParents this
        start local 1 // org.aspectj.weaver.patterns.TypePattern child
        start local 2 // java.util.List parents
        start local 3 // boolean isExtends
         0: .line 41
            aload 0 /* this */
            aload 1 /* child */
            new org.aspectj.weaver.patterns.TypePatternList
            dup
            aload 2 /* parents */
            invokespecial org.aspectj.weaver.patterns.TypePatternList.<init>:(Ljava/util/List;)V
            iload 3 /* isExtends */
            invokespecial org.aspectj.weaver.patterns.DeclareParents.<init>:(Lorg/aspectj/weaver/patterns/TypePattern;Lorg/aspectj/weaver/patterns/TypePatternList;Z)V
         1: .line 42
            return
        end local 3 // boolean isExtends
        end local 2 // java.util.List parents
        end local 1 // org.aspectj.weaver.patterns.TypePattern child
        end local 0 // org.aspectj.weaver.patterns.DeclareParents this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/aspectj/weaver/patterns/DeclareParents;
            0    2     1      child  Lorg/aspectj/weaver/patterns/TypePattern;
            0    2     2    parents  Ljava/util/List<Lorg/aspectj/weaver/patterns/TypePattern;>;
            0    2     3  isExtends  Z
    Signature: (Lorg/aspectj/weaver/patterns/TypePattern;Ljava/util/List<Lorg/aspectj/weaver/patterns/TypePattern;>;Z)V
    MethodParameters:
           Name  Flags
      child      
      parents    
      isExtends  

  protected void <init>(org.aspectj.weaver.patterns.TypePattern, org.aspectj.weaver.patterns.TypePatternList, boolean);
    descriptor: (Lorg/aspectj/weaver/patterns/TypePattern;Lorg/aspectj/weaver/patterns/TypePatternList;Z)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=5, args_size=4
        start local 0 // org.aspectj.weaver.patterns.DeclareParents this
        start local 1 // org.aspectj.weaver.patterns.TypePattern child
        start local 2 // org.aspectj.weaver.patterns.TypePatternList parents
        start local 3 // boolean isExtends
         0: .line 44
            aload 0 /* this */
            invokespecial org.aspectj.weaver.patterns.Declare.<init>:()V
         1: .line 37
            aload 0 /* this */
            iconst_0
            putfield org.aspectj.weaver.patterns.DeclareParents.isWildChild:Z
         2: .line 38
            aload 0 /* this */
            iconst_1
            putfield org.aspectj.weaver.patterns.DeclareParents.isExtends:Z
         3: .line 45
            aload 0 /* this */
            aload 1 /* child */
            putfield org.aspectj.weaver.patterns.DeclareParents.child:Lorg/aspectj/weaver/patterns/TypePattern;
         4: .line 46
            aload 0 /* this */
            aload 2 /* parents */
            putfield org.aspectj.weaver.patterns.DeclareParents.parents:Lorg/aspectj/weaver/patterns/TypePatternList;
         5: .line 47
            aload 0 /* this */
            iload 3 /* isExtends */
            putfield org.aspectj.weaver.patterns.DeclareParents.isExtends:Z
         6: .line 48
            new org.aspectj.weaver.patterns.WildChildFinder
            dup
            invokespecial org.aspectj.weaver.patterns.WildChildFinder.<init>:()V
            astore 4 /* wildChildFinder */
        start local 4 // org.aspectj.weaver.patterns.WildChildFinder wildChildFinder
         7: .line 49
            aload 1 /* child */
            aload 4 /* wildChildFinder */
            aconst_null
            invokevirtual org.aspectj.weaver.patterns.TypePattern.accept:(Lorg/aspectj/weaver/patterns/PatternNodeVisitor;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         8: .line 50
            aload 0 /* this */
            aload 4 /* wildChildFinder */
            invokevirtual org.aspectj.weaver.patterns.WildChildFinder.containedWildChild:()Z
            putfield org.aspectj.weaver.patterns.DeclareParents.isWildChild:Z
         9: .line 51
            return
        end local 4 // org.aspectj.weaver.patterns.WildChildFinder wildChildFinder
        end local 3 // boolean isExtends
        end local 2 // org.aspectj.weaver.patterns.TypePatternList parents
        end local 1 // org.aspectj.weaver.patterns.TypePattern child
        end local 0 // org.aspectj.weaver.patterns.DeclareParents this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   10     0             this  Lorg/aspectj/weaver/patterns/DeclareParents;
            0   10     1            child  Lorg/aspectj/weaver/patterns/TypePattern;
            0   10     2          parents  Lorg/aspectj/weaver/patterns/TypePatternList;
            0   10     3        isExtends  Z
            7   10     4  wildChildFinder  Lorg/aspectj/weaver/patterns/WildChildFinder;
    MethodParameters:
           Name  Flags
      child      
      parents    
      isExtends  

  public boolean match(org.aspectj.weaver.ResolvedType);
    descriptor: (Lorg/aspectj/weaver/ResolvedType;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.aspectj.weaver.patterns.DeclareParents this
        start local 1 // org.aspectj.weaver.ResolvedType typeX
         0: .line 54
            aload 0 /* this */
            getfield org.aspectj.weaver.patterns.DeclareParents.child:Lorg/aspectj/weaver/patterns/TypePattern;
            aload 1 /* typeX */
            invokevirtual org.aspectj.weaver.patterns.TypePattern.matchesStatically:(Lorg/aspectj/weaver/ResolvedType;)Z
            ifne 2
         1: .line 55
            iconst_0
            ireturn
         2: .line 57
      StackMap locals:
      StackMap stack:
            aload 1 /* typeX */
            invokevirtual org.aspectj.weaver.ResolvedType.getWorld:()Lorg/aspectj/weaver/World;
            invokevirtual org.aspectj.weaver.World.getLint:()Lorg/aspectj/weaver/Lint;
            getfield org.aspectj.weaver.Lint.typeNotExposedToWeaver:Lorg/aspectj/weaver/Lint$Kind;
            invokevirtual org.aspectj.weaver.Lint$Kind.isEnabled:()Z
            ifeq 4
            aload 1 /* typeX */
            invokevirtual org.aspectj.weaver.ResolvedType.isExposedToWeaver:()Z
            ifne 4
         3: .line 58
            aload 1 /* typeX */
            invokevirtual org.aspectj.weaver.ResolvedType.getWorld:()Lorg/aspectj/weaver/World;
            invokevirtual org.aspectj.weaver.World.getLint:()Lorg/aspectj/weaver/Lint;
            getfield org.aspectj.weaver.Lint.typeNotExposedToWeaver:Lorg/aspectj/weaver/Lint$Kind;
            aload 1 /* typeX */
            invokevirtual org.aspectj.weaver.ResolvedType.getName:()Ljava/lang/String;
            aload 0 /* this */
            invokevirtual org.aspectj.weaver.patterns.DeclareParents.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            invokevirtual org.aspectj.weaver.Lint$Kind.signal:(Ljava/lang/String;Lorg/aspectj/bridge/ISourceLocation;)V
         4: .line 61
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 1 // org.aspectj.weaver.ResolvedType typeX
        end local 0 // org.aspectj.weaver.patterns.DeclareParents this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Lorg/aspectj/weaver/patterns/DeclareParents;
            0    5     1  typeX  Lorg/aspectj/weaver/ResolvedType;
    MethodParameters:
       Name  Flags
      typeX  

  public java.lang.Object accept(org.aspectj.weaver.patterns.PatternNodeVisitor, java.lang.Object);
    descriptor: (Lorg/aspectj/weaver/patterns/PatternNodeVisitor;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.aspectj.weaver.patterns.DeclareParents this
        start local 1 // org.aspectj.weaver.patterns.PatternNodeVisitor visitor
        start local 2 // java.lang.Object data
         0: .line 66
            aload 1 /* visitor */
            aload 0 /* this */
            aload 2 /* data */
            invokeinterface org.aspectj.weaver.patterns.PatternNodeVisitor.visit:(Lorg/aspectj/weaver/patterns/DeclareParents;Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 2 // java.lang.Object data
        end local 1 // org.aspectj.weaver.patterns.PatternNodeVisitor visitor
        end local 0 // org.aspectj.weaver.patterns.DeclareParents this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/aspectj/weaver/patterns/DeclareParents;
            0    1     1  visitor  Lorg/aspectj/weaver/patterns/PatternNodeVisitor;
            0    1     2     data  Ljava/lang/Object;
    MethodParameters:
         Name  Flags
      visitor  
      data     

  public org.aspectj.weaver.patterns.Declare parameterizeWith(java.util.Map<java.lang.String, org.aspectj.weaver.UnresolvedType>, org.aspectj.weaver.World);
    descriptor: (Ljava/util/Map;Lorg/aspectj/weaver/World;)Lorg/aspectj/weaver/patterns/Declare;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=4, args_size=3
        start local 0 // org.aspectj.weaver.patterns.DeclareParents this
        start local 1 // java.util.Map typeVariableBindingMap
        start local 2 // org.aspectj.weaver.World w
         0: .line 71
            new org.aspectj.weaver.patterns.DeclareParents
            dup
            aload 0 /* this */
            getfield org.aspectj.weaver.patterns.DeclareParents.child:Lorg/aspectj/weaver/patterns/TypePattern;
            aload 1 /* typeVariableBindingMap */
            aload 2 /* w */
            invokevirtual org.aspectj.weaver.patterns.TypePattern.parameterizeWith:(Ljava/util/Map;Lorg/aspectj/weaver/World;)Lorg/aspectj/weaver/patterns/TypePattern;
            aload 0 /* this */
            getfield org.aspectj.weaver.patterns.DeclareParents.parents:Lorg/aspectj/weaver/patterns/TypePatternList;
         1: .line 72
            aload 1 /* typeVariableBindingMap */
            aload 2 /* w */
         2: .line 71
            invokevirtual org.aspectj.weaver.patterns.TypePatternList.parameterizeWith:(Ljava/util/Map;Lorg/aspectj/weaver/World;)Lorg/aspectj/weaver/patterns/TypePatternList;
         3: .line 72
            aload 0 /* this */
            getfield org.aspectj.weaver.patterns.DeclareParents.isExtends:Z
         4: .line 71
            invokespecial org.aspectj.weaver.patterns.DeclareParents.<init>:(Lorg/aspectj/weaver/patterns/TypePattern;Lorg/aspectj/weaver/patterns/TypePatternList;Z)V
            astore 3 /* ret */
        start local 3 // org.aspectj.weaver.patterns.DeclareParents ret
         5: .line 73
            aload 3 /* ret */
            aload 0 /* this */
            invokevirtual org.aspectj.weaver.patterns.DeclareParents.copyLocationFrom:(Lorg/aspectj/weaver/patterns/PatternNode;)V
         6: .line 74
            aload 3 /* ret */
            areturn
        end local 3 // org.aspectj.weaver.patterns.DeclareParents ret
        end local 2 // org.aspectj.weaver.World w
        end local 1 // java.util.Map typeVariableBindingMap
        end local 0 // org.aspectj.weaver.patterns.DeclareParents this
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0    7     0                    this  Lorg/aspectj/weaver/patterns/DeclareParents;
            0    7     1  typeVariableBindingMap  Ljava/util/Map<Ljava/lang/String;Lorg/aspectj/weaver/UnresolvedType;>;
            0    7     2                       w  Lorg/aspectj/weaver/World;
            5    7     3                     ret  Lorg/aspectj/weaver/patterns/DeclareParents;
    Signature: (Ljava/util/Map<Ljava/lang/String;Lorg/aspectj/weaver/UnresolvedType;>;Lorg/aspectj/weaver/World;)Lorg/aspectj/weaver/patterns/Declare;
    MethodParameters:
                        Name  Flags
      typeVariableBindingMap  
      w                       

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.aspectj.weaver.patterns.DeclareParents this
         0: .line 79
            new java.lang.StringBuffer
            dup
            invokespecial java.lang.StringBuffer.<init>:()V
            astore 1 /* buf */
        start local 1 // java.lang.StringBuffer buf
         1: .line 80
            aload 1 /* buf */
            ldc "declare parents: "
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         2: .line 81
            aload 1 /* buf */
            aload 0 /* this */
            getfield org.aspectj.weaver.patterns.DeclareParents.child:Lorg/aspectj/weaver/patterns/TypePattern;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/Object;)Ljava/lang/StringBuffer;
            pop
         3: .line 82
            aload 1 /* buf */
            aload 0 /* this */
            getfield org.aspectj.weaver.patterns.DeclareParents.isExtends:Z
            ifeq 4
            ldc " extends "
            goto 5
      StackMap locals: org.aspectj.weaver.patterns.DeclareParents java.lang.StringBuffer
      StackMap stack: java.lang.StringBuffer
         4: ldc " implements "
      StackMap locals: org.aspectj.weaver.patterns.DeclareParents java.lang.StringBuffer
      StackMap stack: java.lang.StringBuffer java.lang.String
         5: invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         6: .line 83
            aload 1 /* buf */
            aload 0 /* this */
            getfield org.aspectj.weaver.patterns.DeclareParents.parents:Lorg/aspectj/weaver/patterns/TypePatternList;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/Object;)Ljava/lang/StringBuffer;
            pop
         7: .line 84
            aload 1 /* buf */
            ldc ";"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         8: .line 85
            aload 1 /* buf */
            invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
            areturn
        end local 1 // java.lang.StringBuffer buf
        end local 0 // org.aspectj.weaver.patterns.DeclareParents this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lorg/aspectj/weaver/patterns/DeclareParents;
            1    9     1   buf  Ljava/lang/StringBuffer;

  public boolean equals(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.aspectj.weaver.patterns.DeclareParents this
        start local 1 // java.lang.Object other
         0: .line 90
            aload 1 /* other */
            instanceof org.aspectj.weaver.patterns.DeclareParents
            ifne 2
         1: .line 91
            iconst_0
            ireturn
         2: .line 93
      StackMap locals:
      StackMap stack:
            aload 1 /* other */
            checkcast org.aspectj.weaver.patterns.DeclareParents
            astore 2 /* o */
        start local 2 // org.aspectj.weaver.patterns.DeclareParents o
         3: .line 94
            aload 2 /* o */
            getfield org.aspectj.weaver.patterns.DeclareParents.child:Lorg/aspectj/weaver/patterns/TypePattern;
            aload 0 /* this */
            getfield org.aspectj.weaver.patterns.DeclareParents.child:Lorg/aspectj/weaver/patterns/TypePattern;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 4
            aload 2 /* o */
            getfield org.aspectj.weaver.patterns.DeclareParents.parents:Lorg/aspectj/weaver/patterns/TypePatternList;
            aload 0 /* this */
            getfield org.aspectj.weaver.patterns.DeclareParents.parents:Lorg/aspectj/weaver/patterns/TypePatternList;
            invokevirtual org.aspectj.weaver.patterns.TypePatternList.equals:(Ljava/lang/Object;)Z
            ifeq 4
            iconst_1
            ireturn
      StackMap locals: org.aspectj.weaver.patterns.DeclareParents
      StackMap stack:
         4: iconst_0
            ireturn
        end local 2 // org.aspectj.weaver.patterns.DeclareParents o
        end local 1 // java.lang.Object other
        end local 0 // org.aspectj.weaver.patterns.DeclareParents this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Lorg/aspectj/weaver/patterns/DeclareParents;
            0    5     1  other  Ljava/lang/Object;
            3    5     2      o  Lorg/aspectj/weaver/patterns/DeclareParents;
    MethodParameters:
       Name  Flags
      other  

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.aspectj.weaver.patterns.DeclareParents this
         0: .line 100
            bipush 23
            istore 1 /* result */
        start local 1 // int result
         1: .line 101
            bipush 37
            iload 1 /* result */
            imul
            aload 0 /* this */
            getfield org.aspectj.weaver.patterns.DeclareParents.child:Lorg/aspectj/weaver/patterns/TypePattern;
            invokevirtual java.lang.Object.hashCode:()I
            iadd
            istore 1 /* result */
         2: .line 102
            bipush 37
            iload 1 /* result */
            imul
            aload 0 /* this */
            getfield org.aspectj.weaver.patterns.DeclareParents.parents:Lorg/aspectj/weaver/patterns/TypePatternList;
            invokevirtual org.aspectj.weaver.patterns.TypePatternList.hashCode:()I
            iadd
            istore 1 /* result */
         3: .line 103
            iload 1 /* result */
            ireturn
        end local 1 // int result
        end local 0 // org.aspectj.weaver.patterns.DeclareParents this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Lorg/aspectj/weaver/patterns/DeclareParents;
            1    4     1  result  I

  public void write(org.aspectj.weaver.CompressingDataOutputStream);
    descriptor: (Lorg/aspectj/weaver/CompressingDataOutputStream;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.aspectj.weaver.patterns.DeclareParents this
        start local 1 // org.aspectj.weaver.CompressingDataOutputStream s
         0: .line 108
            aload 1 /* s */
            iconst_2
            invokevirtual org.aspectj.weaver.CompressingDataOutputStream.writeByte:(I)V
         1: .line 109
            aload 0 /* this */
            getfield org.aspectj.weaver.patterns.DeclareParents.child:Lorg/aspectj/weaver/patterns/TypePattern;
            aload 1 /* s */
            invokevirtual org.aspectj.weaver.patterns.TypePattern.write:(Lorg/aspectj/weaver/CompressingDataOutputStream;)V
         2: .line 110
            aload 0 /* this */
            getfield org.aspectj.weaver.patterns.DeclareParents.parents:Lorg/aspectj/weaver/patterns/TypePatternList;
            aload 1 /* s */
            invokevirtual org.aspectj.weaver.patterns.TypePatternList.write:(Lorg/aspectj/weaver/CompressingDataOutputStream;)V
         3: .line 111
            aload 0 /* this */
            aload 1 /* s */
            invokevirtual org.aspectj.weaver.patterns.DeclareParents.writeLocation:(Ljava/io/DataOutputStream;)V
         4: .line 112
            return
        end local 1 // org.aspectj.weaver.CompressingDataOutputStream s
        end local 0 // org.aspectj.weaver.patterns.DeclareParents this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/aspectj/weaver/patterns/DeclareParents;
            0    5     1     s  Lorg/aspectj/weaver/CompressingDataOutputStream;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      s     

  public static org.aspectj.weaver.patterns.Declare read(org.aspectj.weaver.VersionedDataInputStream, org.aspectj.weaver.ISourceContext);
    descriptor: (Lorg/aspectj/weaver/VersionedDataInputStream;Lorg/aspectj/weaver/ISourceContext;)Lorg/aspectj/weaver/patterns/Declare;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.aspectj.weaver.VersionedDataInputStream s
        start local 1 // org.aspectj.weaver.ISourceContext context
         0: .line 115
            new org.aspectj.weaver.patterns.DeclareParents
            dup
            aload 0 /* s */
            aload 1 /* context */
            invokestatic org.aspectj.weaver.patterns.TypePattern.read:(Lorg/aspectj/weaver/VersionedDataInputStream;Lorg/aspectj/weaver/ISourceContext;)Lorg/aspectj/weaver/patterns/TypePattern;
            aload 0 /* s */
            aload 1 /* context */
            invokestatic org.aspectj.weaver.patterns.TypePatternList.read:(Lorg/aspectj/weaver/VersionedDataInputStream;Lorg/aspectj/weaver/ISourceContext;)Lorg/aspectj/weaver/patterns/TypePatternList;
            iconst_1
            invokespecial org.aspectj.weaver.patterns.DeclareParents.<init>:(Lorg/aspectj/weaver/patterns/TypePattern;Lorg/aspectj/weaver/patterns/TypePatternList;Z)V
            astore 2 /* ret */
        start local 2 // org.aspectj.weaver.patterns.DeclareParents ret
         1: .line 116
            aload 2 /* ret */
            aload 1 /* context */
            aload 0 /* s */
            invokevirtual org.aspectj.weaver.patterns.DeclareParents.readLocation:(Lorg/aspectj/weaver/ISourceContext;Ljava/io/DataInputStream;)V
         2: .line 117
            aload 2 /* ret */
            areturn
        end local 2 // org.aspectj.weaver.patterns.DeclareParents ret
        end local 1 // org.aspectj.weaver.ISourceContext context
        end local 0 // org.aspectj.weaver.VersionedDataInputStream s
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0        s  Lorg/aspectj/weaver/VersionedDataInputStream;
            0    3     1  context  Lorg/aspectj/weaver/ISourceContext;
            1    3     2      ret  Lorg/aspectj/weaver/patterns/DeclareParents;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
         Name  Flags
      s        
      context  

  public boolean parentsIncludeInterface(org.aspectj.weaver.World);
    descriptor: (Lorg/aspectj/weaver/World;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.aspectj.weaver.patterns.DeclareParents this
        start local 1 // org.aspectj.weaver.World w
         0: .line 121
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         1: goto 5
         2: .line 122
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.weaver.patterns.DeclareParents.parents:Lorg/aspectj/weaver/patterns/TypePatternList;
            iload 2 /* 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;
            aload 1 /* w */
            invokevirtual org.aspectj.weaver.UnresolvedType.resolve:(Lorg/aspectj/weaver/World;)Lorg/aspectj/weaver/ResolvedType;
            invokevirtual org.aspectj.weaver.ResolvedType.isInterface:()Z
            ifeq 4
         3: .line 123
            iconst_1
            ireturn
         4: .line 121
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 2 /* i */
            aload 0 /* this */
            getfield org.aspectj.weaver.patterns.DeclareParents.parents:Lorg/aspectj/weaver/patterns/TypePatternList;
            invokevirtual org.aspectj.weaver.patterns.TypePatternList.size:()I
            if_icmplt 2
        end local 2 // int i
         6: .line 126
            iconst_0
            ireturn
        end local 1 // org.aspectj.weaver.World w
        end local 0 // org.aspectj.weaver.patterns.DeclareParents this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lorg/aspectj/weaver/patterns/DeclareParents;
            0    7     1     w  Lorg/aspectj/weaver/World;
            1    6     2     i  I
    MethodParameters:
      Name  Flags
      w     

  public boolean parentsIncludeClass(org.aspectj.weaver.World);
    descriptor: (Lorg/aspectj/weaver/World;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.aspectj.weaver.patterns.DeclareParents this
        start local 1 // org.aspectj.weaver.World w
         0: .line 130
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         1: goto 5
         2: .line 131
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.weaver.patterns.DeclareParents.parents:Lorg/aspectj/weaver/patterns/TypePatternList;
            iload 2 /* 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;
            aload 1 /* w */
            invokevirtual org.aspectj.weaver.UnresolvedType.resolve:(Lorg/aspectj/weaver/World;)Lorg/aspectj/weaver/ResolvedType;
            invokevirtual org.aspectj.weaver.ResolvedType.isClass:()Z
            ifeq 4
         3: .line 132
            iconst_1
            ireturn
         4: .line 130
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 2 /* i */
            aload 0 /* this */
            getfield org.aspectj.weaver.patterns.DeclareParents.parents:Lorg/aspectj/weaver/patterns/TypePatternList;
            invokevirtual org.aspectj.weaver.patterns.TypePatternList.size:()I
            if_icmplt 2
        end local 2 // int i
         6: .line 135
            iconst_0
            ireturn
        end local 1 // org.aspectj.weaver.World w
        end local 0 // org.aspectj.weaver.patterns.DeclareParents this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lorg/aspectj/weaver/patterns/DeclareParents;
            0    7     1     w  Lorg/aspectj/weaver/World;
            1    6     2     i  I
    MethodParameters:
      Name  Flags
      w     

  public void resolve(org.aspectj.weaver.patterns.IScope);
    descriptor: (Lorg/aspectj/weaver/patterns/IScope;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=4, args_size=2
        start local 0 // org.aspectj.weaver.patterns.DeclareParents this
        start local 1 // org.aspectj.weaver.patterns.IScope scope
         0: .line 140
            aload 0 /* this */
            getfield org.aspectj.weaver.patterns.DeclareParents.child:Lorg/aspectj/weaver/patterns/TypePattern;
            aload 1 /* scope */
            getstatic org.aspectj.weaver.patterns.Bindings.NONE:Lorg/aspectj/weaver/patterns/Bindings;
            iconst_0
            iconst_0
            invokevirtual org.aspectj.weaver.patterns.TypePattern.resolveBindings:(Lorg/aspectj/weaver/patterns/IScope;Lorg/aspectj/weaver/patterns/Bindings;ZZ)Lorg/aspectj/weaver/patterns/TypePattern;
            astore 2 /* resolvedChild */
        start local 2 // org.aspectj.weaver.patterns.TypePattern resolvedChild
         1: .line 141
            aload 2 /* resolvedChild */
            aload 0 /* this */
            getfield org.aspectj.weaver.patterns.DeclareParents.child:Lorg/aspectj/weaver/patterns/TypePattern;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifne 6
         2: .line 142
            new org.aspectj.weaver.patterns.WildChildFinder
            dup
            invokespecial org.aspectj.weaver.patterns.WildChildFinder.<init>:()V
            astore 3 /* wildChildFinder */
        start local 3 // org.aspectj.weaver.patterns.WildChildFinder wildChildFinder
         3: .line 143
            aload 2 /* resolvedChild */
            aload 3 /* wildChildFinder */
            aconst_null
            invokevirtual org.aspectj.weaver.patterns.TypePattern.accept:(Lorg/aspectj/weaver/patterns/PatternNodeVisitor;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         4: .line 144
            aload 0 /* this */
            aload 3 /* wildChildFinder */
            invokevirtual org.aspectj.weaver.patterns.WildChildFinder.containedWildChild:()Z
            putfield org.aspectj.weaver.patterns.DeclareParents.isWildChild:Z
         5: .line 145
            aload 0 /* this */
            aload 2 /* resolvedChild */
            putfield org.aspectj.weaver.patterns.DeclareParents.child:Lorg/aspectj/weaver/patterns/TypePattern;
        end local 3 // org.aspectj.weaver.patterns.WildChildFinder wildChildFinder
         6: .line 147
      StackMap locals: org.aspectj.weaver.patterns.TypePattern
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.aspectj.weaver.patterns.DeclareParents.parents:Lorg/aspectj/weaver/patterns/TypePatternList;
            aload 1 /* scope */
            getstatic org.aspectj.weaver.patterns.Bindings.NONE:Lorg/aspectj/weaver/patterns/Bindings;
            iconst_0
            iconst_1
            invokevirtual org.aspectj.weaver.patterns.TypePatternList.resolveBindings:(Lorg/aspectj/weaver/patterns/IScope;Lorg/aspectj/weaver/patterns/Bindings;ZZ)Lorg/aspectj/weaver/patterns/TypePatternList;
            putfield org.aspectj.weaver.patterns.DeclareParents.parents:Lorg/aspectj/weaver/patterns/TypePatternList;
         7: .line 152
            return
        end local 2 // org.aspectj.weaver.patterns.TypePattern resolvedChild
        end local 1 // org.aspectj.weaver.patterns.IScope scope
        end local 0 // org.aspectj.weaver.patterns.DeclareParents this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    8     0             this  Lorg/aspectj/weaver/patterns/DeclareParents;
            0    8     1            scope  Lorg/aspectj/weaver/patterns/IScope;
            1    8     2    resolvedChild  Lorg/aspectj/weaver/patterns/TypePattern;
            3    6     3  wildChildFinder  Lorg/aspectj/weaver/patterns/WildChildFinder;
    MethodParameters:
       Name  Flags
      scope  

  public org.aspectj.weaver.patterns.TypePatternList getParents();
    descriptor: ()Lorg/aspectj/weaver/patterns/TypePatternList;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.aspectj.weaver.patterns.DeclareParents this
         0: .line 155
            aload 0 /* this */
            getfield org.aspectj.weaver.patterns.DeclareParents.parents:Lorg/aspectj/weaver/patterns/TypePatternList;
            areturn
        end local 0 // org.aspectj.weaver.patterns.DeclareParents this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/aspectj/weaver/patterns/DeclareParents;

  public org.aspectj.weaver.patterns.TypePattern getChild();
    descriptor: ()Lorg/aspectj/weaver/patterns/TypePattern;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.aspectj.weaver.patterns.DeclareParents this
         0: .line 159
            aload 0 /* this */
            getfield org.aspectj.weaver.patterns.DeclareParents.child:Lorg/aspectj/weaver/patterns/TypePattern;
            areturn
        end local 0 // org.aspectj.weaver.patterns.DeclareParents this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/aspectj/weaver/patterns/DeclareParents;

  public boolean isExtends();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.aspectj.weaver.patterns.DeclareParents this
         0: .line 164
            aload 0 /* this */
            getfield org.aspectj.weaver.patterns.DeclareParents.isExtends:Z
            ireturn
        end local 0 // org.aspectj.weaver.patterns.DeclareParents this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/aspectj/weaver/patterns/DeclareParents;

  public boolean isAdviceLike();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.aspectj.weaver.patterns.DeclareParents this
         0: .line 169
            iconst_0
            ireturn
        end local 0 // org.aspectj.weaver.patterns.DeclareParents this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/aspectj/weaver/patterns/DeclareParents;

  private org.aspectj.weaver.ResolvedType maybeGetNewParent(org.aspectj.weaver.ResolvedType, org.aspectj.weaver.patterns.TypePattern, org.aspectj.weaver.World, boolean);
    descriptor: (Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/weaver/patterns/TypePattern;Lorg/aspectj/weaver/World;Z)Lorg/aspectj/weaver/ResolvedType;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=8, args_size=5
        start local 0 // org.aspectj.weaver.patterns.DeclareParents this
        start local 1 // org.aspectj.weaver.ResolvedType targetType
        start local 2 // org.aspectj.weaver.patterns.TypePattern typePattern
        start local 3 // org.aspectj.weaver.World world
        start local 4 // boolean reportErrors
         0: .line 173
            aload 2 /* typePattern */
            getstatic org.aspectj.weaver.patterns.TypePattern.NO:Lorg/aspectj/weaver/patterns/TypePattern;
            if_acmpne 2
         1: .line 174
            aconst_null
            areturn
         2: .line 178
      StackMap locals:
      StackMap stack:
            aload 2 /* typePattern */
            invokevirtual org.aspectj.weaver.patterns.TypePattern.getExactType:()Lorg/aspectj/weaver/UnresolvedType;
            astore 5 /* iType */
        start local 5 // org.aspectj.weaver.UnresolvedType iType
         3: .line 179
            aload 5 /* iType */
            aload 3 /* world */
            invokevirtual org.aspectj.weaver.UnresolvedType.resolve:(Lorg/aspectj/weaver/World;)Lorg/aspectj/weaver/ResolvedType;
            astore 6 /* parentType */
        start local 6 // org.aspectj.weaver.ResolvedType parentType
         4: .line 181
            aload 1 /* targetType */
            aload 3 /* world */
            getstatic org.aspectj.weaver.UnresolvedType.OBJECT:Lorg/aspectj/weaver/UnresolvedType;
            invokevirtual org.aspectj.weaver.World.getCoreType:(Lorg/aspectj/weaver/UnresolvedType;)Lorg/aspectj/weaver/ResolvedType;
            invokevirtual org.aspectj.weaver.ResolvedType.equals:(Ljava/lang/Object;)Z
            ifeq 7
         5: .line 182
            aload 3 /* world */
            getstatic org.aspectj.bridge.IMessage.ERROR:Lorg/aspectj/bridge/IMessage$Kind;
            ldc "decpObject"
            invokestatic org.aspectj.weaver.WeaverMessages.format:(Ljava/lang/String;)Ljava/lang/String;
            aload 0 /* this */
            invokevirtual org.aspectj.weaver.patterns.DeclareParents.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            aconst_null
            invokevirtual org.aspectj.weaver.World.showMessage:(Lorg/aspectj/bridge/IMessage$Kind;Ljava/lang/String;Lorg/aspectj/bridge/ISourceLocation;Lorg/aspectj/bridge/ISourceLocation;)V
         6: .line 183
            aconst_null
            areturn
         7: .line 188
      StackMap locals: org.aspectj.weaver.UnresolvedType org.aspectj.weaver.ResolvedType
      StackMap stack:
            aload 6 /* parentType */
            invokevirtual org.aspectj.weaver.ResolvedType.isParameterizedType:()Z
            ifne 8
            aload 6 /* parentType */
            invokevirtual org.aspectj.weaver.ResolvedType.isRawType:()Z
            ifeq 11
         8: .line 190
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* targetType */
            aload 6 /* parentType */
            aload 3 /* world */
            invokevirtual org.aspectj.weaver.patterns.DeclareParents.verifyNoInheritedAlternateParameterization:(Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/weaver/World;)Z
            istore 7 /* isOK */
        start local 7 // boolean isOK
         9: .line 191
            iload 7 /* isOK */
            ifne 11
        10: .line 192
            aconst_null
            areturn
        end local 7 // boolean isOK
        11: .line 196
      StackMap locals:
      StackMap stack:
            aload 6 /* parentType */
            aload 1 /* targetType */
            invokevirtual org.aspectj.weaver.ResolvedType.isAssignableFrom:(Lorg/aspectj/weaver/ResolvedType;)Z
            ifeq 13
        12: .line 197
            aconst_null
            areturn
        13: .line 201
      StackMap locals:
      StackMap stack:
            iload 4 /* reportErrors */
            ifeq 15
            aload 0 /* this */
            getfield org.aspectj.weaver.patterns.DeclareParents.isWildChild:Z
            ifeq 15
            aload 1 /* targetType */
            invokevirtual org.aspectj.weaver.ResolvedType.isEnum:()Z
            ifeq 15
        14: .line 202
            aload 3 /* world */
            invokevirtual org.aspectj.weaver.World.getLint:()Lorg/aspectj/weaver/Lint;
            getfield org.aspectj.weaver.Lint.enumAsTargetForDecpIgnored:Lorg/aspectj/weaver/Lint$Kind;
            aload 1 /* targetType */
            invokevirtual org.aspectj.weaver.ResolvedType.toString:()Ljava/lang/String;
            aload 0 /* this */
            invokevirtual org.aspectj.weaver.patterns.DeclareParents.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            invokevirtual org.aspectj.weaver.Lint$Kind.signal:(Ljava/lang/String;Lorg/aspectj/bridge/ISourceLocation;)V
        15: .line 206
      StackMap locals:
      StackMap stack:
            iload 4 /* reportErrors */
            ifeq 17
            aload 0 /* this */
            getfield org.aspectj.weaver.patterns.DeclareParents.isWildChild:Z
            ifeq 17
            aload 1 /* targetType */
            invokevirtual org.aspectj.weaver.ResolvedType.isAnnotation:()Z
            ifeq 17
        16: .line 207
            aload 3 /* world */
            invokevirtual org.aspectj.weaver.World.getLint:()Lorg/aspectj/weaver/Lint;
            getfield org.aspectj.weaver.Lint.annotationAsTargetForDecpIgnored:Lorg/aspectj/weaver/Lint$Kind;
            aload 1 /* targetType */
            invokevirtual org.aspectj.weaver.ResolvedType.toString:()Ljava/lang/String;
            aload 0 /* this */
            invokevirtual org.aspectj.weaver.patterns.DeclareParents.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            invokevirtual org.aspectj.weaver.Lint$Kind.signal:(Ljava/lang/String;Lorg/aspectj/bridge/ISourceLocation;)V
        17: .line 211
      StackMap locals:
      StackMap stack:
            aload 1 /* targetType */
            invokevirtual org.aspectj.weaver.ResolvedType.isEnum:()Z
            ifeq 25
            aload 6 /* parentType */
            invokevirtual org.aspectj.weaver.ResolvedType.isInterface:()Z
            ifeq 25
        18: .line 212
            iload 4 /* reportErrors */
            ifeq 24
            aload 0 /* this */
            getfield org.aspectj.weaver.patterns.DeclareParents.isWildChild:Z
            ifne 24
        19: .line 213
            aload 3 /* world */
            getstatic org.aspectj.bridge.IMessage.ERROR:Lorg/aspectj/bridge/IMessage$Kind;
            ldc "cantDecpOnEnumToImplInterface"
        20: .line 214
            aload 1 /* targetType */
        21: .line 213
            invokestatic org.aspectj.weaver.WeaverMessages.format:(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/String;
        22: .line 214
            aload 0 /* this */
            invokevirtual org.aspectj.weaver.patterns.DeclareParents.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            aconst_null
        23: .line 213
            invokevirtual org.aspectj.weaver.World.showMessage:(Lorg/aspectj/bridge/IMessage$Kind;Ljava/lang/String;Lorg/aspectj/bridge/ISourceLocation;Lorg/aspectj/bridge/ISourceLocation;)V
        24: .line 216
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        25: .line 218
      StackMap locals:
      StackMap stack:
            aload 1 /* targetType */
            invokevirtual org.aspectj.weaver.ResolvedType.isAnnotation:()Z
            ifeq 33
            aload 6 /* parentType */
            invokevirtual org.aspectj.weaver.ResolvedType.isInterface:()Z
            ifeq 33
        26: .line 219
            iload 4 /* reportErrors */
            ifeq 32
            aload 0 /* this */
            getfield org.aspectj.weaver.patterns.DeclareParents.isWildChild:Z
            ifne 32
        27: .line 220
            aload 3 /* world */
            getstatic org.aspectj.bridge.IMessage.ERROR:Lorg/aspectj/bridge/IMessage$Kind;
            ldc "cantDecpOnAnnotationToImplInterface"
        28: .line 221
            aload 1 /* targetType */
        29: .line 220
            invokestatic org.aspectj.weaver.WeaverMessages.format:(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/String;
        30: .line 221
            aload 0 /* this */
            invokevirtual org.aspectj.weaver.patterns.DeclareParents.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            aconst_null
        31: .line 220
            invokevirtual org.aspectj.weaver.World.showMessage:(Lorg/aspectj/bridge/IMessage$Kind;Ljava/lang/String;Lorg/aspectj/bridge/ISourceLocation;Lorg/aspectj/bridge/ISourceLocation;)V
        32: .line 223
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        33: .line 227
      StackMap locals:
      StackMap stack:
            aload 1 /* targetType */
            invokevirtual org.aspectj.weaver.ResolvedType.isEnum:()Z
            ifeq 41
            aload 6 /* parentType */
            invokevirtual org.aspectj.weaver.ResolvedType.isClass:()Z
            ifeq 41
        34: .line 228
            iload 4 /* reportErrors */
            ifeq 40
            aload 0 /* this */
            getfield org.aspectj.weaver.patterns.DeclareParents.isWildChild:Z
            ifne 40
        35: .line 229
            aload 3 /* world */
            getstatic org.aspectj.bridge.IMessage.ERROR:Lorg/aspectj/bridge/IMessage$Kind;
            ldc "cantDecpOnEnumToExtendClass"
        36: .line 230
            aload 1 /* targetType */
        37: .line 229
            invokestatic org.aspectj.weaver.WeaverMessages.format:(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/String;
        38: .line 230
            aload 0 /* this */
            invokevirtual org.aspectj.weaver.patterns.DeclareParents.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            aconst_null
        39: .line 229
            invokevirtual org.aspectj.weaver.World.showMessage:(Lorg/aspectj/bridge/IMessage$Kind;Ljava/lang/String;Lorg/aspectj/bridge/ISourceLocation;Lorg/aspectj/bridge/ISourceLocation;)V
        40: .line 232
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        41: .line 234
      StackMap locals:
      StackMap stack:
            aload 1 /* targetType */
            invokevirtual org.aspectj.weaver.ResolvedType.isAnnotation:()Z
            ifeq 49
            aload 6 /* parentType */
            invokevirtual org.aspectj.weaver.ResolvedType.isClass:()Z
            ifeq 49
        42: .line 235
            iload 4 /* reportErrors */
            ifeq 48
            aload 0 /* this */
            getfield org.aspectj.weaver.patterns.DeclareParents.isWildChild:Z
            ifne 48
        43: .line 236
            aload 3 /* world */
            getstatic org.aspectj.bridge.IMessage.ERROR:Lorg/aspectj/bridge/IMessage$Kind;
            ldc "cantDecpOnAnnotationToExtendClass"
        44: .line 237
            aload 1 /* targetType */
        45: .line 236
            invokestatic org.aspectj.weaver.WeaverMessages.format:(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/String;
        46: .line 237
            aload 0 /* this */
            invokevirtual org.aspectj.weaver.patterns.DeclareParents.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            aconst_null
        47: .line 236
            invokevirtual org.aspectj.weaver.World.showMessage:(Lorg/aspectj/bridge/IMessage$Kind;Ljava/lang/String;Lorg/aspectj/bridge/ISourceLocation;Lorg/aspectj/bridge/ISourceLocation;)V
        48: .line 239
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        49: .line 243
      StackMap locals:
      StackMap stack:
            aload 6 /* parentType */
            invokevirtual org.aspectj.weaver.ResolvedType.getSignature:()Ljava/lang/String;
            getstatic org.aspectj.weaver.UnresolvedType.ENUM:Lorg/aspectj/weaver/UnresolvedType;
            invokevirtual org.aspectj.weaver.UnresolvedType.getSignature:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 55
        50: .line 244
            iload 4 /* reportErrors */
            ifeq 54
            aload 0 /* this */
            getfield org.aspectj.weaver.patterns.DeclareParents.isWildChild:Z
            ifne 54
        51: .line 245
            aload 3 /* world */
            getstatic org.aspectj.bridge.IMessage.ERROR:Lorg/aspectj/bridge/IMessage$Kind;
        52: .line 246
            ldc "cantDecpToMakeEnumSupertype"
            aload 1 /* targetType */
            invokestatic org.aspectj.weaver.WeaverMessages.format:(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/String;
            aload 0 /* this */
            invokevirtual org.aspectj.weaver.patterns.DeclareParents.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            aconst_null
        53: .line 245
            invokevirtual org.aspectj.weaver.World.showMessage:(Lorg/aspectj/bridge/IMessage$Kind;Ljava/lang/String;Lorg/aspectj/bridge/ISourceLocation;Lorg/aspectj/bridge/ISourceLocation;)V
        54: .line 248
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        55: .line 250
      StackMap locals:
      StackMap stack:
            aload 6 /* parentType */
            invokevirtual org.aspectj.weaver.ResolvedType.getSignature:()Ljava/lang/String;
            getstatic org.aspectj.weaver.UnresolvedType.ANNOTATION:Lorg/aspectj/weaver/UnresolvedType;
            invokevirtual org.aspectj.weaver.UnresolvedType.getSignature:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 63
        56: .line 251
            iload 4 /* reportErrors */
            ifeq 62
            aload 0 /* this */
            getfield org.aspectj.weaver.patterns.DeclareParents.isWildChild:Z
            ifne 62
        57: .line 252
            aload 3 /* world */
            getstatic org.aspectj.bridge.IMessage.ERROR:Lorg/aspectj/bridge/IMessage$Kind;
            ldc "cantDecpToMakeAnnotationSupertype"
        58: .line 253
            aload 1 /* targetType */
        59: .line 252
            invokestatic org.aspectj.weaver.WeaverMessages.format:(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/String;
        60: .line 253
            aload 0 /* this */
            invokevirtual org.aspectj.weaver.patterns.DeclareParents.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            aconst_null
        61: .line 252
            invokevirtual org.aspectj.weaver.World.showMessage:(Lorg/aspectj/bridge/IMessage$Kind;Ljava/lang/String;Lorg/aspectj/bridge/ISourceLocation;Lorg/aspectj/bridge/ISourceLocation;)V
        62: .line 255
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        63: .line 258
      StackMap locals:
      StackMap stack:
            aload 6 /* parentType */
            aload 1 /* targetType */
            invokevirtual org.aspectj.weaver.ResolvedType.isAssignableFrom:(Lorg/aspectj/weaver/ResolvedType;)Z
            ifeq 65
        64: .line 259
            aconst_null
            areturn
        65: .line 262
      StackMap locals:
      StackMap stack:
            aload 1 /* targetType */
            aload 6 /* parentType */
            invokevirtual org.aspectj.weaver.ResolvedType.isAssignableFrom:(Lorg/aspectj/weaver/ResolvedType;)Z
            ifeq 70
        66: .line 263
            aload 3 /* world */
            getstatic org.aspectj.bridge.IMessage.ERROR:Lorg/aspectj/bridge/IMessage$Kind;
            ldc "cantExtendSelf"
            aload 1 /* targetType */
            invokevirtual org.aspectj.weaver.ResolvedType.getName:()Ljava/lang/String;
            invokestatic org.aspectj.weaver.WeaverMessages.format:(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/String;
            aload 0 /* this */
        67: .line 264
            invokevirtual org.aspectj.weaver.patterns.DeclareParents.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            aconst_null
        68: .line 263
            invokevirtual org.aspectj.weaver.World.showMessage:(Lorg/aspectj/bridge/IMessage$Kind;Ljava/lang/String;Lorg/aspectj/bridge/ISourceLocation;Lorg/aspectj/bridge/ISourceLocation;)V
        69: .line 265
            aconst_null
            areturn
        70: .line 268
      StackMap locals:
      StackMap stack:
            aload 6 /* parentType */
            invokevirtual org.aspectj.weaver.ResolvedType.isClass:()Z
            ifeq 84
        71: .line 269
            aload 1 /* targetType */
            invokevirtual org.aspectj.weaver.ResolvedType.isInterface:()Z
            ifeq 76
        72: .line 270
            aload 3 /* world */
            getstatic org.aspectj.bridge.IMessage.ERROR:Lorg/aspectj/bridge/IMessage$Kind;
            ldc "interfaceExtendClass"
            invokestatic org.aspectj.weaver.WeaverMessages.format:(Ljava/lang/String;)Ljava/lang/String;
            aload 0 /* this */
        73: .line 271
            invokevirtual org.aspectj.weaver.patterns.DeclareParents.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            aconst_null
        74: .line 270
            invokevirtual org.aspectj.weaver.World.showMessage:(Lorg/aspectj/bridge/IMessage$Kind;Ljava/lang/String;Lorg/aspectj/bridge/ISourceLocation;Lorg/aspectj/bridge/ISourceLocation;)V
        75: .line 272
            aconst_null
            areturn
        76: .line 276
      StackMap locals:
      StackMap stack:
            aload 1 /* targetType */
            invokevirtual org.aspectj.weaver.ResolvedType.getSuperclass:()Lorg/aspectj/weaver/ResolvedType;
            aload 6 /* parentType */
            invokevirtual org.aspectj.weaver.ResolvedType.isAssignableFrom:(Lorg/aspectj/weaver/ResolvedType;)Z
            ifne 83
        77: .line 277
            aload 3 /* world */
            getstatic org.aspectj.bridge.IMessage.ERROR:Lorg/aspectj/bridge/IMessage$Kind;
            ldc "decpHierarchy"
            aload 5 /* iType */
            invokevirtual org.aspectj.weaver.UnresolvedType.getName:()Ljava/lang/String;
        78: .line 278
            aload 1 /* targetType */
            invokevirtual org.aspectj.weaver.ResolvedType.getSuperclass:()Lorg/aspectj/weaver/ResolvedType;
            invokevirtual org.aspectj.weaver.ResolvedType.getName:()Ljava/lang/String;
        79: .line 277
            invokestatic org.aspectj.weaver.WeaverMessages.format:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/String;
        80: .line 278
            aload 0 /* this */
            invokevirtual org.aspectj.weaver.patterns.DeclareParents.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            aconst_null
        81: .line 277
            invokevirtual org.aspectj.weaver.World.showMessage:(Lorg/aspectj/bridge/IMessage$Kind;Ljava/lang/String;Lorg/aspectj/bridge/ISourceLocation;Lorg/aspectj/bridge/ISourceLocation;)V
        82: .line 279
            aconst_null
            areturn
        83: .line 281
      StackMap locals:
      StackMap stack:
            aload 6 /* parentType */
            areturn
        84: .line 284
      StackMap locals:
      StackMap stack:
            aload 6 /* parentType */
            areturn
        end local 6 // org.aspectj.weaver.ResolvedType parentType
        end local 5 // org.aspectj.weaver.UnresolvedType iType
        end local 4 // boolean reportErrors
        end local 3 // org.aspectj.weaver.World world
        end local 2 // org.aspectj.weaver.patterns.TypePattern typePattern
        end local 1 // org.aspectj.weaver.ResolvedType targetType
        end local 0 // org.aspectj.weaver.patterns.DeclareParents this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   85     0          this  Lorg/aspectj/weaver/patterns/DeclareParents;
            0   85     1    targetType  Lorg/aspectj/weaver/ResolvedType;
            0   85     2   typePattern  Lorg/aspectj/weaver/patterns/TypePattern;
            0   85     3         world  Lorg/aspectj/weaver/World;
            0   85     4  reportErrors  Z
            3   85     5         iType  Lorg/aspectj/weaver/UnresolvedType;
            4   85     6    parentType  Lorg/aspectj/weaver/ResolvedType;
            9   11     7          isOK  Z
    MethodParameters:
              Name  Flags
      targetType    
      typePattern   
      world         
      reportErrors  

  private boolean verifyNoInheritedAlternateParameterization(org.aspectj.weaver.ResolvedType, org.aspectj.weaver.ResolvedType, org.aspectj.weaver.World);
    descriptor: (Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/weaver/World;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=10, locals=8, args_size=4
        start local 0 // org.aspectj.weaver.patterns.DeclareParents this
        start local 1 // org.aspectj.weaver.ResolvedType typeToVerify
        start local 2 // org.aspectj.weaver.ResolvedType newParent
        start local 3 // org.aspectj.weaver.World world
         0: .line 300
            aload 1 /* typeToVerify */
            getstatic org.aspectj.weaver.ResolvedType.OBJECT:Lorg/aspectj/weaver/UnresolvedType;
            invokevirtual org.aspectj.weaver.ResolvedType.equals:(Ljava/lang/Object;)Z
            ifeq 2
         1: .line 301
            iconst_1
            ireturn
         2: .line 304
      StackMap locals:
      StackMap stack:
            aload 2 /* newParent */
            invokevirtual org.aspectj.weaver.ResolvedType.getGenericType:()Lorg/aspectj/weaver/ReferenceType;
            astore 4 /* newParentGenericType */
        start local 4 // org.aspectj.weaver.ResolvedType newParentGenericType
         3: .line 305
            aload 1 /* typeToVerify */
            invokevirtual org.aspectj.weaver.ResolvedType.getDirectSupertypes:()Ljava/util/Iterator;
            astore 5 /* iter */
        start local 5 // java.util.Iterator iter
         4: .line 306
            goto 33
         5: .line 307
      StackMap locals: org.aspectj.weaver.ResolvedType java.util.Iterator
      StackMap stack:
            aload 5 /* iter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.aspectj.weaver.ResolvedType
            astore 6 /* supertype */
        start local 6 // org.aspectj.weaver.ResolvedType supertype
         6: .line 308
            aload 6 /* supertype */
            invokevirtual org.aspectj.weaver.ResolvedType.isRawType:()Z
            ifeq 7
            aload 2 /* newParent */
            invokevirtual org.aspectj.weaver.ResolvedType.isParameterizedType:()Z
            ifne 9
      StackMap locals: org.aspectj.weaver.ResolvedType
      StackMap stack:
         7: aload 6 /* supertype */
            invokevirtual org.aspectj.weaver.ResolvedType.isParameterizedType:()Z
            ifeq 19
            aload 2 /* newParent */
         8: .line 309
            invokevirtual org.aspectj.weaver.ResolvedType.isRawType:()Z
            ifeq 19
         9: .line 310
      StackMap locals:
      StackMap stack:
            aload 4 /* newParentGenericType */
            aload 6 /* supertype */
            invokevirtual org.aspectj.weaver.ResolvedType.getGenericType:()Lorg/aspectj/weaver/ReferenceType;
            invokevirtual org.aspectj.weaver.ResolvedType.equals:(Ljava/lang/Object;)Z
            ifeq 19
        10: .line 312
            aload 3 /* world */
            invokevirtual org.aspectj.weaver.World.getMessageHandler:()Lorg/aspectj/bridge/IMessageHandler;
        11: .line 313
            new org.aspectj.bridge.Message
            dup
            ldc "cantDecpMultipleParameterizations"
            aload 2 /* newParent */
            invokevirtual org.aspectj.weaver.ResolvedType.getName:()Ljava/lang/String;
        12: .line 314
            aload 1 /* typeToVerify */
            invokevirtual org.aspectj.weaver.ResolvedType.getName:()Ljava/lang/String;
            aload 6 /* supertype */
            invokevirtual org.aspectj.weaver.ResolvedType.getName:()Ljava/lang/String;
        13: .line 313
            invokestatic org.aspectj.weaver.WeaverMessages.format:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/String;
        14: .line 314
            aload 0 /* this */
            invokevirtual org.aspectj.weaver.patterns.DeclareParents.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            iconst_1
        15: .line 315
            iconst_1
            anewarray org.aspectj.bridge.ISourceLocation
            dup
            iconst_0
            aload 1 /* typeToVerify */
            invokevirtual org.aspectj.weaver.ResolvedType.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            aastore
        16: .line 313
            invokespecial org.aspectj.bridge.Message.<init>:(Ljava/lang/String;Lorg/aspectj/bridge/ISourceLocation;Z[Lorg/aspectj/bridge/ISourceLocation;)V
        17: .line 312
            invokeinterface org.aspectj.bridge.IMessageHandler.handleMessage:(Lorg/aspectj/bridge/IMessage;)Z
            pop
        18: .line 316
            iconst_0
            ireturn
        19: .line 318
      StackMap locals:
      StackMap stack:
            aload 6 /* supertype */
            invokevirtual org.aspectj.weaver.ResolvedType.isParameterizedType:()Z
            ifeq 31
        20: .line 319
            aload 6 /* supertype */
            invokevirtual org.aspectj.weaver.ResolvedType.getGenericType:()Lorg/aspectj/weaver/ReferenceType;
            astore 7 /* generictype */
        start local 7 // org.aspectj.weaver.ResolvedType generictype
        21: .line 322
            aload 7 /* generictype */
            aload 4 /* newParentGenericType */
            invokevirtual org.aspectj.weaver.ResolvedType.isAssignableFrom:(Lorg/aspectj/weaver/ResolvedType;)Z
            ifeq 31
            aload 6 /* supertype */
            aload 2 /* newParent */
            invokevirtual org.aspectj.weaver.ResolvedType.isAssignableFrom:(Lorg/aspectj/weaver/ResolvedType;)Z
            ifne 31
        22: .line 323
            aload 3 /* world */
            invokevirtual org.aspectj.weaver.World.getMessageHandler:()Lorg/aspectj/bridge/IMessageHandler;
        23: .line 324
            new org.aspectj.bridge.Message
            dup
            ldc "cantDecpMultipleParameterizations"
            aload 2 /* newParent */
        24: .line 325
            invokevirtual org.aspectj.weaver.ResolvedType.getName:()Ljava/lang/String;
            aload 1 /* typeToVerify */
            invokevirtual org.aspectj.weaver.ResolvedType.getName:()Ljava/lang/String;
            aload 6 /* supertype */
            invokevirtual org.aspectj.weaver.ResolvedType.getName:()Ljava/lang/String;
        25: .line 324
            invokestatic org.aspectj.weaver.WeaverMessages.format:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/String;
        26: .line 325
            aload 0 /* this */
            invokevirtual org.aspectj.weaver.patterns.DeclareParents.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            iconst_1
        27: .line 326
            iconst_1
            anewarray org.aspectj.bridge.ISourceLocation
            dup
            iconst_0
            aload 1 /* typeToVerify */
            invokevirtual org.aspectj.weaver.ResolvedType.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
            aastore
        28: .line 324
            invokespecial org.aspectj.bridge.Message.<init>:(Ljava/lang/String;Lorg/aspectj/bridge/ISourceLocation;Z[Lorg/aspectj/bridge/ISourceLocation;)V
        29: .line 323
            invokeinterface org.aspectj.bridge.IMessageHandler.handleMessage:(Lorg/aspectj/bridge/IMessage;)Z
            pop
        30: .line 327
            iconst_0
            ireturn
        end local 7 // org.aspectj.weaver.ResolvedType generictype
        31: .line 330
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 6 /* supertype */
            aload 2 /* newParent */
            aload 3 /* world */
            invokevirtual org.aspectj.weaver.patterns.DeclareParents.verifyNoInheritedAlternateParameterization:(Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/weaver/World;)Z
            ifne 33
        32: .line 331
            iconst_0
            ireturn
        end local 6 // org.aspectj.weaver.ResolvedType supertype
        33: .line 306
      StackMap locals:
      StackMap stack:
            aload 5 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
        34: .line 334
            iconst_1
            ireturn
        end local 5 // java.util.Iterator iter
        end local 4 // org.aspectj.weaver.ResolvedType newParentGenericType
        end local 3 // org.aspectj.weaver.World world
        end local 2 // org.aspectj.weaver.ResolvedType newParent
        end local 1 // org.aspectj.weaver.ResolvedType typeToVerify
        end local 0 // org.aspectj.weaver.patterns.DeclareParents this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   35     0                  this  Lorg/aspectj/weaver/patterns/DeclareParents;
            0   35     1          typeToVerify  Lorg/aspectj/weaver/ResolvedType;
            0   35     2             newParent  Lorg/aspectj/weaver/ResolvedType;
            0   35     3                 world  Lorg/aspectj/weaver/World;
            3   35     4  newParentGenericType  Lorg/aspectj/weaver/ResolvedType;
            4   35     5                  iter  Ljava/util/Iterator<Lorg/aspectj/weaver/ResolvedType;>;
            6   33     6             supertype  Lorg/aspectj/weaver/ResolvedType;
           21   31     7           generictype  Lorg/aspectj/weaver/ResolvedType;
    MethodParameters:
              Name  Flags
      typeToVerify  
      newParent     
      world         

  public java.util.List<org.aspectj.weaver.ResolvedType> findMatchingNewParents(org.aspectj.weaver.ResolvedType, boolean);
    descriptor: (Lorg/aspectj/weaver/ResolvedType;Z)Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=3
        start local 0 // org.aspectj.weaver.patterns.DeclareParents this
        start local 1 // org.aspectj.weaver.ResolvedType onType
        start local 2 // boolean reportErrors
         0: .line 338
            aload 1 /* onType */
            invokevirtual org.aspectj.weaver.ResolvedType.isRawType:()Z
            ifeq 2
         1: .line 339
            aload 1 /* onType */
            invokevirtual org.aspectj.weaver.ResolvedType.getGenericType:()Lorg/aspectj/weaver/ReferenceType;
            astore 1 /* onType */
         2: .line 341
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* onType */
            invokevirtual org.aspectj.weaver.patterns.DeclareParents.match:(Lorg/aspectj/weaver/ResolvedType;)Z
            ifne 4
         3: .line 342
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            areturn
         4: .line 345
      StackMap locals:
      StackMap stack:
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* ret */
        start local 3 // java.util.List ret
         5: .line 346
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         6: goto 11
         7: .line 347
      StackMap locals: java.util.List int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* onType */
            aload 0 /* this */
            getfield org.aspectj.weaver.patterns.DeclareParents.parents:Lorg/aspectj/weaver/patterns/TypePatternList;
            iload 4 /* i */
            invokevirtual org.aspectj.weaver.patterns.TypePatternList.get:(I)Lorg/aspectj/weaver/patterns/TypePattern;
            aload 1 /* onType */
            invokevirtual org.aspectj.weaver.ResolvedType.getWorld:()Lorg/aspectj/weaver/World;
            iload 2 /* reportErrors */
            invokevirtual org.aspectj.weaver.patterns.DeclareParents.maybeGetNewParent:(Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/weaver/patterns/TypePattern;Lorg/aspectj/weaver/World;Z)Lorg/aspectj/weaver/ResolvedType;
            astore 5 /* t */
        start local 5 // org.aspectj.weaver.ResolvedType t
         8: .line 348
            aload 5 /* t */
            ifnull 10
         9: .line 349
            aload 3 /* ret */
            aload 5 /* t */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 5 // org.aspectj.weaver.ResolvedType t
        10: .line 346
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        11: iload 4 /* i */
            aload 0 /* this */
            getfield org.aspectj.weaver.patterns.DeclareParents.parents:Lorg/aspectj/weaver/patterns/TypePatternList;
            invokevirtual org.aspectj.weaver.patterns.TypePatternList.size:()I
            if_icmplt 7
        end local 4 // int i
        12: .line 353
            aload 3 /* ret */
            areturn
        end local 3 // java.util.List ret
        end local 2 // boolean reportErrors
        end local 1 // org.aspectj.weaver.ResolvedType onType
        end local 0 // org.aspectj.weaver.patterns.DeclareParents this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   13     0          this  Lorg/aspectj/weaver/patterns/DeclareParents;
            0   13     1        onType  Lorg/aspectj/weaver/ResolvedType;
            0   13     2  reportErrors  Z
            5   13     3           ret  Ljava/util/List<Lorg/aspectj/weaver/ResolvedType;>;
            6   12     4             i  I
            8   10     5             t  Lorg/aspectj/weaver/ResolvedType;
    Signature: (Lorg/aspectj/weaver/ResolvedType;Z)Ljava/util/List<Lorg/aspectj/weaver/ResolvedType;>;
    MethodParameters:
              Name  Flags
      onType        
      reportErrors  

  public java.lang.String getNameSuffix();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.aspectj.weaver.patterns.DeclareParents this
         0: .line 358
            ldc "parents"
            areturn
        end local 0 // org.aspectj.weaver.patterns.DeclareParents this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/aspectj/weaver/patterns/DeclareParents;

  public boolean isMixin();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.aspectj.weaver.patterns.DeclareParents this
         0: .line 362
            iconst_0
            ireturn
        end local 0 // org.aspectj.weaver.patterns.DeclareParents this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/aspectj/weaver/patterns/DeclareParents;
}
SourceFile: "DeclareParents.java"
InnerClasses:
  public final Kind = org.aspectj.bridge.IMessage$Kind of org.aspectj.bridge.IMessage
  public Kind = org.aspectj.weaver.Lint$Kind of org.aspectj.weaver.Lint