public class org.apache.tomcat.util.digester.CallMethodRule extends org.apache.tomcat.util.digester.Rule
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.tomcat.util.digester.CallMethodRule
  super_class: org.apache.tomcat.util.digester.Rule
{
  protected java.lang.String bodyText;
    descriptor: Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED

  protected final int targetOffset;
    descriptor: I
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final java.lang.String methodName;
    descriptor: Ljava/lang/String;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final int paramCount;
    descriptor: I
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected java.lang.Class<?>[] paramTypes;
    descriptor: [Ljava/lang/Class;
    flags: (0x0004) ACC_PROTECTED
    Signature: [Ljava/lang/Class<*>;

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

  public void <init>(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.apache.tomcat.util.digester.CallMethodRule this
        start local 1 // java.lang.String methodName
        start local 2 // int paramCount
         0: .line 75
            aload 0 /* this */
            iconst_0
            aload 1 /* methodName */
            iload 2 /* paramCount */
            invokespecial org.apache.tomcat.util.digester.CallMethodRule.<init>:(ILjava/lang/String;I)V
         1: .line 76
            return
        end local 2 // int paramCount
        end local 1 // java.lang.String methodName
        end local 0 // org.apache.tomcat.util.digester.CallMethodRule this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lorg/apache/tomcat/util/digester/CallMethodRule;
            0    2     1  methodName  Ljava/lang/String;
            0    2     2  paramCount  I
    MethodParameters:
            Name  Flags
      methodName  
      paramCount  

  public void <init>(int, java.lang.String, int);
    descriptor: (ILjava/lang/String;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // org.apache.tomcat.util.digester.CallMethodRule this
        start local 1 // int targetOffset
        start local 2 // java.lang.String methodName
        start local 3 // int paramCount
         0: .line 91
            aload 0 /* this */
            invokespecial org.apache.tomcat.util.digester.Rule.<init>:()V
         1: .line 160
            aload 0 /* this */
            aconst_null
            putfield org.apache.tomcat.util.digester.CallMethodRule.bodyText:Ljava/lang/String;
         2: .line 188
            aload 0 /* this */
            aconst_null
            putfield org.apache.tomcat.util.digester.CallMethodRule.paramTypes:[Ljava/lang/Class;
         3: .line 194
            aload 0 /* this */
            iconst_0
            putfield org.apache.tomcat.util.digester.CallMethodRule.useExactMatch:Z
         4: .line 92
            aload 0 /* this */
            iload 1 /* targetOffset */
            putfield org.apache.tomcat.util.digester.CallMethodRule.targetOffset:I
         5: .line 93
            aload 0 /* this */
            aload 2 /* methodName */
            putfield org.apache.tomcat.util.digester.CallMethodRule.methodName:Ljava/lang/String;
         6: .line 94
            aload 0 /* this */
            iload 3 /* paramCount */
            putfield org.apache.tomcat.util.digester.CallMethodRule.paramCount:I
         7: .line 95
            iload 3 /* paramCount */
            ifne 10
         8: .line 96
            aload 0 /* this */
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/lang/String;
            aastore
            putfield org.apache.tomcat.util.digester.CallMethodRule.paramTypes:[Ljava/lang/Class;
         9: .line 97
            goto 16
        10: .line 98
      StackMap locals: org.apache.tomcat.util.digester.CallMethodRule int java.lang.String int
      StackMap stack:
            aload 0 /* this */
            iload 3 /* paramCount */
            anewarray java.lang.Class
            putfield org.apache.tomcat.util.digester.CallMethodRule.paramTypes:[Ljava/lang/Class;
        11: .line 99
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        12: goto 15
        13: .line 100
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.paramTypes:[Ljava/lang/Class;
            iload 4 /* i */
            ldc Ljava/lang/String;
            aastore
        14: .line 99
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        15: iload 4 /* i */
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.paramTypes:[Ljava/lang/Class;
            arraylength
            if_icmplt 13
        end local 4 // int i
        16: .line 103
      StackMap locals:
      StackMap stack:
            return
        end local 3 // int paramCount
        end local 2 // java.lang.String methodName
        end local 1 // int targetOffset
        end local 0 // org.apache.tomcat.util.digester.CallMethodRule this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   17     0          this  Lorg/apache/tomcat/util/digester/CallMethodRule;
            0   17     1  targetOffset  I
            0   17     2    methodName  Ljava/lang/String;
            0   17     3    paramCount  I
           12   16     4             i  I
    MethodParameters:
              Name  Flags
      targetOffset  
      methodName    
      paramCount    

  public void <init>(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.apache.tomcat.util.digester.CallMethodRule this
        start local 1 // java.lang.String methodName
         0: .line 113
            aload 0 /* this */
            iconst_0
            aload 1 /* methodName */
            iconst_0
            aconst_null
            invokespecial org.apache.tomcat.util.digester.CallMethodRule.<init>:(ILjava/lang/String;I[Ljava/lang/Class;)V
         1: .line 114
            return
        end local 1 // java.lang.String methodName
        end local 0 // org.apache.tomcat.util.digester.CallMethodRule this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lorg/apache/tomcat/util/digester/CallMethodRule;
            0    2     1  methodName  Ljava/lang/String;
    MethodParameters:
            Name  Flags
      methodName  

  public void <init>(int, java.lang.String, int, java.lang.Class<?>[]);
    descriptor: (ILjava/lang/String;I[Ljava/lang/Class;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=5
        start local 0 // org.apache.tomcat.util.digester.CallMethodRule this
        start local 1 // int targetOffset
        start local 2 // java.lang.String methodName
        start local 3 // int paramCount
        start local 4 // java.lang.Class[] paramTypes
         0: .line 137
            aload 0 /* this */
            invokespecial org.apache.tomcat.util.digester.Rule.<init>:()V
         1: .line 160
            aload 0 /* this */
            aconst_null
            putfield org.apache.tomcat.util.digester.CallMethodRule.bodyText:Ljava/lang/String;
         2: .line 188
            aload 0 /* this */
            aconst_null
            putfield org.apache.tomcat.util.digester.CallMethodRule.paramTypes:[Ljava/lang/Class;
         3: .line 194
            aload 0 /* this */
            iconst_0
            putfield org.apache.tomcat.util.digester.CallMethodRule.useExactMatch:Z
         4: .line 140
            aload 0 /* this */
            iload 1 /* targetOffset */
            putfield org.apache.tomcat.util.digester.CallMethodRule.targetOffset:I
         5: .line 141
            aload 0 /* this */
            aload 2 /* methodName */
            putfield org.apache.tomcat.util.digester.CallMethodRule.methodName:Ljava/lang/String;
         6: .line 142
            aload 0 /* this */
            iload 3 /* paramCount */
            putfield org.apache.tomcat.util.digester.CallMethodRule.paramCount:I
         7: .line 143
            aload 4 /* paramTypes */
            ifnonnull 15
         8: .line 144
            aload 0 /* this */
            iload 3 /* paramCount */
            anewarray java.lang.Class
            putfield org.apache.tomcat.util.digester.CallMethodRule.paramTypes:[Ljava/lang/Class;
         9: .line 145
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        10: goto 13
        11: .line 146
      StackMap locals: org.apache.tomcat.util.digester.CallMethodRule int java.lang.String int java.lang.Class[] int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.paramTypes:[Ljava/lang/Class;
            iload 5 /* i */
            ldc Ljava/lang/String;
            aastore
        12: .line 145
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        13: iload 5 /* i */
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.paramTypes:[Ljava/lang/Class;
            arraylength
            if_icmplt 11
        end local 5 // int i
        14: .line 148
            goto 17
        15: .line 149
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* paramTypes */
            arraylength
            anewarray java.lang.Class
            putfield org.apache.tomcat.util.digester.CallMethodRule.paramTypes:[Ljava/lang/Class;
        16: .line 150
            aload 4 /* paramTypes */
            iconst_0
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.paramTypes:[Ljava/lang/Class;
            iconst_0
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.paramTypes:[Ljava/lang/Class;
            arraylength
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        17: .line 152
      StackMap locals:
      StackMap stack:
            return
        end local 4 // java.lang.Class[] paramTypes
        end local 3 // int paramCount
        end local 2 // java.lang.String methodName
        end local 1 // int targetOffset
        end local 0 // org.apache.tomcat.util.digester.CallMethodRule this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   18     0          this  Lorg/apache/tomcat/util/digester/CallMethodRule;
            0   18     1  targetOffset  I
            0   18     2    methodName  Ljava/lang/String;
            0   18     3    paramCount  I
            0   18     4    paramTypes  [Ljava/lang/Class;
           10   14     5             i  I
    Signature: (ILjava/lang/String;I[Ljava/lang/Class<*>;)V
    MethodParameters:
              Name  Flags
      targetOffset  
      methodName    
      paramCount    
      paramTypes    

  public boolean getUseExactMatch();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.tomcat.util.digester.CallMethodRule this
         0: .line 205
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.useExactMatch:Z
            ireturn
        end local 0 // org.apache.tomcat.util.digester.CallMethodRule this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/tomcat/util/digester/CallMethodRule;

  public void setUseExactMatch(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.tomcat.util.digester.CallMethodRule this
        start local 1 // boolean useExactMatch
         0: .line 215
            aload 0 /* this */
            iload 1 /* useExactMatch */
            putfield org.apache.tomcat.util.digester.CallMethodRule.useExactMatch:Z
         1: .line 216
            return
        end local 1 // boolean useExactMatch
        end local 0 // org.apache.tomcat.util.digester.CallMethodRule this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    2     0           this  Lorg/apache/tomcat/util/digester/CallMethodRule;
            0    2     1  useExactMatch  Z
    MethodParameters:
               Name  Flags
      useExactMatch  

  public void begin(java.lang.String, java.lang.String, org.xml.sax.Attributes);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Lorg/xml/sax/Attributes;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=4
        start local 0 // org.apache.tomcat.util.digester.CallMethodRule this
        start local 1 // java.lang.String namespace
        start local 2 // java.lang.String name
        start local 3 // org.xml.sax.Attributes attributes
         0: .line 234
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.paramCount:I
            ifle 8
         1: .line 235
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.paramCount:I
            anewarray java.lang.Object
            astore 4 /* parameters */
        start local 4 // java.lang.Object[] parameters
         2: .line 236
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         3: goto 6
         4: .line 237
      StackMap locals: java.lang.Object[] int
      StackMap stack:
            aload 4 /* parameters */
            iload 5 /* i */
            aconst_null
            aastore
         5: .line 236
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 5 /* i */
            aload 4 /* parameters */
            arraylength
            if_icmplt 4
        end local 5 // int i
         7: .line 239
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.digester:Lorg/apache/tomcat/util/digester/Digester;
            aload 4 /* parameters */
            invokevirtual org.apache.tomcat.util.digester.Digester.pushParams:(Ljava/lang/Object;)V
        end local 4 // java.lang.Object[] parameters
         8: .line 242
      StackMap locals:
      StackMap stack:
            return
        end local 3 // org.xml.sax.Attributes attributes
        end local 2 // java.lang.String name
        end local 1 // java.lang.String namespace
        end local 0 // org.apache.tomcat.util.digester.CallMethodRule this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    9     0        this  Lorg/apache/tomcat/util/digester/CallMethodRule;
            0    9     1   namespace  Ljava/lang/String;
            0    9     2        name  Ljava/lang/String;
            0    9     3  attributes  Lorg/xml/sax/Attributes;
            2    8     4  parameters  [Ljava/lang/Object;
            3    7     5           i  I
    Exceptions:
      throws java.lang.Exception
    MethodParameters:
            Name  Flags
      namespace   
      name        
      attributes  

  public void body(java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // org.apache.tomcat.util.digester.CallMethodRule this
        start local 1 // java.lang.String namespace
        start local 2 // java.lang.String name
        start local 3 // java.lang.String bodyText
         0: .line 259
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.paramCount:I
            ifne 2
         1: .line 260
            aload 0 /* this */
            aload 3 /* bodyText */
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            invokevirtual java.lang.String.intern:()Ljava/lang/String;
            putfield org.apache.tomcat.util.digester.CallMethodRule.bodyText:Ljava/lang/String;
         2: .line 263
      StackMap locals:
      StackMap stack:
            return
        end local 3 // java.lang.String bodyText
        end local 2 // java.lang.String name
        end local 1 // java.lang.String namespace
        end local 0 // org.apache.tomcat.util.digester.CallMethodRule this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Lorg/apache/tomcat/util/digester/CallMethodRule;
            0    3     1  namespace  Ljava/lang/String;
            0    3     2       name  Ljava/lang/String;
            0    3     3   bodyText  Ljava/lang/String;
    Exceptions:
      throws java.lang.Exception
    MethodParameters:
           Name  Flags
      namespace  
      name       
      bodyText   

  public void end(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=14, args_size=3
        start local 0 // org.apache.tomcat.util.digester.CallMethodRule this
        start local 1 // java.lang.String namespace
        start local 2 // java.lang.String name
         0: .line 280
            aconst_null
            astore 3 /* parameters */
        start local 3 // java.lang.Object[] parameters
         1: .line 281
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.paramCount:I
            ifle 12
         2: .line 283
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.digester:Lorg/apache/tomcat/util/digester/Digester;
            invokevirtual org.apache.tomcat.util.digester.Digester.popParams:()Ljava/lang/Object;
            checkcast java.lang.Object[]
            astore 3 /* parameters */
         3: .line 285
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.digester:Lorg/apache/tomcat/util/digester/Digester;
            getfield org.apache.tomcat.util.digester.Digester.log:Lorg/apache/juli/logging/Log;
            invokeinterface org.apache.juli.logging.Log.isTraceEnabled:()Z
            ifeq 10
         4: .line 286
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         5: aload 3 /* parameters */
            arraylength
            istore 5 /* size */
        start local 5 // int size
         6: goto 9
         7: .line 287
      StackMap locals: java.lang.Object[] int int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.digester:Lorg/apache/tomcat/util/digester/Digester;
            getfield org.apache.tomcat.util.digester.Digester.log:Lorg/apache/juli/logging/Log;
            new java.lang.StringBuilder
            dup
            ldc "[CallMethodRule]("
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 4 /* i */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ")"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 3 /* parameters */
            iload 4 /* i */
            aaload
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface org.apache.juli.logging.Log.trace:(Ljava/lang/Object;)V
         8: .line 286
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 4 /* i */
            iload 5 /* size */
            if_icmplt 7
        end local 5 // int size
        end local 4 // int i
        10: .line 295
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.paramCount:I
            iconst_1
            if_icmpne 17
            aload 3 /* parameters */
            iconst_0
            aaload
            ifnonnull 17
        11: .line 296
            return
        12: .line 299
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.paramTypes:[Ljava/lang/Class;
            ifnull 17
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.paramTypes:[Ljava/lang/Class;
            arraylength
            ifeq 17
        13: .line 305
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.bodyText:Ljava/lang/String;
            ifnonnull 15
        14: .line 306
            return
        15: .line 309
      StackMap locals:
      StackMap stack:
            iconst_1
            anewarray java.lang.Object
            astore 3 /* parameters */
        16: .line 310
            aload 3 /* parameters */
            iconst_0
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.bodyText:Ljava/lang/String;
            aastore
        17: .line 316
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.paramTypes:[Ljava/lang/Class;
            arraylength
            anewarray java.lang.Object
            astore 4 /* paramValues */
        start local 4 // java.lang.Object[] paramValues
        18: .line 317
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        19: goto 31
        20: .line 320
      StackMap locals: java.lang.Object[] int
      StackMap stack:
            aload 3 /* parameters */
            iload 5 /* i */
            aaload
            astore 6 /* param */
        start local 6 // java.lang.Object param
        21: .line 322
            aload 6 /* param */
            ifnonnull 23
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.paramTypes:[Ljava/lang/Class;
            iload 5 /* i */
            aaload
            invokevirtual java.lang.Class.isPrimitive:()Z
            ifne 23
        22: .line 323
            aload 4 /* paramValues */
            iload 5 /* i */
            aconst_null
            aastore
            goto 30
        23: .line 324
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 6 /* param */
            instanceof java.lang.String
            ifeq 29
        24: .line 325
            ldc Ljava/lang/String;
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.paramTypes:[Ljava/lang/Class;
            iload 5 /* i */
            aaload
            invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
            ifne 29
        25: .line 327
            aload 4 /* paramValues */
            iload 5 /* i */
        26: .line 328
            aload 3 /* parameters */
            iload 5 /* i */
            aaload
            checkcast java.lang.String
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.paramTypes:[Ljava/lang/Class;
            iload 5 /* i */
            aaload
            invokestatic org.apache.tomcat.util.IntrospectionUtils.convert:(Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/Object;
        27: .line 327
            aastore
        28: .line 329
            goto 30
        29: .line 330
      StackMap locals:
      StackMap stack:
            aload 4 /* paramValues */
            iload 5 /* i */
            aload 3 /* parameters */
            iload 5 /* i */
            aaload
            aastore
        end local 6 // java.lang.Object param
        30: .line 317
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        31: iload 5 /* i */
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.paramTypes:[Ljava/lang/Class;
            arraylength
            if_icmplt 20
        end local 5 // int i
        32: .line 336
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.targetOffset:I
            iflt 35
        33: .line 337
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.digester:Lorg/apache/tomcat/util/digester/Digester;
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.targetOffset:I
            invokevirtual org.apache.tomcat.util.digester.Digester.peek:(I)Ljava/lang/Object;
            astore 5 /* target */
        start local 5 // java.lang.Object target
        34: .line 338
            goto 36
        end local 5 // java.lang.Object target
        35: .line 339
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.digester:Lorg/apache/tomcat/util/digester/Digester;
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.digester:Lorg/apache/tomcat/util/digester/Digester;
            invokevirtual org.apache.tomcat.util.digester.Digester.getCount:()I
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.targetOffset:I
            iadd
            invokevirtual org.apache.tomcat.util.digester.Digester.peek:(I)Ljava/lang/Object;
            astore 5 /* target */
        start local 5 // java.lang.Object target
        36: .line 342
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 5 /* target */
            ifnonnull 47
        37: .line 343
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 6 /* sb */
        start local 6 // java.lang.StringBuilder sb
        38: .line 344
            aload 6 /* sb */
            ldc "[CallMethodRule]{"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        39: .line 345
            aload 6 /* sb */
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.digester:Lorg/apache/tomcat/util/digester/Digester;
            getfield org.apache.tomcat.util.digester.Digester.match:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        40: .line 346
            aload 6 /* sb */
            ldc "} Call target is null ("
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        41: .line 347
            aload 6 /* sb */
            ldc "targetOffset="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        42: .line 348
            aload 6 /* sb */
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.targetOffset:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            pop
        43: .line 349
            aload 6 /* sb */
            ldc ",stackdepth="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        44: .line 350
            aload 6 /* sb */
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.digester:Lorg/apache/tomcat/util/digester/Digester;
            invokevirtual org.apache.tomcat.util.digester.Digester.getCount:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            pop
        45: .line 351
            aload 6 /* sb */
            bipush 41
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        46: .line 352
            new org.xml.sax.SAXException
            dup
            aload 6 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial org.xml.sax.SAXException.<init>:(Ljava/lang/String;)V
            athrow
        end local 6 // java.lang.StringBuilder sb
        47: .line 356
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.digester:Lorg/apache/tomcat/util/digester/Digester;
            getfield org.apache.tomcat.util.digester.Digester.log:Lorg/apache/juli/logging/Log;
            invokeinterface org.apache.juli.logging.Log.isDebugEnabled:()Z
            ifeq 72
        48: .line 357
            new java.lang.StringBuilder
            dup
            ldc "[CallMethodRule]{"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            astore 6 /* sb */
        start local 6 // java.lang.StringBuilder sb
        49: .line 358
            aload 6 /* sb */
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.digester:Lorg/apache/tomcat/util/digester/Digester;
            getfield org.apache.tomcat.util.digester.Digester.match:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        50: .line 359
            aload 6 /* sb */
            ldc "} Call "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        51: .line 360
            aload 6 /* sb */
            aload 5 /* target */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        52: .line 361
            aload 6 /* sb */
            bipush 46
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        53: .line 362
            aload 6 /* sb */
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.methodName:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        54: .line 363
            aload 6 /* sb */
            bipush 40
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        55: .line 364
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        56: goto 69
        57: .line 365
      StackMap locals: java.lang.StringBuilder int
      StackMap stack:
            iload 7 /* i */
            ifle 59
        58: .line 366
            aload 6 /* sb */
            bipush 44
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        59: .line 368
      StackMap locals:
      StackMap stack:
            aload 4 /* paramValues */
            iload 7 /* i */
            aaload
            ifnonnull 62
        60: .line 369
            aload 6 /* sb */
            ldc "null"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        61: .line 370
            goto 63
        62: .line 371
      StackMap locals:
      StackMap stack:
            aload 6 /* sb */
            aload 4 /* paramValues */
            iload 7 /* i */
            aaload
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        63: .line 373
      StackMap locals:
      StackMap stack:
            aload 6 /* sb */
            bipush 47
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        64: .line 374
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.paramTypes:[Ljava/lang/Class;
            iload 7 /* i */
            aaload
            ifnonnull 67
        65: .line 375
            aload 6 /* sb */
            ldc "null"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        66: .line 376
            goto 68
        67: .line 377
      StackMap locals:
      StackMap stack:
            aload 6 /* sb */
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.paramTypes:[Ljava/lang/Class;
            iload 7 /* i */
            aaload
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        68: .line 364
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        69: iload 7 /* i */
            aload 4 /* paramValues */
            arraylength
            if_icmplt 57
        end local 7 // int i
        70: .line 380
            aload 6 /* sb */
            bipush 41
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        71: .line 381
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.digester:Lorg/apache/tomcat/util/digester/Digester;
            getfield org.apache.tomcat.util.digester.Digester.log:Lorg/apache/juli/logging/Log;
            aload 6 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface org.apache.juli.logging.Log.debug:(Ljava/lang/Object;)V
        end local 6 // java.lang.StringBuilder sb
        72: .line 383
      StackMap locals:
      StackMap stack:
            aload 5 /* target */
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.methodName:Ljava/lang/String;
        73: .line 384
            aload 4 /* paramValues */
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.paramTypes:[Ljava/lang/Class;
        74: .line 383
            invokestatic org.apache.tomcat.util.IntrospectionUtils.callMethodN:(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;[Ljava/lang/Class;)Ljava/lang/Object;
            astore 6 /* result */
        start local 6 // java.lang.Object result
        75: .line 385
            aload 0 /* this */
            aload 6 /* result */
            invokevirtual org.apache.tomcat.util.digester.CallMethodRule.processMethodCallResult:(Ljava/lang/Object;)V
        76: .line 387
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.digester:Lorg/apache/tomcat/util/digester/Digester;
            invokevirtual org.apache.tomcat.util.digester.Digester.getGeneratedCode:()Ljava/lang/StringBuilder;
            astore 7 /* code */
        start local 7 // java.lang.StringBuilder code
        77: .line 388
            aload 7 /* code */
            ifnull 101
        78: .line 389
            aload 7 /* code */
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.digester:Lorg/apache/tomcat/util/digester/Digester;
            aload 5 /* target */
            invokevirtual org.apache.tomcat.util.digester.Digester.toVariableName:(Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 46
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.methodName:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        79: .line 390
            aload 7 /* code */
            bipush 40
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        80: .line 391
            iconst_0
            istore 8 /* i */
        start local 8 // int i
        81: goto 98
        82: .line 392
      StackMap locals: java.lang.Object java.lang.StringBuilder int
      StackMap stack:
            iload 8 /* i */
            ifle 84
        83: .line 393
            aload 7 /* code */
            ldc ", "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        84: .line 395
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.bodyText:Ljava/lang/String;
            ifnull 93
        85: .line 396
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 9 /* bodyTextParam */
        start local 9 // java.lang.StringBuilder bodyTextParam
        86: .line 397
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.bodyText:Ljava/lang/String;
            ldc "\n"
            invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
            dup
            astore 13
            arraylength
            istore 12
            iconst_0
            istore 11
            goto 90
      StackMap locals: org.apache.tomcat.util.digester.CallMethodRule java.lang.String java.lang.String java.lang.Object[] java.lang.Object[] java.lang.Object java.lang.Object java.lang.StringBuilder int java.lang.StringBuilder top int int java.lang.String[]
      StackMap stack:
        87: aload 13
            iload 11
            aaload
            astore 10 /* bodyPart */
        start local 10 // java.lang.String bodyPart
        88: .line 398
            aload 9 /* bodyTextParam */
            aload 10 /* bodyPart */
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        end local 10 // java.lang.String bodyPart
        89: .line 397
            iinc 11 1
      StackMap locals:
      StackMap stack:
        90: iload 11
            iload 12
            if_icmplt 87
        91: .line 400
            aload 7 /* code */
            ldc "\""
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 9 /* bodyTextParam */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            ldc "\""
            ldc "\\\""
            invokevirtual java.lang.String.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\""
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 9 // java.lang.StringBuilder bodyTextParam
        92: .line 401
            goto 97
      StackMap locals: org.apache.tomcat.util.digester.CallMethodRule java.lang.String java.lang.String java.lang.Object[] java.lang.Object[] java.lang.Object java.lang.Object java.lang.StringBuilder int
      StackMap stack:
        93: aload 4 /* paramValues */
            iload 8 /* i */
            aaload
            instanceof java.lang.String
            ifeq 96
        94: .line 402
            aload 7 /* code */
            ldc "\""
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 4 /* paramValues */
            iload 8 /* i */
            aaload
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\""
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        95: .line 403
            goto 97
        96: .line 404
      StackMap locals:
      StackMap stack:
            aload 7 /* code */
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.digester:Lorg/apache/tomcat/util/digester/Digester;
            aload 4 /* paramValues */
            iload 8 /* i */
            aaload
            invokevirtual org.apache.tomcat.util.digester.Digester.toVariableName:(Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        97: .line 391
      StackMap locals:
      StackMap stack:
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
        98: iload 8 /* i */
            aload 4 /* paramValues */
            arraylength
            if_icmplt 82
        end local 8 // int i
        99: .line 407
            aload 7 /* code */
            ldc ");"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       100: .line 408
            aload 7 /* code */
            invokestatic java.lang.System.lineSeparator:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       101: .line 410
      StackMap locals:
      StackMap stack:
            return
        end local 7 // java.lang.StringBuilder code
        end local 6 // java.lang.Object result
        end local 5 // java.lang.Object target
        end local 4 // java.lang.Object[] paramValues
        end local 3 // java.lang.Object[] parameters
        end local 2 // java.lang.String name
        end local 1 // java.lang.String namespace
        end local 0 // org.apache.tomcat.util.digester.CallMethodRule this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0  102     0           this  Lorg/apache/tomcat/util/digester/CallMethodRule;
            0  102     1      namespace  Ljava/lang/String;
            0  102     2           name  Ljava/lang/String;
            1  102     3     parameters  [Ljava/lang/Object;
            5   10     4              i  I
            6   10     5           size  I
           18  102     4    paramValues  [Ljava/lang/Object;
           19   32     5              i  I
           21   30     6          param  Ljava/lang/Object;
           34   35     5         target  Ljava/lang/Object;
           36  102     5         target  Ljava/lang/Object;
           38   47     6             sb  Ljava/lang/StringBuilder;
           49   72     6             sb  Ljava/lang/StringBuilder;
           56   70     7              i  I
           75  102     6         result  Ljava/lang/Object;
           77  102     7           code  Ljava/lang/StringBuilder;
           81   99     8              i  I
           86   92     9  bodyTextParam  Ljava/lang/StringBuilder;
           88   89    10       bodyPart  Ljava/lang/String;
    Exceptions:
      throws java.lang.Exception
    MethodParameters:
           Name  Flags
      namespace  
      name       

  public void finish();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.tomcat.util.digester.CallMethodRule this
         0: .line 418
            aload 0 /* this */
            aconst_null
            putfield org.apache.tomcat.util.digester.CallMethodRule.bodyText:Ljava/lang/String;
         1: .line 419
            return
        end local 0 // org.apache.tomcat.util.digester.CallMethodRule this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/tomcat/util/digester/CallMethodRule;
    Exceptions:
      throws java.lang.Exception

  protected void processMethodCallResult(java.lang.Object);
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // org.apache.tomcat.util.digester.CallMethodRule this
        start local 1 // java.lang.Object result
         0: .line 430
            return
        end local 1 // java.lang.Object result
        end local 0 // org.apache.tomcat.util.digester.CallMethodRule this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/apache/tomcat/util/digester/CallMethodRule;
            0    1     1  result  Ljava/lang/Object;
    MethodParameters:
        Name  Flags
      result  

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // org.apache.tomcat.util.digester.CallMethodRule this
         0: .line 438
            new java.lang.StringBuilder
            dup
            ldc "CallMethodRule["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            astore 1 /* sb */
        start local 1 // java.lang.StringBuilder sb
         1: .line 439
            aload 1 /* sb */
            ldc "methodName="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         2: .line 440
            aload 1 /* sb */
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.methodName:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         3: .line 441
            aload 1 /* sb */
            ldc ", paramCount="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         4: .line 442
            aload 1 /* sb */
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.paramCount:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            pop
         5: .line 443
            aload 1 /* sb */
            ldc ", paramTypes={"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         6: .line 444
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.paramTypes:[Ljava/lang/Class;
            ifnull 14
         7: .line 445
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         8: goto 13
         9: .line 446
      StackMap locals: java.lang.StringBuilder int
      StackMap stack:
            iload 2 /* i */
            ifle 11
        10: .line 447
            aload 1 /* sb */
            ldc ", "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        11: .line 449
      StackMap locals:
      StackMap stack:
            aload 1 /* sb */
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.paramTypes:[Ljava/lang/Class;
            iload 2 /* i */
            aaload
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        12: .line 445
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        13: iload 2 /* i */
            aload 0 /* this */
            getfield org.apache.tomcat.util.digester.CallMethodRule.paramTypes:[Ljava/lang/Class;
            arraylength
            if_icmplt 9
        end local 2 // int i
        14: .line 452
      StackMap locals:
      StackMap stack:
            aload 1 /* sb */
            bipush 125
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        15: .line 453
            aload 1 /* sb */
            bipush 93
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        16: .line 454
            aload 1 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 1 // java.lang.StringBuilder sb
        end local 0 // org.apache.tomcat.util.digester.CallMethodRule this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   17     0  this  Lorg/apache/tomcat/util/digester/CallMethodRule;
            1   17     1    sb  Ljava/lang/StringBuilder;
            8   14     2     i  I
}
SourceFile: "CallMethodRule.java"