public class sun.font.TrueTypeGlyphMapper extends sun.font.CharToGlyphMapper
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: sun.font.TrueTypeGlyphMapper
  super_class: sun.font.CharToGlyphMapper
{
  static final char REVERSE_SOLIDUS;
    descriptor: C
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 92

  static final char JA_YEN;
    descriptor: C
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 165

  static final boolean isJAlocale;
    descriptor: Z
    flags: (0x0018) ACC_STATIC, ACC_FINAL

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

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

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

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 40
            getstatic java.util.Locale.JAPAN:Ljava/util/Locale;
            invokestatic java.util.Locale.getDefault:()Ljava/util/Locale;
            invokevirtual java.util.Locale.equals:(Ljava/lang/Object;)Z
            putstatic sun.font.TrueTypeGlyphMapper.isJAlocale:Z
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(sun.font.TrueTypeFont);
    descriptor: (Lsun/font/TrueTypeFont;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // sun.font.TrueTypeGlyphMapper this
        start local 1 // sun.font.TrueTypeFont font
         0: .line 46
            aload 0 /* this */
            invokespecial sun.font.CharToGlyphMapper.<init>:()V
         1: .line 47
            aload 0 /* this */
            aload 1 /* font */
            putfield sun.font.TrueTypeGlyphMapper.font:Lsun/font/TrueTypeFont;
         2: .line 49
            aload 0 /* this */
            aload 1 /* font */
            invokestatic sun.font.CMap.initialize:(Lsun/font/TrueTypeFont;)Lsun/font/CMap;
            putfield sun.font.TrueTypeGlyphMapper.cmap:Lsun/font/CMap;
         3: .line 50
            goto 6
      StackMap locals: sun.font.TrueTypeGlyphMapper sun.font.TrueTypeFont
      StackMap stack: java.lang.Exception
         4: pop
         5: .line 51
            aload 0 /* this */
            aconst_null
            putfield sun.font.TrueTypeGlyphMapper.cmap:Lsun/font/CMap;
         6: .line 53
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.TrueTypeGlyphMapper.cmap:Lsun/font/CMap;
            ifnonnull 8
         7: .line 54
            aload 0 /* this */
            invokevirtual sun.font.TrueTypeGlyphMapper.handleBadCMAP:()V
         8: .line 56
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield sun.font.TrueTypeGlyphMapper.missingGlyph:I
         9: .line 57
            aload 1 /* font */
            ldc 1835104368
            invokevirtual sun.font.TrueTypeFont.getTableBuffer:(I)Ljava/nio/ByteBuffer;
            astore 2 /* buffer */
        start local 2 // java.nio.ByteBuffer buffer
        10: .line 58
            aload 2 /* buffer */
            ifnull 13
            aload 2 /* buffer */
            invokevirtual java.nio.ByteBuffer.capacity:()I
            bipush 6
            if_icmplt 13
        11: .line 59
            aload 0 /* this */
            aload 2 /* buffer */
            iconst_4
            invokevirtual java.nio.ByteBuffer.getChar:(I)C
            putfield sun.font.TrueTypeGlyphMapper.numGlyphs:I
        12: .line 60
            goto 14
        13: .line 61
      StackMap locals: java.nio.ByteBuffer
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.font.TrueTypeGlyphMapper.handleBadCMAP:()V
        14: .line 63
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.nio.ByteBuffer buffer
        end local 1 // sun.font.TrueTypeFont font
        end local 0 // sun.font.TrueTypeGlyphMapper this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   15     0    this  Lsun/font/TrueTypeGlyphMapper;
            0   15     1    font  Lsun/font/TrueTypeFont;
           10   15     2  buffer  Ljava/nio/ByteBuffer;
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.Exception
    MethodParameters:
      Name  Flags
      font  

  public int getNumGlyphs();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.font.TrueTypeGlyphMapper this
         0: .line 66
            aload 0 /* this */
            getfield sun.font.TrueTypeGlyphMapper.numGlyphs:I
            ireturn
        end local 0 // sun.font.TrueTypeGlyphMapper this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/font/TrueTypeGlyphMapper;

  private char getGlyphFromCMAP(int);
    descriptor: (I)C
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // sun.font.TrueTypeGlyphMapper this
        start local 1 // int charCode
         0: .line 71
            aload 0 /* this */
            getfield sun.font.TrueTypeGlyphMapper.cmap:Lsun/font/CMap;
            iload 1 /* charCode */
            invokevirtual sun.font.CMap.getGlyph:(I)C
            istore 2 /* glyphCode */
        start local 2 // char glyphCode
         1: .line 72
            iload 2 /* glyphCode */
            aload 0 /* this */
            getfield sun.font.TrueTypeGlyphMapper.numGlyphs:I
            if_icmplt 3
         2: .line 73
            iload 2 /* glyphCode */
            ldc 65534
            if_icmplt 5
         3: .line 74
      StackMap locals: int
      StackMap stack:
            iload 2 /* glyphCode */
         4: ireturn
         5: .line 76
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 12
         6: .line 77
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
         7: .line 78
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            aload 0 /* this */
            getfield sun.font.TrueTypeGlyphMapper.font:Lsun/font/TrueTypeFont;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " out of range glyph id="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         8: .line 79
            iload 2 /* glyphCode */
            invokestatic java.lang.Integer.toHexString:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         9: .line 80
            ldc " for char "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 1 /* charCode */
            invokestatic java.lang.Integer.toHexString:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        10: .line 78
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        11: .line 77
            invokevirtual sun.util.logging.PlatformLogger.warning:(Ljava/lang/String;)V
        12: .line 82
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.TrueTypeGlyphMapper.missingGlyph:I
            i2c
        13: ireturn
        end local 2 // char glyphCode
        14: .line 84
      StackMap locals: sun.font.TrueTypeGlyphMapper int
      StackMap stack: java.lang.Exception
            pop
        15: .line 85
            aload 0 /* this */
            invokevirtual sun.font.TrueTypeGlyphMapper.handleBadCMAP:()V
        16: .line 86
            aload 0 /* this */
            getfield sun.font.TrueTypeGlyphMapper.missingGlyph:I
            i2c
            ireturn
        end local 1 // int charCode
        end local 0 // sun.font.TrueTypeGlyphMapper this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   17     0       this  Lsun/font/TrueTypeGlyphMapper;
            0   17     1   charCode  I
            1   14     2  glyphCode  C
      Exception table:
        from    to  target  type
           0     4      14  Class java.lang.Exception
           5    13      14  Class java.lang.Exception
    MethodParameters:
          Name  Flags
      charCode  

  private char getGlyphFromCMAP(int, int);
    descriptor: (II)C
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // sun.font.TrueTypeGlyphMapper this
        start local 1 // int charCode
        start local 2 // int variationSelector
         0: .line 91
            iload 2 /* variationSelector */
            ifne 2
         1: .line 92
            aload 0 /* this */
            iload 1 /* charCode */
            invokevirtual sun.font.TrueTypeGlyphMapper.getGlyphFromCMAP:(I)C
            ireturn
         2: .line 95
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.TrueTypeGlyphMapper.cmap:Lsun/font/CMap;
            iload 1 /* charCode */
         3: .line 96
            iload 2 /* variationSelector */
         4: .line 95
            invokevirtual sun.font.CMap.getVariationGlyph:(II)C
            istore 3 /* glyphCode */
        start local 3 // char glyphCode
         5: .line 97
            iload 3 /* glyphCode */
            aload 0 /* this */
            getfield sun.font.TrueTypeGlyphMapper.numGlyphs:I
            if_icmplt 7
         6: .line 98
            iload 3 /* glyphCode */
            ldc 65534
            if_icmplt 9
         7: .line 99
      StackMap locals: int
      StackMap stack:
            iload 3 /* glyphCode */
         8: ireturn
         9: .line 101
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 17
        10: .line 102
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        11: .line 103
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            aload 0 /* this */
            getfield sun.font.TrueTypeGlyphMapper.font:Lsun/font/TrueTypeFont;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " out of range glyph id="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        12: .line 104
            iload 3 /* glyphCode */
            invokestatic java.lang.Integer.toHexString:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        13: .line 105
            ldc " for char "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 1 /* charCode */
            invokestatic java.lang.Integer.toHexString:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        14: .line 106
            ldc " for vs "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 2 /* variationSelector */
            invokestatic java.lang.Integer.toHexString:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        15: .line 103
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        16: .line 102
            invokevirtual sun.util.logging.PlatformLogger.warning:(Ljava/lang/String;)V
        17: .line 108
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.TrueTypeGlyphMapper.missingGlyph:I
            i2c
        18: ireturn
        end local 3 // char glyphCode
        19: .line 110
      StackMap locals: sun.font.TrueTypeGlyphMapper int int
      StackMap stack: java.lang.Exception
            pop
        20: .line 111
            aload 0 /* this */
            invokevirtual sun.font.TrueTypeGlyphMapper.handleBadCMAP:()V
        21: .line 112
            aload 0 /* this */
            getfield sun.font.TrueTypeGlyphMapper.missingGlyph:I
            i2c
            ireturn
        end local 2 // int variationSelector
        end local 1 // int charCode
        end local 0 // sun.font.TrueTypeGlyphMapper this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   22     0               this  Lsun/font/TrueTypeGlyphMapper;
            0   22     1           charCode  I
            0   22     2  variationSelector  I
            5   19     3          glyphCode  C
      Exception table:
        from    to  target  type
           2     8      19  Class java.lang.Exception
           9    18      19  Class java.lang.Exception
    MethodParameters:
                   Name  Flags
      charCode           
      variationSelector  

  private void handleBadCMAP();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // sun.font.TrueTypeGlyphMapper this
         0: .line 117
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 4
         1: .line 118
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
            new java.lang.StringBuilder
            dup
            ldc "Null Cmap for "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield sun.font.TrueTypeGlyphMapper.font:Lsun/font/TrueTypeFont;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
         2: .line 119
            ldc "substituting for this font"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         3: .line 118
            invokevirtual sun.util.logging.PlatformLogger.severe:(Ljava/lang/String;)V
         4: .line 121
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.SunFontManager.getInstance:()Lsun/font/SunFontManager;
            aload 0 /* this */
            getfield sun.font.TrueTypeGlyphMapper.font:Lsun/font/TrueTypeFont;
            invokevirtual sun.font.SunFontManager.deRegisterBadFont:(Lsun/font/Font2D;)V
         5: .line 126
            aload 0 /* this */
            getstatic sun.font.CMap.theNullCmap:Lsun/font/CMap$NullCMapClass;
            putfield sun.font.TrueTypeGlyphMapper.cmap:Lsun/font/CMap;
         6: .line 127
            return
        end local 0 // sun.font.TrueTypeGlyphMapper this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lsun/font/TrueTypeGlyphMapper;

  private char remapJAChar(char);
    descriptor: (C)C
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.font.TrueTypeGlyphMapper this
        start local 1 // char unicode
         0: .line 130
            iload 1 /* unicode */
            bipush 92
            if_icmpne 1
            sipush 165
            goto 2
      StackMap locals:
      StackMap stack:
         1: iload 1 /* unicode */
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 1 // char unicode
        end local 0 // sun.font.TrueTypeGlyphMapper this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lsun/font/TrueTypeGlyphMapper;
            0    3     1  unicode  C
    MethodParameters:
         Name  Flags
      unicode  

  private int remapJAIntChar(int);
    descriptor: (I)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.font.TrueTypeGlyphMapper this
        start local 1 // int unicode
         0: .line 134
            iload 1 /* unicode */
            bipush 92
            if_icmpne 1
            sipush 165
            goto 2
      StackMap locals:
      StackMap stack:
         1: iload 1 /* unicode */
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 1 // int unicode
        end local 0 // sun.font.TrueTypeGlyphMapper this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lsun/font/TrueTypeGlyphMapper;
            0    3     1  unicode  I
    MethodParameters:
         Name  Flags
      unicode  

  public int charToGlyph(char);
    descriptor: (C)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // sun.font.TrueTypeGlyphMapper this
        start local 1 // char unicode
         0: .line 138
            aload 0 /* this */
            iload 1 /* unicode */
            invokevirtual sun.font.TrueTypeGlyphMapper.getGlyphFromCMAP:(I)C
            istore 2 /* glyph */
        start local 2 // int glyph
         1: .line 139
            iload 2 /* glyph */
            ireturn
        end local 2 // int glyph
        end local 1 // char unicode
        end local 0 // sun.font.TrueTypeGlyphMapper this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lsun/font/TrueTypeGlyphMapper;
            0    2     1  unicode  C
            1    2     2    glyph  I
    MethodParameters:
         Name  Flags
      unicode  

  public int charToGlyph(int);
    descriptor: (I)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // sun.font.TrueTypeGlyphMapper this
        start local 1 // int unicode
         0: .line 143
            aload 0 /* this */
            iload 1 /* unicode */
            invokevirtual sun.font.TrueTypeGlyphMapper.getGlyphFromCMAP:(I)C
            istore 2 /* glyph */
        start local 2 // int glyph
         1: .line 144
            iload 2 /* glyph */
            ireturn
        end local 2 // int glyph
        end local 1 // int unicode
        end local 0 // sun.font.TrueTypeGlyphMapper this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lsun/font/TrueTypeGlyphMapper;
            0    2     1  unicode  I
            1    2     2    glyph  I
    MethodParameters:
         Name  Flags
      unicode  

  public int charToVariationGlyph(int, int);
    descriptor: (II)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // sun.font.TrueTypeGlyphMapper this
        start local 1 // int unicode
        start local 2 // int variationSelector
         0: .line 149
            aload 0 /* this */
            iload 1 /* unicode */
            iload 2 /* variationSelector */
            invokevirtual sun.font.TrueTypeGlyphMapper.getGlyphFromCMAP:(II)C
            istore 3 /* glyph */
        start local 3 // int glyph
         1: .line 150
            iload 3 /* glyph */
            ireturn
        end local 3 // int glyph
        end local 2 // int variationSelector
        end local 1 // int unicode
        end local 0 // sun.font.TrueTypeGlyphMapper this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    2     0               this  Lsun/font/TrueTypeGlyphMapper;
            0    2     1            unicode  I
            0    2     2  variationSelector  I
            1    2     3              glyph  I
    MethodParameters:
                   Name  Flags
      unicode            
      variationSelector  

  public void charsToGlyphs(int, int[], int[]);
    descriptor: (I[I[I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // sun.font.TrueTypeGlyphMapper this
        start local 1 // int count
        start local 2 // int[] unicodes
        start local 3 // int[] glyphs
         0: .line 154
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         1: goto 4
         2: .line 155
      StackMap locals: int
      StackMap stack:
            aload 3 /* glyphs */
            iload 4 /* i */
            aload 0 /* this */
            aload 2 /* unicodes */
            iload 4 /* i */
            iaload
            invokevirtual sun.font.TrueTypeGlyphMapper.getGlyphFromCMAP:(I)C
            iastore
         3: .line 154
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         4: iload 4 /* i */
            iload 1 /* count */
            if_icmplt 2
        end local 4 // int i
         5: .line 157
            return
        end local 3 // int[] glyphs
        end local 2 // int[] unicodes
        end local 1 // int count
        end local 0 // sun.font.TrueTypeGlyphMapper this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0      this  Lsun/font/TrueTypeGlyphMapper;
            0    6     1     count  I
            0    6     2  unicodes  [I
            0    6     3    glyphs  [I
            1    5     4         i  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=7, args_size=4
        start local 0 // sun.font.TrueTypeGlyphMapper this
        start local 1 // int count
        start local 2 // char[] unicodes
        start local 3 // int[] glyphs
         0: .line 161
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         1: goto 23
         2: .line 162
      StackMap locals: int
      StackMap stack:
            aload 2 /* unicodes */
            iload 4 /* i */
            caload
            istore 5 /* code */
        start local 5 // int code
         3: .line 164
            iload 5 /* code */
            ldc 55296
            if_icmplt 21
         4: .line 165
            iload 5 /* code */
            ldc 56319
            if_icmpgt 21
            iload 4 /* i */
            iload 1 /* count */
            iconst_1
            isub
            if_icmpge 21
         5: .line 166
            aload 2 /* unicodes */
            iload 4 /* i */
            iconst_1
            iadd
            caload
            istore 6 /* low */
        start local 6 // char low
         6: .line 168
            iload 6 /* low */
            ldc 56320
            if_icmplt 21
         7: .line 169
            iload 6 /* low */
            ldc 57343
            if_icmpgt 21
         8: .line 170
            iload 5 /* code */
            ldc 55296
            isub
         9: .line 171
            sipush 1024
        10: .line 170
            imul
        11: .line 171
            iload 6 /* low */
        12: .line 170
            iadd
        13: .line 171
            ldc 56320
        14: .line 170
            isub
        15: .line 171
            ldc 65536
        16: .line 170
            iadd
            istore 5 /* code */
        17: .line 173
            aload 3 /* glyphs */
            iload 4 /* i */
            aload 0 /* this */
            iload 5 /* code */
            invokevirtual sun.font.TrueTypeGlyphMapper.getGlyphFromCMAP:(I)C
            iastore
        18: .line 174
            iinc 4 /* i */ 1
        19: .line 175
            aload 3 /* glyphs */
            iload 4 /* i */
            ldc 65535
            iastore
        20: .line 176
            goto 22
        end local 6 // char low
        21: .line 179
      StackMap locals: int
      StackMap stack:
            aload 3 /* glyphs */
            iload 4 /* i */
            aload 0 /* this */
            iload 5 /* code */
            invokevirtual sun.font.TrueTypeGlyphMapper.getGlyphFromCMAP:(I)C
            iastore
        end local 5 // int code
        22: .line 161
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        23: iload 4 /* i */
            iload 1 /* count */
            if_icmplt 2
        end local 4 // int i
        24: .line 182
            return
        end local 3 // int[] glyphs
        end local 2 // char[] unicodes
        end local 1 // int count
        end local 0 // sun.font.TrueTypeGlyphMapper this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   25     0      this  Lsun/font/TrueTypeGlyphMapper;
            0   25     1     count  I
            0   25     2  unicodes  [C
            0   25     3    glyphs  [I
            1   24     4         i  I
            3   22     5      code  I
            6   21     6       low  C
    MethodParameters:
          Name  Flags
      count     
      unicodes  
      glyphs    

  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.TrueTypeGlyphMapper this
        start local 1 // int count
        start local 2 // char[] unicodes
        start local 3 // int[] glyphs
         0: .line 191
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         1: goto 27
         2: .line 192
      StackMap locals: int
      StackMap stack:
            aload 2 /* unicodes */
            iload 4 /* i */
            caload
            istore 5 /* code */
        start local 5 // int code
         3: .line 194
            iload 5 /* code */
            ldc 55296
            if_icmplt 18
         4: .line 195
            iload 5 /* code */
            ldc 56319
            if_icmpgt 18
            iload 4 /* i */
            iload 1 /* count */
            iconst_1
            isub
            if_icmpge 18
         5: .line 196
            aload 2 /* unicodes */
            iload 4 /* i */
            iconst_1
            iadd
            caload
            istore 6 /* low */
        start local 6 // char low
         6: .line 198
            iload 6 /* low */
            ldc 56320
            if_icmplt 18
         7: .line 199
            iload 6 /* low */
            ldc 57343
            if_icmpgt 18
         8: .line 200
            iload 5 /* code */
            ldc 55296
            isub
         9: .line 201
            sipush 1024
        10: .line 200
            imul
        11: .line 201
            iload 6 /* low */
        12: .line 200
            iadd
        13: .line 201
            ldc 56320
        14: .line 200
            isub
        15: .line 201
            ldc 65536
        16: .line 200
            iadd
            istore 5 /* code */
        17: .line 202
            aload 3 /* glyphs */
            iload 4 /* i */
            iconst_1
            iadd
            ldc 65535
            iastore
        end local 6 // char low
        18: .line 206
      StackMap locals: int
      StackMap stack:
            aload 3 /* glyphs */
            iload 4 /* i */
            aload 0 /* this */
            iload 5 /* code */
            invokevirtual sun.font.TrueTypeGlyphMapper.getGlyphFromCMAP:(I)C
            iastore
        19: .line 208
            iload 5 /* code */
            sipush 768
            if_icmpge 21
        20: .line 209
            goto 26
        21: .line 211
      StackMap locals:
      StackMap stack:
            iload 5 /* code */
            invokestatic sun.font.FontUtilities.isComplexCharCode:(I)Z
            ifne 23
        22: .line 212
            iload 5 /* code */
            invokestatic sun.font.CharToGlyphMapper.isVariationSelector:(I)Z
            ifeq 24
        23: .line 213
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        24: .line 215
      StackMap locals:
      StackMap stack:
            iload 5 /* code */
            ldc 65536
            if_icmplt 26
        25: .line 216
            iinc 4 /* i */ 1
        end local 5 // int code
        26: .line 191
      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 221
            iconst_0
            ireturn
        end local 3 // int[] glyphs
        end local 2 // char[] unicodes
        end local 1 // int count
        end local 0 // sun.font.TrueTypeGlyphMapper this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   29     0      this  Lsun/font/TrueTypeGlyphMapper;
            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   18     6       low  C
    MethodParameters:
          Name  Flags
      count     
      unicodes  
      glyphs    

  boolean hasSupplementaryChars();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.font.TrueTypeGlyphMapper this
         0: .line 229
            aload 0 /* this */
            getfield sun.font.TrueTypeGlyphMapper.cmap:Lsun/font/CMap;
            instanceof sun.font.CMap$CMapFormat8
            ifne 4
         1: .line 230
            aload 0 /* this */
            getfield sun.font.TrueTypeGlyphMapper.cmap:Lsun/font/CMap;
            instanceof sun.font.CMap$CMapFormat10
            ifne 4
         2: .line 231
            aload 0 /* this */
            getfield sun.font.TrueTypeGlyphMapper.cmap:Lsun/font/CMap;
            instanceof sun.font.CMap$CMapFormat12
            ifne 4
         3: .line 228
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         4: iconst_1
            ireturn
        end local 0 // sun.font.TrueTypeGlyphMapper this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lsun/font/TrueTypeGlyphMapper;
}
SourceFile: "TrueTypeGlyphMapper.java"
InnerClasses:
  CMapFormat10 = sun.font.CMap$CMapFormat10 of sun.font.CMap
  CMapFormat12 = sun.font.CMap$CMapFormat12 of sun.font.CMap
  CMapFormat8 = sun.font.CMap$CMapFormat8 of sun.font.CMap