class com.sun.javafx.font.CMap$CMapFormat2 extends com.sun.javafx.font.CMap
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: com.sun.javafx.font.CMap$CMapFormat2
  super_class: com.sun.javafx.font.CMap
{
  char[] subHeaderKey;
    descriptor: [C
    flags: (0x0000) 

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

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

  short[] idDeltaArray;
    descriptor: [S
    flags: (0x0000) 

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

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

  void <init>(com.sun.javafx.font.FontFileReader$Buffer, int);
    descriptor: (Lcom/sun/javafx/font/FontFileReader$Buffer;I)V
    flags: (0x0000) 
    Code:
      stack=3, locals=8, args_size=3
        start local 0 // com.sun.javafx.font.CMap$CMapFormat2 this
        start local 1 // com.sun.javafx.font.FontFileReader$Buffer buffer
        start local 2 // int offset
         0: .line 327
            aload 0 /* this */
            invokespecial com.sun.javafx.font.CMap.<init>:()V
         1: .line 311
            aload 0 /* this */
            sipush 256
            newarray 5
            putfield com.sun.javafx.font.CMap$CMapFormat2.subHeaderKey:[C
         2: .line 329
            aload 1 /* buffer */
            iload 2 /* offset */
            iconst_2
            iadd
            invokevirtual com.sun.javafx.font.FontFileReader$Buffer.getChar:(I)C
            istore 3 /* tableLen */
        start local 3 // int tableLen
         3: .line 330
            aload 1 /* buffer */
            iload 2 /* offset */
            bipush 6
            iadd
            invokevirtual com.sun.javafx.font.FontFileReader$Buffer.position:(I)V
         4: .line 331
            iconst_0
            istore 4 /* maxSubHeader */
        start local 4 // char maxSubHeader
         5: .line 332
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         6: goto 11
         7: .line 333
      StackMap locals: com.sun.javafx.font.CMap$CMapFormat2 com.sun.javafx.font.FontFileReader$Buffer int int int int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.font.CMap$CMapFormat2.subHeaderKey:[C
            iload 5 /* i */
            aload 1 /* buffer */
            invokevirtual com.sun.javafx.font.FontFileReader$Buffer.getChar:()C
            castore
         8: .line 334
            aload 0 /* this */
            getfield com.sun.javafx.font.CMap$CMapFormat2.subHeaderKey:[C
            iload 5 /* i */
            caload
            iload 4 /* maxSubHeader */
            if_icmple 10
         9: .line 335
            aload 0 /* this */
            getfield com.sun.javafx.font.CMap$CMapFormat2.subHeaderKey:[C
            iload 5 /* i */
            caload
            istore 4 /* maxSubHeader */
        10: .line 332
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        11: iload 5 /* i */
            sipush 256
            if_icmplt 7
        end local 5 // int i
        12: .line 342
            iload 4 /* maxSubHeader */
            iconst_3
            ishr
            iconst_1
            iadd
            istore 5 /* numSubHeaders */
        start local 5 // int numSubHeaders
        13: .line 343
            aload 0 /* this */
            iload 5 /* numSubHeaders */
            newarray 5
            putfield com.sun.javafx.font.CMap$CMapFormat2.firstCodeArray:[C
        14: .line 344
            aload 0 /* this */
            iload 5 /* numSubHeaders */
            newarray 5
            putfield com.sun.javafx.font.CMap$CMapFormat2.entryCountArray:[C
        15: .line 345
            aload 0 /* this */
            iload 5 /* numSubHeaders */
            newarray 9
            putfield com.sun.javafx.font.CMap$CMapFormat2.idDeltaArray:[S
        16: .line 346
            aload 0 /* this */
            iload 5 /* numSubHeaders */
            newarray 5
            putfield com.sun.javafx.font.CMap$CMapFormat2.idRangeOffSetArray:[C
        17: .line 347
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        18: goto 24
        19: .line 348
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.font.CMap$CMapFormat2.firstCodeArray:[C
            iload 6 /* i */
            aload 1 /* buffer */
            invokevirtual com.sun.javafx.font.FontFileReader$Buffer.getChar:()C
            castore
        20: .line 349
            aload 0 /* this */
            getfield com.sun.javafx.font.CMap$CMapFormat2.entryCountArray:[C
            iload 6 /* i */
            aload 1 /* buffer */
            invokevirtual com.sun.javafx.font.FontFileReader$Buffer.getChar:()C
            castore
        21: .line 350
            aload 0 /* this */
            getfield com.sun.javafx.font.CMap$CMapFormat2.idDeltaArray:[S
            iload 6 /* i */
            aload 1 /* buffer */
            invokevirtual com.sun.javafx.font.FontFileReader$Buffer.getChar:()C
            i2s
            sastore
        22: .line 351
            aload 0 /* this */
            getfield com.sun.javafx.font.CMap$CMapFormat2.idRangeOffSetArray:[C
            iload 6 /* i */
            aload 1 /* buffer */
            invokevirtual com.sun.javafx.font.FontFileReader$Buffer.getChar:()C
            castore
        23: .line 347
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        24: iload 6 /* i */
            iload 5 /* numSubHeaders */
            if_icmplt 19
        end local 6 // int i
        25: .line 354
            iload 3 /* tableLen */
            sipush 518
            isub
            iload 5 /* numSubHeaders */
            bipush 8
            imul
            isub
            iconst_2
            idiv
            istore 6 /* glyphIndexArrSize */
        start local 6 // int glyphIndexArrSize
        26: .line 355
            aload 0 /* this */
            iload 6 /* glyphIndexArrSize */
            newarray 5
            putfield com.sun.javafx.font.CMap$CMapFormat2.glyphIndexArray:[C
        27: .line 356
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        28: goto 31
        29: .line 357
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.font.CMap$CMapFormat2.glyphIndexArray:[C
            iload 7 /* i */
            aload 1 /* buffer */
            invokevirtual com.sun.javafx.font.FontFileReader$Buffer.getChar:()C
            castore
        30: .line 356
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        31: iload 7 /* i */
            iload 6 /* glyphIndexArrSize */
            if_icmplt 29
        end local 7 // int i
        32: .line 359
            return
        end local 6 // int glyphIndexArrSize
        end local 5 // int numSubHeaders
        end local 4 // char maxSubHeader
        end local 3 // int tableLen
        end local 2 // int offset
        end local 1 // com.sun.javafx.font.FontFileReader$Buffer buffer
        end local 0 // com.sun.javafx.font.CMap$CMapFormat2 this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   33     0               this  Lcom/sun/javafx/font/CMap$CMapFormat2;
            0   33     1             buffer  Lcom/sun/javafx/font/FontFileReader$Buffer;
            0   33     2             offset  I
            3   33     3           tableLen  I
            5   33     4       maxSubHeader  C
            6   12     5                  i  I
           13   33     5      numSubHeaders  I
           18   25     6                  i  I
           26   33     6  glyphIndexArrSize  I
           28   32     7                  i  I
    MethodParameters:
        Name  Flags
      buffer  
      offset  

  char getGlyph(int);
    descriptor: (I)C
    flags: (0x0000) 
    Code:
      stack=3, locals=11, args_size=2
        start local 0 // com.sun.javafx.font.CMap$CMapFormat2 this
        start local 1 // int charCode
         0: .line 362
            aload 0 /* this */
            iload 1 /* charCode */
            iconst_1
            invokevirtual com.sun.javafx.font.CMap$CMapFormat2.getControlCodeGlyph:(IZ)I
            istore 2 /* controlGlyph */
        start local 2 // int controlGlyph
         1: .line 363
            iload 2 /* controlGlyph */
            iflt 3
         2: .line 364
            iload 2 /* controlGlyph */
            i2c
            ireturn
         3: .line 367
      StackMap locals: int
      StackMap stack:
            iload 1 /* charCode */
            bipush 8
            ishr
            i2c
            istore 3 /* highByte */
        start local 3 // char highByte
         4: .line 368
            iload 1 /* charCode */
            sipush 255
            iand
            i2c
            istore 4 /* lowByte */
        start local 4 // char lowByte
         5: .line 369
            aload 0 /* this */
            getfield com.sun.javafx.font.CMap$CMapFormat2.subHeaderKey:[C
            iload 3 /* highByte */
            caload
            iconst_3
            ishr
            istore 5 /* key */
        start local 5 // int key
         6: .line 372
            iload 5 /* key */
            ifeq 9
         7: .line 373
            iload 4 /* lowByte */
            istore 6 /* mapMe */
        start local 6 // char mapMe
         8: .line 374
            goto 12
        end local 6 // char mapMe
         9: .line 375
      StackMap locals: int int int
      StackMap stack:
            iload 3 /* highByte */
            istore 6 /* mapMe */
        start local 6 // char mapMe
        10: .line 376
            iload 6 /* mapMe */
            ifne 12
        11: .line 377
            iload 4 /* lowByte */
            istore 6 /* mapMe */
        12: .line 380
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.font.CMap$CMapFormat2.firstCodeArray:[C
            iload 5 /* key */
            caload
            istore 7 /* firstCode */
        start local 7 // char firstCode
        13: .line 381
            iload 6 /* mapMe */
            iload 7 /* firstCode */
            if_icmpge 15
        14: .line 382
            iconst_0
            ireturn
        15: .line 384
      StackMap locals: int
      StackMap stack:
            iload 6 /* mapMe */
            iload 7 /* firstCode */
            isub
            i2c
            istore 6 /* mapMe */
        16: .line 387
            iload 6 /* mapMe */
            aload 0 /* this */
            getfield com.sun.javafx.font.CMap$CMapFormat2.entryCountArray:[C
            iload 5 /* key */
            caload
            if_icmpge 24
        17: .line 401
            aload 0 /* this */
            getfield com.sun.javafx.font.CMap$CMapFormat2.idRangeOffSetArray:[C
            arraylength
            iload 5 /* key */
            isub
            bipush 8
            imul
            bipush 6
            isub
            istore 8 /* glyphArrayOffset */
        start local 8 // int glyphArrayOffset
        18: .line 403
            aload 0 /* this */
            getfield com.sun.javafx.font.CMap$CMapFormat2.idRangeOffSetArray:[C
            iload 5 /* key */
            caload
            iload 8 /* glyphArrayOffset */
            isub
            iconst_2
            idiv
        19: .line 402
            istore 9 /* glyphSubArrayStart */
        start local 9 // int glyphSubArrayStart
        20: .line 404
            aload 0 /* this */
            getfield com.sun.javafx.font.CMap$CMapFormat2.glyphIndexArray:[C
            iload 9 /* glyphSubArrayStart */
            iload 6 /* mapMe */
            iadd
            caload
            istore 10 /* glyphCode */
        start local 10 // char glyphCode
        21: .line 405
            iload 10 /* glyphCode */
            ifeq 24
        22: .line 406
            iload 10 /* glyphCode */
            aload 0 /* this */
            getfield com.sun.javafx.font.CMap$CMapFormat2.idDeltaArray:[S
            iload 5 /* key */
            saload
            iadd
            i2c
            istore 10 /* glyphCode */
        23: .line 407
            iload 10 /* glyphCode */
            ireturn
        end local 10 // char glyphCode
        end local 9 // int glyphSubArrayStart
        end local 8 // int glyphArrayOffset
        24: .line 410
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 7 // char firstCode
        end local 6 // char mapMe
        end local 5 // int key
        end local 4 // char lowByte
        end local 3 // char highByte
        end local 2 // int controlGlyph
        end local 1 // int charCode
        end local 0 // com.sun.javafx.font.CMap$CMapFormat2 this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   25     0                this  Lcom/sun/javafx/font/CMap$CMapFormat2;
            0   25     1            charCode  I
            1   25     2        controlGlyph  I
            4   25     3            highByte  C
            5   25     4             lowByte  C
            6   25     5                 key  I
            8    9     6               mapMe  C
           10   25     6               mapMe  C
           13   25     7           firstCode  C
           18   24     8    glyphArrayOffset  I
           20   24     9  glyphSubArrayStart  I
           21   24    10           glyphCode  C
    MethodParameters:
          Name  Flags
      charCode  
}
SourceFile: "CMap.java"
NestHost: com.sun.javafx.font.CMap
InnerClasses:
  CMapFormat2 = com.sun.javafx.font.CMap$CMapFormat2 of com.sun.javafx.font.CMap
  Buffer = com.sun.javafx.font.FontFileReader$Buffer of com.sun.javafx.font.FontFileReader