public class org.aspectj.weaver.tools.StandardPointcutParser
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.aspectj.weaver.tools.StandardPointcutParser
  super_class: java.lang.Object
{
  private org.aspectj.weaver.World world;
    descriptor: Lorg/aspectj/weaver/World;
    flags: (0x0002) ACC_PRIVATE

  private final java.util.Set<org.aspectj.weaver.tools.PointcutPrimitive> supportedPrimitives;
    descriptor: Ljava/util/Set;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Set<Lorg/aspectj/weaver/tools/PointcutPrimitive;>;

  private final java.util.Set<org.aspectj.weaver.tools.PointcutDesignatorHandler> pointcutDesignators;
    descriptor: Ljava/util/Set;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Set<Lorg/aspectj/weaver/tools/PointcutDesignatorHandler;>;

  public static java.util.Set<org.aspectj.weaver.tools.PointcutPrimitive> getAllSupportedPointcutPrimitives();
    descriptor: ()Ljava/util/Set;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=0
         0: .line 63
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 0 /* primitives */
        start local 0 // java.util.Set primitives
         1: .line 64
            aload 0 /* primitives */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.ADVICE_EXECUTION:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         2: .line 65
            aload 0 /* primitives */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.ARGS:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         3: .line 66
            aload 0 /* primitives */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.CALL:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         4: .line 67
            aload 0 /* primitives */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.EXECUTION:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         5: .line 68
            aload 0 /* primitives */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.GET:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         6: .line 69
            aload 0 /* primitives */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.HANDLER:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         7: .line 70
            aload 0 /* primitives */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.INITIALIZATION:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         8: .line 71
            aload 0 /* primitives */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.PRE_INITIALIZATION:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         9: .line 72
            aload 0 /* primitives */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.SET:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        10: .line 73
            aload 0 /* primitives */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.STATIC_INITIALIZATION:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        11: .line 74
            aload 0 /* primitives */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.TARGET:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        12: .line 75
            aload 0 /* primitives */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.THIS:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        13: .line 76
            aload 0 /* primitives */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.WITHIN:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        14: .line 77
            aload 0 /* primitives */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.WITHIN_CODE:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        15: .line 78
            aload 0 /* primitives */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.AT_ANNOTATION:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        16: .line 79
            aload 0 /* primitives */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.AT_THIS:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        17: .line 80
            aload 0 /* primitives */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.AT_TARGET:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        18: .line 81
            aload 0 /* primitives */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.AT_ARGS:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        19: .line 82
            aload 0 /* primitives */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.AT_WITHIN:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        20: .line 83
            aload 0 /* primitives */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.AT_WITHINCODE:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        21: .line 84
            aload 0 /* primitives */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.REFERENCE:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        22: .line 86
            aload 0 /* primitives */
            areturn
        end local 0 // java.util.Set primitives
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            1   23     0  primitives  Ljava/util/Set<Lorg/aspectj/weaver/tools/PointcutPrimitive;>;
    Signature: ()Ljava/util/Set<Lorg/aspectj/weaver/tools/PointcutPrimitive;>;

  public static org.aspectj.weaver.tools.StandardPointcutParser getPointcutParserSupportingAllPrimitives(org.aspectj.weaver.World);
    descriptor: (Lorg/aspectj/weaver/World;)Lorg/aspectj/weaver/tools/StandardPointcutParser;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // org.aspectj.weaver.World world
         0: .line 101
            new org.aspectj.weaver.tools.StandardPointcutParser
            dup
            aload 0 /* world */
            invokespecial org.aspectj.weaver.tools.StandardPointcutParser.<init>:(Lorg/aspectj/weaver/World;)V
            astore 1 /* p */
        start local 1 // org.aspectj.weaver.tools.StandardPointcutParser p
         1: .line 102
            aload 1 /* p */
            areturn
        end local 1 // org.aspectj.weaver.tools.StandardPointcutParser p
        end local 0 // org.aspectj.weaver.World world
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0  world  Lorg/aspectj/weaver/World;
            1    2     1      p  Lorg/aspectj/weaver/tools/StandardPointcutParser;
    MethodParameters:
       Name  Flags
      world  

  public static org.aspectj.weaver.tools.StandardPointcutParser getPointcutParserSupportingSpecifiedPrimitives(java.util.Set, org.aspectj.weaver.World);
    descriptor: (Ljava/util/Set;Lorg/aspectj/weaver/World;)Lorg/aspectj/weaver/tools/StandardPointcutParser;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // java.util.Set supportedPointcutKinds
        start local 1 // org.aspectj.weaver.World world
         0: .line 121
            new org.aspectj.weaver.tools.StandardPointcutParser
            dup
            aload 0 /* supportedPointcutKinds */
            aload 1 /* world */
            invokespecial org.aspectj.weaver.tools.StandardPointcutParser.<init>:(Ljava/util/Set;Lorg/aspectj/weaver/World;)V
            astore 2 /* p */
        start local 2 // org.aspectj.weaver.tools.StandardPointcutParser p
         1: .line 122
            aload 2 /* p */
            areturn
        end local 2 // org.aspectj.weaver.tools.StandardPointcutParser p
        end local 1 // org.aspectj.weaver.World world
        end local 0 // java.util.Set supportedPointcutKinds
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0    2     0  supportedPointcutKinds  Ljava/util/Set;
            0    2     1                   world  Lorg/aspectj/weaver/World;
            1    2     2                       p  Lorg/aspectj/weaver/tools/StandardPointcutParser;
    MethodParameters:
                        Name  Flags
      supportedPointcutKinds  
      world                   

  protected void <init>(org.aspectj.weaver.World);
    descriptor: (Lorg/aspectj/weaver/World;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.aspectj.weaver.tools.StandardPointcutParser this
        start local 1 // org.aspectj.weaver.World world
         0: .line 133
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 56
            aload 0 /* this */
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            putfield org.aspectj.weaver.tools.StandardPointcutParser.pointcutDesignators:Ljava/util/Set;
         2: .line 134
            aload 0 /* this */
            invokestatic org.aspectj.weaver.tools.StandardPointcutParser.getAllSupportedPointcutPrimitives:()Ljava/util/Set;
            putfield org.aspectj.weaver.tools.StandardPointcutParser.supportedPrimitives:Ljava/util/Set;
         3: .line 135
            aload 0 /* this */
            aload 1 /* world */
            putfield org.aspectj.weaver.tools.StandardPointcutParser.world:Lorg/aspectj/weaver/World;
         4: .line 136
            return
        end local 1 // org.aspectj.weaver.World world
        end local 0 // org.aspectj.weaver.tools.StandardPointcutParser this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Lorg/aspectj/weaver/tools/StandardPointcutParser;
            0    5     1  world  Lorg/aspectj/weaver/World;
    MethodParameters:
       Name  Flags
      world  

  private void <init>(java.util.Set, org.aspectj.weaver.World);
    descriptor: (Ljava/util/Set;Lorg/aspectj/weaver/World;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // org.aspectj.weaver.tools.StandardPointcutParser this
        start local 1 // java.util.Set supportedPointcutKinds
        start local 2 // org.aspectj.weaver.World world
         0: .line 150
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 56
            aload 0 /* this */
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            putfield org.aspectj.weaver.tools.StandardPointcutParser.pointcutDesignators:Ljava/util/Set;
         2: .line 151
            aload 0 /* this */
            aload 1 /* supportedPointcutKinds */
            putfield org.aspectj.weaver.tools.StandardPointcutParser.supportedPrimitives:Ljava/util/Set;
         3: .line 152
            aload 1 /* supportedPointcutKinds */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 3 /* iter */
        start local 3 // java.util.Iterator iter
         4: goto 9
         5: .line 153
      StackMap locals: org.aspectj.weaver.tools.StandardPointcutParser java.util.Set org.aspectj.weaver.World java.util.Iterator
      StackMap stack:
            aload 3 /* iter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.aspectj.weaver.tools.PointcutPrimitive
            astore 4 /* element */
        start local 4 // org.aspectj.weaver.tools.PointcutPrimitive element
         6: .line 154
            aload 4 /* element */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.IF:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            if_acmpeq 8
            aload 4 /* element */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.CFLOW:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            if_acmpeq 8
         7: .line 155
            aload 4 /* element */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.CFLOW_BELOW:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            if_acmpne 9
         8: .line 156
      StackMap locals: org.aspectj.weaver.tools.PointcutPrimitive
      StackMap stack:
            new java.lang.UnsupportedOperationException
            dup
            ldc "Cannot handle if, cflow, and cflowbelow primitives"
            invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
            athrow
        end local 4 // org.aspectj.weaver.tools.PointcutPrimitive element
         9: .line 152
      StackMap locals:
      StackMap stack:
            aload 3 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
        end local 3 // java.util.Iterator iter
        10: .line 159
            aload 0 /* this */
            aload 2 /* world */
            putfield org.aspectj.weaver.tools.StandardPointcutParser.world:Lorg/aspectj/weaver/World;
        11: .line 160
            return
        end local 2 // org.aspectj.weaver.World world
        end local 1 // java.util.Set supportedPointcutKinds
        end local 0 // org.aspectj.weaver.tools.StandardPointcutParser this
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0   12     0                    this  Lorg/aspectj/weaver/tools/StandardPointcutParser;
            0   12     1  supportedPointcutKinds  Ljava/util/Set;
            0   12     2                   world  Lorg/aspectj/weaver/World;
            4   10     3                    iter  Ljava/util/Iterator;
            6    9     4                 element  Lorg/aspectj/weaver/tools/PointcutPrimitive;
    MethodParameters:
                        Name  Flags
      supportedPointcutKinds  
      world                   

  public void setLintProperties(java.util.Properties);
    descriptor: (Ljava/util/Properties;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.aspectj.weaver.tools.StandardPointcutParser this
        start local 1 // java.util.Properties properties
         0: .line 181
            aload 0 /* this */
            invokevirtual org.aspectj.weaver.tools.StandardPointcutParser.getWorld:()Lorg/aspectj/weaver/World;
            invokevirtual org.aspectj.weaver.World.getLint:()Lorg/aspectj/weaver/Lint;
            aload 1 /* properties */
            invokevirtual org.aspectj.weaver.Lint.setFromProperties:(Ljava/util/Properties;)V
         1: .line 182
            return
        end local 1 // java.util.Properties properties
        end local 0 // org.aspectj.weaver.tools.StandardPointcutParser this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lorg/aspectj/weaver/tools/StandardPointcutParser;
            0    2     1  properties  Ljava/util/Properties;
    MethodParameters:
            Name  Flags
      properties  

  public void registerPointcutDesignatorHandler(org.aspectj.weaver.tools.PointcutDesignatorHandler);
    descriptor: (Lorg/aspectj/weaver/tools/PointcutDesignatorHandler;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.aspectj.weaver.tools.StandardPointcutParser this
        start local 1 // org.aspectj.weaver.tools.PointcutDesignatorHandler designatorHandler
         0: .line 191
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.StandardPointcutParser.pointcutDesignators:Ljava/util/Set;
            aload 1 /* designatorHandler */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         1: .line 192
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.StandardPointcutParser.world:Lorg/aspectj/weaver/World;
            ifnull 3
         2: .line 193
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.StandardPointcutParser.world:Lorg/aspectj/weaver/World;
            aload 1 /* designatorHandler */
            invokevirtual org.aspectj.weaver.World.registerPointcutHandler:(Lorg/aspectj/weaver/tools/PointcutDesignatorHandler;)V
         3: .line 195
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.aspectj.weaver.tools.PointcutDesignatorHandler designatorHandler
        end local 0 // org.aspectj.weaver.tools.StandardPointcutParser this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    4     0               this  Lorg/aspectj/weaver/tools/StandardPointcutParser;
            0    4     1  designatorHandler  Lorg/aspectj/weaver/tools/PointcutDesignatorHandler;
    MethodParameters:
                   Name  Flags
      designatorHandler  

  public org.aspectj.weaver.tools.PointcutParameter createPointcutParameter(java.lang.String, java.lang.Class);
    descriptor: (Ljava/lang/String;Ljava/lang/Class;)Lorg/aspectj/weaver/tools/PointcutParameter;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.aspectj.weaver.tools.StandardPointcutParser this
        start local 1 // java.lang.String name
        start local 2 // java.lang.Class type
         0: .line 205
            new org.aspectj.weaver.reflect.PointcutParameterImpl
            dup
            aload 1 /* name */
            aload 2 /* type */
            invokespecial org.aspectj.weaver.reflect.PointcutParameterImpl.<init>:(Ljava/lang/String;Ljava/lang/Class;)V
            areturn
        end local 2 // java.lang.Class type
        end local 1 // java.lang.String name
        end local 0 // org.aspectj.weaver.tools.StandardPointcutParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/aspectj/weaver/tools/StandardPointcutParser;
            0    1     1  name  Ljava/lang/String;
            0    1     2  type  Ljava/lang/Class;
    MethodParameters:
      Name  Flags
      name  
      type  

  public org.aspectj.weaver.tools.StandardPointcutExpression parsePointcutExpression(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/aspectj/weaver/tools/StandardPointcutExpression;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.aspectj.weaver.tools.StandardPointcutParser this
        start local 1 // java.lang.String expression
         0: .line 218
            aload 0 /* this */
            aload 1 /* expression */
            aconst_null
            iconst_0
            anewarray org.aspectj.weaver.tools.PointcutParameter
            invokevirtual org.aspectj.weaver.tools.StandardPointcutParser.parsePointcutExpression:(Ljava/lang/String;Ljava/lang/Class;[Lorg/aspectj/weaver/tools/PointcutParameter;)Lorg/aspectj/weaver/tools/StandardPointcutExpression;
            areturn
        end local 1 // java.lang.String expression
        end local 0 // org.aspectj.weaver.tools.StandardPointcutParser this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/aspectj/weaver/tools/StandardPointcutParser;
            0    1     1  expression  Ljava/lang/String;
    Exceptions:
      throws org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException, java.lang.IllegalArgumentException
    MethodParameters:
            Name  Flags
      expression  

  public org.aspectj.weaver.tools.StandardPointcutExpression parsePointcutExpression(java.lang.String, java.lang.Class, org.aspectj.weaver.tools.PointcutParameter[]);
    descriptor: (Ljava/lang/String;Ljava/lang/Class;[Lorg/aspectj/weaver/tools/PointcutParameter;)Lorg/aspectj/weaver/tools/StandardPointcutExpression;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=6, args_size=4
        start local 0 // org.aspectj.weaver.tools.StandardPointcutParser this
        start local 1 // java.lang.String expression
        start local 2 // java.lang.Class inScope
        start local 3 // org.aspectj.weaver.tools.PointcutParameter[] formalParameters
         0: .line 232
            aconst_null
            astore 4 /* pcExpr */
        start local 4 // org.aspectj.weaver.internal.tools.StandardPointcutExpressionImpl pcExpr
         1: .line 234
            aload 0 /* this */
            aload 1 /* expression */
            aload 2 /* inScope */
            aload 3 /* formalParameters */
            invokevirtual org.aspectj.weaver.tools.StandardPointcutParser.resolvePointcutExpression:(Ljava/lang/String;Ljava/lang/Class;[Lorg/aspectj/weaver/tools/PointcutParameter;)Lorg/aspectj/weaver/patterns/Pointcut;
            astore 5 /* pc */
        start local 5 // org.aspectj.weaver.patterns.Pointcut pc
         2: .line 235
            aload 0 /* this */
            aload 5 /* pc */
            aload 2 /* inScope */
            aload 3 /* formalParameters */
            invokevirtual org.aspectj.weaver.tools.StandardPointcutParser.concretizePointcutExpression:(Lorg/aspectj/weaver/patterns/Pointcut;Ljava/lang/Class;[Lorg/aspectj/weaver/tools/PointcutParameter;)Lorg/aspectj/weaver/patterns/Pointcut;
            astore 5 /* pc */
         3: .line 236
            aload 0 /* this */
            aload 5 /* pc */
            aload 1 /* expression */
            invokevirtual org.aspectj.weaver.tools.StandardPointcutParser.validateAgainstSupportedPrimitives:(Lorg/aspectj/weaver/patterns/Pointcut;Ljava/lang/String;)V
         4: .line 237
            new org.aspectj.weaver.internal.tools.StandardPointcutExpressionImpl
            dup
            aload 5 /* pc */
            aload 1 /* expression */
            aload 3 /* formalParameters */
            aload 0 /* this */
            invokevirtual org.aspectj.weaver.tools.StandardPointcutParser.getWorld:()Lorg/aspectj/weaver/World;
            invokespecial org.aspectj.weaver.internal.tools.StandardPointcutExpressionImpl.<init>:(Lorg/aspectj/weaver/patterns/Pointcut;Ljava/lang/String;[Lorg/aspectj/weaver/tools/PointcutParameter;Lorg/aspectj/weaver/World;)V
            astore 4 /* pcExpr */
        end local 5 // org.aspectj.weaver.patterns.Pointcut pc
         5: .line 238
            goto 11
      StackMap locals: org.aspectj.weaver.tools.StandardPointcutParser java.lang.String java.lang.Class org.aspectj.weaver.tools.PointcutParameter[] org.aspectj.weaver.internal.tools.StandardPointcutExpressionImpl
      StackMap stack: org.aspectj.weaver.patterns.ParserException
         6: astore 5 /* pEx */
        start local 5 // org.aspectj.weaver.patterns.ParserException pEx
         7: .line 239
            new java.lang.IllegalArgumentException
            dup
            aload 0 /* this */
            aload 1 /* expression */
            aload 5 /* pEx */
            invokevirtual org.aspectj.weaver.tools.StandardPointcutParser.buildUserMessageFromParserException:(Ljava/lang/String;Lorg/aspectj/weaver/patterns/ParserException;)Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 5 // org.aspectj.weaver.patterns.ParserException pEx
         8: .line 240
      StackMap locals:
      StackMap stack: org.aspectj.weaver.reflect.ReflectionWorld$ReflectionWorldException
            astore 5 /* rwEx */
        start local 5 // org.aspectj.weaver.reflect.ReflectionWorld$ReflectionWorldException rwEx
         9: .line 241
            aload 5 /* rwEx */
            invokevirtual org.aspectj.weaver.reflect.ReflectionWorld$ReflectionWorldException.printStackTrace:()V
        10: .line 242
            new java.lang.IllegalArgumentException
            dup
            aload 5 /* rwEx */
            invokevirtual org.aspectj.weaver.reflect.ReflectionWorld$ReflectionWorldException.getMessage:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 5 // org.aspectj.weaver.reflect.ReflectionWorld$ReflectionWorldException rwEx
        11: .line 244
      StackMap locals:
      StackMap stack:
            aload 4 /* pcExpr */
            areturn
        end local 4 // org.aspectj.weaver.internal.tools.StandardPointcutExpressionImpl pcExpr
        end local 3 // org.aspectj.weaver.tools.PointcutParameter[] formalParameters
        end local 2 // java.lang.Class inScope
        end local 1 // java.lang.String expression
        end local 0 // org.aspectj.weaver.tools.StandardPointcutParser this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   12     0              this  Lorg/aspectj/weaver/tools/StandardPointcutParser;
            0   12     1        expression  Ljava/lang/String;
            0   12     2           inScope  Ljava/lang/Class;
            0   12     3  formalParameters  [Lorg/aspectj/weaver/tools/PointcutParameter;
            1   12     4            pcExpr  Lorg/aspectj/weaver/internal/tools/StandardPointcutExpressionImpl;
            2    5     5                pc  Lorg/aspectj/weaver/patterns/Pointcut;
            7    8     5               pEx  Lorg/aspectj/weaver/patterns/ParserException;
            9   11     5              rwEx  Lorg/aspectj/weaver/reflect/ReflectionWorld$ReflectionWorldException;
      Exception table:
        from    to  target  type
           1     5       6  Class org.aspectj.weaver.patterns.ParserException
           1     5       8  Class org.aspectj.weaver.reflect.ReflectionWorld$ReflectionWorldException
    Exceptions:
      throws org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException, java.lang.IllegalArgumentException
    MethodParameters:
                  Name  Flags
      expression        
      inScope           
      formalParameters  

  protected org.aspectj.weaver.patterns.Pointcut resolvePointcutExpression(java.lang.String, java.lang.Class<?>, org.aspectj.weaver.tools.PointcutParameter[]);
    descriptor: (Ljava/lang/String;Ljava/lang/Class;[Lorg/aspectj/weaver/tools/PointcutParameter;)Lorg/aspectj/weaver/patterns/Pointcut;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=7, args_size=4
        start local 0 // org.aspectj.weaver.tools.StandardPointcutParser this
        start local 1 // java.lang.String expression
        start local 2 // java.lang.Class inScope
        start local 3 // org.aspectj.weaver.tools.PointcutParameter[] formalParameters
         0: .line 249
            new org.aspectj.weaver.patterns.PatternParser
            dup
            aload 1 /* expression */
            invokespecial org.aspectj.weaver.patterns.PatternParser.<init>:(Ljava/lang/String;)V
            astore 4 /* parser */
        start local 4 // org.aspectj.weaver.patterns.PatternParser parser
         1: .line 250
            aload 4 /* parser */
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.StandardPointcutParser.pointcutDesignators:Ljava/util/Set;
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.StandardPointcutParser.world:Lorg/aspectj/weaver/World;
            invokevirtual org.aspectj.weaver.patterns.PatternParser.setPointcutDesignatorHandlers:(Ljava/util/Set;Lorg/aspectj/weaver/World;)V
         2: .line 251
            aload 4 /* parser */
            invokevirtual org.aspectj.weaver.patterns.PatternParser.parsePointcut:()Lorg/aspectj/weaver/patterns/Pointcut;
            astore 5 /* pc */
        start local 5 // org.aspectj.weaver.patterns.Pointcut pc
         3: .line 252
            aload 0 /* this */
            aload 5 /* pc */
            aload 1 /* expression */
            invokevirtual org.aspectj.weaver.tools.StandardPointcutParser.validateAgainstSupportedPrimitives:(Lorg/aspectj/weaver/patterns/Pointcut;Ljava/lang/String;)V
         4: .line 253
            aload 0 /* this */
            aload 2 /* inScope */
            ifnonnull 5
            ldc Ljava/lang/Object;
            goto 6
      StackMap locals: org.aspectj.weaver.tools.StandardPointcutParser java.lang.String java.lang.Class org.aspectj.weaver.tools.PointcutParameter[] org.aspectj.weaver.patterns.PatternParser org.aspectj.weaver.patterns.Pointcut
      StackMap stack: org.aspectj.weaver.tools.StandardPointcutParser
         5: aload 2 /* inScope */
      StackMap locals: org.aspectj.weaver.tools.StandardPointcutParser java.lang.String java.lang.Class org.aspectj.weaver.tools.PointcutParameter[] org.aspectj.weaver.patterns.PatternParser org.aspectj.weaver.patterns.Pointcut
      StackMap stack: org.aspectj.weaver.tools.StandardPointcutParser java.lang.Class
         6: aload 3 /* formalParameters */
            invokevirtual org.aspectj.weaver.tools.StandardPointcutParser.buildResolutionScope:(Ljava/lang/Class;[Lorg/aspectj/weaver/tools/PointcutParameter;)Lorg/aspectj/weaver/patterns/IScope;
            astore 6 /* resolutionScope */
        start local 6 // org.aspectj.weaver.patterns.IScope resolutionScope
         7: .line 254
            aload 5 /* pc */
            aload 6 /* resolutionScope */
            invokevirtual org.aspectj.weaver.patterns.Pointcut.resolve:(Lorg/aspectj/weaver/patterns/IScope;)Lorg/aspectj/weaver/patterns/Pointcut;
            astore 5 /* pc */
         8: .line 255
            aload 5 /* pc */
         9: areturn
        end local 6 // org.aspectj.weaver.patterns.IScope resolutionScope
        end local 5 // org.aspectj.weaver.patterns.Pointcut pc
        end local 4 // org.aspectj.weaver.patterns.PatternParser parser
        10: .line 256
      StackMap locals: org.aspectj.weaver.tools.StandardPointcutParser java.lang.String java.lang.Class org.aspectj.weaver.tools.PointcutParameter[]
      StackMap stack: org.aspectj.weaver.patterns.ParserException
            astore 4 /* pEx */
        start local 4 // org.aspectj.weaver.patterns.ParserException pEx
        11: .line 257
            new java.lang.IllegalArgumentException
            dup
            aload 0 /* this */
            aload 1 /* expression */
            aload 4 /* pEx */
            invokevirtual org.aspectj.weaver.tools.StandardPointcutParser.buildUserMessageFromParserException:(Ljava/lang/String;Lorg/aspectj/weaver/patterns/ParserException;)Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 4 // org.aspectj.weaver.patterns.ParserException pEx
        end local 3 // org.aspectj.weaver.tools.PointcutParameter[] formalParameters
        end local 2 // java.lang.Class inScope
        end local 1 // java.lang.String expression
        end local 0 // org.aspectj.weaver.tools.StandardPointcutParser this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   12     0              this  Lorg/aspectj/weaver/tools/StandardPointcutParser;
            0   12     1        expression  Ljava/lang/String;
            0   12     2           inScope  Ljava/lang/Class<*>;
            0   12     3  formalParameters  [Lorg/aspectj/weaver/tools/PointcutParameter;
            1   10     4            parser  Lorg/aspectj/weaver/patterns/PatternParser;
            3   10     5                pc  Lorg/aspectj/weaver/patterns/Pointcut;
            7   10     6   resolutionScope  Lorg/aspectj/weaver/patterns/IScope;
           11   12     4               pEx  Lorg/aspectj/weaver/patterns/ParserException;
      Exception table:
        from    to  target  type
           0     9      10  Class org.aspectj.weaver.patterns.ParserException
    Signature: (Ljava/lang/String;Ljava/lang/Class<*>;[Lorg/aspectj/weaver/tools/PointcutParameter;)Lorg/aspectj/weaver/patterns/Pointcut;
    MethodParameters:
                  Name  Flags
      expression        
      inScope           
      formalParameters  

  protected org.aspectj.weaver.patterns.Pointcut concretizePointcutExpression(org.aspectj.weaver.patterns.Pointcut, java.lang.Class<?>, org.aspectj.weaver.tools.PointcutParameter[]);
    descriptor: (Lorg/aspectj/weaver/patterns/Pointcut;Ljava/lang/Class;[Lorg/aspectj/weaver/tools/PointcutParameter;)Lorg/aspectj/weaver/patterns/Pointcut;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=7, args_size=4
        start local 0 // org.aspectj.weaver.tools.StandardPointcutParser this
        start local 1 // org.aspectj.weaver.patterns.Pointcut pc
        start local 2 // java.lang.Class inScope
        start local 3 // org.aspectj.weaver.tools.PointcutParameter[] formalParameters
         0: .line 262
            aconst_null
            astore 4 /* declaringTypeForResolution */
        start local 4 // org.aspectj.weaver.ResolvedType declaringTypeForResolution
         1: .line 263
            aload 2 /* inScope */
            ifnull 4
         2: .line 264
            aload 0 /* this */
            invokevirtual org.aspectj.weaver.tools.StandardPointcutParser.getWorld:()Lorg/aspectj/weaver/World;
            aload 2 /* inScope */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual org.aspectj.weaver.World.resolve:(Ljava/lang/String;)Lorg/aspectj/weaver/ResolvedType;
            astore 4 /* declaringTypeForResolution */
         3: .line 265
            goto 5
         4: .line 266
      StackMap locals: org.aspectj.weaver.ResolvedType
      StackMap stack:
            getstatic org.aspectj.weaver.ResolvedType.OBJECT:Lorg/aspectj/weaver/UnresolvedType;
            aload 0 /* this */
            invokevirtual org.aspectj.weaver.tools.StandardPointcutParser.getWorld:()Lorg/aspectj/weaver/World;
            invokevirtual org.aspectj.weaver.UnresolvedType.resolve:(Lorg/aspectj/weaver/World;)Lorg/aspectj/weaver/ResolvedType;
            astore 4 /* declaringTypeForResolution */
         5: .line 268
      StackMap locals:
      StackMap stack:
            new org.aspectj.weaver.IntMap
            dup
            aload 3 /* formalParameters */
            arraylength
            invokespecial org.aspectj.weaver.IntMap.<init>:(I)V
            astore 5 /* arity */
        start local 5 // org.aspectj.weaver.IntMap arity
         6: .line 269
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         7: goto 10
         8: .line 270
      StackMap locals: org.aspectj.weaver.IntMap int
      StackMap stack:
            aload 5 /* arity */
            iload 6 /* i */
            iload 6 /* i */
            invokevirtual org.aspectj.weaver.IntMap.put:(II)V
         9: .line 269
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        10: iload 6 /* i */
            aload 3 /* formalParameters */
            arraylength
            if_icmplt 8
        end local 6 // int i
        11: .line 272
            aload 1 /* pc */
            aload 4 /* declaringTypeForResolution */
            aload 4 /* declaringTypeForResolution */
            aload 5 /* arity */
            invokevirtual org.aspectj.weaver.patterns.Pointcut.concretize:(Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/weaver/IntMap;)Lorg/aspectj/weaver/patterns/Pointcut;
            areturn
        end local 5 // org.aspectj.weaver.IntMap arity
        end local 4 // org.aspectj.weaver.ResolvedType declaringTypeForResolution
        end local 3 // org.aspectj.weaver.tools.PointcutParameter[] formalParameters
        end local 2 // java.lang.Class inScope
        end local 1 // org.aspectj.weaver.patterns.Pointcut pc
        end local 0 // org.aspectj.weaver.tools.StandardPointcutParser this
      LocalVariableTable:
        Start  End  Slot                        Name  Signature
            0   12     0                        this  Lorg/aspectj/weaver/tools/StandardPointcutParser;
            0   12     1                          pc  Lorg/aspectj/weaver/patterns/Pointcut;
            0   12     2                     inScope  Ljava/lang/Class<*>;
            0   12     3            formalParameters  [Lorg/aspectj/weaver/tools/PointcutParameter;
            1   12     4  declaringTypeForResolution  Lorg/aspectj/weaver/ResolvedType;
            6   12     5                       arity  Lorg/aspectj/weaver/IntMap;
            7   11     6                           i  I
    Signature: (Lorg/aspectj/weaver/patterns/Pointcut;Ljava/lang/Class<*>;[Lorg/aspectj/weaver/tools/PointcutParameter;)Lorg/aspectj/weaver/patterns/Pointcut;
    MethodParameters:
                  Name  Flags
      pc                
      inScope           
      formalParameters  

  public org.aspectj.weaver.tools.TypePatternMatcher parseTypePattern(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/aspectj/weaver/tools/TypePatternMatcher;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.aspectj.weaver.tools.StandardPointcutParser this
        start local 1 // java.lang.String typePattern
         0: .line 284
            new org.aspectj.weaver.patterns.PatternParser
            dup
            aload 1 /* typePattern */
            invokespecial org.aspectj.weaver.patterns.PatternParser.<init>:(Ljava/lang/String;)V
            invokevirtual org.aspectj.weaver.patterns.PatternParser.parseTypePattern:()Lorg/aspectj/weaver/patterns/TypePattern;
            astore 2 /* tp */
        start local 2 // org.aspectj.weaver.patterns.TypePattern tp
         1: .line 285
            aload 2 /* tp */
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.StandardPointcutParser.world:Lorg/aspectj/weaver/World;
            invokevirtual org.aspectj.weaver.patterns.TypePattern.resolve:(Lorg/aspectj/weaver/World;)V
         2: .line 286
            new org.aspectj.weaver.internal.tools.TypePatternMatcherImpl
            dup
            aload 2 /* tp */
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.StandardPointcutParser.world:Lorg/aspectj/weaver/World;
            invokespecial org.aspectj.weaver.internal.tools.TypePatternMatcherImpl.<init>:(Lorg/aspectj/weaver/patterns/TypePattern;Lorg/aspectj/weaver/World;)V
         3: areturn
        end local 2 // org.aspectj.weaver.patterns.TypePattern tp
         4: .line 287
      StackMap locals:
      StackMap stack: org.aspectj.weaver.patterns.ParserException
            astore 2 /* pEx */
        start local 2 // org.aspectj.weaver.patterns.ParserException pEx
         5: .line 288
            new java.lang.IllegalArgumentException
            dup
            aload 0 /* this */
            aload 1 /* typePattern */
            aload 2 /* pEx */
            invokevirtual org.aspectj.weaver.tools.StandardPointcutParser.buildUserMessageFromParserException:(Ljava/lang/String;Lorg/aspectj/weaver/patterns/ParserException;)Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 2 // org.aspectj.weaver.patterns.ParserException pEx
         6: .line 289
      StackMap locals:
      StackMap stack: org.aspectj.weaver.reflect.ReflectionWorld$ReflectionWorldException
            astore 2 /* rwEx */
        start local 2 // org.aspectj.weaver.reflect.ReflectionWorld$ReflectionWorldException rwEx
         7: .line 290
            new java.lang.IllegalArgumentException
            dup
            aload 2 /* rwEx */
            invokevirtual org.aspectj.weaver.reflect.ReflectionWorld$ReflectionWorldException.getMessage:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 2 // org.aspectj.weaver.reflect.ReflectionWorld$ReflectionWorldException rwEx
        end local 1 // java.lang.String typePattern
        end local 0 // org.aspectj.weaver.tools.StandardPointcutParser this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    8     0         this  Lorg/aspectj/weaver/tools/StandardPointcutParser;
            0    8     1  typePattern  Ljava/lang/String;
            1    4     2           tp  Lorg/aspectj/weaver/patterns/TypePattern;
            5    6     2          pEx  Lorg/aspectj/weaver/patterns/ParserException;
            7    8     2         rwEx  Lorg/aspectj/weaver/reflect/ReflectionWorld$ReflectionWorldException;
      Exception table:
        from    to  target  type
           0     3       4  Class org.aspectj.weaver.patterns.ParserException
           0     3       6  Class org.aspectj.weaver.reflect.ReflectionWorld$ReflectionWorldException
    Exceptions:
      throws java.lang.IllegalArgumentException
    MethodParameters:
             Name  Flags
      typePattern  

  private org.aspectj.weaver.World getWorld();
    descriptor: ()Lorg/aspectj/weaver/World;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.aspectj.weaver.tools.StandardPointcutParser this
         0: .line 295
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.StandardPointcutParser.world:Lorg/aspectj/weaver/World;
            areturn
        end local 0 // org.aspectj.weaver.tools.StandardPointcutParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/aspectj/weaver/tools/StandardPointcutParser;

  java.util.Set getSupportedPrimitives();
    descriptor: ()Ljava/util/Set;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.aspectj.weaver.tools.StandardPointcutParser this
         0: .line 300
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.StandardPointcutParser.supportedPrimitives:Ljava/util/Set;
            areturn
        end local 0 // org.aspectj.weaver.tools.StandardPointcutParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/aspectj/weaver/tools/StandardPointcutParser;

  org.aspectj.bridge.IMessageHandler setCustomMessageHandler(org.aspectj.bridge.IMessageHandler);
    descriptor: (Lorg/aspectj/bridge/IMessageHandler;)Lorg/aspectj/bridge/IMessageHandler;
    flags: (0x0000) 
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.aspectj.weaver.tools.StandardPointcutParser this
        start local 1 // org.aspectj.bridge.IMessageHandler aHandler
         0: .line 305
            aload 0 /* this */
            invokevirtual org.aspectj.weaver.tools.StandardPointcutParser.getWorld:()Lorg/aspectj/weaver/World;
            invokevirtual org.aspectj.weaver.World.getMessageHandler:()Lorg/aspectj/bridge/IMessageHandler;
            astore 2 /* current */
        start local 2 // org.aspectj.bridge.IMessageHandler current
         1: .line 306
            aload 0 /* this */
            invokevirtual org.aspectj.weaver.tools.StandardPointcutParser.getWorld:()Lorg/aspectj/weaver/World;
            aload 1 /* aHandler */
            invokevirtual org.aspectj.weaver.World.setMessageHandler:(Lorg/aspectj/bridge/IMessageHandler;)V
         2: .line 307
            aload 2 /* current */
            areturn
        end local 2 // org.aspectj.bridge.IMessageHandler current
        end local 1 // org.aspectj.bridge.IMessageHandler aHandler
        end local 0 // org.aspectj.weaver.tools.StandardPointcutParser this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0      this  Lorg/aspectj/weaver/tools/StandardPointcutParser;
            0    3     1  aHandler  Lorg/aspectj/bridge/IMessageHandler;
            1    3     2   current  Lorg/aspectj/bridge/IMessageHandler;
    MethodParameters:
          Name  Flags
      aHandler  

  private org.aspectj.weaver.patterns.IScope buildResolutionScope(java.lang.Class, org.aspectj.weaver.tools.PointcutParameter[]);
    descriptor: (Ljava/lang/Class;[Lorg/aspectj/weaver/tools/PointcutParameter;)Lorg/aspectj/weaver/patterns/IScope;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=7, args_size=3
        start local 0 // org.aspectj.weaver.tools.StandardPointcutParser this
        start local 1 // java.lang.Class inScope
        start local 2 // org.aspectj.weaver.tools.PointcutParameter[] formalParameters
         0: .line 311
            aload 2 /* formalParameters */
            ifnonnull 2
         1: .line 312
            iconst_0
            anewarray org.aspectj.weaver.tools.PointcutParameter
            astore 2 /* formalParameters */
         2: .line 314
      StackMap locals:
      StackMap stack:
            aload 2 /* formalParameters */
            arraylength
            anewarray org.aspectj.weaver.patterns.FormalBinding
            astore 3 /* formalBindings */
        start local 3 // org.aspectj.weaver.patterns.FormalBinding[] formalBindings
         3: .line 315
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         4: goto 7
         5: .line 316
      StackMap locals: org.aspectj.weaver.patterns.FormalBinding[] int
      StackMap stack:
            aload 3 /* formalBindings */
            iload 4 /* i */
            new org.aspectj.weaver.patterns.FormalBinding
            dup
            aload 0 /* this */
            aload 2 /* formalParameters */
            iload 4 /* i */
            aaload
            invokeinterface org.aspectj.weaver.tools.PointcutParameter.getType:()Ljava/lang/Class;
            invokevirtual org.aspectj.weaver.tools.StandardPointcutParser.toUnresolvedType:(Ljava/lang/Class;)Lorg/aspectj/weaver/UnresolvedType;
            aload 2 /* formalParameters */
            iload 4 /* i */
            aaload
            invokeinterface org.aspectj.weaver.tools.PointcutParameter.getName:()Ljava/lang/String;
            iload 4 /* i */
            invokespecial org.aspectj.weaver.patterns.FormalBinding.<init>:(Lorg/aspectj/weaver/UnresolvedType;Ljava/lang/String;I)V
            aastore
         6: .line 315
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 4 /* i */
            aload 3 /* formalBindings */
            arraylength
            if_icmplt 5
        end local 4 // int i
         8: .line 318
            aload 1 /* inScope */
            ifnonnull 12
         9: .line 319
            new org.aspectj.weaver.patterns.SimpleScope
            dup
            aload 0 /* this */
            invokevirtual org.aspectj.weaver.tools.StandardPointcutParser.getWorld:()Lorg/aspectj/weaver/World;
            aload 3 /* formalBindings */
            invokespecial org.aspectj.weaver.patterns.SimpleScope.<init>:(Lorg/aspectj/weaver/World;[Lorg/aspectj/weaver/patterns/FormalBinding;)V
            astore 4 /* ss */
        start local 4 // org.aspectj.weaver.patterns.SimpleScope ss
        10: .line 320
            aload 4 /* ss */
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            ldc "java.lang."
            aastore
            dup
            iconst_1
            ldc "java.util."
            aastore
            invokevirtual org.aspectj.weaver.patterns.SimpleScope.setImportedPrefixes:([Ljava/lang/String;)V
        11: .line 321
            aload 4 /* ss */
            areturn
        end local 4 // org.aspectj.weaver.patterns.SimpleScope ss
        12: .line 323
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.aspectj.weaver.tools.StandardPointcutParser.getWorld:()Lorg/aspectj/weaver/World;
            aload 1 /* inScope */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual org.aspectj.weaver.World.resolve:(Ljava/lang/String;)Lorg/aspectj/weaver/ResolvedType;
            astore 4 /* inType */
        start local 4 // org.aspectj.weaver.ResolvedType inType
        13: .line 324
            new org.aspectj.weaver.tools.StandardPointcutParser$1
            dup
            aload 0 /* this */
            invokespecial org.aspectj.weaver.tools.StandardPointcutParser$1.<init>:(Lorg/aspectj/weaver/tools/StandardPointcutParser;)V
            astore 5 /* sourceContext */
        start local 5 // org.aspectj.weaver.ISourceContext sourceContext
        14: .line 340
            new org.aspectj.weaver.BindingScope
            dup
            aload 4 /* inType */
            aload 5 /* sourceContext */
            aload 3 /* formalBindings */
            invokespecial org.aspectj.weaver.BindingScope.<init>:(Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/weaver/ISourceContext;[Lorg/aspectj/weaver/patterns/FormalBinding;)V
            astore 6 /* bScope */
        start local 6 // org.aspectj.weaver.BindingScope bScope
        15: .line 341
            aload 6 /* bScope */
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            ldc "java.lang."
            aastore
            dup
            iconst_1
            ldc "java.util."
            aastore
            invokevirtual org.aspectj.weaver.BindingScope.setImportedPrefixes:([Ljava/lang/String;)V
        16: .line 342
            aload 6 /* bScope */
            areturn
        end local 6 // org.aspectj.weaver.BindingScope bScope
        end local 5 // org.aspectj.weaver.ISourceContext sourceContext
        end local 4 // org.aspectj.weaver.ResolvedType inType
        end local 3 // org.aspectj.weaver.patterns.FormalBinding[] formalBindings
        end local 2 // org.aspectj.weaver.tools.PointcutParameter[] formalParameters
        end local 1 // java.lang.Class inScope
        end local 0 // org.aspectj.weaver.tools.StandardPointcutParser this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   17     0              this  Lorg/aspectj/weaver/tools/StandardPointcutParser;
            0   17     1           inScope  Ljava/lang/Class;
            0   17     2  formalParameters  [Lorg/aspectj/weaver/tools/PointcutParameter;
            3   17     3    formalBindings  [Lorg/aspectj/weaver/patterns/FormalBinding;
            4    8     4                 i  I
           10   12     4                ss  Lorg/aspectj/weaver/patterns/SimpleScope;
           13   17     4            inType  Lorg/aspectj/weaver/ResolvedType;
           14   17     5     sourceContext  Lorg/aspectj/weaver/ISourceContext;
           15   17     6            bScope  Lorg/aspectj/weaver/BindingScope;
    MethodParameters:
                  Name  Flags
      inScope           
      formalParameters  

  private org.aspectj.weaver.UnresolvedType toUnresolvedType(java.lang.Class);
    descriptor: (Ljava/lang/Class;)Lorg/aspectj/weaver/UnresolvedType;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.aspectj.weaver.tools.StandardPointcutParser this
        start local 1 // java.lang.Class clazz
         0: .line 347
            aload 1 /* clazz */
            invokevirtual java.lang.Class.isArray:()Z
            ifeq 2
         1: .line 348
            aload 1 /* clazz */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            bipush 46
            bipush 47
            invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
            invokestatic org.aspectj.weaver.UnresolvedType.forSignature:(Ljava/lang/String;)Lorg/aspectj/weaver/UnresolvedType;
            areturn
         2: .line 350
      StackMap locals:
      StackMap stack:
            aload 1 /* clazz */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokestatic org.aspectj.weaver.UnresolvedType.forName:(Ljava/lang/String;)Lorg/aspectj/weaver/UnresolvedType;
            areturn
        end local 1 // java.lang.Class clazz
        end local 0 // org.aspectj.weaver.tools.StandardPointcutParser this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lorg/aspectj/weaver/tools/StandardPointcutParser;
            0    3     1  clazz  Ljava/lang/Class;
    MethodParameters:
       Name  Flags
      clazz  

  private void validateAgainstSupportedPrimitives(org.aspectj.weaver.patterns.Pointcut, java.lang.String);
    descriptor: (Lorg/aspectj/weaver/patterns/Pointcut;Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=5, args_size=3
        start local 0 // org.aspectj.weaver.tools.StandardPointcutParser this
        start local 1 // org.aspectj.weaver.patterns.Pointcut pc
        start local 2 // java.lang.String expression
         0: .line 355
            aload 1 /* pc */
            invokevirtual org.aspectj.weaver.patterns.Pointcut.getPointcutKind:()B
            tableswitch { // 1 - 22
                    1: 13
                    2: 25
                    3: 20
                    4: 4
                    5: 1
                    6: 17
                    7: 15
                    8: 42
                    9: 12
                   10: 6
                   11: 45
                   12: 27
                   13: 10
                   14: 12
                   15: 12
                   16: 36
                   17: 38
                   18: 40
                   19: 29
                   20: 45
                   21: 34
                   22: 44
              default: 45
          }
         1: .line 357
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* pc */
            checkcast org.aspectj.weaver.patterns.AndPointcut
            invokevirtual org.aspectj.weaver.patterns.AndPointcut.getLeft:()Lorg/aspectj/weaver/patterns/Pointcut;
            aload 2 /* expression */
            invokevirtual org.aspectj.weaver.tools.StandardPointcutParser.validateAgainstSupportedPrimitives:(Lorg/aspectj/weaver/patterns/Pointcut;Ljava/lang/String;)V
         2: .line 358
            aload 0 /* this */
            aload 1 /* pc */
            checkcast org.aspectj.weaver.patterns.AndPointcut
            invokevirtual org.aspectj.weaver.patterns.AndPointcut.getRight:()Lorg/aspectj/weaver/patterns/Pointcut;
            aload 2 /* expression */
            invokevirtual org.aspectj.weaver.tools.StandardPointcutParser.validateAgainstSupportedPrimitives:(Lorg/aspectj/weaver/patterns/Pointcut;Ljava/lang/String;)V
         3: .line 359
            goto 46
         4: .line 361
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.StandardPointcutParser.supportedPrimitives:Ljava/util/Set;
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.ARGS:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 46
         5: .line 362
            new org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException
            dup
            aload 2 /* expression */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.ARGS:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokespecial org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/tools/PointcutPrimitive;)V
            athrow
         6: .line 366
      StackMap locals:
      StackMap stack:
            aload 1 /* pc */
            checkcast org.aspectj.weaver.patterns.CflowPointcut
            astore 3 /* cfp */
        start local 3 // org.aspectj.weaver.patterns.CflowPointcut cfp
         7: .line 367
            aload 3 /* cfp */
            invokevirtual org.aspectj.weaver.patterns.CflowPointcut.isCflowBelow:()Z
            ifeq 9
         8: .line 368
            new org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException
            dup
            aload 2 /* expression */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.CFLOW_BELOW:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokespecial org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/tools/PointcutPrimitive;)V
            athrow
         9: .line 370
      StackMap locals: org.aspectj.weaver.patterns.CflowPointcut
      StackMap stack:
            new org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException
            dup
            aload 2 /* expression */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.CFLOW:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokespecial org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/tools/PointcutPrimitive;)V
            athrow
        end local 3 // org.aspectj.weaver.patterns.CflowPointcut cfp
        10: .line 373
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.StandardPointcutParser.supportedPrimitives:Ljava/util/Set;
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.HANDLER:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 46
        11: .line 374
            new org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException
            dup
            aload 2 /* expression */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.HANDLER:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokespecial org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/tools/PointcutPrimitive;)V
            athrow
        12: .line 380
      StackMap locals:
      StackMap stack:
            new org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException
            dup
            aload 2 /* expression */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.IF:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokespecial org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/tools/PointcutPrimitive;)V
            athrow
        13: .line 382
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* pc */
            checkcast org.aspectj.weaver.patterns.KindedPointcut
            aload 2 /* expression */
            invokevirtual org.aspectj.weaver.tools.StandardPointcutParser.validateKindedPointcut:(Lorg/aspectj/weaver/patterns/KindedPointcut;Ljava/lang/String;)V
        14: .line 383
            goto 46
        15: .line 385
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* pc */
            checkcast org.aspectj.weaver.patterns.NotPointcut
            invokevirtual org.aspectj.weaver.patterns.NotPointcut.getNegatedPointcut:()Lorg/aspectj/weaver/patterns/Pointcut;
            aload 2 /* expression */
            invokevirtual org.aspectj.weaver.tools.StandardPointcutParser.validateAgainstSupportedPrimitives:(Lorg/aspectj/weaver/patterns/Pointcut;Ljava/lang/String;)V
        16: .line 386
            goto 46
        17: .line 388
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* pc */
            checkcast org.aspectj.weaver.patterns.OrPointcut
            invokevirtual org.aspectj.weaver.patterns.OrPointcut.getLeft:()Lorg/aspectj/weaver/patterns/Pointcut;
            aload 2 /* expression */
            invokevirtual org.aspectj.weaver.tools.StandardPointcutParser.validateAgainstSupportedPrimitives:(Lorg/aspectj/weaver/patterns/Pointcut;Ljava/lang/String;)V
        18: .line 389
            aload 0 /* this */
            aload 1 /* pc */
            checkcast org.aspectj.weaver.patterns.OrPointcut
            invokevirtual org.aspectj.weaver.patterns.OrPointcut.getRight:()Lorg/aspectj/weaver/patterns/Pointcut;
            aload 2 /* expression */
            invokevirtual org.aspectj.weaver.tools.StandardPointcutParser.validateAgainstSupportedPrimitives:(Lorg/aspectj/weaver/patterns/Pointcut;Ljava/lang/String;)V
        19: .line 390
            goto 46
        20: .line 392
      StackMap locals:
      StackMap stack:
            aload 1 /* pc */
            checkcast org.aspectj.weaver.patterns.ThisOrTargetPointcut
            invokevirtual org.aspectj.weaver.patterns.ThisOrTargetPointcut.isThis:()Z
            istore 4 /* isThis */
        start local 4 // boolean isThis
        21: .line 393
            iload 4 /* isThis */
            ifeq 23
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.StandardPointcutParser.supportedPrimitives:Ljava/util/Set;
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.THIS:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 23
        22: .line 394
            new org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException
            dup
            aload 2 /* expression */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.THIS:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokespecial org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/tools/PointcutPrimitive;)V
            athrow
        23: .line 395
      StackMap locals: org.aspectj.weaver.tools.StandardPointcutParser org.aspectj.weaver.patterns.Pointcut java.lang.String top int
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.StandardPointcutParser.supportedPrimitives:Ljava/util/Set;
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.TARGET:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 46
        24: .line 396
            new org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException
            dup
            aload 2 /* expression */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.TARGET:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokespecial org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/tools/PointcutPrimitive;)V
            athrow
        end local 4 // boolean isThis
        25: .line 400
      StackMap locals: org.aspectj.weaver.tools.StandardPointcutParser org.aspectj.weaver.patterns.Pointcut java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.StandardPointcutParser.supportedPrimitives:Ljava/util/Set;
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.WITHIN:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 46
        26: .line 401
            new org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException
            dup
            aload 2 /* expression */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.WITHIN:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokespecial org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/tools/PointcutPrimitive;)V
            athrow
        27: .line 405
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.StandardPointcutParser.supportedPrimitives:Ljava/util/Set;
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.WITHIN_CODE:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 46
        28: .line 406
            new org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException
            dup
            aload 2 /* expression */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.WITHIN_CODE:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokespecial org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/tools/PointcutPrimitive;)V
            athrow
        29: .line 410
      StackMap locals:
      StackMap stack:
            aload 1 /* pc */
            checkcast org.aspectj.weaver.patterns.ThisOrTargetAnnotationPointcut
            invokevirtual org.aspectj.weaver.patterns.ThisOrTargetAnnotationPointcut.isThis:()Z
            istore 4 /* isThis */
        start local 4 // boolean isThis
        30: .line 411
            iload 4 /* isThis */
            ifeq 32
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.StandardPointcutParser.supportedPrimitives:Ljava/util/Set;
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.AT_THIS:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 32
        31: .line 412
            new org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException
            dup
            aload 2 /* expression */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.AT_THIS:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokespecial org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/tools/PointcutPrimitive;)V
            athrow
        32: .line 413
      StackMap locals: org.aspectj.weaver.tools.StandardPointcutParser org.aspectj.weaver.patterns.Pointcut java.lang.String top int
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.StandardPointcutParser.supportedPrimitives:Ljava/util/Set;
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.AT_TARGET:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 46
        33: .line 414
            new org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException
            dup
            aload 2 /* expression */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.AT_TARGET:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokespecial org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/tools/PointcutPrimitive;)V
            athrow
        end local 4 // boolean isThis
        34: .line 418
      StackMap locals: org.aspectj.weaver.tools.StandardPointcutParser org.aspectj.weaver.patterns.Pointcut java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.StandardPointcutParser.supportedPrimitives:Ljava/util/Set;
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.AT_ARGS:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 46
        35: .line 419
            new org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException
            dup
            aload 2 /* expression */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.AT_ARGS:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokespecial org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/tools/PointcutPrimitive;)V
            athrow
        36: .line 423
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.StandardPointcutParser.supportedPrimitives:Ljava/util/Set;
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.AT_ANNOTATION:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 46
        37: .line 424
            new org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException
            dup
            aload 2 /* expression */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.AT_ANNOTATION:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokespecial org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/tools/PointcutPrimitive;)V
            athrow
        38: .line 428
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.StandardPointcutParser.supportedPrimitives:Ljava/util/Set;
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.AT_WITHIN:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 46
        39: .line 429
            new org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException
            dup
            aload 2 /* expression */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.AT_WITHIN:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokespecial org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/tools/PointcutPrimitive;)V
            athrow
        40: .line 433
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.StandardPointcutParser.supportedPrimitives:Ljava/util/Set;
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.AT_WITHINCODE:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 46
        41: .line 434
            new org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException
            dup
            aload 2 /* expression */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.AT_WITHINCODE:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokespecial org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/tools/PointcutPrimitive;)V
            athrow
        42: .line 438
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.StandardPointcutParser.supportedPrimitives:Ljava/util/Set;
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.REFERENCE:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 46
        43: .line 439
            new org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException
            dup
            aload 2 /* expression */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.REFERENCE:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokespecial org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/tools/PointcutPrimitive;)V
            athrow
        44: .line 444
      StackMap locals:
      StackMap stack:
            goto 46
        45: .line 447
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unknown pointcut kind: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* pc */
            invokevirtual org.aspectj.weaver.patterns.Pointcut.getPointcutKind:()B
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        46: .line 449
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.lang.String expression
        end local 1 // org.aspectj.weaver.patterns.Pointcut pc
        end local 0 // org.aspectj.weaver.tools.StandardPointcutParser this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   47     0        this  Lorg/aspectj/weaver/tools/StandardPointcutParser;
            0   47     1          pc  Lorg/aspectj/weaver/patterns/Pointcut;
            0   47     2  expression  Ljava/lang/String;
            7   10     3         cfp  Lorg/aspectj/weaver/patterns/CflowPointcut;
           21   25     4      isThis  Z
           30   34     4      isThis  Z
    MethodParameters:
            Name  Flags
      pc          
      expression  

  private void validateKindedPointcut(org.aspectj.weaver.patterns.KindedPointcut, java.lang.String);
    descriptor: (Lorg/aspectj/weaver/patterns/KindedPointcut;Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // org.aspectj.weaver.tools.StandardPointcutParser this
        start local 1 // org.aspectj.weaver.patterns.KindedPointcut pc
        start local 2 // java.lang.String expression
         0: .line 452
            aload 1 /* pc */
            invokevirtual org.aspectj.weaver.patterns.KindedPointcut.getKind:()Lorg/aspectj/weaver/Shadow$Kind;
            astore 3 /* kind */
        start local 3 // org.aspectj.weaver.Shadow$Kind kind
         1: .line 453
            aload 3 /* kind */
            getstatic org.aspectj.weaver.Shadow.MethodCall:Lorg/aspectj/weaver/Shadow$Kind;
            if_acmpeq 2
            aload 3 /* kind */
            getstatic org.aspectj.weaver.Shadow.ConstructorCall:Lorg/aspectj/weaver/Shadow$Kind;
            if_acmpne 4
         2: .line 454
      StackMap locals: org.aspectj.weaver.Shadow$Kind
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.StandardPointcutParser.supportedPrimitives:Ljava/util/Set;
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.CALL:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 25
         3: .line 455
            new org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException
            dup
            aload 2 /* expression */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.CALL:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokespecial org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/tools/PointcutPrimitive;)V
            athrow
         4: .line 457
      StackMap locals:
      StackMap stack:
            aload 3 /* kind */
            getstatic org.aspectj.weaver.Shadow.MethodExecution:Lorg/aspectj/weaver/Shadow$Kind;
            if_acmpeq 5
            aload 3 /* kind */
            getstatic org.aspectj.weaver.Shadow.ConstructorExecution:Lorg/aspectj/weaver/Shadow$Kind;
            if_acmpne 7
         5: .line 458
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.StandardPointcutParser.supportedPrimitives:Ljava/util/Set;
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.EXECUTION:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 25
         6: .line 459
            new org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException
            dup
            aload 2 /* expression */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.EXECUTION:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokespecial org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/tools/PointcutPrimitive;)V
            athrow
         7: .line 461
      StackMap locals:
      StackMap stack:
            aload 3 /* kind */
            getstatic org.aspectj.weaver.Shadow.AdviceExecution:Lorg/aspectj/weaver/Shadow$Kind;
            if_acmpne 10
         8: .line 462
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.StandardPointcutParser.supportedPrimitives:Ljava/util/Set;
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.ADVICE_EXECUTION:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 25
         9: .line 463
            new org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException
            dup
            aload 2 /* expression */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.ADVICE_EXECUTION:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokespecial org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/tools/PointcutPrimitive;)V
            athrow
        10: .line 465
      StackMap locals:
      StackMap stack:
            aload 3 /* kind */
            getstatic org.aspectj.weaver.Shadow.FieldGet:Lorg/aspectj/weaver/Shadow$Kind;
            if_acmpne 13
        11: .line 466
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.StandardPointcutParser.supportedPrimitives:Ljava/util/Set;
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.GET:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 25
        12: .line 467
            new org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException
            dup
            aload 2 /* expression */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.GET:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokespecial org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/tools/PointcutPrimitive;)V
            athrow
        13: .line 469
      StackMap locals:
      StackMap stack:
            aload 3 /* kind */
            getstatic org.aspectj.weaver.Shadow.FieldSet:Lorg/aspectj/weaver/Shadow$Kind;
            if_acmpne 16
        14: .line 470
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.StandardPointcutParser.supportedPrimitives:Ljava/util/Set;
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.SET:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 25
        15: .line 471
            new org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException
            dup
            aload 2 /* expression */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.SET:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokespecial org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/tools/PointcutPrimitive;)V
            athrow
        16: .line 473
      StackMap locals:
      StackMap stack:
            aload 3 /* kind */
            getstatic org.aspectj.weaver.Shadow.Initialization:Lorg/aspectj/weaver/Shadow$Kind;
            if_acmpne 19
        17: .line 474
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.StandardPointcutParser.supportedPrimitives:Ljava/util/Set;
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.INITIALIZATION:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 25
        18: .line 475
            new org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException
            dup
            aload 2 /* expression */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.INITIALIZATION:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokespecial org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/tools/PointcutPrimitive;)V
            athrow
        19: .line 477
      StackMap locals:
      StackMap stack:
            aload 3 /* kind */
            getstatic org.aspectj.weaver.Shadow.PreInitialization:Lorg/aspectj/weaver/Shadow$Kind;
            if_acmpne 22
        20: .line 478
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.StandardPointcutParser.supportedPrimitives:Ljava/util/Set;
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.PRE_INITIALIZATION:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 25
        21: .line 479
            new org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException
            dup
            aload 2 /* expression */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.PRE_INITIALIZATION:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokespecial org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/tools/PointcutPrimitive;)V
            athrow
        22: .line 481
      StackMap locals:
      StackMap stack:
            aload 3 /* kind */
            getstatic org.aspectj.weaver.Shadow.StaticInitialization:Lorg/aspectj/weaver/Shadow$Kind;
            if_acmpne 25
        23: .line 482
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.StandardPointcutParser.supportedPrimitives:Ljava/util/Set;
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.STATIC_INITIALIZATION:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 25
        24: .line 483
            new org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException
            dup
            aload 2 /* expression */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.STATIC_INITIALIZATION:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokespecial org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/tools/PointcutPrimitive;)V
            athrow
        25: .line 486
      StackMap locals:
      StackMap stack:
            return
        end local 3 // org.aspectj.weaver.Shadow$Kind kind
        end local 2 // java.lang.String expression
        end local 1 // org.aspectj.weaver.patterns.KindedPointcut pc
        end local 0 // org.aspectj.weaver.tools.StandardPointcutParser this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   26     0        this  Lorg/aspectj/weaver/tools/StandardPointcutParser;
            0   26     1          pc  Lorg/aspectj/weaver/patterns/KindedPointcut;
            0   26     2  expression  Ljava/lang/String;
            1   26     3        kind  Lorg/aspectj/weaver/Shadow$Kind;
    MethodParameters:
            Name  Flags
      pc          
      expression  

  private java.lang.String buildUserMessageFromParserException(java.lang.String, org.aspectj.weaver.patterns.ParserException);
    descriptor: (Ljava/lang/String;Lorg/aspectj/weaver/patterns/ParserException;)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=6, args_size=3
        start local 0 // org.aspectj.weaver.tools.StandardPointcutParser this
        start local 1 // java.lang.String pc
        start local 2 // org.aspectj.weaver.patterns.ParserException ex
         0: .line 489
            new java.lang.StringBuffer
            dup
            invokespecial java.lang.StringBuffer.<init>:()V
            astore 3 /* msg */
        start local 3 // java.lang.StringBuffer msg
         1: .line 490
            aload 3 /* msg */
            ldc "Pointcut is not well-formed: expecting '"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         2: .line 491
            aload 3 /* msg */
            aload 2 /* ex */
            invokevirtual org.aspectj.weaver.patterns.ParserException.getMessage:()Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         3: .line 492
            aload 3 /* msg */
            ldc "'"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         4: .line 493
            aload 2 /* ex */
            invokevirtual org.aspectj.weaver.patterns.ParserException.getLocation:()Lorg/aspectj/weaver/IHasPosition;
            astore 4 /* location */
        start local 4 // org.aspectj.weaver.IHasPosition location
         5: .line 494
            aload 3 /* msg */
            ldc " at character position "
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         6: .line 495
            aload 3 /* msg */
            aload 4 /* location */
            invokeinterface org.aspectj.weaver.IHasPosition.getStart:()I
            invokevirtual java.lang.StringBuffer.append:(I)Ljava/lang/StringBuffer;
            pop
         7: .line 496
            aload 3 /* msg */
            ldc "\n"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         8: .line 497
            aload 3 /* msg */
            aload 1 /* pc */
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         9: .line 498
            aload 3 /* msg */
            ldc "\n"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        10: .line 499
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        11: goto 14
        12: .line 500
      StackMap locals: java.lang.StringBuffer org.aspectj.weaver.IHasPosition int
      StackMap stack:
            aload 3 /* msg */
            ldc " "
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        13: .line 499
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        14: iload 5 /* i */
            aload 4 /* location */
            invokeinterface org.aspectj.weaver.IHasPosition.getStart:()I
            if_icmplt 12
        end local 5 // int i
        15: .line 502
            aload 4 /* location */
            invokeinterface org.aspectj.weaver.IHasPosition.getStart:()I
            istore 5 /* j */
        start local 5 // int j
        16: goto 19
        17: .line 503
      StackMap locals:
      StackMap stack:
            aload 3 /* msg */
            ldc "^"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        18: .line 502
            iinc 5 /* j */ 1
      StackMap locals:
      StackMap stack:
        19: iload 5 /* j */
            aload 4 /* location */
            invokeinterface org.aspectj.weaver.IHasPosition.getEnd:()I
            if_icmple 17
        end local 5 // int j
        20: .line 505
            aload 3 /* msg */
            ldc "\n"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        21: .line 506
            aload 3 /* msg */
            invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
            areturn
        end local 4 // org.aspectj.weaver.IHasPosition location
        end local 3 // java.lang.StringBuffer msg
        end local 2 // org.aspectj.weaver.patterns.ParserException ex
        end local 1 // java.lang.String pc
        end local 0 // org.aspectj.weaver.tools.StandardPointcutParser this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   22     0      this  Lorg/aspectj/weaver/tools/StandardPointcutParser;
            0   22     1        pc  Ljava/lang/String;
            0   22     2        ex  Lorg/aspectj/weaver/patterns/ParserException;
            1   22     3       msg  Ljava/lang/StringBuffer;
            5   22     4  location  Lorg/aspectj/weaver/IHasPosition;
           11   15     5         i  I
           16   20     5         j  I
    MethodParameters:
      Name  Flags
      pc    
      ex    
}
SourceFile: "StandardPointcutParser.java"
NestMembers:
  org.aspectj.weaver.tools.StandardPointcutParser$1
InnerClasses:
  public final Kind = org.aspectj.weaver.Shadow$Kind of org.aspectj.weaver.Shadow
  public ReflectionWorldException = org.aspectj.weaver.reflect.ReflectionWorld$ReflectionWorldException of org.aspectj.weaver.reflect.ReflectionWorld
  org.aspectj.weaver.tools.StandardPointcutParser$1