public abstract class org.objectweb.asm.commons.AdviceAdapter extends org.objectweb.asm.commons.GeneratorAdapter implements org.objectweb.asm.Opcodes
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: org.objectweb.asm.commons.AdviceAdapter
  super_class: org.objectweb.asm.commons.GeneratorAdapter
{
  private static final java.lang.Object THIS;
    descriptor: Ljava/lang/Object;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

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

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

  protected java.lang.String methodDesc;
    descriptor: Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED

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

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

  private java.util.List<java.lang.Object> stackFrame;
    descriptor: Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/List<Ljava/lang/Object;>;

  private java.util.Map<org.objectweb.asm.Label, java.util.List<java.lang.Object>> branches;
    descriptor: Ljava/util/Map;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Map<Lorg/objectweb/asm/Label;Ljava/util/List<Ljava/lang/Object;>;>;

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 65
            new java.lang.Object
            dup
            invokespecial java.lang.Object.<init>:()V
            putstatic org.objectweb.asm.commons.AdviceAdapter.THIS:Ljava/lang/Object;
         1: .line 67
            new java.lang.Object
            dup
            invokespecial java.lang.Object.<init>:()V
            putstatic org.objectweb.asm.commons.AdviceAdapter.OTHER:Ljava/lang/Object;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  protected void <init>(int, org.objectweb.asm.MethodVisitor, int, java.lang.String, java.lang.String);
    descriptor: (ILorg/objectweb/asm/MethodVisitor;ILjava/lang/String;Ljava/lang/String;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=6, args_size=6
        start local 0 // org.objectweb.asm.commons.AdviceAdapter this
        start local 1 // int api
        start local 2 // org.objectweb.asm.MethodVisitor mv
        start local 3 // int access
        start local 4 // java.lang.String name
        start local 5 // java.lang.String desc
         0: .line 98
            aload 0 /* this */
            iload 1 /* api */
            aload 2 /* mv */
            iload 3 /* access */
            aload 4 /* name */
            aload 5 /* desc */
            invokespecial org.objectweb.asm.commons.GeneratorAdapter.<init>:(ILorg/objectweb/asm/MethodVisitor;ILjava/lang/String;Ljava/lang/String;)V
         1: .line 99
            aload 0 /* this */
            iload 3 /* access */
            putfield org.objectweb.asm.commons.AdviceAdapter.methodAccess:I
         2: .line 100
            aload 0 /* this */
            aload 5 /* desc */
            putfield org.objectweb.asm.commons.AdviceAdapter.methodDesc:Ljava/lang/String;
         3: .line 101
            aload 0 /* this */
            ldc "<init>"
            aload 4 /* name */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            putfield org.objectweb.asm.commons.AdviceAdapter.constructor:Z
         4: .line 102
            return
        end local 5 // java.lang.String desc
        end local 4 // java.lang.String name
        end local 3 // int access
        end local 2 // org.objectweb.asm.MethodVisitor mv
        end local 1 // int api
        end local 0 // org.objectweb.asm.commons.AdviceAdapter this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Lorg/objectweb/asm/commons/AdviceAdapter;
            0    5     1     api  I
            0    5     2      mv  Lorg/objectweb/asm/MethodVisitor;
            0    5     3  access  I
            0    5     4    name  Ljava/lang/String;
            0    5     5    desc  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      api     final
      mv      final
      access  final
      name    final
      desc    final

  public void visitCode();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.objectweb.asm.commons.AdviceAdapter this
         0: .line 106
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.mv:Lorg/objectweb/asm/MethodVisitor;
            invokevirtual org.objectweb.asm.MethodVisitor.visitCode:()V
         1: .line 107
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.constructor:Z
            ifeq 5
         2: .line 108
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
         3: .line 109
            aload 0 /* this */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield org.objectweb.asm.commons.AdviceAdapter.branches:Ljava/util/Map;
         4: .line 110
            goto 7
         5: .line 111
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield org.objectweb.asm.commons.AdviceAdapter.superInitialized:Z
         6: .line 112
            aload 0 /* this */
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.onMethodEnter:()V
         7: .line 114
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.objectweb.asm.commons.AdviceAdapter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lorg/objectweb/asm/commons/AdviceAdapter;

  public void visitLabel(org.objectweb.asm.Label);
    descriptor: (Lorg/objectweb/asm/Label;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.objectweb.asm.commons.AdviceAdapter this
        start local 1 // org.objectweb.asm.Label label
         0: .line 118
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.mv:Lorg/objectweb/asm/MethodVisitor;
            aload 1 /* label */
            invokevirtual org.objectweb.asm.MethodVisitor.visitLabel:(Lorg/objectweb/asm/Label;)V
         1: .line 119
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.constructor:Z
            ifeq 6
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.branches:Ljava/util/Map;
            ifnull 6
         2: .line 120
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.branches:Ljava/util/Map;
            aload 1 /* label */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.List
            astore 2 /* frame */
        start local 2 // java.util.List frame
         3: .line 121
            aload 2 /* frame */
            ifnull 6
         4: .line 122
            aload 0 /* this */
            aload 2 /* frame */
            putfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
         5: .line 123
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.branches:Ljava/util/Map;
            aload 1 /* label */
            invokeinterface java.util.Map.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 2 // java.util.List frame
         6: .line 126
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.objectweb.asm.Label label
        end local 0 // org.objectweb.asm.commons.AdviceAdapter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0   this  Lorg/objectweb/asm/commons/AdviceAdapter;
            0    7     1  label  Lorg/objectweb/asm/Label;
            3    6     2  frame  Ljava/util/List<Ljava/lang/Object;>;
    MethodParameters:
       Name  Flags
      label  final

  public void visitInsn(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.objectweb.asm.commons.AdviceAdapter this
        start local 1 // int opcode
         0: .line 130
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.constructor:Z
            ifeq 55
         1: .line 132
            iload 1 /* opcode */
            tableswitch { // 0 - 195
                    0: 11
                    1: 12
                    2: 12
                    3: 12
                    4: 12
                    5: 12
                    6: 12
                    7: 12
                    8: 12
                    9: 14
                   10: 14
                   11: 12
                   12: 12
                   13: 12
                   14: 14
                   15: 14
                   16: 54
                   17: 54
                   18: 54
                   19: 54
                   20: 54
                   21: 54
                   22: 54
                   23: 54
                   24: 54
                   25: 54
                   26: 54
                   27: 54
                   28: 54
                   29: 54
                   30: 54
                   31: 54
                   32: 54
                   33: 54
                   34: 54
                   35: 54
                   36: 54
                   37: 54
                   38: 54
                   39: 54
                   40: 54
                   41: 54
                   42: 54
                   43: 54
                   44: 54
                   45: 54
                   46: 17
                   47: 11
                   48: 17
                   49: 11
                   50: 17
                   51: 17
                   52: 17
                   53: 17
                   54: 54
                   55: 54
                   56: 54
                   57: 54
                   58: 54
                   59: 54
                   60: 54
                   61: 54
                   62: 54
                   63: 54
                   64: 54
                   65: 54
                   66: 54
                   67: 54
                   68: 54
                   69: 54
                   70: 54
                   71: 54
                   72: 54
                   73: 54
                   74: 54
                   75: 54
                   76: 54
                   77: 54
                   78: 54
                   79: 22
                   80: 26
                   81: 22
                   82: 26
                   83: 22
                   84: 22
                   85: 22
                   86: 22
                   87: 17
                   88: 19
                   89: 31
                   90: 33
                   91: 36
                   92: 39
                   93: 43
                   94: 47
                   95: 51
                   96: 17
                   97: 19
                   98: 17
                   99: 19
                  100: 17
                  101: 19
                  102: 17
                  103: 19
                  104: 17
                  105: 19
                  106: 17
                  107: 19
                  108: 17
                  109: 19
                  110: 17
                  111: 19
                  112: 17
                  113: 19
                  114: 17
                  115: 19
                  116: 11
                  117: 11
                  118: 11
                  119: 11
                  120: 17
                  121: 17
                  122: 17
                  123: 17
                  124: 17
                  125: 17
                  126: 17
                  127: 19
                  128: 17
                  129: 19
                  130: 17
                  131: 19
                  132: 54
                  133: 12
                  134: 11
                  135: 12
                  136: 17
                  137: 17
                  138: 11
                  139: 11
                  140: 12
                  141: 12
                  142: 17
                  143: 11
                  144: 17
                  145: 11
                  146: 11
                  147: 11
                  148: 22
                  149: 17
                  150: 17
                  151: 22
                  152: 22
                  153: 54
                  154: 54
                  155: 54
                  156: 54
                  157: 54
                  158: 54
                  159: 54
                  160: 54
                  161: 54
                  162: 54
                  163: 54
                  164: 54
                  165: 54
                  166: 54
                  167: 54
                  168: 54
                  169: 54
                  170: 54
                  171: 54
                  172: 4
                  173: 7
                  174: 4
                  175: 7
                  176: 4
                  177: 2
                  178: 54
                  179: 54
                  180: 54
                  181: 54
                  182: 54
                  183: 54
                  184: 54
                  185: 54
                  186: 54
                  187: 54
                  188: 54
                  189: 54
                  190: 11
                  191: 4
                  192: 54
                  193: 54
                  194: 17
                  195: 17
              default: 54
          }
         2: .line 134
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* opcode */
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.onMethodExit:(I)V
         3: .line 135
            goto 57
         4: .line 140
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
            pop
         5: .line 141
            aload 0 /* this */
            iload 1 /* opcode */
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.onMethodExit:(I)V
         6: .line 142
            goto 57
         7: .line 145
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
            pop
         8: .line 146
            aload 0 /* this */
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
            pop
         9: .line 147
            aload 0 /* this */
            iload 1 /* opcode */
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.onMethodExit:(I)V
        10: .line 148
            goto 57
        11: .line 164
      StackMap locals:
      StackMap stack:
            goto 57
        12: .line 180
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic org.objectweb.asm.commons.AdviceAdapter.OTHER:Ljava/lang/Object;
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.pushValue:(Ljava/lang/Object;)V
        13: .line 181
            goto 57
        14: .line 186
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic org.objectweb.asm.commons.AdviceAdapter.OTHER:Ljava/lang/Object;
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.pushValue:(Ljava/lang/Object;)V
        15: .line 187
            aload 0 /* this */
            getstatic org.objectweb.asm.commons.AdviceAdapter.OTHER:Ljava/lang/Object;
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.pushValue:(Ljava/lang/Object;)V
        16: .line 188
            goto 57
        17: .line 223
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
            pop
        18: .line 224
            goto 57
        19: .line 239
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
            pop
        20: .line 240
            aload 0 /* this */
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
            pop
        21: .line 241
            goto 57
        22: .line 251
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
            pop
        23: .line 252
            aload 0 /* this */
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
            pop
        24: .line 253
            aload 0 /* this */
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
            pop
        25: .line 254
            goto 57
        26: .line 257
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
            pop
        27: .line 258
            aload 0 /* this */
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
            pop
        28: .line 259
            aload 0 /* this */
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
            pop
        29: .line 260
            aload 0 /* this */
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
            pop
        30: .line 261
            goto 57
        31: .line 263
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.peekValue:()Ljava/lang/Object;
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.pushValue:(Ljava/lang/Object;)V
        32: .line 264
            goto 57
        33: .line 266
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            istore 2 /* s */
        start local 2 // int s
        34: .line 267
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
            iload 2 /* s */
            iconst_2
            isub
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
            iload 2 /* s */
            iconst_1
            isub
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
        35: .line 268
            goto 57
        end local 2 // int s
        36: .line 270
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            istore 2 /* s */
        start local 2 // int s
        37: .line 271
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
            iload 2 /* s */
            iconst_3
            isub
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
            iload 2 /* s */
            iconst_1
            isub
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
        38: .line 272
            goto 57
        end local 2 // int s
        39: .line 274
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            istore 2 /* s */
        start local 2 // int s
        40: .line 275
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
            iload 2 /* s */
            iconst_2
            isub
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
            iload 2 /* s */
            iconst_1
            isub
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
        41: .line 276
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
            iload 2 /* s */
            iconst_2
            isub
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
            iload 2 /* s */
            iconst_1
            isub
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
        42: .line 277
            goto 57
        end local 2 // int s
        43: .line 279
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            istore 2 /* s */
        start local 2 // int s
        44: .line 280
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
            iload 2 /* s */
            iconst_3
            isub
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
            iload 2 /* s */
            iconst_1
            isub
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
        45: .line 281
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
            iload 2 /* s */
            iconst_3
            isub
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
            iload 2 /* s */
            iconst_1
            isub
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
        46: .line 282
            goto 57
        end local 2 // int s
        47: .line 284
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            istore 2 /* s */
        start local 2 // int s
        48: .line 285
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
            iload 2 /* s */
            iconst_4
            isub
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
            iload 2 /* s */
            iconst_1
            isub
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
        49: .line 286
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
            iload 2 /* s */
            iconst_4
            isub
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
            iload 2 /* s */
            iconst_1
            isub
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
        50: .line 287
            goto 57
        end local 2 // int s
        51: .line 289
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            istore 2 /* s */
        start local 2 // int s
        52: .line 290
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
            iload 2 /* s */
            iconst_2
            isub
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
            iload 2 /* s */
            iconst_1
            isub
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
        53: .line 291
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
            iload 2 /* s */
            invokeinterface java.util.List.remove:(I)Ljava/lang/Object;
            pop
        end local 2 // int s
        54: .line 294
      StackMap locals:
      StackMap stack:
            goto 57
        55: .line 295
      StackMap locals:
      StackMap stack:
            iload 1 /* opcode */
            lookupswitch { // 7
                  172: 56
                  173: 56
                  174: 56
                  175: 56
                  176: 56
                  177: 56
                  191: 56
              default: 57
          }
        56: .line 303
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* opcode */
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.onMethodExit:(I)V
        57: .line 307
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.mv:Lorg/objectweb/asm/MethodVisitor;
            iload 1 /* opcode */
            invokevirtual org.objectweb.asm.MethodVisitor.visitInsn:(I)V
        58: .line 308
            return
        end local 1 // int opcode
        end local 0 // org.objectweb.asm.commons.AdviceAdapter this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   59     0    this  Lorg/objectweb/asm/commons/AdviceAdapter;
            0   59     1  opcode  I
           34   36     2       s  I
           37   39     2       s  I
           40   43     2       s  I
           44   47     2       s  I
           48   51     2       s  I
           52   54     2       s  I
    MethodParameters:
        Name  Flags
      opcode  final

  public void visitVarInsn(int, int);
    descriptor: (II)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.objectweb.asm.commons.AdviceAdapter this
        start local 1 // int opcode
        start local 2 // int var
         0: .line 312
            aload 0 /* this */
            iload 1 /* opcode */
            iload 2 /* var */
            invokespecial org.objectweb.asm.commons.GeneratorAdapter.visitVarInsn:(II)V
         1: .line 313
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.constructor:Z
            ifeq 16
         2: .line 314
            iload 1 /* opcode */
            lookupswitch { // 10
                   21: 3
                   22: 5
                   23: 3
                   24: 5
                   25: 8
                   54: 12
                   55: 14
                   56: 12
                   57: 14
                   58: 12
              default: 16
          }
         3: .line 317
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic org.objectweb.asm.commons.AdviceAdapter.OTHER:Ljava/lang/Object;
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.pushValue:(Ljava/lang/Object;)V
         4: .line 318
            goto 16
         5: .line 321
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic org.objectweb.asm.commons.AdviceAdapter.OTHER:Ljava/lang/Object;
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.pushValue:(Ljava/lang/Object;)V
         6: .line 322
            aload 0 /* this */
            getstatic org.objectweb.asm.commons.AdviceAdapter.OTHER:Ljava/lang/Object;
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.pushValue:(Ljava/lang/Object;)V
         7: .line 323
            goto 16
         8: .line 325
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* var */
            ifne 9
            getstatic org.objectweb.asm.commons.AdviceAdapter.THIS:Ljava/lang/Object;
            goto 10
      StackMap locals:
      StackMap stack: org.objectweb.asm.commons.AdviceAdapter
         9: getstatic org.objectweb.asm.commons.AdviceAdapter.OTHER:Ljava/lang/Object;
      StackMap locals: org.objectweb.asm.commons.AdviceAdapter int int
      StackMap stack: org.objectweb.asm.commons.AdviceAdapter java.lang.Object
        10: invokevirtual org.objectweb.asm.commons.AdviceAdapter.pushValue:(Ljava/lang/Object;)V
        11: .line 326
            goto 16
        12: .line 330
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
            pop
        13: .line 331
            goto 16
        14: .line 334
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
            pop
        15: .line 335
            aload 0 /* this */
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
            pop
        16: .line 339
      StackMap locals:
      StackMap stack:
            return
        end local 2 // int var
        end local 1 // int opcode
        end local 0 // org.objectweb.asm.commons.AdviceAdapter this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   17     0    this  Lorg/objectweb/asm/commons/AdviceAdapter;
            0   17     1  opcode  I
            0   17     2     var  I
    MethodParameters:
        Name  Flags
      opcode  final
      var     final

  public void visitFieldInsn(int, java.lang.String, java.lang.String, java.lang.String);
    descriptor: (ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=7, args_size=5
        start local 0 // org.objectweb.asm.commons.AdviceAdapter this
        start local 1 // int opcode
        start local 2 // java.lang.String owner
        start local 3 // java.lang.String name
        start local 4 // java.lang.String desc
         0: .line 344
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.mv:Lorg/objectweb/asm/MethodVisitor;
            iload 1 /* opcode */
            aload 2 /* owner */
            aload 3 /* name */
            aload 4 /* desc */
            invokevirtual org.objectweb.asm.MethodVisitor.visitFieldInsn:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
         1: .line 345
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.constructor:Z
            ifeq 22
         2: .line 346
            aload 4 /* desc */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            istore 5 /* c */
        start local 5 // char c
         3: .line 347
            iload 5 /* c */
            bipush 74
            if_icmpeq 4
            iload 5 /* c */
            bipush 68
            if_icmpeq 4
            iconst_0
            goto 5
      StackMap locals: int
      StackMap stack:
         4: iconst_1
      StackMap locals:
      StackMap stack: int
         5: istore 6 /* longOrDouble */
        start local 6 // boolean longOrDouble
         6: .line 348
            iload 1 /* opcode */
            tableswitch { // 178 - 181
                  178: 7
                  179: 11
                  180: 20
                  181: 15
              default: 20
          }
         7: .line 350
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getstatic org.objectweb.asm.commons.AdviceAdapter.OTHER:Ljava/lang/Object;
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.pushValue:(Ljava/lang/Object;)V
         8: .line 351
            iload 6 /* longOrDouble */
            ifeq 22
         9: .line 352
            aload 0 /* this */
            getstatic org.objectweb.asm.commons.AdviceAdapter.OTHER:Ljava/lang/Object;
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.pushValue:(Ljava/lang/Object;)V
        10: .line 354
            goto 22
        11: .line 356
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
            pop
        12: .line 357
            iload 6 /* longOrDouble */
            ifeq 22
        13: .line 358
            aload 0 /* this */
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
            pop
        14: .line 360
            goto 22
        15: .line 362
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
            pop
        16: .line 363
            iload 6 /* longOrDouble */
            ifeq 22
        17: .line 364
            aload 0 /* this */
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
            pop
        18: .line 365
            aload 0 /* this */
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
            pop
        19: .line 367
            goto 22
        20: .line 370
      StackMap locals:
      StackMap stack:
            iload 6 /* longOrDouble */
            ifeq 22
        21: .line 371
            aload 0 /* this */
            getstatic org.objectweb.asm.commons.AdviceAdapter.OTHER:Ljava/lang/Object;
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.pushValue:(Ljava/lang/Object;)V
        end local 6 // boolean longOrDouble
        end local 5 // char c
        22: .line 375
      StackMap locals:
      StackMap stack:
            return
        end local 4 // java.lang.String desc
        end local 3 // java.lang.String name
        end local 2 // java.lang.String owner
        end local 1 // int opcode
        end local 0 // org.objectweb.asm.commons.AdviceAdapter this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   23     0          this  Lorg/objectweb/asm/commons/AdviceAdapter;
            0   23     1        opcode  I
            0   23     2         owner  Ljava/lang/String;
            0   23     3          name  Ljava/lang/String;
            0   23     4          desc  Ljava/lang/String;
            3   22     5             c  C
            6   22     6  longOrDouble  Z
    MethodParameters:
        Name  Flags
      opcode  final
      owner   final
      name    final
      desc    final

  public void visitIntInsn(int, int);
    descriptor: (II)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.objectweb.asm.commons.AdviceAdapter this
        start local 1 // int opcode
        start local 2 // int operand
         0: .line 379
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.mv:Lorg/objectweb/asm/MethodVisitor;
            iload 1 /* opcode */
            iload 2 /* operand */
            invokevirtual org.objectweb.asm.MethodVisitor.visitIntInsn:(II)V
         1: .line 380
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.constructor:Z
            ifeq 3
            iload 1 /* opcode */
            sipush 188
            if_icmpeq 3
         2: .line 381
            aload 0 /* this */
            getstatic org.objectweb.asm.commons.AdviceAdapter.OTHER:Ljava/lang/Object;
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.pushValue:(Ljava/lang/Object;)V
         3: .line 383
      StackMap locals:
      StackMap stack:
            return
        end local 2 // int operand
        end local 1 // int opcode
        end local 0 // org.objectweb.asm.commons.AdviceAdapter this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/objectweb/asm/commons/AdviceAdapter;
            0    4     1   opcode  I
            0    4     2  operand  I
    MethodParameters:
         Name  Flags
      opcode   final
      operand  final

  public void visitLdcInsn(java.lang.Object);
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.objectweb.asm.commons.AdviceAdapter this
        start local 1 // java.lang.Object cst
         0: .line 387
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.mv:Lorg/objectweb/asm/MethodVisitor;
            aload 1 /* cst */
            invokevirtual org.objectweb.asm.MethodVisitor.visitLdcInsn:(Ljava/lang/Object;)V
         1: .line 388
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.constructor:Z
            ifeq 5
         2: .line 389
            aload 0 /* this */
            getstatic org.objectweb.asm.commons.AdviceAdapter.OTHER:Ljava/lang/Object;
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.pushValue:(Ljava/lang/Object;)V
         3: .line 390
            aload 1 /* cst */
            instanceof java.lang.Double
            ifne 4
            aload 1 /* cst */
            instanceof java.lang.Long
            ifeq 5
         4: .line 391
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic org.objectweb.asm.commons.AdviceAdapter.OTHER:Ljava/lang/Object;
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.pushValue:(Ljava/lang/Object;)V
         5: .line 394
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.Object cst
        end local 0 // org.objectweb.asm.commons.AdviceAdapter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lorg/objectweb/asm/commons/AdviceAdapter;
            0    6     1   cst  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      cst   final

  public void visitMultiANewArrayInsn(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.objectweb.asm.commons.AdviceAdapter this
        start local 1 // java.lang.String desc
        start local 2 // int dims
         0: .line 398
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.mv:Lorg/objectweb/asm/MethodVisitor;
            aload 1 /* desc */
            iload 2 /* dims */
            invokevirtual org.objectweb.asm.MethodVisitor.visitMultiANewArrayInsn:(Ljava/lang/String;I)V
         1: .line 399
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.constructor:Z
            ifeq 8
         2: .line 400
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         3: goto 6
         4: .line 401
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
            pop
         5: .line 400
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 3 /* i */
            iload 2 /* dims */
            if_icmplt 4
        end local 3 // int i
         7: .line 403
            aload 0 /* this */
            getstatic org.objectweb.asm.commons.AdviceAdapter.OTHER:Ljava/lang/Object;
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.pushValue:(Ljava/lang/Object;)V
         8: .line 405
      StackMap locals:
      StackMap stack:
            return
        end local 2 // int dims
        end local 1 // java.lang.String desc
        end local 0 // org.objectweb.asm.commons.AdviceAdapter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lorg/objectweb/asm/commons/AdviceAdapter;
            0    9     1  desc  Ljava/lang/String;
            0    9     2  dims  I
            3    7     3     i  I
    MethodParameters:
      Name  Flags
      desc  final
      dims  final

  public void visitTypeInsn(int, java.lang.String);
    descriptor: (ILjava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.objectweb.asm.commons.AdviceAdapter this
        start local 1 // int opcode
        start local 2 // java.lang.String type
         0: .line 409
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.mv:Lorg/objectweb/asm/MethodVisitor;
            iload 1 /* opcode */
            aload 2 /* type */
            invokevirtual org.objectweb.asm.MethodVisitor.visitTypeInsn:(ILjava/lang/String;)V
         1: .line 411
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.constructor:Z
            ifeq 3
            iload 1 /* opcode */
            sipush 187
            if_icmpne 3
         2: .line 412
            aload 0 /* this */
            getstatic org.objectweb.asm.commons.AdviceAdapter.OTHER:Ljava/lang/Object;
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.pushValue:(Ljava/lang/Object;)V
         3: .line 414
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.lang.String type
        end local 1 // int opcode
        end local 0 // org.objectweb.asm.commons.AdviceAdapter this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Lorg/objectweb/asm/commons/AdviceAdapter;
            0    4     1  opcode  I
            0    4     2    type  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      opcode  final
      type    final

  public void visitMethodInsn(int, java.lang.String, java.lang.String, java.lang.String);
    descriptor: (ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=7, args_size=5
        start local 0 // org.objectweb.asm.commons.AdviceAdapter this
        start local 1 // int opcode
        start local 2 // java.lang.String owner
        start local 3 // java.lang.String name
        start local 4 // java.lang.String desc
         0: .line 419
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.mv:Lorg/objectweb/asm/MethodVisitor;
            iload 1 /* opcode */
            aload 2 /* owner */
            aload 3 /* name */
            aload 4 /* desc */
            invokevirtual org.objectweb.asm.MethodVisitor.visitMethodInsn:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
         1: .line 420
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.constructor:Z
            ifeq 23
         2: .line 421
            aload 4 /* desc */
            invokestatic org.objectweb.asm.Type.getArgumentTypes:(Ljava/lang/String;)[Lorg/objectweb/asm/Type;
            astore 5 /* types */
        start local 5 // org.objectweb.asm.Type[] types
         3: .line 422
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         4: goto 9
         5: .line 423
      StackMap locals: org.objectweb.asm.Type[] int
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
            pop
         6: .line 424
            aload 5 /* types */
            iload 6 /* i */
            aaload
            invokevirtual org.objectweb.asm.Type.getSize:()I
            iconst_2
            if_icmpne 8
         7: .line 425
            aload 0 /* this */
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
            pop
         8: .line 422
      StackMap locals:
      StackMap stack:
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 6 /* i */
            aload 5 /* types */
            arraylength
            if_icmplt 5
        end local 6 // int i
        10: .line 428
            iload 1 /* opcode */
            tableswitch { // 182 - 185
                  182: 11
                  183: 13
                  184: 18
                  185: 11
              default: 18
          }
        11: .line 433
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
            pop
        12: .line 434
            goto 18
        13: .line 436
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
            astore 6 /* type */
        start local 6 // java.lang.Object type
        14: .line 437
            aload 6 /* type */
            getstatic org.objectweb.asm.commons.AdviceAdapter.THIS:Ljava/lang/Object;
            if_acmpne 18
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.superInitialized:Z
            ifne 18
        15: .line 438
            aload 0 /* this */
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.onMethodEnter:()V
        16: .line 439
            aload 0 /* this */
            iconst_1
            putfield org.objectweb.asm.commons.AdviceAdapter.superInitialized:Z
        17: .line 442
            aload 0 /* this */
            iconst_0
            putfield org.objectweb.asm.commons.AdviceAdapter.constructor:Z
        end local 6 // java.lang.Object type
        18: .line 447
      StackMap locals:
      StackMap stack:
            aload 4 /* desc */
            invokestatic org.objectweb.asm.Type.getReturnType:(Ljava/lang/String;)Lorg/objectweb/asm/Type;
            astore 6 /* returnType */
        start local 6 // org.objectweb.asm.Type returnType
        19: .line 448
            aload 6 /* returnType */
            getstatic org.objectweb.asm.Type.VOID_TYPE:Lorg/objectweb/asm/Type;
            if_acmpeq 23
        20: .line 449
            aload 0 /* this */
            getstatic org.objectweb.asm.commons.AdviceAdapter.OTHER:Ljava/lang/Object;
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.pushValue:(Ljava/lang/Object;)V
        21: .line 450
            aload 6 /* returnType */
            invokevirtual org.objectweb.asm.Type.getSize:()I
            iconst_2
            if_icmpne 23
        22: .line 451
            aload 0 /* this */
            getstatic org.objectweb.asm.commons.AdviceAdapter.OTHER:Ljava/lang/Object;
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.pushValue:(Ljava/lang/Object;)V
        end local 6 // org.objectweb.asm.Type returnType
        end local 5 // org.objectweb.asm.Type[] types
        23: .line 455
      StackMap locals:
      StackMap stack:
            return
        end local 4 // java.lang.String desc
        end local 3 // java.lang.String name
        end local 2 // java.lang.String owner
        end local 1 // int opcode
        end local 0 // org.objectweb.asm.commons.AdviceAdapter this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   24     0        this  Lorg/objectweb/asm/commons/AdviceAdapter;
            0   24     1      opcode  I
            0   24     2       owner  Ljava/lang/String;
            0   24     3        name  Ljava/lang/String;
            0   24     4        desc  Ljava/lang/String;
            3   23     5       types  [Lorg/objectweb/asm/Type;
            4   10     6           i  I
           14   18     6        type  Ljava/lang/Object;
           19   23     6  returnType  Lorg/objectweb/asm/Type;
    MethodParameters:
        Name  Flags
      opcode  final
      owner   final
      name    final
      desc    final

  public void visitInvokeDynamicInsn(java.lang.String, java.lang.String, org.objectweb.asm.Handle, java.lang.Object[]);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Lorg/objectweb/asm/Handle;[Ljava/lang/Object;)V
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=5, locals=7, args_size=5
        start local 0 // org.objectweb.asm.commons.AdviceAdapter this
        start local 1 // java.lang.String name
        start local 2 // java.lang.String desc
        start local 3 // org.objectweb.asm.Handle bsm
        start local 4 // java.lang.Object[] bsmArgs
         0: .line 460
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.mv:Lorg/objectweb/asm/MethodVisitor;
            aload 1 /* name */
            aload 2 /* desc */
            aload 3 /* bsm */
            aload 4 /* bsmArgs */
            invokevirtual org.objectweb.asm.MethodVisitor.visitInvokeDynamicInsn:(Ljava/lang/String;Ljava/lang/String;Lorg/objectweb/asm/Handle;[Ljava/lang/Object;)V
         1: .line 461
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.constructor:Z
            ifeq 15
         2: .line 462
            aload 2 /* desc */
            invokestatic org.objectweb.asm.Type.getArgumentTypes:(Ljava/lang/String;)[Lorg/objectweb/asm/Type;
            astore 5 /* types */
        start local 5 // org.objectweb.asm.Type[] types
         3: .line 463
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         4: goto 9
         5: .line 464
      StackMap locals: org.objectweb.asm.Type[] int
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
            pop
         6: .line 465
            aload 5 /* types */
            iload 6 /* i */
            aaload
            invokevirtual org.objectweb.asm.Type.getSize:()I
            iconst_2
            if_icmpne 8
         7: .line 466
            aload 0 /* this */
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
            pop
         8: .line 463
      StackMap locals:
      StackMap stack:
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 6 /* i */
            aload 5 /* types */
            arraylength
            if_icmplt 5
        end local 6 // int i
        10: .line 470
            aload 2 /* desc */
            invokestatic org.objectweb.asm.Type.getReturnType:(Ljava/lang/String;)Lorg/objectweb/asm/Type;
            astore 6 /* returnType */
        start local 6 // org.objectweb.asm.Type returnType
        11: .line 471
            aload 6 /* returnType */
            getstatic org.objectweb.asm.Type.VOID_TYPE:Lorg/objectweb/asm/Type;
            if_acmpeq 15
        12: .line 472
            aload 0 /* this */
            getstatic org.objectweb.asm.commons.AdviceAdapter.OTHER:Ljava/lang/Object;
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.pushValue:(Ljava/lang/Object;)V
        13: .line 473
            aload 6 /* returnType */
            invokevirtual org.objectweb.asm.Type.getSize:()I
            iconst_2
            if_icmpne 15
        14: .line 474
            aload 0 /* this */
            getstatic org.objectweb.asm.commons.AdviceAdapter.OTHER:Ljava/lang/Object;
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.pushValue:(Ljava/lang/Object;)V
        end local 6 // org.objectweb.asm.Type returnType
        end local 5 // org.objectweb.asm.Type[] types
        15: .line 478
      StackMap locals:
      StackMap stack:
            return
        end local 4 // java.lang.Object[] bsmArgs
        end local 3 // org.objectweb.asm.Handle bsm
        end local 2 // java.lang.String desc
        end local 1 // java.lang.String name
        end local 0 // org.objectweb.asm.commons.AdviceAdapter this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   16     0        this  Lorg/objectweb/asm/commons/AdviceAdapter;
            0   16     1        name  Ljava/lang/String;
            0   16     2        desc  Ljava/lang/String;
            0   16     3         bsm  Lorg/objectweb/asm/Handle;
            0   16     4     bsmArgs  [Ljava/lang/Object;
            3   15     5       types  [Lorg/objectweb/asm/Type;
            4   10     6           i  I
           11   15     6  returnType  Lorg/objectweb/asm/Type;
    MethodParameters:
         Name  Flags
      name     
      desc     
      bsm      
      bsmArgs  

  public void visitJumpInsn(int, org.objectweb.asm.Label);
    descriptor: (ILorg/objectweb/asm/Label;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.objectweb.asm.commons.AdviceAdapter this
        start local 1 // int opcode
        start local 2 // org.objectweb.asm.Label label
         0: .line 482
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.mv:Lorg/objectweb/asm/MethodVisitor;
            iload 1 /* opcode */
            aload 2 /* label */
            invokevirtual org.objectweb.asm.MethodVisitor.visitJumpInsn:(ILorg/objectweb/asm/Label;)V
         1: .line 483
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.constructor:Z
            ifeq 10
         2: .line 484
            iload 1 /* opcode */
            lookupswitch { // 17
                  153: 3
                  154: 3
                  155: 3
                  156: 3
                  157: 3
                  158: 3
                  159: 5
                  160: 5
                  161: 5
                  162: 5
                  163: 5
                  164: 5
                  165: 5
                  166: 5
                  168: 8
                  198: 3
                  199: 3
              default: 9
          }
         3: .line 493
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
            pop
         4: .line 494
            goto 9
         5: .line 503
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
            pop
         6: .line 504
            aload 0 /* this */
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
            pop
         7: .line 505
            goto 9
         8: .line 507
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic org.objectweb.asm.commons.AdviceAdapter.OTHER:Ljava/lang/Object;
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.pushValue:(Ljava/lang/Object;)V
         9: .line 510
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* label */
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.addBranch:(Lorg/objectweb/asm/Label;)V
        10: .line 512
      StackMap locals:
      StackMap stack:
            return
        end local 2 // org.objectweb.asm.Label label
        end local 1 // int opcode
        end local 0 // org.objectweb.asm.commons.AdviceAdapter this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   11     0    this  Lorg/objectweb/asm/commons/AdviceAdapter;
            0   11     1  opcode  I
            0   11     2   label  Lorg/objectweb/asm/Label;
    MethodParameters:
        Name  Flags
      opcode  final
      label   final

  public void visitLookupSwitchInsn(org.objectweb.asm.Label, int[], org.objectweb.asm.Label[]);
    descriptor: (Lorg/objectweb/asm/Label;[I[Lorg/objectweb/asm/Label;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.objectweb.asm.commons.AdviceAdapter this
        start local 1 // org.objectweb.asm.Label dflt
        start local 2 // int[] keys
        start local 3 // org.objectweb.asm.Label[] labels
         0: .line 517
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.mv:Lorg/objectweb/asm/MethodVisitor;
            aload 1 /* dflt */
            aload 2 /* keys */
            aload 3 /* labels */
            invokevirtual org.objectweb.asm.MethodVisitor.visitLookupSwitchInsn:(Lorg/objectweb/asm/Label;[I[Lorg/objectweb/asm/Label;)V
         1: .line 518
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.constructor:Z
            ifeq 4
         2: .line 519
            aload 0 /* this */
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
            pop
         3: .line 520
            aload 0 /* this */
            aload 1 /* dflt */
            aload 3 /* labels */
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.addBranches:(Lorg/objectweb/asm/Label;[Lorg/objectweb/asm/Label;)V
         4: .line 522
      StackMap locals:
      StackMap stack:
            return
        end local 3 // org.objectweb.asm.Label[] labels
        end local 2 // int[] keys
        end local 1 // org.objectweb.asm.Label dflt
        end local 0 // org.objectweb.asm.commons.AdviceAdapter this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Lorg/objectweb/asm/commons/AdviceAdapter;
            0    5     1    dflt  Lorg/objectweb/asm/Label;
            0    5     2    keys  [I
            0    5     3  labels  [Lorg/objectweb/asm/Label;
    MethodParameters:
        Name  Flags
      dflt    final
      keys    final
      labels  final

  public void visitTableSwitchInsn(int, int, org.objectweb.asm.Label, org.objectweb.asm.Label[]);
    descriptor: (IILorg/objectweb/asm/Label;[Lorg/objectweb/asm/Label;)V
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // org.objectweb.asm.commons.AdviceAdapter this
        start local 1 // int min
        start local 2 // int max
        start local 3 // org.objectweb.asm.Label dflt
        start local 4 // org.objectweb.asm.Label[] labels
         0: .line 527
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.mv:Lorg/objectweb/asm/MethodVisitor;
            iload 1 /* min */
            iload 2 /* max */
            aload 3 /* dflt */
            aload 4 /* labels */
            invokevirtual org.objectweb.asm.MethodVisitor.visitTableSwitchInsn:(IILorg/objectweb/asm/Label;[Lorg/objectweb/asm/Label;)V
         1: .line 528
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.constructor:Z
            ifeq 4
         2: .line 529
            aload 0 /* this */
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
            pop
         3: .line 530
            aload 0 /* this */
            aload 3 /* dflt */
            aload 4 /* labels */
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.addBranches:(Lorg/objectweb/asm/Label;[Lorg/objectweb/asm/Label;)V
         4: .line 532
      StackMap locals:
      StackMap stack:
            return
        end local 4 // org.objectweb.asm.Label[] labels
        end local 3 // org.objectweb.asm.Label dflt
        end local 2 // int max
        end local 1 // int min
        end local 0 // org.objectweb.asm.commons.AdviceAdapter this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Lorg/objectweb/asm/commons/AdviceAdapter;
            0    5     1     min  I
            0    5     2     max  I
            0    5     3    dflt  Lorg/objectweb/asm/Label;
            0    5     4  labels  [Lorg/objectweb/asm/Label;
    MethodParameters:
        Name  Flags
      min     final
      max     final
      dflt    final
      labels  final

  public void visitTryCatchBlock(org.objectweb.asm.Label, org.objectweb.asm.Label, org.objectweb.asm.Label, java.lang.String);
    descriptor: (Lorg/objectweb/asm/Label;Lorg/objectweb/asm/Label;Lorg/objectweb/asm/Label;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=5
        start local 0 // org.objectweb.asm.commons.AdviceAdapter this
        start local 1 // org.objectweb.asm.Label start
        start local 2 // org.objectweb.asm.Label end
        start local 3 // org.objectweb.asm.Label handler
        start local 4 // java.lang.String type
         0: .line 537
            aload 0 /* this */
            aload 1 /* start */
            aload 2 /* end */
            aload 3 /* handler */
            aload 4 /* type */
            invokespecial org.objectweb.asm.commons.GeneratorAdapter.visitTryCatchBlock:(Lorg/objectweb/asm/Label;Lorg/objectweb/asm/Label;Lorg/objectweb/asm/Label;Ljava/lang/String;)V
         1: .line 538
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.constructor:Z
            ifeq 5
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.branches:Ljava/util/Map;
            aload 3 /* handler */
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ifne 5
         2: .line 539
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 5 /* stackFrame */
        start local 5 // java.util.List stackFrame
         3: .line 540
            aload 5 /* stackFrame */
            getstatic org.objectweb.asm.commons.AdviceAdapter.OTHER:Ljava/lang/Object;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         4: .line 541
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.branches:Ljava/util/Map;
            aload 3 /* handler */
            aload 5 /* stackFrame */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 5 // java.util.List stackFrame
         5: .line 543
      StackMap locals:
      StackMap stack:
            return
        end local 4 // java.lang.String type
        end local 3 // org.objectweb.asm.Label handler
        end local 2 // org.objectweb.asm.Label end
        end local 1 // org.objectweb.asm.Label start
        end local 0 // org.objectweb.asm.commons.AdviceAdapter this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    6     0        this  Lorg/objectweb/asm/commons/AdviceAdapter;
            0    6     1       start  Lorg/objectweb/asm/Label;
            0    6     2         end  Lorg/objectweb/asm/Label;
            0    6     3     handler  Lorg/objectweb/asm/Label;
            0    6     4        type  Ljava/lang/String;
            3    5     5  stackFrame  Ljava/util/List<Ljava/lang/Object;>;
    MethodParameters:
         Name  Flags
      start    
      end      
      handler  
      type     

  private void addBranches(org.objectweb.asm.Label, org.objectweb.asm.Label[]);
    descriptor: (Lorg/objectweb/asm/Label;[Lorg/objectweb/asm/Label;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.objectweb.asm.commons.AdviceAdapter this
        start local 1 // org.objectweb.asm.Label dflt
        start local 2 // org.objectweb.asm.Label[] labels
         0: .line 546
            aload 0 /* this */
            aload 1 /* dflt */
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.addBranch:(Lorg/objectweb/asm/Label;)V
         1: .line 547
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         2: goto 5
         3: .line 548
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 2 /* labels */
            iload 3 /* i */
            aaload
            invokevirtual org.objectweb.asm.commons.AdviceAdapter.addBranch:(Lorg/objectweb/asm/Label;)V
         4: .line 547
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 3 /* i */
            aload 2 /* labels */
            arraylength
            if_icmplt 3
        end local 3 // int i
         6: .line 550
            return
        end local 2 // org.objectweb.asm.Label[] labels
        end local 1 // org.objectweb.asm.Label dflt
        end local 0 // org.objectweb.asm.commons.AdviceAdapter this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    this  Lorg/objectweb/asm/commons/AdviceAdapter;
            0    7     1    dflt  Lorg/objectweb/asm/Label;
            0    7     2  labels  [Lorg/objectweb/asm/Label;
            2    6     3       i  I
    MethodParameters:
        Name  Flags
      dflt    final
      labels  final

  private void addBranch(org.objectweb.asm.Label);
    descriptor: (Lorg/objectweb/asm/Label;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.objectweb.asm.commons.AdviceAdapter this
        start local 1 // org.objectweb.asm.Label label
         0: .line 553
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.branches:Ljava/util/Map;
            aload 1 /* label */
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ifeq 2
         1: .line 554
            return
         2: .line 556
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.branches:Ljava/util/Map;
            aload 1 /* label */
            new java.util.ArrayList
            dup
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
            invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         3: .line 557
            return
        end local 1 // org.objectweb.asm.Label label
        end local 0 // org.objectweb.asm.commons.AdviceAdapter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lorg/objectweb/asm/commons/AdviceAdapter;
            0    4     1  label  Lorg/objectweb/asm/Label;
    MethodParameters:
       Name  Flags
      label  final

  private java.lang.Object popValue();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.objectweb.asm.commons.AdviceAdapter this
         0: .line 560
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            iconst_1
            isub
            invokeinterface java.util.List.remove:(I)Ljava/lang/Object;
            areturn
        end local 0 // org.objectweb.asm.commons.AdviceAdapter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/objectweb/asm/commons/AdviceAdapter;

  private java.lang.Object peekValue();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.objectweb.asm.commons.AdviceAdapter this
         0: .line 564
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            iconst_1
            isub
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            areturn
        end local 0 // org.objectweb.asm.commons.AdviceAdapter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/objectweb/asm/commons/AdviceAdapter;

  private void pushValue(java.lang.Object);
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.objectweb.asm.commons.AdviceAdapter this
        start local 1 // java.lang.Object o
         0: .line 568
            aload 0 /* this */
            getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
            aload 1 /* o */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         1: .line 569
            return
        end local 1 // java.lang.Object o
        end local 0 // org.objectweb.asm.commons.AdviceAdapter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/objectweb/asm/commons/AdviceAdapter;
            0    2     1     o  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      o     final

  protected void onMethodEnter();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=0, locals=1, args_size=1
        start local 0 // org.objectweb.asm.commons.AdviceAdapter this
         0: .line 580
            return
        end local 0 // org.objectweb.asm.commons.AdviceAdapter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/objectweb/asm/commons/AdviceAdapter;

  protected void onMethodExit(int);
    descriptor: (I)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // org.objectweb.asm.commons.AdviceAdapter this
        start local 1 // int opcode
         0: .line 622
            return
        end local 1 // int opcode
        end local 0 // org.objectweb.asm.commons.AdviceAdapter this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/objectweb/asm/commons/AdviceAdapter;
            0    1     1  opcode  I
    MethodParameters:
        Name  Flags
      opcode  
}
SourceFile: "AdviceAdapter.java"