abstract class org.jcodings.AbstractEncoding extends org.jcodings.Encoding
  minor version: 0
  major version: 59
  flags: flags: (0x0420) ACC_SUPER, ACC_ABSTRACT
  this_class: org.jcodings.AbstractEncoding
  super_class: org.jcodings.Encoding
{
  private final short[] CTypeTable;
    descriptor: [S
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  protected void <init>(java.lang.String, int, int, short[]);
    descriptor: (Ljava/lang/String;II[S)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=5, args_size=5
        start local 0 // org.jcodings.AbstractEncoding this
        start local 1 // java.lang.String name
        start local 2 // int minLength
        start local 3 // int maxLength
        start local 4 // short[] CTypeTable
         0: .line 32
            aload 0 /* this */
            aload 1 /* name */
            iload 2 /* minLength */
            iload 3 /* maxLength */
            invokespecial org.jcodings.Encoding.<init>:(Ljava/lang/String;II)V
         1: .line 33
            aload 0 /* this */
            aload 4 /* CTypeTable */
            putfield org.jcodings.AbstractEncoding.CTypeTable:[S
         2: .line 34
            return
        end local 4 // short[] CTypeTable
        end local 3 // int maxLength
        end local 2 // int minLength
        end local 1 // java.lang.String name
        end local 0 // org.jcodings.AbstractEncoding this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Lorg/jcodings/AbstractEncoding;
            0    3     1        name  Ljava/lang/String;
            0    3     2   minLength  I
            0    3     3   maxLength  I
            0    3     4  CTypeTable  [S
    MethodParameters:
            Name  Flags
      name        
      minLength   
      maxLength   
      CTypeTable  

  private static int CTypeToBit(int);
    descriptor: (I)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int ctype
         0: .line 39
            iconst_1
            iload 0 /* ctype */
            ishl
            ireturn
        end local 0 // int ctype
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0  ctype  I
    MethodParameters:
       Name  Flags
      ctype  

  protected final boolean isCodeCTypeInternal(int, int);
    descriptor: (II)Z
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.jcodings.AbstractEncoding this
        start local 1 // int code
        start local 2 // int ctype
         0: .line 45
            aload 0 /* this */
            getfield org.jcodings.AbstractEncoding.CTypeTable:[S
            iload 1 /* code */
            saload
            iload 2 /* ctype */
            invokestatic org.jcodings.AbstractEncoding.CTypeToBit:(I)I
            iand
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 2 // int ctype
        end local 1 // int code
        end local 0 // org.jcodings.AbstractEncoding this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/jcodings/AbstractEncoding;
            0    2     1   code  I
            0    2     2  ctype  I
    MethodParameters:
       Name  Flags
      code   
      ctype  

  public boolean isNewLine(byte[], int, int);
    descriptor: ([BII)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // org.jcodings.AbstractEncoding this
        start local 1 // byte[] bytes
        start local 2 // int p
        start local 3 // int end
         0: .line 53
            iload 2 /* p */
            iload 3 /* end */
            if_icmpge 2
            aload 1 /* bytes */
            iload 2 /* p */
            baload
            bipush 10
            if_icmpne 1
            iconst_1
            goto 3
      StackMap locals:
      StackMap stack:
         1: iconst_0
            goto 3
      StackMap locals:
      StackMap stack:
         2: iconst_0
      StackMap locals:
      StackMap stack: int
         3: ireturn
        end local 3 // int end
        end local 2 // int p
        end local 1 // byte[] bytes
        end local 0 // org.jcodings.AbstractEncoding this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lorg/jcodings/AbstractEncoding;
            0    4     1  bytes  [B
            0    4     2      p  I
            0    4     3    end  I
    MethodParameters:
       Name  Flags
      bytes  
      p      
      end    

  protected final int asciiMbcCaseFold(int, byte[], org.jcodings.IntHolder, int, byte[]);
    descriptor: (I[BLorg/jcodings/IntHolder;I[B)I
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=5, locals=6, args_size=6
        start local 0 // org.jcodings.AbstractEncoding this
        start local 1 // int flag
        start local 2 // byte[] bytes
        start local 3 // org.jcodings.IntHolder pp
        start local 4 // int end
        start local 5 // byte[] lower
         0: .line 57
            aload 5 /* lower */
            iconst_0
            getstatic org.jcodings.ascii.AsciiTables.ToLowerCaseTable:[B
            aload 2 /* bytes */
            aload 3 /* pp */
            getfield org.jcodings.IntHolder.value:I
            baload
            sipush 255
            iand
            baload
            bastore
         1: .line 58
            aload 3 /* pp */
            dup
            getfield org.jcodings.IntHolder.value:I
            iconst_1
            iadd
            putfield org.jcodings.IntHolder.value:I
         2: .line 59
            iconst_1
            ireturn
        end local 5 // byte[] lower
        end local 4 // int end
        end local 3 // org.jcodings.IntHolder pp
        end local 2 // byte[] bytes
        end local 1 // int flag
        end local 0 // org.jcodings.AbstractEncoding this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lorg/jcodings/AbstractEncoding;
            0    3     1   flag  I
            0    3     2  bytes  [B
            0    3     3     pp  Lorg/jcodings/IntHolder;
            0    3     4    end  I
            0    3     5  lower  [B
    MethodParameters:
       Name  Flags
      flag   
      bytes  
      pp     
      end    
      lower  

  public int mbcCaseFold(int, byte[], org.jcodings.IntHolder, int, byte[]);
    descriptor: (I[BLorg/jcodings/IntHolder;I[B)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=6, args_size=6
        start local 0 // org.jcodings.AbstractEncoding this
        start local 1 // int flag
        start local 2 // byte[] bytes
        start local 3 // org.jcodings.IntHolder pp
        start local 4 // int end
        start local 5 // byte[] lower
         0: .line 66
            aload 0 /* this */
            iload 1 /* flag */
            aload 2 /* bytes */
            aload 3 /* pp */
            iload 4 /* end */
            aload 5 /* lower */
            invokevirtual org.jcodings.AbstractEncoding.asciiMbcCaseFold:(I[BLorg/jcodings/IntHolder;I[B)I
            ireturn
        end local 5 // byte[] lower
        end local 4 // int end
        end local 3 // org.jcodings.IntHolder pp
        end local 2 // byte[] bytes
        end local 1 // int flag
        end local 0 // org.jcodings.AbstractEncoding this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/jcodings/AbstractEncoding;
            0    1     1   flag  I
            0    1     2  bytes  [B
            0    1     3     pp  Lorg/jcodings/IntHolder;
            0    1     4    end  I
            0    1     5  lower  [B
    MethodParameters:
       Name  Flags
      flag   
      bytes  
      pp     
      end    
      lower  

  protected final void asciiApplyAllCaseFold(int, org.jcodings.ApplyAllCaseFoldFunction, java.lang.Object);
    descriptor: (ILorg/jcodings/ApplyAllCaseFoldFunction;Ljava/lang/Object;)V
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=5, locals=6, args_size=4
        start local 0 // org.jcodings.AbstractEncoding this
        start local 1 // int flag
        start local 2 // org.jcodings.ApplyAllCaseFoldFunction fun
        start local 3 // java.lang.Object arg
         0: .line 70
            iconst_1
            newarray 10
            astore 4 /* code */
        start local 4 // int[] code
         1: .line 72
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         2: goto 8
         3: .line 73
      StackMap locals: int[] int
      StackMap stack:
            aload 4 /* code */
            iconst_0
            getstatic org.jcodings.ascii.AsciiTables.LowerMap:[[I
            iload 5 /* i */
            aaload
            iconst_1
            iaload
            iastore
         4: .line 74
            aload 2 /* fun */
            getstatic org.jcodings.ascii.AsciiTables.LowerMap:[[I
            iload 5 /* i */
            aaload
            iconst_0
            iaload
            aload 4 /* code */
            iconst_1
            aload 3 /* arg */
            invokeinterface org.jcodings.ApplyAllCaseFoldFunction.apply:(I[IILjava/lang/Object;)V
         5: .line 76
            aload 4 /* code */
            iconst_0
            getstatic org.jcodings.ascii.AsciiTables.LowerMap:[[I
            iload 5 /* i */
            aaload
            iconst_0
            iaload
            iastore
         6: .line 77
            aload 2 /* fun */
            getstatic org.jcodings.ascii.AsciiTables.LowerMap:[[I
            iload 5 /* i */
            aaload
            iconst_1
            iaload
            aload 4 /* code */
            iconst_1
            aload 3 /* arg */
            invokeinterface org.jcodings.ApplyAllCaseFoldFunction.apply:(I[IILjava/lang/Object;)V
         7: .line 72
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 5 /* i */
            getstatic org.jcodings.ascii.AsciiTables.LowerMap:[[I
            arraylength
            if_icmplt 3
        end local 5 // int i
         9: .line 79
            return
        end local 4 // int[] code
        end local 3 // java.lang.Object arg
        end local 2 // org.jcodings.ApplyAllCaseFoldFunction fun
        end local 1 // int flag
        end local 0 // org.jcodings.AbstractEncoding this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lorg/jcodings/AbstractEncoding;
            0   10     1  flag  I
            0   10     2   fun  Lorg/jcodings/ApplyAllCaseFoldFunction;
            0   10     3   arg  Ljava/lang/Object;
            1   10     4  code  [I
            2    9     5     i  I
    MethodParameters:
      Name  Flags
      flag  
      fun   
      arg   

  public void applyAllCaseFold(int, org.jcodings.ApplyAllCaseFoldFunction, java.lang.Object);
    descriptor: (ILorg/jcodings/ApplyAllCaseFoldFunction;Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jcodings.AbstractEncoding this
        start local 1 // int flag
        start local 2 // org.jcodings.ApplyAllCaseFoldFunction fun
        start local 3 // java.lang.Object arg
         0: .line 85
            aload 0 /* this */
            iload 1 /* flag */
            aload 2 /* fun */
            aload 3 /* arg */
            invokevirtual org.jcodings.AbstractEncoding.asciiApplyAllCaseFold:(ILorg/jcodings/ApplyAllCaseFoldFunction;Ljava/lang/Object;)V
         1: .line 86
            return
        end local 3 // java.lang.Object arg
        end local 2 // org.jcodings.ApplyAllCaseFoldFunction fun
        end local 1 // int flag
        end local 0 // org.jcodings.AbstractEncoding this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jcodings/AbstractEncoding;
            0    2     1  flag  I
            0    2     2   fun  Lorg/jcodings/ApplyAllCaseFoldFunction;
            0    2     3   arg  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      flag  
      fun   
      arg   

  protected final org.jcodings.CaseFoldCodeItem[] asciiCaseFoldCodesByString(int, byte[], int, int);
    descriptor: (I[BII)[Lorg/jcodings/CaseFoldCodeItem;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=6, locals=6, args_size=5
        start local 0 // org.jcodings.AbstractEncoding this
        start local 1 // int flag
        start local 2 // byte[] bytes
        start local 3 // int p
        start local 4 // int end
         0: .line 89
            aload 2 /* bytes */
            iload 3 /* p */
            baload
            sipush 255
            iand
            istore 5 /* b */
        start local 5 // int b
         1: .line 91
            bipush 65
            iload 5 /* b */
            if_icmpgt 3
            iload 5 /* b */
            bipush 90
            if_icmpgt 3
         2: .line 92
            iconst_1
            anewarray org.jcodings.CaseFoldCodeItem
            dup
            iconst_0
            iconst_1
            iload 5 /* b */
            bipush 32
            iadd
            invokestatic org.jcodings.CaseFoldCodeItem.create:(II)Lorg/jcodings/CaseFoldCodeItem;
            aastore
            areturn
         3: .line 93
      StackMap locals: int
      StackMap stack:
            bipush 97
            iload 5 /* b */
            if_icmpgt 5
            iload 5 /* b */
            bipush 122
            if_icmpgt 5
         4: .line 94
            iconst_1
            anewarray org.jcodings.CaseFoldCodeItem
            dup
            iconst_0
            iconst_1
            iload 5 /* b */
            bipush 32
            isub
            invokestatic org.jcodings.CaseFoldCodeItem.create:(II)Lorg/jcodings/CaseFoldCodeItem;
            aastore
            areturn
         5: .line 96
      StackMap locals:
      StackMap stack:
            getstatic org.jcodings.CaseFoldCodeItem.EMPTY_FOLD_CODES:[Lorg/jcodings/CaseFoldCodeItem;
            areturn
        end local 5 // int b
        end local 4 // int end
        end local 3 // int p
        end local 2 // byte[] bytes
        end local 1 // int flag
        end local 0 // org.jcodings.AbstractEncoding this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   this  Lorg/jcodings/AbstractEncoding;
            0    6     1   flag  I
            0    6     2  bytes  [B
            0    6     3      p  I
            0    6     4    end  I
            1    6     5      b  I
    MethodParameters:
       Name  Flags
      flag   
      bytes  
      p      
      end    

  public org.jcodings.CaseFoldCodeItem[] caseFoldCodesByString(int, byte[], int, int);
    descriptor: (I[BII)[Lorg/jcodings/CaseFoldCodeItem;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // org.jcodings.AbstractEncoding this
        start local 1 // int flag
        start local 2 // byte[] bytes
        start local 3 // int p
        start local 4 // int end
         0: .line 104
            aload 0 /* this */
            iload 1 /* flag */
            aload 2 /* bytes */
            iload 3 /* p */
            iload 4 /* end */
            invokevirtual org.jcodings.AbstractEncoding.asciiCaseFoldCodesByString:(I[BII)[Lorg/jcodings/CaseFoldCodeItem;
            areturn
        end local 4 // int end
        end local 3 // int p
        end local 2 // byte[] bytes
        end local 1 // int flag
        end local 0 // org.jcodings.AbstractEncoding this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/jcodings/AbstractEncoding;
            0    1     1   flag  I
            0    1     2  bytes  [B
            0    1     3      p  I
            0    1     4    end  I
    MethodParameters:
       Name  Flags
      flag   
      bytes  
      p      
      end    

  int asciiOnlyCaseMap(org.jcodings.IntHolder, byte[], org.jcodings.IntHolder, int, byte[], int, int);
    descriptor: (Lorg/jcodings/IntHolder;[BLorg/jcodings/IntHolder;I[BII)I
    flags: (0x0000) 
    Code:
      stack=5, locals=12, args_size=8
        start local 0 // org.jcodings.AbstractEncoding this
        start local 1 // org.jcodings.IntHolder flagP
        start local 2 // byte[] bytes
        start local 3 // org.jcodings.IntHolder pp
        start local 4 // int end
        start local 5 // byte[] to
        start local 6 // int toP
        start local 7 // int toEnd
         0: .line 110
            iload 6 /* toP */
            istore 8 /* toStart */
        start local 8 // int toStart
         1: .line 111
            aload 1 /* flagP */
            getfield org.jcodings.IntHolder.value:I
            istore 9 /* flags */
        start local 9 // int flags
         2: .line 113
            goto 17
         3: .line 115
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            aload 2 /* bytes */
            aload 3 /* pp */
            getfield org.jcodings.IntHolder.value:I
            iload 4 /* end */
            invokevirtual org.jcodings.AbstractEncoding.length:([BII)I
            istore 10 /* length */
        start local 10 // int length
         4: .line 116
            iload 10 /* length */
            ifge 5
            iload 10 /* length */
            ireturn
         5: .line 117
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 2 /* bytes */
            aload 3 /* pp */
            getfield org.jcodings.IntHolder.value:I
            iload 4 /* end */
            invokevirtual org.jcodings.AbstractEncoding.mbcToCode:([BII)I
            istore 11 /* code */
        start local 11 // int code
         6: .line 118
            aload 3 /* pp */
            dup
            getfield org.jcodings.IntHolder.value:I
            iload 10 /* length */
            iadd
            putfield org.jcodings.IntHolder.value:I
         7: .line 120
            iload 11 /* code */
            bipush 97
            if_icmplt 11
            iload 11 /* code */
            bipush 122
            if_icmpgt 11
            iload 9 /* flags */
            sipush 8192
            iand
            ifeq 11
         8: .line 121
            iload 9 /* flags */
            ldc 262144
            ior
            istore 9 /* flags */
         9: .line 122
            iinc 11 /* code */ -32
        10: .line 123
            goto 14
      StackMap locals: int
      StackMap stack:
        11: iload 11 /* code */
            bipush 65
            if_icmplt 14
            iload 11 /* code */
            bipush 90
            if_icmpgt 14
            iload 9 /* flags */
            ldc 540672
            iand
            ifeq 14
        12: .line 124
            iload 9 /* flags */
            ldc 262144
            ior
            istore 9 /* flags */
        13: .line 125
            iinc 11 /* code */ 32
        14: .line 127
      StackMap locals:
      StackMap stack:
            iload 6 /* toP */
            aload 0 /* this */
            iload 11 /* code */
            aload 5 /* to */
            iload 6 /* toP */
            invokevirtual org.jcodings.AbstractEncoding.codeToMbc:(I[BI)I
            iadd
            istore 6 /* toP */
        15: .line 128
            iload 9 /* flags */
            ldc 32768
            iand
            ifeq 17
        16: .line 129
            iload 9 /* flags */
            ldc 57344
            ixor
            istore 9 /* flags */
        end local 11 // int code
        end local 10 // int length
        17: .line 113
      StackMap locals:
      StackMap stack:
            aload 3 /* pp */
            getfield org.jcodings.IntHolder.value:I
            iload 4 /* end */
            if_icmpge 18
            iload 6 /* toP */
            iload 7 /* toEnd */
            if_icmplt 3
        18: .line 132
      StackMap locals:
      StackMap stack:
            aload 1 /* flagP */
            iload 9 /* flags */
            putfield org.jcodings.IntHolder.value:I
        19: .line 133
            iload 6 /* toP */
            iload 8 /* toStart */
            isub
            ireturn
        end local 9 // int flags
        end local 8 // int toStart
        end local 7 // int toEnd
        end local 6 // int toP
        end local 5 // byte[] to
        end local 4 // int end
        end local 3 // org.jcodings.IntHolder pp
        end local 2 // byte[] bytes
        end local 1 // org.jcodings.IntHolder flagP
        end local 0 // org.jcodings.AbstractEncoding this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   20     0     this  Lorg/jcodings/AbstractEncoding;
            0   20     1    flagP  Lorg/jcodings/IntHolder;
            0   20     2    bytes  [B
            0   20     3       pp  Lorg/jcodings/IntHolder;
            0   20     4      end  I
            0   20     5       to  [B
            0   20     6      toP  I
            0   20     7    toEnd  I
            1   20     8  toStart  I
            2   20     9    flags  I
            4   17    10   length  I
            6   17    11     code  I
    MethodParameters:
       Name  Flags
      flagP  
      bytes  
      pp     
      end    
      to     
      toP    
      toEnd  

  int singleByteAsciiOnlyCaseMap(org.jcodings.IntHolder, byte[], org.jcodings.IntHolder, int, byte[], int, int);
    descriptor: (Lorg/jcodings/IntHolder;[BLorg/jcodings/IntHolder;I[BII)I
    flags: (0x0000) 
    Code:
      stack=5, locals=11, args_size=8
        start local 0 // org.jcodings.AbstractEncoding this
        start local 1 // org.jcodings.IntHolder flagP
        start local 2 // byte[] bytes
        start local 3 // org.jcodings.IntHolder pp
        start local 4 // int end
        start local 5 // byte[] to
        start local 6 // int toP
        start local 7 // int toEnd
         0: .line 137
            iload 6 /* toP */
            istore 8 /* toStart */
        start local 8 // int toStart
         1: .line 138
            aload 1 /* flagP */
            getfield org.jcodings.IntHolder.value:I
            istore 9 /* flags */
        start local 9 // int flags
         2: .line 140
            goto 14
         3: .line 141
      StackMap locals: int int
      StackMap stack:
            aload 2 /* bytes */
            aload 3 /* pp */
            dup
            getfield org.jcodings.IntHolder.value:I
            dup_x1
            iconst_1
            iadd
            putfield org.jcodings.IntHolder.value:I
            baload
            sipush 255
            iand
            istore 10 /* code */
        start local 10 // int code
         4: .line 143
            iload 10 /* code */
            bipush 97
            if_icmplt 8
            iload 10 /* code */
            bipush 122
            if_icmpgt 8
            iload 9 /* flags */
            sipush 8192
            iand
            ifeq 8
         5: .line 144
            iload 9 /* flags */
            ldc 262144
            ior
            istore 9 /* flags */
         6: .line 145
            iinc 10 /* code */ -32
         7: .line 146
            goto 11
      StackMap locals: int
      StackMap stack:
         8: iload 10 /* code */
            bipush 65
            if_icmplt 11
            iload 10 /* code */
            bipush 90
            if_icmpgt 11
            iload 9 /* flags */
            ldc 540672
            iand
            ifeq 11
         9: .line 147
            iload 9 /* flags */
            ldc 262144
            ior
            istore 9 /* flags */
        10: .line 148
            iinc 10 /* code */ 32
        11: .line 150
      StackMap locals:
      StackMap stack:
            aload 5 /* to */
            iload 6 /* toP */
            iinc 6 /* toP */ 1
            iload 10 /* code */
            i2b
            bastore
        12: .line 151
            iload 9 /* flags */
            ldc 32768
            iand
            ifeq 14
        13: .line 152
            iload 9 /* flags */
            ldc 57344
            ixor
            istore 9 /* flags */
        end local 10 // int code
        14: .line 140
      StackMap locals:
      StackMap stack:
            aload 3 /* pp */
            getfield org.jcodings.IntHolder.value:I
            iload 4 /* end */
            if_icmpge 15
            iload 6 /* toP */
            iload 7 /* toEnd */
            if_icmplt 3
        15: .line 155
      StackMap locals:
      StackMap stack:
            aload 1 /* flagP */
            iload 9 /* flags */
            putfield org.jcodings.IntHolder.value:I
        16: .line 156
            iload 6 /* toP */
            iload 8 /* toStart */
            isub
            ireturn
        end local 9 // int flags
        end local 8 // int toStart
        end local 7 // int toEnd
        end local 6 // int toP
        end local 5 // byte[] to
        end local 4 // int end
        end local 3 // org.jcodings.IntHolder pp
        end local 2 // byte[] bytes
        end local 1 // org.jcodings.IntHolder flagP
        end local 0 // org.jcodings.AbstractEncoding this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   17     0     this  Lorg/jcodings/AbstractEncoding;
            0   17     1    flagP  Lorg/jcodings/IntHolder;
            0   17     2    bytes  [B
            0   17     3       pp  Lorg/jcodings/IntHolder;
            0   17     4      end  I
            0   17     5       to  [B
            0   17     6      toP  I
            0   17     7    toEnd  I
            1   17     8  toStart  I
            2   17     9    flags  I
            4   14    10     code  I
    MethodParameters:
       Name  Flags
      flagP  
      bytes  
      pp     
      end    
      to     
      toP    
      toEnd  

  public int propertyNameToCType(byte[], int, int);
    descriptor: ([BII)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=5, args_size=4
        start local 0 // org.jcodings.AbstractEncoding this
        start local 1 // byte[] bytes
        start local 2 // int p
        start local 3 // int end
         0: .line 164
            getstatic org.jcodings.constants.PosixBracket.PBSTableUpper:Lorg/jcodings/util/CaseInsensitiveBytesHash;
            aload 1 /* bytes */
            iload 2 /* p */
            iload 3 /* end */
            invokevirtual org.jcodings.util.CaseInsensitiveBytesHash.get:([BII)Ljava/lang/Object;
            checkcast java.lang.Integer
            astore 4 /* ctype */
        start local 4 // java.lang.Integer ctype
         1: .line 165
            aload 4 /* ctype */
            ifnull 2
            aload 4 /* ctype */
            invokevirtual java.lang.Integer.intValue:()I
            ireturn
         2: .line 166
      StackMap locals: java.lang.Integer
      StackMap stack:
            new org.jcodings.exception.CharacterPropertyException
            dup
            getstatic org.jcodings.exception.EncodingError.ERR_INVALID_CHAR_PROPERTY_NAME:Lorg/jcodings/exception/EncodingError;
            aload 1 /* bytes */
            iload 2 /* p */
            iload 3 /* end */
            iload 2 /* p */
            isub
            invokespecial org.jcodings.exception.CharacterPropertyException.<init>:(Lorg/jcodings/exception/EncodingError;[BII)V
            athrow
        end local 4 // java.lang.Integer ctype
        end local 3 // int end
        end local 2 // int p
        end local 1 // byte[] bytes
        end local 0 // org.jcodings.AbstractEncoding this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lorg/jcodings/AbstractEncoding;
            0    3     1  bytes  [B
            0    3     2      p  I
            0    3     3    end  I
            1    3     4  ctype  Ljava/lang/Integer;
    MethodParameters:
       Name  Flags
      bytes  
      p      
      end    
}
SourceFile: "AbstractEncoding.java"