class javassist.CtClassType extends javassist.CtClass
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: javassist.CtClassType
  super_class: javassist.CtClass
{
  javassist.ClassPool classPool;
    descriptor: Ljavassist/ClassPool;
    flags: (0x0000) 

  boolean wasChanged;
    descriptor: Z
    flags: (0x0000) 

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

  boolean wasPruned;
    descriptor: Z
    flags: (0x0000) 

  boolean gcConstPool;
    descriptor: Z
    flags: (0x0000) 

  javassist.bytecode.ClassFile classfile;
    descriptor: Ljavassist/bytecode/ClassFile;
    flags: (0x0000) 

  byte[] rawClassfile;
    descriptor: [B
    flags: (0x0000) 

  private java.lang.ref.Reference<javassist.CtMember$Cache> memberCache;
    descriptor: Ljava/lang/ref/Reference;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/lang/ref/Reference<Ljavassist/CtMember$Cache;>;

  private javassist.compiler.AccessorMaker accessors;
    descriptor: Ljavassist/compiler/AccessorMaker;
    flags: (0x0002) ACC_PRIVATE

  private javassist.FieldInitLink fieldInitializers;
    descriptor: Ljavassist/FieldInitLink;
    flags: (0x0002) ACC_PRIVATE

  private java.util.Map<javassist.CtMethod, java.lang.String> hiddenMethods;
    descriptor: Ljava/util/Map;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Map<Ljavassist/CtMethod;Ljava/lang/String;>;

  private int uniqueNumberSeed;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

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

  private int getCount;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private static final int GET_THRESHOLD;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  void <init>(java.lang.String, javassist.ClassPool);
    descriptor: (Ljava/lang/String;Ljavassist/ClassPool;)V
    flags: (0x0000) 
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // javassist.CtClassType this
        start local 1 // java.lang.String name
        start local 2 // javassist.ClassPool cp
         0: .line 83
            aload 0 /* this */
            aload 1 /* name */
            invokespecial javassist.CtClass.<init>:(Ljava/lang/String;)V
         1: .line 78
            aload 0 /* this */
            getstatic javassist.ClassPool.doPruning:Z
            putfield javassist.CtClassType.doPruning:Z
         2: .line 84
            aload 0 /* this */
            aload 2 /* cp */
            putfield javassist.CtClassType.classPool:Ljavassist/ClassPool;
         3: .line 85
            aload 0 /* this */
            aload 0 /* this */
            aload 0 /* this */
            aload 0 /* this */
            iconst_0
            dup_x1
            putfield javassist.CtClassType.gcConstPool:Z
            dup_x1
            putfield javassist.CtClassType.wasPruned:Z
            dup_x1
            putfield javassist.CtClassType.wasFrozen:Z
            putfield javassist.CtClassType.wasChanged:Z
         4: .line 86
            aload 0 /* this */
            aconst_null
            putfield javassist.CtClassType.classfile:Ljavassist/bytecode/ClassFile;
         5: .line 87
            aload 0 /* this */
            aconst_null
            putfield javassist.CtClassType.rawClassfile:[B
         6: .line 88
            aload 0 /* this */
            aconst_null
            putfield javassist.CtClassType.memberCache:Ljava/lang/ref/Reference;
         7: .line 89
            aload 0 /* this */
            aconst_null
            putfield javassist.CtClassType.accessors:Ljavassist/compiler/AccessorMaker;
         8: .line 90
            aload 0 /* this */
            aconst_null
            putfield javassist.CtClassType.fieldInitializers:Ljavassist/FieldInitLink;
         9: .line 91
            aload 0 /* this */
            aconst_null
            putfield javassist.CtClassType.hiddenMethods:Ljava/util/Map;
        10: .line 92
            aload 0 /* this */
            iconst_0
            putfield javassist.CtClassType.uniqueNumberSeed:I
        11: .line 93
            aload 0 /* this */
            iconst_0
            putfield javassist.CtClassType.getCount:I
        12: .line 94
            return
        end local 2 // javassist.ClassPool cp
        end local 1 // java.lang.String name
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   13     0  this  Ljavassist/CtClassType;
            0   13     1  name  Ljava/lang/String;
            0   13     2    cp  Ljavassist/ClassPool;
    MethodParameters:
      Name  Flags
      name  
      cp    

  void <init>(java.io.InputStream, javassist.ClassPool);
    descriptor: (Ljava/io/InputStream;Ljavassist/ClassPool;)V
    flags: (0x0000) 
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // javassist.CtClassType this
        start local 1 // java.io.InputStream ins
        start local 2 // javassist.ClassPool cp
         0: .line 97
            aload 0 /* this */
            aconst_null
            aload 2 /* cp */
            invokespecial javassist.CtClassType.<init>:(Ljava/lang/String;Ljavassist/ClassPool;)V
         1: .line 98
            aload 0 /* this */
            new javassist.bytecode.ClassFile
            dup
            new java.io.DataInputStream
            dup
            aload 1 /* ins */
            invokespecial java.io.DataInputStream.<init>:(Ljava/io/InputStream;)V
            invokespecial javassist.bytecode.ClassFile.<init>:(Ljava/io/DataInputStream;)V
            putfield javassist.CtClassType.classfile:Ljavassist/bytecode/ClassFile;
         2: .line 99
            aload 0 /* this */
            aload 0 /* this */
            getfield javassist.CtClassType.classfile:Ljavassist/bytecode/ClassFile;
            invokevirtual javassist.bytecode.ClassFile.getName:()Ljava/lang/String;
            putfield javassist.CtClassType.qualifiedName:Ljava/lang/String;
         3: .line 100
            return
        end local 2 // javassist.ClassPool cp
        end local 1 // java.io.InputStream ins
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljavassist/CtClassType;
            0    4     1   ins  Ljava/io/InputStream;
            0    4     2    cp  Ljavassist/ClassPool;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      ins   
      cp    

  void <init>(javassist.bytecode.ClassFile, javassist.ClassPool);
    descriptor: (Ljavassist/bytecode/ClassFile;Ljavassist/ClassPool;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // javassist.CtClassType this
        start local 1 // javassist.bytecode.ClassFile cf
        start local 2 // javassist.ClassPool cp
         0: .line 103
            aload 0 /* this */
            aconst_null
            aload 2 /* cp */
            invokespecial javassist.CtClassType.<init>:(Ljava/lang/String;Ljavassist/ClassPool;)V
         1: .line 104
            aload 0 /* this */
            aload 1 /* cf */
            putfield javassist.CtClassType.classfile:Ljavassist/bytecode/ClassFile;
         2: .line 105
            aload 0 /* this */
            aload 0 /* this */
            getfield javassist.CtClassType.classfile:Ljavassist/bytecode/ClassFile;
            invokevirtual javassist.bytecode.ClassFile.getName:()Ljava/lang/String;
            putfield javassist.CtClassType.qualifiedName:Ljava/lang/String;
         3: .line 106
            return
        end local 2 // javassist.ClassPool cp
        end local 1 // javassist.bytecode.ClassFile cf
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljavassist/CtClassType;
            0    4     1    cf  Ljavassist/bytecode/ClassFile;
            0    4     2    cp  Ljavassist/ClassPool;
    MethodParameters:
      Name  Flags
      cf    
      cp    

  protected void extendToString(java.lang.StringBuffer);
    descriptor: (Ljava/lang/StringBuffer;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // javassist.CtClassType this
        start local 1 // java.lang.StringBuffer buffer
         0: .line 110
            aload 0 /* this */
            getfield javassist.CtClassType.wasChanged:Z
            ifeq 2
         1: .line 111
            aload 1 /* buffer */
            ldc "changed "
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         2: .line 113
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javassist.CtClassType.wasFrozen:Z
            ifeq 4
         3: .line 114
            aload 1 /* buffer */
            ldc "frozen "
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         4: .line 116
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javassist.CtClassType.wasPruned:Z
            ifeq 6
         5: .line 117
            aload 1 /* buffer */
            ldc "pruned "
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         6: .line 119
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getModifiers:()I
            invokestatic javassist.Modifier.toString:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         7: .line 120
            aload 1 /* buffer */
            ldc " class "
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         8: .line 121
            aload 1 /* buffer */
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         9: .line 124
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getSuperclass:()Ljavassist/CtClass;
            astore 2 /* ext */
        start local 2 // javassist.CtClass ext
        10: .line 125
            aload 2 /* ext */
            ifnull 17
        11: .line 126
            aload 2 /* ext */
            invokevirtual javassist.CtClass.getName:()Ljava/lang/String;
            astore 3 /* name */
        start local 3 // java.lang.String name
        12: .line 127
            aload 3 /* name */
            ldc "java.lang.Object"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 17
        13: .line 128
            aload 1 /* buffer */
            new java.lang.StringBuilder
            dup
            ldc " extends "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* ext */
            invokevirtual javassist.CtClass.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        end local 3 // java.lang.String name
        end local 2 // javassist.CtClass ext
        14: .line 130
            goto 17
        15: .line 131
      StackMap locals:
      StackMap stack: javassist.NotFoundException
            pop
        16: .line 132
            aload 1 /* buffer */
            ldc " extends ??"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        17: .line 136
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getInterfaces:()[Ljavassist/CtClass;
            astore 2 /* intf */
        start local 2 // javassist.CtClass[] intf
        18: .line 137
            aload 2 /* intf */
            arraylength
            ifle 20
        19: .line 138
            aload 1 /* buffer */
            ldc " implements "
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        20: .line 140
      StackMap locals: javassist.CtClass[]
      StackMap stack:
            iconst_0
            istore 3 /* i */
        start local 3 // int i
        21: goto 25
        22: .line 141
      StackMap locals: int
      StackMap stack:
            aload 1 /* buffer */
            aload 2 /* intf */
            iload 3 /* i */
            aaload
            invokevirtual javassist.CtClass.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        23: .line 142
            aload 1 /* buffer */
            ldc ", "
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        24: .line 140
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        25: iload 3 /* i */
            aload 2 /* intf */
            arraylength
            if_icmplt 22
        end local 3 // int i
        end local 2 // javassist.CtClass[] intf
        26: .line 144
            goto 29
        27: .line 145
      StackMap locals: javassist.CtClassType java.lang.StringBuffer
      StackMap stack: javassist.NotFoundException
            pop
        28: .line 146
            aload 1 /* buffer */
            ldc " extends ??"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        29: .line 149
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getMembers:()Ljavassist/CtMember$Cache;
            astore 2 /* memCache */
        start local 2 // javassist.CtMember$Cache memCache
        30: .line 150
            aload 0 /* this */
            aload 1 /* buffer */
            ldc " fields="
        31: .line 151
            aload 2 /* memCache */
            invokevirtual javassist.CtMember$Cache.fieldHead:()Ljavassist/CtMember;
            aload 2 /* memCache */
            invokevirtual javassist.CtMember$Cache.lastField:()Ljavassist/CtMember;
        32: .line 150
            invokevirtual javassist.CtClassType.exToString:(Ljava/lang/StringBuffer;Ljava/lang/String;Ljavassist/CtMember;Ljavassist/CtMember;)V
        33: .line 152
            aload 0 /* this */
            aload 1 /* buffer */
            ldc " constructors="
        34: .line 153
            aload 2 /* memCache */
            invokevirtual javassist.CtMember$Cache.consHead:()Ljavassist/CtMember;
            aload 2 /* memCache */
            invokevirtual javassist.CtMember$Cache.lastCons:()Ljavassist/CtMember;
        35: .line 152
            invokevirtual javassist.CtClassType.exToString:(Ljava/lang/StringBuffer;Ljava/lang/String;Ljavassist/CtMember;Ljavassist/CtMember;)V
        36: .line 154
            aload 0 /* this */
            aload 1 /* buffer */
            ldc " methods="
        37: .line 155
            aload 2 /* memCache */
            invokevirtual javassist.CtMember$Cache.methodHead:()Ljavassist/CtMember;
            aload 2 /* memCache */
            invokevirtual javassist.CtMember$Cache.lastMethod:()Ljavassist/CtMember;
        38: .line 154
            invokevirtual javassist.CtClassType.exToString:(Ljava/lang/StringBuffer;Ljava/lang/String;Ljavassist/CtMember;Ljavassist/CtMember;)V
        39: .line 156
            return
        end local 2 // javassist.CtMember$Cache memCache
        end local 1 // java.lang.StringBuffer buffer
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   40     0      this  Ljavassist/CtClassType;
            0   40     1    buffer  Ljava/lang/StringBuffer;
           10   14     2       ext  Ljavassist/CtClass;
           12   14     3      name  Ljava/lang/String;
           18   26     2      intf  [Ljavassist/CtClass;
           21   26     3         i  I
           30   40     2  memCache  Ljavassist/CtMember$Cache;
      Exception table:
        from    to  target  type
           9    14      15  Class javassist.NotFoundException
          17    26      27  Class javassist.NotFoundException
    MethodParameters:
        Name  Flags
      buffer  

  private void exToString(java.lang.StringBuffer, java.lang.String, javassist.CtMember, javassist.CtMember);
    descriptor: (Ljava/lang/StringBuffer;Ljava/lang/String;Ljavassist/CtMember;Ljavassist/CtMember;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=5, args_size=5
        start local 0 // javassist.CtClassType this
        start local 1 // java.lang.StringBuffer buffer
        start local 2 // java.lang.String msg
        start local 3 // javassist.CtMember head
        start local 4 // javassist.CtMember tail
         0: .line 160
            aload 1 /* buffer */
            aload 2 /* msg */
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         1: .line 161
            goto 5
         2: .line 162
      StackMap locals:
      StackMap stack:
            aload 3 /* head */
            invokevirtual javassist.CtMember.next:()Ljavassist/CtMember;
            astore 3 /* head */
         3: .line 163
            aload 1 /* buffer */
            aload 3 /* head */
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/Object;)Ljava/lang/StringBuffer;
            pop
         4: .line 164
            aload 1 /* buffer */
            ldc ", "
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         5: .line 161
      StackMap locals:
      StackMap stack:
            aload 3 /* head */
            aload 4 /* tail */
            if_acmpne 2
         6: .line 166
            return
        end local 4 // javassist.CtMember tail
        end local 3 // javassist.CtMember head
        end local 2 // java.lang.String msg
        end local 1 // java.lang.StringBuffer buffer
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    this  Ljavassist/CtClassType;
            0    7     1  buffer  Ljava/lang/StringBuffer;
            0    7     2     msg  Ljava/lang/String;
            0    7     3    head  Ljavassist/CtMember;
            0    7     4    tail  Ljavassist/CtMember;
    MethodParameters:
        Name  Flags
      buffer  
      msg     
      head    
      tail    

  public javassist.compiler.AccessorMaker getAccessorMaker();
    descriptor: ()Ljavassist/compiler/AccessorMaker;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // javassist.CtClassType this
         0: .line 170
            aload 0 /* this */
            getfield javassist.CtClassType.accessors:Ljavassist/compiler/AccessorMaker;
            ifnonnull 2
         1: .line 171
            aload 0 /* this */
            new javassist.compiler.AccessorMaker
            dup
            aload 0 /* this */
            invokespecial javassist.compiler.AccessorMaker.<init>:(Ljavassist/CtClass;)V
            putfield javassist.CtClassType.accessors:Ljavassist/compiler/AccessorMaker;
         2: .line 173
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javassist.CtClassType.accessors:Ljavassist/compiler/AccessorMaker;
            areturn
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljavassist/CtClassType;

  public javassist.bytecode.ClassFile getClassFile2();
    descriptor: ()Ljavassist/bytecode/ClassFile;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // javassist.CtClassType this
         0: .line 178
            aload 0 /* this */
            iconst_1
            invokevirtual javassist.CtClassType.getClassFile3:(Z)Ljavassist/bytecode/ClassFile;
            areturn
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavassist/CtClassType;

  public javassist.bytecode.ClassFile getClassFile3(boolean);
    descriptor: (Z)Ljavassist/bytecode/ClassFile;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=7, args_size=2
        start local 0 // javassist.CtClassType this
        start local 1 // boolean doCompress
         0: .line 182
            aload 0 /* this */
            getfield javassist.CtClassType.classfile:Ljavassist/bytecode/ClassFile;
            astore 2 /* cfile */
        start local 2 // javassist.bytecode.ClassFile cfile
         1: .line 183
            aload 2 /* cfile */
            ifnull 3
         2: .line 184
            aload 2 /* cfile */
            areturn
         3: .line 186
      StackMap locals: javassist.bytecode.ClassFile
      StackMap stack:
            iload 1 /* doCompress */
            ifeq 5
         4: .line 187
            aload 0 /* this */
            getfield javassist.CtClassType.classPool:Ljavassist/ClassPool;
            invokevirtual javassist.ClassPool.compress:()V
         5: .line 189
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javassist.CtClassType.rawClassfile:[B
            ifnull 15
         6: .line 191
            new javassist.bytecode.ClassFile
            dup
            new java.io.DataInputStream
            dup
         7: .line 192
            new java.io.ByteArrayInputStream
            dup
            aload 0 /* this */
            getfield javassist.CtClassType.rawClassfile:[B
            invokespecial java.io.ByteArrayInputStream.<init>:([B)V
            invokespecial java.io.DataInputStream.<init>:(Ljava/io/InputStream;)V
         8: .line 191
            invokespecial javassist.bytecode.ClassFile.<init>:(Ljava/io/DataInputStream;)V
            astore 3 /* cf */
        start local 3 // javassist.bytecode.ClassFile cf
         9: .line 193
            aload 0 /* this */
            aconst_null
            putfield javassist.CtClassType.rawClassfile:[B
        10: .line 194
            aload 0 /* this */
            iconst_2
            putfield javassist.CtClassType.getCount:I
        11: .line 195
            aload 0 /* this */
            aload 3 /* cf */
            invokevirtual javassist.CtClassType.setClassFile:(Ljavassist/bytecode/ClassFile;)Ljavassist/bytecode/ClassFile;
        12: areturn
        end local 3 // javassist.bytecode.ClassFile cf
        13: .line 197
      StackMap locals:
      StackMap stack: java.io.IOException
            astore 3 /* e */
        start local 3 // java.io.IOException e
        14: .line 198
            new java.lang.RuntimeException
            dup
            aload 3 /* e */
            invokevirtual java.io.IOException.toString:()Ljava/lang/String;
            aload 3 /* e */
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 3 // java.io.IOException e
        15: .line 202
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 3 /* fin */
        start local 3 // java.io.InputStream fin
        16: .line 204
            aload 0 /* this */
            getfield javassist.CtClassType.classPool:Ljavassist/ClassPool;
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getName:()Ljava/lang/String;
            invokevirtual javassist.ClassPool.openClassfile:(Ljava/lang/String;)Ljava/io/InputStream;
            astore 3 /* fin */
        17: .line 205
            aload 3 /* fin */
            ifnonnull 19
        18: .line 206
            new javassist.NotFoundException
            dup
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getName:()Ljava/lang/String;
            invokespecial javassist.NotFoundException.<init>:(Ljava/lang/String;)V
            athrow
        19: .line 208
      StackMap locals: java.io.InputStream
      StackMap stack:
            new java.io.BufferedInputStream
            dup
            aload 3 /* fin */
            invokespecial java.io.BufferedInputStream.<init>:(Ljava/io/InputStream;)V
            astore 3 /* fin */
        20: .line 209
            new javassist.bytecode.ClassFile
            dup
            new java.io.DataInputStream
            dup
            aload 3 /* fin */
            invokespecial java.io.DataInputStream.<init>:(Ljava/io/InputStream;)V
            invokespecial javassist.bytecode.ClassFile.<init>:(Ljava/io/DataInputStream;)V
            astore 4 /* cf */
        start local 4 // javassist.bytecode.ClassFile cf
        21: .line 210
            aload 4 /* cf */
            invokevirtual javassist.bytecode.ClassFile.getName:()Ljava/lang/String;
            aload 0 /* this */
            getfield javassist.CtClassType.qualifiedName:Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 26
        22: .line 211
            new java.lang.RuntimeException
            dup
            new java.lang.StringBuilder
            dup
            ldc "cannot find "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield javassist.CtClassType.qualifiedName: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;
        23: .line 212
            aload 4 /* cf */
            invokevirtual javassist.bytecode.ClassFile.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " found in "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        24: .line 213
            aload 0 /* this */
            getfield javassist.CtClassType.qualifiedName:Ljava/lang/String;
            bipush 46
            bipush 47
            invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ".class"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        25: .line 211
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        26: .line 215
      StackMap locals: javassist.bytecode.ClassFile
      StackMap stack:
            aload 0 /* this */
            aload 4 /* cf */
            invokevirtual javassist.CtClassType.setClassFile:(Ljavassist/bytecode/ClassFile;)Ljavassist/bytecode/ClassFile;
            astore 6
        27: .line 224
            aload 3 /* fin */
            ifnull 31
        28: .line 226
            aload 3 /* fin */
            invokevirtual java.io.InputStream.close:()V
        29: .line 227
            goto 31
        30: .line 228
      StackMap locals: javassist.CtClassType int javassist.bytecode.ClassFile java.io.InputStream javassist.bytecode.ClassFile top javassist.bytecode.ClassFile
      StackMap stack: java.io.IOException
            pop
        31: .line 215
      StackMap locals:
      StackMap stack:
            aload 6
            areturn
        end local 4 // javassist.bytecode.ClassFile cf
        32: .line 217
      StackMap locals: javassist.CtClassType int javassist.bytecode.ClassFile java.io.InputStream
      StackMap stack: javassist.NotFoundException
            astore 4 /* e */
        start local 4 // javassist.NotFoundException e
        33: .line 218
            new java.lang.RuntimeException
            dup
            aload 4 /* e */
            invokevirtual javassist.NotFoundException.toString:()Ljava/lang/String;
            aload 4 /* e */
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 4 // javassist.NotFoundException e
        34: .line 220
      StackMap locals:
      StackMap stack: java.io.IOException
            astore 4 /* e */
        start local 4 // java.io.IOException e
        35: .line 221
            new java.lang.RuntimeException
            dup
            aload 4 /* e */
            invokevirtual java.io.IOException.toString:()Ljava/lang/String;
            aload 4 /* e */
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 4 // java.io.IOException e
        36: .line 223
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 5
        37: .line 224
            aload 3 /* fin */
            ifnull 41
        38: .line 226
            aload 3 /* fin */
            invokevirtual java.io.InputStream.close:()V
        39: .line 227
            goto 41
        40: .line 228
      StackMap locals: javassist.CtClassType int javassist.bytecode.ClassFile java.io.InputStream top java.lang.Throwable
      StackMap stack: java.io.IOException
            pop
        41: .line 229
      StackMap locals:
      StackMap stack:
            aload 5
            athrow
        end local 3 // java.io.InputStream fin
        end local 2 // javassist.bytecode.ClassFile cfile
        end local 1 // boolean doCompress
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   42     0        this  Ljavassist/CtClassType;
            0   42     1  doCompress  Z
            1   42     2       cfile  Ljavassist/bytecode/ClassFile;
            9   13     3          cf  Ljavassist/bytecode/ClassFile;
           14   15     3           e  Ljava/io/IOException;
           16   42     3         fin  Ljava/io/InputStream;
           21   32     4          cf  Ljavassist/bytecode/ClassFile;
           33   34     4           e  Ljavassist/NotFoundException;
           35   36     4           e  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           6    12      13  Class java.io.IOException
          28    29      30  Class java.io.IOException
          16    27      32  Class javassist.NotFoundException
          16    27      34  Class java.io.IOException
          16    27      36  any
          32    36      36  any
          38    39      40  Class java.io.IOException
    MethodParameters:
            Name  Flags
      doCompress  

  final void incGetCounter();
    descriptor: ()V
    flags: (0x0010) ACC_FINAL
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // javassist.CtClassType this
         0: .line 238
            aload 0 /* this */
            dup
            getfield javassist.CtClassType.getCount:I
            iconst_1
            iadd
            putfield javassist.CtClassType.getCount:I
            return
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavassist/CtClassType;

  void compress();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // javassist.CtClassType this
         0: .line 247
            aload 0 /* this */
            getfield javassist.CtClassType.getCount:I
            iconst_2
            if_icmpge 5
         1: .line 248
            aload 0 /* this */
            invokevirtual javassist.CtClassType.isModified:()Z
            ifne 3
            getstatic javassist.ClassPool.releaseUnmodifiedClassFile:Z
            ifeq 3
         2: .line 249
            aload 0 /* this */
            invokevirtual javassist.CtClassType.removeClassFile:()V
            goto 5
         3: .line 250
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual javassist.CtClassType.isFrozen:()Z
            ifeq 5
            aload 0 /* this */
            getfield javassist.CtClassType.wasPruned:Z
            ifne 5
         4: .line 251
            aload 0 /* this */
            invokevirtual javassist.CtClassType.saveClassFile:()V
         5: .line 253
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield javassist.CtClassType.getCount:I
         6: .line 254
            return
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Ljavassist/CtClassType;

  private synchronized void saveClassFile();
    descriptor: ()V
    flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // javassist.CtClassType this
         0: .line 263
            aload 0 /* this */
            getfield javassist.CtClassType.classfile:Ljavassist/bytecode/ClassFile;
            ifnull 1
            aload 0 /* this */
            invokevirtual javassist.CtClassType.hasMemberCache:()Ljavassist/CtMember$Cache;
            ifnull 2
         1: .line 264
      StackMap locals:
      StackMap stack:
            return
         2: .line 266
      StackMap locals:
      StackMap stack:
            new java.io.ByteArrayOutputStream
            dup
            invokespecial java.io.ByteArrayOutputStream.<init>:()V
            astore 1 /* barray */
        start local 1 // java.io.ByteArrayOutputStream barray
         3: .line 267
            new java.io.DataOutputStream
            dup
            aload 1 /* barray */
            invokespecial java.io.DataOutputStream.<init>:(Ljava/io/OutputStream;)V
            astore 2 /* out */
        start local 2 // java.io.DataOutputStream out
         4: .line 269
            aload 0 /* this */
            getfield javassist.CtClassType.classfile:Ljavassist/bytecode/ClassFile;
            aload 2 /* out */
            invokevirtual javassist.bytecode.ClassFile.write:(Ljava/io/DataOutputStream;)V
         5: .line 270
            aload 1 /* barray */
            invokevirtual java.io.ByteArrayOutputStream.close:()V
         6: .line 271
            aload 0 /* this */
            aload 1 /* barray */
            invokevirtual java.io.ByteArrayOutputStream.toByteArray:()[B
            putfield javassist.CtClassType.rawClassfile:[B
         7: .line 272
            aload 0 /* this */
            aconst_null
            putfield javassist.CtClassType.classfile:Ljavassist/bytecode/ClassFile;
         8: .line 273
            goto 10
         9: .line 274
      StackMap locals: javassist.CtClassType java.io.ByteArrayOutputStream java.io.DataOutputStream
      StackMap stack: java.io.IOException
            pop
        10: .line 275
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.io.DataOutputStream out
        end local 1 // java.io.ByteArrayOutputStream barray
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   11     0    this  Ljavassist/CtClassType;
            3   11     1  barray  Ljava/io/ByteArrayOutputStream;
            4   11     2     out  Ljava/io/DataOutputStream;
      Exception table:
        from    to  target  type
           4     8       9  Class java.io.IOException

  private synchronized void removeClassFile();
    descriptor: ()V
    flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // javassist.CtClassType this
         0: .line 278
            aload 0 /* this */
            getfield javassist.CtClassType.classfile:Ljavassist/bytecode/ClassFile;
            ifnull 2
            aload 0 /* this */
            invokevirtual javassist.CtClassType.isModified:()Z
            ifne 2
            aload 0 /* this */
            invokevirtual javassist.CtClassType.hasMemberCache:()Ljavassist/CtMember$Cache;
            ifnonnull 2
         1: .line 279
            aload 0 /* this */
            aconst_null
            putfield javassist.CtClassType.classfile:Ljavassist/bytecode/ClassFile;
         2: .line 280
      StackMap locals:
      StackMap stack:
            return
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljavassist/CtClassType;

  private synchronized javassist.bytecode.ClassFile setClassFile(javassist.bytecode.ClassFile);
    descriptor: (Ljavassist/bytecode/ClassFile;)Ljavassist/bytecode/ClassFile;
    flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javassist.CtClassType this
        start local 1 // javassist.bytecode.ClassFile cf
         0: .line 286
            aload 0 /* this */
            getfield javassist.CtClassType.classfile:Ljavassist/bytecode/ClassFile;
            ifnonnull 2
         1: .line 287
            aload 0 /* this */
            aload 1 /* cf */
            putfield javassist.CtClassType.classfile:Ljavassist/bytecode/ClassFile;
         2: .line 289
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javassist.CtClassType.classfile:Ljavassist/bytecode/ClassFile;
            areturn
        end local 1 // javassist.bytecode.ClassFile cf
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljavassist/CtClassType;
            0    3     1    cf  Ljavassist/bytecode/ClassFile;
    MethodParameters:
      Name  Flags
      cf    

  public javassist.ClassPool getClassPool();
    descriptor: ()Ljavassist/ClassPool;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javassist.CtClassType this
         0: .line 293
            aload 0 /* this */
            getfield javassist.CtClassType.classPool:Ljavassist/ClassPool;
            areturn
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavassist/CtClassType;

  void setClassPool(javassist.ClassPool);
    descriptor: (Ljavassist/ClassPool;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javassist.CtClassType this
        start local 1 // javassist.ClassPool cp
         0: .line 295
            aload 0 /* this */
            aload 1 /* cp */
            putfield javassist.CtClassType.classPool:Ljavassist/ClassPool;
            return
        end local 1 // javassist.ClassPool cp
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavassist/CtClassType;
            0    1     1    cp  Ljavassist/ClassPool;
    MethodParameters:
      Name  Flags
      cp    

  public java.net.URL getURL();
    descriptor: ()Ljava/net/URL;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // javassist.CtClassType this
         0: .line 299
            aload 0 /* this */
            getfield javassist.CtClassType.classPool:Ljavassist/ClassPool;
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getName:()Ljava/lang/String;
            invokevirtual javassist.ClassPool.find:(Ljava/lang/String;)Ljava/net/URL;
            astore 1 /* url */
        start local 1 // java.net.URL url
         1: .line 300
            aload 1 /* url */
            ifnonnull 3
         2: .line 301
            new javassist.NotFoundException
            dup
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getName:()Ljava/lang/String;
            invokespecial javassist.NotFoundException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 302
      StackMap locals: java.net.URL
      StackMap stack:
            aload 1 /* url */
            areturn
        end local 1 // java.net.URL url
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljavassist/CtClassType;
            1    4     1   url  Ljava/net/URL;
    Exceptions:
      throws javassist.NotFoundException

  public boolean isModified();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javassist.CtClassType this
         0: .line 306
            aload 0 /* this */
            getfield javassist.CtClassType.wasChanged:Z
            ireturn
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavassist/CtClassType;

  public boolean isFrozen();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javassist.CtClassType this
         0: .line 309
            aload 0 /* this */
            getfield javassist.CtClassType.wasFrozen:Z
            ireturn
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavassist/CtClassType;

  public void freeze();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // javassist.CtClassType this
         0: .line 312
            aload 0 /* this */
            iconst_1
            putfield javassist.CtClassType.wasFrozen:Z
            return
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavassist/CtClassType;

  void checkModify();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // javassist.CtClassType this
         0: .line 316
            aload 0 /* this */
            invokevirtual javassist.CtClassType.isFrozen:()Z
            ifeq 5
         1: .line 317
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getName:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " class is frozen"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 1 /* msg */
        start local 1 // java.lang.String msg
         2: .line 318
            aload 0 /* this */
            getfield javassist.CtClassType.wasPruned:Z
            ifeq 4
         3: .line 319
            new java.lang.StringBuilder
            dup
            aload 1 /* msg */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " and pruned"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 1 /* msg */
         4: .line 321
      StackMap locals: java.lang.String
      StackMap stack:
            new java.lang.RuntimeException
            dup
            aload 1 /* msg */
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        end local 1 // java.lang.String msg
         5: .line 324
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield javassist.CtClassType.wasChanged:Z
         6: .line 325
            return
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Ljavassist/CtClassType;
            2    5     1   msg  Ljava/lang/String;
    Exceptions:
      throws java.lang.RuntimeException

  public void defrost();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // javassist.CtClassType this
         0: .line 329
            aload 0 /* this */
            ldc "defrost"
            invokevirtual javassist.CtClassType.checkPruned:(Ljava/lang/String;)V
         1: .line 330
            aload 0 /* this */
            iconst_0
            putfield javassist.CtClassType.wasFrozen:Z
         2: .line 331
            return
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljavassist/CtClassType;

  public boolean subtypeOf(javassist.CtClass);
    descriptor: (Ljavassist/CtClass;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=8, args_size=2
        start local 0 // javassist.CtClassType this
        start local 1 // javassist.CtClass clazz
         0: .line 336
            aload 1 /* clazz */
            invokevirtual javassist.CtClass.getName:()Ljava/lang/String;
            astore 3 /* cname */
        start local 3 // java.lang.String cname
         1: .line 337
            aload 0 /* this */
            aload 1 /* clazz */
            if_acmpeq 2
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getName:()Ljava/lang/String;
            aload 3 /* cname */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 3
         2: .line 338
      StackMap locals: javassist.CtClassType javassist.CtClass top java.lang.String
      StackMap stack:
            iconst_1
            ireturn
         3: .line 340
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getClassFile2:()Ljavassist/bytecode/ClassFile;
            astore 4 /* file */
        start local 4 // javassist.bytecode.ClassFile file
         4: .line 341
            aload 4 /* file */
            invokevirtual javassist.bytecode.ClassFile.getSuperclass:()Ljava/lang/String;
            astore 5 /* supername */
        start local 5 // java.lang.String supername
         5: .line 342
            aload 5 /* supername */
            ifnull 7
            aload 5 /* supername */
            aload 3 /* cname */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 7
         6: .line 343
            iconst_1
            ireturn
         7: .line 345
      StackMap locals: javassist.bytecode.ClassFile java.lang.String
      StackMap stack:
            aload 4 /* file */
            invokevirtual javassist.bytecode.ClassFile.getInterfaces:()[Ljava/lang/String;
            astore 6 /* ifs */
        start local 6 // java.lang.String[] ifs
         8: .line 346
            aload 6 /* ifs */
            arraylength
            istore 7 /* num */
        start local 7 // int num
         9: .line 347
            iconst_0
            istore 2 /* i */
        start local 2 // int i
        10: goto 14
        11: .line 348
      StackMap locals: javassist.CtClassType javassist.CtClass int java.lang.String javassist.bytecode.ClassFile java.lang.String java.lang.String[] int
      StackMap stack:
            aload 6 /* ifs */
            iload 2 /* i */
            aaload
            aload 3 /* cname */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 13
        12: .line 349
            iconst_1
            ireturn
        13: .line 347
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        14: iload 2 /* i */
            iload 7 /* num */
            if_icmplt 11
        15: .line 351
            aload 5 /* supername */
            ifnull 17
            aload 0 /* this */
            getfield javassist.CtClassType.classPool:Ljavassist/ClassPool;
            aload 5 /* supername */
            invokevirtual javassist.ClassPool.get:(Ljava/lang/String;)Ljavassist/CtClass;
            aload 1 /* clazz */
            invokevirtual javassist.CtClass.subtypeOf:(Ljavassist/CtClass;)Z
            ifeq 17
        16: .line 352
            iconst_1
            ireturn
        17: .line 354
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 2 /* i */
            goto 21
        18: .line 355
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javassist.CtClassType.classPool:Ljavassist/ClassPool;
            aload 6 /* ifs */
            iload 2 /* i */
            aaload
            invokevirtual javassist.ClassPool.get:(Ljava/lang/String;)Ljavassist/CtClass;
            aload 1 /* clazz */
            invokevirtual javassist.CtClass.subtypeOf:(Ljavassist/CtClass;)Z
            ifeq 20
        19: .line 356
            iconst_1
            ireturn
        20: .line 354
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        21: iload 2 /* i */
            iload 7 /* num */
            if_icmplt 18
        22: .line 358
            iconst_0
            ireturn
        end local 7 // int num
        end local 6 // java.lang.String[] ifs
        end local 5 // java.lang.String supername
        end local 4 // javassist.bytecode.ClassFile file
        end local 3 // java.lang.String cname
        end local 2 // int i
        end local 1 // javassist.CtClass clazz
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   23     0       this  Ljavassist/CtClassType;
            0   23     1      clazz  Ljavassist/CtClass;
           10   23     2          i  I
            1   23     3      cname  Ljava/lang/String;
            4   23     4       file  Ljavassist/bytecode/ClassFile;
            5   23     5  supername  Ljava/lang/String;
            8   23     6        ifs  [Ljava/lang/String;
            9   23     7        num  I
    Exceptions:
      throws javassist.NotFoundException
    MethodParameters:
       Name  Flags
      clazz  

  public void setName(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // javassist.CtClassType this
        start local 1 // java.lang.String name
         0: .line 363
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getName:()Ljava/lang/String;
            astore 2 /* oldname */
        start local 2 // java.lang.String oldname
         1: .line 364
            aload 1 /* name */
            aload 2 /* oldname */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 3
         2: .line 365
            return
         3: .line 368
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield javassist.CtClassType.classPool:Ljavassist/ClassPool;
            aload 1 /* name */
            invokevirtual javassist.ClassPool.checkNotFrozen:(Ljava/lang/String;)V
         4: .line 369
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getClassFile2:()Ljavassist/bytecode/ClassFile;
            astore 3 /* cf */
        start local 3 // javassist.bytecode.ClassFile cf
         5: .line 370
            aload 0 /* this */
            aload 1 /* name */
            invokespecial javassist.CtClass.setName:(Ljava/lang/String;)V
         6: .line 371
            aload 3 /* cf */
            aload 1 /* name */
            invokevirtual javassist.bytecode.ClassFile.setName:(Ljava/lang/String;)V
         7: .line 372
            aload 0 /* this */
            invokevirtual javassist.CtClassType.nameReplaced:()V
         8: .line 373
            aload 0 /* this */
            getfield javassist.CtClassType.classPool:Ljavassist/ClassPool;
            aload 2 /* oldname */
            aload 0 /* this */
            invokevirtual javassist.ClassPool.classNameChanged:(Ljava/lang/String;Ljavassist/CtClass;)V
         9: .line 374
            return
        end local 3 // javassist.bytecode.ClassFile cf
        end local 2 // java.lang.String oldname
        end local 1 // java.lang.String name
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   10     0     this  Ljavassist/CtClassType;
            0   10     1     name  Ljava/lang/String;
            1   10     2  oldname  Ljava/lang/String;
            5   10     3       cf  Ljavassist/bytecode/ClassFile;
    Exceptions:
      throws java.lang.RuntimeException
    MethodParameters:
      Name  Flags
      name  

  public java.lang.String getGenericSignature();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // javassist.CtClassType this
         0: .line 379
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getClassFile2:()Ljavassist/bytecode/ClassFile;
            ldc "Signature"
            invokevirtual javassist.bytecode.ClassFile.getAttribute:(Ljava/lang/String;)Ljavassist/bytecode/AttributeInfo;
            checkcast javassist.bytecode.SignatureAttribute
         1: .line 378
            astore 1 /* sa */
        start local 1 // javassist.bytecode.SignatureAttribute sa
         2: .line 380
            aload 1 /* sa */
            ifnonnull 3
            aconst_null
            goto 4
      StackMap locals: javassist.bytecode.SignatureAttribute
      StackMap stack:
         3: aload 1 /* sa */
            invokevirtual javassist.bytecode.SignatureAttribute.getSignature:()Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
         4: areturn
        end local 1 // javassist.bytecode.SignatureAttribute sa
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljavassist/CtClassType;
            2    5     1    sa  Ljavassist/bytecode/SignatureAttribute;

  public void setGenericSignature(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // javassist.CtClassType this
        start local 1 // java.lang.String sig
         0: .line 385
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getClassFile:()Ljavassist/bytecode/ClassFile;
            astore 2 /* cf */
        start local 2 // javassist.bytecode.ClassFile cf
         1: .line 386
            new javassist.bytecode.SignatureAttribute
            dup
            aload 2 /* cf */
            invokevirtual javassist.bytecode.ClassFile.getConstPool:()Ljavassist/bytecode/ConstPool;
            aload 1 /* sig */
            invokespecial javassist.bytecode.SignatureAttribute.<init>:(Ljavassist/bytecode/ConstPool;Ljava/lang/String;)V
            astore 3 /* sa */
        start local 3 // javassist.bytecode.SignatureAttribute sa
         2: .line 387
            aload 2 /* cf */
            aload 3 /* sa */
            invokevirtual javassist.bytecode.ClassFile.addAttribute:(Ljavassist/bytecode/AttributeInfo;)V
         3: .line 388
            return
        end local 3 // javassist.bytecode.SignatureAttribute sa
        end local 2 // javassist.bytecode.ClassFile cf
        end local 1 // java.lang.String sig
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljavassist/CtClassType;
            0    4     1   sig  Ljava/lang/String;
            1    4     2    cf  Ljavassist/bytecode/ClassFile;
            2    4     3    sa  Ljavassist/bytecode/SignatureAttribute;
    MethodParameters:
      Name  Flags
      sig   

  public void replaceClassName(javassist.ClassMap);
    descriptor: (Ljavassist/ClassMap;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // javassist.CtClassType this
        start local 1 // javassist.ClassMap classnames
         0: .line 394
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getName:()Ljava/lang/String;
            astore 2 /* oldClassName */
        start local 2 // java.lang.String oldClassName
         1: .line 396
            aload 1 /* classnames */
            aload 2 /* oldClassName */
            invokestatic javassist.bytecode.Descriptor.toJvmName:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual javassist.ClassMap.get:(Ljava/lang/Object;)Ljava/lang/String;
         2: .line 395
            astore 3 /* newClassName */
        start local 3 // java.lang.String newClassName
         3: .line 397
            aload 3 /* newClassName */
            ifnull 6
         4: .line 398
            aload 3 /* newClassName */
            invokestatic javassist.bytecode.Descriptor.toJavaName:(Ljava/lang/String;)Ljava/lang/String;
            astore 3 /* newClassName */
         5: .line 400
            aload 0 /* this */
            getfield javassist.CtClassType.classPool:Ljavassist/ClassPool;
            aload 3 /* newClassName */
            invokevirtual javassist.ClassPool.checkNotFrozen:(Ljava/lang/String;)V
         6: .line 403
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
            aload 0 /* this */
            aload 1 /* classnames */
            invokespecial javassist.CtClass.replaceClassName:(Ljavassist/ClassMap;)V
         7: .line 404
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getClassFile2:()Ljavassist/bytecode/ClassFile;
            astore 4 /* cf */
        start local 4 // javassist.bytecode.ClassFile cf
         8: .line 405
            aload 4 /* cf */
            aload 1 /* classnames */
            invokevirtual javassist.bytecode.ClassFile.renameClass:(Ljava/util/Map;)V
         9: .line 406
            aload 0 /* this */
            invokevirtual javassist.CtClassType.nameReplaced:()V
        10: .line 408
            aload 3 /* newClassName */
            ifnull 13
        11: .line 409
            aload 0 /* this */
            aload 3 /* newClassName */
            invokespecial javassist.CtClass.setName:(Ljava/lang/String;)V
        12: .line 410
            aload 0 /* this */
            getfield javassist.CtClassType.classPool:Ljavassist/ClassPool;
            aload 2 /* oldClassName */
            aload 0 /* this */
            invokevirtual javassist.ClassPool.classNameChanged:(Ljava/lang/String;Ljavassist/CtClass;)V
        13: .line 412
      StackMap locals: javassist.bytecode.ClassFile
      StackMap stack:
            return
        end local 4 // javassist.bytecode.ClassFile cf
        end local 3 // java.lang.String newClassName
        end local 2 // java.lang.String oldClassName
        end local 1 // javassist.ClassMap classnames
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   14     0          this  Ljavassist/CtClassType;
            0   14     1    classnames  Ljavassist/ClassMap;
            1   14     2  oldClassName  Ljava/lang/String;
            3   14     3  newClassName  Ljava/lang/String;
            8   14     4            cf  Ljavassist/bytecode/ClassFile;
    Exceptions:
      throws java.lang.RuntimeException
    MethodParameters:
            Name  Flags
      classnames  

  public void replaceClassName(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // javassist.CtClassType this
        start local 1 // java.lang.String oldname
        start local 2 // java.lang.String newname
         0: .line 418
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getName:()Ljava/lang/String;
            astore 3 /* thisname */
        start local 3 // java.lang.String thisname
         1: .line 419
            aload 3 /* thisname */
            aload 1 /* oldname */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 3
         2: .line 420
            aload 0 /* this */
            aload 2 /* newname */
            invokevirtual javassist.CtClassType.setName:(Ljava/lang/String;)V
            goto 6
         3: .line 422
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            aload 1 /* oldname */
            aload 2 /* newname */
            invokespecial javassist.CtClass.replaceClassName:(Ljava/lang/String;Ljava/lang/String;)V
         4: .line 423
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getClassFile2:()Ljavassist/bytecode/ClassFile;
            aload 1 /* oldname */
            aload 2 /* newname */
            invokevirtual javassist.bytecode.ClassFile.renameClass:(Ljava/lang/String;Ljava/lang/String;)V
         5: .line 424
            aload 0 /* this */
            invokevirtual javassist.CtClassType.nameReplaced:()V
         6: .line 426
      StackMap locals:
      StackMap stack:
            return
        end local 3 // java.lang.String thisname
        end local 2 // java.lang.String newname
        end local 1 // java.lang.String oldname
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    7     0      this  Ljavassist/CtClassType;
            0    7     1   oldname  Ljava/lang/String;
            0    7     2   newname  Ljava/lang/String;
            1    7     3  thisname  Ljava/lang/String;
    Exceptions:
      throws java.lang.RuntimeException
    MethodParameters:
         Name  Flags
      oldname  
      newname  

  public boolean isInterface();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javassist.CtClassType this
         0: .line 430
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getModifiers:()I
            invokestatic javassist.Modifier.isInterface:(I)Z
            ireturn
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavassist/CtClassType;

  public boolean isAnnotation();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javassist.CtClassType this
         0: .line 435
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getModifiers:()I
            invokestatic javassist.Modifier.isAnnotation:(I)Z
            ireturn
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavassist/CtClassType;

  public boolean isEnum();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javassist.CtClassType this
         0: .line 440
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getModifiers:()I
            invokestatic javassist.Modifier.isEnum:(I)Z
            ireturn
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavassist/CtClassType;

  public int getModifiers();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=1
        start local 0 // javassist.CtClassType this
         0: .line 445
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getClassFile2:()Ljavassist/bytecode/ClassFile;
            astore 1 /* cf */
        start local 1 // javassist.bytecode.ClassFile cf
         1: .line 446
            aload 1 /* cf */
            invokevirtual javassist.bytecode.ClassFile.getAccessFlags:()I
            istore 2 /* acc */
        start local 2 // int acc
         2: .line 447
            iload 2 /* acc */
            bipush 32
            invokestatic javassist.bytecode.AccessFlag.clear:(II)I
            istore 2 /* acc */
         3: .line 448
            aload 1 /* cf */
            invokevirtual javassist.bytecode.ClassFile.getInnerAccessFlags:()I
            istore 3 /* inner */
        start local 3 // int inner
         4: .line 449
            iload 3 /* inner */
            iconst_m1
            if_icmpeq 14
         5: .line 450
            iload 3 /* inner */
            bipush 8
            iand
            ifeq 7
         6: .line 451
            iload 2 /* acc */
            bipush 8
            ior
            istore 2 /* acc */
         7: .line 452
      StackMap locals: javassist.bytecode.ClassFile int int
      StackMap stack:
            iload 3 /* inner */
            iconst_1
            iand
            ifeq 9
         8: .line 453
            iload 2 /* acc */
            iconst_1
            ior
            istore 2 /* acc */
            goto 14
         9: .line 455
      StackMap locals:
      StackMap stack:
            iload 2 /* acc */
            bipush -2
            iand
            istore 2 /* acc */
        10: .line 456
            iload 3 /* inner */
            iconst_4
            iand
            ifeq 12
        11: .line 457
            iload 2 /* acc */
            iconst_4
            ior
            istore 2 /* acc */
            goto 14
        12: .line 458
      StackMap locals:
      StackMap stack:
            iload 3 /* inner */
            iconst_2
            iand
            ifeq 14
        13: .line 459
            iload 2 /* acc */
            iconst_2
            ior
            istore 2 /* acc */
        14: .line 462
      StackMap locals:
      StackMap stack:
            iload 2 /* acc */
            invokestatic javassist.bytecode.AccessFlag.toModifier:(I)I
            ireturn
        end local 3 // int inner
        end local 2 // int acc
        end local 1 // javassist.bytecode.ClassFile cf
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   15     0   this  Ljavassist/CtClassType;
            1   15     1     cf  Ljavassist/bytecode/ClassFile;
            2   15     2    acc  I
            4   15     3  inner  I

  public javassist.CtClass[] getNestedClasses();
    descriptor: ()[Ljavassist/CtClass;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=8, args_size=1
        start local 0 // javassist.CtClassType this
         0: .line 467
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getClassFile2:()Ljavassist/bytecode/ClassFile;
            astore 1 /* cf */
        start local 1 // javassist.bytecode.ClassFile cf
         1: .line 469
            aload 1 /* cf */
            ldc "InnerClasses"
            invokevirtual javassist.bytecode.ClassFile.getAttribute:(Ljava/lang/String;)Ljavassist/bytecode/AttributeInfo;
            checkcast javassist.bytecode.InnerClassesAttribute
         2: .line 468
            astore 2 /* ica */
        start local 2 // javassist.bytecode.InnerClassesAttribute ica
         3: .line 470
            aload 2 /* ica */
            ifnonnull 5
         4: .line 471
            iconst_0
            anewarray javassist.CtClass
            areturn
         5: .line 473
      StackMap locals: javassist.bytecode.ClassFile javassist.bytecode.InnerClassesAttribute
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 1 /* cf */
            invokevirtual javassist.bytecode.ClassFile.getName:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "$"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 3 /* thisName */
        start local 3 // java.lang.String thisName
         6: .line 474
            aload 2 /* ica */
            invokevirtual javassist.bytecode.InnerClassesAttribute.tableLength:()I
            istore 4 /* n */
        start local 4 // int n
         7: .line 475
            new java.util.ArrayList
            dup
            iload 4 /* n */
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 5 /* list */
        start local 5 // java.util.List list
         8: .line 476
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         9: goto 16
        10: .line 477
      StackMap locals: javassist.CtClassType javassist.bytecode.ClassFile javassist.bytecode.InnerClassesAttribute java.lang.String int java.util.List int
      StackMap stack:
            aload 2 /* ica */
            iload 6 /* i */
            invokevirtual javassist.bytecode.InnerClassesAttribute.innerClass:(I)Ljava/lang/String;
            astore 7 /* name */
        start local 7 // java.lang.String name
        11: .line 478
            aload 7 /* name */
            ifnull 15
        12: .line 479
            aload 7 /* name */
            aload 3 /* thisName */
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 15
        13: .line 481
            aload 7 /* name */
            bipush 36
            invokevirtual java.lang.String.lastIndexOf:(I)I
            aload 3 /* thisName */
            invokevirtual java.lang.String.length:()I
            if_icmpge 15
        14: .line 482
            aload 5 /* list */
            aload 0 /* this */
            getfield javassist.CtClassType.classPool:Ljavassist/ClassPool;
            aload 7 /* name */
            invokevirtual javassist.ClassPool.get:(Ljava/lang/String;)Ljavassist/CtClass;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 7 // java.lang.String name
        15: .line 476
      StackMap locals:
      StackMap stack:
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        16: iload 6 /* i */
            iload 4 /* n */
            if_icmplt 10
        end local 6 // int i
        17: .line 486
            aload 5 /* list */
            aload 5 /* list */
            invokeinterface java.util.List.size:()I
            anewarray javassist.CtClass
            invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast javassist.CtClass[]
            areturn
        end local 5 // java.util.List list
        end local 4 // int n
        end local 3 // java.lang.String thisName
        end local 2 // javassist.bytecode.InnerClassesAttribute ica
        end local 1 // javassist.bytecode.ClassFile cf
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   18     0      this  Ljavassist/CtClassType;
            1   18     1        cf  Ljavassist/bytecode/ClassFile;
            3   18     2       ica  Ljavassist/bytecode/InnerClassesAttribute;
            6   18     3  thisName  Ljava/lang/String;
            7   18     4         n  I
            8   18     5      list  Ljava/util/List<Ljavassist/CtClass;>;
            9   17     6         i  I
           11   15     7      name  Ljava/lang/String;
    Exceptions:
      throws javassist.NotFoundException

  public void setModifiers(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // javassist.CtClassType this
        start local 1 // int mod
         0: .line 491
            aload 0 /* this */
            invokevirtual javassist.CtClassType.checkModify:()V
         1: .line 492
            iload 1 /* mod */
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getName:()Ljava/lang/String;
            aload 0 /* this */
            iconst_1
            invokestatic javassist.CtClassType.updateInnerEntry:(ILjava/lang/String;Ljavassist/CtClass;Z)V
         2: .line 493
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getClassFile2:()Ljavassist/bytecode/ClassFile;
            astore 2 /* cf */
        start local 2 // javassist.bytecode.ClassFile cf
         3: .line 494
            aload 2 /* cf */
            iload 1 /* mod */
            bipush -9
            iand
            invokestatic javassist.bytecode.AccessFlag.of:(I)I
            invokevirtual javassist.bytecode.ClassFile.setAccessFlags:(I)V
         4: .line 495
            return
        end local 2 // javassist.bytecode.ClassFile cf
        end local 1 // int mod
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljavassist/CtClassType;
            0    5     1   mod  I
            3    5     2    cf  Ljavassist/bytecode/ClassFile;
    MethodParameters:
      Name  Flags
      mod   

  private static void updateInnerEntry(int, java.lang.String, javassist.CtClass, boolean);
    descriptor: (ILjava/lang/String;Ljavassist/CtClass;Z)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=11, args_size=4
        start local 0 // int newMod
        start local 1 // java.lang.String name
        start local 2 // javassist.CtClass clazz
        start local 3 // boolean outer
         0: .line 498
            aload 2 /* clazz */
            invokevirtual javassist.CtClass.getClassFile2:()Ljavassist/bytecode/ClassFile;
            astore 4 /* cf */
        start local 4 // javassist.bytecode.ClassFile cf
         1: .line 500
            aload 4 /* cf */
            ldc "InnerClasses"
            invokevirtual javassist.bytecode.ClassFile.getAttribute:(Ljava/lang/String;)Ljavassist/bytecode/AttributeInfo;
            checkcast javassist.bytecode.InnerClassesAttribute
         2: .line 499
            astore 5 /* ica */
        start local 5 // javassist.bytecode.InnerClassesAttribute ica
         3: .line 501
            aload 5 /* ica */
            ifnull 21
         4: .line 505
            iload 0 /* newMod */
            bipush -9
            iand
            istore 6 /* mod */
        start local 6 // int mod
         5: .line 506
            aload 5 /* ica */
            aload 1 /* name */
            invokevirtual javassist.bytecode.InnerClassesAttribute.find:(Ljava/lang/String;)I
            istore 7 /* i */
        start local 7 // int i
         6: .line 507
            iload 7 /* i */
            iflt 21
         7: .line 508
            aload 5 /* ica */
            iload 7 /* i */
            invokevirtual javassist.bytecode.InnerClassesAttribute.accessFlags:(I)I
            bipush 8
            iand
            istore 8 /* isStatic */
        start local 8 // int isStatic
         8: .line 509
            iload 8 /* isStatic */
            ifne 9
            iload 0 /* newMod */
            invokestatic javassist.Modifier.isStatic:(I)Z
            ifne 21
         9: .line 510
      StackMap locals: int java.lang.String javassist.CtClass int javassist.bytecode.ClassFile javassist.bytecode.InnerClassesAttribute int int int
      StackMap stack:
            aload 2 /* clazz */
            invokevirtual javassist.CtClass.checkModify:()V
        10: .line 511
            aload 5 /* ica */
            iload 7 /* i */
            iload 6 /* mod */
            invokestatic javassist.bytecode.AccessFlag.of:(I)I
            iload 8 /* isStatic */
            ior
            invokevirtual javassist.bytecode.InnerClassesAttribute.setAccessFlags:(II)V
        11: .line 512
            aload 5 /* ica */
            iload 7 /* i */
            invokevirtual javassist.bytecode.InnerClassesAttribute.outerClass:(I)Ljava/lang/String;
            astore 9 /* outName */
        start local 9 // java.lang.String outName
        12: .line 513
            aload 9 /* outName */
            ifnull 20
            iload 3 /* outer */
            ifeq 20
        13: .line 515
            aload 2 /* clazz */
            invokevirtual javassist.CtClass.getClassPool:()Ljavassist/ClassPool;
            aload 9 /* outName */
            invokevirtual javassist.ClassPool.get:(Ljava/lang/String;)Ljavassist/CtClass;
            astore 10 /* parent */
        start local 10 // javassist.CtClass parent
        14: .line 516
            iload 6 /* mod */
            aload 1 /* name */
            aload 10 /* parent */
            iconst_0
            invokestatic javassist.CtClassType.updateInnerEntry:(ILjava/lang/String;Ljavassist/CtClass;Z)V
        end local 10 // javassist.CtClass parent
        15: .line 517
            goto 20
        16: .line 518
      StackMap locals: int java.lang.String javassist.CtClass int javassist.bytecode.ClassFile javassist.bytecode.InnerClassesAttribute int int int java.lang.String
      StackMap stack: javassist.NotFoundException
            pop
        17: .line 519
            new java.lang.RuntimeException
            dup
            new java.lang.StringBuilder
            dup
            ldc "cannot find the declaring class: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        18: .line 520
            aload 9 /* outName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        19: .line 519
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        20: .line 523
      StackMap locals:
      StackMap stack:
            return
        end local 9 // java.lang.String outName
        end local 8 // int isStatic
        end local 7 // int i
        end local 6 // int mod
        21: .line 528
      StackMap locals: int java.lang.String javassist.CtClass int javassist.bytecode.ClassFile javassist.bytecode.InnerClassesAttribute
      StackMap stack:
            iload 0 /* newMod */
            invokestatic javassist.Modifier.isStatic:(I)Z
            ifeq 25
        22: .line 529
            new java.lang.RuntimeException
            dup
            new java.lang.StringBuilder
            dup
            ldc "cannot change "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* name */
            invokestatic javassist.bytecode.Descriptor.toJavaName:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        23: .line 530
            ldc " into a static class"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        24: .line 529
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        25: .line 531
      StackMap locals:
      StackMap stack:
            return
        end local 5 // javassist.bytecode.InnerClassesAttribute ica
        end local 4 // javassist.bytecode.ClassFile cf
        end local 3 // boolean outer
        end local 2 // javassist.CtClass clazz
        end local 1 // java.lang.String name
        end local 0 // int newMod
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   26     0    newMod  I
            0   26     1      name  Ljava/lang/String;
            0   26     2     clazz  Ljavassist/CtClass;
            0   26     3     outer  Z
            1   26     4        cf  Ljavassist/bytecode/ClassFile;
            3   26     5       ica  Ljavassist/bytecode/InnerClassesAttribute;
            5   21     6       mod  I
            6   21     7         i  I
            8   21     8  isStatic  I
           12   21     9   outName  Ljava/lang/String;
           14   15    10    parent  Ljavassist/CtClass;
      Exception table:
        from    to  target  type
          13    15      16  Class javassist.NotFoundException
    MethodParameters:
        Name  Flags
      newMod  
      name    
      clazz   
      outer   

  public boolean hasAnnotation(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // javassist.CtClassType this
        start local 1 // java.lang.String annotationName
         0: .line 535
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getClassFile2:()Ljavassist/bytecode/ClassFile;
            astore 2 /* cf */
        start local 2 // javassist.bytecode.ClassFile cf
         1: .line 537
            aload 2 /* cf */
            ldc "RuntimeInvisibleAnnotations"
            invokevirtual javassist.bytecode.ClassFile.getAttribute:(Ljava/lang/String;)Ljavassist/bytecode/AttributeInfo;
         2: .line 536
            checkcast javassist.bytecode.AnnotationsAttribute
            astore 3 /* ainfo */
        start local 3 // javassist.bytecode.AnnotationsAttribute ainfo
         3: .line 539
            aload 2 /* cf */
            ldc "RuntimeVisibleAnnotations"
            invokevirtual javassist.bytecode.ClassFile.getAttribute:(Ljava/lang/String;)Ljavassist/bytecode/AttributeInfo;
         4: .line 538
            checkcast javassist.bytecode.AnnotationsAttribute
            astore 4 /* ainfo2 */
        start local 4 // javassist.bytecode.AnnotationsAttribute ainfo2
         5: .line 540
            aload 1 /* annotationName */
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getClassPool:()Ljavassist/ClassPool;
            aload 3 /* ainfo */
            aload 4 /* ainfo2 */
            invokestatic javassist.CtClassType.hasAnnotationType:(Ljava/lang/String;Ljavassist/ClassPool;Ljavassist/bytecode/AnnotationsAttribute;Ljavassist/bytecode/AnnotationsAttribute;)Z
            ireturn
        end local 4 // javassist.bytecode.AnnotationsAttribute ainfo2
        end local 3 // javassist.bytecode.AnnotationsAttribute ainfo
        end local 2 // javassist.bytecode.ClassFile cf
        end local 1 // java.lang.String annotationName
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    6     0            this  Ljavassist/CtClassType;
            0    6     1  annotationName  Ljava/lang/String;
            1    6     2              cf  Ljavassist/bytecode/ClassFile;
            3    6     3           ainfo  Ljavassist/bytecode/AnnotationsAttribute;
            5    6     4          ainfo2  Ljavassist/bytecode/AnnotationsAttribute;
    MethodParameters:
                Name  Flags
      annotationName  

  static boolean hasAnnotationType(java.lang.Class<?>, javassist.ClassPool, javassist.bytecode.AnnotationsAttribute, javassist.bytecode.AnnotationsAttribute);
    descriptor: (Ljava/lang/Class;Ljavassist/ClassPool;Ljavassist/bytecode/AnnotationsAttribute;Ljavassist/bytecode/AnnotationsAttribute;)Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // java.lang.Class clz
        start local 1 // javassist.ClassPool cp
        start local 2 // javassist.bytecode.AnnotationsAttribute a1
        start local 3 // javassist.bytecode.AnnotationsAttribute a2
         0: .line 551
            aload 0 /* clz */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            aload 1 /* cp */
            aload 2 /* a1 */
            aload 3 /* a2 */
            invokestatic javassist.CtClassType.hasAnnotationType:(Ljava/lang/String;Ljavassist/ClassPool;Ljavassist/bytecode/AnnotationsAttribute;Ljavassist/bytecode/AnnotationsAttribute;)Z
            ireturn
        end local 3 // javassist.bytecode.AnnotationsAttribute a2
        end local 2 // javassist.bytecode.AnnotationsAttribute a1
        end local 1 // javassist.ClassPool cp
        end local 0 // java.lang.Class clz
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   clz  Ljava/lang/Class<*>;
            0    1     1    cp  Ljavassist/ClassPool;
            0    1     2    a1  Ljavassist/bytecode/AnnotationsAttribute;
            0    1     3    a2  Ljavassist/bytecode/AnnotationsAttribute;
    Signature: (Ljava/lang/Class<*>;Ljavassist/ClassPool;Ljavassist/bytecode/AnnotationsAttribute;Ljavassist/bytecode/AnnotationsAttribute;)Z
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
      Name  Flags
      clz   
      cp    
      a1    
      a2    

  static boolean hasAnnotationType(java.lang.String, javassist.ClassPool, javassist.bytecode.AnnotationsAttribute, javassist.bytecode.AnnotationsAttribute);
    descriptor: (Ljava/lang/String;Ljavassist/ClassPool;Ljavassist/bytecode/AnnotationsAttribute;Ljavassist/bytecode/AnnotationsAttribute;)Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=7, args_size=4
        start local 0 // java.lang.String annotationTypeName
        start local 1 // javassist.ClassPool cp
        start local 2 // javassist.bytecode.AnnotationsAttribute a1
        start local 3 // javassist.bytecode.AnnotationsAttribute a2
         0: .line 560
            aload 2 /* a1 */
            ifnonnull 3
         1: .line 561
            aconst_null
            astore 4 /* anno1 */
        start local 4 // javassist.bytecode.annotation.Annotation[] anno1
         2: goto 4
        end local 4 // javassist.bytecode.annotation.Annotation[] anno1
         3: .line 563
      StackMap locals:
      StackMap stack:
            aload 2 /* a1 */
            invokevirtual javassist.bytecode.AnnotationsAttribute.getAnnotations:()[Ljavassist/bytecode/annotation/Annotation;
            astore 4 /* anno1 */
        start local 4 // javassist.bytecode.annotation.Annotation[] anno1
         4: .line 565
      StackMap locals: javassist.bytecode.annotation.Annotation[]
      StackMap stack:
            aload 3 /* a2 */
            ifnonnull 7
         5: .line 566
            aconst_null
            astore 5 /* anno2 */
        start local 5 // javassist.bytecode.annotation.Annotation[] anno2
         6: goto 8
        end local 5 // javassist.bytecode.annotation.Annotation[] anno2
         7: .line 568
      StackMap locals:
      StackMap stack:
            aload 3 /* a2 */
            invokevirtual javassist.bytecode.AnnotationsAttribute.getAnnotations:()[Ljavassist/bytecode/annotation/Annotation;
            astore 5 /* anno2 */
        start local 5 // javassist.bytecode.annotation.Annotation[] anno2
         8: .line 570
      StackMap locals: javassist.bytecode.annotation.Annotation[]
      StackMap stack:
            aload 4 /* anno1 */
            ifnull 15
         9: .line 571
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        10: goto 14
        11: .line 572
      StackMap locals: int
      StackMap stack:
            aload 4 /* anno1 */
            iload 6 /* i */
            aaload
            invokevirtual javassist.bytecode.annotation.Annotation.getTypeName:()Ljava/lang/String;
            aload 0 /* annotationTypeName */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 13
        12: .line 573
            iconst_1
            ireturn
        13: .line 571
      StackMap locals:
      StackMap stack:
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        14: iload 6 /* i */
            aload 4 /* anno1 */
            arraylength
            if_icmplt 11
        end local 6 // int i
        15: .line 575
      StackMap locals:
      StackMap stack:
            aload 5 /* anno2 */
            ifnull 22
        16: .line 576
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        17: goto 21
        18: .line 577
      StackMap locals: int
      StackMap stack:
            aload 5 /* anno2 */
            iload 6 /* i */
            aaload
            invokevirtual javassist.bytecode.annotation.Annotation.getTypeName:()Ljava/lang/String;
            aload 0 /* annotationTypeName */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 20
        19: .line 578
            iconst_1
            ireturn
        20: .line 576
      StackMap locals:
      StackMap stack:
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        21: iload 6 /* i */
            aload 5 /* anno2 */
            arraylength
            if_icmplt 18
        end local 6 // int i
        22: .line 580
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 5 // javassist.bytecode.annotation.Annotation[] anno2
        end local 4 // javassist.bytecode.annotation.Annotation[] anno1
        end local 3 // javassist.bytecode.AnnotationsAttribute a2
        end local 2 // javassist.bytecode.AnnotationsAttribute a1
        end local 1 // javassist.ClassPool cp
        end local 0 // java.lang.String annotationTypeName
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   23     0  annotationTypeName  Ljava/lang/String;
            0   23     1                  cp  Ljavassist/ClassPool;
            0   23     2                  a1  Ljavassist/bytecode/AnnotationsAttribute;
            0   23     3                  a2  Ljavassist/bytecode/AnnotationsAttribute;
            2    3     4               anno1  [Ljavassist/bytecode/annotation/Annotation;
            4   23     4               anno1  [Ljavassist/bytecode/annotation/Annotation;
            6    7     5               anno2  [Ljavassist/bytecode/annotation/Annotation;
            8   23     5               anno2  [Ljavassist/bytecode/annotation/Annotation;
           10   15     6                   i  I
           17   22     6                   i  I
    MethodParameters:
                    Name  Flags
      annotationTypeName  
      cp                  
      a1                  
      a2                  

  public  getAnnotation(java.lang.Class<?>);
    descriptor: (Ljava/lang/Class;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // javassist.CtClassType this
        start local 1 // java.lang.Class clz
         0: .line 585
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getClassFile2:()Ljavassist/bytecode/ClassFile;
            astore 2 /* cf */
        start local 2 // javassist.bytecode.ClassFile cf
         1: .line 587
            aload 2 /* cf */
            ldc "RuntimeInvisibleAnnotations"
            invokevirtual javassist.bytecode.ClassFile.getAttribute:(Ljava/lang/String;)Ljavassist/bytecode/AttributeInfo;
         2: .line 586
            checkcast javassist.bytecode.AnnotationsAttribute
            astore 3 /* ainfo */
        start local 3 // javassist.bytecode.AnnotationsAttribute ainfo
         3: .line 589
            aload 2 /* cf */
            ldc "RuntimeVisibleAnnotations"
            invokevirtual javassist.bytecode.ClassFile.getAttribute:(Ljava/lang/String;)Ljavassist/bytecode/AttributeInfo;
         4: .line 588
            checkcast javassist.bytecode.AnnotationsAttribute
            astore 4 /* ainfo2 */
        start local 4 // javassist.bytecode.AnnotationsAttribute ainfo2
         5: .line 590
            aload 1 /* clz */
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getClassPool:()Ljavassist/ClassPool;
            aload 3 /* ainfo */
            aload 4 /* ainfo2 */
            invokestatic javassist.CtClassType.getAnnotationType:(Ljava/lang/Class;Ljavassist/ClassPool;Ljavassist/bytecode/AnnotationsAttribute;Ljavassist/bytecode/AnnotationsAttribute;)Ljava/lang/Object;
            areturn
        end local 4 // javassist.bytecode.AnnotationsAttribute ainfo2
        end local 3 // javassist.bytecode.AnnotationsAttribute ainfo
        end local 2 // javassist.bytecode.ClassFile cf
        end local 1 // java.lang.Class clz
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Ljavassist/CtClassType;
            0    6     1     clz  Ljava/lang/Class<*>;
            1    6     2      cf  Ljavassist/bytecode/ClassFile;
            3    6     3   ainfo  Ljavassist/bytecode/AnnotationsAttribute;
            5    6     4  ainfo2  Ljavassist/bytecode/AnnotationsAttribute;
    Exceptions:
      throws java.lang.ClassNotFoundException
    Signature: (Ljava/lang/Class<*>;)Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      clz   

  static  getAnnotationType(java.lang.Class<?>, javassist.ClassPool, javassist.bytecode.AnnotationsAttribute, javassist.bytecode.AnnotationsAttribute);
    descriptor: (Ljava/lang/Class;Ljavassist/ClassPool;Ljavassist/bytecode/AnnotationsAttribute;Ljavassist/bytecode/AnnotationsAttribute;)Ljava/lang/Object;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=8, args_size=4
        start local 0 // java.lang.Class clz
        start local 1 // javassist.ClassPool cp
        start local 2 // javassist.bytecode.AnnotationsAttribute a1
        start local 3 // javassist.bytecode.AnnotationsAttribute a2
         0: .line 599
            aload 2 /* a1 */
            ifnonnull 3
         1: .line 600
            aconst_null
            astore 4 /* anno1 */
        start local 4 // javassist.bytecode.annotation.Annotation[] anno1
         2: goto 4
        end local 4 // javassist.bytecode.annotation.Annotation[] anno1
         3: .line 602
      StackMap locals:
      StackMap stack:
            aload 2 /* a1 */
            invokevirtual javassist.bytecode.AnnotationsAttribute.getAnnotations:()[Ljavassist/bytecode/annotation/Annotation;
            astore 4 /* anno1 */
        start local 4 // javassist.bytecode.annotation.Annotation[] anno1
         4: .line 604
      StackMap locals: javassist.bytecode.annotation.Annotation[]
      StackMap stack:
            aload 3 /* a2 */
            ifnonnull 7
         5: .line 605
            aconst_null
            astore 5 /* anno2 */
        start local 5 // javassist.bytecode.annotation.Annotation[] anno2
         6: goto 8
        end local 5 // javassist.bytecode.annotation.Annotation[] anno2
         7: .line 607
      StackMap locals:
      StackMap stack:
            aload 3 /* a2 */
            invokevirtual javassist.bytecode.AnnotationsAttribute.getAnnotations:()[Ljavassist/bytecode/annotation/Annotation;
            astore 5 /* anno2 */
        start local 5 // javassist.bytecode.annotation.Annotation[] anno2
         8: .line 609
      StackMap locals: javassist.bytecode.annotation.Annotation[]
      StackMap stack:
            aload 0 /* clz */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            astore 6 /* typeName */
        start local 6 // java.lang.String typeName
         9: .line 610
            aload 4 /* anno1 */
            ifnull 16
        10: .line 611
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        11: goto 15
        12: .line 612
      StackMap locals: java.lang.String int
      StackMap stack:
            aload 4 /* anno1 */
            iload 7 /* i */
            aaload
            invokevirtual javassist.bytecode.annotation.Annotation.getTypeName:()Ljava/lang/String;
            aload 6 /* typeName */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 14
        13: .line 613
            aload 4 /* anno1 */
            iload 7 /* i */
            aaload
            aload 1 /* cp */
            invokestatic javassist.CtClassType.toAnnoType:(Ljavassist/bytecode/annotation/Annotation;Ljavassist/ClassPool;)Ljava/lang/Object;
            areturn
        14: .line 611
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        15: iload 7 /* i */
            aload 4 /* anno1 */
            arraylength
            if_icmplt 12
        end local 7 // int i
        16: .line 615
      StackMap locals:
      StackMap stack:
            aload 5 /* anno2 */
            ifnull 23
        17: .line 616
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        18: goto 22
        19: .line 617
      StackMap locals: int
      StackMap stack:
            aload 5 /* anno2 */
            iload 7 /* i */
            aaload
            invokevirtual javassist.bytecode.annotation.Annotation.getTypeName:()Ljava/lang/String;
            aload 6 /* typeName */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 21
        20: .line 618
            aload 5 /* anno2 */
            iload 7 /* i */
            aaload
            aload 1 /* cp */
            invokestatic javassist.CtClassType.toAnnoType:(Ljavassist/bytecode/annotation/Annotation;Ljavassist/ClassPool;)Ljava/lang/Object;
            areturn
        21: .line 616
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        22: iload 7 /* i */
            aload 5 /* anno2 */
            arraylength
            if_icmplt 19
        end local 7 // int i
        23: .line 620
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 6 // java.lang.String typeName
        end local 5 // javassist.bytecode.annotation.Annotation[] anno2
        end local 4 // javassist.bytecode.annotation.Annotation[] anno1
        end local 3 // javassist.bytecode.AnnotationsAttribute a2
        end local 2 // javassist.bytecode.AnnotationsAttribute a1
        end local 1 // javassist.ClassPool cp
        end local 0 // java.lang.Class clz
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   24     0       clz  Ljava/lang/Class<*>;
            0   24     1        cp  Ljavassist/ClassPool;
            0   24     2        a1  Ljavassist/bytecode/AnnotationsAttribute;
            0   24     3        a2  Ljavassist/bytecode/AnnotationsAttribute;
            2    3     4     anno1  [Ljavassist/bytecode/annotation/Annotation;
            4   24     4     anno1  [Ljavassist/bytecode/annotation/Annotation;
            6    7     5     anno2  [Ljavassist/bytecode/annotation/Annotation;
            8   24     5     anno2  [Ljavassist/bytecode/annotation/Annotation;
            9   24     6  typeName  Ljava/lang/String;
           11   16     7         i  I
           18   23     7         i  I
    Exceptions:
      throws java.lang.ClassNotFoundException
    Signature: (Ljava/lang/Class<*>;Ljavassist/ClassPool;Ljavassist/bytecode/AnnotationsAttribute;Ljavassist/bytecode/AnnotationsAttribute;)Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      clz   
      cp    
      a1    
      a2    

  public java.lang.Object[] getAnnotations();
    descriptor: ()[Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // javassist.CtClassType this
         0: .line 625
            aload 0 /* this */
            iconst_0
            invokevirtual javassist.CtClassType.getAnnotations:(Z)[Ljava/lang/Object;
            areturn
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavassist/CtClassType;
    Exceptions:
      throws java.lang.ClassNotFoundException

  public java.lang.Object[] getAvailableAnnotations();
    descriptor: ()[Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // javassist.CtClassType this
         0: .line 631
            aload 0 /* this */
            iconst_1
            invokevirtual javassist.CtClassType.getAnnotations:(Z)[Ljava/lang/Object;
         1: areturn
         2: .line 633
      StackMap locals:
      StackMap stack: java.lang.ClassNotFoundException
            astore 1 /* e */
        start local 1 // java.lang.ClassNotFoundException e
         3: .line 634
            new java.lang.RuntimeException
            dup
            ldc "Unexpected exception "
            aload 1 /* e */
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 1 // java.lang.ClassNotFoundException e
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljavassist/CtClassType;
            3    4     1     e  Ljava/lang/ClassNotFoundException;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.ClassNotFoundException

  private java.lang.Object[] getAnnotations(boolean);
    descriptor: (Z)[Ljava/lang/Object;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // javassist.CtClassType this
        start local 1 // boolean ignoreNotFound
         0: .line 641
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getClassFile2:()Ljavassist/bytecode/ClassFile;
            astore 2 /* cf */
        start local 2 // javassist.bytecode.ClassFile cf
         1: .line 643
            aload 2 /* cf */
            ldc "RuntimeInvisibleAnnotations"
            invokevirtual javassist.bytecode.ClassFile.getAttribute:(Ljava/lang/String;)Ljavassist/bytecode/AttributeInfo;
         2: .line 642
            checkcast javassist.bytecode.AnnotationsAttribute
            astore 3 /* ainfo */
        start local 3 // javassist.bytecode.AnnotationsAttribute ainfo
         3: .line 645
            aload 2 /* cf */
            ldc "RuntimeVisibleAnnotations"
            invokevirtual javassist.bytecode.ClassFile.getAttribute:(Ljava/lang/String;)Ljavassist/bytecode/AttributeInfo;
         4: .line 644
            checkcast javassist.bytecode.AnnotationsAttribute
            astore 4 /* ainfo2 */
        start local 4 // javassist.bytecode.AnnotationsAttribute ainfo2
         5: .line 646
            iload 1 /* ignoreNotFound */
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getClassPool:()Ljavassist/ClassPool;
            aload 3 /* ainfo */
            aload 4 /* ainfo2 */
            invokestatic javassist.CtClassType.toAnnotationType:(ZLjavassist/ClassPool;Ljavassist/bytecode/AnnotationsAttribute;Ljavassist/bytecode/AnnotationsAttribute;)[Ljava/lang/Object;
            areturn
        end local 4 // javassist.bytecode.AnnotationsAttribute ainfo2
        end local 3 // javassist.bytecode.AnnotationsAttribute ainfo
        end local 2 // javassist.bytecode.ClassFile cf
        end local 1 // boolean ignoreNotFound
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    6     0            this  Ljavassist/CtClassType;
            0    6     1  ignoreNotFound  Z
            1    6     2              cf  Ljavassist/bytecode/ClassFile;
            3    6     3           ainfo  Ljavassist/bytecode/AnnotationsAttribute;
            5    6     4          ainfo2  Ljavassist/bytecode/AnnotationsAttribute;
    Exceptions:
      throws java.lang.ClassNotFoundException
    MethodParameters:
                Name  Flags
      ignoreNotFound  

  static java.lang.Object[] toAnnotationType(boolean, javassist.ClassPool, javassist.bytecode.AnnotationsAttribute, javassist.bytecode.AnnotationsAttribute);
    descriptor: (ZLjavassist/ClassPool;Ljavassist/bytecode/AnnotationsAttribute;Ljavassist/bytecode/AnnotationsAttribute;)[Ljava/lang/Object;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=10, args_size=4
        start local 0 // boolean ignoreNotFound
        start local 1 // javassist.ClassPool cp
        start local 2 // javassist.bytecode.AnnotationsAttribute a1
        start local 3 // javassist.bytecode.AnnotationsAttribute a2
         0: .line 656
            aload 2 /* a1 */
            ifnonnull 4
         1: .line 657
            aconst_null
            astore 4 /* anno1 */
        start local 4 // javassist.bytecode.annotation.Annotation[] anno1
         2: .line 658
            iconst_0
            istore 6 /* size1 */
        start local 6 // int size1
         3: .line 659
            goto 6
        end local 6 // int size1
        end local 4 // javassist.bytecode.annotation.Annotation[] anno1
         4: .line 661
      StackMap locals:
      StackMap stack:
            aload 2 /* a1 */
            invokevirtual javassist.bytecode.AnnotationsAttribute.getAnnotations:()[Ljavassist/bytecode/annotation/Annotation;
            astore 4 /* anno1 */
        start local 4 // javassist.bytecode.annotation.Annotation[] anno1
         5: .line 662
            aload 4 /* anno1 */
            arraylength
            istore 6 /* size1 */
        start local 6 // int size1
         6: .line 665
      StackMap locals: int javassist.ClassPool javassist.bytecode.AnnotationsAttribute javassist.bytecode.AnnotationsAttribute javassist.bytecode.annotation.Annotation[] top int
      StackMap stack:
            aload 3 /* a2 */
            ifnonnull 10
         7: .line 666
            aconst_null
            astore 5 /* anno2 */
        start local 5 // javassist.bytecode.annotation.Annotation[] anno2
         8: .line 667
            iconst_0
            istore 7 /* size2 */
        start local 7 // int size2
         9: .line 668
            goto 12
        end local 7 // int size2
        end local 5 // javassist.bytecode.annotation.Annotation[] anno2
        10: .line 670
      StackMap locals:
      StackMap stack:
            aload 3 /* a2 */
            invokevirtual javassist.bytecode.AnnotationsAttribute.getAnnotations:()[Ljavassist/bytecode/annotation/Annotation;
            astore 5 /* anno2 */
        start local 5 // javassist.bytecode.annotation.Annotation[] anno2
        11: .line 671
            aload 5 /* anno2 */
            arraylength
            istore 7 /* size2 */
        start local 7 // int size2
        12: .line 674
      StackMap locals: int javassist.ClassPool javassist.bytecode.AnnotationsAttribute javassist.bytecode.AnnotationsAttribute javassist.bytecode.annotation.Annotation[] javassist.bytecode.annotation.Annotation[] int int
      StackMap stack:
            iload 0 /* ignoreNotFound */
            ifne 25
        13: .line 675
            iload 6 /* size1 */
            iload 7 /* size2 */
            iadd
            anewarray java.lang.Object
            astore 8 /* result */
        start local 8 // java.lang.Object[] result
        14: .line 676
            iconst_0
            istore 9 /* i */
        start local 9 // int i
        15: goto 18
        16: .line 677
      StackMap locals: java.lang.Object[] int
      StackMap stack:
            aload 8 /* result */
            iload 9 /* i */
            aload 4 /* anno1 */
            iload 9 /* i */
            aaload
            aload 1 /* cp */
            invokestatic javassist.CtClassType.toAnnoType:(Ljavassist/bytecode/annotation/Annotation;Ljavassist/ClassPool;)Ljava/lang/Object;
            aastore
        17: .line 676
            iinc 9 /* i */ 1
      StackMap locals:
      StackMap stack:
        18: iload 9 /* i */
            iload 6 /* size1 */
            if_icmplt 16
        end local 9 // int i
        19: .line 679
            iconst_0
            istore 9 /* j */
        start local 9 // int j
        20: goto 23
        21: .line 680
      StackMap locals:
      StackMap stack:
            aload 8 /* result */
            iload 9 /* j */
            iload 6 /* size1 */
            iadd
            aload 5 /* anno2 */
            iload 9 /* j */
            aaload
            aload 1 /* cp */
            invokestatic javassist.CtClassType.toAnnoType:(Ljavassist/bytecode/annotation/Annotation;Ljavassist/ClassPool;)Ljava/lang/Object;
            aastore
        22: .line 679
            iinc 9 /* j */ 1
      StackMap locals:
      StackMap stack:
        23: iload 9 /* j */
            iload 7 /* size2 */
            if_icmplt 21
        end local 9 // int j
        24: .line 682
            aload 8 /* result */
            areturn
        end local 8 // java.lang.Object[] result
        25: .line 684
      StackMap locals:
      StackMap stack:
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 8 /* annotations */
        start local 8 // java.util.List annotations
        26: .line 685
            iconst_0
            istore 9 /* i */
        start local 9 // int i
        27: goto 32
        28: .line 687
      StackMap locals: java.util.List int
      StackMap stack:
            aload 8 /* annotations */
            aload 4 /* anno1 */
            iload 9 /* i */
            aaload
            aload 1 /* cp */
            invokestatic javassist.CtClassType.toAnnoType:(Ljavassist/bytecode/annotation/Annotation;Ljavassist/ClassPool;)Ljava/lang/Object;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        29: .line 688
            goto 31
        30: .line 689
      StackMap locals:
      StackMap stack: java.lang.ClassNotFoundException
            pop
        31: .line 685
      StackMap locals:
      StackMap stack:
            iinc 9 /* i */ 1
      StackMap locals:
      StackMap stack:
        32: iload 9 /* i */
            iload 6 /* size1 */
            if_icmplt 28
        end local 9 // int i
        33: .line 690
            iconst_0
            istore 9 /* j */
        start local 9 // int j
        34: goto 39
        35: .line 692
      StackMap locals:
      StackMap stack:
            aload 8 /* annotations */
            aload 5 /* anno2 */
            iload 9 /* j */
            aaload
            aload 1 /* cp */
            invokestatic javassist.CtClassType.toAnnoType:(Ljavassist/bytecode/annotation/Annotation;Ljavassist/ClassPool;)Ljava/lang/Object;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        36: .line 693
            goto 38
        37: .line 694
      StackMap locals:
      StackMap stack: java.lang.ClassNotFoundException
            pop
        38: .line 690
      StackMap locals:
      StackMap stack:
            iinc 9 /* j */ 1
      StackMap locals:
      StackMap stack:
        39: iload 9 /* j */
            iload 7 /* size2 */
            if_icmplt 35
        end local 9 // int j
        40: .line 696
            aload 8 /* annotations */
            invokeinterface java.util.List.toArray:()[Ljava/lang/Object;
            areturn
        end local 8 // java.util.List annotations
        end local 7 // int size2
        end local 6 // int size1
        end local 5 // javassist.bytecode.annotation.Annotation[] anno2
        end local 4 // javassist.bytecode.annotation.Annotation[] anno1
        end local 3 // javassist.bytecode.AnnotationsAttribute a2
        end local 2 // javassist.bytecode.AnnotationsAttribute a1
        end local 1 // javassist.ClassPool cp
        end local 0 // boolean ignoreNotFound
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   41     0  ignoreNotFound  Z
            0   41     1              cp  Ljavassist/ClassPool;
            0   41     2              a1  Ljavassist/bytecode/AnnotationsAttribute;
            0   41     3              a2  Ljavassist/bytecode/AnnotationsAttribute;
            2    4     4           anno1  [Ljavassist/bytecode/annotation/Annotation;
            5   41     4           anno1  [Ljavassist/bytecode/annotation/Annotation;
            8   10     5           anno2  [Ljavassist/bytecode/annotation/Annotation;
           11   41     5           anno2  [Ljavassist/bytecode/annotation/Annotation;
            3    4     6           size1  I
            6   41     6           size1  I
            9   10     7           size2  I
           12   41     7           size2  I
           14   25     8          result  [Ljava/lang/Object;
           15   19     9               i  I
           20   24     9               j  I
           26   41     8     annotations  Ljava/util/List<Ljava/lang/Object;>;
           27   33     9               i  I
           34   40     9               j  I
      Exception table:
        from    to  target  type
          28    29      30  Class java.lang.ClassNotFoundException
          35    36      37  Class java.lang.ClassNotFoundException
    Exceptions:
      throws java.lang.ClassNotFoundException
    MethodParameters:
                Name  Flags
      ignoreNotFound  
      cp              
      a1              
      a2              

  static java.lang.Object[][] toAnnotationType(boolean, javassist.ClassPool, javassist.bytecode.ParameterAnnotationsAttribute, javassist.bytecode.ParameterAnnotationsAttribute, javassist.bytecode.MethodInfo);
    descriptor: (ZLjavassist/ClassPool;Ljavassist/bytecode/ParameterAnnotationsAttribute;Ljavassist/bytecode/ParameterAnnotationsAttribute;Ljavassist/bytecode/MethodInfo;)[[Ljava/lang/Object;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=14, args_size=5
        start local 0 // boolean ignoreNotFound
        start local 1 // javassist.ClassPool cp
        start local 2 // javassist.bytecode.ParameterAnnotationsAttribute a1
        start local 3 // javassist.bytecode.ParameterAnnotationsAttribute a2
        start local 4 // javassist.bytecode.MethodInfo minfo
         0: .line 705
            iconst_0
            istore 5 /* numParameters */
        start local 5 // int numParameters
         1: .line 706
            aload 2 /* a1 */
            ifnull 3
         2: .line 707
            aload 2 /* a1 */
            invokevirtual javassist.bytecode.ParameterAnnotationsAttribute.numParameters:()I
            istore 5 /* numParameters */
            goto 6
         3: .line 708
      StackMap locals: int
      StackMap stack:
            aload 3 /* a2 */
            ifnull 5
         4: .line 709
            aload 3 /* a2 */
            invokevirtual javassist.bytecode.ParameterAnnotationsAttribute.numParameters:()I
            istore 5 /* numParameters */
            goto 6
         5: .line 711
      StackMap locals:
      StackMap stack:
            aload 4 /* minfo */
            invokevirtual javassist.bytecode.MethodInfo.getDescriptor:()Ljava/lang/String;
            invokestatic javassist.bytecode.Descriptor.numOfParameters:(Ljava/lang/String;)I
            istore 5 /* numParameters */
         6: .line 713
      StackMap locals:
      StackMap stack:
            iload 5 /* numParameters */
            anewarray java.lang.Object[]
            astore 6 /* result */
        start local 6 // java.lang.Object[][] result
         7: .line 714
            iconst_0
            istore 7 /* i */
        start local 7 // int i
         8: goto 51
         9: .line 718
      StackMap locals: java.lang.Object[][] int
      StackMap stack:
            aload 2 /* a1 */
            ifnonnull 13
        10: .line 719
            aconst_null
            astore 8 /* anno1 */
        start local 8 // javassist.bytecode.annotation.Annotation[] anno1
        11: .line 720
            iconst_0
            istore 10 /* size1 */
        start local 10 // int size1
        12: .line 721
            goto 15
        end local 10 // int size1
        end local 8 // javassist.bytecode.annotation.Annotation[] anno1
        13: .line 723
      StackMap locals:
      StackMap stack:
            aload 2 /* a1 */
            invokevirtual javassist.bytecode.ParameterAnnotationsAttribute.getAnnotations:()[[Ljavassist/bytecode/annotation/Annotation;
            iload 7 /* i */
            aaload
            astore 8 /* anno1 */
        start local 8 // javassist.bytecode.annotation.Annotation[] anno1
        14: .line 724
            aload 8 /* anno1 */
            arraylength
            istore 10 /* size1 */
        start local 10 // int size1
        15: .line 727
      StackMap locals: int javassist.ClassPool javassist.bytecode.ParameterAnnotationsAttribute javassist.bytecode.ParameterAnnotationsAttribute javassist.bytecode.MethodInfo int java.lang.Object[][] int javassist.bytecode.annotation.Annotation[] top int
      StackMap stack:
            aload 3 /* a2 */
            ifnonnull 19
        16: .line 728
            aconst_null
            astore 9 /* anno2 */
        start local 9 // javassist.bytecode.annotation.Annotation[] anno2
        17: .line 729
            iconst_0
            istore 11 /* size2 */
        start local 11 // int size2
        18: .line 730
            goto 21
        end local 11 // int size2
        end local 9 // javassist.bytecode.annotation.Annotation[] anno2
        19: .line 732
      StackMap locals:
      StackMap stack:
            aload 3 /* a2 */
            invokevirtual javassist.bytecode.ParameterAnnotationsAttribute.getAnnotations:()[[Ljavassist/bytecode/annotation/Annotation;
            iload 7 /* i */
            aaload
            astore 9 /* anno2 */
        start local 9 // javassist.bytecode.annotation.Annotation[] anno2
        20: .line 733
            aload 9 /* anno2 */
            arraylength
            istore 11 /* size2 */
        start local 11 // int size2
        21: .line 736
      StackMap locals: int javassist.ClassPool javassist.bytecode.ParameterAnnotationsAttribute javassist.bytecode.ParameterAnnotationsAttribute javassist.bytecode.MethodInfo int java.lang.Object[][] int javassist.bytecode.annotation.Annotation[] javassist.bytecode.annotation.Annotation[] int int
      StackMap stack:
            iload 0 /* ignoreNotFound */
            ifne 34
        22: .line 737
            aload 6 /* result */
            iload 7 /* i */
            iload 10 /* size1 */
            iload 11 /* size2 */
            iadd
            anewarray java.lang.Object
            aastore
        23: .line 738
            iconst_0
            istore 12 /* j */
        start local 12 // int j
        24: goto 27
        25: .line 739
      StackMap locals: int
      StackMap stack:
            aload 6 /* result */
            iload 7 /* i */
            aaload
            iload 12 /* j */
            aload 8 /* anno1 */
            iload 12 /* j */
            aaload
            aload 1 /* cp */
            invokestatic javassist.CtClassType.toAnnoType:(Ljavassist/bytecode/annotation/Annotation;Ljavassist/ClassPool;)Ljava/lang/Object;
            aastore
        26: .line 738
            iinc 12 /* j */ 1
      StackMap locals:
      StackMap stack:
        27: iload 12 /* j */
            iload 10 /* size1 */
            if_icmplt 25
        end local 12 // int j
        28: .line 741
            iconst_0
            istore 12 /* j */
        start local 12 // int j
        29: goto 32
        30: .line 742
      StackMap locals:
      StackMap stack:
            aload 6 /* result */
            iload 7 /* i */
            aaload
            iload 12 /* j */
            iload 10 /* size1 */
            iadd
            aload 9 /* anno2 */
            iload 12 /* j */
            aaload
            aload 1 /* cp */
            invokestatic javassist.CtClassType.toAnnoType:(Ljavassist/bytecode/annotation/Annotation;Ljavassist/ClassPool;)Ljava/lang/Object;
            aastore
        31: .line 741
            iinc 12 /* j */ 1
      StackMap locals:
      StackMap stack:
        32: iload 12 /* j */
            iload 11 /* size2 */
            if_icmplt 30
        end local 12 // int j
        33: .line 743
            goto 50
        34: .line 745
      StackMap locals:
      StackMap stack:
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 12 /* annotations */
        start local 12 // java.util.List annotations
        35: .line 746
            iconst_0
            istore 13 /* j */
        start local 13 // int j
        36: goto 41
        37: .line 748
      StackMap locals: java.util.List int
      StackMap stack:
            aload 12 /* annotations */
            aload 8 /* anno1 */
            iload 13 /* j */
            aaload
            aload 1 /* cp */
            invokestatic javassist.CtClassType.toAnnoType:(Ljavassist/bytecode/annotation/Annotation;Ljavassist/ClassPool;)Ljava/lang/Object;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        38: .line 749
            goto 40
        39: .line 750
      StackMap locals:
      StackMap stack: java.lang.ClassNotFoundException
            pop
        40: .line 746
      StackMap locals:
      StackMap stack:
            iinc 13 /* j */ 1
      StackMap locals:
      StackMap stack:
        41: iload 13 /* j */
            iload 10 /* size1 */
            if_icmplt 37
        end local 13 // int j
        42: .line 752
            iconst_0
            istore 13 /* j */
        start local 13 // int j
        43: goto 48
        44: .line 754
      StackMap locals:
      StackMap stack:
            aload 12 /* annotations */
            aload 9 /* anno2 */
            iload 13 /* j */
            aaload
            aload 1 /* cp */
            invokestatic javassist.CtClassType.toAnnoType:(Ljavassist/bytecode/annotation/Annotation;Ljavassist/ClassPool;)Ljava/lang/Object;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        45: .line 755
            goto 47
        46: .line 756
      StackMap locals:
      StackMap stack: java.lang.ClassNotFoundException
            pop
        47: .line 752
      StackMap locals:
      StackMap stack:
            iinc 13 /* j */ 1
      StackMap locals:
      StackMap stack:
        48: iload 13 /* j */
            iload 11 /* size2 */
            if_icmplt 44
        end local 13 // int j
        49: .line 759
            aload 6 /* result */
            iload 7 /* i */
            aload 12 /* annotations */
            invokeinterface java.util.List.toArray:()[Ljava/lang/Object;
            aastore
        end local 12 // java.util.List annotations
        end local 11 // int size2
        end local 10 // int size1
        end local 9 // javassist.bytecode.annotation.Annotation[] anno2
        end local 8 // javassist.bytecode.annotation.Annotation[] anno1
        50: .line 714
      StackMap locals: int javassist.ClassPool javassist.bytecode.ParameterAnnotationsAttribute javassist.bytecode.ParameterAnnotationsAttribute javassist.bytecode.MethodInfo int java.lang.Object[][] int
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        51: iload 7 /* i */
            iload 5 /* numParameters */
            if_icmplt 9
        end local 7 // int i
        52: .line 763
            aload 6 /* result */
            areturn
        end local 6 // java.lang.Object[][] result
        end local 5 // int numParameters
        end local 4 // javassist.bytecode.MethodInfo minfo
        end local 3 // javassist.bytecode.ParameterAnnotationsAttribute a2
        end local 2 // javassist.bytecode.ParameterAnnotationsAttribute a1
        end local 1 // javassist.ClassPool cp
        end local 0 // boolean ignoreNotFound
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   53     0  ignoreNotFound  Z
            0   53     1              cp  Ljavassist/ClassPool;
            0   53     2              a1  Ljavassist/bytecode/ParameterAnnotationsAttribute;
            0   53     3              a2  Ljavassist/bytecode/ParameterAnnotationsAttribute;
            0   53     4           minfo  Ljavassist/bytecode/MethodInfo;
            1   53     5   numParameters  I
            7   53     6          result  [[Ljava/lang/Object;
            8   52     7               i  I
           11   13     8           anno1  [Ljavassist/bytecode/annotation/Annotation;
           14   50     8           anno1  [Ljavassist/bytecode/annotation/Annotation;
           17   19     9           anno2  [Ljavassist/bytecode/annotation/Annotation;
           20   50     9           anno2  [Ljavassist/bytecode/annotation/Annotation;
           12   13    10           size1  I
           15   50    10           size1  I
           18   19    11           size2  I
           21   50    11           size2  I
           24   28    12               j  I
           29   33    12               j  I
           35   50    12     annotations  Ljava/util/List<Ljava/lang/Object;>;
           36   42    13               j  I
           43   49    13               j  I
      Exception table:
        from    to  target  type
          37    38      39  Class java.lang.ClassNotFoundException
          44    45      46  Class java.lang.ClassNotFoundException
    Exceptions:
      throws java.lang.ClassNotFoundException
    MethodParameters:
                Name  Flags
      ignoreNotFound  
      cp              
      a1              
      a2              
      minfo           

  private static java.lang.Object toAnnoType(javassist.bytecode.annotation.Annotation, javassist.ClassPool);
    descriptor: (Ljavassist/bytecode/annotation/Annotation;Ljavassist/ClassPool;)Ljava/lang/Object;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // javassist.bytecode.annotation.Annotation anno
        start local 1 // javassist.ClassPool cp
         0: .line 770
            aload 1 /* cp */
            invokevirtual javassist.ClassPool.getClassLoader:()Ljava/lang/ClassLoader;
            astore 2 /* cl */
        start local 2 // java.lang.ClassLoader cl
         1: .line 771
            aload 0 /* anno */
            aload 2 /* cl */
            aload 1 /* cp */
            invokevirtual javassist.bytecode.annotation.Annotation.toAnnotationType:(Ljava/lang/ClassLoader;Ljavassist/ClassPool;)Ljava/lang/Object;
         2: areturn
        end local 2 // java.lang.ClassLoader cl
         3: .line 773
      StackMap locals:
      StackMap stack: java.lang.ClassNotFoundException
            pop
         4: .line 774
            aload 1 /* cp */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
            astore 2 /* cl2 */
        start local 2 // java.lang.ClassLoader cl2
         5: .line 776
            aload 0 /* anno */
            aload 2 /* cl2 */
            aload 1 /* cp */
            invokevirtual javassist.bytecode.annotation.Annotation.toAnnotationType:(Ljava/lang/ClassLoader;Ljavassist/ClassPool;)Ljava/lang/Object;
         6: areturn
         7: .line 778
      StackMap locals: javassist.bytecode.annotation.Annotation javassist.ClassPool java.lang.ClassLoader
      StackMap stack: java.lang.ClassNotFoundException
            pop
         8: .line 780
            aload 1 /* cp */
            aload 0 /* anno */
            invokevirtual javassist.bytecode.annotation.Annotation.getTypeName:()Ljava/lang/String;
            invokevirtual javassist.ClassPool.get:(Ljava/lang/String;)Ljavassist/CtClass;
            invokevirtual javassist.CtClass.toClass:()Ljava/lang/Class;
            astore 3 /* clazz */
        start local 3 // java.lang.Class clazz
         9: .line 782
            aload 3 /* clazz */
            invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
        10: .line 783
            aload 3 /* clazz */
            aload 1 /* cp */
            aload 0 /* anno */
        11: .line 781
            invokestatic javassist.bytecode.annotation.AnnotationImpl.make:(Ljava/lang/ClassLoader;Ljava/lang/Class;Ljavassist/ClassPool;Ljavassist/bytecode/annotation/Annotation;)Ljava/lang/Object;
        12: areturn
        end local 3 // java.lang.Class clazz
        13: .line 785
      StackMap locals:
      StackMap stack: java.lang.Throwable
            pop
        14: .line 786
            new java.lang.ClassNotFoundException
            dup
            aload 0 /* anno */
            invokevirtual javassist.bytecode.annotation.Annotation.getTypeName:()Ljava/lang/String;
            invokespecial java.lang.ClassNotFoundException.<init>:(Ljava/lang/String;)V
            athrow
        end local 2 // java.lang.ClassLoader cl2
        end local 1 // javassist.ClassPool cp
        end local 0 // javassist.bytecode.annotation.Annotation anno
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   15     0   anno  Ljavassist/bytecode/annotation/Annotation;
            0   15     1     cp  Ljavassist/ClassPool;
            1    3     2     cl  Ljava/lang/ClassLoader;
            5   15     2    cl2  Ljava/lang/ClassLoader;
            9   13     3  clazz  Ljava/lang/Class<*>;
      Exception table:
        from    to  target  type
           0     2       3  Class java.lang.ClassNotFoundException
           5     6       7  Class java.lang.ClassNotFoundException
           8    12      13  Class java.lang.Throwable
    Exceptions:
      throws java.lang.ClassNotFoundException
    MethodParameters:
      Name  Flags
      anno  
      cp    

  public boolean subclassOf(javassist.CtClass);
    descriptor: (Ljavassist/CtClass;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // javassist.CtClassType this
        start local 1 // javassist.CtClass superclass
         0: .line 794
            aload 1 /* superclass */
            ifnonnull 2
         1: .line 795
            iconst_0
            ireturn
         2: .line 797
      StackMap locals:
      StackMap stack:
            aload 1 /* superclass */
            invokevirtual javassist.CtClass.getName:()Ljava/lang/String;
            astore 2 /* superName */
        start local 2 // java.lang.String superName
         3: .line 798
            aload 0 /* this */
            astore 3 /* curr */
        start local 3 // javassist.CtClass curr
         4: .line 800
            goto 8
         5: .line 801
      StackMap locals: java.lang.String javassist.CtClass
      StackMap stack:
            aload 3 /* curr */
            invokevirtual javassist.CtClass.getName:()Ljava/lang/String;
            aload 2 /* superName */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 7
         6: .line 802
            iconst_1
            ireturn
         7: .line 804
      StackMap locals:
      StackMap stack:
            aload 3 /* curr */
            invokevirtual javassist.CtClass.getSuperclass:()Ljavassist/CtClass;
            astore 3 /* curr */
         8: .line 800
      StackMap locals:
      StackMap stack:
            aload 3 /* curr */
            ifnonnull 5
         9: .line 806
            goto 11
        10: .line 807
      StackMap locals:
      StackMap stack: java.lang.Exception
            pop
        11: .line 808
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 3 // javassist.CtClass curr
        end local 2 // java.lang.String superName
        end local 1 // javassist.CtClass superclass
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   12     0        this  Ljavassist/CtClassType;
            0   12     1  superclass  Ljavassist/CtClass;
            3   12     2   superName  Ljava/lang/String;
            4   12     3        curr  Ljavassist/CtClass;
      Exception table:
        from    to  target  type
           4     6      10  Class java.lang.Exception
           7     9      10  Class java.lang.Exception
    MethodParameters:
            Name  Flags
      superclass  

  public javassist.CtClass getSuperclass();
    descriptor: ()Ljavassist/CtClass;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // javassist.CtClassType this
         0: .line 813
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getClassFile2:()Ljavassist/bytecode/ClassFile;
            invokevirtual javassist.bytecode.ClassFile.getSuperclass:()Ljava/lang/String;
            astore 1 /* supername */
        start local 1 // java.lang.String supername
         1: .line 814
            aload 1 /* supername */
            ifnonnull 3
         2: .line 815
            aconst_null
            areturn
         3: .line 816
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield javassist.CtClassType.classPool:Ljavassist/ClassPool;
            aload 1 /* supername */
            invokevirtual javassist.ClassPool.get:(Ljava/lang/String;)Ljavassist/CtClass;
            areturn
        end local 1 // java.lang.String supername
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0       this  Ljavassist/CtClassType;
            1    4     1  supername  Ljava/lang/String;
    Exceptions:
      throws javassist.NotFoundException

  public void setSuperclass(javassist.CtClass);
    descriptor: (Ljavassist/CtClass;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javassist.CtClassType this
        start local 1 // javassist.CtClass clazz
         0: .line 821
            aload 0 /* this */
            invokevirtual javassist.CtClassType.checkModify:()V
         1: .line 822
            aload 0 /* this */
            invokevirtual javassist.CtClassType.isInterface:()Z
            ifeq 3
         2: .line 823
            aload 0 /* this */
            aload 1 /* clazz */
            invokevirtual javassist.CtClassType.addInterface:(Ljavassist/CtClass;)V
            goto 4
         3: .line 825
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getClassFile2:()Ljavassist/bytecode/ClassFile;
            aload 1 /* clazz */
            invokevirtual javassist.CtClass.getName:()Ljava/lang/String;
            invokevirtual javassist.bytecode.ClassFile.setSuperclass:(Ljava/lang/String;)V
         4: .line 826
      StackMap locals:
      StackMap stack:
            return
        end local 1 // javassist.CtClass clazz
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Ljavassist/CtClassType;
            0    5     1  clazz  Ljavassist/CtClass;
    Exceptions:
      throws javassist.CannotCompileException
    MethodParameters:
       Name  Flags
      clazz  

  public javassist.CtClass[] getInterfaces();
    descriptor: ()[Ljavassist/CtClass;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=1
        start local 0 // javassist.CtClassType this
         0: .line 830
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getClassFile2:()Ljavassist/bytecode/ClassFile;
            invokevirtual javassist.bytecode.ClassFile.getInterfaces:()[Ljava/lang/String;
            astore 1 /* ifs */
        start local 1 // java.lang.String[] ifs
         1: .line 831
            aload 1 /* ifs */
            arraylength
            istore 2 /* num */
        start local 2 // int num
         2: .line 832
            iload 2 /* num */
            anewarray javassist.CtClass
            astore 3 /* ifc */
        start local 3 // javassist.CtClass[] ifc
         3: .line 833
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         4: goto 7
         5: .line 834
      StackMap locals: javassist.CtClassType java.lang.String[] int javassist.CtClass[] int
      StackMap stack:
            aload 3 /* ifc */
            iload 4 /* i */
            aload 0 /* this */
            getfield javassist.CtClassType.classPool:Ljavassist/ClassPool;
            aload 1 /* ifs */
            iload 4 /* i */
            aaload
            invokevirtual javassist.ClassPool.get:(Ljava/lang/String;)Ljavassist/CtClass;
            aastore
         6: .line 833
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 4 /* i */
            iload 2 /* num */
            if_icmplt 5
        end local 4 // int i
         8: .line 836
            aload 3 /* ifc */
            areturn
        end local 3 // javassist.CtClass[] ifc
        end local 2 // int num
        end local 1 // java.lang.String[] ifs
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Ljavassist/CtClassType;
            1    9     1   ifs  [Ljava/lang/String;
            2    9     2   num  I
            3    9     3   ifc  [Ljavassist/CtClass;
            4    8     4     i  I
    Exceptions:
      throws javassist.NotFoundException

  public void setInterfaces(javassist.CtClass[]);
    descriptor: ([Ljavassist/CtClass;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // javassist.CtClassType this
        start local 1 // javassist.CtClass[] list
         0: .line 841
            aload 0 /* this */
            invokevirtual javassist.CtClassType.checkModify:()V
         1: .line 843
            aload 1 /* list */
            ifnonnull 4
         2: .line 844
            iconst_0
            anewarray java.lang.String
            astore 2 /* ifs */
        start local 2 // java.lang.String[] ifs
         3: goto 11
        end local 2 // java.lang.String[] ifs
         4: .line 846
      StackMap locals:
      StackMap stack:
            aload 1 /* list */
            arraylength
            istore 3 /* num */
        start local 3 // int num
         5: .line 847
            iload 3 /* num */
            anewarray java.lang.String
            astore 2 /* ifs */
        start local 2 // java.lang.String[] ifs
         6: .line 848
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         7: goto 10
         8: .line 849
      StackMap locals: java.lang.String[] int int
      StackMap stack:
            aload 2 /* ifs */
            iload 4 /* i */
            aload 1 /* list */
            iload 4 /* i */
            aaload
            invokevirtual javassist.CtClass.getName:()Ljava/lang/String;
            aastore
         9: .line 848
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        10: iload 4 /* i */
            iload 3 /* num */
            if_icmplt 8
        end local 4 // int i
        end local 3 // int num
        11: .line 852
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getClassFile2:()Ljavassist/bytecode/ClassFile;
            aload 2 /* ifs */
            invokevirtual javassist.bytecode.ClassFile.setInterfaces:([Ljava/lang/String;)V
        12: .line 853
            return
        end local 2 // java.lang.String[] ifs
        end local 1 // javassist.CtClass[] list
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   13     0  this  Ljavassist/CtClassType;
            0   13     1  list  [Ljavassist/CtClass;
            3    4     2   ifs  [Ljava/lang/String;
            6   13     2   ifs  [Ljava/lang/String;
            5   11     3   num  I
            7   11     4     i  I
    MethodParameters:
      Name  Flags
      list  

  public void addInterface(javassist.CtClass);
    descriptor: (Ljavassist/CtClass;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javassist.CtClassType this
        start local 1 // javassist.CtClass anInterface
         0: .line 857
            aload 0 /* this */
            invokevirtual javassist.CtClassType.checkModify:()V
         1: .line 858
            aload 1 /* anInterface */
            ifnull 3
         2: .line 859
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getClassFile2:()Ljavassist/bytecode/ClassFile;
            aload 1 /* anInterface */
            invokevirtual javassist.CtClass.getName:()Ljava/lang/String;
            invokevirtual javassist.bytecode.ClassFile.addInterface:(Ljava/lang/String;)V
         3: .line 860
      StackMap locals:
      StackMap stack:
            return
        end local 1 // javassist.CtClass anInterface
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Ljavassist/CtClassType;
            0    4     1  anInterface  Ljavassist/CtClass;
    MethodParameters:
             Name  Flags
      anInterface  

  public javassist.CtClass getDeclaringClass();
    descriptor: ()Ljavassist/CtClass;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=8, args_size=1
        start local 0 // javassist.CtClassType this
         0: .line 864
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getClassFile2:()Ljavassist/bytecode/ClassFile;
            astore 1 /* cf */
        start local 1 // javassist.bytecode.ClassFile cf
         1: .line 865
            aload 1 /* cf */
         2: .line 866
            ldc "InnerClasses"
         3: .line 865
            invokevirtual javassist.bytecode.ClassFile.getAttribute:(Ljava/lang/String;)Ljavassist/bytecode/AttributeInfo;
            checkcast javassist.bytecode.InnerClassesAttribute
            astore 2 /* ica */
        start local 2 // javassist.bytecode.InnerClassesAttribute ica
         4: .line 867
            aload 2 /* ica */
            ifnonnull 6
         5: .line 868
            aconst_null
            areturn
         6: .line 870
      StackMap locals: javassist.bytecode.ClassFile javassist.bytecode.InnerClassesAttribute
      StackMap stack:
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getName:()Ljava/lang/String;
            astore 3 /* name */
        start local 3 // java.lang.String name
         7: .line 871
            aload 2 /* ica */
            invokevirtual javassist.bytecode.InnerClassesAttribute.tableLength:()I
            istore 4 /* n */
        start local 4 // int n
         8: .line 872
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         9: goto 21
        10: .line 873
      StackMap locals: java.lang.String int int
      StackMap stack:
            aload 3 /* name */
            aload 2 /* ica */
            iload 5 /* i */
            invokevirtual javassist.bytecode.InnerClassesAttribute.innerClass:(I)Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 20
        11: .line 874
            aload 2 /* ica */
            iload 5 /* i */
            invokevirtual javassist.bytecode.InnerClassesAttribute.outerClass:(I)Ljava/lang/String;
            astore 6 /* outName */
        start local 6 // java.lang.String outName
        12: .line 875
            aload 6 /* outName */
            ifnull 14
        13: .line 876
            aload 0 /* this */
            getfield javassist.CtClassType.classPool:Ljavassist/ClassPool;
            aload 6 /* outName */
            invokevirtual javassist.ClassPool.get:(Ljava/lang/String;)Ljavassist/CtClass;
            areturn
        14: .line 880
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* cf */
        15: .line 881
            ldc "EnclosingMethod"
        16: .line 880
            invokevirtual javassist.bytecode.ClassFile.getAttribute:(Ljava/lang/String;)Ljavassist/bytecode/AttributeInfo;
            checkcast javassist.bytecode.EnclosingMethodAttribute
        17: .line 879
            astore 7 /* ema */
        start local 7 // javassist.bytecode.EnclosingMethodAttribute ema
        18: .line 882
            aload 7 /* ema */
            ifnull 20
        19: .line 883
            aload 0 /* this */
            getfield javassist.CtClassType.classPool:Ljavassist/ClassPool;
            aload 7 /* ema */
            invokevirtual javassist.bytecode.EnclosingMethodAttribute.className:()Ljava/lang/String;
            invokevirtual javassist.ClassPool.get:(Ljava/lang/String;)Ljavassist/CtClass;
            areturn
        end local 7 // javassist.bytecode.EnclosingMethodAttribute ema
        end local 6 // java.lang.String outName
        20: .line 872
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        21: iload 5 /* i */
            iload 4 /* n */
            if_icmplt 10
        end local 5 // int i
        22: .line 887
            aconst_null
            areturn
        end local 4 // int n
        end local 3 // java.lang.String name
        end local 2 // javassist.bytecode.InnerClassesAttribute ica
        end local 1 // javassist.bytecode.ClassFile cf
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   23     0     this  Ljavassist/CtClassType;
            1   23     1       cf  Ljavassist/bytecode/ClassFile;
            4   23     2      ica  Ljavassist/bytecode/InnerClassesAttribute;
            7   23     3     name  Ljava/lang/String;
            8   23     4        n  I
            9   22     5        i  I
           12   20     6  outName  Ljava/lang/String;
           18   20     7      ema  Ljavassist/bytecode/EnclosingMethodAttribute;
    Exceptions:
      throws javassist.NotFoundException

  public javassist.CtBehavior getEnclosingBehavior();
    descriptor: ()Ljavassist/CtBehavior;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=1
        start local 0 // javassist.CtClassType this
         0: .line 893
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getClassFile2:()Ljavassist/bytecode/ClassFile;
            astore 1 /* cf */
        start local 1 // javassist.bytecode.ClassFile cf
         1: .line 895
            aload 1 /* cf */
         2: .line 896
            ldc "EnclosingMethod"
         3: .line 895
            invokevirtual javassist.bytecode.ClassFile.getAttribute:(Ljava/lang/String;)Ljavassist/bytecode/AttributeInfo;
            checkcast javassist.bytecode.EnclosingMethodAttribute
         4: .line 894
            astore 2 /* ema */
        start local 2 // javassist.bytecode.EnclosingMethodAttribute ema
         5: .line 897
            aload 2 /* ema */
            ifnonnull 7
         6: .line 898
            aconst_null
            areturn
         7: .line 899
      StackMap locals: javassist.bytecode.ClassFile javassist.bytecode.EnclosingMethodAttribute
      StackMap stack:
            aload 0 /* this */
            getfield javassist.CtClassType.classPool:Ljavassist/ClassPool;
            aload 2 /* ema */
            invokevirtual javassist.bytecode.EnclosingMethodAttribute.className:()Ljava/lang/String;
            invokevirtual javassist.ClassPool.get:(Ljava/lang/String;)Ljavassist/CtClass;
            astore 3 /* enc */
        start local 3 // javassist.CtClass enc
         8: .line 900
            aload 2 /* ema */
            invokevirtual javassist.bytecode.EnclosingMethodAttribute.methodName:()Ljava/lang/String;
            astore 4 /* name */
        start local 4 // java.lang.String name
         9: .line 901
            ldc "<init>"
            aload 4 /* name */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 11
        10: .line 902
            aload 3 /* enc */
            aload 2 /* ema */
            invokevirtual javassist.bytecode.EnclosingMethodAttribute.methodDescriptor:()Ljava/lang/String;
            invokevirtual javassist.CtClass.getConstructor:(Ljava/lang/String;)Ljavassist/CtConstructor;
            areturn
        11: .line 903
      StackMap locals: javassist.CtClass java.lang.String
      StackMap stack:
            ldc "<clinit>"
            aload 4 /* name */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 13
        12: .line 904
            aload 3 /* enc */
            invokevirtual javassist.CtClass.getClassInitializer:()Ljavassist/CtConstructor;
            areturn
        13: .line 906
      StackMap locals:
      StackMap stack:
            aload 3 /* enc */
            aload 4 /* name */
            aload 2 /* ema */
            invokevirtual javassist.bytecode.EnclosingMethodAttribute.methodDescriptor:()Ljava/lang/String;
            invokevirtual javassist.CtClass.getMethod:(Ljava/lang/String;Ljava/lang/String;)Ljavassist/CtMethod;
            areturn
        end local 4 // java.lang.String name
        end local 3 // javassist.CtClass enc
        end local 2 // javassist.bytecode.EnclosingMethodAttribute ema
        end local 1 // javassist.bytecode.ClassFile cf
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   14     0  this  Ljavassist/CtClassType;
            1   14     1    cf  Ljavassist/bytecode/ClassFile;
            5   14     2   ema  Ljavassist/bytecode/EnclosingMethodAttribute;
            8   14     3   enc  Ljavassist/CtClass;
            9   14     4  name  Ljava/lang/String;
    Exceptions:
      throws javassist.NotFoundException

  public javassist.CtClass makeNestedClass(java.lang.String, boolean);
    descriptor: (Ljava/lang/String;Z)Ljavassist/CtClass;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=7, args_size=3
        start local 0 // javassist.CtClassType this
        start local 1 // java.lang.String name
        start local 2 // boolean isStatic
         0: .line 912
            iload 2 /* isStatic */
            ifne 4
         1: .line 913
            new java.lang.RuntimeException
            dup
         2: .line 914
            ldc "sorry, only nested static class is supported"
         3: .line 913
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 916
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual javassist.CtClassType.checkModify:()V
         5: .line 917
            aload 0 /* this */
            getfield javassist.CtClassType.classPool:Ljavassist/ClassPool;
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getName:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "$"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual javassist.ClassPool.makeNestedClass:(Ljava/lang/String;)Ljavassist/CtClass;
            astore 3 /* c */
        start local 3 // javassist.CtClass c
         6: .line 918
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getClassFile2:()Ljavassist/bytecode/ClassFile;
            astore 4 /* cf */
        start local 4 // javassist.bytecode.ClassFile cf
         7: .line 919
            aload 3 /* c */
            invokevirtual javassist.CtClass.getClassFile2:()Ljavassist/bytecode/ClassFile;
            astore 5 /* cf2 */
        start local 5 // javassist.bytecode.ClassFile cf2
         8: .line 920
            aload 4 /* cf */
         9: .line 921
            ldc "InnerClasses"
        10: .line 920
            invokevirtual javassist.bytecode.ClassFile.getAttribute:(Ljava/lang/String;)Ljavassist/bytecode/AttributeInfo;
            checkcast javassist.bytecode.InnerClassesAttribute
            astore 6 /* ica */
        start local 6 // javassist.bytecode.InnerClassesAttribute ica
        11: .line 922
            aload 6 /* ica */
            ifnonnull 14
        12: .line 923
            new javassist.bytecode.InnerClassesAttribute
            dup
            aload 4 /* cf */
            invokevirtual javassist.bytecode.ClassFile.getConstPool:()Ljavassist/bytecode/ConstPool;
            invokespecial javassist.bytecode.InnerClassesAttribute.<init>:(Ljavassist/bytecode/ConstPool;)V
            astore 6 /* ica */
        13: .line 924
            aload 4 /* cf */
            aload 6 /* ica */
            invokevirtual javassist.bytecode.ClassFile.addAttribute:(Ljavassist/bytecode/AttributeInfo;)V
        14: .line 927
      StackMap locals: javassist.CtClassType java.lang.String int javassist.CtClass javassist.bytecode.ClassFile javassist.bytecode.ClassFile javassist.bytecode.InnerClassesAttribute
      StackMap stack:
            aload 6 /* ica */
            aload 3 /* c */
            invokevirtual javassist.CtClass.getName:()Ljava/lang/String;
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getName:()Ljava/lang/String;
            aload 1 /* name */
        15: .line 928
            aload 5 /* cf2 */
            invokevirtual javassist.bytecode.ClassFile.getAccessFlags:()I
            bipush -33
            iand
            bipush 8
            ior
        16: .line 927
            invokevirtual javassist.bytecode.InnerClassesAttribute.append:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V
        17: .line 929
            aload 5 /* cf2 */
            aload 6 /* ica */
            aload 5 /* cf2 */
            invokevirtual javassist.bytecode.ClassFile.getConstPool:()Ljavassist/bytecode/ConstPool;
            aconst_null
            invokevirtual javassist.bytecode.InnerClassesAttribute.copy:(Ljavassist/bytecode/ConstPool;Ljava/util/Map;)Ljavassist/bytecode/AttributeInfo;
            invokevirtual javassist.bytecode.ClassFile.addAttribute:(Ljavassist/bytecode/AttributeInfo;)V
        18: .line 930
            aload 3 /* c */
            areturn
        end local 6 // javassist.bytecode.InnerClassesAttribute ica
        end local 5 // javassist.bytecode.ClassFile cf2
        end local 4 // javassist.bytecode.ClassFile cf
        end local 3 // javassist.CtClass c
        end local 2 // boolean isStatic
        end local 1 // java.lang.String name
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   19     0      this  Ljavassist/CtClassType;
            0   19     1      name  Ljava/lang/String;
            0   19     2  isStatic  Z
            6   19     3         c  Ljavassist/CtClass;
            7   19     4        cf  Ljavassist/bytecode/ClassFile;
            8   19     5       cf2  Ljavassist/bytecode/ClassFile;
           11   19     6       ica  Ljavassist/bytecode/InnerClassesAttribute;
    MethodParameters:
          Name  Flags
      name      
      isStatic  

  private void nameReplaced();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=1
        start local 0 // javassist.CtClassType this
         0: .line 936
            aload 0 /* this */
            invokevirtual javassist.CtClassType.hasMemberCache:()Ljavassist/CtMember$Cache;
            astore 1 /* cache */
        start local 1 // javassist.CtMember$Cache cache
         1: .line 937
            aload 1 /* cache */
            ifnull 8
         2: .line 938
            aload 1 /* cache */
            invokevirtual javassist.CtMember$Cache.methodHead:()Ljavassist/CtMember;
            astore 2 /* mth */
        start local 2 // javassist.CtMember mth
         3: .line 939
            aload 1 /* cache */
            invokevirtual javassist.CtMember$Cache.lastMethod:()Ljavassist/CtMember;
            astore 3 /* tail */
        start local 3 // javassist.CtMember tail
         4: .line 940
            goto 7
         5: .line 941
      StackMap locals: javassist.CtMember$Cache javassist.CtMember javassist.CtMember
      StackMap stack:
            aload 2 /* mth */
            invokevirtual javassist.CtMember.next:()Ljavassist/CtMember;
            astore 2 /* mth */
         6: .line 942
            aload 2 /* mth */
            invokevirtual javassist.CtMember.nameReplaced:()V
         7: .line 940
      StackMap locals:
      StackMap stack:
            aload 2 /* mth */
            aload 3 /* tail */
            if_acmpne 5
        end local 3 // javassist.CtMember tail
        end local 2 // javassist.CtMember mth
         8: .line 945
      StackMap locals:
      StackMap stack:
            return
        end local 1 // javassist.CtMember$Cache cache
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    9     0   this  Ljavassist/CtClassType;
            1    9     1  cache  Ljavassist/CtMember$Cache;
            3    8     2    mth  Ljavassist/CtMember;
            4    8     3   tail  Ljavassist/CtMember;

  protected javassist.CtMember$Cache hasMemberCache();
    descriptor: ()Ljavassist/CtMember$Cache;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javassist.CtClassType this
         0: .line 951
            aload 0 /* this */
            getfield javassist.CtClassType.memberCache:Ljava/lang/ref/Reference;
            ifnull 2
         1: .line 952
            aload 0 /* this */
            getfield javassist.CtClassType.memberCache:Ljava/lang/ref/Reference;
            invokevirtual java.lang.ref.Reference.get:()Ljava/lang/Object;
            checkcast javassist.CtMember$Cache
            areturn
         2: .line 953
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljavassist/CtClassType;

  protected synchronized javassist.CtMember$Cache getMembers();
    descriptor: ()Ljavassist/CtMember$Cache;
    flags: (0x0024) ACC_PROTECTED, ACC_SYNCHRONIZED
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // javassist.CtClassType this
         0: .line 957
            aconst_null
            astore 1 /* cache */
        start local 1 // javassist.CtMember$Cache cache
         1: .line 958
            aload 0 /* this */
            getfield javassist.CtClassType.memberCache:Ljava/lang/ref/Reference;
            ifnull 3
         2: .line 959
            aload 0 /* this */
            getfield javassist.CtClassType.memberCache:Ljava/lang/ref/Reference;
            invokevirtual java.lang.ref.Reference.get:()Ljava/lang/Object;
            checkcast javassist.CtMember$Cache
            dup
            astore 1 /* cache */
            ifnonnull 7
         3: .line 960
      StackMap locals: javassist.CtMember$Cache
      StackMap stack:
            new javassist.CtMember$Cache
            dup
            aload 0 /* this */
            invokespecial javassist.CtMember$Cache.<init>:(Ljavassist/CtClassType;)V
            astore 1 /* cache */
         4: .line 961
            aload 0 /* this */
            aload 1 /* cache */
            invokevirtual javassist.CtClassType.makeFieldCache:(Ljavassist/CtMember$Cache;)V
         5: .line 962
            aload 0 /* this */
            aload 1 /* cache */
            invokevirtual javassist.CtClassType.makeBehaviorCache:(Ljavassist/CtMember$Cache;)V
         6: .line 963
            aload 0 /* this */
            new java.lang.ref.WeakReference
            dup
            aload 1 /* cache */
            invokespecial java.lang.ref.WeakReference.<init>:(Ljava/lang/Object;)V
            putfield javassist.CtClassType.memberCache:Ljava/lang/ref/Reference;
         7: .line 966
      StackMap locals:
      StackMap stack:
            aload 1 /* cache */
            areturn
        end local 1 // javassist.CtMember$Cache cache
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    8     0   this  Ljavassist/CtClassType;
            1    8     1  cache  Ljavassist/CtMember$Cache;

  private void makeFieldCache(javassist.CtMember$Cache);
    descriptor: (Ljavassist/CtMember$Cache;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=5, args_size=2
        start local 0 // javassist.CtClassType this
        start local 1 // javassist.CtMember$Cache cache
         0: .line 970
            aload 0 /* this */
            iconst_0
            invokevirtual javassist.CtClassType.getClassFile3:(Z)Ljavassist/bytecode/ClassFile;
            invokevirtual javassist.bytecode.ClassFile.getFields:()Ljava/util/List;
            astore 2 /* fields */
        start local 2 // java.util.List fields
         1: .line 971
            aload 2 /* fields */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 4
            goto 4
      StackMap locals: javassist.CtClassType javassist.CtMember$Cache java.util.List top java.util.Iterator
      StackMap stack:
         2: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javassist.bytecode.FieldInfo
            astore 3 /* finfo */
        start local 3 // javassist.bytecode.FieldInfo finfo
         3: .line 972
            aload 1 /* cache */
            new javassist.CtField
            dup
            aload 3 /* finfo */
            aload 0 /* this */
            invokespecial javassist.CtField.<init>:(Ljavassist/bytecode/FieldInfo;Ljavassist/CtClass;)V
            invokevirtual javassist.CtMember$Cache.addField:(Ljavassist/CtMember;)V
        end local 3 // javassist.bytecode.FieldInfo finfo
         4: .line 971
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         5: .line 973
            return
        end local 2 // java.util.List fields
        end local 1 // javassist.CtMember$Cache cache
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Ljavassist/CtClassType;
            0    6     1   cache  Ljavassist/CtMember$Cache;
            1    6     2  fields  Ljava/util/List<Ljavassist/bytecode/FieldInfo;>;
            3    4     3   finfo  Ljavassist/bytecode/FieldInfo;
    MethodParameters:
       Name  Flags
      cache  

  private void makeBehaviorCache(javassist.CtMember$Cache);
    descriptor: (Ljavassist/CtMember$Cache;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=5, args_size=2
        start local 0 // javassist.CtClassType this
        start local 1 // javassist.CtMember$Cache cache
         0: .line 976
            aload 0 /* this */
            iconst_0
            invokevirtual javassist.CtClassType.getClassFile3:(Z)Ljavassist/bytecode/ClassFile;
            invokevirtual javassist.bytecode.ClassFile.getMethods:()Ljava/util/List;
            astore 2 /* methods */
        start local 2 // java.util.List methods
         1: .line 977
            aload 2 /* methods */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 4
            goto 6
      StackMap locals: javassist.CtClassType javassist.CtMember$Cache java.util.List top java.util.Iterator
      StackMap stack:
         2: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javassist.bytecode.MethodInfo
            astore 3 /* minfo */
        start local 3 // javassist.bytecode.MethodInfo minfo
         3: .line 978
            aload 3 /* minfo */
            invokevirtual javassist.bytecode.MethodInfo.isMethod:()Z
            ifeq 5
         4: .line 979
            aload 1 /* cache */
            new javassist.CtMethod
            dup
            aload 3 /* minfo */
            aload 0 /* this */
            invokespecial javassist.CtMethod.<init>:(Ljavassist/bytecode/MethodInfo;Ljavassist/CtClass;)V
            invokevirtual javassist.CtMember$Cache.addMethod:(Ljavassist/CtMember;)V
            goto 6
         5: .line 981
      StackMap locals: javassist.CtClassType javassist.CtMember$Cache java.util.List javassist.bytecode.MethodInfo java.util.Iterator
      StackMap stack:
            aload 1 /* cache */
            new javassist.CtConstructor
            dup
            aload 3 /* minfo */
            aload 0 /* this */
            invokespecial javassist.CtConstructor.<init>:(Ljavassist/bytecode/MethodInfo;Ljavassist/CtClass;)V
            invokevirtual javassist.CtMember$Cache.addConstructor:(Ljavassist/CtMember;)V
        end local 3 // javassist.bytecode.MethodInfo minfo
         6: .line 977
      StackMap locals: javassist.CtClassType javassist.CtMember$Cache java.util.List top java.util.Iterator
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         7: .line 982
            return
        end local 2 // java.util.List methods
        end local 1 // javassist.CtMember$Cache cache
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0     this  Ljavassist/CtClassType;
            0    8     1    cache  Ljavassist/CtMember$Cache;
            1    8     2  methods  Ljava/util/List<Ljavassist/bytecode/MethodInfo;>;
            3    6     3    minfo  Ljavassist/bytecode/MethodInfo;
    MethodParameters:
       Name  Flags
      cache  

  public javassist.CtField[] getFields();
    descriptor: ()[Ljavassist/CtField;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // javassist.CtClassType this
         0: .line 986
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 1 /* alist */
        start local 1 // java.util.List alist
         1: .line 987
            aload 1 /* alist */
            aload 0 /* this */
            invokestatic javassist.CtClassType.getFields:(Ljava/util/List;Ljavassist/CtClass;)V
         2: .line 988
            aload 1 /* alist */
            aload 1 /* alist */
            invokeinterface java.util.List.size:()I
            anewarray javassist.CtField
            invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast javassist.CtField[]
            areturn
        end local 1 // java.util.List alist
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Ljavassist/CtClassType;
            1    3     1  alist  Ljava/util/List<Ljavassist/CtMember;>;

  private static void getFields(java.util.List<javassist.CtMember>, javassist.CtClass);
    descriptor: (Ljava/util/List;Ljavassist/CtClass;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=7, args_size=2
        start local 0 // java.util.List alist
        start local 1 // javassist.CtClass cc
         0: .line 992
            aload 1 /* cc */
            ifnonnull 2
         1: .line 993
            return
         2: .line 996
      StackMap locals:
      StackMap stack:
            aload 0 /* alist */
            aload 1 /* cc */
            invokevirtual javassist.CtClass.getSuperclass:()Ljavassist/CtClass;
            invokestatic javassist.CtClassType.getFields:(Ljava/util/List;Ljavassist/CtClass;)V
         3: .line 997
            goto 5
         4: .line 998
      StackMap locals:
      StackMap stack: javassist.NotFoundException
            pop
         5: .line 1001
      StackMap locals:
      StackMap stack:
            aload 1 /* cc */
            invokevirtual javassist.CtClass.getInterfaces:()[Ljavassist/CtClass;
            astore 2 /* ifs */
        start local 2 // javassist.CtClass[] ifs
         6: .line 1002
            aload 2 /* ifs */
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 10
      StackMap locals: java.util.List javassist.CtClass javassist.CtClass[] top int int javassist.CtClass[]
      StackMap stack:
         7: aload 6
            iload 4
            aaload
            astore 3 /* ctc */
        start local 3 // javassist.CtClass ctc
         8: .line 1003
            aload 0 /* alist */
            aload 3 /* ctc */
            invokestatic javassist.CtClassType.getFields:(Ljava/util/List;Ljavassist/CtClass;)V
        end local 3 // javassist.CtClass ctc
         9: .line 1002
            iinc 4 1
      StackMap locals:
      StackMap stack:
        10: iload 4
            iload 5
            if_icmplt 7
        end local 2 // javassist.CtClass[] ifs
        11: .line 1004
            goto 13
        12: .line 1005
      StackMap locals: java.util.List javassist.CtClass
      StackMap stack: javassist.NotFoundException
            pop
        13: .line 1007
      StackMap locals:
      StackMap stack:
            aload 1 /* cc */
            checkcast javassist.CtClassType
            invokevirtual javassist.CtClassType.getMembers:()Ljavassist/CtMember$Cache;
            astore 2 /* memCache */
        start local 2 // javassist.CtMember$Cache memCache
        14: .line 1008
            aload 2 /* memCache */
            invokevirtual javassist.CtMember$Cache.fieldHead:()Ljavassist/CtMember;
            astore 3 /* field */
        start local 3 // javassist.CtMember field
        15: .line 1009
            aload 2 /* memCache */
            invokevirtual javassist.CtMember$Cache.lastField:()Ljavassist/CtMember;
            astore 4 /* tail */
        start local 4 // javassist.CtMember tail
        16: .line 1010
            goto 20
        17: .line 1011
      StackMap locals: javassist.CtMember$Cache javassist.CtMember javassist.CtMember
      StackMap stack:
            aload 3 /* field */
            invokevirtual javassist.CtMember.next:()Ljavassist/CtMember;
            astore 3 /* field */
        18: .line 1012
            aload 3 /* field */
            invokevirtual javassist.CtMember.getModifiers:()I
            invokestatic javassist.Modifier.isPrivate:(I)Z
            ifne 20
        19: .line 1013
            aload 0 /* alist */
            aload 3 /* field */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        20: .line 1010
      StackMap locals:
      StackMap stack:
            aload 3 /* field */
            aload 4 /* tail */
            if_acmpne 17
        21: .line 1015
            return
        end local 4 // javassist.CtMember tail
        end local 3 // javassist.CtMember field
        end local 2 // javassist.CtMember$Cache memCache
        end local 1 // javassist.CtClass cc
        end local 0 // java.util.List alist
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   22     0     alist  Ljava/util/List<Ljavassist/CtMember;>;
            0   22     1        cc  Ljavassist/CtClass;
            6   11     2       ifs  [Ljavassist/CtClass;
            8    9     3       ctc  Ljavassist/CtClass;
           14   22     2  memCache  Ljavassist/CtMember$Cache;
           15   22     3     field  Ljavassist/CtMember;
           16   22     4      tail  Ljavassist/CtMember;
      Exception table:
        from    to  target  type
           2     3       4  Class javassist.NotFoundException
           5    11      12  Class javassist.NotFoundException
    Signature: (Ljava/util/List<Ljavassist/CtMember;>;Ljavassist/CtClass;)V
    MethodParameters:
       Name  Flags
      alist  
      cc     

  public javassist.CtField getField(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Ljavassist/CtField;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // javassist.CtClassType this
        start local 1 // java.lang.String name
        start local 2 // java.lang.String desc
         0: .line 1019
            aload 0 /* this */
            aload 1 /* name */
            aload 2 /* desc */
            invokevirtual javassist.CtClassType.getField2:(Ljava/lang/String;Ljava/lang/String;)Ljavassist/CtField;
            astore 3 /* f */
        start local 3 // javassist.CtField f
         1: .line 1020
            aload 0 /* this */
            aload 3 /* f */
            aload 1 /* name */
            aload 2 /* desc */
            invokevirtual javassist.CtClassType.checkGetField:(Ljavassist/CtField;Ljava/lang/String;Ljava/lang/String;)Ljavassist/CtField;
            areturn
        end local 3 // javassist.CtField f
        end local 2 // java.lang.String desc
        end local 1 // java.lang.String name
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljavassist/CtClassType;
            0    2     1  name  Ljava/lang/String;
            0    2     2  desc  Ljava/lang/String;
            1    2     3     f  Ljavassist/CtField;
    Exceptions:
      throws javassist.NotFoundException
    MethodParameters:
      Name  Flags
      name  
      desc  

  private javassist.CtField checkGetField(javassist.CtField, java.lang.String, java.lang.String);
    descriptor: (Ljavassist/CtField;Ljava/lang/String;Ljava/lang/String;)Ljavassist/CtField;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // javassist.CtClassType this
        start local 1 // javassist.CtField f
        start local 2 // java.lang.String name
        start local 3 // java.lang.String desc
         0: .line 1026
            aload 1 /* f */
            ifnonnull 5
         1: .line 1027
            new java.lang.StringBuilder
            dup
            ldc "field: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 4 /* msg */
        start local 4 // java.lang.String msg
         2: .line 1028
            aload 3 /* desc */
            ifnull 4
         3: .line 1029
            new java.lang.StringBuilder
            dup
            aload 4 /* msg */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " type "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 3 /* desc */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 4 /* msg */
         4: .line 1031
      StackMap locals: java.lang.String
      StackMap stack:
            new javassist.NotFoundException
            dup
            new java.lang.StringBuilder
            dup
            aload 4 /* msg */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " in "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial javassist.NotFoundException.<init>:(Ljava/lang/String;)V
            athrow
        end local 4 // java.lang.String msg
         5: .line 1033
      StackMap locals:
      StackMap stack:
            aload 1 /* f */
            areturn
        end local 3 // java.lang.String desc
        end local 2 // java.lang.String name
        end local 1 // javassist.CtField f
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Ljavassist/CtClassType;
            0    6     1     f  Ljavassist/CtField;
            0    6     2  name  Ljava/lang/String;
            0    6     3  desc  Ljava/lang/String;
            2    5     4   msg  Ljava/lang/String;
    Exceptions:
      throws javassist.NotFoundException
    MethodParameters:
      Name  Flags
      f     
      name  
      desc  

  javassist.CtField getField2(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Ljavassist/CtField;
    flags: (0x0000) 
    Code:
      stack=3, locals=10, args_size=3
        start local 0 // javassist.CtClassType this
        start local 1 // java.lang.String name
        start local 2 // java.lang.String desc
         0: .line 1038
            aload 0 /* this */
            aload 1 /* name */
            aload 2 /* desc */
            invokevirtual javassist.CtClassType.getDeclaredField2:(Ljava/lang/String;Ljava/lang/String;)Ljavassist/CtField;
            astore 3 /* df */
        start local 3 // javassist.CtField df
         1: .line 1039
            aload 3 /* df */
            ifnull 3
         2: .line 1040
            aload 3 /* df */
            areturn
         3: .line 1043
      StackMap locals: javassist.CtField
      StackMap stack:
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getInterfaces:()[Ljavassist/CtClass;
            astore 4 /* ifs */
        start local 4 // javassist.CtClass[] ifs
         4: .line 1044
            aload 4 /* ifs */
            dup
            astore 8
            arraylength
            istore 7
            iconst_0
            istore 6
            goto 11
      StackMap locals: javassist.CtClassType java.lang.String java.lang.String javassist.CtField javassist.CtClass[] top int int javassist.CtClass[]
      StackMap stack:
         5: aload 8
            iload 6
            aaload
            astore 5 /* ctc */
        start local 5 // javassist.CtClass ctc
         6: .line 1045
            aload 5 /* ctc */
            aload 1 /* name */
            aload 2 /* desc */
            invokevirtual javassist.CtClass.getField2:(Ljava/lang/String;Ljava/lang/String;)Ljavassist/CtField;
            astore 9 /* f */
        start local 9 // javassist.CtField f
         7: .line 1046
            aload 9 /* f */
            ifnull 10
         8: .line 1047
            aload 9 /* f */
         9: areturn
        end local 9 // javassist.CtField f
        end local 5 // javassist.CtClass ctc
        10: .line 1044
      StackMap locals:
      StackMap stack:
            iinc 6 1
      StackMap locals:
      StackMap stack:
        11: iload 6
            iload 7
            if_icmplt 5
        12: .line 1050
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getSuperclass:()Ljavassist/CtClass;
            astore 5 /* s */
        start local 5 // javassist.CtClass s
        13: .line 1051
            aload 5 /* s */
            ifnull 17
        14: .line 1052
            aload 5 /* s */
            aload 1 /* name */
            aload 2 /* desc */
            invokevirtual javassist.CtClass.getField2:(Ljava/lang/String;Ljava/lang/String;)Ljavassist/CtField;
        15: areturn
        end local 5 // javassist.CtClass s
        end local 4 // javassist.CtClass[] ifs
        16: .line 1054
      StackMap locals: javassist.CtClassType java.lang.String java.lang.String javassist.CtField
      StackMap stack: javassist.NotFoundException
            pop
        17: .line 1055
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 3 // javassist.CtField df
        end local 2 // java.lang.String desc
        end local 1 // java.lang.String name
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   18     0  this  Ljavassist/CtClassType;
            0   18     1  name  Ljava/lang/String;
            0   18     2  desc  Ljava/lang/String;
            1   18     3    df  Ljavassist/CtField;
            4   16     4   ifs  [Ljavassist/CtClass;
            6   10     5   ctc  Ljavassist/CtClass;
            7   10     9     f  Ljavassist/CtField;
           13   16     5     s  Ljavassist/CtClass;
      Exception table:
        from    to  target  type
           3     9      16  Class javassist.NotFoundException
          10    15      16  Class javassist.NotFoundException
    MethodParameters:
      Name  Flags
      name  
      desc  

  public javassist.CtField[] getDeclaredFields();
    descriptor: ()[Ljavassist/CtField;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=7, args_size=1
        start local 0 // javassist.CtClassType this
         0: .line 1060
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getMembers:()Ljavassist/CtMember$Cache;
            astore 1 /* memCache */
        start local 1 // javassist.CtMember$Cache memCache
         1: .line 1061
            aload 1 /* memCache */
            invokevirtual javassist.CtMember$Cache.fieldHead:()Ljavassist/CtMember;
            astore 2 /* field */
        start local 2 // javassist.CtMember field
         2: .line 1062
            aload 1 /* memCache */
            invokevirtual javassist.CtMember$Cache.lastField:()Ljavassist/CtMember;
            astore 3 /* tail */
        start local 3 // javassist.CtMember tail
         3: .line 1063
            aload 2 /* field */
            aload 3 /* tail */
            invokestatic javassist.CtMember$Cache.count:(Ljavassist/CtMember;Ljavassist/CtMember;)I
            istore 4 /* num */
        start local 4 // int num
         4: .line 1064
            iload 4 /* num */
            anewarray javassist.CtField
            astore 5 /* cfs */
        start local 5 // javassist.CtField[] cfs
         5: .line 1065
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         6: .line 1066
            goto 9
         7: .line 1067
      StackMap locals: javassist.CtClassType javassist.CtMember$Cache javassist.CtMember javassist.CtMember int javassist.CtField[] int
      StackMap stack:
            aload 2 /* field */
            invokevirtual javassist.CtMember.next:()Ljavassist/CtMember;
            astore 2 /* field */
         8: .line 1068
            aload 5 /* cfs */
            iload 6 /* i */
            iinc 6 /* i */ 1
            aload 2 /* field */
            checkcast javassist.CtField
            aastore
         9: .line 1066
      StackMap locals:
      StackMap stack:
            aload 2 /* field */
            aload 3 /* tail */
            if_acmpne 7
        10: .line 1071
            aload 5 /* cfs */
            areturn
        end local 6 // int i
        end local 5 // javassist.CtField[] cfs
        end local 4 // int num
        end local 3 // javassist.CtMember tail
        end local 2 // javassist.CtMember field
        end local 1 // javassist.CtMember$Cache memCache
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   11     0      this  Ljavassist/CtClassType;
            1   11     1  memCache  Ljavassist/CtMember$Cache;
            2   11     2     field  Ljavassist/CtMember;
            3   11     3      tail  Ljavassist/CtMember;
            4   11     4       num  I
            5   11     5       cfs  [Ljavassist/CtField;
            6   11     6         i  I

  public javassist.CtField getDeclaredField(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljavassist/CtField;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // javassist.CtClassType this
        start local 1 // java.lang.String name
         0: .line 1076
            aload 0 /* this */
            aload 1 /* name */
            aconst_null
            invokevirtual javassist.CtClassType.getDeclaredField:(Ljava/lang/String;Ljava/lang/String;)Ljavassist/CtField;
            areturn
        end local 1 // java.lang.String name
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavassist/CtClassType;
            0    1     1  name  Ljava/lang/String;
    Exceptions:
      throws javassist.NotFoundException
    MethodParameters:
      Name  Flags
      name  

  public javassist.CtField getDeclaredField(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Ljavassist/CtField;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // javassist.CtClassType this
        start local 1 // java.lang.String name
        start local 2 // java.lang.String desc
         0: .line 1081
            aload 0 /* this */
            aload 1 /* name */
            aload 2 /* desc */
            invokevirtual javassist.CtClassType.getDeclaredField2:(Ljava/lang/String;Ljava/lang/String;)Ljavassist/CtField;
            astore 3 /* f */
        start local 3 // javassist.CtField f
         1: .line 1082
            aload 0 /* this */
            aload 3 /* f */
            aload 1 /* name */
            aload 2 /* desc */
            invokevirtual javassist.CtClassType.checkGetField:(Ljavassist/CtField;Ljava/lang/String;Ljava/lang/String;)Ljavassist/CtField;
            areturn
        end local 3 // javassist.CtField f
        end local 2 // java.lang.String desc
        end local 1 // java.lang.String name
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljavassist/CtClassType;
            0    2     1  name  Ljava/lang/String;
            0    2     2  desc  Ljava/lang/String;
            1    2     3     f  Ljavassist/CtField;
    Exceptions:
      throws javassist.NotFoundException
    MethodParameters:
      Name  Flags
      name  
      desc  

  private javassist.CtField getDeclaredField2(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Ljavassist/CtField;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=6, args_size=3
        start local 0 // javassist.CtClassType this
        start local 1 // java.lang.String name
        start local 2 // java.lang.String desc
         0: .line 1086
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getMembers:()Ljavassist/CtMember$Cache;
            astore 3 /* memCache */
        start local 3 // javassist.CtMember$Cache memCache
         1: .line 1087
            aload 3 /* memCache */
            invokevirtual javassist.CtMember$Cache.fieldHead:()Ljavassist/CtMember;
            astore 4 /* field */
        start local 4 // javassist.CtMember field
         2: .line 1088
            aload 3 /* memCache */
            invokevirtual javassist.CtMember$Cache.lastField:()Ljavassist/CtMember;
            astore 5 /* tail */
        start local 5 // javassist.CtMember tail
         3: .line 1089
            goto 8
         4: .line 1090
      StackMap locals: javassist.CtMember$Cache javassist.CtMember javassist.CtMember
      StackMap stack:
            aload 4 /* field */
            invokevirtual javassist.CtMember.next:()Ljavassist/CtMember;
            astore 4 /* field */
         5: .line 1091
            aload 4 /* field */
            invokevirtual javassist.CtMember.getName:()Ljava/lang/String;
            aload 1 /* name */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 8
         6: .line 1092
            aload 2 /* desc */
            ifnull 7
            aload 2 /* desc */
            aload 4 /* field */
            invokevirtual javassist.CtMember.getSignature:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 8
         7: .line 1093
      StackMap locals:
      StackMap stack:
            aload 4 /* field */
            checkcast javassist.CtField
            areturn
         8: .line 1089
      StackMap locals:
      StackMap stack:
            aload 4 /* field */
            aload 5 /* tail */
            if_acmpne 4
         9: .line 1096
            aconst_null
            areturn
        end local 5 // javassist.CtMember tail
        end local 4 // javassist.CtMember field
        end local 3 // javassist.CtMember$Cache memCache
        end local 2 // java.lang.String desc
        end local 1 // java.lang.String name
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   10     0      this  Ljavassist/CtClassType;
            0   10     1      name  Ljava/lang/String;
            0   10     2      desc  Ljava/lang/String;
            1   10     3  memCache  Ljavassist/CtMember$Cache;
            2   10     4     field  Ljavassist/CtMember;
            3   10     5      tail  Ljavassist/CtMember;
    MethodParameters:
      Name  Flags
      name  
      desc  

  public javassist.CtBehavior[] getDeclaredBehaviors();
    descriptor: ()[Ljavassist/CtBehavior;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=10, args_size=1
        start local 0 // javassist.CtClassType this
         0: .line 1101
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getMembers:()Ljavassist/CtMember$Cache;
            astore 1 /* memCache */
        start local 1 // javassist.CtMember$Cache memCache
         1: .line 1102
            aload 1 /* memCache */
            invokevirtual javassist.CtMember$Cache.consHead:()Ljavassist/CtMember;
            astore 2 /* cons */
        start local 2 // javassist.CtMember cons
         2: .line 1103
            aload 1 /* memCache */
            invokevirtual javassist.CtMember$Cache.lastCons:()Ljavassist/CtMember;
            astore 3 /* consTail */
        start local 3 // javassist.CtMember consTail
         3: .line 1104
            aload 2 /* cons */
            aload 3 /* consTail */
            invokestatic javassist.CtMember$Cache.count:(Ljavassist/CtMember;Ljavassist/CtMember;)I
            istore 4 /* cnum */
        start local 4 // int cnum
         4: .line 1105
            aload 1 /* memCache */
            invokevirtual javassist.CtMember$Cache.methodHead:()Ljavassist/CtMember;
            astore 5 /* mth */
        start local 5 // javassist.CtMember mth
         5: .line 1106
            aload 1 /* memCache */
            invokevirtual javassist.CtMember$Cache.lastMethod:()Ljavassist/CtMember;
            astore 6 /* mthTail */
        start local 6 // javassist.CtMember mthTail
         6: .line 1107
            aload 5 /* mth */
            aload 6 /* mthTail */
            invokestatic javassist.CtMember$Cache.count:(Ljavassist/CtMember;Ljavassist/CtMember;)I
            istore 7 /* mnum */
        start local 7 // int mnum
         7: .line 1109
            iload 4 /* cnum */
            iload 7 /* mnum */
            iadd
            anewarray javassist.CtBehavior
            astore 8 /* cb */
        start local 8 // javassist.CtBehavior[] cb
         8: .line 1110
            iconst_0
            istore 9 /* i */
        start local 9 // int i
         9: .line 1111
            goto 12
        10: .line 1112
      StackMap locals: javassist.CtClassType javassist.CtMember$Cache javassist.CtMember javassist.CtMember int javassist.CtMember javassist.CtMember int javassist.CtBehavior[] int
      StackMap stack:
            aload 2 /* cons */
            invokevirtual javassist.CtMember.next:()Ljavassist/CtMember;
            astore 2 /* cons */
        11: .line 1113
            aload 8 /* cb */
            iload 9 /* i */
            iinc 9 /* i */ 1
            aload 2 /* cons */
            checkcast javassist.CtBehavior
            aastore
        12: .line 1111
      StackMap locals:
      StackMap stack:
            aload 2 /* cons */
            aload 3 /* consTail */
            if_acmpne 10
        13: .line 1116
            goto 16
        14: .line 1117
      StackMap locals:
      StackMap stack:
            aload 5 /* mth */
            invokevirtual javassist.CtMember.next:()Ljavassist/CtMember;
            astore 5 /* mth */
        15: .line 1118
            aload 8 /* cb */
            iload 9 /* i */
            iinc 9 /* i */ 1
            aload 5 /* mth */
            checkcast javassist.CtBehavior
            aastore
        16: .line 1116
      StackMap locals:
      StackMap stack:
            aload 5 /* mth */
            aload 6 /* mthTail */
            if_acmpne 14
        17: .line 1121
            aload 8 /* cb */
            areturn
        end local 9 // int i
        end local 8 // javassist.CtBehavior[] cb
        end local 7 // int mnum
        end local 6 // javassist.CtMember mthTail
        end local 5 // javassist.CtMember mth
        end local 4 // int cnum
        end local 3 // javassist.CtMember consTail
        end local 2 // javassist.CtMember cons
        end local 1 // javassist.CtMember$Cache memCache
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   18     0      this  Ljavassist/CtClassType;
            1   18     1  memCache  Ljavassist/CtMember$Cache;
            2   18     2      cons  Ljavassist/CtMember;
            3   18     3  consTail  Ljavassist/CtMember;
            4   18     4      cnum  I
            5   18     5       mth  Ljavassist/CtMember;
            6   18     6   mthTail  Ljavassist/CtMember;
            7   18     7      mnum  I
            8   18     8        cb  [Ljavassist/CtBehavior;
            9   18     9         i  I

  public javassist.CtConstructor[] getConstructors();
    descriptor: ()[Ljavassist/CtConstructor;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=9, args_size=1
        start local 0 // javassist.CtClassType this
         0: .line 1126
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getMembers:()Ljavassist/CtMember$Cache;
            astore 1 /* memCache */
        start local 1 // javassist.CtMember$Cache memCache
         1: .line 1127
            aload 1 /* memCache */
            invokevirtual javassist.CtMember$Cache.consHead:()Ljavassist/CtMember;
            astore 2 /* cons */
        start local 2 // javassist.CtMember cons
         2: .line 1128
            aload 1 /* memCache */
            invokevirtual javassist.CtMember$Cache.lastCons:()Ljavassist/CtMember;
            astore 3 /* consTail */
        start local 3 // javassist.CtMember consTail
         3: .line 1130
            iconst_0
            istore 4 /* n */
        start local 4 // int n
         4: .line 1131
            aload 2 /* cons */
            astore 5 /* mem */
        start local 5 // javassist.CtMember mem
         5: .line 1132
            goto 9
         6: .line 1133
      StackMap locals: javassist.CtClassType javassist.CtMember$Cache javassist.CtMember javassist.CtMember int javassist.CtMember
      StackMap stack:
            aload 5 /* mem */
            invokevirtual javassist.CtMember.next:()Ljavassist/CtMember;
            astore 5 /* mem */
         7: .line 1134
            aload 5 /* mem */
            checkcast javassist.CtConstructor
            invokestatic javassist.CtClassType.isPubCons:(Ljavassist/CtConstructor;)Z
            ifeq 9
         8: .line 1135
            iinc 4 /* n */ 1
         9: .line 1132
      StackMap locals:
      StackMap stack:
            aload 5 /* mem */
            aload 3 /* consTail */
            if_acmpne 6
        10: .line 1138
            iload 4 /* n */
            anewarray javassist.CtConstructor
            astore 6 /* result */
        start local 6 // javassist.CtConstructor[] result
        11: .line 1139
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        12: .line 1140
            aload 2 /* cons */
            astore 5 /* mem */
        13: .line 1141
            goto 18
        14: .line 1142
      StackMap locals: javassist.CtConstructor[] int
      StackMap stack:
            aload 5 /* mem */
            invokevirtual javassist.CtMember.next:()Ljavassist/CtMember;
            astore 5 /* mem */
        15: .line 1143
            aload 5 /* mem */
            checkcast javassist.CtConstructor
            astore 8 /* cc */
        start local 8 // javassist.CtConstructor cc
        16: .line 1144
            aload 8 /* cc */
            invokestatic javassist.CtClassType.isPubCons:(Ljavassist/CtConstructor;)Z
            ifeq 18
        17: .line 1145
            aload 6 /* result */
            iload 7 /* i */
            iinc 7 /* i */ 1
            aload 8 /* cc */
            aastore
        end local 8 // javassist.CtConstructor cc
        18: .line 1141
      StackMap locals:
      StackMap stack:
            aload 5 /* mem */
            aload 3 /* consTail */
            if_acmpne 14
        19: .line 1148
            aload 6 /* result */
            areturn
        end local 7 // int i
        end local 6 // javassist.CtConstructor[] result
        end local 5 // javassist.CtMember mem
        end local 4 // int n
        end local 3 // javassist.CtMember consTail
        end local 2 // javassist.CtMember cons
        end local 1 // javassist.CtMember$Cache memCache
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   20     0      this  Ljavassist/CtClassType;
            1   20     1  memCache  Ljavassist/CtMember$Cache;
            2   20     2      cons  Ljavassist/CtMember;
            3   20     3  consTail  Ljavassist/CtMember;
            4   20     4         n  I
            5   20     5       mem  Ljavassist/CtMember;
           11   20     6    result  [Ljavassist/CtConstructor;
           12   20     7         i  I
           16   18     8        cc  Ljavassist/CtConstructor;

  private static boolean isPubCons(javassist.CtConstructor);
    descriptor: (Ljavassist/CtConstructor;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javassist.CtConstructor cons
         0: .line 1152
            aload 0 /* cons */
            invokevirtual javassist.CtConstructor.getModifiers:()I
            invokestatic javassist.Modifier.isPrivate:(I)Z
            ifne 3
         1: .line 1153
            aload 0 /* cons */
            invokevirtual javassist.CtConstructor.isConstructor:()Z
            ifeq 3
         2: .line 1152
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         3: iconst_0
            ireturn
        end local 0 // javassist.CtConstructor cons
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  cons  Ljavassist/CtConstructor;
    MethodParameters:
      Name  Flags
      cons  

  public javassist.CtConstructor getConstructor(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljavassist/CtConstructor;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=6, args_size=2
        start local 0 // javassist.CtClassType this
        start local 1 // java.lang.String desc
         0: .line 1160
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getMembers:()Ljavassist/CtMember$Cache;
            astore 2 /* memCache */
        start local 2 // javassist.CtMember$Cache memCache
         1: .line 1161
            aload 2 /* memCache */
            invokevirtual javassist.CtMember$Cache.consHead:()Ljavassist/CtMember;
            astore 3 /* cons */
        start local 3 // javassist.CtMember cons
         2: .line 1162
            aload 2 /* memCache */
            invokevirtual javassist.CtMember$Cache.lastCons:()Ljavassist/CtMember;
            astore 4 /* consTail */
        start local 4 // javassist.CtMember consTail
         3: .line 1164
            goto 9
         4: .line 1165
      StackMap locals: javassist.CtMember$Cache javassist.CtMember javassist.CtMember
      StackMap stack:
            aload 3 /* cons */
            invokevirtual javassist.CtMember.next:()Ljavassist/CtMember;
            astore 3 /* cons */
         5: .line 1166
            aload 3 /* cons */
            checkcast javassist.CtConstructor
            astore 5 /* cc */
        start local 5 // javassist.CtConstructor cc
         6: .line 1167
            aload 5 /* cc */
            invokevirtual javassist.CtConstructor.getMethodInfo2:()Ljavassist/bytecode/MethodInfo;
            invokevirtual javassist.bytecode.MethodInfo.getDescriptor:()Ljava/lang/String;
            aload 1 /* desc */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 9
         7: .line 1168
            aload 5 /* cc */
            invokevirtual javassist.CtConstructor.isConstructor:()Z
            ifeq 9
         8: .line 1169
            aload 5 /* cc */
            areturn
        end local 5 // javassist.CtConstructor cc
         9: .line 1164
      StackMap locals:
      StackMap stack:
            aload 3 /* cons */
            aload 4 /* consTail */
            if_acmpne 4
        10: .line 1172
            aload 0 /* this */
            aload 1 /* desc */
            invokespecial javassist.CtClass.getConstructor:(Ljava/lang/String;)Ljavassist/CtConstructor;
            areturn
        end local 4 // javassist.CtMember consTail
        end local 3 // javassist.CtMember cons
        end local 2 // javassist.CtMember$Cache memCache
        end local 1 // java.lang.String desc
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   11     0      this  Ljavassist/CtClassType;
            0   11     1      desc  Ljava/lang/String;
            1   11     2  memCache  Ljavassist/CtMember$Cache;
            2   11     3      cons  Ljavassist/CtMember;
            3   11     4  consTail  Ljavassist/CtMember;
            6    9     5        cc  Ljavassist/CtConstructor;
    Exceptions:
      throws javassist.NotFoundException
    MethodParameters:
      Name  Flags
      desc  

  public javassist.CtConstructor[] getDeclaredConstructors();
    descriptor: ()[Ljavassist/CtConstructor;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=9, args_size=1
        start local 0 // javassist.CtClassType this
         0: .line 1177
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getMembers:()Ljavassist/CtMember$Cache;
            astore 1 /* memCache */
        start local 1 // javassist.CtMember$Cache memCache
         1: .line 1178
            aload 1 /* memCache */
            invokevirtual javassist.CtMember$Cache.consHead:()Ljavassist/CtMember;
            astore 2 /* cons */
        start local 2 // javassist.CtMember cons
         2: .line 1179
            aload 1 /* memCache */
            invokevirtual javassist.CtMember$Cache.lastCons:()Ljavassist/CtMember;
            astore 3 /* consTail */
        start local 3 // javassist.CtMember consTail
         3: .line 1181
            iconst_0
            istore 4 /* n */
        start local 4 // int n
         4: .line 1182
            aload 2 /* cons */
            astore 5 /* mem */
        start local 5 // javassist.CtMember mem
         5: .line 1183
            goto 10
         6: .line 1184
      StackMap locals: javassist.CtClassType javassist.CtMember$Cache javassist.CtMember javassist.CtMember int javassist.CtMember
      StackMap stack:
            aload 5 /* mem */
            invokevirtual javassist.CtMember.next:()Ljavassist/CtMember;
            astore 5 /* mem */
         7: .line 1185
            aload 5 /* mem */
            checkcast javassist.CtConstructor
            astore 6 /* cc */
        start local 6 // javassist.CtConstructor cc
         8: .line 1186
            aload 6 /* cc */
            invokevirtual javassist.CtConstructor.isConstructor:()Z
            ifeq 10
         9: .line 1187
            iinc 4 /* n */ 1
        end local 6 // javassist.CtConstructor cc
        10: .line 1183
      StackMap locals:
      StackMap stack:
            aload 5 /* mem */
            aload 3 /* consTail */
            if_acmpne 6
        11: .line 1190
            iload 4 /* n */
            anewarray javassist.CtConstructor
            astore 6 /* result */
        start local 6 // javassist.CtConstructor[] result
        12: .line 1191
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        13: .line 1192
            aload 2 /* cons */
            astore 5 /* mem */
        14: .line 1193
            goto 19
        15: .line 1194
      StackMap locals: javassist.CtConstructor[] int
      StackMap stack:
            aload 5 /* mem */
            invokevirtual javassist.CtMember.next:()Ljavassist/CtMember;
            astore 5 /* mem */
        16: .line 1195
            aload 5 /* mem */
            checkcast javassist.CtConstructor
            astore 8 /* cc */
        start local 8 // javassist.CtConstructor cc
        17: .line 1196
            aload 8 /* cc */
            invokevirtual javassist.CtConstructor.isConstructor:()Z
            ifeq 19
        18: .line 1197
            aload 6 /* result */
            iload 7 /* i */
            iinc 7 /* i */ 1
            aload 8 /* cc */
            aastore
        end local 8 // javassist.CtConstructor cc
        19: .line 1193
      StackMap locals:
      StackMap stack:
            aload 5 /* mem */
            aload 3 /* consTail */
            if_acmpne 15
        20: .line 1200
            aload 6 /* result */
            areturn
        end local 7 // int i
        end local 6 // javassist.CtConstructor[] result
        end local 5 // javassist.CtMember mem
        end local 4 // int n
        end local 3 // javassist.CtMember consTail
        end local 2 // javassist.CtMember cons
        end local 1 // javassist.CtMember$Cache memCache
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   21     0      this  Ljavassist/CtClassType;
            1   21     1  memCache  Ljavassist/CtMember$Cache;
            2   21     2      cons  Ljavassist/CtMember;
            3   21     3  consTail  Ljavassist/CtMember;
            4   21     4         n  I
            5   21     5       mem  Ljavassist/CtMember;
            8   10     6        cc  Ljavassist/CtConstructor;
           12   21     6    result  [Ljavassist/CtConstructor;
           13   21     7         i  I
           17   19     8        cc  Ljavassist/CtConstructor;

  public javassist.CtConstructor getClassInitializer();
    descriptor: ()Ljavassist/CtConstructor;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=5, args_size=1
        start local 0 // javassist.CtClassType this
         0: .line 1205
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getMembers:()Ljavassist/CtMember$Cache;
            astore 1 /* memCache */
        start local 1 // javassist.CtMember$Cache memCache
         1: .line 1206
            aload 1 /* memCache */
            invokevirtual javassist.CtMember$Cache.consHead:()Ljavassist/CtMember;
            astore 2 /* cons */
        start local 2 // javassist.CtMember cons
         2: .line 1207
            aload 1 /* memCache */
            invokevirtual javassist.CtMember$Cache.lastCons:()Ljavassist/CtMember;
            astore 3 /* consTail */
        start local 3 // javassist.CtMember consTail
         3: .line 1209
            goto 8
         4: .line 1210
      StackMap locals: javassist.CtMember$Cache javassist.CtMember javassist.CtMember
      StackMap stack:
            aload 2 /* cons */
            invokevirtual javassist.CtMember.next:()Ljavassist/CtMember;
            astore 2 /* cons */
         5: .line 1211
            aload 2 /* cons */
            checkcast javassist.CtConstructor
            astore 4 /* cc */
        start local 4 // javassist.CtConstructor cc
         6: .line 1212
            aload 4 /* cc */
            invokevirtual javassist.CtConstructor.isClassInitializer:()Z
            ifeq 8
         7: .line 1213
            aload 4 /* cc */
            areturn
        end local 4 // javassist.CtConstructor cc
         8: .line 1209
      StackMap locals:
      StackMap stack:
            aload 2 /* cons */
            aload 3 /* consTail */
            if_acmpne 4
         9: .line 1216
            aconst_null
            areturn
        end local 3 // javassist.CtMember consTail
        end local 2 // javassist.CtMember cons
        end local 1 // javassist.CtMember$Cache memCache
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   10     0      this  Ljavassist/CtClassType;
            1   10     1  memCache  Ljavassist/CtMember$Cache;
            2   10     2      cons  Ljavassist/CtMember;
            3   10     3  consTail  Ljavassist/CtMember;
            6    8     4        cc  Ljavassist/CtConstructor;

  public javassist.CtMethod[] getMethods();
    descriptor: ()[Ljavassist/CtMethod;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // javassist.CtClassType this
         0: .line 1221
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 1 /* h */
        start local 1 // java.util.Map h
         1: .line 1222
            aload 1 /* h */
            aload 0 /* this */
            invokestatic javassist.CtClassType.getMethods0:(Ljava/util/Map;Ljavassist/CtClass;)V
         2: .line 1223
            aload 1 /* h */
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            aload 1 /* h */
            invokeinterface java.util.Map.size:()I
            anewarray javassist.CtMethod
            invokeinterface java.util.Collection.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast javassist.CtMethod[]
            areturn
        end local 1 // java.util.Map h
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljavassist/CtClassType;
            1    3     1     h  Ljava/util/Map<Ljava/lang/String;Ljavassist/CtMember;>;

  private static void getMethods0(java.util.Map<java.lang.String, javassist.CtMember>, javassist.CtClass);
    descriptor: (Ljava/util/Map;Ljavassist/CtClass;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=7, args_size=2
        start local 0 // java.util.Map h
        start local 1 // javassist.CtClass cc
         0: .line 1228
            aload 1 /* cc */
            invokevirtual javassist.CtClass.getInterfaces:()[Ljavassist/CtClass;
            astore 2 /* ifs */
        start local 2 // javassist.CtClass[] ifs
         1: .line 1229
            aload 2 /* ifs */
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 5
      StackMap locals: java.util.Map javassist.CtClass javassist.CtClass[] top int int javassist.CtClass[]
      StackMap stack:
         2: aload 6
            iload 4
            aaload
            astore 3 /* ctc */
        start local 3 // javassist.CtClass ctc
         3: .line 1230
            aload 0 /* h */
            aload 3 /* ctc */
            invokestatic javassist.CtClassType.getMethods0:(Ljava/util/Map;Ljavassist/CtClass;)V
        end local 3 // javassist.CtClass ctc
         4: .line 1229
            iinc 4 1
      StackMap locals:
      StackMap stack:
         5: iload 4
            iload 5
            if_icmplt 2
        end local 2 // javassist.CtClass[] ifs
         6: .line 1231
            goto 8
         7: .line 1232
      StackMap locals: java.util.Map javassist.CtClass
      StackMap stack: javassist.NotFoundException
            pop
         8: .line 1235
      StackMap locals:
      StackMap stack:
            aload 1 /* cc */
            invokevirtual javassist.CtClass.getSuperclass:()Ljavassist/CtClass;
            astore 2 /* s */
        start local 2 // javassist.CtClass s
         9: .line 1236
            aload 2 /* s */
            ifnull 13
        10: .line 1237
            aload 0 /* h */
            aload 2 /* s */
            invokestatic javassist.CtClassType.getMethods0:(Ljava/util/Map;Ljavassist/CtClass;)V
        end local 2 // javassist.CtClass s
        11: .line 1238
            goto 13
        12: .line 1239
      StackMap locals:
      StackMap stack: javassist.NotFoundException
            pop
        13: .line 1241
      StackMap locals:
      StackMap stack:
            aload 1 /* cc */
            instanceof javassist.CtClassType
            ifeq 22
        14: .line 1242
            aload 1 /* cc */
            checkcast javassist.CtClassType
            invokevirtual javassist.CtClassType.getMembers:()Ljavassist/CtMember$Cache;
            astore 2 /* memCache */
        start local 2 // javassist.CtMember$Cache memCache
        15: .line 1243
            aload 2 /* memCache */
            invokevirtual javassist.CtMember$Cache.methodHead:()Ljavassist/CtMember;
            astore 3 /* mth */
        start local 3 // javassist.CtMember mth
        16: .line 1244
            aload 2 /* memCache */
            invokevirtual javassist.CtMember$Cache.lastMethod:()Ljavassist/CtMember;
            astore 4 /* mthTail */
        start local 4 // javassist.CtMember mthTail
        17: .line 1246
            goto 21
        18: .line 1247
      StackMap locals: javassist.CtMember$Cache javassist.CtMember javassist.CtMember
      StackMap stack:
            aload 3 /* mth */
            invokevirtual javassist.CtMember.next:()Ljavassist/CtMember;
            astore 3 /* mth */
        19: .line 1248
            aload 3 /* mth */
            invokevirtual javassist.CtMember.getModifiers:()I
            invokestatic javassist.Modifier.isPrivate:(I)Z
            ifne 21
        20: .line 1249
            aload 0 /* h */
            aload 3 /* mth */
            checkcast javassist.CtMethod
            invokevirtual javassist.CtMethod.getStringRep:()Ljava/lang/String;
            aload 3 /* mth */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        21: .line 1246
      StackMap locals:
      StackMap stack:
            aload 3 /* mth */
            aload 4 /* mthTail */
            if_acmpne 18
        end local 4 // javassist.CtMember mthTail
        end local 3 // javassist.CtMember mth
        end local 2 // javassist.CtMember$Cache memCache
        22: .line 1252
      StackMap locals:
      StackMap stack:
            return
        end local 1 // javassist.CtClass cc
        end local 0 // java.util.Map h
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   23     0         h  Ljava/util/Map<Ljava/lang/String;Ljavassist/CtMember;>;
            0   23     1        cc  Ljavassist/CtClass;
            1    6     2       ifs  [Ljavassist/CtClass;
            3    4     3       ctc  Ljavassist/CtClass;
            9   11     2         s  Ljavassist/CtClass;
           15   22     2  memCache  Ljavassist/CtMember$Cache;
           16   22     3       mth  Ljavassist/CtMember;
           17   22     4   mthTail  Ljavassist/CtMember;
      Exception table:
        from    to  target  type
           0     6       7  Class javassist.NotFoundException
           8    11      12  Class javassist.NotFoundException
    Signature: (Ljava/util/Map<Ljava/lang/String;Ljavassist/CtMember;>;Ljavassist/CtClass;)V
    MethodParameters:
      Name  Flags
      h     
      cc    

  public javassist.CtMethod getMethod(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Ljavassist/CtMethod;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // javassist.CtClassType this
        start local 1 // java.lang.String name
        start local 2 // java.lang.String desc
         0: .line 1258
            aload 0 /* this */
            aload 1 /* name */
            aload 2 /* desc */
            invokestatic javassist.CtClassType.getMethod0:(Ljavassist/CtClass;Ljava/lang/String;Ljava/lang/String;)Ljavassist/CtMethod;
            astore 3 /* m */
        start local 3 // javassist.CtMethod m
         1: .line 1259
            aload 3 /* m */
            ifnull 3
         2: .line 1260
            aload 3 /* m */
            areturn
         3: .line 1261
      StackMap locals: javassist.CtMethod
      StackMap stack:
            new javassist.NotFoundException
            dup
            new java.lang.StringBuilder
            dup
            aload 1 /* name */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "(..) is not found in "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         4: .line 1262
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         5: .line 1261
            invokespecial javassist.NotFoundException.<init>:(Ljava/lang/String;)V
            athrow
        end local 3 // javassist.CtMethod m
        end local 2 // java.lang.String desc
        end local 1 // java.lang.String name
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Ljavassist/CtClassType;
            0    6     1  name  Ljava/lang/String;
            0    6     2  desc  Ljava/lang/String;
            1    6     3     m  Ljavassist/CtMethod;
    Exceptions:
      throws javassist.NotFoundException
    MethodParameters:
      Name  Flags
      name  
      desc  

  private static javassist.CtMethod getMethod0(javassist.CtClass, java.lang.String, java.lang.String);
    descriptor: (Ljavassist/CtClass;Ljava/lang/String;Ljava/lang/String;)Ljavassist/CtMethod;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=9, args_size=3
        start local 0 // javassist.CtClass cc
        start local 1 // java.lang.String name
        start local 2 // java.lang.String desc
         0: .line 1267
            aload 0 /* cc */
            instanceof javassist.CtClassType
            ifeq 10
         1: .line 1268
            aload 0 /* cc */
            checkcast javassist.CtClassType
            invokevirtual javassist.CtClassType.getMembers:()Ljavassist/CtMember$Cache;
            astore 3 /* memCache */
        start local 3 // javassist.CtMember$Cache memCache
         2: .line 1269
            aload 3 /* memCache */
            invokevirtual javassist.CtMember$Cache.methodHead:()Ljavassist/CtMember;
            astore 4 /* mth */
        start local 4 // javassist.CtMember mth
         3: .line 1270
            aload 3 /* memCache */
            invokevirtual javassist.CtMember$Cache.lastMethod:()Ljavassist/CtMember;
            astore 5 /* mthTail */
        start local 5 // javassist.CtMember mthTail
         4: .line 1272
            goto 9
         5: .line 1273
      StackMap locals: javassist.CtMember$Cache javassist.CtMember javassist.CtMember
      StackMap stack:
            aload 4 /* mth */
            invokevirtual javassist.CtMember.next:()Ljavassist/CtMember;
            astore 4 /* mth */
         6: .line 1274
            aload 4 /* mth */
            invokevirtual javassist.CtMember.getName:()Ljava/lang/String;
            aload 1 /* name */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 9
         7: .line 1275
            aload 4 /* mth */
            checkcast javassist.CtMethod
            invokevirtual javassist.CtMethod.getMethodInfo2:()Ljavassist/bytecode/MethodInfo;
            invokevirtual javassist.bytecode.MethodInfo.getDescriptor:()Ljava/lang/String;
            aload 2 /* desc */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 9
         8: .line 1276
            aload 4 /* mth */
            checkcast javassist.CtMethod
            areturn
         9: .line 1272
      StackMap locals:
      StackMap stack:
            aload 4 /* mth */
            aload 5 /* mthTail */
            if_acmpne 5
        end local 5 // javassist.CtMember mthTail
        end local 4 // javassist.CtMember mth
        end local 3 // javassist.CtMember$Cache memCache
        10: .line 1281
      StackMap locals:
      StackMap stack:
            aload 0 /* cc */
            invokevirtual javassist.CtClass.getSuperclass:()Ljavassist/CtClass;
            astore 3 /* s */
        start local 3 // javassist.CtClass s
        11: .line 1282
            aload 3 /* s */
            ifnull 17
        12: .line 1283
            aload 3 /* s */
            aload 1 /* name */
            aload 2 /* desc */
            invokestatic javassist.CtClassType.getMethod0:(Ljavassist/CtClass;Ljava/lang/String;Ljava/lang/String;)Ljavassist/CtMethod;
            astore 4 /* m */
        start local 4 // javassist.CtMethod m
        13: .line 1284
            aload 4 /* m */
            ifnull 17
        14: .line 1285
            aload 4 /* m */
        15: areturn
        end local 4 // javassist.CtMethod m
        end local 3 // javassist.CtClass s
        16: .line 1288
      StackMap locals:
      StackMap stack: javassist.NotFoundException
            pop
        17: .line 1291
      StackMap locals:
      StackMap stack:
            aload 0 /* cc */
            invokevirtual javassist.CtClass.getInterfaces:()[Ljavassist/CtClass;
            astore 3 /* ifs */
        start local 3 // javassist.CtClass[] ifs
        18: .line 1292
            aload 3 /* ifs */
            dup
            astore 7
            arraylength
            istore 6
            iconst_0
            istore 5
            goto 25
      StackMap locals: javassist.CtClass java.lang.String java.lang.String javassist.CtClass[] top int int javassist.CtClass[]
      StackMap stack:
        19: aload 7
            iload 5
            aaload
            astore 4 /* ctc */
        start local 4 // javassist.CtClass ctc
        20: .line 1293
            aload 4 /* ctc */
            aload 1 /* name */
            aload 2 /* desc */
            invokestatic javassist.CtClassType.getMethod0:(Ljavassist/CtClass;Ljava/lang/String;Ljava/lang/String;)Ljavassist/CtMethod;
            astore 8 /* m */
        start local 8 // javassist.CtMethod m
        21: .line 1294
            aload 8 /* m */
            ifnull 24
        22: .line 1295
            aload 8 /* m */
        23: areturn
        end local 8 // javassist.CtMethod m
        end local 4 // javassist.CtClass ctc
        24: .line 1292
      StackMap locals:
      StackMap stack:
            iinc 5 1
      StackMap locals:
      StackMap stack:
        25: iload 5
            iload 6
            if_icmplt 19
        end local 3 // javassist.CtClass[] ifs
        26: .line 1297
            goto 28
        27: .line 1298
      StackMap locals: javassist.CtClass java.lang.String java.lang.String
      StackMap stack: javassist.NotFoundException
            pop
        28: .line 1299
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 2 // java.lang.String desc
        end local 1 // java.lang.String name
        end local 0 // javassist.CtClass cc
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   29     0        cc  Ljavassist/CtClass;
            0   29     1      name  Ljava/lang/String;
            0   29     2      desc  Ljava/lang/String;
            2   10     3  memCache  Ljavassist/CtMember$Cache;
            3   10     4       mth  Ljavassist/CtMember;
            4   10     5   mthTail  Ljavassist/CtMember;
           11   16     3         s  Ljavassist/CtClass;
           13   16     4         m  Ljavassist/CtMethod;
           18   26     3       ifs  [Ljavassist/CtClass;
           20   24     4       ctc  Ljavassist/CtClass;
           21   24     8         m  Ljavassist/CtMethod;
      Exception table:
        from    to  target  type
          10    15      16  Class javassist.NotFoundException
          17    23      27  Class javassist.NotFoundException
          24    26      27  Class javassist.NotFoundException
    MethodParameters:
      Name  Flags
      cc    
      name  
      desc  

  public javassist.CtMethod[] getDeclaredMethods();
    descriptor: ()[Ljavassist/CtMethod;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=5, args_size=1
        start local 0 // javassist.CtClassType this
         0: .line 1304
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getMembers:()Ljavassist/CtMember$Cache;
            astore 1 /* memCache */
        start local 1 // javassist.CtMember$Cache memCache
         1: .line 1305
            aload 1 /* memCache */
            invokevirtual javassist.CtMember$Cache.methodHead:()Ljavassist/CtMember;
            astore 2 /* mth */
        start local 2 // javassist.CtMember mth
         2: .line 1306
            aload 1 /* memCache */
            invokevirtual javassist.CtMember$Cache.lastMethod:()Ljavassist/CtMember;
            astore 3 /* mthTail */
        start local 3 // javassist.CtMember mthTail
         3: .line 1307
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 4 /* methods */
        start local 4 // java.util.List methods
         4: .line 1308
            goto 7
         5: .line 1309
      StackMap locals: javassist.CtClassType javassist.CtMember$Cache javassist.CtMember javassist.CtMember java.util.List
      StackMap stack:
            aload 2 /* mth */
            invokevirtual javassist.CtMember.next:()Ljavassist/CtMember;
            astore 2 /* mth */
         6: .line 1310
            aload 4 /* methods */
            aload 2 /* mth */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         7: .line 1308
      StackMap locals:
      StackMap stack:
            aload 2 /* mth */
            aload 3 /* mthTail */
            if_acmpne 5
         8: .line 1313
            aload 4 /* methods */
            aload 4 /* methods */
            invokeinterface java.util.List.size:()I
            anewarray javassist.CtMethod
            invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast javassist.CtMethod[]
            areturn
        end local 4 // java.util.List methods
        end local 3 // javassist.CtMember mthTail
        end local 2 // javassist.CtMember mth
        end local 1 // javassist.CtMember$Cache memCache
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0      this  Ljavassist/CtClassType;
            1    9     1  memCache  Ljavassist/CtMember$Cache;
            2    9     2       mth  Ljavassist/CtMember;
            3    9     3   mthTail  Ljavassist/CtMember;
            4    9     4   methods  Ljava/util/List<Ljavassist/CtMember;>;

  public javassist.CtMethod[] getDeclaredMethods(java.lang.String);
    descriptor: (Ljava/lang/String;)[Ljavassist/CtMethod;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=6, args_size=2
        start local 0 // javassist.CtClassType this
        start local 1 // java.lang.String name
         0: .line 1318
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getMembers:()Ljavassist/CtMember$Cache;
            astore 2 /* memCache */
        start local 2 // javassist.CtMember$Cache memCache
         1: .line 1319
            aload 2 /* memCache */
            invokevirtual javassist.CtMember$Cache.methodHead:()Ljavassist/CtMember;
            astore 3 /* mth */
        start local 3 // javassist.CtMember mth
         2: .line 1320
            aload 2 /* memCache */
            invokevirtual javassist.CtMember$Cache.lastMethod:()Ljavassist/CtMember;
            astore 4 /* mthTail */
        start local 4 // javassist.CtMember mthTail
         3: .line 1321
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 5 /* methods */
        start local 5 // java.util.List methods
         4: .line 1322
            goto 8
         5: .line 1323
      StackMap locals: javassist.CtClassType java.lang.String javassist.CtMember$Cache javassist.CtMember javassist.CtMember java.util.List
      StackMap stack:
            aload 3 /* mth */
            invokevirtual javassist.CtMember.next:()Ljavassist/CtMember;
            astore 3 /* mth */
         6: .line 1324
            aload 3 /* mth */
            invokevirtual javassist.CtMember.getName:()Ljava/lang/String;
            aload 1 /* name */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 8
         7: .line 1325
            aload 5 /* methods */
            aload 3 /* mth */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         8: .line 1322
      StackMap locals:
      StackMap stack:
            aload 3 /* mth */
            aload 4 /* mthTail */
            if_acmpne 5
         9: .line 1328
            aload 5 /* methods */
            aload 5 /* methods */
            invokeinterface java.util.List.size:()I
            anewarray javassist.CtMethod
            invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast javassist.CtMethod[]
            areturn
        end local 5 // java.util.List methods
        end local 4 // javassist.CtMember mthTail
        end local 3 // javassist.CtMember mth
        end local 2 // javassist.CtMember$Cache memCache
        end local 1 // java.lang.String name
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   10     0      this  Ljavassist/CtClassType;
            0   10     1      name  Ljava/lang/String;
            1   10     2  memCache  Ljavassist/CtMember$Cache;
            2   10     3       mth  Ljavassist/CtMember;
            3   10     4   mthTail  Ljavassist/CtMember;
            4   10     5   methods  Ljava/util/List<Ljavassist/CtMember;>;
    Exceptions:
      throws javassist.NotFoundException
    MethodParameters:
      Name  Flags
      name  

  public javassist.CtMethod getDeclaredMethod(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljavassist/CtMethod;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=2
        start local 0 // javassist.CtClassType this
        start local 1 // java.lang.String name
         0: .line 1333
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getMembers:()Ljavassist/CtMember$Cache;
            astore 2 /* memCache */
        start local 2 // javassist.CtMember$Cache memCache
         1: .line 1334
            aload 2 /* memCache */
            invokevirtual javassist.CtMember$Cache.methodHead:()Ljavassist/CtMember;
            astore 3 /* mth */
        start local 3 // javassist.CtMember mth
         2: .line 1335
            aload 2 /* memCache */
            invokevirtual javassist.CtMember$Cache.lastMethod:()Ljavassist/CtMember;
            astore 4 /* mthTail */
        start local 4 // javassist.CtMember mthTail
         3: .line 1336
            goto 7
         4: .line 1337
      StackMap locals: javassist.CtMember$Cache javassist.CtMember javassist.CtMember
      StackMap stack:
            aload 3 /* mth */
            invokevirtual javassist.CtMember.next:()Ljavassist/CtMember;
            astore 3 /* mth */
         5: .line 1338
            aload 3 /* mth */
            invokevirtual javassist.CtMember.getName:()Ljava/lang/String;
            aload 1 /* name */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 7
         6: .line 1339
            aload 3 /* mth */
            checkcast javassist.CtMethod
            areturn
         7: .line 1336
      StackMap locals:
      StackMap stack:
            aload 3 /* mth */
            aload 4 /* mthTail */
            if_acmpne 4
         8: .line 1342
            new javassist.NotFoundException
            dup
            new java.lang.StringBuilder
            dup
            aload 1 /* name */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "(..) is not found in "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         9: .line 1343
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        10: .line 1342
            invokespecial javassist.NotFoundException.<init>:(Ljava/lang/String;)V
            athrow
        end local 4 // javassist.CtMember mthTail
        end local 3 // javassist.CtMember mth
        end local 2 // javassist.CtMember$Cache memCache
        end local 1 // java.lang.String name
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   11     0      this  Ljavassist/CtClassType;
            0   11     1      name  Ljava/lang/String;
            1   11     2  memCache  Ljavassist/CtMember$Cache;
            2   11     3       mth  Ljavassist/CtMember;
            3   11     4   mthTail  Ljavassist/CtMember;
    Exceptions:
      throws javassist.NotFoundException
    MethodParameters:
      Name  Flags
      name  

  public javassist.CtMethod getDeclaredMethod(java.lang.String, javassist.CtClass[]);
    descriptor: (Ljava/lang/String;[Ljavassist/CtClass;)Ljavassist/CtMethod;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=7, args_size=3
        start local 0 // javassist.CtClassType this
        start local 1 // java.lang.String name
        start local 2 // javassist.CtClass[] params
         0: .line 1350
            aload 2 /* params */
            invokestatic javassist.bytecode.Descriptor.ofParameters:([Ljavassist/CtClass;)Ljava/lang/String;
            astore 3 /* desc */
        start local 3 // java.lang.String desc
         1: .line 1351
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getMembers:()Ljavassist/CtMember$Cache;
            astore 4 /* memCache */
        start local 4 // javassist.CtMember$Cache memCache
         2: .line 1352
            aload 4 /* memCache */
            invokevirtual javassist.CtMember$Cache.methodHead:()Ljavassist/CtMember;
            astore 5 /* mth */
        start local 5 // javassist.CtMember mth
         3: .line 1353
            aload 4 /* memCache */
            invokevirtual javassist.CtMember$Cache.lastMethod:()Ljavassist/CtMember;
            astore 6 /* mthTail */
        start local 6 // javassist.CtMember mthTail
         4: .line 1355
            goto 9
         5: .line 1356
      StackMap locals: javassist.CtClassType java.lang.String javassist.CtClass[] java.lang.String javassist.CtMember$Cache javassist.CtMember javassist.CtMember
      StackMap stack:
            aload 5 /* mth */
            invokevirtual javassist.CtMember.next:()Ljavassist/CtMember;
            astore 5 /* mth */
         6: .line 1357
            aload 5 /* mth */
            invokevirtual javassist.CtMember.getName:()Ljava/lang/String;
            aload 1 /* name */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 9
         7: .line 1358
            aload 5 /* mth */
            checkcast javassist.CtMethod
            invokevirtual javassist.CtMethod.getMethodInfo2:()Ljavassist/bytecode/MethodInfo;
            invokevirtual javassist.bytecode.MethodInfo.getDescriptor:()Ljava/lang/String;
            aload 3 /* desc */
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 9
         8: .line 1359
            aload 5 /* mth */
            checkcast javassist.CtMethod
            areturn
         9: .line 1355
      StackMap locals:
      StackMap stack:
            aload 5 /* mth */
            aload 6 /* mthTail */
            if_acmpne 5
        10: .line 1362
            new javassist.NotFoundException
            dup
            new java.lang.StringBuilder
            dup
            aload 1 /* name */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "(..) is not found in "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        11: .line 1363
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        12: .line 1362
            invokespecial javassist.NotFoundException.<init>:(Ljava/lang/String;)V
            athrow
        end local 6 // javassist.CtMember mthTail
        end local 5 // javassist.CtMember mth
        end local 4 // javassist.CtMember$Cache memCache
        end local 3 // java.lang.String desc
        end local 2 // javassist.CtClass[] params
        end local 1 // java.lang.String name
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   13     0      this  Ljavassist/CtClassType;
            0   13     1      name  Ljava/lang/String;
            0   13     2    params  [Ljavassist/CtClass;
            1   13     3      desc  Ljava/lang/String;
            2   13     4  memCache  Ljavassist/CtMember$Cache;
            3   13     5       mth  Ljavassist/CtMember;
            4   13     6   mthTail  Ljavassist/CtMember;
    Exceptions:
      throws javassist.NotFoundException
    MethodParameters:
        Name  Flags
      name    
      params  

  public void addField(javassist.CtField, java.lang.String);
    descriptor: (Ljavassist/CtField;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // javassist.CtClassType this
        start local 1 // javassist.CtField f
        start local 2 // java.lang.String init
         0: .line 1370
            aload 0 /* this */
            aload 1 /* f */
            aload 2 /* init */
            invokestatic javassist.CtField$Initializer.byExpr:(Ljava/lang/String;)Ljavassist/CtField$Initializer;
            invokevirtual javassist.CtClassType.addField:(Ljavassist/CtField;Ljavassist/CtField$Initializer;)V
         1: .line 1371
            return
        end local 2 // java.lang.String init
        end local 1 // javassist.CtField f
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljavassist/CtClassType;
            0    2     1     f  Ljavassist/CtField;
            0    2     2  init  Ljava/lang/String;
    Exceptions:
      throws javassist.CannotCompileException
    MethodParameters:
      Name  Flags
      f     
      init  

  public void addField(javassist.CtField, javassist.CtField$Initializer);
    descriptor: (Ljavassist/CtField;Ljavassist/CtField$Initializer;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=3
        start local 0 // javassist.CtClassType this
        start local 1 // javassist.CtField f
        start local 2 // javassist.CtField$Initializer init
         0: .line 1377
            aload 0 /* this */
            invokevirtual javassist.CtClassType.checkModify:()V
         1: .line 1378
            aload 1 /* f */
            invokevirtual javassist.CtField.getDeclaringClass:()Ljavassist/CtClass;
            aload 0 /* this */
            if_acmpeq 3
         2: .line 1379
            new javassist.CannotCompileException
            dup
            ldc "cannot add"
            invokespecial javassist.CannotCompileException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 1381
      StackMap locals:
      StackMap stack:
            aload 2 /* init */
            ifnonnull 5
         4: .line 1382
            aload 1 /* f */
            invokevirtual javassist.CtField.getInit:()Ljavassist/CtField$Initializer;
            astore 2 /* init */
         5: .line 1384
      StackMap locals:
      StackMap stack:
            aload 2 /* init */
            ifnull 16
         6: .line 1385
            aload 2 /* init */
            aload 1 /* f */
            invokevirtual javassist.CtField.getSignature:()Ljava/lang/String;
            invokevirtual javassist.CtField$Initializer.check:(Ljava/lang/String;)V
         7: .line 1386
            aload 1 /* f */
            invokevirtual javassist.CtField.getModifiers:()I
            istore 3 /* mod */
        start local 3 // int mod
         8: .line 1387
            iload 3 /* mod */
            invokestatic javassist.Modifier.isStatic:(I)Z
            ifeq 16
            iload 3 /* mod */
            invokestatic javassist.Modifier.isFinal:(I)Z
            ifeq 16
         9: .line 1389
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getClassFile2:()Ljavassist/bytecode/ClassFile;
            invokevirtual javassist.bytecode.ClassFile.getConstPool:()Ljavassist/bytecode/ConstPool;
            astore 4 /* cp */
        start local 4 // javassist.bytecode.ConstPool cp
        10: .line 1390
            aload 2 /* init */
            aload 4 /* cp */
            aload 1 /* f */
            invokevirtual javassist.CtField.getType:()Ljavassist/CtClass;
            invokevirtual javassist.CtField$Initializer.getConstantValue:(Ljavassist/bytecode/ConstPool;Ljavassist/CtClass;)I
            istore 5 /* index */
        start local 5 // int index
        11: .line 1391
            iload 5 /* index */
            ifeq 16
        12: .line 1392
            aload 1 /* f */
            invokevirtual javassist.CtField.getFieldInfo2:()Ljavassist/bytecode/FieldInfo;
            new javassist.bytecode.ConstantAttribute
            dup
            aload 4 /* cp */
            iload 5 /* index */
            invokespecial javassist.bytecode.ConstantAttribute.<init>:(Ljavassist/bytecode/ConstPool;I)V
            invokevirtual javassist.bytecode.FieldInfo.addAttribute:(Ljavassist/bytecode/AttributeInfo;)V
        13: .line 1393
            aconst_null
            astore 2 /* init */
        end local 5 // int index
        end local 4 // javassist.bytecode.ConstPool cp
        14: .line 1395
            goto 16
        15: .line 1396
      StackMap locals: javassist.CtClassType javassist.CtField javassist.CtField$Initializer int
      StackMap stack: javassist.NotFoundException
            pop
        end local 3 // int mod
        16: .line 1399
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getMembers:()Ljavassist/CtMember$Cache;
            aload 1 /* f */
            invokevirtual javassist.CtMember$Cache.addField:(Ljavassist/CtMember;)V
        17: .line 1400
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getClassFile2:()Ljavassist/bytecode/ClassFile;
            aload 1 /* f */
            invokevirtual javassist.CtField.getFieldInfo2:()Ljavassist/bytecode/FieldInfo;
            invokevirtual javassist.bytecode.ClassFile.addField:(Ljavassist/bytecode/FieldInfo;)V
        18: .line 1402
            aload 2 /* init */
            ifnull 26
        19: .line 1403
            new javassist.FieldInitLink
            dup
            aload 1 /* f */
            aload 2 /* init */
            invokespecial javassist.FieldInitLink.<init>:(Ljavassist/CtField;Ljavassist/CtField$Initializer;)V
            astore 3 /* fil */
        start local 3 // javassist.FieldInitLink fil
        20: .line 1404
            aload 0 /* this */
            getfield javassist.CtClassType.fieldInitializers:Ljavassist/FieldInitLink;
            astore 4 /* link */
        start local 4 // javassist.FieldInitLink link
        21: .line 1405
            aload 4 /* link */
            ifnonnull 24
        22: .line 1406
            aload 0 /* this */
            aload 3 /* fil */
            putfield javassist.CtClassType.fieldInitializers:Ljavassist/FieldInitLink;
            goto 26
        23: .line 1409
      StackMap locals: javassist.FieldInitLink javassist.FieldInitLink
      StackMap stack:
            aload 4 /* link */
            getfield javassist.FieldInitLink.next:Ljavassist/FieldInitLink;
            astore 4 /* link */
        24: .line 1408
      StackMap locals:
      StackMap stack:
            aload 4 /* link */
            getfield javassist.FieldInitLink.next:Ljavassist/FieldInitLink;
            ifnonnull 23
        25: .line 1411
            aload 4 /* link */
            aload 3 /* fil */
            putfield javassist.FieldInitLink.next:Ljavassist/FieldInitLink;
        end local 4 // javassist.FieldInitLink link
        end local 3 // javassist.FieldInitLink fil
        26: .line 1414
      StackMap locals:
      StackMap stack:
            return
        end local 2 // javassist.CtField$Initializer init
        end local 1 // javassist.CtField f
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   27     0   this  Ljavassist/CtClassType;
            0   27     1      f  Ljavassist/CtField;
            0   27     2   init  Ljavassist/CtField$Initializer;
            8   16     3    mod  I
           10   14     4     cp  Ljavassist/bytecode/ConstPool;
           11   14     5  index  I
           20   26     3    fil  Ljavassist/FieldInitLink;
           21   26     4   link  Ljavassist/FieldInitLink;
      Exception table:
        from    to  target  type
           9    14      15  Class javassist.NotFoundException
    Exceptions:
      throws javassist.CannotCompileException
    MethodParameters:
      Name  Flags
      f     
      init  

  public void removeField(javassist.CtField);
    descriptor: (Ljavassist/CtField;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // javassist.CtClassType this
        start local 1 // javassist.CtField f
         0: .line 1418
            aload 0 /* this */
            invokevirtual javassist.CtClassType.checkModify:()V
         1: .line 1419
            aload 1 /* f */
            invokevirtual javassist.CtField.getFieldInfo2:()Ljavassist/bytecode/FieldInfo;
            astore 2 /* fi */
        start local 2 // javassist.bytecode.FieldInfo fi
         2: .line 1420
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getClassFile2:()Ljavassist/bytecode/ClassFile;
            astore 3 /* cf */
        start local 3 // javassist.bytecode.ClassFile cf
         3: .line 1421
            aload 3 /* cf */
            invokevirtual javassist.bytecode.ClassFile.getFields:()Ljava/util/List;
            aload 2 /* fi */
            invokeinterface java.util.List.remove:(Ljava/lang/Object;)Z
            ifeq 7
         4: .line 1422
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getMembers:()Ljavassist/CtMember$Cache;
            aload 1 /* f */
            invokevirtual javassist.CtMember$Cache.remove:(Ljavassist/CtMember;)V
         5: .line 1423
            aload 0 /* this */
            iconst_1
            putfield javassist.CtClassType.gcConstPool:Z
         6: .line 1424
            goto 8
         7: .line 1426
      StackMap locals: javassist.bytecode.FieldInfo javassist.bytecode.ClassFile
      StackMap stack:
            new javassist.NotFoundException
            dup
            aload 1 /* f */
            invokevirtual javassist.CtField.toString:()Ljava/lang/String;
            invokespecial javassist.NotFoundException.<init>:(Ljava/lang/String;)V
            athrow
         8: .line 1427
      StackMap locals:
      StackMap stack:
            return
        end local 3 // javassist.bytecode.ClassFile cf
        end local 2 // javassist.bytecode.FieldInfo fi
        end local 1 // javassist.CtField f
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Ljavassist/CtClassType;
            0    9     1     f  Ljavassist/CtField;
            2    9     2    fi  Ljavassist/bytecode/FieldInfo;
            3    9     3    cf  Ljavassist/bytecode/ClassFile;
    Exceptions:
      throws javassist.NotFoundException
    MethodParameters:
      Name  Flags
      f     

  public javassist.CtConstructor makeClassInitializer();
    descriptor: ()Ljavassist/CtConstructor;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=1
        start local 0 // javassist.CtClassType this
         0: .line 1433
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getClassInitializer:()Ljavassist/CtConstructor;
            astore 1 /* clinit */
        start local 1 // javassist.CtConstructor clinit
         1: .line 1434
            aload 1 /* clinit */
            ifnull 3
         2: .line 1435
            aload 1 /* clinit */
            areturn
         3: .line 1437
      StackMap locals: javassist.CtConstructor
      StackMap stack:
            aload 0 /* this */
            invokevirtual javassist.CtClassType.checkModify:()V
         4: .line 1438
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getClassFile2:()Ljavassist/bytecode/ClassFile;
            astore 2 /* cf */
        start local 2 // javassist.bytecode.ClassFile cf
         5: .line 1439
            new javassist.bytecode.Bytecode
            dup
            aload 2 /* cf */
            invokevirtual javassist.bytecode.ClassFile.getConstPool:()Ljavassist/bytecode/ConstPool;
            iconst_0
            iconst_0
            invokespecial javassist.bytecode.Bytecode.<init>:(Ljavassist/bytecode/ConstPool;II)V
            astore 3 /* code */
        start local 3 // javassist.bytecode.Bytecode code
         6: .line 1440
            aload 0 /* this */
            aload 2 /* cf */
            aload 3 /* code */
            iconst_0
            iconst_0
            invokevirtual javassist.CtClassType.modifyClassConstructor:(Ljavassist/bytecode/ClassFile;Ljavassist/bytecode/Bytecode;II)V
         7: .line 1441
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getClassInitializer:()Ljavassist/CtConstructor;
            areturn
        end local 3 // javassist.bytecode.Bytecode code
        end local 2 // javassist.bytecode.ClassFile cf
        end local 1 // javassist.CtConstructor clinit
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0    this  Ljavassist/CtClassType;
            1    8     1  clinit  Ljavassist/CtConstructor;
            5    8     2      cf  Ljavassist/bytecode/ClassFile;
            6    8     3    code  Ljavassist/bytecode/Bytecode;
    Exceptions:
      throws javassist.CannotCompileException

  public void addConstructor(javassist.CtConstructor);
    descriptor: (Ljavassist/CtConstructor;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // javassist.CtClassType this
        start local 1 // javassist.CtConstructor c
         0: .line 1448
            aload 0 /* this */
            invokevirtual javassist.CtClassType.checkModify:()V
         1: .line 1449
            aload 1 /* c */
            invokevirtual javassist.CtConstructor.getDeclaringClass:()Ljavassist/CtClass;
            aload 0 /* this */
            if_acmpeq 3
         2: .line 1450
            new javassist.CannotCompileException
            dup
            ldc "cannot add"
            invokespecial javassist.CannotCompileException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 1452
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getMembers:()Ljavassist/CtMember$Cache;
            aload 1 /* c */
            invokevirtual javassist.CtMember$Cache.addConstructor:(Ljavassist/CtMember;)V
         4: .line 1453
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getClassFile2:()Ljavassist/bytecode/ClassFile;
            aload 1 /* c */
            invokevirtual javassist.CtConstructor.getMethodInfo2:()Ljavassist/bytecode/MethodInfo;
            invokevirtual javassist.bytecode.ClassFile.addMethod:(Ljavassist/bytecode/MethodInfo;)V
         5: .line 1454
            return
        end local 1 // javassist.CtConstructor c
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Ljavassist/CtClassType;
            0    6     1     c  Ljavassist/CtConstructor;
    Exceptions:
      throws javassist.CannotCompileException
    MethodParameters:
      Name  Flags
      c     

  public void removeConstructor(javassist.CtConstructor);
    descriptor: (Ljavassist/CtConstructor;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // javassist.CtClassType this
        start local 1 // javassist.CtConstructor m
         0: .line 1458
            aload 0 /* this */
            invokevirtual javassist.CtClassType.checkModify:()V
         1: .line 1459
            aload 1 /* m */
            invokevirtual javassist.CtConstructor.getMethodInfo2:()Ljavassist/bytecode/MethodInfo;
            astore 2 /* mi */
        start local 2 // javassist.bytecode.MethodInfo mi
         2: .line 1460
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getClassFile2:()Ljavassist/bytecode/ClassFile;
            astore 3 /* cf */
        start local 3 // javassist.bytecode.ClassFile cf
         3: .line 1461
            aload 3 /* cf */
            invokevirtual javassist.bytecode.ClassFile.getMethods:()Ljava/util/List;
            aload 2 /* mi */
            invokeinterface java.util.List.remove:(Ljava/lang/Object;)Z
            ifeq 7
         4: .line 1462
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getMembers:()Ljavassist/CtMember$Cache;
            aload 1 /* m */
            invokevirtual javassist.CtMember$Cache.remove:(Ljavassist/CtMember;)V
         5: .line 1463
            aload 0 /* this */
            iconst_1
            putfield javassist.CtClassType.gcConstPool:Z
         6: .line 1464
            goto 8
         7: .line 1466
      StackMap locals: javassist.bytecode.MethodInfo javassist.bytecode.ClassFile
      StackMap stack:
            new javassist.NotFoundException
            dup
            aload 1 /* m */
            invokevirtual javassist.CtConstructor.toString:()Ljava/lang/String;
            invokespecial javassist.NotFoundException.<init>:(Ljava/lang/String;)V
            athrow
         8: .line 1467
      StackMap locals:
      StackMap stack:
            return
        end local 3 // javassist.bytecode.ClassFile cf
        end local 2 // javassist.bytecode.MethodInfo mi
        end local 1 // javassist.CtConstructor m
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Ljavassist/CtClassType;
            0    9     1     m  Ljavassist/CtConstructor;
            2    9     2    mi  Ljavassist/bytecode/MethodInfo;
            3    9     3    cf  Ljavassist/bytecode/ClassFile;
    Exceptions:
      throws javassist.NotFoundException
    MethodParameters:
      Name  Flags
      m     

  public void addMethod(javassist.CtMethod);
    descriptor: (Ljavassist/CtMethod;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // javassist.CtClassType this
        start local 1 // javassist.CtMethod m
         0: .line 1471
            aload 0 /* this */
            invokevirtual javassist.CtClassType.checkModify:()V
         1: .line 1472
            aload 1 /* m */
            invokevirtual javassist.CtMethod.getDeclaringClass:()Ljavassist/CtClass;
            aload 0 /* this */
            if_acmpeq 3
         2: .line 1473
            new javassist.CannotCompileException
            dup
            ldc "bad declaring class"
            invokespecial javassist.CannotCompileException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 1475
      StackMap locals:
      StackMap stack:
            aload 1 /* m */
            invokevirtual javassist.CtMethod.getModifiers:()I
            istore 2 /* mod */
        start local 2 // int mod
         4: .line 1476
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getModifiers:()I
            sipush 512
            iand
            ifeq 10
         5: .line 1477
            iload 2 /* mod */
            invokestatic javassist.Modifier.isProtected:(I)Z
            ifne 6
            iload 2 /* mod */
            invokestatic javassist.Modifier.isPrivate:(I)Z
            ifeq 9
         6: .line 1478
      StackMap locals: int
      StackMap stack:
            new javassist.CannotCompileException
            dup
         7: .line 1479
            new java.lang.StringBuilder
            dup
            ldc "an interface method must be public: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* m */
            invokevirtual javassist.CtMethod.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         8: .line 1478
            invokespecial javassist.CannotCompileException.<init>:(Ljava/lang/String;)V
            athrow
         9: .line 1481
      StackMap locals:
      StackMap stack:
            aload 1 /* m */
            iload 2 /* mod */
            iconst_1
            ior
            invokevirtual javassist.CtMethod.setModifiers:(I)V
        10: .line 1484
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getMembers:()Ljavassist/CtMember$Cache;
            aload 1 /* m */
            invokevirtual javassist.CtMember$Cache.addMethod:(Ljavassist/CtMember;)V
        11: .line 1485
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getClassFile2:()Ljavassist/bytecode/ClassFile;
            aload 1 /* m */
            invokevirtual javassist.CtMethod.getMethodInfo2:()Ljavassist/bytecode/MethodInfo;
            invokevirtual javassist.bytecode.ClassFile.addMethod:(Ljavassist/bytecode/MethodInfo;)V
        12: .line 1486
            iload 2 /* mod */
            sipush 1024
            iand
            ifeq 14
        13: .line 1487
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getModifiers:()I
            sipush 1024
            ior
            invokevirtual javassist.CtClassType.setModifiers:(I)V
        14: .line 1488
      StackMap locals:
      StackMap stack:
            return
        end local 2 // int mod
        end local 1 // javassist.CtMethod m
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   15     0  this  Ljavassist/CtClassType;
            0   15     1     m  Ljavassist/CtMethod;
            4   15     2   mod  I
    Exceptions:
      throws javassist.CannotCompileException
    MethodParameters:
      Name  Flags
      m     

  public void removeMethod(javassist.CtMethod);
    descriptor: (Ljavassist/CtMethod;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // javassist.CtClassType this
        start local 1 // javassist.CtMethod m
         0: .line 1493
            aload 0 /* this */
            invokevirtual javassist.CtClassType.checkModify:()V
         1: .line 1494
            aload 1 /* m */
            invokevirtual javassist.CtMethod.getMethodInfo2:()Ljavassist/bytecode/MethodInfo;
            astore 2 /* mi */
        start local 2 // javassist.bytecode.MethodInfo mi
         2: .line 1495
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getClassFile2:()Ljavassist/bytecode/ClassFile;
            astore 3 /* cf */
        start local 3 // javassist.bytecode.ClassFile cf
         3: .line 1496
            aload 3 /* cf */
            invokevirtual javassist.bytecode.ClassFile.getMethods:()Ljava/util/List;
            aload 2 /* mi */
            invokeinterface java.util.List.remove:(Ljava/lang/Object;)Z
            ifeq 7
         4: .line 1497
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getMembers:()Ljavassist/CtMember$Cache;
            aload 1 /* m */
            invokevirtual javassist.CtMember$Cache.remove:(Ljavassist/CtMember;)V
         5: .line 1498
            aload 0 /* this */
            iconst_1
            putfield javassist.CtClassType.gcConstPool:Z
         6: .line 1499
            goto 8
         7: .line 1501
      StackMap locals: javassist.bytecode.MethodInfo javassist.bytecode.ClassFile
      StackMap stack:
            new javassist.NotFoundException
            dup
            aload 1 /* m */
            invokevirtual javassist.CtMethod.toString:()Ljava/lang/String;
            invokespecial javassist.NotFoundException.<init>:(Ljava/lang/String;)V
            athrow
         8: .line 1502
      StackMap locals:
      StackMap stack:
            return
        end local 3 // javassist.bytecode.ClassFile cf
        end local 2 // javassist.bytecode.MethodInfo mi
        end local 1 // javassist.CtMethod m
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Ljavassist/CtClassType;
            0    9     1     m  Ljavassist/CtMethod;
            2    9     2    mi  Ljavassist/bytecode/MethodInfo;
            3    9     3    cf  Ljavassist/bytecode/ClassFile;
    Exceptions:
      throws javassist.NotFoundException
    MethodParameters:
      Name  Flags
      m     

  public byte[] getAttribute(java.lang.String);
    descriptor: (Ljava/lang/String;)[B
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // javassist.CtClassType this
        start local 1 // java.lang.String name
         0: .line 1507
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getClassFile2:()Ljavassist/bytecode/ClassFile;
            aload 1 /* name */
            invokevirtual javassist.bytecode.ClassFile.getAttribute:(Ljava/lang/String;)Ljavassist/bytecode/AttributeInfo;
            astore 2 /* ai */
        start local 2 // javassist.bytecode.AttributeInfo ai
         1: .line 1508
            aload 2 /* ai */
            ifnonnull 3
         2: .line 1509
            aconst_null
            areturn
         3: .line 1510
      StackMap locals: javassist.bytecode.AttributeInfo
      StackMap stack:
            aload 2 /* ai */
            invokevirtual javassist.bytecode.AttributeInfo.get:()[B
            areturn
        end local 2 // javassist.bytecode.AttributeInfo ai
        end local 1 // java.lang.String name
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljavassist/CtClassType;
            0    4     1  name  Ljava/lang/String;
            1    4     2    ai  Ljavassist/bytecode/AttributeInfo;
    MethodParameters:
      Name  Flags
      name  

  public void setAttribute(java.lang.String, byte[]);
    descriptor: (Ljava/lang/String;[B)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=4, args_size=3
        start local 0 // javassist.CtClassType this
        start local 1 // java.lang.String name
        start local 2 // byte[] data
         0: .line 1516
            aload 0 /* this */
            invokevirtual javassist.CtClassType.checkModify:()V
         1: .line 1517
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getClassFile2:()Ljavassist/bytecode/ClassFile;
            astore 3 /* cf */
        start local 3 // javassist.bytecode.ClassFile cf
         2: .line 1518
            aload 3 /* cf */
            new javassist.bytecode.AttributeInfo
            dup
            aload 3 /* cf */
            invokevirtual javassist.bytecode.ClassFile.getConstPool:()Ljavassist/bytecode/ConstPool;
            aload 1 /* name */
            aload 2 /* data */
            invokespecial javassist.bytecode.AttributeInfo.<init>:(Ljavassist/bytecode/ConstPool;Ljava/lang/String;[B)V
            invokevirtual javassist.bytecode.ClassFile.addAttribute:(Ljavassist/bytecode/AttributeInfo;)V
         3: .line 1519
            return
        end local 3 // javassist.bytecode.ClassFile cf
        end local 2 // byte[] data
        end local 1 // java.lang.String name
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljavassist/CtClassType;
            0    4     1  name  Ljava/lang/String;
            0    4     2  data  [B
            2    4     3    cf  Ljavassist/bytecode/ClassFile;
    MethodParameters:
      Name  Flags
      name  
      data  

  public void instrument(javassist.CodeConverter);
    descriptor: (Ljavassist/CodeConverter;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=9, args_size=2
        start local 0 // javassist.CtClassType this
        start local 1 // javassist.CodeConverter converter
         0: .line 1525
            aload 0 /* this */
            invokevirtual javassist.CtClassType.checkModify:()V
         1: .line 1526
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getClassFile2:()Ljavassist/bytecode/ClassFile;
            astore 2 /* cf */
        start local 2 // javassist.bytecode.ClassFile cf
         2: .line 1527
            aload 2 /* cf */
            invokevirtual javassist.bytecode.ClassFile.getConstPool:()Ljavassist/bytecode/ConstPool;
            astore 3 /* cp */
        start local 3 // javassist.bytecode.ConstPool cp
         3: .line 1528
            aload 2 /* cf */
            invokevirtual javassist.bytecode.ClassFile.getMethods:()Ljava/util/List;
            astore 4 /* methods */
        start local 4 // java.util.List methods
         4: .line 1529
            aload 4 /* methods */
            aload 4 /* methods */
            invokeinterface java.util.List.size:()I
            anewarray javassist.bytecode.MethodInfo
            invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast javassist.bytecode.MethodInfo[]
            dup
            astore 8
            arraylength
            istore 7
            iconst_0
            istore 6
            goto 8
      StackMap locals: javassist.CtClassType javassist.CodeConverter javassist.bytecode.ClassFile javassist.bytecode.ConstPool java.util.List top int int javassist.bytecode.MethodInfo[]
      StackMap stack:
         5: aload 8
            iload 6
            aaload
            astore 5 /* minfo */
        start local 5 // javassist.bytecode.MethodInfo minfo
         6: .line 1530
            aload 1 /* converter */
            aload 0 /* this */
            aload 5 /* minfo */
            aload 3 /* cp */
            invokevirtual javassist.CodeConverter.doit:(Ljavassist/CtClass;Ljavassist/bytecode/MethodInfo;Ljavassist/bytecode/ConstPool;)V
        end local 5 // javassist.bytecode.MethodInfo minfo
         7: .line 1529
            iinc 6 1
      StackMap locals:
      StackMap stack:
         8: iload 6
            iload 7
            if_icmplt 5
         9: .line 1531
            return
        end local 4 // java.util.List methods
        end local 3 // javassist.bytecode.ConstPool cp
        end local 2 // javassist.bytecode.ClassFile cf
        end local 1 // javassist.CodeConverter converter
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   10     0       this  Ljavassist/CtClassType;
            0   10     1  converter  Ljavassist/CodeConverter;
            2   10     2         cf  Ljavassist/bytecode/ClassFile;
            3   10     3         cp  Ljavassist/bytecode/ConstPool;
            4   10     4    methods  Ljava/util/List<Ljavassist/bytecode/MethodInfo;>;
            6    7     5      minfo  Ljavassist/bytecode/MethodInfo;
    Exceptions:
      throws javassist.CannotCompileException
    MethodParameters:
           Name  Flags
      converter  

  public void instrument(javassist.expr.ExprEditor);
    descriptor: (Ljavassist/expr/ExprEditor;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=8, args_size=2
        start local 0 // javassist.CtClassType this
        start local 1 // javassist.expr.ExprEditor editor
         0: .line 1537
            aload 0 /* this */
            invokevirtual javassist.CtClassType.checkModify:()V
         1: .line 1538
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getClassFile2:()Ljavassist/bytecode/ClassFile;
            astore 2 /* cf */
        start local 2 // javassist.bytecode.ClassFile cf
         2: .line 1539
            aload 2 /* cf */
            invokevirtual javassist.bytecode.ClassFile.getMethods:()Ljava/util/List;
            astore 3 /* methods */
        start local 3 // java.util.List methods
         3: .line 1540
            aload 3 /* methods */
            aload 3 /* methods */
            invokeinterface java.util.List.size:()I
            anewarray javassist.bytecode.MethodInfo
            invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast javassist.bytecode.MethodInfo[]
            dup
            astore 7
            arraylength
            istore 6
            iconst_0
            istore 5
            goto 7
      StackMap locals: javassist.CtClassType javassist.expr.ExprEditor javassist.bytecode.ClassFile java.util.List top int int javassist.bytecode.MethodInfo[]
      StackMap stack:
         4: aload 7
            iload 5
            aaload
            astore 4 /* minfo */
        start local 4 // javassist.bytecode.MethodInfo minfo
         5: .line 1541
            aload 1 /* editor */
            aload 0 /* this */
            aload 4 /* minfo */
            invokevirtual javassist.expr.ExprEditor.doit:(Ljavassist/CtClass;Ljavassist/bytecode/MethodInfo;)Z
            pop
        end local 4 // javassist.bytecode.MethodInfo minfo
         6: .line 1540
            iinc 5 1
      StackMap locals:
      StackMap stack:
         7: iload 5
            iload 6
            if_icmplt 4
         8: .line 1542
            return
        end local 3 // java.util.List methods
        end local 2 // javassist.bytecode.ClassFile cf
        end local 1 // javassist.expr.ExprEditor editor
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    9     0     this  Ljavassist/CtClassType;
            0    9     1   editor  Ljavassist/expr/ExprEditor;
            2    9     2       cf  Ljavassist/bytecode/ClassFile;
            3    9     3  methods  Ljava/util/List<Ljavassist/bytecode/MethodInfo;>;
            5    6     4    minfo  Ljavassist/bytecode/MethodInfo;
    Exceptions:
      throws javassist.CannotCompileException
    MethodParameters:
        Name  Flags
      editor  

  public void prune();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // javassist.CtClassType this
         0: .line 1551
            aload 0 /* this */
            getfield javassist.CtClassType.wasPruned:Z
            ifeq 2
         1: .line 1552
            return
         2: .line 1554
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            iconst_1
            dup_x1
            putfield javassist.CtClassType.wasFrozen:Z
            putfield javassist.CtClassType.wasPruned:Z
         3: .line 1555
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getClassFile2:()Ljavassist/bytecode/ClassFile;
            invokevirtual javassist.bytecode.ClassFile.prune:()V
         4: .line 1556
            return
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljavassist/CtClassType;

  public void rebuildClassFile();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // javassist.CtClassType this
         0: .line 1559
            aload 0 /* this */
            iconst_1
            putfield javassist.CtClassType.gcConstPool:Z
            return
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavassist/CtClassType;

  public void toBytecode(java.io.DataOutputStream);
    descriptor: (Ljava/io/DataOutputStream;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // javassist.CtClassType this
        start local 1 // java.io.DataOutputStream out
         0: .line 1566
            aload 0 /* this */
            invokevirtual javassist.CtClassType.isModified:()Z
            ifeq 17
         1: .line 1567
            aload 0 /* this */
            ldc "toBytecode"
            invokevirtual javassist.CtClassType.checkPruned:(Ljava/lang/String;)V
         2: .line 1568
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getClassFile2:()Ljavassist/bytecode/ClassFile;
            astore 2 /* cf */
        start local 2 // javassist.bytecode.ClassFile cf
         3: .line 1569
            aload 0 /* this */
            getfield javassist.CtClassType.gcConstPool:Z
            ifeq 6
         4: .line 1570
            aload 2 /* cf */
            invokevirtual javassist.bytecode.ClassFile.compact:()V
         5: .line 1571
            aload 0 /* this */
            iconst_0
            putfield javassist.CtClassType.gcConstPool:Z
         6: .line 1574
      StackMap locals: javassist.bytecode.ClassFile
      StackMap stack:
            aload 0 /* this */
            aload 2 /* cf */
            invokevirtual javassist.CtClassType.modifyClassConstructor:(Ljavassist/bytecode/ClassFile;)V
         7: .line 1575
            aload 0 /* this */
            aload 2 /* cf */
            invokevirtual javassist.CtClassType.modifyConstructors:(Ljavassist/bytecode/ClassFile;)V
         8: .line 1576
            getstatic javassist.CtClassType.debugDump:Ljava/lang/String;
            ifnull 10
         9: .line 1577
            aload 0 /* this */
            aload 2 /* cf */
            invokevirtual javassist.CtClassType.dumpClassFile:(Ljavassist/bytecode/ClassFile;)V
        10: .line 1579
      StackMap locals:
      StackMap stack:
            aload 2 /* cf */
            aload 1 /* out */
            invokevirtual javassist.bytecode.ClassFile.write:(Ljava/io/DataOutputStream;)V
        11: .line 1580
            aload 1 /* out */
            invokevirtual java.io.DataOutputStream.flush:()V
        12: .line 1581
            aload 0 /* this */
            aconst_null
            putfield javassist.CtClassType.fieldInitializers:Ljavassist/FieldInitLink;
        13: .line 1582
            aload 0 /* this */
            getfield javassist.CtClassType.doPruning:Z
            ifeq 18
        14: .line 1584
            aload 2 /* cf */
            invokevirtual javassist.bytecode.ClassFile.prune:()V
        15: .line 1585
            aload 0 /* this */
            iconst_1
            putfield javassist.CtClassType.wasPruned:Z
        end local 2 // javassist.bytecode.ClassFile cf
        16: .line 1587
            goto 18
        17: .line 1589
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javassist.CtClassType.classPool:Ljavassist/ClassPool;
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getName:()Ljava/lang/String;
            aload 1 /* out */
            invokevirtual javassist.ClassPool.writeClassfile:(Ljava/lang/String;Ljava/io/OutputStream;)V
        18: .line 1594
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield javassist.CtClassType.getCount:I
        19: .line 1595
            aload 0 /* this */
            iconst_1
            putfield javassist.CtClassType.wasFrozen:Z
        20: .line 1596
            goto 25
        21: .line 1597
      StackMap locals:
      StackMap stack: javassist.NotFoundException
            astore 2 /* e */
        start local 2 // javassist.NotFoundException e
        22: .line 1598
            new javassist.CannotCompileException
            dup
            aload 2 /* e */
            invokespecial javassist.CannotCompileException.<init>:(Ljavassist/NotFoundException;)V
            athrow
        end local 2 // javassist.NotFoundException e
        23: .line 1600
      StackMap locals:
      StackMap stack: java.io.IOException
            astore 2 /* e */
        start local 2 // java.io.IOException e
        24: .line 1601
            new javassist.CannotCompileException
            dup
            aload 2 /* e */
            invokespecial javassist.CannotCompileException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 2 // java.io.IOException e
        25: .line 1603
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.io.DataOutputStream out
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   26     0  this  Ljavassist/CtClassType;
            0   26     1   out  Ljava/io/DataOutputStream;
            3   16     2    cf  Ljavassist/bytecode/ClassFile;
           22   23     2     e  Ljavassist/NotFoundException;
           24   25     2     e  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           0    20      21  Class javassist.NotFoundException
           0    20      23  Class java.io.IOException
    Exceptions:
      throws javassist.CannotCompileException, java.io.IOException
    MethodParameters:
      Name  Flags
      out   

  private void dumpClassFile(javassist.bytecode.ClassFile);
    descriptor: (Ljavassist/bytecode/ClassFile;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // javassist.CtClassType this
        start local 1 // javassist.bytecode.ClassFile cf
         0: .line 1607
            aload 0 /* this */
            getstatic javassist.CtClassType.debugDump:Ljava/lang/String;
            invokevirtual javassist.CtClassType.makeFileOutput:(Ljava/lang/String;)Ljava/io/DataOutputStream;
            astore 2 /* dump */
        start local 2 // java.io.DataOutputStream dump
         1: .line 1609
            aload 1 /* cf */
            aload 2 /* dump */
            invokevirtual javassist.bytecode.ClassFile.write:(Ljava/io/DataOutputStream;)V
         2: .line 1610
            goto 6
         3: .line 1611
      StackMap locals: javassist.CtClassType javassist.bytecode.ClassFile java.io.DataOutputStream
      StackMap stack: java.lang.Throwable
            astore 3
         4: .line 1612
            aload 2 /* dump */
            invokevirtual java.io.DataOutputStream.close:()V
         5: .line 1613
            aload 3
            athrow
         6: .line 1612
      StackMap locals:
      StackMap stack:
            aload 2 /* dump */
            invokevirtual java.io.DataOutputStream.close:()V
         7: .line 1614
            return
        end local 2 // java.io.DataOutputStream dump
        end local 1 // javassist.bytecode.ClassFile cf
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Ljavassist/CtClassType;
            0    8     1    cf  Ljavassist/bytecode/ClassFile;
            1    8     2  dump  Ljava/io/DataOutputStream;
      Exception table:
        from    to  target  type
           1     3       3  any
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      cf    

  private void checkPruned(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // javassist.CtClassType this
        start local 1 // java.lang.String method
         0: .line 1620
            aload 0 /* this */
            getfield javassist.CtClassType.wasPruned:Z
            ifeq 4
         1: .line 1621
            new java.lang.RuntimeException
            dup
            new java.lang.StringBuilder
            dup
            aload 1 /* method */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "(): "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         2: .line 1622
            ldc " was pruned."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         3: .line 1621
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 1623
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.String method
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Ljavassist/CtClassType;
            0    5     1  method  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      method  

  public boolean stopPruning(boolean);
    descriptor: (Z)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // javassist.CtClassType this
        start local 1 // boolean stop
         0: .line 1628
            aload 0 /* this */
            getfield javassist.CtClassType.doPruning:Z
            ifeq 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_1
      StackMap locals:
      StackMap stack: int
         2: istore 2 /* prev */
        start local 2 // boolean prev
         3: .line 1629
            aload 0 /* this */
            iload 1 /* stop */
            ifeq 4
            iconst_0
            goto 5
      StackMap locals: javassist.CtClassType int int
      StackMap stack: javassist.CtClassType
         4: iconst_1
      StackMap locals: javassist.CtClassType int int
      StackMap stack: javassist.CtClassType int
         5: putfield javassist.CtClassType.doPruning:Z
         6: .line 1630
            iload 2 /* prev */
            ireturn
        end local 2 // boolean prev
        end local 1 // boolean stop
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Ljavassist/CtClassType;
            0    7     1  stop  Z
            3    7     2  prev  Z
    MethodParameters:
      Name  Flags
      stop  

  private void modifyClassConstructor(javassist.bytecode.ClassFile);
    descriptor: (Ljavassist/bytecode/ClassFile;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=9, args_size=2
        start local 0 // javassist.CtClassType this
        start local 1 // javassist.bytecode.ClassFile cf
         0: .line 1636
            aload 0 /* this */
            getfield javassist.CtClassType.fieldInitializers:Ljavassist/FieldInitLink;
            ifnonnull 2
         1: .line 1637
            return
         2: .line 1639
      StackMap locals:
      StackMap stack:
            new javassist.bytecode.Bytecode
            dup
            aload 1 /* cf */
            invokevirtual javassist.bytecode.ClassFile.getConstPool:()Ljavassist/bytecode/ConstPool;
            iconst_0
            iconst_0
            invokespecial javassist.bytecode.Bytecode.<init>:(Ljavassist/bytecode/ConstPool;II)V
            astore 2 /* code */
        start local 2 // javassist.bytecode.Bytecode code
         3: .line 1640
            new javassist.compiler.Javac
            dup
            aload 2 /* code */
            aload 0 /* this */
            invokespecial javassist.compiler.Javac.<init>:(Ljavassist/bytecode/Bytecode;Ljavassist/CtClass;)V
            astore 3 /* jv */
        start local 3 // javassist.compiler.Javac jv
         4: .line 1641
            iconst_0
            istore 4 /* stacksize */
        start local 4 // int stacksize
         5: .line 1642
            iconst_0
            istore 5 /* doInit */
        start local 5 // boolean doInit
         6: .line 1643
            aload 0 /* this */
            getfield javassist.CtClassType.fieldInitializers:Ljavassist/FieldInitLink;
            astore 6 /* fi */
        start local 6 // javassist.FieldInitLink fi
         7: goto 17
         8: .line 1644
      StackMap locals: javassist.CtClassType javassist.bytecode.ClassFile javassist.bytecode.Bytecode javassist.compiler.Javac int int javassist.FieldInitLink
      StackMap stack:
            aload 6 /* fi */
            getfield javassist.FieldInitLink.field:Ljavassist/CtField;
            astore 7 /* f */
        start local 7 // javassist.CtField f
         9: .line 1645
            aload 7 /* f */
            invokevirtual javassist.CtField.getModifiers:()I
            invokestatic javassist.Modifier.isStatic:(I)Z
            ifeq 16
        10: .line 1646
            iconst_1
            istore 5 /* doInit */
        11: .line 1647
            aload 6 /* fi */
            getfield javassist.FieldInitLink.init:Ljavassist/CtField$Initializer;
            aload 7 /* f */
            invokevirtual javassist.CtField.getType:()Ljavassist/CtClass;
            aload 7 /* f */
            invokevirtual javassist.CtField.getName:()Ljava/lang/String;
        12: .line 1648
            aload 2 /* code */
            aload 3 /* jv */
        13: .line 1647
            invokevirtual javassist.CtField$Initializer.compileIfStatic:(Ljavassist/CtClass;Ljava/lang/String;Ljavassist/bytecode/Bytecode;Ljavassist/compiler/Javac;)I
            istore 8 /* s */
        start local 8 // int s
        14: .line 1649
            iload 4 /* stacksize */
            iload 8 /* s */
            if_icmpge 16
        15: .line 1650
            iload 8 /* s */
            istore 4 /* stacksize */
        end local 8 // int s
        end local 7 // javassist.CtField f
        16: .line 1643
      StackMap locals:
      StackMap stack:
            aload 6 /* fi */
            getfield javassist.FieldInitLink.next:Ljavassist/FieldInitLink;
            astore 6 /* fi */
      StackMap locals:
      StackMap stack:
        17: aload 6 /* fi */
            ifnonnull 8
        end local 6 // javassist.FieldInitLink fi
        18: .line 1654
            iload 5 /* doInit */
            ifeq 20
        19: .line 1655
            aload 0 /* this */
            aload 1 /* cf */
            aload 2 /* code */
            iload 4 /* stacksize */
            iconst_0
            invokevirtual javassist.CtClassType.modifyClassConstructor:(Ljavassist/bytecode/ClassFile;Ljavassist/bytecode/Bytecode;II)V
        20: .line 1656
      StackMap locals:
      StackMap stack:
            return
        end local 5 // boolean doInit
        end local 4 // int stacksize
        end local 3 // javassist.compiler.Javac jv
        end local 2 // javassist.bytecode.Bytecode code
        end local 1 // javassist.bytecode.ClassFile cf
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   21     0       this  Ljavassist/CtClassType;
            0   21     1         cf  Ljavassist/bytecode/ClassFile;
            3   21     2       code  Ljavassist/bytecode/Bytecode;
            4   21     3         jv  Ljavassist/compiler/Javac;
            5   21     4  stacksize  I
            6   21     5     doInit  Z
            7   18     6         fi  Ljavassist/FieldInitLink;
            9   16     7          f  Ljavassist/CtField;
           14   16     8          s  I
    Exceptions:
      throws javassist.CannotCompileException, javassist.NotFoundException
    MethodParameters:
      Name  Flags
      cf    

  private void modifyClassConstructor(javassist.bytecode.ClassFile, javassist.bytecode.Bytecode, int, int);
    descriptor: (Ljavassist/bytecode/ClassFile;Ljavassist/bytecode/Bytecode;II)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=11, args_size=5
        start local 0 // javassist.CtClassType this
        start local 1 // javassist.bytecode.ClassFile cf
        start local 2 // javassist.bytecode.Bytecode code
        start local 3 // int stacksize
        start local 4 // int localsize
         0: .line 1662
            aload 1 /* cf */
            invokevirtual javassist.bytecode.ClassFile.getStaticInitializer:()Ljavassist/bytecode/MethodInfo;
            astore 5 /* m */
        start local 5 // javassist.bytecode.MethodInfo m
         1: .line 1663
            aload 5 /* m */
            ifnonnull 13
         2: .line 1664
            aload 2 /* code */
            sipush 177
            invokevirtual javassist.bytecode.Bytecode.add:(I)V
         3: .line 1665
            aload 2 /* code */
            iload 3 /* stacksize */
            invokevirtual javassist.bytecode.Bytecode.setMaxStack:(I)V
         4: .line 1666
            aload 2 /* code */
            iload 4 /* localsize */
            invokevirtual javassist.bytecode.Bytecode.setMaxLocals:(I)V
         5: .line 1667
            new javassist.bytecode.MethodInfo
            dup
            aload 1 /* cf */
            invokevirtual javassist.bytecode.ClassFile.getConstPool:()Ljavassist/bytecode/ConstPool;
            ldc "<clinit>"
            ldc "()V"
            invokespecial javassist.bytecode.MethodInfo.<init>:(Ljavassist/bytecode/ConstPool;Ljava/lang/String;Ljava/lang/String;)V
            astore 5 /* m */
         6: .line 1668
            aload 5 /* m */
            bipush 8
            invokevirtual javassist.bytecode.MethodInfo.setAccessFlags:(I)V
         7: .line 1669
            aload 5 /* m */
            aload 2 /* code */
            invokevirtual javassist.bytecode.Bytecode.toCodeAttribute:()Ljavassist/bytecode/CodeAttribute;
            invokevirtual javassist.bytecode.MethodInfo.setCodeAttribute:(Ljavassist/bytecode/CodeAttribute;)V
         8: .line 1670
            aload 1 /* cf */
            aload 5 /* m */
            invokevirtual javassist.bytecode.ClassFile.addMethod:(Ljavassist/bytecode/MethodInfo;)V
         9: .line 1671
            aload 0 /* this */
            invokevirtual javassist.CtClassType.hasMemberCache:()Ljavassist/CtMember$Cache;
            astore 6 /* cache */
        start local 6 // javassist.CtMember$Cache cache
        10: .line 1672
            aload 6 /* cache */
            ifnull 28
        11: .line 1673
            aload 6 /* cache */
            new javassist.CtConstructor
            dup
            aload 5 /* m */
            aload 0 /* this */
            invokespecial javassist.CtConstructor.<init>:(Ljavassist/bytecode/MethodInfo;Ljavassist/CtClass;)V
            invokevirtual javassist.CtMember$Cache.addConstructor:(Ljavassist/CtMember;)V
        end local 6 // javassist.CtMember$Cache cache
        12: .line 1674
            goto 28
        13: .line 1676
      StackMap locals: javassist.bytecode.MethodInfo
      StackMap stack:
            aload 5 /* m */
            invokevirtual javassist.bytecode.MethodInfo.getCodeAttribute:()Ljavassist/bytecode/CodeAttribute;
            astore 6 /* codeAttr */
        start local 6 // javassist.bytecode.CodeAttribute codeAttr
        14: .line 1677
            aload 6 /* codeAttr */
            ifnonnull 16
        15: .line 1678
            new javassist.CannotCompileException
            dup
            ldc "empty <clinit>"
            invokespecial javassist.CannotCompileException.<init>:(Ljava/lang/String;)V
            athrow
        16: .line 1681
      StackMap locals: javassist.bytecode.CodeAttribute
      StackMap stack:
            aload 6 /* codeAttr */
            invokevirtual javassist.bytecode.CodeAttribute.iterator:()Ljavassist/bytecode/CodeIterator;
            astore 7 /* it */
        start local 7 // javassist.bytecode.CodeIterator it
        17: .line 1682
            aload 7 /* it */
            aload 2 /* code */
            invokevirtual javassist.bytecode.Bytecode.get:()[B
            invokevirtual javassist.bytecode.CodeIterator.insertEx:([B)I
            istore 8 /* pos */
        start local 8 // int pos
        18: .line 1683
            aload 7 /* it */
            aload 2 /* code */
            invokevirtual javassist.bytecode.Bytecode.getExceptionTable:()Ljavassist/bytecode/ExceptionTable;
            iload 8 /* pos */
            invokevirtual javassist.bytecode.CodeIterator.insert:(Ljavassist/bytecode/ExceptionTable;I)V
        19: .line 1684
            aload 6 /* codeAttr */
            invokevirtual javassist.bytecode.CodeAttribute.getMaxStack:()I
            istore 9 /* maxstack */
        start local 9 // int maxstack
        20: .line 1685
            iload 9 /* maxstack */
            iload 3 /* stacksize */
            if_icmpge 22
        21: .line 1686
            aload 6 /* codeAttr */
            iload 3 /* stacksize */
            invokevirtual javassist.bytecode.CodeAttribute.setMaxStack:(I)V
        22: .line 1688
      StackMap locals: javassist.bytecode.CodeIterator int int
      StackMap stack:
            aload 6 /* codeAttr */
            invokevirtual javassist.bytecode.CodeAttribute.getMaxLocals:()I
            istore 10 /* maxlocals */
        start local 10 // int maxlocals
        23: .line 1689
            iload 10 /* maxlocals */
            iload 4 /* localsize */
            if_icmpge 28
        24: .line 1690
            aload 6 /* codeAttr */
            iload 4 /* localsize */
            invokevirtual javassist.bytecode.CodeAttribute.setMaxLocals:(I)V
        end local 10 // int maxlocals
        end local 9 // int maxstack
        end local 8 // int pos
        end local 7 // javassist.bytecode.CodeIterator it
        25: .line 1691
            goto 28
        26: .line 1692
      StackMap locals: javassist.CtClassType javassist.bytecode.ClassFile javassist.bytecode.Bytecode int int javassist.bytecode.MethodInfo javassist.bytecode.CodeAttribute
      StackMap stack: javassist.bytecode.BadBytecode
            astore 7 /* e */
        start local 7 // javassist.bytecode.BadBytecode e
        27: .line 1693
            new javassist.CannotCompileException
            dup
            aload 7 /* e */
            invokespecial javassist.CannotCompileException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 7 // javassist.bytecode.BadBytecode e
        end local 6 // javassist.bytecode.CodeAttribute codeAttr
        28: .line 1698
      StackMap locals:
      StackMap stack:
            aload 5 /* m */
            aload 0 /* this */
            getfield javassist.CtClassType.classPool:Ljavassist/ClassPool;
            aload 1 /* cf */
            invokevirtual javassist.bytecode.MethodInfo.rebuildStackMapIf6:(Ljavassist/ClassPool;Ljavassist/bytecode/ClassFile;)V
        29: .line 1699
            goto 32
        30: .line 1700
      StackMap locals:
      StackMap stack: javassist.bytecode.BadBytecode
            astore 6 /* e */
        start local 6 // javassist.bytecode.BadBytecode e
        31: .line 1701
            new javassist.CannotCompileException
            dup
            aload 6 /* e */
            invokespecial javassist.CannotCompileException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 6 // javassist.bytecode.BadBytecode e
        32: .line 1703
      StackMap locals:
      StackMap stack:
            return
        end local 5 // javassist.bytecode.MethodInfo m
        end local 4 // int localsize
        end local 3 // int stacksize
        end local 2 // javassist.bytecode.Bytecode code
        end local 1 // javassist.bytecode.ClassFile cf
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   33     0       this  Ljavassist/CtClassType;
            0   33     1         cf  Ljavassist/bytecode/ClassFile;
            0   33     2       code  Ljavassist/bytecode/Bytecode;
            0   33     3  stacksize  I
            0   33     4  localsize  I
            1   33     5          m  Ljavassist/bytecode/MethodInfo;
           10   12     6      cache  Ljavassist/CtMember$Cache;
           14   28     6   codeAttr  Ljavassist/bytecode/CodeAttribute;
           17   25     7         it  Ljavassist/bytecode/CodeIterator;
           18   25     8        pos  I
           20   25     9   maxstack  I
           23   25    10  maxlocals  I
           27   28     7          e  Ljavassist/bytecode/BadBytecode;
           31   32     6          e  Ljavassist/bytecode/BadBytecode;
      Exception table:
        from    to  target  type
          16    25      26  Class javassist.bytecode.BadBytecode
          28    29      30  Class javassist.bytecode.BadBytecode
    Exceptions:
      throws javassist.CannotCompileException
    MethodParameters:
           Name  Flags
      cf         
      code       
      stacksize  
      localsize  

  private void modifyConstructors(javassist.bytecode.ClassFile);
    descriptor: (Ljavassist/bytecode/ClassFile;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=10, args_size=2
        start local 0 // javassist.CtClassType this
        start local 1 // javassist.bytecode.ClassFile cf
         0: .line 1708
            aload 0 /* this */
            getfield javassist.CtClassType.fieldInitializers:Ljavassist/FieldInitLink;
            ifnonnull 2
         1: .line 1709
            return
         2: .line 1711
      StackMap locals:
      StackMap stack:
            aload 1 /* cf */
            invokevirtual javassist.bytecode.ClassFile.getConstPool:()Ljavassist/bytecode/ConstPool;
            astore 2 /* cp */
        start local 2 // javassist.bytecode.ConstPool cp
         3: .line 1712
            aload 1 /* cf */
            invokevirtual javassist.bytecode.ClassFile.getMethods:()Ljava/util/List;
            astore 3 /* methods */
        start local 3 // java.util.List methods
         4: .line 1713
            aload 3 /* methods */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 5
            goto 22
      StackMap locals: javassist.CtClassType javassist.bytecode.ClassFile javassist.bytecode.ConstPool java.util.List top java.util.Iterator
      StackMap stack:
         5: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javassist.bytecode.MethodInfo
            astore 4 /* minfo */
        start local 4 // javassist.bytecode.MethodInfo minfo
         6: .line 1714
            aload 4 /* minfo */
            invokevirtual javassist.bytecode.MethodInfo.isConstructor:()Z
            ifeq 22
         7: .line 1715
            aload 4 /* minfo */
            invokevirtual javassist.bytecode.MethodInfo.getCodeAttribute:()Ljavassist/bytecode/CodeAttribute;
            astore 6 /* codeAttr */
        start local 6 // javassist.bytecode.CodeAttribute codeAttr
         8: .line 1716
            aload 6 /* codeAttr */
            ifnull 22
         9: .line 1718
            new javassist.bytecode.Bytecode
            dup
            aload 2 /* cp */
            iconst_0
        10: .line 1719
            aload 6 /* codeAttr */
            invokevirtual javassist.bytecode.CodeAttribute.getMaxLocals:()I
        11: .line 1718
            invokespecial javassist.bytecode.Bytecode.<init>:(Ljavassist/bytecode/ConstPool;II)V
            astore 7 /* init */
        start local 7 // javassist.bytecode.Bytecode init
        12: .line 1722
            aload 4 /* minfo */
            invokevirtual javassist.bytecode.MethodInfo.getDescriptor:()Ljava/lang/String;
        13: .line 1723
            aload 0 /* this */
            getfield javassist.CtClassType.classPool:Ljavassist/ClassPool;
        14: .line 1721
            invokestatic javassist.bytecode.Descriptor.getParameterTypes:(Ljava/lang/String;Ljavassist/ClassPool;)[Ljavassist/CtClass;
        15: .line 1720
            astore 8 /* params */
        start local 8 // javassist.CtClass[] params
        16: .line 1724
            aload 0 /* this */
            aload 7 /* init */
            aload 8 /* params */
            invokevirtual javassist.CtClassType.makeFieldInitializer:(Ljavassist/bytecode/Bytecode;[Ljavassist/CtClass;)I
            istore 9 /* stacksize */
        start local 9 // int stacksize
        17: .line 1725
            aload 6 /* codeAttr */
            aload 7 /* init */
            iload 9 /* stacksize */
            invokestatic javassist.CtClassType.insertAuxInitializer:(Ljavassist/bytecode/CodeAttribute;Ljavassist/bytecode/Bytecode;I)V
        18: .line 1726
            aload 4 /* minfo */
            aload 0 /* this */
            getfield javassist.CtClassType.classPool:Ljavassist/ClassPool;
            aload 1 /* cf */
            invokevirtual javassist.bytecode.MethodInfo.rebuildStackMapIf6:(Ljavassist/ClassPool;Ljavassist/bytecode/ClassFile;)V
        end local 9 // int stacksize
        end local 8 // javassist.CtClass[] params
        end local 7 // javassist.bytecode.Bytecode init
        19: .line 1727
            goto 22
        20: .line 1728
      StackMap locals: javassist.CtClassType javassist.bytecode.ClassFile javassist.bytecode.ConstPool java.util.List javassist.bytecode.MethodInfo java.util.Iterator javassist.bytecode.CodeAttribute
      StackMap stack: javassist.bytecode.BadBytecode
            astore 7 /* e */
        start local 7 // javassist.bytecode.BadBytecode e
        21: .line 1729
            new javassist.CannotCompileException
            dup
            aload 7 /* e */
            invokespecial javassist.CannotCompileException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 7 // javassist.bytecode.BadBytecode e
        end local 6 // javassist.bytecode.CodeAttribute codeAttr
        end local 4 // javassist.bytecode.MethodInfo minfo
        22: .line 1713
      StackMap locals: javassist.CtClassType javassist.bytecode.ClassFile javassist.bytecode.ConstPool java.util.List top java.util.Iterator
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
        23: .line 1733
            return
        end local 3 // java.util.List methods
        end local 2 // javassist.bytecode.ConstPool cp
        end local 1 // javassist.bytecode.ClassFile cf
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   24     0       this  Ljavassist/CtClassType;
            0   24     1         cf  Ljavassist/bytecode/ClassFile;
            3   24     2         cp  Ljavassist/bytecode/ConstPool;
            4   24     3    methods  Ljava/util/List<Ljavassist/bytecode/MethodInfo;>;
            6   22     4      minfo  Ljavassist/bytecode/MethodInfo;
            8   22     6   codeAttr  Ljavassist/bytecode/CodeAttribute;
           12   19     7       init  Ljavassist/bytecode/Bytecode;
           16   19     8     params  [Ljavassist/CtClass;
           17   19     9  stacksize  I
           21   22     7          e  Ljavassist/bytecode/BadBytecode;
      Exception table:
        from    to  target  type
           9    19      20  Class javassist.bytecode.BadBytecode
    Exceptions:
      throws javassist.CannotCompileException, javassist.NotFoundException
    MethodParameters:
      Name  Flags
      cf    

  private static void insertAuxInitializer(javassist.bytecode.CodeAttribute, javassist.bytecode.Bytecode, int);
    descriptor: (Ljavassist/bytecode/CodeAttribute;Ljavassist/bytecode/Bytecode;I)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=7, args_size=3
        start local 0 // javassist.bytecode.CodeAttribute codeAttr
        start local 1 // javassist.bytecode.Bytecode initializer
        start local 2 // int stacksize
         0: .line 1740
            aload 0 /* codeAttr */
            invokevirtual javassist.bytecode.CodeAttribute.iterator:()Ljavassist/bytecode/CodeIterator;
            astore 3 /* it */
        start local 3 // javassist.bytecode.CodeIterator it
         1: .line 1741
            aload 3 /* it */
            invokevirtual javassist.bytecode.CodeIterator.skipSuperConstructor:()I
            istore 4 /* index */
        start local 4 // int index
         2: .line 1742
            iload 4 /* index */
            ifge 6
         3: .line 1743
            aload 3 /* it */
            invokevirtual javassist.bytecode.CodeIterator.skipThisConstructor:()I
            istore 4 /* index */
         4: .line 1744
            iload 4 /* index */
            iflt 6
         5: .line 1745
            return
         6: .line 1750
      StackMap locals: javassist.bytecode.CodeIterator int
      StackMap stack:
            aload 3 /* it */
            aload 1 /* initializer */
            invokevirtual javassist.bytecode.Bytecode.get:()[B
            invokevirtual javassist.bytecode.CodeIterator.insertEx:([B)I
            istore 5 /* pos */
        start local 5 // int pos
         7: .line 1751
            aload 3 /* it */
            aload 1 /* initializer */
            invokevirtual javassist.bytecode.Bytecode.getExceptionTable:()Ljavassist/bytecode/ExceptionTable;
            iload 5 /* pos */
            invokevirtual javassist.bytecode.CodeIterator.insert:(Ljavassist/bytecode/ExceptionTable;I)V
         8: .line 1752
            aload 0 /* codeAttr */
            invokevirtual javassist.bytecode.CodeAttribute.getMaxStack:()I
            istore 6 /* maxstack */
        start local 6 // int maxstack
         9: .line 1753
            iload 6 /* maxstack */
            iload 2 /* stacksize */
            if_icmpge 11
        10: .line 1754
            aload 0 /* codeAttr */
            iload 2 /* stacksize */
            invokevirtual javassist.bytecode.CodeAttribute.setMaxStack:(I)V
        11: .line 1755
      StackMap locals: int int
      StackMap stack:
            return
        end local 6 // int maxstack
        end local 5 // int pos
        end local 4 // int index
        end local 3 // javassist.bytecode.CodeIterator it
        end local 2 // int stacksize
        end local 1 // javassist.bytecode.Bytecode initializer
        end local 0 // javassist.bytecode.CodeAttribute codeAttr
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   12     0     codeAttr  Ljavassist/bytecode/CodeAttribute;
            0   12     1  initializer  Ljavassist/bytecode/Bytecode;
            0   12     2    stacksize  I
            1   12     3           it  Ljavassist/bytecode/CodeIterator;
            2   12     4        index  I
            7   12     5          pos  I
            9   12     6     maxstack  I
    Exceptions:
      throws javassist.bytecode.BadBytecode
    MethodParameters:
             Name  Flags
      codeAttr     
      initializer  
      stacksize    

  private int makeFieldInitializer(javassist.bytecode.Bytecode, javassist.CtClass[]);
    descriptor: (Ljavassist/bytecode/Bytecode;[Ljavassist/CtClass;)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=8, args_size=3
        start local 0 // javassist.CtClassType this
        start local 1 // javassist.bytecode.Bytecode code
        start local 2 // javassist.CtClass[] parameters
         0: .line 1760
            iconst_0
            istore 3 /* stacksize */
        start local 3 // int stacksize
         1: .line 1761
            new javassist.compiler.Javac
            dup
            aload 1 /* code */
            aload 0 /* this */
            invokespecial javassist.compiler.Javac.<init>:(Ljavassist/bytecode/Bytecode;Ljavassist/CtClass;)V
            astore 4 /* jv */
        start local 4 // javassist.compiler.Javac jv
         2: .line 1763
            aload 4 /* jv */
            aload 2 /* parameters */
            iconst_0
            invokevirtual javassist.compiler.Javac.recordParams:([Ljavassist/CtClass;Z)I
            pop
         3: .line 1764
            goto 6
         4: .line 1765
      StackMap locals: javassist.CtClassType javassist.bytecode.Bytecode javassist.CtClass[] int javassist.compiler.Javac
      StackMap stack: javassist.compiler.CompileError
            astore 5 /* e */
        start local 5 // javassist.compiler.CompileError e
         5: .line 1766
            new javassist.CannotCompileException
            dup
            aload 5 /* e */
            invokespecial javassist.CannotCompileException.<init>:(Ljavassist/compiler/CompileError;)V
            athrow
        end local 5 // javassist.compiler.CompileError e
         6: .line 1769
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javassist.CtClassType.fieldInitializers:Ljavassist/FieldInitLink;
            astore 5 /* fi */
        start local 5 // javassist.FieldInitLink fi
         7: goto 16
         8: .line 1770
      StackMap locals: javassist.FieldInitLink
      StackMap stack:
            aload 5 /* fi */
            getfield javassist.FieldInitLink.field:Ljavassist/CtField;
            astore 6 /* f */
        start local 6 // javassist.CtField f
         9: .line 1771
            aload 6 /* f */
            invokevirtual javassist.CtField.getModifiers:()I
            invokestatic javassist.Modifier.isStatic:(I)Z
            ifne 15
        10: .line 1772
            aload 5 /* fi */
            getfield javassist.FieldInitLink.init:Ljavassist/CtField$Initializer;
            aload 6 /* f */
            invokevirtual javassist.CtField.getType:()Ljavassist/CtClass;
            aload 6 /* f */
            invokevirtual javassist.CtField.getName:()Ljava/lang/String;
            aload 1 /* code */
        11: .line 1773
            aload 2 /* parameters */
            aload 4 /* jv */
        12: .line 1772
            invokevirtual javassist.CtField$Initializer.compile:(Ljavassist/CtClass;Ljava/lang/String;Ljavassist/bytecode/Bytecode;[Ljavassist/CtClass;Ljavassist/compiler/Javac;)I
            istore 7 /* s */
        start local 7 // int s
        13: .line 1774
            iload 3 /* stacksize */
            iload 7 /* s */
            if_icmpge 15
        14: .line 1775
            iload 7 /* s */
            istore 3 /* stacksize */
        end local 7 // int s
        end local 6 // javassist.CtField f
        15: .line 1769
      StackMap locals:
      StackMap stack:
            aload 5 /* fi */
            getfield javassist.FieldInitLink.next:Ljavassist/FieldInitLink;
            astore 5 /* fi */
      StackMap locals:
      StackMap stack:
        16: aload 5 /* fi */
            ifnonnull 8
        end local 5 // javassist.FieldInitLink fi
        17: .line 1779
            iload 3 /* stacksize */
            ireturn
        end local 4 // javassist.compiler.Javac jv
        end local 3 // int stacksize
        end local 2 // javassist.CtClass[] parameters
        end local 1 // javassist.bytecode.Bytecode code
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   18     0        this  Ljavassist/CtClassType;
            0   18     1        code  Ljavassist/bytecode/Bytecode;
            0   18     2  parameters  [Ljavassist/CtClass;
            1   18     3   stacksize  I
            2   18     4          jv  Ljavassist/compiler/Javac;
            5    6     5           e  Ljavassist/compiler/CompileError;
            7   17     5          fi  Ljavassist/FieldInitLink;
            9   15     6           f  Ljavassist/CtField;
           13   15     7           s  I
      Exception table:
        from    to  target  type
           2     3       4  Class javassist.compiler.CompileError
    Exceptions:
      throws javassist.CannotCompileException, javassist.NotFoundException
    MethodParameters:
            Name  Flags
      code        
      parameters  

  java.util.Map<javassist.CtMethod, java.lang.String> getHiddenMethods();
    descriptor: ()Ljava/util/Map;
    flags: (0x0000) 
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // javassist.CtClassType this
         0: .line 1785
            aload 0 /* this */
            getfield javassist.CtClassType.hiddenMethods:Ljava/util/Map;
            ifnonnull 2
         1: .line 1786
            aload 0 /* this */
            new java.util.Hashtable
            dup
            invokespecial java.util.Hashtable.<init>:()V
            putfield javassist.CtClassType.hiddenMethods:Ljava/util/Map;
         2: .line 1788
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javassist.CtClassType.hiddenMethods:Ljava/util/Map;
            areturn
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljavassist/CtClassType;
    Signature: ()Ljava/util/Map<Ljavassist/CtMethod;Ljava/lang/String;>;

  int getUniqueNumber();
    descriptor: ()I
    flags: (0x0000) 
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // javassist.CtClassType this
         0: .line 1791
            aload 0 /* this */
            dup
            getfield javassist.CtClassType.uniqueNumberSeed:I
            dup_x1
            iconst_1
            iadd
            putfield javassist.CtClassType.uniqueNumberSeed:I
            ireturn
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavassist/CtClassType;

  public java.lang.String makeUniqueName(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=7, args_size=2
        start local 0 // javassist.CtClassType this
        start local 1 // java.lang.String prefix
         0: .line 1795
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 2 /* table */
        start local 2 // java.util.Map table
         1: .line 1796
            aload 0 /* this */
            aload 2 /* table */
            invokevirtual javassist.CtClassType.makeMemberList:(Ljava/util/Map;)V
         2: .line 1797
            aload 2 /* table */
            invokeinterface java.util.Map.keySet:()Ljava/util/Set;
            astore 3 /* keys */
        start local 3 // java.util.Set keys
         3: .line 1798
            aload 3 /* keys */
            invokeinterface java.util.Set.size:()I
            anewarray java.lang.String
            astore 4 /* methods */
        start local 4 // java.lang.String[] methods
         4: .line 1799
            aload 3 /* keys */
            aload 4 /* methods */
            invokeinterface java.util.Set.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            pop
         5: .line 1801
            aload 1 /* prefix */
            aload 4 /* methods */
            invokestatic javassist.CtClassType.notFindInArray:(Ljava/lang/String;[Ljava/lang/String;)Z
            ifeq 7
         6: .line 1802
            aload 1 /* prefix */
            areturn
         7: .line 1804
      StackMap locals: java.util.Map java.util.Set java.lang.String[]
      StackMap stack:
            bipush 100
            istore 5 /* i */
        start local 5 // int i
         8: .line 1807
      StackMap locals: int
      StackMap stack:
            iload 5 /* i */
            sipush 999
            if_icmple 10
         9: .line 1808
            new java.lang.RuntimeException
            dup
            ldc "too many unique name"
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        10: .line 1810
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 1 /* prefix */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 5 /* i */
            iinc 5 /* i */ 1
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 6 /* name */
        start local 6 // java.lang.String name
        11: .line 1811
            aload 6 /* name */
            aload 4 /* methods */
            invokestatic javassist.CtClassType.notFindInArray:(Ljava/lang/String;[Ljava/lang/String;)Z
            ifeq 8
        12: .line 1812
            aload 6 /* name */
            areturn
        end local 6 // java.lang.String name
        end local 5 // int i
        end local 4 // java.lang.String[] methods
        end local 3 // java.util.Set keys
        end local 2 // java.util.Map table
        end local 1 // java.lang.String prefix
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   13     0     this  Ljavassist/CtClassType;
            0   13     1   prefix  Ljava/lang/String;
            1   13     2    table  Ljava/util/Map<Ljava/lang/Object;Ljavassist/CtClassType;>;
            3   13     3     keys  Ljava/util/Set<Ljava/lang/Object;>;
            4   13     4  methods  [Ljava/lang/String;
            8   13     5        i  I
           11   13     6     name  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      prefix  

  private static boolean notFindInArray(java.lang.String, java.lang.String[]);
    descriptor: (Ljava/lang/String;[Ljava/lang/String;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // java.lang.String prefix
        start local 1 // java.lang.String[] values
         0: .line 1816
            aload 1 /* values */
            arraylength
            istore 2 /* len */
        start local 2 // int len
         1: .line 1817
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         2: goto 6
         3: .line 1818
      StackMap locals: int int
      StackMap stack:
            aload 1 /* values */
            iload 3 /* i */
            aaload
            aload 0 /* prefix */
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 5
         4: .line 1819
            iconst_0
            ireturn
         5: .line 1817
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 3 /* i */
            iload 2 /* len */
            if_icmplt 3
        end local 3 // int i
         7: .line 1821
            iconst_1
            ireturn
        end local 2 // int len
        end local 1 // java.lang.String[] values
        end local 0 // java.lang.String prefix
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0  prefix  Ljava/lang/String;
            0    8     1  values  [Ljava/lang/String;
            1    8     2     len  I
            2    7     3       i  I
    MethodParameters:
        Name  Flags
      prefix  
      values  

  private void makeMemberList(java.util.Map<java.lang.Object, javassist.CtClassType>);
    descriptor: (Ljava/util/Map;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=8, args_size=2
        start local 0 // javassist.CtClassType this
        start local 1 // java.util.Map table
         0: .line 1825
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getModifiers:()I
            istore 2 /* mod */
        start local 2 // int mod
         1: .line 1826
            iload 2 /* mod */
            invokestatic javassist.Modifier.isAbstract:(I)Z
            ifne 2
            iload 2 /* mod */
            invokestatic javassist.Modifier.isInterface:(I)Z
            ifeq 11
         2: .line 1828
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getInterfaces:()[Ljavassist/CtClass;
            astore 3 /* ifs */
        start local 3 // javassist.CtClass[] ifs
         3: .line 1829
            aload 3 /* ifs */
            dup
            astore 7
            arraylength
            istore 6
            iconst_0
            istore 5
            goto 8
      StackMap locals: javassist.CtClassType java.util.Map int javassist.CtClass[] top int int javassist.CtClass[]
      StackMap stack:
         4: aload 7
            iload 5
            aaload
            astore 4 /* ic */
        start local 4 // javassist.CtClass ic
         5: .line 1830
            aload 4 /* ic */
            ifnull 7
            aload 4 /* ic */
            instanceof javassist.CtClassType
            ifeq 7
         6: .line 1831
            aload 4 /* ic */
            checkcast javassist.CtClassType
            aload 1 /* table */
            invokevirtual javassist.CtClassType.makeMemberList:(Ljava/util/Map;)V
        end local 4 // javassist.CtClass ic
         7: .line 1829
      StackMap locals:
      StackMap stack:
            iinc 5 1
      StackMap locals:
      StackMap stack:
         8: iload 5
            iload 6
            if_icmplt 4
        end local 3 // javassist.CtClass[] ifs
         9: .line 1832
            goto 11
        10: .line 1833
      StackMap locals: javassist.CtClassType java.util.Map int
      StackMap stack: javassist.NotFoundException
            pop
        11: .line 1836
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getSuperclass:()Ljavassist/CtClass;
            astore 3 /* s */
        start local 3 // javassist.CtClass s
        12: .line 1837
            aload 3 /* s */
            ifnull 16
            aload 3 /* s */
            instanceof javassist.CtClassType
            ifeq 16
        13: .line 1838
            aload 3 /* s */
            checkcast javassist.CtClassType
            aload 1 /* table */
            invokevirtual javassist.CtClassType.makeMemberList:(Ljava/util/Map;)V
        end local 3 // javassist.CtClass s
        14: .line 1839
            goto 16
        15: .line 1840
      StackMap locals:
      StackMap stack: javassist.NotFoundException
            pop
        16: .line 1842
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getClassFile2:()Ljavassist/bytecode/ClassFile;
            invokevirtual javassist.bytecode.ClassFile.getMethods:()Ljava/util/List;
            astore 3 /* methods */
        start local 3 // java.util.List methods
        17: .line 1843
            aload 3 /* methods */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 5
            goto 20
      StackMap locals: javassist.CtClassType java.util.Map int java.util.List top java.util.Iterator
      StackMap stack:
        18: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javassist.bytecode.MethodInfo
            astore 4 /* minfo */
        start local 4 // javassist.bytecode.MethodInfo minfo
        19: .line 1844
            aload 1 /* table */
            aload 4 /* minfo */
            invokevirtual javassist.bytecode.MethodInfo.getName:()Ljava/lang/String;
            aload 0 /* this */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 4 // javassist.bytecode.MethodInfo minfo
        20: .line 1843
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 18
        21: .line 1846
            aload 0 /* this */
            invokevirtual javassist.CtClassType.getClassFile2:()Ljavassist/bytecode/ClassFile;
            invokevirtual javassist.bytecode.ClassFile.getFields:()Ljava/util/List;
            astore 4 /* fields */
        start local 4 // java.util.List fields
        22: .line 1847
            aload 4 /* fields */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 25
      StackMap locals: javassist.CtClassType java.util.Map int java.util.List java.util.List top java.util.Iterator
      StackMap stack:
        23: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javassist.bytecode.FieldInfo
            astore 5 /* finfo */
        start local 5 // javassist.bytecode.FieldInfo finfo
        24: .line 1848
            aload 1 /* table */
            aload 5 /* finfo */
            invokevirtual javassist.bytecode.FieldInfo.getName:()Ljava/lang/String;
            aload 0 /* this */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 5 // javassist.bytecode.FieldInfo finfo
        25: .line 1847
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 23
        26: .line 1849
            return
        end local 4 // java.util.List fields
        end local 3 // java.util.List methods
        end local 2 // int mod
        end local 1 // java.util.Map table
        end local 0 // javassist.CtClassType this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   27     0     this  Ljavassist/CtClassType;
            0   27     1    table  Ljava/util/Map<Ljava/lang/Object;Ljavassist/CtClassType;>;
            1   27     2      mod  I
            3    9     3      ifs  [Ljavassist/CtClass;
            5    7     4       ic  Ljavassist/CtClass;
           12   14     3        s  Ljavassist/CtClass;
           17   27     3  methods  Ljava/util/List<Ljavassist/bytecode/MethodInfo;>;
           19   20     4    minfo  Ljavassist/bytecode/MethodInfo;
           22   27     4   fields  Ljava/util/List<Ljavassist/bytecode/FieldInfo;>;
           24   25     5    finfo  Ljavassist/bytecode/FieldInfo;
      Exception table:
        from    to  target  type
           2     9      10  Class javassist.NotFoundException
          11    14      15  Class javassist.NotFoundException
    Signature: (Ljava/util/Map<Ljava/lang/Object;Ljavassist/CtClassType;>;)V
    MethodParameters:
       Name  Flags
      table  
}
SourceFile: "CtClassType.java"
InnerClasses:
  public abstract Initializer = javassist.CtField$Initializer of javassist.CtField
  Cache = javassist.CtMember$Cache of javassist.CtMember