public class org.apache.xpath.patterns.StepPattern extends org.apache.xpath.patterns.NodeTest implements org.apache.xpath.axes.SubContextList, org.apache.xpath.ExpressionOwner
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.xpath.patterns.StepPattern
  super_class: org.apache.xpath.patterns.NodeTest
{
  static final long serialVersionUID;
    descriptor: J
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 9071668960168152644

  protected int m_axis;
    descriptor: I
    flags: (0x0004) ACC_PROTECTED

  java.lang.String m_targetString;
    descriptor: Ljava/lang/String;
    flags: (0x0000) 

  org.apache.xpath.patterns.StepPattern m_relativePathPattern;
    descriptor: Lorg/apache/xpath/patterns/StepPattern;
    flags: (0x0000) 

  org.apache.xpath.Expression[] m_predicates;
    descriptor: [Lorg/apache/xpath/Expression;
    flags: (0x0000) 

  private static final boolean DEBUG_MATCHES;
    descriptor: Z
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  public void <init>(int, java.lang.String, java.lang.String, int, int);
    descriptor: (ILjava/lang/String;Ljava/lang/String;II)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=6
        start local 0 // org.apache.xpath.patterns.StepPattern this
        start local 1 // int whatToShow
        start local 2 // java.lang.String namespace
        start local 3 // java.lang.String name
        start local 4 // int axis
        start local 5 // int axisForPredicate
         0: .line 60
            aload 0 /* this */
            iload 1 /* whatToShow */
            aload 2 /* namespace */
            aload 3 /* name */
            invokespecial org.apache.xpath.patterns.NodeTest.<init>:(ILjava/lang/String;Ljava/lang/String;)V
         1: .line 62
            aload 0 /* this */
            iload 4 /* axis */
            putfield org.apache.xpath.patterns.StepPattern.m_axis:I
         2: .line 63
            return
        end local 5 // int axisForPredicate
        end local 4 // int axis
        end local 3 // java.lang.String name
        end local 2 // java.lang.String namespace
        end local 1 // int whatToShow
        end local 0 // org.apache.xpath.patterns.StepPattern this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    3     0              this  Lorg/apache/xpath/patterns/StepPattern;
            0    3     1        whatToShow  I
            0    3     2         namespace  Ljava/lang/String;
            0    3     3              name  Ljava/lang/String;
            0    3     4              axis  I
            0    3     5  axisForPredicate  I
    MethodParameters:
                  Name  Flags
      whatToShow        
      namespace         
      name              
      axis              
      axisForPredicate  

  public void <init>(int, int, int);
    descriptor: (III)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // org.apache.xpath.patterns.StepPattern this
        start local 1 // int whatToShow
        start local 2 // int axis
        start local 3 // int axisForPredicate
         0: .line 76
            aload 0 /* this */
            iload 1 /* whatToShow */
            invokespecial org.apache.xpath.patterns.NodeTest.<init>:(I)V
         1: .line 78
            aload 0 /* this */
            iload 2 /* axis */
            putfield org.apache.xpath.patterns.StepPattern.m_axis:I
         2: .line 79
            return
        end local 3 // int axisForPredicate
        end local 2 // int axis
        end local 1 // int whatToShow
        end local 0 // org.apache.xpath.patterns.StepPattern this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    3     0              this  Lorg/apache/xpath/patterns/StepPattern;
            0    3     1        whatToShow  I
            0    3     2              axis  I
            0    3     3  axisForPredicate  I
    MethodParameters:
                  Name  Flags
      whatToShow        
      axis              
      axisForPredicate  

  public void calcTargetString();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.apache.xpath.patterns.StepPattern this
         0: .line 96
            aload 0 /* this */
            invokevirtual org.apache.xpath.patterns.StepPattern.getWhatToShow:()I
            istore 1 /* whatToShow */
        start local 1 // int whatToShow
         1: .line 98
            iload 1 /* whatToShow */
            lookupswitch { // 8
                   -1: 6
                    1: 10
                    4: 4
                    8: 4
                   12: 4
                  128: 2
                  256: 8
                 1280: 8
              default: 14
          }
         2: .line 101
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            ldc "#comment"
            putfield org.apache.xpath.patterns.StepPattern.m_targetString:Ljava/lang/String;
         3: .line 102
            goto 15
         4: .line 106
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "#text"
            putfield org.apache.xpath.patterns.StepPattern.m_targetString:Ljava/lang/String;
         5: .line 107
            goto 15
         6: .line 109
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "*"
            putfield org.apache.xpath.patterns.StepPattern.m_targetString:Ljava/lang/String;
         7: .line 110
            goto 15
         8: .line 113
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "/"
            putfield org.apache.xpath.patterns.StepPattern.m_targetString:Ljava/lang/String;
         9: .line 114
            goto 15
        10: .line 116
      StackMap locals:
      StackMap stack:
            ldc "*"
            aload 0 /* this */
            getfield org.apache.xpath.patterns.StepPattern.m_name:Ljava/lang/String;
            if_acmpne 12
        11: .line 117
            aload 0 /* this */
            ldc "*"
            putfield org.apache.xpath.patterns.StepPattern.m_targetString:Ljava/lang/String;
            goto 15
        12: .line 119
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.xpath.patterns.StepPattern.m_name:Ljava/lang/String;
            putfield org.apache.xpath.patterns.StepPattern.m_targetString:Ljava/lang/String;
        13: .line 120
            goto 15
        14: .line 122
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "*"
            putfield org.apache.xpath.patterns.StepPattern.m_targetString:Ljava/lang/String;
        15: .line 125
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int whatToShow
        end local 0 // org.apache.xpath.patterns.StepPattern this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   16     0        this  Lorg/apache/xpath/patterns/StepPattern;
            1   16     1  whatToShow  I

  public java.lang.String getTargetString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.xpath.patterns.StepPattern this
         0: .line 137
            aload 0 /* this */
            getfield org.apache.xpath.patterns.StepPattern.m_targetString:Ljava/lang/String;
            areturn
        end local 0 // org.apache.xpath.patterns.StepPattern this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/xpath/patterns/StepPattern;

  public void fixupVariables(java.util.Vector, int);
    descriptor: (Ljava/util/Vector;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.apache.xpath.patterns.StepPattern this
        start local 1 // java.util.Vector vars
        start local 2 // int globalsSize
         0: .line 161
            aload 0 /* this */
            aload 1 /* vars */
            iload 2 /* globalsSize */
            invokespecial org.apache.xpath.patterns.NodeTest.fixupVariables:(Ljava/util/Vector;I)V
         1: .line 163
            aload 0 /* this */
            getfield org.apache.xpath.patterns.StepPattern.m_predicates:[Lorg/apache/xpath/Expression;
            ifnull 7
         2: .line 165
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         3: goto 6
         4: .line 167
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.xpath.patterns.StepPattern.m_predicates:[Lorg/apache/xpath/Expression;
            iload 3 /* i */
            aaload
            aload 1 /* vars */
            iload 2 /* globalsSize */
            invokevirtual org.apache.xpath.Expression.fixupVariables:(Ljava/util/Vector;I)V
         5: .line 165
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 3 /* i */
            aload 0 /* this */
            getfield org.apache.xpath.patterns.StepPattern.m_predicates:[Lorg/apache/xpath/Expression;
            arraylength
            if_icmplt 4
        end local 3 // int i
         7: .line 171
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.xpath.patterns.StepPattern.m_relativePathPattern:Lorg/apache/xpath/patterns/StepPattern;
            ifnull 9
         8: .line 173
            aload 0 /* this */
            getfield org.apache.xpath.patterns.StepPattern.m_relativePathPattern:Lorg/apache/xpath/patterns/StepPattern;
            aload 1 /* vars */
            iload 2 /* globalsSize */
            invokevirtual org.apache.xpath.patterns.StepPattern.fixupVariables:(Ljava/util/Vector;I)V
         9: .line 175
      StackMap locals:
      StackMap stack:
            return
        end local 2 // int globalsSize
        end local 1 // java.util.Vector vars
        end local 0 // org.apache.xpath.patterns.StepPattern this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   10     0         this  Lorg/apache/xpath/patterns/StepPattern;
            0   10     1         vars  Ljava/util/Vector;
            0   10     2  globalsSize  I
            3    7     3            i  I
    MethodParameters:
             Name  Flags
      vars         
      globalsSize  

  public void setRelativePathPattern(org.apache.xpath.patterns.StepPattern);
    descriptor: (Lorg/apache/xpath/patterns/StepPattern;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.xpath.patterns.StepPattern this
        start local 1 // org.apache.xpath.patterns.StepPattern expr
         0: .line 187
            aload 0 /* this */
            aload 1 /* expr */
            putfield org.apache.xpath.patterns.StepPattern.m_relativePathPattern:Lorg/apache/xpath/patterns/StepPattern;
         1: .line 188
            aload 1 /* expr */
            aload 0 /* this */
            invokevirtual org.apache.xpath.patterns.StepPattern.exprSetParent:(Lorg/apache/xpath/ExpressionNode;)V
         2: .line 190
            aload 0 /* this */
            invokevirtual org.apache.xpath.patterns.StepPattern.calcScore:()V
         3: .line 191
            return
        end local 1 // org.apache.xpath.patterns.StepPattern expr
        end local 0 // org.apache.xpath.patterns.StepPattern this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/apache/xpath/patterns/StepPattern;
            0    4     1  expr  Lorg/apache/xpath/patterns/StepPattern;
    MethodParameters:
      Name  Flags
      expr  

  public org.apache.xpath.patterns.StepPattern getRelativePathPattern();
    descriptor: ()Lorg/apache/xpath/patterns/StepPattern;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.xpath.patterns.StepPattern this
         0: .line 202
            aload 0 /* this */
            getfield org.apache.xpath.patterns.StepPattern.m_relativePathPattern:Lorg/apache/xpath/patterns/StepPattern;
            areturn
        end local 0 // org.apache.xpath.patterns.StepPattern this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/xpath/patterns/StepPattern;

  public org.apache.xpath.Expression[] getPredicates();
    descriptor: ()[Lorg/apache/xpath/Expression;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.xpath.patterns.StepPattern this
         0: .line 220
            aload 0 /* this */
            getfield org.apache.xpath.patterns.StepPattern.m_predicates:[Lorg/apache/xpath/Expression;
            areturn
        end local 0 // org.apache.xpath.patterns.StepPattern this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/xpath/patterns/StepPattern;

  public boolean canTraverseOutsideSubtree();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // org.apache.xpath.patterns.StepPattern this
         0: .line 241
            aload 0 /* this */
            invokevirtual org.apache.xpath.patterns.StepPattern.getPredicateCount:()I
            istore 1 /* n */
        start local 1 // int n
         1: .line 243
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         2: goto 6
         3: .line 245
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            iload 2 /* i */
            invokevirtual org.apache.xpath.patterns.StepPattern.getPredicate:(I)Lorg/apache/xpath/Expression;
            invokevirtual org.apache.xpath.Expression.canTraverseOutsideSubtree:()Z
            ifeq 5
         4: .line 246
            iconst_1
            ireturn
         5: .line 243
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 2 /* i */
            iload 1 /* n */
            if_icmplt 3
        end local 2 // int i
         7: .line 249
            iconst_0
            ireturn
        end local 1 // int n
        end local 0 // org.apache.xpath.patterns.StepPattern this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lorg/apache/xpath/patterns/StepPattern;
            1    8     1     n  I
            2    7     2     i  I

  public org.apache.xpath.Expression getPredicate(int);
    descriptor: (I)Lorg/apache/xpath/Expression;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.xpath.patterns.StepPattern this
        start local 1 // int i
         0: .line 262
            aload 0 /* this */
            getfield org.apache.xpath.patterns.StepPattern.m_predicates:[Lorg/apache/xpath/Expression;
            iload 1 /* i */
            aaload
            areturn
        end local 1 // int i
        end local 0 // org.apache.xpath.patterns.StepPattern this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/xpath/patterns/StepPattern;
            0    1     1     i  I
    MethodParameters:
      Name  Flags
      i     

  public final int getPredicateCount();
    descriptor: ()I
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.xpath.patterns.StepPattern this
         0: .line 273
            aload 0 /* this */
            getfield org.apache.xpath.patterns.StepPattern.m_predicates:[Lorg/apache/xpath/Expression;
            ifnonnull 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* this */
            getfield org.apache.xpath.patterns.StepPattern.m_predicates:[Lorg/apache/xpath/Expression;
            arraylength
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 0 // org.apache.xpath.patterns.StepPattern this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/apache/xpath/patterns/StepPattern;

  public void setPredicates(org.apache.xpath.Expression[]);
    descriptor: ([Lorg/apache/xpath/Expression;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.apache.xpath.patterns.StepPattern this
        start local 1 // org.apache.xpath.Expression[] predicates
         0: .line 286
            aload 0 /* this */
            aload 1 /* predicates */
            putfield org.apache.xpath.patterns.StepPattern.m_predicates:[Lorg/apache/xpath/Expression;
         1: .line 287
            aload 1 /* predicates */
            ifnull 7
         2: .line 289
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         3: goto 6
         4: .line 291
      StackMap locals: int
      StackMap stack:
            aload 1 /* predicates */
            iload 2 /* i */
            aaload
            aload 0 /* this */
            invokevirtual org.apache.xpath.Expression.exprSetParent:(Lorg/apache/xpath/ExpressionNode;)V
         5: .line 289
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 2 /* i */
            aload 1 /* predicates */
            arraylength
            if_icmplt 4
        end local 2 // int i
         7: .line 295
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.xpath.patterns.StepPattern.calcScore:()V
         8: .line 296
            return
        end local 1 // org.apache.xpath.Expression[] predicates
        end local 0 // org.apache.xpath.patterns.StepPattern this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    9     0        this  Lorg/apache/xpath/patterns/StepPattern;
            0    9     1  predicates  [Lorg/apache/xpath/Expression;
            3    7     2           i  I
    MethodParameters:
            Name  Flags
      predicates  

  public void calcScore();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.xpath.patterns.StepPattern this
         0: .line 304
            aload 0 /* this */
            invokevirtual org.apache.xpath.patterns.StepPattern.getPredicateCount:()I
            ifgt 1
            aload 0 /* this */
            getfield org.apache.xpath.patterns.StepPattern.m_relativePathPattern:Lorg/apache/xpath/patterns/StepPattern;
            ifnull 3
         1: .line 306
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic org.apache.xpath.patterns.StepPattern.SCORE_OTHER:Lorg/apache/xpath/objects/XNumber;
            putfield org.apache.xpath.patterns.StepPattern.m_score:Lorg/apache/xpath/objects/XNumber;
         2: .line 307
            goto 4
         3: .line 309
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokespecial org.apache.xpath.patterns.NodeTest.calcScore:()V
         4: .line 311
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.xpath.patterns.StepPattern.m_targetString:Ljava/lang/String;
            ifnonnull 6
         5: .line 312
            aload 0 /* this */
            invokevirtual org.apache.xpath.patterns.StepPattern.calcTargetString:()V
         6: .line 313
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.apache.xpath.patterns.StepPattern this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lorg/apache/xpath/patterns/StepPattern;

  public org.apache.xpath.objects.XObject execute(org.apache.xpath.XPathContext, int);
    descriptor: (Lorg/apache/xpath/XPathContext;I)Lorg/apache/xpath/objects/XObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=3
        start local 0 // org.apache.xpath.patterns.StepPattern this
        start local 1 // org.apache.xpath.XPathContext xctxt
        start local 2 // int currentNode
         0: .line 334
            aload 1 /* xctxt */
            iload 2 /* currentNode */
            invokevirtual org.apache.xpath.XPathContext.getDTM:(I)Lorg/apache/xml/dtm/DTM;
            astore 3 /* dtm */
        start local 3 // org.apache.xml.dtm.DTM dtm
         1: .line 336
            aload 3 /* dtm */
            ifnull 4
         2: .line 338
            aload 3 /* dtm */
            iload 2 /* currentNode */
            invokeinterface org.apache.xml.dtm.DTM.getExpandedTypeID:(I)I
            istore 4 /* expType */
        start local 4 // int expType
         3: .line 340
            aload 0 /* this */
            aload 1 /* xctxt */
            iload 2 /* currentNode */
            aload 3 /* dtm */
            iload 4 /* expType */
            invokevirtual org.apache.xpath.patterns.StepPattern.execute:(Lorg/apache/xpath/XPathContext;ILorg/apache/xml/dtm/DTM;I)Lorg/apache/xpath/objects/XObject;
            areturn
        end local 4 // int expType
         4: .line 343
      StackMap locals: org.apache.xml.dtm.DTM
      StackMap stack:
            getstatic org.apache.xpath.patterns.NodeTest.SCORE_NONE:Lorg/apache/xpath/objects/XNumber;
            areturn
        end local 3 // org.apache.xml.dtm.DTM dtm
        end local 2 // int currentNode
        end local 1 // org.apache.xpath.XPathContext xctxt
        end local 0 // org.apache.xpath.patterns.StepPattern this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0         this  Lorg/apache/xpath/patterns/StepPattern;
            0    5     1        xctxt  Lorg/apache/xpath/XPathContext;
            0    5     2  currentNode  I
            1    5     3          dtm  Lorg/apache/xml/dtm/DTM;
            3    4     4      expType  I
    Exceptions:
      throws javax.xml.transform.TransformerException
    MethodParameters:
             Name  Flags
      xctxt        
      currentNode  

  public org.apache.xpath.objects.XObject execute(org.apache.xpath.XPathContext);
    descriptor: (Lorg/apache/xpath/XPathContext;)Lorg/apache/xpath/objects/XObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.xpath.patterns.StepPattern this
        start local 1 // org.apache.xpath.XPathContext xctxt
         0: .line 363
            aload 0 /* this */
            aload 1 /* xctxt */
            aload 1 /* xctxt */
            invokevirtual org.apache.xpath.XPathContext.getCurrentNode:()I
            invokevirtual org.apache.xpath.patterns.StepPattern.execute:(Lorg/apache/xpath/XPathContext;I)Lorg/apache/xpath/objects/XObject;
            areturn
        end local 1 // org.apache.xpath.XPathContext xctxt
        end local 0 // org.apache.xpath.patterns.StepPattern this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/apache/xpath/patterns/StepPattern;
            0    1     1  xctxt  Lorg/apache/xpath/XPathContext;
    Exceptions:
      throws javax.xml.transform.TransformerException
    MethodParameters:
       Name  Flags
      xctxt  

  public org.apache.xpath.objects.XObject execute(org.apache.xpath.XPathContext, int, org.apache.xml.dtm.DTM, int);
    descriptor: (Lorg/apache/xpath/XPathContext;ILorg/apache/xml/dtm/DTM;I)Lorg/apache/xpath/objects/XObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=5
        start local 0 // org.apache.xpath.patterns.StepPattern this
        start local 1 // org.apache.xpath.XPathContext xctxt
        start local 2 // int currentNode
        start local 3 // org.apache.xml.dtm.DTM dtm
        start local 4 // int expType
         0: .line 386
            aload 0 /* this */
            getfield org.apache.xpath.patterns.StepPattern.m_whatToShow:I
            ldc 65536
            if_icmpne 4
         1: .line 388
            aload 0 /* this */
            getfield org.apache.xpath.patterns.StepPattern.m_relativePathPattern:Lorg/apache/xpath/patterns/StepPattern;
            ifnull 3
         2: .line 390
            aload 0 /* this */
            getfield org.apache.xpath.patterns.StepPattern.m_relativePathPattern:Lorg/apache/xpath/patterns/StepPattern;
            aload 1 /* xctxt */
            invokevirtual org.apache.xpath.patterns.StepPattern.execute:(Lorg/apache/xpath/XPathContext;)Lorg/apache/xpath/objects/XObject;
            areturn
         3: .line 393
      StackMap locals:
      StackMap stack:
            getstatic org.apache.xpath.patterns.NodeTest.SCORE_NONE:Lorg/apache/xpath/objects/XNumber;
            areturn
         4: .line 398
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* xctxt */
            iload 2 /* currentNode */
            aload 3 /* dtm */
            iload 4 /* expType */
            invokespecial org.apache.xpath.patterns.NodeTest.execute:(Lorg/apache/xpath/XPathContext;ILorg/apache/xml/dtm/DTM;I)Lorg/apache/xpath/objects/XObject;
            astore 5 /* score */
        start local 5 // org.apache.xpath.objects.XObject score
         5: .line 400
            aload 5 /* score */
            getstatic org.apache.xpath.patterns.NodeTest.SCORE_NONE:Lorg/apache/xpath/objects/XNumber;
            if_acmpne 7
         6: .line 401
            getstatic org.apache.xpath.patterns.NodeTest.SCORE_NONE:Lorg/apache/xpath/objects/XNumber;
            areturn
         7: .line 403
      StackMap locals: org.apache.xpath.objects.XObject
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.xpath.patterns.StepPattern.getPredicateCount:()I
            ifeq 10
         8: .line 405
            aload 0 /* this */
            aload 1 /* xctxt */
            aload 3 /* dtm */
            iload 2 /* currentNode */
            invokevirtual org.apache.xpath.patterns.StepPattern.executePredicates:(Lorg/apache/xpath/XPathContext;Lorg/apache/xml/dtm/DTM;I)Z
            ifne 10
         9: .line 406
            getstatic org.apache.xpath.patterns.NodeTest.SCORE_NONE:Lorg/apache/xpath/objects/XNumber;
            areturn
        10: .line 409
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.xpath.patterns.StepPattern.m_relativePathPattern:Lorg/apache/xpath/patterns/StepPattern;
            ifnull 14
        11: .line 410
            aload 0 /* this */
            getfield org.apache.xpath.patterns.StepPattern.m_relativePathPattern:Lorg/apache/xpath/patterns/StepPattern;
            aload 1 /* xctxt */
            aload 3 /* dtm */
        12: .line 411
            iload 2 /* currentNode */
        13: .line 410
            invokevirtual org.apache.xpath.patterns.StepPattern.executeRelativePathPattern:(Lorg/apache/xpath/XPathContext;Lorg/apache/xml/dtm/DTM;I)Lorg/apache/xpath/objects/XObject;
            areturn
        14: .line 413
      StackMap locals:
      StackMap stack:
            aload 5 /* score */
            areturn
        end local 5 // org.apache.xpath.objects.XObject score
        end local 4 // int expType
        end local 3 // org.apache.xml.dtm.DTM dtm
        end local 2 // int currentNode
        end local 1 // org.apache.xpath.XPathContext xctxt
        end local 0 // org.apache.xpath.patterns.StepPattern this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   15     0         this  Lorg/apache/xpath/patterns/StepPattern;
            0   15     1        xctxt  Lorg/apache/xpath/XPathContext;
            0   15     2  currentNode  I
            0   15     3          dtm  Lorg/apache/xml/dtm/DTM;
            0   15     4      expType  I
            5   15     5        score  Lorg/apache/xpath/objects/XObject;
    Exceptions:
      throws javax.xml.transform.TransformerException
    MethodParameters:
             Name  Flags
      xctxt        
      currentNode  
      dtm          
      expType      

  private final boolean checkProximityPosition(org.apache.xpath.XPathContext, int, org.apache.xml.dtm.DTM, int, int);
    descriptor: (Lorg/apache/xpath/XPathContext;ILorg/apache/xml/dtm/DTM;II)Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=4, locals=15, args_size=6
        start local 0 // org.apache.xpath.patterns.StepPattern this
        start local 1 // org.apache.xpath.XPathContext xctxt
        start local 2 // int predPos
        start local 3 // org.apache.xml.dtm.DTM dtm
        start local 4 // int context
        start local 5 // int pos
         0: .line 435
            aload 3 /* dtm */
            bipush 12
            invokeinterface org.apache.xml.dtm.DTM.getAxisTraverser:(I)Lorg/apache/xml/dtm/DTMAxisTraverser;
         1: .line 434
            astore 6 /* traverser */
        start local 6 // org.apache.xml.dtm.DTMAxisTraverser traverser
         2: .line 437
            aload 6 /* traverser */
            iload 4 /* context */
            invokevirtual org.apache.xml.dtm.DTMAxisTraverser.first:(I)I
            istore 7 /* child */
        start local 7 // int child
         3: goto 45
         4: .line 442
      StackMap locals: org.apache.xml.dtm.DTMAxisTraverser int
      StackMap stack:
            aload 1 /* xctxt */
            iload 7 /* child */
            invokevirtual org.apache.xpath.XPathContext.pushCurrentNode:(I)V
         5: .line 444
            getstatic org.apache.xpath.patterns.NodeTest.SCORE_NONE:Lorg/apache/xpath/objects/XNumber;
            aload 0 /* this */
            aload 1 /* xctxt */
            iload 7 /* child */
            invokespecial org.apache.xpath.patterns.NodeTest.execute:(Lorg/apache/xpath/XPathContext;I)Lorg/apache/xpath/objects/XObject;
            if_acmpeq 43
         6: .line 446
            iconst_1
            istore 8 /* pass */
        start local 8 // boolean pass
         7: .line 450
            aload 1 /* xctxt */
            aload 0 /* this */
            invokevirtual org.apache.xpath.XPathContext.pushSubContextList:(Lorg/apache/xpath/axes/SubContextList;)V
         8: .line 452
            iconst_0
            istore 9 /* i */
        start local 9 // int i
         9: goto 29
        10: .line 454
      StackMap locals: int int
      StackMap stack:
            aload 1 /* xctxt */
            iload 9 /* i */
            invokevirtual org.apache.xpath.XPathContext.pushPredicatePos:(I)V
        11: .line 457
            aload 0 /* this */
            getfield org.apache.xpath.patterns.StepPattern.m_predicates:[Lorg/apache/xpath/Expression;
            iload 9 /* i */
            aaload
            aload 1 /* xctxt */
            invokevirtual org.apache.xpath.Expression.execute:(Lorg/apache/xpath/XPathContext;)Lorg/apache/xpath/objects/XObject;
            astore 10 /* pred */
        start local 10 // org.apache.xpath.objects.XObject pred
        12: .line 461
            iconst_2
            aload 10 /* pred */
            invokevirtual org.apache.xpath.objects.XObject.getType:()I
            if_icmpne 14
        13: .line 463
            new java.lang.Error
            dup
            ldc "Why: Should never have been called"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        14: .line 465
      StackMap locals: org.apache.xpath.objects.XObject
      StackMap stack:
            aload 10 /* pred */
            invokevirtual org.apache.xpath.objects.XObject.boolWithSideEffects:()Z
            ifne 22
        15: .line 467
            iconst_0
            istore 8 /* pass */
        16: .line 474
            aload 10 /* pred */
            invokevirtual org.apache.xpath.objects.XObject.detach:()V
        17: .line 479
            aload 1 /* xctxt */
            invokevirtual org.apache.xpath.XPathContext.popPredicatePos:()V
        18: .line 469
            goto 34
        19: .line 473
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 11
        20: .line 474
            aload 10 /* pred */
            invokevirtual org.apache.xpath.objects.XObject.detach:()V
        21: .line 475
            aload 11
            athrow
        22: .line 474
      StackMap locals:
      StackMap stack:
            aload 10 /* pred */
            invokevirtual org.apache.xpath.objects.XObject.detach:()V
        end local 10 // org.apache.xpath.objects.XObject pred
        23: .line 476
            goto 27
        24: .line 478
      StackMap locals: org.apache.xpath.patterns.StepPattern org.apache.xpath.XPathContext int org.apache.xml.dtm.DTM int int org.apache.xml.dtm.DTMAxisTraverser int int int
      StackMap stack: java.lang.Throwable
            astore 12
        25: .line 479
            aload 1 /* xctxt */
            invokevirtual org.apache.xpath.XPathContext.popPredicatePos:()V
        26: .line 480
            aload 12
            athrow
        27: .line 479
      StackMap locals:
      StackMap stack:
            aload 1 /* xctxt */
            invokevirtual org.apache.xpath.XPathContext.popPredicatePos:()V
        28: .line 452
            iinc 9 /* i */ 1
      StackMap locals:
      StackMap stack:
        29: iload 9 /* i */
            iload 2 /* predPos */
            if_icmplt 10
        end local 9 // int i
        30: .line 482
            goto 34
        31: .line 484
      StackMap locals: org.apache.xpath.patterns.StepPattern org.apache.xpath.XPathContext int org.apache.xml.dtm.DTM int int org.apache.xml.dtm.DTMAxisTraverser int int
      StackMap stack: java.lang.Throwable
            astore 13
        32: .line 485
            aload 1 /* xctxt */
            invokevirtual org.apache.xpath.XPathContext.popSubContextList:()V
        33: .line 486
            aload 13
            athrow
        34: .line 485
      StackMap locals:
      StackMap stack:
            aload 1 /* xctxt */
            invokevirtual org.apache.xpath.XPathContext.popSubContextList:()V
        35: .line 488
            iload 8 /* pass */
            ifeq 37
        36: .line 489
            iinc 5 /* pos */ -1
        37: .line 491
      StackMap locals:
      StackMap stack:
            iload 5 /* pos */
            iconst_1
            if_icmpge 43
        38: .line 497
            aload 1 /* xctxt */
            invokevirtual org.apache.xpath.XPathContext.popCurrentNode:()V
        39: .line 492
            iconst_0
            ireturn
        end local 8 // boolean pass
        40: .line 496
      StackMap locals: org.apache.xpath.patterns.StepPattern org.apache.xpath.XPathContext int org.apache.xml.dtm.DTM int int org.apache.xml.dtm.DTMAxisTraverser int
      StackMap stack: java.lang.Throwable
            astore 14
        41: .line 497
            aload 1 /* xctxt */
            invokevirtual org.apache.xpath.XPathContext.popCurrentNode:()V
        42: .line 498
            aload 14
            athrow
        43: .line 497
      StackMap locals:
      StackMap stack:
            aload 1 /* xctxt */
            invokevirtual org.apache.xpath.XPathContext.popCurrentNode:()V
        44: .line 438
            aload 6 /* traverser */
            iload 4 /* context */
            iload 7 /* child */
            invokevirtual org.apache.xml.dtm.DTMAxisTraverser.next:(II)I
            istore 7 /* child */
        45: .line 437
      StackMap locals:
      StackMap stack:
            iconst_m1
            iload 7 /* child */
            if_icmpne 4
        end local 7 // int child
        end local 6 // org.apache.xml.dtm.DTMAxisTraverser traverser
        46: .line 500
            goto 49
        47: .line 501
      StackMap locals: org.apache.xpath.patterns.StepPattern org.apache.xpath.XPathContext int org.apache.xml.dtm.DTM int int
      StackMap stack: javax.xml.transform.TransformerException
            astore 6 /* se */
        start local 6 // javax.xml.transform.TransformerException se
        48: .line 505
            new java.lang.RuntimeException
            dup
            aload 6 /* se */
            invokevirtual javax.xml.transform.TransformerException.getMessage:()Ljava/lang/String;
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        end local 6 // javax.xml.transform.TransformerException se
        49: .line 508
      StackMap locals:
      StackMap stack:
            iload 5 /* pos */
            iconst_1
            if_icmpne 50
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
        50: iconst_0
            ireturn
        end local 5 // int pos
        end local 4 // int context
        end local 3 // org.apache.xml.dtm.DTM dtm
        end local 2 // int predPos
        end local 1 // org.apache.xpath.XPathContext xctxt
        end local 0 // org.apache.xpath.patterns.StepPattern this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   51     0       this  Lorg/apache/xpath/patterns/StepPattern;
            0   51     1      xctxt  Lorg/apache/xpath/XPathContext;
            0   51     2    predPos  I
            0   51     3        dtm  Lorg/apache/xml/dtm/DTM;
            0   51     4    context  I
            0   51     5        pos  I
            2   46     6  traverser  Lorg/apache/xml/dtm/DTMAxisTraverser;
            3   46     7      child  I
            7   40     8       pass  Z
            9   30     9          i  I
           12   23    10       pred  Lorg/apache/xpath/objects/XObject;
           48   49     6         se  Ljavax/xml/transform/TransformerException;
      Exception table:
        from    to  target  type
          12    16      19  any
          11    17      24  any
          19    24      24  any
           7    31      31  any
           4    38      40  any
           0    39      47  Class javax.xml.transform.TransformerException
          40    46      47  Class javax.xml.transform.TransformerException
    MethodParameters:
         Name  Flags
      xctxt    
      predPos  
      dtm      
      context  
      pos      

  private final int getProximityPosition(org.apache.xpath.XPathContext, int, boolean);
    descriptor: (Lorg/apache/xpath/XPathContext;IZ)I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=4, locals=18, args_size=4
        start local 0 // org.apache.xpath.patterns.StepPattern this
        start local 1 // org.apache.xpath.XPathContext xctxt
        start local 2 // int predPos
        start local 3 // boolean findLast
         0: .line 527
            iconst_0
            istore 4 /* pos */
        start local 4 // int pos
         1: .line 528
            aload 1 /* xctxt */
            invokevirtual org.apache.xpath.XPathContext.getCurrentNode:()I
            istore 5 /* context */
        start local 5 // int context
         2: .line 529
            aload 1 /* xctxt */
            iload 5 /* context */
            invokevirtual org.apache.xpath.XPathContext.getDTM:(I)Lorg/apache/xml/dtm/DTM;
            astore 6 /* dtm */
        start local 6 // org.apache.xml.dtm.DTM dtm
         3: .line 530
            aload 6 /* dtm */
            iload 5 /* context */
            invokeinterface org.apache.xml.dtm.DTM.getParent:(I)I
            istore 7 /* parent */
        start local 7 // int parent
         4: .line 534
            aload 6 /* dtm */
            iconst_3
            invokeinterface org.apache.xml.dtm.DTM.getAxisTraverser:(I)Lorg/apache/xml/dtm/DTMAxisTraverser;
            astore 8 /* traverser */
        start local 8 // org.apache.xml.dtm.DTMAxisTraverser traverser
         5: .line 536
            aload 8 /* traverser */
            iload 7 /* parent */
            invokevirtual org.apache.xml.dtm.DTMAxisTraverser.first:(I)I
            istore 9 /* child */
        start local 9 // int child
         6: goto 53
         7: .line 541
      StackMap locals: org.apache.xpath.patterns.StepPattern org.apache.xpath.XPathContext int int int int org.apache.xml.dtm.DTM int org.apache.xml.dtm.DTMAxisTraverser int
      StackMap stack:
            aload 1 /* xctxt */
            iload 9 /* child */
            invokevirtual org.apache.xpath.XPathContext.pushCurrentNode:(I)V
         8: .line 543
            getstatic org.apache.xpath.patterns.NodeTest.SCORE_NONE:Lorg/apache/xpath/objects/XNumber;
            aload 0 /* this */
            aload 1 /* xctxt */
            iload 9 /* child */
            invokespecial org.apache.xpath.patterns.NodeTest.execute:(Lorg/apache/xpath/XPathContext;I)Lorg/apache/xpath/objects/XObject;
            if_acmpeq 51
         9: .line 545
            iconst_1
            istore 10 /* pass */
        start local 10 // boolean pass
        10: .line 549
            aload 1 /* xctxt */
            aload 0 /* this */
            invokevirtual org.apache.xpath.XPathContext.pushSubContextList:(Lorg/apache/xpath/axes/SubContextList;)V
        11: .line 551
            iconst_0
            istore 11 /* i */
        start local 11 // int i
        12: goto 36
        13: .line 553
      StackMap locals: int int
      StackMap stack:
            aload 1 /* xctxt */
            iload 11 /* i */
            invokevirtual org.apache.xpath.XPathContext.pushPredicatePos:(I)V
        14: .line 556
            aload 0 /* this */
            getfield org.apache.xpath.patterns.StepPattern.m_predicates:[Lorg/apache/xpath/Expression;
            iload 11 /* i */
            aaload
            aload 1 /* xctxt */
            invokevirtual org.apache.xpath.Expression.execute:(Lorg/apache/xpath/XPathContext;)Lorg/apache/xpath/objects/XObject;
            astore 12 /* pred */
        start local 12 // org.apache.xpath.objects.XObject pred
        15: .line 560
            iconst_2
            aload 12 /* pred */
            invokevirtual org.apache.xpath.objects.XObject.getType:()I
            if_icmpne 21
        16: .line 562
            iload 4 /* pos */
            iconst_1
            iadd
            aload 12 /* pred */
            invokevirtual org.apache.xpath.objects.XObject.numWithSideEffects:()D
            d2i
            if_icmpeq 29
        17: .line 564
            iconst_0
            istore 10 /* pass */
        18: .line 578
            aload 12 /* pred */
            invokevirtual org.apache.xpath.objects.XObject.detach:()V
        19: .line 583
            aload 1 /* xctxt */
            invokevirtual org.apache.xpath.XPathContext.popPredicatePos:()V
        20: .line 566
            goto 41
        21: .line 569
      StackMap locals: org.apache.xpath.objects.XObject
      StackMap stack:
            aload 12 /* pred */
            invokevirtual org.apache.xpath.objects.XObject.boolWithSideEffects:()Z
            ifne 29
        22: .line 571
            iconst_0
            istore 10 /* pass */
        23: .line 578
            aload 12 /* pred */
            invokevirtual org.apache.xpath.objects.XObject.detach:()V
        24: .line 583
            aload 1 /* xctxt */
            invokevirtual org.apache.xpath.XPathContext.popPredicatePos:()V
        25: .line 573
            goto 41
        26: .line 577
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 13
        27: .line 578
            aload 12 /* pred */
            invokevirtual org.apache.xpath.objects.XObject.detach:()V
        28: .line 579
            aload 13
            athrow
        29: .line 578
      StackMap locals:
      StackMap stack:
            aload 12 /* pred */
            invokevirtual org.apache.xpath.objects.XObject.detach:()V
        end local 12 // org.apache.xpath.objects.XObject pred
        30: .line 580
            goto 34
        31: .line 582
      StackMap locals: org.apache.xpath.patterns.StepPattern org.apache.xpath.XPathContext int int int int org.apache.xml.dtm.DTM int org.apache.xml.dtm.DTMAxisTraverser int int int
      StackMap stack: java.lang.Throwable
            astore 14
        32: .line 583
            aload 1 /* xctxt */
            invokevirtual org.apache.xpath.XPathContext.popPredicatePos:()V
        33: .line 584
            aload 14
            athrow
        34: .line 583
      StackMap locals:
      StackMap stack:
            aload 1 /* xctxt */
            invokevirtual org.apache.xpath.XPathContext.popPredicatePos:()V
        35: .line 551
            iinc 11 /* i */ 1
      StackMap locals:
      StackMap stack:
        36: iload 11 /* i */
            iload 2 /* predPos */
            if_icmplt 13
        end local 11 // int i
        37: .line 586
            goto 41
        38: .line 588
      StackMap locals: org.apache.xpath.patterns.StepPattern org.apache.xpath.XPathContext int int int int org.apache.xml.dtm.DTM int org.apache.xml.dtm.DTMAxisTraverser int int
      StackMap stack: java.lang.Throwable
            astore 15
        39: .line 589
            aload 1 /* xctxt */
            invokevirtual org.apache.xpath.XPathContext.popSubContextList:()V
        40: .line 590
            aload 15
            athrow
        41: .line 589
      StackMap locals:
      StackMap stack:
            aload 1 /* xctxt */
            invokevirtual org.apache.xpath.XPathContext.popSubContextList:()V
        42: .line 592
            iload 10 /* pass */
            ifeq 44
        43: .line 593
            iinc 4 /* pos */ 1
        44: .line 595
      StackMap locals:
      StackMap stack:
            iload 3 /* findLast */
            ifne 51
            iload 9 /* child */
            iload 5 /* context */
            if_icmpne 51
        45: .line 597
            iload 4 /* pos */
            istore 17
        46: .line 603
            aload 1 /* xctxt */
            invokevirtual org.apache.xpath.XPathContext.popCurrentNode:()V
        47: .line 597
            iload 17
            ireturn
        end local 10 // boolean pass
        48: .line 602
      StackMap locals: org.apache.xpath.patterns.StepPattern org.apache.xpath.XPathContext int int int int org.apache.xml.dtm.DTM int org.apache.xml.dtm.DTMAxisTraverser int
      StackMap stack: java.lang.Throwable
            astore 16
        49: .line 603
            aload 1 /* xctxt */
            invokevirtual org.apache.xpath.XPathContext.popCurrentNode:()V
        50: .line 604
            aload 16
            athrow
        51: .line 603
      StackMap locals:
      StackMap stack:
            aload 1 /* xctxt */
            invokevirtual org.apache.xpath.XPathContext.popCurrentNode:()V
        52: .line 537
            aload 8 /* traverser */
            iload 7 /* parent */
            iload 9 /* child */
            invokevirtual org.apache.xml.dtm.DTMAxisTraverser.next:(II)I
            istore 9 /* child */
        53: .line 536
      StackMap locals:
      StackMap stack:
            iconst_m1
            iload 9 /* child */
            if_icmpne 7
        end local 9 // int child
        end local 8 // org.apache.xml.dtm.DTMAxisTraverser traverser
        54: .line 606
            goto 57
        55: .line 607
      StackMap locals: org.apache.xpath.patterns.StepPattern org.apache.xpath.XPathContext int int int int org.apache.xml.dtm.DTM int
      StackMap stack: javax.xml.transform.TransformerException
            astore 8 /* se */
        start local 8 // javax.xml.transform.TransformerException se
        56: .line 611
            new java.lang.RuntimeException
            dup
            aload 8 /* se */
            invokevirtual javax.xml.transform.TransformerException.getMessage:()Ljava/lang/String;
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        end local 8 // javax.xml.transform.TransformerException se
        57: .line 614
      StackMap locals:
      StackMap stack:
            iload 4 /* pos */
            ireturn
        end local 7 // int parent
        end local 6 // org.apache.xml.dtm.DTM dtm
        end local 5 // int context
        end local 4 // int pos
        end local 3 // boolean findLast
        end local 2 // int predPos
        end local 1 // org.apache.xpath.XPathContext xctxt
        end local 0 // org.apache.xpath.patterns.StepPattern this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   58     0       this  Lorg/apache/xpath/patterns/StepPattern;
            0   58     1      xctxt  Lorg/apache/xpath/XPathContext;
            0   58     2    predPos  I
            0   58     3   findLast  Z
            1   58     4        pos  I
            2   58     5    context  I
            3   58     6        dtm  Lorg/apache/xml/dtm/DTM;
            4   58     7     parent  I
            5   54     8  traverser  Lorg/apache/xml/dtm/DTMAxisTraverser;
            6   54     9      child  I
           10   48    10       pass  Z
           12   37    11          i  I
           15   30    12       pred  Lorg/apache/xpath/objects/XObject;
           56   57     8         se  Ljavax/xml/transform/TransformerException;
      Exception table:
        from    to  target  type
          15    18      26  any
          21    23      26  any
          14    19      31  any
          21    24      31  any
          26    31      31  any
          10    38      38  any
           7    46      48  any
           4    47      55  Class javax.xml.transform.TransformerException
          48    54      55  Class javax.xml.transform.TransformerException
    MethodParameters:
          Name  Flags
      xctxt     
      predPos   
      findLast  

  public int getProximityPosition(org.apache.xpath.XPathContext);
    descriptor: (Lorg/apache/xpath/XPathContext;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.apache.xpath.patterns.StepPattern this
        start local 1 // org.apache.xpath.XPathContext xctxt
         0: .line 629
            aload 0 /* this */
            aload 1 /* xctxt */
            aload 1 /* xctxt */
            invokevirtual org.apache.xpath.XPathContext.getPredicatePos:()I
            iconst_0
            invokevirtual org.apache.xpath.patterns.StepPattern.getProximityPosition:(Lorg/apache/xpath/XPathContext;IZ)I
            ireturn
        end local 1 // org.apache.xpath.XPathContext xctxt
        end local 0 // org.apache.xpath.patterns.StepPattern this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/apache/xpath/patterns/StepPattern;
            0    1     1  xctxt  Lorg/apache/xpath/XPathContext;
    MethodParameters:
       Name  Flags
      xctxt  

  public int getLastPos(org.apache.xpath.XPathContext);
    descriptor: (Lorg/apache/xpath/XPathContext;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.apache.xpath.patterns.StepPattern this
        start local 1 // org.apache.xpath.XPathContext xctxt
         0: .line 645
            aload 0 /* this */
            aload 1 /* xctxt */
            aload 1 /* xctxt */
            invokevirtual org.apache.xpath.XPathContext.getPredicatePos:()I
            iconst_1
            invokevirtual org.apache.xpath.patterns.StepPattern.getProximityPosition:(Lorg/apache/xpath/XPathContext;IZ)I
            ireturn
        end local 1 // org.apache.xpath.XPathContext xctxt
        end local 0 // org.apache.xpath.patterns.StepPattern this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/apache/xpath/patterns/StepPattern;
            0    1     1  xctxt  Lorg/apache/xpath/XPathContext;
    MethodParameters:
       Name  Flags
      xctxt  

  protected final org.apache.xpath.objects.XObject executeRelativePathPattern(org.apache.xpath.XPathContext, org.apache.xml.dtm.DTM, int);
    descriptor: (Lorg/apache/xpath/XPathContext;Lorg/apache/xml/dtm/DTM;I)Lorg/apache/xpath/objects/XObject;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=3, locals=9, args_size=4
        start local 0 // org.apache.xpath.patterns.StepPattern this
        start local 1 // org.apache.xpath.XPathContext xctxt
        start local 2 // org.apache.xml.dtm.DTM dtm
        start local 3 // int currentNode
         0: .line 669
            getstatic org.apache.xpath.patterns.NodeTest.SCORE_NONE:Lorg/apache/xpath/objects/XNumber;
            astore 4 /* score */
        start local 4 // org.apache.xpath.objects.XObject score
         1: .line 670
            iload 3 /* currentNode */
            istore 5 /* context */
        start local 5 // int context
         2: .line 673
            aload 2 /* dtm */
            aload 0 /* this */
            getfield org.apache.xpath.patterns.StepPattern.m_axis:I
            invokeinterface org.apache.xml.dtm.DTM.getAxisTraverser:(I)Lorg/apache/xml/dtm/DTMAxisTraverser;
            astore 6 /* traverser */
        start local 6 // org.apache.xml.dtm.DTMAxisTraverser traverser
         3: .line 675
            aload 6 /* traverser */
            iload 5 /* context */
            invokevirtual org.apache.xml.dtm.DTMAxisTraverser.first:(I)I
            istore 7 /* relative */
        start local 7 // int relative
         4: goto 15
         5: .line 680
      StackMap locals: org.apache.xpath.patterns.StepPattern org.apache.xpath.XPathContext org.apache.xml.dtm.DTM int org.apache.xpath.objects.XObject int org.apache.xml.dtm.DTMAxisTraverser int
      StackMap stack:
            aload 1 /* xctxt */
            iload 7 /* relative */
            invokevirtual org.apache.xpath.XPathContext.pushCurrentNode:(I)V
         6: .line 682
            aload 0 /* this */
            aload 1 /* xctxt */
            invokevirtual org.apache.xpath.patterns.StepPattern.execute:(Lorg/apache/xpath/XPathContext;)Lorg/apache/xpath/objects/XObject;
            astore 4 /* score */
         7: .line 684
            aload 4 /* score */
            getstatic org.apache.xpath.patterns.NodeTest.SCORE_NONE:Lorg/apache/xpath/objects/XNumber;
            if_acmpeq 13
         8: .line 689
            aload 1 /* xctxt */
            invokevirtual org.apache.xpath.XPathContext.popCurrentNode:()V
         9: .line 685
            goto 16
        10: .line 688
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 8
        11: .line 689
            aload 1 /* xctxt */
            invokevirtual org.apache.xpath.XPathContext.popCurrentNode:()V
        12: .line 690
            aload 8
            athrow
        13: .line 689
      StackMap locals:
      StackMap stack:
            aload 1 /* xctxt */
            invokevirtual org.apache.xpath.XPathContext.popCurrentNode:()V
        14: .line 676
            aload 6 /* traverser */
            iload 5 /* context */
            iload 7 /* relative */
            invokevirtual org.apache.xml.dtm.DTMAxisTraverser.next:(II)I
            istore 7 /* relative */
        15: .line 675
      StackMap locals:
      StackMap stack:
            iconst_m1
            iload 7 /* relative */
            if_icmpne 5
        end local 7 // int relative
        16: .line 693
      StackMap locals:
      StackMap stack:
            aload 4 /* score */
            areturn
        end local 6 // org.apache.xml.dtm.DTMAxisTraverser traverser
        end local 5 // int context
        end local 4 // org.apache.xpath.objects.XObject score
        end local 3 // int currentNode
        end local 2 // org.apache.xml.dtm.DTM dtm
        end local 1 // org.apache.xpath.XPathContext xctxt
        end local 0 // org.apache.xpath.patterns.StepPattern this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   17     0         this  Lorg/apache/xpath/patterns/StepPattern;
            0   17     1        xctxt  Lorg/apache/xpath/XPathContext;
            0   17     2          dtm  Lorg/apache/xml/dtm/DTM;
            0   17     3  currentNode  I
            1   17     4        score  Lorg/apache/xpath/objects/XObject;
            2   17     5      context  I
            3   17     6    traverser  Lorg/apache/xml/dtm/DTMAxisTraverser;
            4   16     7     relative  I
      Exception table:
        from    to  target  type
           5     8      10  any
    Exceptions:
      throws javax.xml.transform.TransformerException
    MethodParameters:
             Name  Flags
      xctxt        
      dtm          
      currentNode  

  protected final boolean executePredicates(org.apache.xpath.XPathContext, org.apache.xml.dtm.DTM, int);
    descriptor: (Lorg/apache/xpath/XPathContext;Lorg/apache/xml/dtm/DTM;I)Z
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=6, locals=13, args_size=4
        start local 0 // org.apache.xpath.patterns.StepPattern this
        start local 1 // org.apache.xpath.XPathContext xctxt
        start local 2 // org.apache.xml.dtm.DTM dtm
        start local 3 // int currentNode
         0: .line 713
            iconst_1
            istore 4 /* result */
        start local 4 // boolean result
         1: .line 714
            iconst_0
            istore 5 /* positionAlreadySeen */
        start local 5 // boolean positionAlreadySeen
         2: .line 715
            aload 0 /* this */
            invokevirtual org.apache.xpath.patterns.StepPattern.getPredicateCount:()I
            istore 6 /* n */
        start local 6 // int n
         3: .line 719
            aload 1 /* xctxt */
            aload 0 /* this */
            invokevirtual org.apache.xpath.XPathContext.pushSubContextList:(Lorg/apache/xpath/axes/SubContextList;)V
         4: .line 721
            iconst_0
            istore 7 /* i */
        start local 7 // int i
         5: goto 38
         6: .line 723
      StackMap locals: org.apache.xpath.patterns.StepPattern org.apache.xpath.XPathContext org.apache.xml.dtm.DTM int int int int int
      StackMap stack:
            aload 1 /* xctxt */
            iload 7 /* i */
            invokevirtual org.apache.xpath.XPathContext.pushPredicatePos:(I)V
         7: .line 727
            aload 0 /* this */
            getfield org.apache.xpath.patterns.StepPattern.m_predicates:[Lorg/apache/xpath/Expression;
            iload 7 /* i */
            aaload
            aload 1 /* xctxt */
            invokevirtual org.apache.xpath.Expression.execute:(Lorg/apache/xpath/XPathContext;)Lorg/apache/xpath/objects/XObject;
            astore 8 /* pred */
        start local 8 // org.apache.xpath.objects.XObject pred
         8: .line 731
            iconst_2
            aload 8 /* pred */
            invokevirtual org.apache.xpath.objects.XObject.getType:()I
            if_icmpne 23
         9: .line 733
            aload 8 /* pred */
            invokevirtual org.apache.xpath.objects.XObject.num:()D
            d2i
            istore 9 /* pos */
        start local 9 // int pos
        10: .line 735
            iload 5 /* positionAlreadySeen */
            ifeq 17
        11: .line 737
            iload 9 /* pos */
            iconst_1
            if_icmpne 12
            iconst_1
            goto 13
      StackMap locals: org.apache.xpath.objects.XObject int
      StackMap stack:
        12: iconst_0
      StackMap locals:
      StackMap stack: int
        13: istore 4 /* result */
        14: .line 763
            aload 8 /* pred */
            invokevirtual org.apache.xpath.objects.XObject.detach:()V
        15: .line 768
            aload 1 /* xctxt */
            invokevirtual org.apache.xpath.XPathContext.popPredicatePos:()V
        16: .line 739
            goto 43
        17: .line 743
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 5 /* positionAlreadySeen */
        18: .line 745
            aload 0 /* this */
            aload 1 /* xctxt */
            iload 7 /* i */
            aload 2 /* dtm */
            iload 3 /* currentNode */
            iload 9 /* pos */
            invokevirtual org.apache.xpath.patterns.StepPattern.checkProximityPosition:(Lorg/apache/xpath/XPathContext;ILorg/apache/xml/dtm/DTM;II)Z
            ifne 31
        19: .line 747
            iconst_0
            istore 4 /* result */
        20: .line 763
            aload 8 /* pred */
            invokevirtual org.apache.xpath.objects.XObject.detach:()V
        21: .line 768
            aload 1 /* xctxt */
            invokevirtual org.apache.xpath.XPathContext.popPredicatePos:()V
        22: .line 749
            goto 43
        end local 9 // int pos
        23: .line 754
      StackMap locals:
      StackMap stack:
            aload 8 /* pred */
            invokevirtual org.apache.xpath.objects.XObject.boolWithSideEffects:()Z
            ifne 31
        24: .line 756
            iconst_0
            istore 4 /* result */
        25: .line 763
            aload 8 /* pred */
            invokevirtual org.apache.xpath.objects.XObject.detach:()V
        26: .line 768
            aload 1 /* xctxt */
            invokevirtual org.apache.xpath.XPathContext.popPredicatePos:()V
        27: .line 758
            goto 43
        28: .line 762
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 10
        29: .line 763
            aload 8 /* pred */
            invokevirtual org.apache.xpath.objects.XObject.detach:()V
        30: .line 764
            aload 10
            athrow
        31: .line 763
      StackMap locals:
      StackMap stack:
            aload 8 /* pred */
            invokevirtual org.apache.xpath.objects.XObject.detach:()V
        end local 8 // org.apache.xpath.objects.XObject pred
        32: .line 765
            goto 36
        33: .line 767
      StackMap locals: org.apache.xpath.patterns.StepPattern org.apache.xpath.XPathContext org.apache.xml.dtm.DTM int int int int int
      StackMap stack: java.lang.Throwable
            astore 11
        34: .line 768
            aload 1 /* xctxt */
            invokevirtual org.apache.xpath.XPathContext.popPredicatePos:()V
        35: .line 769
            aload 11
            athrow
        36: .line 768
      StackMap locals:
      StackMap stack:
            aload 1 /* xctxt */
            invokevirtual org.apache.xpath.XPathContext.popPredicatePos:()V
        37: .line 721
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        38: iload 7 /* i */
            iload 6 /* n */
            if_icmplt 6
        end local 7 // int i
        39: .line 771
            goto 43
        40: .line 773
      StackMap locals: org.apache.xpath.patterns.StepPattern org.apache.xpath.XPathContext org.apache.xml.dtm.DTM int int int int
      StackMap stack: java.lang.Throwable
            astore 12
        41: .line 774
            aload 1 /* xctxt */
            invokevirtual org.apache.xpath.XPathContext.popSubContextList:()V
        42: .line 775
            aload 12
            athrow
        43: .line 774
      StackMap locals:
      StackMap stack:
            aload 1 /* xctxt */
            invokevirtual org.apache.xpath.XPathContext.popSubContextList:()V
        44: .line 777
            iload 4 /* result */
            ireturn
        end local 6 // int n
        end local 5 // boolean positionAlreadySeen
        end local 4 // boolean result
        end local 3 // int currentNode
        end local 2 // org.apache.xml.dtm.DTM dtm
        end local 1 // org.apache.xpath.XPathContext xctxt
        end local 0 // org.apache.xpath.patterns.StepPattern this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   45     0                 this  Lorg/apache/xpath/patterns/StepPattern;
            0   45     1                xctxt  Lorg/apache/xpath/XPathContext;
            0   45     2                  dtm  Lorg/apache/xml/dtm/DTM;
            0   45     3          currentNode  I
            1   45     4               result  Z
            2   45     5  positionAlreadySeen  Z
            3   45     6                    n  I
            5   39     7                    i  I
            8   32     8                 pred  Lorg/apache/xpath/objects/XObject;
           10   23     9                  pos  I
      Exception table:
        from    to  target  type
           8    14      28  any
          17    20      28  any
          23    25      28  any
           7    15      33  any
          17    21      33  any
          23    26      33  any
          28    33      33  any
           3    40      40  any
    Exceptions:
      throws javax.xml.transform.TransformerException
    MethodParameters:
             Name  Flags
      xctxt        
      dtm          
      currentNode  

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=1
        start local 0 // org.apache.xpath.patterns.StepPattern this
         0: .line 790
            new java.lang.StringBuffer
            dup
            invokespecial java.lang.StringBuffer.<init>:()V
            astore 1 /* buf */
        start local 1 // java.lang.StringBuffer buf
         1: .line 792
            aload 0 /* this */
            astore 2 /* pat */
        start local 2 // org.apache.xpath.patterns.StepPattern pat
         2: goto 55
         3: .line 794
      StackMap locals: java.lang.StringBuffer org.apache.xpath.patterns.StepPattern
      StackMap stack:
            aload 2 /* pat */
            aload 0 /* this */
            if_acmpeq 5
         4: .line 795
            aload 1 /* buf */
            ldc "/"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         5: .line 797
      StackMap locals:
      StackMap stack:
            aload 1 /* buf */
            aload 2 /* pat */
            getfield org.apache.xpath.patterns.StepPattern.m_axis:I
            invokestatic org.apache.xml.dtm.Axis.getNames:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         6: .line 798
            aload 1 /* buf */
            ldc "::"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         7: .line 800
            sipush 20480
            aload 2 /* pat */
            getfield org.apache.xpath.patterns.StepPattern.m_whatToShow:I
            if_icmpne 10
         8: .line 802
            aload 1 /* buf */
            ldc "doc()"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         9: .line 803
            goto 46
        10: .line 804
      StackMap locals:
      StackMap stack:
            ldc 65536
            aload 2 /* pat */
            getfield org.apache.xpath.patterns.StepPattern.m_whatToShow:I
            if_icmpne 13
        11: .line 806
            aload 1 /* buf */
            ldc "function()"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        12: .line 807
            goto 46
        13: .line 808
      StackMap locals:
      StackMap stack:
            iconst_m1
            aload 2 /* pat */
            getfield org.apache.xpath.patterns.StepPattern.m_whatToShow:I
            if_icmpne 16
        14: .line 810
            aload 1 /* buf */
            ldc "node()"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        15: .line 811
            goto 46
        16: .line 812
      StackMap locals:
      StackMap stack:
            iconst_4
            aload 2 /* pat */
            getfield org.apache.xpath.patterns.StepPattern.m_whatToShow:I
            if_icmpne 19
        17: .line 814
            aload 1 /* buf */
            ldc "text()"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        18: .line 815
            goto 46
        19: .line 816
      StackMap locals:
      StackMap stack:
            bipush 64
            aload 2 /* pat */
            getfield org.apache.xpath.patterns.StepPattern.m_whatToShow:I
            if_icmpne 25
        20: .line 818
            aload 1 /* buf */
            ldc "processing-instruction("
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        21: .line 820
            aload 2 /* pat */
            getfield org.apache.xpath.patterns.StepPattern.m_name:Ljava/lang/String;
            ifnull 23
        22: .line 822
            aload 1 /* buf */
            aload 2 /* pat */
            getfield org.apache.xpath.patterns.StepPattern.m_name:Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        23: .line 825
      StackMap locals:
      StackMap stack:
            aload 1 /* buf */
            ldc ")"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        24: .line 826
            goto 46
        25: .line 827
      StackMap locals:
      StackMap stack:
            sipush 128
            aload 2 /* pat */
            getfield org.apache.xpath.patterns.StepPattern.m_whatToShow:I
            if_icmpne 28
        26: .line 829
            aload 1 /* buf */
            ldc "comment()"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        27: .line 830
            goto 46
        28: .line 831
      StackMap locals:
      StackMap stack:
            aload 2 /* pat */
            getfield org.apache.xpath.patterns.StepPattern.m_name:Ljava/lang/String;
            ifnull 37
        29: .line 833
            iconst_2
            aload 2 /* pat */
            getfield org.apache.xpath.patterns.StepPattern.m_whatToShow:I
            if_icmpne 31
        30: .line 835
            aload 1 /* buf */
            ldc "@"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        31: .line 838
      StackMap locals:
      StackMap stack:
            aload 2 /* pat */
            getfield org.apache.xpath.patterns.StepPattern.m_namespace:Ljava/lang/String;
            ifnull 35
        32: .line 840
            aload 1 /* buf */
            ldc "{"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        33: .line 841
            aload 1 /* buf */
            aload 2 /* pat */
            getfield org.apache.xpath.patterns.StepPattern.m_namespace:Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        34: .line 842
            aload 1 /* buf */
            ldc "}"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        35: .line 845
      StackMap locals:
      StackMap stack:
            aload 1 /* buf */
            aload 2 /* pat */
            getfield org.apache.xpath.patterns.StepPattern.m_name:Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        36: .line 846
            goto 46
        37: .line 847
      StackMap locals:
      StackMap stack:
            iconst_2
            aload 2 /* pat */
            getfield org.apache.xpath.patterns.StepPattern.m_whatToShow:I
            if_icmpne 40
        38: .line 849
            aload 1 /* buf */
            ldc "@"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        39: .line 850
            goto 46
        40: .line 851
      StackMap locals:
      StackMap stack:
            sipush 1280
        41: .line 852
            aload 2 /* pat */
            getfield org.apache.xpath.patterns.StepPattern.m_whatToShow:I
        42: .line 851
            if_icmpne 45
        43: .line 854
            aload 1 /* buf */
            ldc "doc-root()"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        44: .line 855
            goto 46
        45: .line 858
      StackMap locals:
      StackMap stack:
            aload 1 /* buf */
            new java.lang.StringBuilder
            dup
            ldc "?"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* pat */
            getfield org.apache.xpath.patterns.StepPattern.m_whatToShow:I
            invokestatic java.lang.Integer.toHexString:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        46: .line 861
      StackMap locals:
      StackMap stack:
            aload 2 /* pat */
            getfield org.apache.xpath.patterns.StepPattern.m_predicates:[Lorg/apache/xpath/Expression;
            ifnull 54
        47: .line 863
            iconst_0
            istore 3 /* i */
        start local 3 // int i
        48: goto 53
        49: .line 865
      StackMap locals: int
      StackMap stack:
            aload 1 /* buf */
            ldc "["
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        50: .line 866
            aload 1 /* buf */
            aload 2 /* pat */
            getfield org.apache.xpath.patterns.StepPattern.m_predicates:[Lorg/apache/xpath/Expression;
            iload 3 /* i */
            aaload
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/Object;)Ljava/lang/StringBuffer;
            pop
        51: .line 867
            aload 1 /* buf */
            ldc "]"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        52: .line 863
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        53: iload 3 /* i */
            aload 2 /* pat */
            getfield org.apache.xpath.patterns.StepPattern.m_predicates:[Lorg/apache/xpath/Expression;
            arraylength
            if_icmplt 49
        end local 3 // int i
        54: .line 792
      StackMap locals:
      StackMap stack:
            aload 2 /* pat */
            getfield org.apache.xpath.patterns.StepPattern.m_relativePathPattern:Lorg/apache/xpath/patterns/StepPattern;
            astore 2 /* pat */
      StackMap locals:
      StackMap stack:
        55: aload 2 /* pat */
            ifnonnull 3
        end local 2 // org.apache.xpath.patterns.StepPattern pat
        56: .line 872
            aload 1 /* buf */
            invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
            areturn
        end local 1 // java.lang.StringBuffer buf
        end local 0 // org.apache.xpath.patterns.StepPattern this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   57     0  this  Lorg/apache/xpath/patterns/StepPattern;
            1   57     1   buf  Ljava/lang/StringBuffer;
            2   56     2   pat  Lorg/apache/xpath/patterns/StepPattern;
           48   54     3     i  I

  public double getMatchScore(org.apache.xpath.XPathContext, int);
    descriptor: (Lorg/apache/xpath/XPathContext;I)D
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=7, args_size=3
        start local 0 // org.apache.xpath.patterns.StepPattern this
        start local 1 // org.apache.xpath.XPathContext xctxt
        start local 2 // int context
         0: .line 896
            aload 1 /* xctxt */
            iload 2 /* context */
            invokevirtual org.apache.xpath.XPathContext.pushCurrentNode:(I)V
         1: .line 897
            aload 1 /* xctxt */
            iload 2 /* context */
            invokevirtual org.apache.xpath.XPathContext.pushCurrentExpressionNode:(I)V
         2: .line 901
            aload 0 /* this */
            aload 1 /* xctxt */
            invokevirtual org.apache.xpath.patterns.StepPattern.execute:(Lorg/apache/xpath/XPathContext;)Lorg/apache/xpath/objects/XObject;
            astore 3 /* score */
        start local 3 // org.apache.xpath.objects.XObject score
         3: .line 903
            aload 3 /* score */
            invokevirtual org.apache.xpath.objects.XObject.num:()D
            dstore 5
         4: .line 907
            aload 1 /* xctxt */
            invokevirtual org.apache.xpath.XPathContext.popCurrentNode:()V
         5: .line 908
            aload 1 /* xctxt */
            invokevirtual org.apache.xpath.XPathContext.popCurrentExpressionNode:()V
         6: .line 903
            dload 5
            dreturn
        end local 3 // org.apache.xpath.objects.XObject score
         7: .line 906
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 4
         8: .line 907
            aload 1 /* xctxt */
            invokevirtual org.apache.xpath.XPathContext.popCurrentNode:()V
         9: .line 908
            aload 1 /* xctxt */
            invokevirtual org.apache.xpath.XPathContext.popCurrentExpressionNode:()V
        10: .line 909
            aload 4
            athrow
        end local 2 // int context
        end local 1 // org.apache.xpath.XPathContext xctxt
        end local 0 // org.apache.xpath.patterns.StepPattern this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   11     0     this  Lorg/apache/xpath/patterns/StepPattern;
            0   11     1    xctxt  Lorg/apache/xpath/XPathContext;
            0   11     2  context  I
            3    7     3    score  Lorg/apache/xpath/objects/XObject;
      Exception table:
        from    to  target  type
           2     4       7  any
    Exceptions:
      throws javax.xml.transform.TransformerException
    MethodParameters:
         Name  Flags
      xctxt    
      context  

  public void setAxis(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.xpath.patterns.StepPattern this
        start local 1 // int axis
         0: .line 922
            aload 0 /* this */
            iload 1 /* axis */
            putfield org.apache.xpath.patterns.StepPattern.m_axis:I
         1: .line 923
            return
        end local 1 // int axis
        end local 0 // org.apache.xpath.patterns.StepPattern this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/xpath/patterns/StepPattern;
            0    2     1  axis  I
    MethodParameters:
      Name  Flags
      axis  

  public int getAxis();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.xpath.patterns.StepPattern this
         0: .line 933
            aload 0 /* this */
            getfield org.apache.xpath.patterns.StepPattern.m_axis:I
            ireturn
        end local 0 // org.apache.xpath.patterns.StepPattern this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/xpath/patterns/StepPattern;

  public void callVisitors(org.apache.xpath.ExpressionOwner, org.apache.xpath.XPathVisitor);
    descriptor: (Lorg/apache/xpath/ExpressionOwner;Lorg/apache/xpath/XPathVisitor;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.apache.xpath.patterns.StepPattern this
        start local 1 // org.apache.xpath.ExpressionOwner owner
        start local 2 // org.apache.xpath.XPathVisitor visitor
         0: .line 969
            aload 2 /* visitor */
            aload 1 /* owner */
            aload 0 /* this */
            invokevirtual org.apache.xpath.XPathVisitor.visitMatchPattern:(Lorg/apache/xpath/ExpressionOwner;Lorg/apache/xpath/patterns/StepPattern;)Z
            ifeq 2
         1: .line 971
            aload 0 /* this */
            aload 2 /* visitor */
            invokevirtual org.apache.xpath.patterns.StepPattern.callSubtreeVisitors:(Lorg/apache/xpath/XPathVisitor;)V
         2: .line 973
      StackMap locals:
      StackMap stack:
            return
        end local 2 // org.apache.xpath.XPathVisitor visitor
        end local 1 // org.apache.xpath.ExpressionOwner owner
        end local 0 // org.apache.xpath.patterns.StepPattern this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/apache/xpath/patterns/StepPattern;
            0    3     1    owner  Lorg/apache/xpath/ExpressionOwner;
            0    3     2  visitor  Lorg/apache/xpath/XPathVisitor;
    MethodParameters:
         Name  Flags
      owner    
      visitor  

  protected void callSubtreeVisitors(org.apache.xpath.XPathVisitor);
    descriptor: (Lorg/apache/xpath/XPathVisitor;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // org.apache.xpath.patterns.StepPattern this
        start local 1 // org.apache.xpath.XPathVisitor visitor
         0: .line 981
            aload 0 /* this */
            getfield org.apache.xpath.patterns.StepPattern.m_predicates:[Lorg/apache/xpath/Expression;
            ifnull 9
         1: .line 983
            aload 0 /* this */
            getfield org.apache.xpath.patterns.StepPattern.m_predicates:[Lorg/apache/xpath/Expression;
            arraylength
            istore 2 /* n */
        start local 2 // int n
         2: .line 984
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         3: goto 8
         4: .line 986
      StackMap locals: int int
      StackMap stack:
            new org.apache.xpath.patterns.StepPattern$PredOwner
            dup
            aload 0 /* this */
            iload 3 /* i */
            invokespecial org.apache.xpath.patterns.StepPattern$PredOwner.<init>:(Lorg/apache/xpath/patterns/StepPattern;I)V
            astore 4 /* predOwner */
        start local 4 // org.apache.xpath.ExpressionOwner predOwner
         5: .line 987
            aload 1 /* visitor */
            aload 4 /* predOwner */
            aload 0 /* this */
            getfield org.apache.xpath.patterns.StepPattern.m_predicates:[Lorg/apache/xpath/Expression;
            iload 3 /* i */
            aaload
            invokevirtual org.apache.xpath.XPathVisitor.visitPredicate:(Lorg/apache/xpath/ExpressionOwner;Lorg/apache/xpath/Expression;)Z
            ifeq 7
         6: .line 989
            aload 0 /* this */
            getfield org.apache.xpath.patterns.StepPattern.m_predicates:[Lorg/apache/xpath/Expression;
            iload 3 /* i */
            aaload
            aload 4 /* predOwner */
            aload 1 /* visitor */
            invokevirtual org.apache.xpath.Expression.callVisitors:(Lorg/apache/xpath/ExpressionOwner;Lorg/apache/xpath/XPathVisitor;)V
        end local 4 // org.apache.xpath.ExpressionOwner predOwner
         7: .line 984
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 3 /* i */
            iload 2 /* n */
            if_icmplt 4
        end local 3 // int i
        end local 2 // int n
         9: .line 993
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.xpath.patterns.StepPattern.m_relativePathPattern:Lorg/apache/xpath/patterns/StepPattern;
            ifnull 11
        10: .line 995
            aload 0 /* this */
            getfield org.apache.xpath.patterns.StepPattern.m_relativePathPattern:Lorg/apache/xpath/patterns/StepPattern;
            aload 0 /* this */
            aload 1 /* visitor */
            invokevirtual org.apache.xpath.patterns.StepPattern.callVisitors:(Lorg/apache/xpath/ExpressionOwner;Lorg/apache/xpath/XPathVisitor;)V
        11: .line 997
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.apache.xpath.XPathVisitor visitor
        end local 0 // org.apache.xpath.patterns.StepPattern this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   12     0       this  Lorg/apache/xpath/patterns/StepPattern;
            0   12     1    visitor  Lorg/apache/xpath/XPathVisitor;
            2    9     2          n  I
            3    9     3          i  I
            5    7     4  predOwner  Lorg/apache/xpath/ExpressionOwner;
    MethodParameters:
         Name  Flags
      visitor  

  public org.apache.xpath.Expression getExpression();
    descriptor: ()Lorg/apache/xpath/Expression;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.xpath.patterns.StepPattern this
         0: .line 1005
            aload 0 /* this */
            getfield org.apache.xpath.patterns.StepPattern.m_relativePathPattern:Lorg/apache/xpath/patterns/StepPattern;
            areturn
        end local 0 // org.apache.xpath.patterns.StepPattern this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/xpath/patterns/StepPattern;

  public void setExpression(org.apache.xpath.Expression);
    descriptor: (Lorg/apache/xpath/Expression;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.xpath.patterns.StepPattern this
        start local 1 // org.apache.xpath.Expression exp
         0: .line 1013
            aload 1 /* exp */
            aload 0 /* this */
            invokevirtual org.apache.xpath.Expression.exprSetParent:(Lorg/apache/xpath/ExpressionNode;)V
         1: .line 1014
            aload 0 /* this */
            aload 1 /* exp */
            checkcast org.apache.xpath.patterns.StepPattern
            putfield org.apache.xpath.patterns.StepPattern.m_relativePathPattern:Lorg/apache/xpath/patterns/StepPattern;
         2: .line 1015
            return
        end local 1 // org.apache.xpath.Expression exp
        end local 0 // org.apache.xpath.patterns.StepPattern this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/apache/xpath/patterns/StepPattern;
            0    3     1   exp  Lorg/apache/xpath/Expression;
    MethodParameters:
      Name  Flags
      exp   

  public boolean deepEquals(org.apache.xpath.Expression);
    descriptor: (Lorg/apache/xpath/Expression;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // org.apache.xpath.patterns.StepPattern this
        start local 1 // org.apache.xpath.Expression expr
         0: .line 1022
            aload 0 /* this */
            aload 1 /* expr */
            invokespecial org.apache.xpath.patterns.NodeTest.deepEquals:(Lorg/apache/xpath/Expression;)Z
            ifne 2
         1: .line 1023
            iconst_0
            ireturn
         2: .line 1025
      StackMap locals:
      StackMap stack:
            aload 1 /* expr */
            checkcast org.apache.xpath.patterns.StepPattern
            astore 2 /* sp */
        start local 2 // org.apache.xpath.patterns.StepPattern sp
         3: .line 1027
            aload 0 /* this */
            getfield org.apache.xpath.patterns.StepPattern.m_predicates:[Lorg/apache/xpath/Expression;
            ifnull 14
         4: .line 1029
            aload 0 /* this */
            getfield org.apache.xpath.patterns.StepPattern.m_predicates:[Lorg/apache/xpath/Expression;
            arraylength
            istore 3 /* n */
        start local 3 // int n
         5: .line 1030
            aload 2 /* sp */
            getfield org.apache.xpath.patterns.StepPattern.m_predicates:[Lorg/apache/xpath/Expression;
            ifnull 6
            aload 2 /* sp */
            getfield org.apache.xpath.patterns.StepPattern.m_predicates:[Lorg/apache/xpath/Expression;
            arraylength
            iload 3 /* n */
            if_icmpeq 7
         6: .line 1031
      StackMap locals: org.apache.xpath.patterns.StepPattern int
      StackMap stack:
            iconst_0
            ireturn
         7: .line 1032
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         8: goto 12
         9: .line 1034
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.xpath.patterns.StepPattern.m_predicates:[Lorg/apache/xpath/Expression;
            iload 4 /* i */
            aaload
            aload 2 /* sp */
            getfield org.apache.xpath.patterns.StepPattern.m_predicates:[Lorg/apache/xpath/Expression;
            iload 4 /* i */
            aaload
            invokevirtual org.apache.xpath.Expression.deepEquals:(Lorg/apache/xpath/Expression;)Z
            ifne 11
        10: .line 1035
            iconst_0
            ireturn
        11: .line 1032
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        12: iload 4 /* i */
            iload 3 /* n */
            if_icmplt 9
        end local 4 // int i
        end local 3 // int n
        13: .line 1037
            goto 16
        14: .line 1038
      StackMap locals:
      StackMap stack:
            aload 2 /* sp */
            getfield org.apache.xpath.patterns.StepPattern.m_predicates:[Lorg/apache/xpath/Expression;
            ifnull 16
        15: .line 1039
            iconst_0
            ireturn
        16: .line 1041
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.xpath.patterns.StepPattern.m_relativePathPattern:Lorg/apache/xpath/patterns/StepPattern;
            ifnull 19
        17: .line 1043
            aload 0 /* this */
            getfield org.apache.xpath.patterns.StepPattern.m_relativePathPattern:Lorg/apache/xpath/patterns/StepPattern;
            aload 2 /* sp */
            getfield org.apache.xpath.patterns.StepPattern.m_relativePathPattern:Lorg/apache/xpath/patterns/StepPattern;
            invokevirtual org.apache.xpath.patterns.StepPattern.deepEquals:(Lorg/apache/xpath/Expression;)Z
            ifne 21
        18: .line 1044
            iconst_0
            ireturn
        19: .line 1046
      StackMap locals:
      StackMap stack:
            aload 2 /* sp */
            getfield org.apache.xpath.patterns.StepPattern.m_relativePathPattern:Lorg/apache/xpath/patterns/StepPattern;
            ifnull 21
        20: .line 1047
            iconst_0
            ireturn
        21: .line 1049
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 2 // org.apache.xpath.patterns.StepPattern sp
        end local 1 // org.apache.xpath.Expression expr
        end local 0 // org.apache.xpath.patterns.StepPattern this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   22     0  this  Lorg/apache/xpath/patterns/StepPattern;
            0   22     1  expr  Lorg/apache/xpath/Expression;
            3   22     2    sp  Lorg/apache/xpath/patterns/StepPattern;
            5   13     3     n  I
            8   13     4     i  I
    MethodParameters:
      Name  Flags
      expr  
}
SourceFile: "StepPattern.java"
NestMembers:
  org.apache.xpath.patterns.StepPattern$PredOwner
InnerClasses:
  PredOwner = org.apache.xpath.patterns.StepPattern$PredOwner of org.apache.xpath.patterns.StepPattern