public class sun.font.CompositeGlyphMapper extends sun.font.CharToGlyphMapper
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: sun.font.CompositeGlyphMapper
  super_class: sun.font.CharToGlyphMapper
{
  public static final int SLOTMASK;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: -16777216

  public static final int GLYPHMASK;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 16777215

  public static final int NBLOCKS;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 216

  public static final int BLOCKSZ;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 256

  public static final int MAXUNICODE;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 55296

  sun.font.CompositeFont font;
    descriptor: Lsun/font/CompositeFont;
    flags: (0x0000) 

  sun.font.CharToGlyphMapper[] slotMappers;
    descriptor: [Lsun/font/CharToGlyphMapper;
    flags: (0x0000) 

  int[][] glyphMaps;
    descriptor: [[I
    flags: (0x0000) 

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

  public void <init>(sun.font.CompositeFont);
    descriptor: (Lsun/font/CompositeFont;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.font.CompositeGlyphMapper this
        start local 1 // sun.font.CompositeFont compFont
         0: .line 60
            aload 0 /* this */
            invokespecial sun.font.CharToGlyphMapper.<init>:()V
         1: .line 61
            aload 0 /* this */
            aload 1 /* compFont */
            putfield sun.font.CompositeGlyphMapper.font:Lsun/font/CompositeFont;
         2: .line 62
            aload 0 /* this */
            invokevirtual sun.font.CompositeGlyphMapper.initMapper:()V
         3: .line 66
            aload 0 /* this */
            aload 1 /* compFont */
            getfield sun.font.CompositeFont.exclusionRanges:[I
            ifnull 5
         4: .line 67
            aload 1 /* compFont */
            getfield sun.font.CompositeFont.maxIndices:[I
            ifnull 5
            iconst_1
            goto 6
      StackMap locals: sun.font.CompositeGlyphMapper sun.font.CompositeFont
      StackMap stack: sun.font.CompositeGlyphMapper
         5: iconst_0
         6: .line 66
      StackMap locals: sun.font.CompositeGlyphMapper sun.font.CompositeFont
      StackMap stack: sun.font.CompositeGlyphMapper int
            putfield sun.font.CompositeGlyphMapper.hasExcludes:Z
         7: .line 68
            return
        end local 1 // sun.font.CompositeFont compFont
        end local 0 // sun.font.CompositeGlyphMapper this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    8     0      this  Lsun/font/CompositeGlyphMapper;
            0    8     1  compFont  Lsun/font/CompositeFont;
    MethodParameters:
          Name  Flags
      compFont  

  public final int compositeGlyphCode(int, int);
    descriptor: (II)I
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // sun.font.CompositeGlyphMapper this
        start local 1 // int slot
        start local 2 // int glyphCode
         0: .line 71
            iload 1 /* slot */
            bipush 24
            ishl
            iload 2 /* glyphCode */
            ldc 16777215
            iand
            ior
            ireturn
        end local 2 // int glyphCode
        end local 1 // int slot
        end local 0 // sun.font.CompositeGlyphMapper this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lsun/font/CompositeGlyphMapper;
            0    1     1       slot  I
            0    1     2  glyphCode  I
    MethodParameters:
           Name  Flags
      slot       
      glyphCode  

  private final void initMapper();
    descriptor: ()V
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // sun.font.CompositeGlyphMapper this
         0: .line 75
            aload 0 /* this */
            getfield sun.font.CompositeGlyphMapper.missingGlyph:I
            iconst_m1
            if_icmpne 6
         1: .line 76
            aload 0 /* this */
            getfield sun.font.CompositeGlyphMapper.glyphMaps:[[I
            ifnonnull 3
         2: .line 77
            aload 0 /* this */
            sipush 216
            anewarray int[]
            putfield sun.font.CompositeGlyphMapper.glyphMaps:[[I
         3: .line 79
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.font.CompositeGlyphMapper.font:Lsun/font/CompositeFont;
            getfield sun.font.CompositeFont.numSlots:I
            anewarray sun.font.CharToGlyphMapper
            putfield sun.font.CompositeGlyphMapper.slotMappers:[Lsun/font/CharToGlyphMapper;
         4: .line 81
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.font.CompositeGlyphMapper.font:Lsun/font/CompositeFont;
            iconst_0
            invokevirtual sun.font.CompositeFont.getSlotFont:(I)Lsun/font/PhysicalFont;
            invokevirtual sun.font.PhysicalFont.getMissingGlyphCode:()I
            putfield sun.font.CompositeGlyphMapper.missingGlyph:I
         5: .line 82
            aload 0 /* this */
            aload 0 /* this */
            iconst_0
            aload 0 /* this */
            getfield sun.font.CompositeGlyphMapper.missingGlyph:I
            invokevirtual sun.font.CompositeGlyphMapper.compositeGlyphCode:(II)I
            putfield sun.font.CompositeGlyphMapper.missingGlyph:I
         6: .line 84
      StackMap locals:
      StackMap stack:
            return
        end local 0 // sun.font.CompositeGlyphMapper this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lsun/font/CompositeGlyphMapper;

  private int getCachedGlyphCode(int);
    descriptor: (I)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // sun.font.CompositeGlyphMapper this
        start local 1 // int unicode
         0: .line 87
            iload 1 /* unicode */
            ldc 55296
            if_icmplt 2
         1: .line 88
            iconst_m1
            ireturn
         2: .line 91
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.CompositeGlyphMapper.glyphMaps:[[I
            iload 1 /* unicode */
            bipush 8
            ishr
            aaload
            dup
            astore 2 /* gmap */
        start local 2 // int[] gmap
         3: ifnonnull 5
         4: .line 92
            iconst_m1
            ireturn
         5: .line 94
      StackMap locals: int[]
      StackMap stack:
            aload 2 /* gmap */
            iload 1 /* unicode */
            sipush 255
            iand
            iaload
            ireturn
        end local 2 // int[] gmap
        end local 1 // int unicode
        end local 0 // sun.font.CompositeGlyphMapper this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Lsun/font/CompositeGlyphMapper;
            0    6     1  unicode  I
            3    6     2     gmap  [I
    MethodParameters:
         Name  Flags
      unicode  

  private void setCachedGlyphCode(int, int);
    descriptor: (II)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // sun.font.CompositeGlyphMapper this
        start local 1 // int unicode
        start local 2 // int glyphCode
         0: .line 98
            iload 1 /* unicode */
            ldc 55296
            if_icmplt 2
         1: .line 99
            return
         2: .line 101
      StackMap locals:
      StackMap stack:
            iload 1 /* unicode */
            bipush 8
            ishr
            istore 3 /* index0 */
        start local 3 // int index0
         3: .line 102
            aload 0 /* this */
            getfield sun.font.CompositeGlyphMapper.glyphMaps:[[I
            iload 3 /* index0 */
            aaload
            ifnonnull 10
         4: .line 103
            aload 0 /* this */
            getfield sun.font.CompositeGlyphMapper.glyphMaps:[[I
            iload 3 /* index0 */
            sipush 256
            newarray 10
            aastore
         5: .line 104
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         6: goto 9
         7: .line 105
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.CompositeGlyphMapper.glyphMaps:[[I
            iload 3 /* index0 */
            aaload
            iload 4 /* i */
            iconst_m1
            iastore
         8: .line 104
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 4 /* i */
            sipush 256
            if_icmplt 7
        end local 4 // int i
        10: .line 108
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.CompositeGlyphMapper.glyphMaps:[[I
            iload 3 /* index0 */
            aaload
            iload 1 /* unicode */
            sipush 255
            iand
            iload 2 /* glyphCode */
            iastore
        11: .line 109
            return
        end local 3 // int index0
        end local 2 // int glyphCode
        end local 1 // int unicode
        end local 0 // sun.font.CompositeGlyphMapper this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   12     0       this  Lsun/font/CompositeGlyphMapper;
            0   12     1    unicode  I
            0   12     2  glyphCode  I
            3   12     3     index0  I
            6   10     4          i  I
    MethodParameters:
           Name  Flags
      unicode    
      glyphCode  

  private final sun.font.CharToGlyphMapper getSlotMapper(int);
    descriptor: (I)Lsun/font/CharToGlyphMapper;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // sun.font.CompositeGlyphMapper this
        start local 1 // int slot
         0: .line 112
            aload 0 /* this */
            getfield sun.font.CompositeGlyphMapper.slotMappers:[Lsun/font/CharToGlyphMapper;
            iload 1 /* slot */
            aaload
            astore 2 /* mapper */
        start local 2 // sun.font.CharToGlyphMapper mapper
         1: .line 113
            aload 2 /* mapper */
            ifnonnull 4
         2: .line 114
            aload 0 /* this */
            getfield sun.font.CompositeGlyphMapper.font:Lsun/font/CompositeFont;
            iload 1 /* slot */
            invokevirtual sun.font.CompositeFont.getSlotFont:(I)Lsun/font/PhysicalFont;
            invokevirtual sun.font.PhysicalFont.getMapper:()Lsun/font/CharToGlyphMapper;
            astore 2 /* mapper */
         3: .line 115
            aload 0 /* this */
            getfield sun.font.CompositeGlyphMapper.slotMappers:[Lsun/font/CharToGlyphMapper;
            iload 1 /* slot */
            aload 2 /* mapper */
            aastore
         4: .line 117
      StackMap locals: sun.font.CharToGlyphMapper
      StackMap stack:
            aload 2 /* mapper */
            areturn
        end local 2 // sun.font.CharToGlyphMapper mapper
        end local 1 // int slot
        end local 0 // sun.font.CompositeGlyphMapper this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Lsun/font/CompositeGlyphMapper;
            0    5     1    slot  I
            1    5     2  mapper  Lsun/font/CharToGlyphMapper;
    MethodParameters:
      Name  Flags
      slot  

  private final int convertToGlyph(int);
    descriptor: (I)I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // sun.font.CompositeGlyphMapper this
        start local 1 // int unicode
         0: .line 122
            iconst_0
            istore 2 /* slot */
        start local 2 // int slot
         1: goto 10
         2: .line 123
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.CompositeGlyphMapper.hasExcludes:Z
            ifeq 3
            aload 0 /* this */
            getfield sun.font.CompositeGlyphMapper.font:Lsun/font/CompositeFont;
            iload 2 /* slot */
            iload 1 /* unicode */
            invokevirtual sun.font.CompositeFont.isExcludedChar:(II)Z
            ifne 9
         3: .line 124
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* slot */
            invokevirtual sun.font.CompositeGlyphMapper.getSlotMapper:(I)Lsun/font/CharToGlyphMapper;
            astore 3 /* mapper */
        start local 3 // sun.font.CharToGlyphMapper mapper
         4: .line 125
            aload 3 /* mapper */
            iload 1 /* unicode */
            invokevirtual sun.font.CharToGlyphMapper.charToGlyph:(I)I
            istore 4 /* glyphCode */
        start local 4 // int glyphCode
         5: .line 126
            iload 4 /* glyphCode */
            aload 3 /* mapper */
            invokevirtual sun.font.CharToGlyphMapper.getMissingGlyphCode:()I
            if_icmpeq 9
         6: .line 127
            aload 0 /* this */
            iload 2 /* slot */
            iload 4 /* glyphCode */
            invokevirtual sun.font.CompositeGlyphMapper.compositeGlyphCode:(II)I
            istore 4 /* glyphCode */
         7: .line 128
            aload 0 /* this */
            iload 1 /* unicode */
            iload 4 /* glyphCode */
            invokevirtual sun.font.CompositeGlyphMapper.setCachedGlyphCode:(II)V
         8: .line 129
            iload 4 /* glyphCode */
            ireturn
        end local 4 // int glyphCode
        end local 3 // sun.font.CharToGlyphMapper mapper
         9: .line 122
      StackMap locals:
      StackMap stack:
            iinc 2 /* slot */ 1
      StackMap locals:
      StackMap stack:
        10: iload 2 /* slot */
            aload 0 /* this */
            getfield sun.font.CompositeGlyphMapper.font:Lsun/font/CompositeFont;
            getfield sun.font.CompositeFont.numSlots:I
            if_icmplt 2
        end local 2 // int slot
        11: .line 133
            aload 0 /* this */
            getfield sun.font.CompositeGlyphMapper.missingGlyph:I
            ireturn
        end local 1 // int unicode
        end local 0 // sun.font.CompositeGlyphMapper this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   12     0       this  Lsun/font/CompositeGlyphMapper;
            0   12     1    unicode  I
            1   11     2       slot  I
            4    9     3     mapper  Lsun/font/CharToGlyphMapper;
            5    9     4  glyphCode  I
    MethodParameters:
         Name  Flags
      unicode  

  public int getNumGlyphs();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=1
        start local 0 // sun.font.CompositeGlyphMapper this
         0: .line 137
            iconst_0
            istore 1 /* numGlyphs */
        start local 1 // int numGlyphs
         1: .line 147
            iconst_0
            istore 2 /* slot */
        start local 2 // int slot
         2: goto 9
         3: .line 148
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.CompositeGlyphMapper.slotMappers:[Lsun/font/CharToGlyphMapper;
            iload 2 /* slot */
            aaload
            astore 3 /* mapper */
        start local 3 // sun.font.CharToGlyphMapper mapper
         4: .line 149
            aload 3 /* mapper */
            ifnonnull 7
         5: .line 150
            aload 0 /* this */
            getfield sun.font.CompositeGlyphMapper.font:Lsun/font/CompositeFont;
            iload 2 /* slot */
            invokevirtual sun.font.CompositeFont.getSlotFont:(I)Lsun/font/PhysicalFont;
            invokevirtual sun.font.PhysicalFont.getMapper:()Lsun/font/CharToGlyphMapper;
            astore 3 /* mapper */
         6: .line 151
            aload 0 /* this */
            getfield sun.font.CompositeGlyphMapper.slotMappers:[Lsun/font/CharToGlyphMapper;
            iload 2 /* slot */
            aload 3 /* mapper */
            aastore
         7: .line 153
      StackMap locals: sun.font.CharToGlyphMapper
      StackMap stack:
            iload 1 /* numGlyphs */
            aload 3 /* mapper */
            invokevirtual sun.font.CharToGlyphMapper.getNumGlyphs:()I
            iadd
            istore 1 /* numGlyphs */
        end local 3 // sun.font.CharToGlyphMapper mapper
         8: .line 147
            iinc 2 /* slot */ 1
      StackMap locals:
      StackMap stack:
         9: iload 2 /* slot */
            iconst_1
            if_icmplt 3
        end local 2 // int slot
        10: .line 155
            iload 1 /* numGlyphs */
            ireturn
        end local 1 // int numGlyphs
        end local 0 // sun.font.CompositeGlyphMapper this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   11     0       this  Lsun/font/CompositeGlyphMapper;
            1   11     1  numGlyphs  I
            2   10     2       slot  I
            4    8     3     mapper  Lsun/font/CharToGlyphMapper;

  public int charToGlyph(int);
    descriptor: (I)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // sun.font.CompositeGlyphMapper this
        start local 1 // int unicode
         0: .line 160
            aload 0 /* this */
            iload 1 /* unicode */
            invokevirtual sun.font.CompositeGlyphMapper.getCachedGlyphCode:(I)I
            istore 2 /* glyphCode */
        start local 2 // int glyphCode
         1: .line 161
            iload 2 /* glyphCode */
            iconst_m1
            if_icmpne 3
         2: .line 162
            aload 0 /* this */
            iload 1 /* unicode */
            invokevirtual sun.font.CompositeGlyphMapper.convertToGlyph:(I)I
            istore 2 /* glyphCode */
         3: .line 164
      StackMap locals: int
      StackMap stack:
            iload 2 /* glyphCode */
            ireturn
        end local 2 // int glyphCode
        end local 1 // int unicode
        end local 0 // sun.font.CompositeGlyphMapper this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0       this  Lsun/font/CompositeGlyphMapper;
            0    4     1    unicode  I
            1    4     2  glyphCode  I
    MethodParameters:
         Name  Flags
      unicode  

  public int charToGlyph(int, int);
    descriptor: (II)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // sun.font.CompositeGlyphMapper this
        start local 1 // int unicode
        start local 2 // int prefSlot
         0: .line 168
            iload 2 /* prefSlot */
            iflt 5
         1: .line 169
            aload 0 /* this */
            iload 2 /* prefSlot */
            invokevirtual sun.font.CompositeGlyphMapper.getSlotMapper:(I)Lsun/font/CharToGlyphMapper;
            astore 3 /* mapper */
        start local 3 // sun.font.CharToGlyphMapper mapper
         2: .line 170
            aload 3 /* mapper */
            iload 1 /* unicode */
            invokevirtual sun.font.CharToGlyphMapper.charToGlyph:(I)I
            istore 4 /* glyphCode */
        start local 4 // int glyphCode
         3: .line 171
            iload 4 /* glyphCode */
            aload 3 /* mapper */
            invokevirtual sun.font.CharToGlyphMapper.getMissingGlyphCode:()I
            if_icmpeq 5
         4: .line 172
            aload 0 /* this */
            iload 2 /* prefSlot */
            iload 4 /* glyphCode */
            invokevirtual sun.font.CompositeGlyphMapper.compositeGlyphCode:(II)I
            ireturn
        end local 4 // int glyphCode
        end local 3 // sun.font.CharToGlyphMapper mapper
         5: .line 175
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* unicode */
            invokevirtual sun.font.CompositeGlyphMapper.charToGlyph:(I)I
            ireturn
        end local 2 // int prefSlot
        end local 1 // int unicode
        end local 0 // sun.font.CompositeGlyphMapper this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0       this  Lsun/font/CompositeGlyphMapper;
            0    6     1    unicode  I
            0    6     2   prefSlot  I
            2    5     3     mapper  Lsun/font/CharToGlyphMapper;
            3    5     4  glyphCode  I
    MethodParameters:
          Name  Flags
      unicode   
      prefSlot  

  public int charToGlyph(char);
    descriptor: (C)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // sun.font.CompositeGlyphMapper this
        start local 1 // char unicode
         0: .line 180
            aload 0 /* this */
            iload 1 /* unicode */
            invokevirtual sun.font.CompositeGlyphMapper.getCachedGlyphCode:(I)I
            istore 2 /* glyphCode */
        start local 2 // int glyphCode
         1: .line 181
            iload 2 /* glyphCode */
            iconst_m1
            if_icmpne 3
         2: .line 182
            aload 0 /* this */
            iload 1 /* unicode */
            invokevirtual sun.font.CompositeGlyphMapper.convertToGlyph:(I)I
            istore 2 /* glyphCode */
         3: .line 184
      StackMap locals: int
      StackMap stack:
            iload 2 /* glyphCode */
            ireturn
        end local 2 // int glyphCode
        end local 1 // char unicode
        end local 0 // sun.font.CompositeGlyphMapper this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0       this  Lsun/font/CompositeGlyphMapper;
            0    4     1    unicode  C
            1    4     2  glyphCode  I
    MethodParameters:
         Name  Flags
      unicode  

  public boolean charsToGlyphsNS(int, char[], int[]);
    descriptor: (I[C[I)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=4
        start local 0 // sun.font.CompositeGlyphMapper this
        start local 1 // int count
        start local 2 // char[] unicodes
        start local 3 // int[] glyphs
         0: .line 194
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         1: goto 28
         2: .line 195
      StackMap locals: int
      StackMap stack:
            aload 2 /* unicodes */
            iload 4 /* i */
            caload
            istore 5 /* code */
        start local 5 // int code
         3: .line 197
            iload 5 /* code */
            ldc 55296
            if_icmplt 18
         4: .line 198
            iload 5 /* code */
            ldc 56319
            if_icmpgt 18
            iload 4 /* i */
            iload 1 /* count */
            iconst_1
            isub
            if_icmpge 18
         5: .line 199
            aload 2 /* unicodes */
            iload 4 /* i */
            iconst_1
            iadd
            caload
            istore 6 /* low */
        start local 6 // char low
         6: .line 201
            iload 6 /* low */
            ldc 56320
            if_icmplt 18
         7: .line 202
            iload 6 /* low */
            ldc 57343
            if_icmpgt 18
         8: .line 203
            iload 5 /* code */
            ldc 55296
            isub
         9: .line 204
            sipush 1024
        10: .line 203
            imul
        11: .line 204
            iload 6 /* low */
        12: .line 203
            iadd
        13: .line 204
            ldc 56320
        14: .line 203
            isub
        15: .line 204
            ldc 65536
        16: .line 203
            iadd
            istore 5 /* code */
        17: .line 205
            aload 3 /* glyphs */
            iload 4 /* i */
            iconst_1
            iadd
            ldc 65535
            iastore
        end local 6 // char low
        18: .line 209
      StackMap locals: int
      StackMap stack:
            aload 3 /* glyphs */
            iload 4 /* i */
            aload 0 /* this */
            iload 5 /* code */
            invokevirtual sun.font.CompositeGlyphMapper.getCachedGlyphCode:(I)I
            dup_x2
            iastore
            istore 6 /* gc */
        start local 6 // int gc
        19: .line 210
            iload 6 /* gc */
            iconst_m1
            if_icmpne 21
        20: .line 211
            aload 3 /* glyphs */
            iload 4 /* i */
            aload 0 /* this */
            iload 5 /* code */
            invokevirtual sun.font.CompositeGlyphMapper.convertToGlyph:(I)I
            iastore
        21: .line 214
      StackMap locals: int
      StackMap stack:
            iload 5 /* code */
            sipush 768
            if_icmpge 23
        22: .line 215
            goto 27
        23: .line 217
      StackMap locals:
      StackMap stack:
            iload 5 /* code */
            invokestatic sun.font.FontUtilities.isComplexCharCode:(I)Z
            ifeq 25
        24: .line 218
            iconst_1
            ireturn
        25: .line 220
      StackMap locals:
      StackMap stack:
            iload 5 /* code */
            ldc 65536
            if_icmplt 27
        26: .line 221
            iinc 4 /* i */ 1
        end local 6 // int gc
        end local 5 // int code
        27: .line 194
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        28: iload 4 /* i */
            iload 1 /* count */
            if_icmplt 2
        end local 4 // int i
        29: .line 226
            iconst_0
            ireturn
        end local 3 // int[] glyphs
        end local 2 // char[] unicodes
        end local 1 // int count
        end local 0 // sun.font.CompositeGlyphMapper this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   30     0      this  Lsun/font/CompositeGlyphMapper;
            0   30     1     count  I
            0   30     2  unicodes  [C
            0   30     3    glyphs  [I
            1   29     4         i  I
            3   27     5      code  I
            6   18     6       low  C
           19   27     6        gc  I
    MethodParameters:
          Name  Flags
      count     
      unicodes  
      glyphs    

  public void charsToGlyphs(int, char[], int[]);
    descriptor: (I[C[I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=8, args_size=4
        start local 0 // sun.font.CompositeGlyphMapper this
        start local 1 // int count
        start local 2 // char[] unicodes
        start local 3 // int[] glyphs
         0: .line 233
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         1: goto 27
         2: .line 234
      StackMap locals: int
      StackMap stack:
            aload 2 /* unicodes */
            iload 4 /* i */
            caload
            istore 5 /* code */
        start local 5 // int code
         3: .line 236
            iload 5 /* code */
            ldc 55296
            if_icmplt 23
         4: .line 237
            iload 5 /* code */
            ldc 56319
            if_icmpgt 23
            iload 4 /* i */
            iload 1 /* count */
            iconst_1
            isub
            if_icmpge 23
         5: .line 238
            aload 2 /* unicodes */
            iload 4 /* i */
            iconst_1
            iadd
            caload
            istore 6 /* low */
        start local 6 // char low
         6: .line 240
            iload 6 /* low */
            ldc 56320
            if_icmplt 23
         7: .line 241
            iload 6 /* low */
            ldc 57343
            if_icmpgt 23
         8: .line 242
            iload 5 /* code */
            ldc 55296
            isub
         9: .line 243
            sipush 1024
        10: .line 242
            imul
        11: .line 243
            iload 6 /* low */
        12: .line 242
            iadd
        13: .line 243
            ldc 56320
        14: .line 242
            isub
        15: .line 243
            ldc 65536
        16: .line 242
            iadd
            istore 5 /* code */
        17: .line 245
            aload 3 /* glyphs */
            iload 4 /* i */
            aload 0 /* this */
            iload 5 /* code */
            invokevirtual sun.font.CompositeGlyphMapper.getCachedGlyphCode:(I)I
            dup_x2
            iastore
            istore 7 /* gc */
        start local 7 // int gc
        18: .line 246
            iload 7 /* gc */
            iconst_m1
            if_icmpne 20
        19: .line 247
            aload 3 /* glyphs */
            iload 4 /* i */
            aload 0 /* this */
            iload 5 /* code */
            invokevirtual sun.font.CompositeGlyphMapper.convertToGlyph:(I)I
            iastore
        20: .line 249
      StackMap locals: int int int
      StackMap stack:
            iinc 4 /* i */ 1
        21: .line 250
            aload 3 /* glyphs */
            iload 4 /* i */
            ldc 65535
            iastore
        22: .line 251
            goto 26
        end local 7 // int gc
        end local 6 // char low
        23: .line 255
      StackMap locals:
      StackMap stack:
            aload 3 /* glyphs */
            iload 4 /* i */
            aload 0 /* this */
            iload 5 /* code */
            invokevirtual sun.font.CompositeGlyphMapper.getCachedGlyphCode:(I)I
            dup_x2
            iastore
            istore 6 /* gc */
        start local 6 // int gc
        24: .line 256
            iload 6 /* gc */
            iconst_m1
            if_icmpne 26
        25: .line 257
            aload 3 /* glyphs */
            iload 4 /* i */
            aload 0 /* this */
            iload 5 /* code */
            invokevirtual sun.font.CompositeGlyphMapper.convertToGlyph:(I)I
            iastore
        end local 6 // int gc
        end local 5 // int code
        26: .line 233
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        27: iload 4 /* i */
            iload 1 /* count */
            if_icmplt 2
        end local 4 // int i
        28: .line 260
            return
        end local 3 // int[] glyphs
        end local 2 // char[] unicodes
        end local 1 // int count
        end local 0 // sun.font.CompositeGlyphMapper this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   29     0      this  Lsun/font/CompositeGlyphMapper;
            0   29     1     count  I
            0   29     2  unicodes  [C
            0   29     3    glyphs  [I
            1   28     4         i  I
            3   26     5      code  I
            6   23     6       low  C
           18   23     7        gc  I
           24   26     6        gc  I
    MethodParameters:
          Name  Flags
      count     
      unicodes  
      glyphs    

  public void charsToGlyphs(int, int[], int[]);
    descriptor: (I[I[I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=4
        start local 0 // sun.font.CompositeGlyphMapper this
        start local 1 // int count
        start local 2 // int[] unicodes
        start local 3 // int[] glyphs
         0: .line 263
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         1: goto 7
         2: .line 264
      StackMap locals: int
      StackMap stack:
            aload 2 /* unicodes */
            iload 4 /* i */
            iaload
            istore 5 /* code */
        start local 5 // int code
         3: .line 266
            aload 3 /* glyphs */
            iload 4 /* i */
            aload 0 /* this */
            iload 5 /* code */
            invokevirtual sun.font.CompositeGlyphMapper.getCachedGlyphCode:(I)I
            iastore
         4: .line 267
            aload 3 /* glyphs */
            iload 4 /* i */
            iaload
            iconst_m1
            if_icmpne 6
         5: .line 268
            aload 3 /* glyphs */
            iload 4 /* i */
            aload 0 /* this */
            iload 5 /* code */
            invokevirtual sun.font.CompositeGlyphMapper.convertToGlyph:(I)I
            iastore
        end local 5 // int code
         6: .line 263
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 4 /* i */
            iload 1 /* count */
            if_icmplt 2
        end local 4 // int i
         8: .line 271
            return
        end local 3 // int[] glyphs
        end local 2 // int[] unicodes
        end local 1 // int count
        end local 0 // sun.font.CompositeGlyphMapper this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0      this  Lsun/font/CompositeGlyphMapper;
            0    9     1     count  I
            0    9     2  unicodes  [I
            0    9     3    glyphs  [I
            1    8     4         i  I
            3    6     5      code  I
    MethodParameters:
          Name  Flags
      count     
      unicodes  
      glyphs    
}
SourceFile: "CompositeGlyphMapper.java"