public class sun.invoke.anon.ConstantPoolParser
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: sun.invoke.anon.ConstantPoolParser
  super_class: java.lang.Object
{
  final byte[] classFile;
    descriptor: [B
    flags: (0x0010) ACC_FINAL

  final byte[] tags;
    descriptor: [B
    flags: (0x0010) ACC_FINAL

  final char[] firstHeader;
    descriptor: [C
    flags: (0x0010) ACC_FINAL

  int endOffset;
    descriptor: I
    flags: (0x0000) 

  char[] secondHeader;
    descriptor: [C
    flags: (0x0000) 

  private char[] charArray;
    descriptor: [C
    flags: (0x0002) ACC_PRIVATE

  static final boolean $assertionsDisabled;
    descriptor: Z
    flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 37
            ldc Lsun/invoke/anon/ConstantPoolParser;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic sun.invoke.anon.ConstantPoolParser.$assertionsDisabled:Z
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(byte[]);
    descriptor: ([B)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // sun.invoke.anon.ConstantPoolParser this
        start local 1 // byte[] classFile
         0: .line 53
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 47
            aload 0 /* this */
            bipush 80
            newarray 5
            putfield sun.invoke.anon.ConstantPoolParser.charArray:[C
         2: .line 54
            aload 0 /* this */
            aload 1 /* classFile */
            putfield sun.invoke.anon.ConstantPoolParser.classFile:[B
         3: .line 55
            aload 0 /* this */
            aload 1 /* classFile */
            invokestatic sun.invoke.anon.ConstantPoolParser.parseHeader:([B)[C
            putfield sun.invoke.anon.ConstantPoolParser.firstHeader:[C
         4: .line 56
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.invoke.anon.ConstantPoolParser.firstHeader:[C
            iconst_4
            caload
            newarray 8
            putfield sun.invoke.anon.ConstantPoolParser.tags:[B
         5: .line 57
            return
        end local 1 // byte[] classFile
        end local 0 // sun.invoke.anon.ConstantPoolParser this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0       this  Lsun/invoke/anon/ConstantPoolParser;
            0    6     1  classFile  [B
    Exceptions:
      throws sun.invoke.anon.InvalidConstantPoolFormatException
    MethodParameters:
           Name  Flags
      classFile  

  public void <init>(java.lang.Class<?>);
    descriptor: (Ljava/lang/Class;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.invoke.anon.ConstantPoolParser this
        start local 1 // java.lang.Class templateClass
         0: .line 72
            aload 0 /* this */
            aload 1 /* templateClass */
            invokestatic sun.invoke.anon.AnonymousClassLoader.readClassFile:(Ljava/lang/Class;)[B
            invokespecial sun.invoke.anon.ConstantPoolParser.<init>:([B)V
         1: .line 73
            return
        end local 1 // java.lang.Class templateClass
        end local 0 // sun.invoke.anon.ConstantPoolParser this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    2     0           this  Lsun/invoke/anon/ConstantPoolParser;
            0    2     1  templateClass  Ljava/lang/Class<*>;
    Exceptions:
      throws java.io.IOException, sun.invoke.anon.InvalidConstantPoolFormatException
    Signature: (Ljava/lang/Class<*>;)V
    MethodParameters:
               Name  Flags
      templateClass  

  public sun.invoke.anon.ConstantPoolPatch createPatch();
    descriptor: ()Lsun/invoke/anon/ConstantPoolPatch;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // sun.invoke.anon.ConstantPoolParser this
         0: .line 80
            new sun.invoke.anon.ConstantPoolPatch
            dup
            aload 0 /* this */
            invokespecial sun.invoke.anon.ConstantPoolPatch.<init>:(Lsun/invoke/anon/ConstantPoolParser;)V
            areturn
        end local 0 // sun.invoke.anon.ConstantPoolParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/invoke/anon/ConstantPoolParser;

  public byte getTag(int);
    descriptor: (I)B
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.invoke.anon.ConstantPoolParser this
        start local 1 // int index
         0: .line 88
            aload 0 /* this */
            invokevirtual sun.invoke.anon.ConstantPoolParser.getEndOffset:()I
            pop
         1: .line 89
            aload 0 /* this */
            getfield sun.invoke.anon.ConstantPoolParser.tags:[B
            iload 1 /* index */
            baload
            ireturn
        end local 1 // int index
        end local 0 // sun.invoke.anon.ConstantPoolParser this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lsun/invoke/anon/ConstantPoolParser;
            0    2     1  index  I
    MethodParameters:
       Name  Flags
      index  

  public int getLength();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.invoke.anon.ConstantPoolParser this
         0: .line 94
            aload 0 /* this */
            getfield sun.invoke.anon.ConstantPoolParser.firstHeader:[C
            iconst_4
            caload
            ireturn
        end local 0 // sun.invoke.anon.ConstantPoolParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/invoke/anon/ConstantPoolParser;

  public int getStartOffset();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.invoke.anon.ConstantPoolParser this
         0: .line 99
            aload 0 /* this */
            getfield sun.invoke.anon.ConstantPoolParser.firstHeader:[C
            arraylength
            iconst_2
            imul
            ireturn
        end local 0 // sun.invoke.anon.ConstantPoolParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/invoke/anon/ConstantPoolParser;

  public int getEndOffset();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // sun.invoke.anon.ConstantPoolParser this
         0: .line 104
            aload 0 /* this */
            getfield sun.invoke.anon.ConstantPoolParser.endOffset:I
            ifne 2
         1: .line 105
            new java.lang.IllegalStateException
            dup
            ldc "class file has not yet been parsed"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 106
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.invoke.anon.ConstantPoolParser.endOffset:I
            ireturn
        end local 0 // sun.invoke.anon.ConstantPoolParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lsun/invoke/anon/ConstantPoolParser;

  public int getThisClassIndex();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.invoke.anon.ConstantPoolParser this
         0: .line 111
            aload 0 /* this */
            invokevirtual sun.invoke.anon.ConstantPoolParser.getEndOffset:()I
            pop
         1: .line 112
            aload 0 /* this */
            getfield sun.invoke.anon.ConstantPoolParser.secondHeader:[C
            iconst_1
            caload
            ireturn
        end local 0 // sun.invoke.anon.ConstantPoolParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/invoke/anon/ConstantPoolParser;

  public int getTailLength();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.invoke.anon.ConstantPoolParser this
         0: .line 117
            aload 0 /* this */
            getfield sun.invoke.anon.ConstantPoolParser.classFile:[B
            arraylength
            aload 0 /* this */
            invokevirtual sun.invoke.anon.ConstantPoolParser.getEndOffset:()I
            isub
            ireturn
        end local 0 // sun.invoke.anon.ConstantPoolParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/invoke/anon/ConstantPoolParser;

  public void writeHead(java.io.OutputStream);
    descriptor: (Ljava/io/OutputStream;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // sun.invoke.anon.ConstantPoolParser this
        start local 1 // java.io.OutputStream out
         0: .line 124
            aload 1 /* out */
            aload 0 /* this */
            getfield sun.invoke.anon.ConstantPoolParser.classFile:[B
            iconst_0
            aload 0 /* this */
            invokevirtual sun.invoke.anon.ConstantPoolParser.getEndOffset:()I
            invokevirtual java.io.OutputStream.write:([BII)V
         1: .line 125
            return
        end local 1 // java.io.OutputStream out
        end local 0 // sun.invoke.anon.ConstantPoolParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/invoke/anon/ConstantPoolParser;
            0    2     1   out  Ljava/io/OutputStream;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      out   

  void writePatchedHead(java.io.OutputStream, java.lang.Object[]);
    descriptor: (Ljava/io/OutputStream;[Ljava/lang/Object;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // sun.invoke.anon.ConstantPoolParser this
        start local 1 // java.io.OutputStream out
        start local 2 // java.lang.Object[] patchArray
         0: .line 134
            new java.lang.UnsupportedOperationException
            dup
            ldc "Not yet implemented"
            invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
            athrow
        end local 2 // java.lang.Object[] patchArray
        end local 1 // java.io.OutputStream out
        end local 0 // sun.invoke.anon.ConstantPoolParser this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lsun/invoke/anon/ConstantPoolParser;
            0    1     1         out  Ljava/io/OutputStream;
            0    1     2  patchArray  [Ljava/lang/Object;
    MethodParameters:
            Name  Flags
      out         
      patchArray  

  public void writeTail(java.io.OutputStream);
    descriptor: (Ljava/io/OutputStream;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // sun.invoke.anon.ConstantPoolParser this
        start local 1 // java.io.OutputStream out
         0: .line 141
            aload 1 /* out */
            aload 0 /* this */
            getfield sun.invoke.anon.ConstantPoolParser.classFile:[B
            aload 0 /* this */
            invokevirtual sun.invoke.anon.ConstantPoolParser.getEndOffset:()I
            aload 0 /* this */
            invokevirtual sun.invoke.anon.ConstantPoolParser.getTailLength:()I
            invokevirtual java.io.OutputStream.write:([BII)V
         1: .line 142
            return
        end local 1 // java.io.OutputStream out
        end local 0 // sun.invoke.anon.ConstantPoolParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/invoke/anon/ConstantPoolParser;
            0    2     1   out  Ljava/io/OutputStream;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      out   

  private static char[] parseHeader(byte[]);
    descriptor: ([B)[C
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=1
        start local 0 // byte[] classFile
         0: .line 145
            iconst_5
            newarray 5
            astore 1 /* result */
        start local 1 // char[] result
         1: .line 146
            aload 0 /* classFile */
            invokestatic java.nio.ByteBuffer.wrap:([B)Ljava/nio/ByteBuffer;
            astore 2 /* buffer */
        start local 2 // java.nio.ByteBuffer buffer
         2: .line 147
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         3: goto 6
         4: .line 148
      StackMap locals: char[] java.nio.ByteBuffer int
      StackMap stack:
            aload 1 /* result */
            iload 3 /* i */
            aload 2 /* buffer */
            invokestatic sun.invoke.anon.ConstantPoolParser.getUnsignedShort:(Ljava/nio/ByteBuffer;)I
            i2c
            castore
         5: .line 147
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 3 /* i */
            aload 1 /* result */
            arraylength
            if_icmplt 4
        end local 3 // int i
         7: .line 149
            aload 1 /* result */
            iconst_0
            caload
            bipush 16
            ishl
            aload 1 /* result */
            iconst_1
            caload
            iconst_0
            ishl
            ior
            istore 3 /* magic */
        start local 3 // int magic
         8: .line 150
            iload 3 /* magic */
            ldc -889275714
            if_icmpeq 10
         9: .line 151
            new sun.invoke.anon.InvalidConstantPoolFormatException
            dup
            new java.lang.StringBuilder
            dup
            ldc "invalid magic number "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 3 /* magic */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial sun.invoke.anon.InvalidConstantPoolFormatException.<init>:(Ljava/lang/String;)V
            athrow
        10: .line 153
      StackMap locals:
      StackMap stack:
            aload 1 /* result */
            iconst_4
            caload
            istore 4 /* len */
        start local 4 // int len
        11: .line 154
            iload 4 /* len */
            iconst_1
            if_icmpge 13
        12: .line 155
            new sun.invoke.anon.InvalidConstantPoolFormatException
            dup
            ldc "constant pool length < 1"
            invokespecial sun.invoke.anon.InvalidConstantPoolFormatException.<init>:(Ljava/lang/String;)V
            athrow
        13: .line 156
      StackMap locals: int
      StackMap stack:
            aload 1 /* result */
            areturn
        end local 4 // int len
        end local 3 // int magic
        end local 2 // java.nio.ByteBuffer buffer
        end local 1 // char[] result
        end local 0 // byte[] classFile
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   14     0  classFile  [B
            1   14     1     result  [C
            2   14     2     buffer  Ljava/nio/ByteBuffer;
            3    7     3          i  I
            8   14     3      magic  I
           11   14     4        len  I
    Exceptions:
      throws sun.invoke.anon.InvalidConstantPoolFormatException
    MethodParameters:
           Name  Flags
      classFile  

  public void parse(sun.invoke.anon.ConstantPoolVisitor);
    descriptor: (Lsun/invoke/anon/ConstantPoolVisitor;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // sun.invoke.anon.ConstantPoolParser this
        start local 1 // sun.invoke.anon.ConstantPoolVisitor visitor
         0: .line 169
            aload 0 /* this */
            getfield sun.invoke.anon.ConstantPoolParser.classFile:[B
            invokestatic java.nio.ByteBuffer.wrap:([B)Ljava/nio/ByteBuffer;
            astore 2 /* buffer */
        start local 2 // java.nio.ByteBuffer buffer
         1: .line 170
            aload 2 /* buffer */
            aload 0 /* this */
            invokevirtual sun.invoke.anon.ConstantPoolParser.getStartOffset:()I
            invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
            pop
         2: .line 172
            aload 0 /* this */
            invokevirtual sun.invoke.anon.ConstantPoolParser.getLength:()I
            anewarray java.lang.Object
            astore 3 /* values */
        start local 3 // java.lang.Object[] values
         3: .line 174
            aload 0 /* this */
            aload 2 /* buffer */
            aload 3 /* values */
            aload 1 /* visitor */
            invokevirtual sun.invoke.anon.ConstantPoolParser.parseConstantPool:(Ljava/nio/ByteBuffer;[Ljava/lang/Object;Lsun/invoke/anon/ConstantPoolVisitor;)V
         4: .line 175
            goto 7
      StackMap locals: sun.invoke.anon.ConstantPoolParser sun.invoke.anon.ConstantPoolVisitor java.nio.ByteBuffer java.lang.Object[]
      StackMap stack: java.nio.BufferUnderflowException
         5: astore 4 /* e */
        start local 4 // java.nio.BufferUnderflowException e
         6: .line 176
            new sun.invoke.anon.InvalidConstantPoolFormatException
            dup
            aload 4 /* e */
            invokespecial sun.invoke.anon.InvalidConstantPoolFormatException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 4 // java.nio.BufferUnderflowException e
         7: .line 178
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.invoke.anon.ConstantPoolParser.endOffset:I
            ifne 15
         8: .line 179
            aload 0 /* this */
            aload 2 /* buffer */
            invokevirtual java.nio.ByteBuffer.position:()I
            putfield sun.invoke.anon.ConstantPoolParser.endOffset:I
         9: .line 180
            aload 0 /* this */
            iconst_4
            newarray 5
            putfield sun.invoke.anon.ConstantPoolParser.secondHeader:[C
        10: .line 181
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        11: goto 14
        12: .line 182
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield sun.invoke.anon.ConstantPoolParser.secondHeader:[C
            iload 4 /* i */
            aload 2 /* buffer */
            invokestatic sun.invoke.anon.ConstantPoolParser.getUnsignedShort:(Ljava/nio/ByteBuffer;)I
            i2c
            castore
        13: .line 181
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        14: iload 4 /* i */
            aload 0 /* this */
            getfield sun.invoke.anon.ConstantPoolParser.secondHeader:[C
            arraylength
            if_icmplt 12
        end local 4 // int i
        15: .line 185
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* values */
            aload 1 /* visitor */
            invokevirtual sun.invoke.anon.ConstantPoolParser.resolveConstantPool:([Ljava/lang/Object;Lsun/invoke/anon/ConstantPoolVisitor;)V
        16: .line 186
            return
        end local 3 // java.lang.Object[] values
        end local 2 // java.nio.ByteBuffer buffer
        end local 1 // sun.invoke.anon.ConstantPoolVisitor visitor
        end local 0 // sun.invoke.anon.ConstantPoolParser this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   17     0     this  Lsun/invoke/anon/ConstantPoolParser;
            0   17     1  visitor  Lsun/invoke/anon/ConstantPoolVisitor;
            1   17     2   buffer  Ljava/nio/ByteBuffer;
            3   17     3   values  [Ljava/lang/Object;
            6    7     4        e  Ljava/nio/BufferUnderflowException;
           11   15     4        i  I
      Exception table:
        from    to  target  type
           3     4       5  Class java.nio.BufferUnderflowException
    Exceptions:
      throws sun.invoke.anon.InvalidConstantPoolFormatException
    MethodParameters:
         Name  Flags
      visitor  

  private char[] getCharArray(int);
    descriptor: (I)[C
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // sun.invoke.anon.ConstantPoolParser this
        start local 1 // int utfLength
         0: .line 189
            iload 1 /* utfLength */
            aload 0 /* this */
            getfield sun.invoke.anon.ConstantPoolParser.charArray:[C
            arraylength
            if_icmpgt 2
         1: .line 190
            aload 0 /* this */
            getfield sun.invoke.anon.ConstantPoolParser.charArray:[C
            areturn
         2: .line 191
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* utfLength */
            newarray 5
            dup_x1
            putfield sun.invoke.anon.ConstantPoolParser.charArray:[C
            areturn
        end local 1 // int utfLength
        end local 0 // sun.invoke.anon.ConstantPoolParser this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Lsun/invoke/anon/ConstantPoolParser;
            0    3     1  utfLength  I
    MethodParameters:
           Name  Flags
      utfLength  

  private void parseConstantPool(java.nio.ByteBuffer, java.lang.Object[], sun.invoke.anon.ConstantPoolVisitor);
    descriptor: (Ljava/nio/ByteBuffer;[Ljava/lang/Object;Lsun/invoke/anon/ConstantPoolVisitor;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=8, args_size=4
        start local 0 // sun.invoke.anon.ConstantPoolParser this
        start local 1 // java.nio.ByteBuffer buffer
        start local 2 // java.lang.Object[] values
        start local 3 // sun.invoke.anon.ConstantPoolVisitor visitor
         0: .line 195
            iconst_1
            istore 4 /* i */
        start local 4 // int i
         1: goto 31
         2: .line 196
      StackMap locals: int
      StackMap stack:
            aload 1 /* buffer */
            invokestatic sun.invoke.anon.ConstantPoolParser.getUnsignedByte:(Ljava/nio/ByteBuffer;)I
            i2b
            istore 5 /* tag */
        start local 5 // byte tag
         3: .line 197
            getstatic sun.invoke.anon.ConstantPoolParser.$assertionsDisabled:Z
            ifne 4
            aload 0 /* this */
            getfield sun.invoke.anon.ConstantPoolParser.tags:[B
            iload 4 /* i */
            baload
            ifeq 4
            aload 0 /* this */
            getfield sun.invoke.anon.ConstantPoolParser.tags:[B
            iload 4 /* i */
            baload
            iload 5 /* tag */
            if_icmpeq 4
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         4: .line 198
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield sun.invoke.anon.ConstantPoolParser.tags:[B
            iload 4 /* i */
            iload 5 /* tag */
            bastore
         5: .line 199
            iload 5 /* tag */
            tableswitch { // 1 - 12
                    1: 6
                    2: 30
                    3: 12
                    4: 15
                    5: 18
                    6: 21
                    7: 24
                    8: 24
                    9: 27
                   10: 27
                   11: 27
                   12: 27
              default: 30
          }
         6: .line 201
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            invokestatic sun.invoke.anon.ConstantPoolParser.getUnsignedShort:(Ljava/nio/ByteBuffer;)I
            istore 6 /* utfLen */
        start local 6 // int utfLen
         7: .line 202
            aload 1 /* buffer */
            iload 6 /* utfLen */
            aload 0 /* this */
            iload 6 /* utfLen */
            invokevirtual sun.invoke.anon.ConstantPoolParser.getCharArray:(I)[C
            invokestatic sun.invoke.anon.ConstantPoolParser.getUTF8:(Ljava/nio/ByteBuffer;I[C)Ljava/lang/String;
            astore 7 /* value */
        start local 7 // java.lang.String value
         8: .line 203
            aload 3 /* visitor */
            iload 4 /* i */
            iconst_1
            aload 7 /* value */
            invokevirtual sun.invoke.anon.ConstantPoolVisitor.visitUTF8:(IBLjava/lang/String;)V
         9: .line 204
            aload 0 /* this */
            getfield sun.invoke.anon.ConstantPoolParser.tags:[B
            iload 4 /* i */
            iload 5 /* tag */
            bastore
        10: .line 205
            aload 2 /* values */
            iload 4 /* i */
            iinc 4 /* i */ 1
            aload 7 /* value */
            aastore
        11: .line 206
            goto 31
        end local 7 // java.lang.String value
        end local 6 // int utfLen
        12: .line 208
      StackMap locals:
      StackMap stack:
            aload 3 /* visitor */
            iload 4 /* i */
            iload 5 /* tag */
            aload 1 /* buffer */
            invokevirtual java.nio.ByteBuffer.getInt:()I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokevirtual sun.invoke.anon.ConstantPoolVisitor.visitConstantValue:(IBLjava/lang/Object;)V
        13: .line 209
            iinc 4 /* i */ 1
        14: .line 210
            goto 31
        15: .line 212
      StackMap locals:
      StackMap stack:
            aload 3 /* visitor */
            iload 4 /* i */
            iload 5 /* tag */
            aload 1 /* buffer */
            invokevirtual java.nio.ByteBuffer.getFloat:()F
            invokestatic java.lang.Float.valueOf:(F)Ljava/lang/Float;
            invokevirtual sun.invoke.anon.ConstantPoolVisitor.visitConstantValue:(IBLjava/lang/Object;)V
        16: .line 213
            iinc 4 /* i */ 1
        17: .line 214
            goto 31
        18: .line 216
      StackMap locals:
      StackMap stack:
            aload 3 /* visitor */
            iload 4 /* i */
            iload 5 /* tag */
            aload 1 /* buffer */
            invokevirtual java.nio.ByteBuffer.getLong:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            invokevirtual sun.invoke.anon.ConstantPoolVisitor.visitConstantValue:(IBLjava/lang/Object;)V
        19: .line 217
            iinc 4 /* i */ 2
        20: .line 218
            goto 31
        21: .line 220
      StackMap locals:
      StackMap stack:
            aload 3 /* visitor */
            iload 4 /* i */
            iload 5 /* tag */
            aload 1 /* buffer */
            invokevirtual java.nio.ByteBuffer.getDouble:()D
            invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
            invokevirtual sun.invoke.anon.ConstantPoolVisitor.visitConstantValue:(IBLjava/lang/Object;)V
        22: .line 221
            iinc 4 /* i */ 2
        23: .line 222
            goto 31
        24: .line 226
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.invoke.anon.ConstantPoolParser.tags:[B
            iload 4 /* i */
            iload 5 /* tag */
            bastore
        25: .line 227
            aload 2 /* values */
            iload 4 /* i */
            iinc 4 /* i */ 1
            iconst_1
            newarray 10
            dup
            iconst_0
            aload 1 /* buffer */
            invokestatic sun.invoke.anon.ConstantPoolParser.getUnsignedShort:(Ljava/nio/ByteBuffer;)I
            iastore
            aastore
        26: .line 228
            goto 31
        27: .line 234
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.invoke.anon.ConstantPoolParser.tags:[B
            iload 4 /* i */
            iload 5 /* tag */
            bastore
        28: .line 235
            aload 2 /* values */
            iload 4 /* i */
            iinc 4 /* i */ 1
            iconst_2
            newarray 10
            dup
            iconst_0
            aload 1 /* buffer */
            invokestatic sun.invoke.anon.ConstantPoolParser.getUnsignedShort:(Ljava/nio/ByteBuffer;)I
            iastore
            dup
            iconst_1
            aload 1 /* buffer */
            invokestatic sun.invoke.anon.ConstantPoolParser.getUnsignedShort:(Ljava/nio/ByteBuffer;)I
            iastore
            aastore
        29: .line 236
            goto 31
        30: .line 238
      StackMap locals:
      StackMap stack:
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            ldc "invalid constant "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 5 /* tag */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        end local 5 // byte tag
        31: .line 195
      StackMap locals:
      StackMap stack:
            iload 4 /* i */
            aload 0 /* this */
            getfield sun.invoke.anon.ConstantPoolParser.tags:[B
            arraylength
            if_icmplt 2
        end local 4 // int i
        32: .line 241
            return
        end local 3 // sun.invoke.anon.ConstantPoolVisitor visitor
        end local 2 // java.lang.Object[] values
        end local 1 // java.nio.ByteBuffer buffer
        end local 0 // sun.invoke.anon.ConstantPoolParser this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   33     0     this  Lsun/invoke/anon/ConstantPoolParser;
            0   33     1   buffer  Ljava/nio/ByteBuffer;
            0   33     2   values  [Ljava/lang/Object;
            0   33     3  visitor  Lsun/invoke/anon/ConstantPoolVisitor;
            1   32     4        i  I
            3   31     5      tag  B
            7   12     6   utfLen  I
            8   12     7    value  Ljava/lang/String;
    Exceptions:
      throws sun.invoke.anon.InvalidConstantPoolFormatException
    MethodParameters:
         Name  Flags
      buffer   
      values   
      visitor  

  private void resolveConstantPool(java.lang.Object[], sun.invoke.anon.ConstantPoolVisitor);
    descriptor: ([Ljava/lang/Object;Lsun/invoke/anon/ConstantPoolVisitor;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=15, args_size=3
        start local 0 // sun.invoke.anon.ConstantPoolParser this
        start local 1 // java.lang.Object[] values
        start local 2 // sun.invoke.anon.ConstantPoolVisitor visitor
         0: .line 245
            iconst_1
            istore 3 /* beg */
        start local 3 // int beg
         1: aload 1 /* values */
            arraylength
            iconst_1
            isub
            istore 4 /* end */
        start local 4 // int end
         2: .line 246
            goto 48
         3: .line 248
      StackMap locals: int int
      StackMap stack:
            iload 4 /* end */
            istore 5 /* beg2 */
        start local 5 // int beg2
         4: iload 3 /* beg */
            iconst_1
            isub
            istore 6 /* end2 */
        start local 6 // int end2
         5: .line 250
            iload 3 /* beg */
            istore 7 /* i */
        start local 7 // int i
         6: goto 46
         7: .line 251
      StackMap locals: int int int
      StackMap stack:
            aload 1 /* values */
            iload 7 /* i */
            aaload
            astore 8 /* value */
        start local 8 // java.lang.Object value
         8: .line 252
            aload 8 /* value */
            instanceof int[]
            ifne 10
         9: .line 253
            goto 45
        10: .line 254
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 8 /* value */
            checkcast int[]
            astore 9 /* array */
        start local 9 // int[] array
        11: .line 255
            aload 0 /* this */
            getfield sun.invoke.anon.ConstantPoolParser.tags:[B
            iload 7 /* i */
            baload
            istore 10 /* tag */
        start local 10 // byte tag
        12: .line 256
            iload 10 /* tag */
            tableswitch { // 7 - 12
                    7: 17
                    8: 13
                    9: 29
                   10: 29
                   11: 29
                   12: 22
              default: 45
          }
        13: .line 258
      StackMap locals: int[] int
      StackMap stack:
            aload 1 /* values */
            aload 9 /* array */
            iconst_0
            iaload
            aaload
            checkcast java.lang.String
            astore 11 /* stringBody */
        start local 11 // java.lang.String stringBody
        14: .line 259
            aload 2 /* visitor */
            iload 7 /* i */
            iload 10 /* tag */
            aload 11 /* stringBody */
            aload 9 /* array */
            iconst_0
            iaload
            invokevirtual sun.invoke.anon.ConstantPoolVisitor.visitConstantString:(IBLjava/lang/String;I)V
        15: .line 260
            aload 1 /* values */
            iload 7 /* i */
            aconst_null
            aastore
        16: .line 261
            goto 45
        end local 11 // java.lang.String stringBody
        17: .line 263
      StackMap locals:
      StackMap stack:
            aload 1 /* values */
            aload 9 /* array */
            iconst_0
            iaload
            aaload
            checkcast java.lang.String
            astore 12 /* className */
        start local 12 // java.lang.String className
        18: .line 265
            aload 12 /* className */
            bipush 47
            bipush 46
            invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
            astore 12 /* className */
        19: .line 266
            aload 2 /* visitor */
            iload 7 /* i */
            iload 10 /* tag */
            aload 12 /* className */
            aload 9 /* array */
            iconst_0
            iaload
            invokevirtual sun.invoke.anon.ConstantPoolVisitor.visitConstantString:(IBLjava/lang/String;I)V
        20: .line 267
            aload 1 /* values */
            iload 7 /* i */
            aload 12 /* className */
            aastore
        21: .line 268
            goto 45
        end local 12 // java.lang.String className
        22: .line 271
      StackMap locals:
      StackMap stack:
            aload 1 /* values */
            aload 9 /* array */
            iconst_0
            iaload
            aaload
            checkcast java.lang.String
            astore 12 /* memberName */
        start local 12 // java.lang.String memberName
        23: .line 272
            aload 1 /* values */
            aload 9 /* array */
            iconst_1
            iaload
            aaload
            checkcast java.lang.String
            astore 13 /* signature */
        start local 13 // java.lang.String signature
        24: .line 273
            aload 2 /* visitor */
            iload 7 /* i */
            iload 10 /* tag */
            aload 12 /* memberName */
            aload 13 /* signature */
        25: .line 274
            aload 9 /* array */
            iconst_0
            iaload
            aload 9 /* array */
            iconst_1
            iaload
        26: .line 273
            invokevirtual sun.invoke.anon.ConstantPoolVisitor.visitDescriptor:(IBLjava/lang/String;Ljava/lang/String;II)V
        27: .line 275
            aload 1 /* values */
            iload 7 /* i */
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            aload 12 /* memberName */
            aastore
            dup
            iconst_1
            aload 13 /* signature */
            aastore
            aastore
        28: .line 276
            goto 45
        end local 13 // java.lang.String signature
        end local 12 // java.lang.String memberName
        29: .line 281
      StackMap locals:
      StackMap stack:
            aload 1 /* values */
            aload 9 /* array */
            iconst_0
            iaload
            aaload
            astore 12 /* className */
        start local 12 // java.lang.Object className
        30: .line 282
            aload 1 /* values */
            aload 9 /* array */
            iconst_1
            iaload
            aaload
            astore 13 /* nameAndType */
        start local 13 // java.lang.Object nameAndType
        31: .line 283
            aload 12 /* className */
            instanceof java.lang.String
            ifeq 33
        32: .line 284
            aload 13 /* nameAndType */
            instanceof java.lang.String[]
            ifne 36
        33: .line 286
      StackMap locals: sun.invoke.anon.ConstantPoolParser java.lang.Object[] sun.invoke.anon.ConstantPoolVisitor int int int int int java.lang.Object int[] int top java.lang.Object java.lang.Object
      StackMap stack:
            iload 5 /* beg2 */
            iload 7 /* i */
            if_icmple 34
            iload 7 /* i */
            istore 5 /* beg2 */
        34: .line 287
      StackMap locals:
      StackMap stack:
            iload 6 /* end2 */
            iload 7 /* i */
            if_icmpge 45
            iload 7 /* i */
            istore 6 /* end2 */
        35: .line 288
            goto 45
        36: .line 290
      StackMap locals:
      StackMap stack:
            aload 13 /* nameAndType */
            checkcast java.lang.String[]
            astore 14 /* nameAndTypeArray */
        start local 14 // java.lang.String[] nameAndTypeArray
        37: .line 291
            aload 2 /* visitor */
            iload 7 /* i */
            iload 10 /* tag */
        38: .line 292
            aload 12 /* className */
            checkcast java.lang.String
        39: .line 293
            aload 14 /* nameAndTypeArray */
            iconst_0
            aaload
        40: .line 294
            aload 14 /* nameAndTypeArray */
            iconst_1
            aaload
        41: .line 295
            aload 9 /* array */
            iconst_0
            iaload
            aload 9 /* array */
            iconst_1
            iaload
        42: .line 291
            invokevirtual sun.invoke.anon.ConstantPoolVisitor.visitMemberRef:(IBLjava/lang/String;Ljava/lang/String;Ljava/lang/String;II)V
        43: .line 296
            aload 1 /* values */
            iload 7 /* i */
            aconst_null
            aastore
        end local 14 // java.lang.String[] nameAndTypeArray
        end local 13 // java.lang.Object nameAndType
        end local 12 // java.lang.Object className
        44: .line 298
            goto 45
        end local 10 // byte tag
        end local 9 // int[] array
        end local 8 // java.lang.Object value
        45: .line 250
      StackMap locals: sun.invoke.anon.ConstantPoolParser java.lang.Object[] sun.invoke.anon.ConstantPoolVisitor int int int int int
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        46: iload 7 /* i */
            iload 4 /* end */
            if_icmple 7
        end local 7 // int i
        47: .line 247
            iload 5 /* beg2 */
            istore 3 /* beg */
            iload 6 /* end2 */
            istore 4 /* end */
        end local 6 // int end2
        end local 5 // int beg2
        48: .line 246
      StackMap locals:
      StackMap stack:
            iload 3 /* beg */
            iload 4 /* end */
        49: .line 245
            if_icmple 3
        end local 4 // int end
        end local 3 // int beg
        50: .line 304
            return
        end local 2 // sun.invoke.anon.ConstantPoolVisitor visitor
        end local 1 // java.lang.Object[] values
        end local 0 // sun.invoke.anon.ConstantPoolParser this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   51     0              this  Lsun/invoke/anon/ConstantPoolParser;
            0   51     1            values  [Ljava/lang/Object;
            0   51     2           visitor  Lsun/invoke/anon/ConstantPoolVisitor;
            1   50     3               beg  I
            2   50     4               end  I
            4   48     5              beg2  I
            5   48     6              end2  I
            6   47     7                 i  I
            8   45     8             value  Ljava/lang/Object;
           11   45     9             array  [I
           12   45    10               tag  B
           14   17    11        stringBody  Ljava/lang/String;
           18   22    12         className  Ljava/lang/String;
           23   29    12        memberName  Ljava/lang/String;
           24   29    13         signature  Ljava/lang/String;
           30   44    12         className  Ljava/lang/Object;
           31   44    13       nameAndType  Ljava/lang/Object;
           37   44    14  nameAndTypeArray  [Ljava/lang/String;
    MethodParameters:
         Name  Flags
      values   
      visitor  

  private static int getUnsignedByte(java.nio.ByteBuffer);
    descriptor: (Ljava/nio/ByteBuffer;)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.nio.ByteBuffer buffer
         0: .line 307
            aload 0 /* buffer */
            invokevirtual java.nio.ByteBuffer.get:()B
            sipush 255
            iand
            ireturn
        end local 0 // java.nio.ByteBuffer buffer
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0  buffer  Ljava/nio/ByteBuffer;
    MethodParameters:
        Name  Flags
      buffer  

  private static int getUnsignedShort(java.nio.ByteBuffer);
    descriptor: (Ljava/nio/ByteBuffer;)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // java.nio.ByteBuffer buffer
         0: .line 311
            aload 0 /* buffer */
            invokestatic sun.invoke.anon.ConstantPoolParser.getUnsignedByte:(Ljava/nio/ByteBuffer;)I
            istore 1 /* b1 */
        start local 1 // int b1
         1: .line 312
            aload 0 /* buffer */
            invokestatic sun.invoke.anon.ConstantPoolParser.getUnsignedByte:(Ljava/nio/ByteBuffer;)I
            istore 2 /* b2 */
        start local 2 // int b2
         2: .line 313
            iload 1 /* b1 */
            bipush 8
            ishl
            iload 2 /* b2 */
            iconst_0
            ishl
            iadd
            ireturn
        end local 2 // int b2
        end local 1 // int b1
        end local 0 // java.nio.ByteBuffer buffer
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0  buffer  Ljava/nio/ByteBuffer;
            1    3     1      b1  I
            2    3     2      b2  I
    MethodParameters:
        Name  Flags
      buffer  

  private static java.lang.String getUTF8(java.nio.ByteBuffer, int, char[]);
    descriptor: (Ljava/nio/ByteBuffer;I[C)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=6, args_size=3
        start local 0 // java.nio.ByteBuffer buffer
        start local 1 // int utfLen
        start local 2 // char[] charArray
         0: .line 317
            aload 0 /* buffer */
            invokevirtual java.nio.ByteBuffer.position:()I
            iload 1 /* utfLen */
            iadd
            istore 3 /* utfLimit */
        start local 3 // int utfLimit
         1: .line 318
            iconst_0
            istore 4 /* index */
        start local 4 // int index
         2: .line 319
            goto 8
         3: .line 320
      StackMap locals: int int
      StackMap stack:
            aload 0 /* buffer */
            invokevirtual java.nio.ByteBuffer.get:()B
            sipush 255
            iand
            istore 5 /* c */
        start local 5 // int c
         4: .line 321
            iload 5 /* c */
            bipush 127
            if_icmple 7
         5: .line 322
            aload 0 /* buffer */
            aload 0 /* buffer */
            invokevirtual java.nio.ByteBuffer.position:()I
            iconst_1
            isub
            invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
            pop
         6: .line 323
            aload 0 /* buffer */
            iload 3 /* utfLimit */
            aload 2 /* charArray */
            iload 4 /* index */
            invokestatic sun.invoke.anon.ConstantPoolParser.getUTF8Extended:(Ljava/nio/ByteBuffer;I[CI)Ljava/lang/String;
            areturn
         7: .line 325
      StackMap locals: int
      StackMap stack:
            aload 2 /* charArray */
            iload 4 /* index */
            iinc 4 /* index */ 1
            iload 5 /* c */
            i2c
            castore
        end local 5 // int c
         8: .line 319
      StackMap locals:
      StackMap stack:
            aload 0 /* buffer */
            invokevirtual java.nio.ByteBuffer.position:()I
            iload 3 /* utfLimit */
            if_icmplt 3
         9: .line 327
            new java.lang.String
            dup
            aload 2 /* charArray */
            iconst_0
            iload 4 /* index */
            invokespecial java.lang.String.<init>:([CII)V
            areturn
        end local 4 // int index
        end local 3 // int utfLimit
        end local 2 // char[] charArray
        end local 1 // int utfLen
        end local 0 // java.nio.ByteBuffer buffer
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   10     0     buffer  Ljava/nio/ByteBuffer;
            0   10     1     utfLen  I
            0   10     2  charArray  [C
            1   10     3   utfLimit  I
            2   10     4      index  I
            4    8     5          c  I
    Exceptions:
      throws sun.invoke.anon.InvalidConstantPoolFormatException
    MethodParameters:
           Name  Flags
      buffer     
      utfLen     
      charArray  

  private static java.lang.String getUTF8Extended(java.nio.ByteBuffer, int, char[], int);
    descriptor: (Ljava/nio/ByteBuffer;I[CI)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=7, args_size=4
        start local 0 // java.nio.ByteBuffer buffer
        start local 1 // int utfLimit
        start local 2 // char[] charArray
        start local 3 // int index
         0: .line 332
            goto 28
         1: .line 333
      StackMap locals:
      StackMap stack:
            aload 0 /* buffer */
            invokevirtual java.nio.ByteBuffer.get:()B
            sipush 255
            iand
            istore 4 /* c */
        start local 4 // int c
         2: .line 334
            iload 4 /* c */
            iconst_4
            ishr
            tableswitch { // 0 - 14
                    0: 3
                    1: 3
                    2: 3
                    3: 3
                    4: 3
                    5: 3
                    6: 3
                    7: 3
                    8: 25
                    9: 25
                   10: 25
                   11: 25
                   12: 5
                   13: 5
                   14: 14
              default: 25
          }
         3: .line 337
      StackMap locals: int
      StackMap stack:
            aload 2 /* charArray */
            iload 3 /* index */
            iinc 3 /* index */ 1
            iload 4 /* c */
            i2c
            castore
         4: .line 338
            goto 28
         5: .line 341
      StackMap locals:
      StackMap stack:
            aload 0 /* buffer */
            invokevirtual java.nio.ByteBuffer.get:()B
            istore 5 /* c2 */
        start local 5 // int c2
         6: .line 342
            iload 5 /* c2 */
            sipush 192
            iand
            sipush 128
            if_icmpeq 10
         7: .line 343
            new sun.invoke.anon.InvalidConstantPoolFormatException
            dup
         8: .line 344
            new java.lang.StringBuilder
            dup
            ldc "malformed input around byte "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* buffer */
            invokevirtual java.nio.ByteBuffer.position:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         9: .line 343
            invokespecial sun.invoke.anon.InvalidConstantPoolFormatException.<init>:(Ljava/lang/String;)V
            athrow
        10: .line 345
      StackMap locals: int
      StackMap stack:
            aload 2 /* charArray */
            iload 3 /* index */
            iinc 3 /* index */ 1
            iload 4 /* c */
            bipush 31
            iand
            bipush 6
            ishl
        11: .line 346
            iload 5 /* c2 */
            bipush 63
            iand
            ior
            i2c
        12: .line 345
            castore
        13: .line 347
            goto 28
        end local 5 // int c2
        14: .line 350
      StackMap locals:
      StackMap stack:
            aload 0 /* buffer */
            invokevirtual java.nio.ByteBuffer.get:()B
            istore 5 /* c2 */
        start local 5 // int c2
        15: .line 351
            aload 0 /* buffer */
            invokevirtual java.nio.ByteBuffer.get:()B
            istore 6 /* c3 */
        start local 6 // int c3
        16: .line 352
            iload 5 /* c2 */
            sipush 192
            iand
            sipush 128
            if_icmpne 17
            iload 6 /* c3 */
            sipush 192
            iand
            sipush 128
            if_icmpeq 20
        17: .line 353
      StackMap locals: int int
      StackMap stack:
            new sun.invoke.anon.InvalidConstantPoolFormatException
            dup
        18: .line 354
            new java.lang.StringBuilder
            dup
            ldc "malformed input around byte "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* buffer */
            invokevirtual java.nio.ByteBuffer.position:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        19: .line 353
            invokespecial sun.invoke.anon.InvalidConstantPoolFormatException.<init>:(Ljava/lang/String;)V
            athrow
        20: .line 355
      StackMap locals:
      StackMap stack:
            aload 2 /* charArray */
            iload 3 /* index */
            iinc 3 /* index */ 1
            iload 4 /* c */
            bipush 15
            iand
            bipush 12
            ishl
        21: .line 356
            iload 5 /* c2 */
            bipush 63
            iand
            bipush 6
            ishl
            ior
        22: .line 357
            iload 6 /* c3 */
            bipush 63
            iand
            iconst_0
            ishl
            ior
            i2c
        23: .line 355
            castore
        24: .line 358
            goto 28
        end local 6 // int c3
        end local 5 // int c2
        25: .line 361
      StackMap locals:
      StackMap stack:
            new sun.invoke.anon.InvalidConstantPoolFormatException
            dup
        26: .line 362
            new java.lang.StringBuilder
            dup
            ldc "malformed input around byte "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* buffer */
            invokevirtual java.nio.ByteBuffer.position:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        27: .line 361
            invokespecial sun.invoke.anon.InvalidConstantPoolFormatException.<init>:(Ljava/lang/String;)V
            athrow
        end local 4 // int c
        28: .line 332
      StackMap locals:
      StackMap stack:
            aload 0 /* buffer */
            invokevirtual java.nio.ByteBuffer.position:()I
            iload 1 /* utfLimit */
            if_icmplt 1
        29: .line 366
            new java.lang.String
            dup
            aload 2 /* charArray */
            iconst_0
            iload 3 /* index */
            invokespecial java.lang.String.<init>:([CII)V
            areturn
        end local 3 // int index
        end local 2 // char[] charArray
        end local 1 // int utfLimit
        end local 0 // java.nio.ByteBuffer buffer
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   30     0     buffer  Ljava/nio/ByteBuffer;
            0   30     1   utfLimit  I
            0   30     2  charArray  [C
            0   30     3      index  I
            2   28     4          c  I
            6   14     5         c2  I
           15   25     5         c2  I
           16   25     6         c3  I
    Exceptions:
      throws sun.invoke.anon.InvalidConstantPoolFormatException
    MethodParameters:
           Name  Flags
      buffer     
      utfLimit   
      charArray  
      index      
}
SourceFile: "ConstantPoolParser.java"