public class com.sun.javafx.font.directwrite.DWGlyphLayout extends com.sun.javafx.text.GlyphLayout
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.sun.javafx.font.directwrite.DWGlyphLayout
  super_class: com.sun.javafx.text.GlyphLayout
{
  private static final java.lang.String LOCALE;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "en-us"

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.javafx.font.directwrite.DWGlyphLayout this
         0: .line 40
            aload 0 /* this */
            invokespecial com.sun.javafx.text.GlyphLayout.<init>:()V
            return
        end local 0 // com.sun.javafx.font.directwrite.DWGlyphLayout this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/javafx/font/directwrite/DWGlyphLayout;

  protected com.sun.javafx.text.TextRun addTextRun(com.sun.javafx.text.PrismTextLayout, char[], int, int, com.sun.javafx.font.PGFont, com.sun.javafx.scene.text.TextSpan, byte);
    descriptor: (Lcom/sun/javafx/text/PrismTextLayout;[CIILcom/sun/javafx/font/PGFont;Lcom/sun/javafx/scene/text/TextSpan;B)Lcom/sun/javafx/text/TextRun;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=10, locals=17, args_size=8
        start local 0 // com.sun.javafx.font.directwrite.DWGlyphLayout this
        start local 1 // com.sun.javafx.text.PrismTextLayout layout
        start local 2 // char[] chars
        start local 3 // int start
        start local 4 // int length
        start local 5 // com.sun.javafx.font.PGFont font
        start local 6 // com.sun.javafx.scene.text.TextSpan span
        start local 7 // byte level
         0: .line 48
            invokestatic com.sun.javafx.font.directwrite.DWFactory.getDWriteFactory:()Lcom/sun/javafx/font/directwrite/IDWriteFactory;
            astore 8 /* factory */
        start local 8 // com.sun.javafx.font.directwrite.IDWriteFactory factory
         1: .line 49
            aload 8 /* factory */
            invokevirtual com.sun.javafx.font.directwrite.IDWriteFactory.CreateTextAnalyzer:()Lcom/sun/javafx/font/directwrite/IDWriteTextAnalyzer;
            astore 9 /* analyzer */
        start local 9 // com.sun.javafx.font.directwrite.IDWriteTextAnalyzer analyzer
         2: .line 50
            aload 9 /* analyzer */
            ifnonnull 4
         3: .line 51
            new com.sun.javafx.text.TextRun
            dup
            iload 3 /* start */
            iload 4 /* length */
            iload 7 /* level */
            iconst_0
            iconst_0
            aload 6 /* span */
            iconst_0
            iconst_0
            invokespecial com.sun.javafx.text.TextRun.<init>:(IIBZILcom/sun/javafx/scene/text/TextSpan;IZ)V
            areturn
         4: .line 54
      StackMap locals: com.sun.javafx.font.directwrite.IDWriteFactory com.sun.javafx.font.directwrite.IDWriteTextAnalyzer
      StackMap stack:
            iload 7 /* level */
            iconst_1
            iand
            ifeq 5
            iconst_1
            goto 6
         5: .line 55
      StackMap locals:
      StackMap stack:
            iconst_0
         6: .line 54
      StackMap locals:
      StackMap stack: int
            istore 10 /* dir */
        start local 10 // int dir
         7: .line 56
            aload 2 /* chars */
            iload 3 /* start */
            iload 4 /* length */
            ldc "en-us"
            iload 10 /* dir */
            invokestatic com.sun.javafx.font.directwrite.OS.NewJFXTextAnalysisSink:([CIILjava/lang/String;I)Lcom/sun/javafx/font/directwrite/JFXTextAnalysisSink;
            astore 11 /* sink */
        start local 11 // com.sun.javafx.font.directwrite.JFXTextAnalysisSink sink
         8: .line 57
            aload 11 /* sink */
            ifnonnull 10
         9: .line 58
            new com.sun.javafx.text.TextRun
            dup
            iload 3 /* start */
            iload 4 /* length */
            iload 7 /* level */
            iconst_0
            iconst_0
            aload 6 /* span */
            iconst_0
            iconst_0
            invokespecial com.sun.javafx.text.TextRun.<init>:(IIBZILcom/sun/javafx/scene/text/TextSpan;IZ)V
            areturn
        10: .line 60
      StackMap locals: int com.sun.javafx.font.directwrite.JFXTextAnalysisSink
      StackMap stack:
            aload 11 /* sink */
            invokevirtual com.sun.javafx.font.directwrite.JFXTextAnalysisSink.AddRef:()I
            pop
        11: .line 62
            aconst_null
            astore 12 /* textRun */
        start local 12 // com.sun.javafx.text.TextRun textRun
        12: .line 63
            aload 9 /* analyzer */
            aload 11 /* sink */
            iconst_0
            iload 4 /* length */
            aload 11 /* sink */
            invokevirtual com.sun.javafx.font.directwrite.IDWriteTextAnalyzer.AnalyzeScript:(Lcom/sun/javafx/font/directwrite/JFXTextAnalysisSink;IILcom/sun/javafx/font/directwrite/JFXTextAnalysisSink;)I
            istore 13 /* hr */
        start local 13 // int hr
        13: .line 64
            iload 13 /* hr */
            ifne 24
        14: .line 65
            goto 23
        15: .line 66
      StackMap locals: com.sun.javafx.text.TextRun int
      StackMap stack:
            aload 11 /* sink */
            invokevirtual com.sun.javafx.font.directwrite.JFXTextAnalysisSink.GetStart:()I
            istore 14 /* runStart */
        start local 14 // int runStart
        16: .line 67
            aload 11 /* sink */
            invokevirtual com.sun.javafx.font.directwrite.JFXTextAnalysisSink.GetLength:()I
            istore 15 /* runLength */
        start local 15 // int runLength
        17: .line 68
            aload 11 /* sink */
            invokevirtual com.sun.javafx.font.directwrite.JFXTextAnalysisSink.GetAnalysis:()Lcom/sun/javafx/font/directwrite/DWRITE_SCRIPT_ANALYSIS;
            astore 16 /* analysis */
        start local 16 // com.sun.javafx.font.directwrite.DWRITE_SCRIPT_ANALYSIS analysis
        18: .line 69
            new com.sun.javafx.text.TextRun
            dup
            iload 3 /* start */
            iload 14 /* runStart */
            iadd
            iload 15 /* runLength */
            iload 7 /* level */
            iconst_1
        19: .line 70
            aload 16 /* analysis */
            getfield com.sun.javafx.font.directwrite.DWRITE_SCRIPT_ANALYSIS.script:S
            aload 6 /* span */
        20: .line 71
            aload 16 /* analysis */
            getfield com.sun.javafx.font.directwrite.DWRITE_SCRIPT_ANALYSIS.shapes:I
            iconst_0
        21: .line 69
            invokespecial com.sun.javafx.text.TextRun.<init>:(IIBZILcom/sun/javafx/scene/text/TextSpan;IZ)V
            astore 12 /* textRun */
        22: .line 72
            aload 1 /* layout */
            aload 12 /* textRun */
            invokevirtual com.sun.javafx.text.PrismTextLayout.addTextRun:(Lcom/sun/javafx/text/TextRun;)V
        end local 16 // com.sun.javafx.font.directwrite.DWRITE_SCRIPT_ANALYSIS analysis
        end local 15 // int runLength
        end local 14 // int runStart
        23: .line 65
      StackMap locals:
      StackMap stack:
            aload 11 /* sink */
            invokevirtual com.sun.javafx.font.directwrite.JFXTextAnalysisSink.Next:()Z
            ifne 15
        24: .line 76
      StackMap locals:
      StackMap stack:
            aload 9 /* analyzer */
            invokevirtual com.sun.javafx.font.directwrite.IDWriteTextAnalyzer.Release:()I
            pop
        25: .line 77
            aload 11 /* sink */
            invokevirtual com.sun.javafx.font.directwrite.JFXTextAnalysisSink.Release:()I
            pop
        26: .line 78
            aload 12 /* textRun */
            areturn
        end local 13 // int hr
        end local 12 // com.sun.javafx.text.TextRun textRun
        end local 11 // com.sun.javafx.font.directwrite.JFXTextAnalysisSink sink
        end local 10 // int dir
        end local 9 // com.sun.javafx.font.directwrite.IDWriteTextAnalyzer analyzer
        end local 8 // com.sun.javafx.font.directwrite.IDWriteFactory factory
        end local 7 // byte level
        end local 6 // com.sun.javafx.scene.text.TextSpan span
        end local 5 // com.sun.javafx.font.PGFont font
        end local 4 // int length
        end local 3 // int start
        end local 2 // char[] chars
        end local 1 // com.sun.javafx.text.PrismTextLayout layout
        end local 0 // com.sun.javafx.font.directwrite.DWGlyphLayout this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   27     0       this  Lcom/sun/javafx/font/directwrite/DWGlyphLayout;
            0   27     1     layout  Lcom/sun/javafx/text/PrismTextLayout;
            0   27     2      chars  [C
            0   27     3      start  I
            0   27     4     length  I
            0   27     5       font  Lcom/sun/javafx/font/PGFont;
            0   27     6       span  Lcom/sun/javafx/scene/text/TextSpan;
            0   27     7      level  B
            1   27     8    factory  Lcom/sun/javafx/font/directwrite/IDWriteFactory;
            2   27     9   analyzer  Lcom/sun/javafx/font/directwrite/IDWriteTextAnalyzer;
            7   27    10        dir  I
            8   27    11       sink  Lcom/sun/javafx/font/directwrite/JFXTextAnalysisSink;
           12   27    12    textRun  Lcom/sun/javafx/text/TextRun;
           13   27    13         hr  I
           16   23    14   runStart  I
           17   23    15  runLength  I
           18   23    16   analysis  Lcom/sun/javafx/font/directwrite/DWRITE_SCRIPT_ANALYSIS;
    MethodParameters:
        Name  Flags
      layout  
      chars   
      start   
      length  
      font    
      span    
      level   

  public void layout(com.sun.javafx.text.TextRun, com.sun.javafx.font.PGFont, com.sun.javafx.font.FontStrike, char[]);
    descriptor: (Lcom/sun/javafx/text/TextRun;Lcom/sun/javafx/font/PGFont;Lcom/sun/javafx/font/FontStrike;[C)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=20, locals=37, args_size=5
        start local 0 // com.sun.javafx.font.directwrite.DWGlyphLayout this
        start local 1 // com.sun.javafx.text.TextRun run
        start local 2 // com.sun.javafx.font.PGFont font
        start local 3 // com.sun.javafx.font.FontStrike strike
        start local 4 // char[] text
         0: .line 83
            iconst_0
            istore 5 /* slot */
        start local 5 // int slot
         1: .line 84
            aload 2 /* font */
            invokeinterface com.sun.javafx.font.PGFont.getFontResource:()Lcom/sun/javafx/font/FontResource;
            astore 6 /* fr */
        start local 6 // com.sun.javafx.font.FontResource fr
         2: .line 85
            aload 6 /* fr */
            instanceof com.sun.javafx.font.CompositeFontResource
            istore 7 /* composite */
        start local 7 // boolean composite
         3: .line 86
            iload 7 /* composite */
            ifeq 6
         4: .line 87
            aload 0 /* this */
            aload 6 /* fr */
            invokevirtual com.sun.javafx.font.directwrite.DWGlyphLayout.getInitialSlot:(Lcom/sun/javafx/font/FontResource;)I
            istore 5 /* slot */
         5: .line 88
            aload 6 /* fr */
            checkcast com.sun.javafx.font.CompositeFontResource
            iload 5 /* slot */
            invokeinterface com.sun.javafx.font.CompositeFontResource.getSlotResource:(I)Lcom/sun/javafx/font/FontResource;
            astore 6 /* fr */
         6: .line 90
      StackMap locals: int com.sun.javafx.font.FontResource int
      StackMap stack:
            aload 6 /* fr */
            checkcast com.sun.javafx.font.directwrite.DWFontFile
            invokevirtual com.sun.javafx.font.directwrite.DWFontFile.getFontFace:()Lcom/sun/javafx/font/directwrite/IDWriteFontFace;
            astore 8 /* face */
        start local 8 // com.sun.javafx.font.directwrite.IDWriteFontFace face
         7: .line 91
            aload 8 /* face */
            ifnonnull 8
            return
         8: .line 93
      StackMap locals: com.sun.javafx.font.directwrite.IDWriteFontFace
      StackMap stack:
            invokestatic com.sun.javafx.font.directwrite.DWFactory.getDWriteFactory:()Lcom/sun/javafx/font/directwrite/IDWriteFactory;
            astore 9 /* factory */
        start local 9 // com.sun.javafx.font.directwrite.IDWriteFactory factory
         9: .line 94
            aload 9 /* factory */
            invokevirtual com.sun.javafx.font.directwrite.IDWriteFactory.CreateTextAnalyzer:()Lcom/sun/javafx/font/directwrite/IDWriteTextAnalyzer;
            astore 10 /* analyzer */
        start local 10 // com.sun.javafx.font.directwrite.IDWriteTextAnalyzer analyzer
        10: .line 95
            aload 10 /* analyzer */
            ifnonnull 11
            return
        11: .line 98
      StackMap locals: com.sun.javafx.font.directwrite.IDWriteFactory com.sun.javafx.font.directwrite.IDWriteTextAnalyzer
      StackMap stack:
            aconst_null
            astore 11 /* features */
        start local 11 // long[] features
        12: .line 99
            aconst_null
            astore 12 /* featuresRangeLengths */
        start local 12 // int[] featuresRangeLengths
        13: .line 100
            iconst_0
            istore 13 /* featuresCount */
        start local 13 // int featuresCount
        14: .line 102
            aload 1 /* run */
            invokevirtual com.sun.javafx.text.TextRun.getLength:()I
            istore 14 /* length */
        start local 14 // int length
        15: .line 103
            iload 14 /* length */
            newarray 9
            astore 15 /* clusterMap */
        start local 15 // short[] clusterMap
        16: .line 104
            iload 14 /* length */
            newarray 9
            astore 16 /* textProps */
        start local 16 // short[] textProps
        17: .line 105
            iload 14 /* length */
            iconst_3
            imul
            iconst_2
            idiv
            bipush 16
            iadd
            istore 17 /* maxGlyphs */
        start local 17 // int maxGlyphs
        18: .line 106
            iload 17 /* maxGlyphs */
            newarray 9
            astore 18 /* glyphs */
        start local 18 // short[] glyphs
        19: .line 107
            iload 17 /* maxGlyphs */
            newarray 9
            astore 19 /* glyphProps */
        start local 19 // short[] glyphProps
        20: .line 108
            iconst_1
            newarray 10
            astore 20 /* retGlyphcount */
        start local 20 // int[] retGlyphcount
        21: .line 109
            aload 1 /* run */
            invokevirtual com.sun.javafx.text.TextRun.isLeftToRight:()Z
            ifeq 22
            iconst_0
            goto 23
      StackMap locals: com.sun.javafx.font.directwrite.DWGlyphLayout com.sun.javafx.text.TextRun com.sun.javafx.font.PGFont com.sun.javafx.font.FontStrike char[] int com.sun.javafx.font.FontResource int com.sun.javafx.font.directwrite.IDWriteFontFace com.sun.javafx.font.directwrite.IDWriteFactory com.sun.javafx.font.directwrite.IDWriteTextAnalyzer long[] int[] int int short[] short[] int short[] short[] int[]
      StackMap stack:
        22: iconst_1
      StackMap locals:
      StackMap stack: int
        23: istore 21 /* rtl */
        start local 21 // boolean rtl
        24: .line 111
            new com.sun.javafx.font.directwrite.DWRITE_SCRIPT_ANALYSIS
            dup
            invokespecial com.sun.javafx.font.directwrite.DWRITE_SCRIPT_ANALYSIS.<init>:()V
            astore 22 /* analysis */
        start local 22 // com.sun.javafx.font.directwrite.DWRITE_SCRIPT_ANALYSIS analysis
        25: .line 112
            aload 22 /* analysis */
            aload 1 /* run */
            invokevirtual com.sun.javafx.text.TextRun.getScript:()I
            i2s
            putfield com.sun.javafx.font.directwrite.DWRITE_SCRIPT_ANALYSIS.script:S
        26: .line 113
            aload 22 /* analysis */
            aload 1 /* run */
            invokevirtual com.sun.javafx.text.TextRun.getSlot:()I
            putfield com.sun.javafx.font.directwrite.DWRITE_SCRIPT_ANALYSIS.shapes:I
        27: .line 115
            aload 1 /* run */
            invokevirtual com.sun.javafx.text.TextRun.getStart:()I
            istore 23 /* start */
        start local 23 // int start
        28: .line 116
            aload 10 /* analyzer */
            aload 4 /* text */
            iload 23 /* start */
            iload 14 /* length */
            aload 8 /* face */
            iconst_0
            iload 21 /* rtl */
            aload 22 /* analysis */
            aconst_null
        29: .line 117
            lconst_0
            aload 11 /* features */
            aload 12 /* featuresRangeLengths */
            iload 13 /* featuresCount */
        30: .line 118
            iload 17 /* maxGlyphs */
            aload 15 /* clusterMap */
            aload 16 /* textProps */
            aload 18 /* glyphs */
            aload 19 /* glyphProps */
            aload 20 /* retGlyphcount */
        31: .line 116
            invokevirtual com.sun.javafx.font.directwrite.IDWriteTextAnalyzer.GetGlyphs:([CIILcom/sun/javafx/font/directwrite/IDWriteFontFace;ZZLcom/sun/javafx/font/directwrite/DWRITE_SCRIPT_ANALYSIS;Ljava/lang/String;J[J[III[S[S[S[S[I)I
            istore 24 /* hr */
        start local 24 // int hr
        32: .line 120
            iload 24 /* hr */
            ldc -2147024774
            if_icmpne 40
        33: .line 122
            iload 17 /* maxGlyphs */
            iconst_2
            imul
            istore 17 /* maxGlyphs */
        34: .line 123
            iload 17 /* maxGlyphs */
            newarray 9
            astore 18 /* glyphs */
        35: .line 124
            iload 17 /* maxGlyphs */
            newarray 9
            astore 19 /* glyphProps */
        36: .line 125
            aload 10 /* analyzer */
            aload 4 /* text */
            iload 23 /* start */
            iload 14 /* length */
            aload 8 /* face */
            iconst_0
            iload 21 /* rtl */
            aload 22 /* analysis */
            aconst_null
        37: .line 126
            lconst_0
            aload 11 /* features */
            aload 12 /* featuresRangeLengths */
            iload 13 /* featuresCount */
        38: .line 127
            iload 17 /* maxGlyphs */
            aload 15 /* clusterMap */
            aload 16 /* textProps */
            aload 18 /* glyphs */
            aload 19 /* glyphProps */
            aload 20 /* retGlyphcount */
        39: .line 125
            invokevirtual com.sun.javafx.font.directwrite.IDWriteTextAnalyzer.GetGlyphs:([CIILcom/sun/javafx/font/directwrite/IDWriteFontFace;ZZLcom/sun/javafx/font/directwrite/DWRITE_SCRIPT_ANALYSIS;Ljava/lang/String;J[J[III[S[S[S[S[I)I
            istore 24 /* hr */
        40: .line 130
      StackMap locals: com.sun.javafx.font.directwrite.DWGlyphLayout com.sun.javafx.text.TextRun com.sun.javafx.font.PGFont com.sun.javafx.font.FontStrike char[] int com.sun.javafx.font.FontResource int com.sun.javafx.font.directwrite.IDWriteFontFace com.sun.javafx.font.directwrite.IDWriteFactory com.sun.javafx.font.directwrite.IDWriteTextAnalyzer long[] int[] int int short[] short[] int short[] short[] int[] int com.sun.javafx.font.directwrite.DWRITE_SCRIPT_ANALYSIS int int
      StackMap stack:
            iload 24 /* hr */
            ifeq 43
        41: .line 131
            aload 10 /* analyzer */
            invokevirtual com.sun.javafx.font.directwrite.IDWriteTextAnalyzer.Release:()I
            pop
        42: .line 132
            return
        43: .line 134
      StackMap locals:
      StackMap stack:
            aload 20 /* retGlyphcount */
            iconst_0
            iaload
            istore 25 /* glyphCount */
        start local 25 // int glyphCount
        44: .line 137
            iload 21 /* rtl */
            ifeq 45
            iconst_m1
            goto 46
      StackMap locals: int
      StackMap stack:
        45: iconst_1
      StackMap locals:
      StackMap stack: int
        46: istore 26 /* step */
        start local 26 // int step
        47: .line 139
            iload 25 /* glyphCount */
            newarray 10
            astore 29 /* iglyphs */
        start local 29 // int[] iglyphs
        48: .line 140
            iload 5 /* slot */
            bipush 24
            ishl
            istore 30 /* slotMask */
        start local 30 // int slotMask
        49: .line 141
            iconst_0
            istore 31 /* missingGlyph */
        start local 31 // boolean missingGlyph
        50: .line 142
            iconst_0
            istore 27 /* i */
        start local 27 // int i
        51: iload 21 /* rtl */
            ifeq 52
            iload 25 /* glyphCount */
            iconst_1
            isub
            goto 53
      StackMap locals: com.sun.javafx.font.directwrite.DWGlyphLayout com.sun.javafx.text.TextRun com.sun.javafx.font.PGFont com.sun.javafx.font.FontStrike char[] int com.sun.javafx.font.FontResource int com.sun.javafx.font.directwrite.IDWriteFontFace com.sun.javafx.font.directwrite.IDWriteFactory com.sun.javafx.font.directwrite.IDWriteTextAnalyzer long[] int[] int int short[] short[] int short[] short[] int[] int com.sun.javafx.font.directwrite.DWRITE_SCRIPT_ANALYSIS int int int int int top int[] int int
      StackMap stack:
        52: iconst_0
      StackMap locals:
      StackMap stack: int
        53: istore 28 /* j */
        start local 28 // int j
        54: .line 143
            goto 61
        55: .line 144
      StackMap locals: com.sun.javafx.font.directwrite.DWGlyphLayout com.sun.javafx.text.TextRun com.sun.javafx.font.PGFont com.sun.javafx.font.FontStrike char[] int com.sun.javafx.font.FontResource int com.sun.javafx.font.directwrite.IDWriteFontFace com.sun.javafx.font.directwrite.IDWriteFactory com.sun.javafx.font.directwrite.IDWriteTextAnalyzer long[] int[] int int short[] short[] int short[] short[] int[] int com.sun.javafx.font.directwrite.DWRITE_SCRIPT_ANALYSIS int int int int int int int[] int int
      StackMap stack:
            aload 18 /* glyphs */
            iload 27 /* i */
            saload
            ifne 58
        56: .line 145
            iconst_1
            istore 31 /* missingGlyph */
        57: .line 146
            iload 7 /* composite */
            ifeq 58
            goto 62
        58: .line 148
      StackMap locals:
      StackMap stack:
            aload 29 /* iglyphs */
            iload 27 /* i */
            aload 18 /* glyphs */
            iload 28 /* j */
            saload
            iload 30 /* slotMask */
            ior
            iastore
        59: .line 149
            iinc 27 /* i */ 1
        60: .line 150
            iload 28 /* j */
            iload 26 /* step */
            iadd
            istore 28 /* j */
        61: .line 143
      StackMap locals:
      StackMap stack:
            iload 27 /* i */
            iload 25 /* glyphCount */
            if_icmplt 55
        62: .line 152
      StackMap locals:
      StackMap stack:
            iload 31 /* missingGlyph */
            ifeq 66
            iload 7 /* composite */
            ifeq 66
        63: .line 153
            aload 10 /* analyzer */
            invokevirtual com.sun.javafx.font.directwrite.IDWriteTextAnalyzer.Release:()I
            pop
        64: .line 154
            aload 0 /* this */
            aload 4 /* text */
            aload 1 /* run */
            aload 2 /* font */
            iload 5 /* slot */
            invokevirtual com.sun.javafx.font.directwrite.DWGlyphLayout.renderShape:([CLcom/sun/javafx/text/TextRun;Lcom/sun/javafx/font/PGFont;I)V
        65: .line 155
            return
        66: .line 158
      StackMap locals:
      StackMap stack:
            aload 2 /* font */
            invokeinterface com.sun.javafx.font.PGFont.getSize:()F
            fstore 32 /* size */
        start local 32 // float size
        67: .line 159
            iload 25 /* glyphCount */
            newarray 6
            astore 33 /* advances */
        start local 33 // float[] advances
        68: .line 160
            iload 25 /* glyphCount */
            iconst_2
            imul
            newarray 6
            astore 34 /* offsets */
        start local 34 // float[] offsets
        69: .line 161
            aload 10 /* analyzer */
            aload 4 /* text */
            aload 15 /* clusterMap */
            aload 16 /* textProps */
            iload 23 /* start */
            iload 14 /* length */
            aload 18 /* glyphs */
        70: .line 162
            aload 19 /* glyphProps */
            iload 25 /* glyphCount */
            aload 8 /* face */
            fload 32 /* size */
            iconst_0
            iload 21 /* rtl */
        71: .line 163
            aload 22 /* analysis */
            aconst_null
            aload 11 /* features */
            aload 12 /* featuresRangeLengths */
        72: .line 164
            iload 13 /* featuresCount */
            aload 33 /* advances */
            aload 34 /* offsets */
        73: .line 161
            invokevirtual com.sun.javafx.font.directwrite.IDWriteTextAnalyzer.GetGlyphPlacements:([C[S[SII[S[SILcom/sun/javafx/font/directwrite/IDWriteFontFace;FZZLcom/sun/javafx/font/directwrite/DWRITE_SCRIPT_ANALYSIS;Ljava/lang/String;[J[II[F[F)I
            pop
        74: .line 165
            aload 10 /* analyzer */
            invokevirtual com.sun.javafx.font.directwrite.IDWriteTextAnalyzer.Release:()I
            pop
        75: .line 167
            aload 0 /* this */
            aload 33 /* advances */
            aload 34 /* offsets */
            iload 25 /* glyphCount */
            iload 21 /* rtl */
            invokevirtual com.sun.javafx.font.directwrite.DWGlyphLayout.getPositions:([F[FIZ)[F
            astore 35 /* pos */
        start local 35 // float[] pos
        76: .line 168
            aload 0 /* this */
            aload 15 /* clusterMap */
            iload 25 /* glyphCount */
            iload 21 /* rtl */
            invokevirtual com.sun.javafx.font.directwrite.DWGlyphLayout.getIndices:([SIZ)[I
            astore 36 /* indices */
        start local 36 // int[] indices
        77: .line 169
            aload 1 /* run */
            iload 25 /* glyphCount */
            aload 29 /* iglyphs */
            aload 35 /* pos */
            aload 36 /* indices */
            invokevirtual com.sun.javafx.text.TextRun.shape:(I[I[F[I)V
        78: .line 170
            return
        end local 36 // int[] indices
        end local 35 // float[] pos
        end local 34 // float[] offsets
        end local 33 // float[] advances
        end local 32 // float size
        end local 31 // boolean missingGlyph
        end local 30 // int slotMask
        end local 29 // int[] iglyphs
        end local 28 // int j
        end local 27 // int i
        end local 26 // int step
        end local 25 // int glyphCount
        end local 24 // int hr
        end local 23 // int start
        end local 22 // com.sun.javafx.font.directwrite.DWRITE_SCRIPT_ANALYSIS analysis
        end local 21 // boolean rtl
        end local 20 // int[] retGlyphcount
        end local 19 // short[] glyphProps
        end local 18 // short[] glyphs
        end local 17 // int maxGlyphs
        end local 16 // short[] textProps
        end local 15 // short[] clusterMap
        end local 14 // int length
        end local 13 // int featuresCount
        end local 12 // int[] featuresRangeLengths
        end local 11 // long[] features
        end local 10 // com.sun.javafx.font.directwrite.IDWriteTextAnalyzer analyzer
        end local 9 // com.sun.javafx.font.directwrite.IDWriteFactory factory
        end local 8 // com.sun.javafx.font.directwrite.IDWriteFontFace face
        end local 7 // boolean composite
        end local 6 // com.sun.javafx.font.FontResource fr
        end local 5 // int slot
        end local 4 // char[] text
        end local 3 // com.sun.javafx.font.FontStrike strike
        end local 2 // com.sun.javafx.font.PGFont font
        end local 1 // com.sun.javafx.text.TextRun run
        end local 0 // com.sun.javafx.font.directwrite.DWGlyphLayout this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   79     0                  this  Lcom/sun/javafx/font/directwrite/DWGlyphLayout;
            0   79     1                   run  Lcom/sun/javafx/text/TextRun;
            0   79     2                  font  Lcom/sun/javafx/font/PGFont;
            0   79     3                strike  Lcom/sun/javafx/font/FontStrike;
            0   79     4                  text  [C
            1   79     5                  slot  I
            2   79     6                    fr  Lcom/sun/javafx/font/FontResource;
            3   79     7             composite  Z
            7   79     8                  face  Lcom/sun/javafx/font/directwrite/IDWriteFontFace;
            9   79     9               factory  Lcom/sun/javafx/font/directwrite/IDWriteFactory;
           10   79    10              analyzer  Lcom/sun/javafx/font/directwrite/IDWriteTextAnalyzer;
           12   79    11              features  [J
           13   79    12  featuresRangeLengths  [I
           14   79    13         featuresCount  I
           15   79    14                length  I
           16   79    15            clusterMap  [S
           17   79    16             textProps  [S
           18   79    17             maxGlyphs  I
           19   79    18                glyphs  [S
           20   79    19            glyphProps  [S
           21   79    20         retGlyphcount  [I
           24   79    21                   rtl  Z
           25   79    22              analysis  Lcom/sun/javafx/font/directwrite/DWRITE_SCRIPT_ANALYSIS;
           28   79    23                 start  I
           32   79    24                    hr  I
           44   79    25            glyphCount  I
           47   79    26                  step  I
           51   79    27                     i  I
           54   79    28                     j  I
           48   79    29               iglyphs  [I
           49   79    30              slotMask  I
           50   79    31          missingGlyph  Z
           67   79    32                  size  F
           68   79    33              advances  [F
           69   79    34               offsets  [F
           76   79    35                   pos  [F
           77   79    36               indices  [I
    MethodParameters:
        Name  Flags
      run     
      font    
      strike  
      text    

  private float[] getPositions(float[], float[], int, boolean);
    descriptor: ([F[FIZ)[F
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=11, args_size=5
        start local 0 // com.sun.javafx.font.directwrite.DWGlyphLayout this
        start local 1 // float[] advances
        start local 2 // float[] offsets
        start local 3 // int glyphCount
        start local 4 // boolean rtl
         0: .line 173
            iload 3 /* glyphCount */
            iconst_2
            imul
            iconst_2
            iadd
            newarray 6
            astore 5 /* pos */
        start local 5 // float[] pos
         1: .line 174
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         2: .line 175
            iload 4 /* rtl */
            ifeq 3
            iload 3 /* glyphCount */
            iconst_1
            isub
            goto 4
      StackMap locals: float[] int
      StackMap stack:
         3: iconst_0
      StackMap locals:
      StackMap stack: int
         4: istore 7 /* j */
        start local 7 // int j
         5: .line 176
            iload 4 /* rtl */
            ifeq 6
            iconst_m1
            goto 7
      StackMap locals: int
      StackMap stack:
         6: iconst_1
      StackMap locals:
      StackMap stack: int
         7: istore 8 /* step */
        start local 8 // int step
         8: .line 177
            fconst_0
            fstore 9 /* x */
        start local 9 // float x
         9: .line 178
            goto 17
        10: .line 179
      StackMap locals: int float
      StackMap stack:
            iload 7 /* j */
            iconst_1
            ishl
            istore 10 /* g */
        start local 10 // int g
        11: .line 180
            aload 5 /* pos */
            iload 6 /* i */
            iinc 6 /* i */ 1
            iload 4 /* rtl */
            ifeq 12
            aload 2 /* offsets */
            iload 10 /* g */
            faload
            fneg
            goto 13
      StackMap locals: com.sun.javafx.font.directwrite.DWGlyphLayout float[] float[] int int float[] int int int float int
      StackMap stack: float[] int
        12: aload 2 /* offsets */
            iload 10 /* g */
            faload
      StackMap locals: com.sun.javafx.font.directwrite.DWGlyphLayout float[] float[] int int float[] int int int float int
      StackMap stack: float[] int float
        13: fload 9 /* x */
            fadd
            fastore
        14: .line 181
            aload 5 /* pos */
            iload 6 /* i */
            iinc 6 /* i */ 1
            aload 2 /* offsets */
            iload 10 /* g */
            iconst_1
            iadd
            faload
            fneg
            fastore
        15: .line 182
            fload 9 /* x */
            aload 1 /* advances */
            iload 7 /* j */
            faload
            fadd
            fstore 9 /* x */
        16: .line 183
            iload 7 /* j */
            iload 8 /* step */
            iadd
            istore 7 /* j */
        end local 10 // int g
        17: .line 178
      StackMap locals:
      StackMap stack:
            iload 6 /* i */
            aload 5 /* pos */
            arraylength
            iconst_2
            isub
            if_icmplt 10
        18: .line 185
            aload 5 /* pos */
            iload 6 /* i */
            iinc 6 /* i */ 1
            fload 9 /* x */
            fastore
        19: .line 186
            aload 5 /* pos */
            iload 6 /* i */
            iinc 6 /* i */ 1
            fconst_0
            fastore
        20: .line 187
            aload 5 /* pos */
            areturn
        end local 9 // float x
        end local 8 // int step
        end local 7 // int j
        end local 6 // int i
        end local 5 // float[] pos
        end local 4 // boolean rtl
        end local 3 // int glyphCount
        end local 2 // float[] offsets
        end local 1 // float[] advances
        end local 0 // com.sun.javafx.font.directwrite.DWGlyphLayout this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   21     0        this  Lcom/sun/javafx/font/directwrite/DWGlyphLayout;
            0   21     1    advances  [F
            0   21     2     offsets  [F
            0   21     3  glyphCount  I
            0   21     4         rtl  Z
            1   21     5         pos  [F
            2   21     6           i  I
            5   21     7           j  I
            8   21     8        step  I
            9   21     9           x  F
           11   17    10           g  I
    MethodParameters:
            Name  Flags
      advances    
      offsets     
      glyphCount  
      rtl         

  private int[] getIndices(short[], int, boolean);
    descriptor: ([SIZ)[I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=7, args_size=4
        start local 0 // com.sun.javafx.font.directwrite.DWGlyphLayout this
        start local 1 // short[] clusterMap
        start local 2 // int glyphCount
        start local 3 // boolean rtl
         0: .line 194
            iload 2 /* glyphCount */
            newarray 10
            astore 4 /* indices */
        start local 4 // int[] indices
         1: .line 195
            aload 4 /* indices */
            iconst_m1
            invokestatic java.util.Arrays.fill:([II)V
         2: .line 196
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         3: goto 8
         4: .line 197
      StackMap locals: int[] int
      StackMap stack:
            aload 1 /* clusterMap */
            iload 5 /* i */
            saload
            istore 6 /* index */
        start local 6 // int index
         5: .line 199
            iload 6 /* index */
            iflt 7
            iload 6 /* index */
            iload 2 /* glyphCount */
            if_icmpge 7
            aload 4 /* indices */
            iload 6 /* index */
            iaload
            iconst_m1
            if_icmpne 7
         6: .line 200
            aload 4 /* indices */
            iload 6 /* index */
            iload 5 /* i */
            iastore
        end local 6 // int index
         7: .line 196
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 5 /* i */
            aload 1 /* clusterMap */
            arraylength
            if_icmplt 4
        end local 5 // int i
         9: .line 203
            aload 4 /* indices */
            arraylength
            ifle 16
        10: .line 204
            aload 4 /* indices */
            iconst_0
            iaload
            iconst_m1
            if_icmpne 11
            aload 4 /* indices */
            iconst_0
            iconst_0
            iastore
        11: .line 206
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 5 /* i */
        start local 5 // int i
        12: goto 15
        13: .line 207
      StackMap locals: int
      StackMap stack:
            aload 4 /* indices */
            iload 5 /* i */
            iaload
            iconst_m1
            if_icmpne 14
            aload 4 /* indices */
            iload 5 /* i */
            aload 4 /* indices */
            iload 5 /* i */
            iconst_1
            isub
            iaload
            iastore
        14: .line 206
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        15: iload 5 /* i */
            aload 4 /* indices */
            arraylength
            if_icmplt 13
        end local 5 // int i
        16: .line 211
      StackMap locals:
      StackMap stack:
            iload 3 /* rtl */
            ifeq 24
        17: .line 213
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        18: goto 23
        19: .line 214
      StackMap locals: int
      StackMap stack:
            aload 4 /* indices */
            iload 5 /* i */
            iaload
            istore 6 /* tmp */
        start local 6 // int tmp
        20: .line 215
            aload 4 /* indices */
            iload 5 /* i */
            aload 4 /* indices */
            aload 4 /* indices */
            arraylength
            iload 5 /* i */
            isub
            iconst_1
            isub
            iaload
            iastore
        21: .line 216
            aload 4 /* indices */
            aload 4 /* indices */
            arraylength
            iload 5 /* i */
            isub
            iconst_1
            isub
            iload 6 /* tmp */
            iastore
        end local 6 // int tmp
        22: .line 213
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        23: iload 5 /* i */
            aload 4 /* indices */
            arraylength
            iconst_2
            idiv
            if_icmplt 19
        end local 5 // int i
        24: .line 219
      StackMap locals:
      StackMap stack:
            aload 4 /* indices */
            areturn
        end local 4 // int[] indices
        end local 3 // boolean rtl
        end local 2 // int glyphCount
        end local 1 // short[] clusterMap
        end local 0 // com.sun.javafx.font.directwrite.DWGlyphLayout this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   25     0        this  Lcom/sun/javafx/font/directwrite/DWGlyphLayout;
            0   25     1  clusterMap  [S
            0   25     2  glyphCount  I
            0   25     3         rtl  Z
            1   25     4     indices  [I
            3    9     5           i  I
            5    7     6       index  I
           12   16     5           i  I
           18   24     5           i  I
           20   22     6         tmp  I
    MethodParameters:
            Name  Flags
      clusterMap  
      glyphCount  
      rtl         

  private java.lang.String getName(com.sun.javafx.font.directwrite.IDWriteLocalizedStrings);
    descriptor: (Lcom/sun/javafx/font/directwrite/IDWriteLocalizedStrings;)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // com.sun.javafx.font.directwrite.DWGlyphLayout this
        start local 1 // com.sun.javafx.font.directwrite.IDWriteLocalizedStrings localizedStrings
         0: .line 223
            aload 1 /* localizedStrings */
            ifnonnull 1
            aconst_null
            areturn
         1: .line 224
      StackMap locals:
      StackMap stack:
            aload 1 /* localizedStrings */
            ldc "en-us"
            invokevirtual com.sun.javafx.font.directwrite.IDWriteLocalizedStrings.FindLocaleName:(Ljava/lang/String;)I
            istore 2 /* index */
        start local 2 // int index
         2: .line 225
            aconst_null
            astore 3 /* name */
        start local 3 // java.lang.String name
         3: .line 226
            iload 2 /* index */
            iflt 6
         4: .line 227
            aload 1 /* localizedStrings */
            iload 2 /* index */
            invokevirtual com.sun.javafx.font.directwrite.IDWriteLocalizedStrings.GetStringLength:(I)I
            istore 4 /* size */
        start local 4 // int size
         5: .line 228
            aload 1 /* localizedStrings */
            iload 2 /* index */
            iload 4 /* size */
            invokevirtual com.sun.javafx.font.directwrite.IDWriteLocalizedStrings.GetString:(II)Ljava/lang/String;
            astore 3 /* name */
        end local 4 // int size
         6: .line 230
      StackMap locals: int java.lang.String
      StackMap stack:
            aload 1 /* localizedStrings */
            invokevirtual com.sun.javafx.font.directwrite.IDWriteLocalizedStrings.Release:()I
            pop
         7: .line 231
            aload 3 /* name */
            areturn
        end local 3 // java.lang.String name
        end local 2 // int index
        end local 1 // com.sun.javafx.font.directwrite.IDWriteLocalizedStrings localizedStrings
        end local 0 // com.sun.javafx.font.directwrite.DWGlyphLayout this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    8     0              this  Lcom/sun/javafx/font/directwrite/DWGlyphLayout;
            0    8     1  localizedStrings  Lcom/sun/javafx/font/directwrite/IDWriteLocalizedStrings;
            2    8     2             index  I
            3    8     3              name  Ljava/lang/String;
            5    6     4              size  I
    MethodParameters:
                  Name  Flags
      localizedStrings  

  private com.sun.javafx.font.FontResource checkFontResource(com.sun.javafx.font.FontResource, java.lang.String, java.lang.String);
    descriptor: (Lcom/sun/javafx/font/FontResource;Ljava/lang/String;Ljava/lang/String;)Lcom/sun/javafx/font/FontResource;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=4
        start local 0 // com.sun.javafx.font.directwrite.DWGlyphLayout this
        start local 1 // com.sun.javafx.font.FontResource fr
        start local 2 // java.lang.String psName
        start local 3 // java.lang.String win32Name
         0: .line 236
            aload 1 /* fr */
            ifnonnull 1
            aconst_null
            areturn
         1: .line 239
      StackMap locals:
      StackMap stack:
            aload 2 /* psName */
            ifnull 3
         2: .line 240
            aload 2 /* psName */
            aload 1 /* fr */
            invokeinterface com.sun.javafx.font.FontResource.getPSName:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 3
            aload 1 /* fr */
            areturn
         3: .line 247
      StackMap locals:
      StackMap stack:
            aload 3 /* win32Name */
            ifnull 7
         4: .line 248
            aload 3 /* win32Name */
            aload 1 /* fr */
            invokeinterface com.sun.javafx.font.FontResource.getFullName:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 5
            aload 1 /* fr */
            areturn
         5: .line 251
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 1 /* fr */
            invokeinterface com.sun.javafx.font.FontResource.getFamilyName:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* fr */
            invokeinterface com.sun.javafx.font.FontResource.getStyleName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 4 /* name */
        start local 4 // java.lang.String name
         6: .line 252
            aload 3 /* win32Name */
            aload 4 /* name */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 7
            aload 1 /* fr */
            areturn
        end local 4 // java.lang.String name
         7: .line 254
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 3 // java.lang.String win32Name
        end local 2 // java.lang.String psName
        end local 1 // com.sun.javafx.font.FontResource fr
        end local 0 // com.sun.javafx.font.directwrite.DWGlyphLayout this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0       this  Lcom/sun/javafx/font/directwrite/DWGlyphLayout;
            0    8     1         fr  Lcom/sun/javafx/font/FontResource;
            0    8     2     psName  Ljava/lang/String;
            0    8     3  win32Name  Ljava/lang/String;
            6    7     4       name  Ljava/lang/String;
    MethodParameters:
           Name  Flags
      fr         
      psName     
      win32Name  

  private int getFontSlot(com.sun.javafx.font.directwrite.IDWriteFontFace, com.sun.javafx.font.CompositeFontResource, java.lang.String, int);
    descriptor: (Lcom/sun/javafx/font/directwrite/IDWriteFontFace;Lcom/sun/javafx/font/CompositeFontResource;Ljava/lang/String;I)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=20, args_size=5
        start local 0 // com.sun.javafx.font.directwrite.DWGlyphLayout this
        start local 1 // com.sun.javafx.font.directwrite.IDWriteFontFace face
        start local 2 // com.sun.javafx.font.CompositeFontResource composite
        start local 3 // java.lang.String primaryFont
        start local 4 // int slot
         0: .line 259
            aload 1 /* face */
            ifnonnull 1
            iconst_m1
            ireturn
         1: .line 260
      StackMap locals:
      StackMap stack:
            invokestatic com.sun.javafx.font.directwrite.DWFactory.getFontCollection:()Lcom/sun/javafx/font/directwrite/IDWriteFontCollection;
            astore 5 /* collection */
        start local 5 // com.sun.javafx.font.directwrite.IDWriteFontCollection collection
         2: .line 261
            invokestatic com.sun.javafx.font.PrismFontFactory.getFontFactory:()Lcom/sun/javafx/font/PrismFontFactory;
            astore 6 /* prismFactory */
        start local 6 // com.sun.javafx.font.PrismFontFactory prismFactory
         3: .line 265
            aload 5 /* collection */
            aload 1 /* face */
            invokevirtual com.sun.javafx.font.directwrite.IDWriteFontCollection.GetFontFromFontFace:(Lcom/sun/javafx/font/directwrite/IDWriteFontFace;)Lcom/sun/javafx/font/directwrite/IDWriteFont;
            astore 7 /* font */
        start local 7 // com.sun.javafx.font.directwrite.IDWriteFont font
         4: .line 266
            aload 7 /* font */
            ifnonnull 5
            iconst_m1
            ireturn
         5: .line 267
      StackMap locals: com.sun.javafx.font.directwrite.IDWriteFontCollection com.sun.javafx.font.PrismFontFactory com.sun.javafx.font.directwrite.IDWriteFont
      StackMap stack:
            aload 7 /* font */
            invokevirtual com.sun.javafx.font.directwrite.IDWriteFont.GetFontFamily:()Lcom/sun/javafx/font/directwrite/IDWriteFontFamily;
            astore 8 /* fallbackFamily */
        start local 8 // com.sun.javafx.font.directwrite.IDWriteFontFamily fallbackFamily
         6: .line 268
            aload 0 /* this */
            aload 8 /* fallbackFamily */
            invokevirtual com.sun.javafx.font.directwrite.IDWriteFontFamily.GetFamilyNames:()Lcom/sun/javafx/font/directwrite/IDWriteLocalizedStrings;
            invokevirtual com.sun.javafx.font.directwrite.DWGlyphLayout.getName:(Lcom/sun/javafx/font/directwrite/IDWriteLocalizedStrings;)Ljava/lang/String;
            astore 9 /* family */
        start local 9 // java.lang.String family
         7: .line 269
            aload 8 /* fallbackFamily */
            invokevirtual com.sun.javafx.font.directwrite.IDWriteFontFamily.Release:()I
            pop
         8: .line 270
            aload 7 /* font */
            invokevirtual com.sun.javafx.font.directwrite.IDWriteFont.GetStyle:()I
            ifeq 9
            iconst_1
            goto 10
      StackMap locals: com.sun.javafx.font.directwrite.IDWriteFontFamily java.lang.String
      StackMap stack:
         9: iconst_0
      StackMap locals:
      StackMap stack: int
        10: istore 10 /* italic */
        start local 10 // boolean italic
        11: .line 271
            aload 7 /* font */
            invokevirtual com.sun.javafx.font.directwrite.IDWriteFont.GetWeight:()I
            sipush 400
            if_icmple 12
            iconst_1
            goto 13
      StackMap locals: int
      StackMap stack:
        12: iconst_0
      StackMap locals:
      StackMap stack: int
        13: istore 11 /* bold */
        start local 11 // boolean bold
        14: .line 272
            aload 7 /* font */
            invokevirtual com.sun.javafx.font.directwrite.IDWriteFont.GetSimulations:()I
            istore 12 /* simulation */
        start local 12 // int simulation
        15: .line 273
            bipush 17
            istore 13 /* info */
        start local 13 // int info
        16: .line 274
            aload 0 /* this */
            aload 7 /* font */
            iload 13 /* info */
            invokevirtual com.sun.javafx.font.directwrite.IDWriteFont.GetInformationalStrings:(I)Lcom/sun/javafx/font/directwrite/IDWriteLocalizedStrings;
            invokevirtual com.sun.javafx.font.directwrite.DWGlyphLayout.getName:(Lcom/sun/javafx/font/directwrite/IDWriteLocalizedStrings;)Ljava/lang/String;
            astore 14 /* psName */
        start local 14 // java.lang.String psName
        17: .line 275
            bipush 11
            istore 13 /* info */
        18: .line 276
            aload 0 /* this */
            aload 7 /* font */
            iload 13 /* info */
            invokevirtual com.sun.javafx.font.directwrite.IDWriteFont.GetInformationalStrings:(I)Lcom/sun/javafx/font/directwrite/IDWriteLocalizedStrings;
            invokevirtual com.sun.javafx.font.directwrite.DWGlyphLayout.getName:(Lcom/sun/javafx/font/directwrite/IDWriteLocalizedStrings;)Ljava/lang/String;
            astore 15 /* win32Family */
        start local 15 // java.lang.String win32Family
        19: .line 277
            bipush 12
            istore 13 /* info */
        20: .line 278
            aload 0 /* this */
            aload 7 /* font */
            iload 13 /* info */
            invokevirtual com.sun.javafx.font.directwrite.IDWriteFont.GetInformationalStrings:(I)Lcom/sun/javafx/font/directwrite/IDWriteLocalizedStrings;
            invokevirtual com.sun.javafx.font.directwrite.DWGlyphLayout.getName:(Lcom/sun/javafx/font/directwrite/IDWriteLocalizedStrings;)Ljava/lang/String;
            astore 16 /* win32SubFamily */
        start local 16 // java.lang.String win32SubFamily
        21: .line 279
            new java.lang.StringBuilder
            dup
            aload 15 /* win32Family */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 16 /* win32SubFamily */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 17 /* win32Name */
        start local 17 // java.lang.String win32Name
        22: .line 281
            getstatic com.sun.javafx.font.PrismFontFactory.debugFonts:Z
            ifeq 28
        23: .line 282
            aload 0 /* this */
            aload 7 /* font */
            invokevirtual com.sun.javafx.font.directwrite.IDWriteFont.GetFaceNames:()Lcom/sun/javafx/font/directwrite/IDWriteLocalizedStrings;
            invokevirtual com.sun.javafx.font.directwrite.DWGlyphLayout.getName:(Lcom/sun/javafx/font/directwrite/IDWriteLocalizedStrings;)Ljava/lang/String;
            astore 18 /* styleName */
        start local 18 // java.lang.String styleName
        24: .line 283
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "Mapping IDWriteFont=\""
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 9 /* family */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 18 /* styleName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        25: .line 284
            ldc "\" Postscript name=\""
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 14 /* psName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        26: .line 285
            ldc "\" Win32 name=\""
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 17 /* win32Name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\""
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        27: .line 283
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        end local 18 // java.lang.String styleName
        28: .line 287
      StackMap locals: com.sun.javafx.font.directwrite.DWGlyphLayout com.sun.javafx.font.directwrite.IDWriteFontFace com.sun.javafx.font.CompositeFontResource java.lang.String int com.sun.javafx.font.directwrite.IDWriteFontCollection com.sun.javafx.font.PrismFontFactory com.sun.javafx.font.directwrite.IDWriteFont com.sun.javafx.font.directwrite.IDWriteFontFamily java.lang.String int int int int java.lang.String java.lang.String java.lang.String java.lang.String
      StackMap stack:
            aload 7 /* font */
            invokevirtual com.sun.javafx.font.directwrite.IDWriteFont.Release:()I
            pop
        29: .line 290
            aload 6 /* prismFactory */
            aload 9 /* family */
            iload 11 /* bold */
            iload 10 /* italic */
            iconst_0
            invokevirtual com.sun.javafx.font.PrismFontFactory.getFontResource:(Ljava/lang/String;ZZZ)Lcom/sun/javafx/font/FontResource;
            astore 18 /* fr */
        start local 18 // com.sun.javafx.font.FontResource fr
        30: .line 291
            aload 0 /* this */
            aload 18 /* fr */
            aload 14 /* psName */
            aload 17 /* win32Name */
            invokevirtual com.sun.javafx.font.directwrite.DWGlyphLayout.checkFontResource:(Lcom/sun/javafx/font/FontResource;Ljava/lang/String;Ljava/lang/String;)Lcom/sun/javafx/font/FontResource;
            astore 18 /* fr */
        31: .line 292
            aload 18 /* fr */
            ifnonnull 40
        32: .line 295
            iload 10 /* italic */
            iload 12 /* simulation */
            iconst_2
            iand
            ifne 33
            iconst_1
            goto 34
      StackMap locals: com.sun.javafx.font.directwrite.DWGlyphLayout com.sun.javafx.font.directwrite.IDWriteFontFace com.sun.javafx.font.CompositeFontResource java.lang.String int com.sun.javafx.font.directwrite.IDWriteFontCollection com.sun.javafx.font.PrismFontFactory com.sun.javafx.font.directwrite.IDWriteFont com.sun.javafx.font.directwrite.IDWriteFontFamily java.lang.String int int int int java.lang.String java.lang.String java.lang.String java.lang.String com.sun.javafx.font.FontResource
      StackMap stack: int
        33: iconst_0
      StackMap locals: com.sun.javafx.font.directwrite.DWGlyphLayout com.sun.javafx.font.directwrite.IDWriteFontFace com.sun.javafx.font.CompositeFontResource java.lang.String int com.sun.javafx.font.directwrite.IDWriteFontCollection com.sun.javafx.font.PrismFontFactory com.sun.javafx.font.directwrite.IDWriteFont com.sun.javafx.font.directwrite.IDWriteFontFamily java.lang.String int int int int java.lang.String java.lang.String java.lang.String java.lang.String com.sun.javafx.font.FontResource
      StackMap stack: int int
        34: iand
            istore 10 /* italic */
        35: .line 296
            iload 11 /* bold */
            iload 12 /* simulation */
            iconst_1
            iand
            ifne 36
            iconst_1
            goto 37
      StackMap locals:
      StackMap stack: int
        36: iconst_0
      StackMap locals: com.sun.javafx.font.directwrite.DWGlyphLayout com.sun.javafx.font.directwrite.IDWriteFontFace com.sun.javafx.font.CompositeFontResource java.lang.String int com.sun.javafx.font.directwrite.IDWriteFontCollection com.sun.javafx.font.PrismFontFactory com.sun.javafx.font.directwrite.IDWriteFont com.sun.javafx.font.directwrite.IDWriteFontFamily java.lang.String int int int int java.lang.String java.lang.String java.lang.String java.lang.String com.sun.javafx.font.FontResource
      StackMap stack: int int
        37: iand
            istore 11 /* bold */
        38: .line 297
            aload 6 /* prismFactory */
            aload 9 /* family */
            iload 11 /* bold */
            iload 10 /* italic */
            iconst_0
            invokevirtual com.sun.javafx.font.PrismFontFactory.getFontResource:(Ljava/lang/String;ZZZ)Lcom/sun/javafx/font/FontResource;
            astore 18 /* fr */
        39: .line 298
            aload 0 /* this */
            aload 18 /* fr */
            aload 14 /* psName */
            aload 17 /* win32Name */
            invokevirtual com.sun.javafx.font.directwrite.DWGlyphLayout.checkFontResource:(Lcom/sun/javafx/font/FontResource;Ljava/lang/String;Ljava/lang/String;)Lcom/sun/javafx/font/FontResource;
            astore 18 /* fr */
        40: .line 300
      StackMap locals:
      StackMap stack:
            aload 18 /* fr */
            ifnonnull 43
        41: .line 302
            aload 6 /* prismFactory */
            aload 17 /* win32Name */
            aconst_null
            iconst_0
            invokevirtual com.sun.javafx.font.PrismFontFactory.getFontResource:(Ljava/lang/String;Ljava/lang/String;Z)Lcom/sun/javafx/font/FontResource;
            astore 18 /* fr */
        42: .line 303
            aload 0 /* this */
            aload 18 /* fr */
            aload 14 /* psName */
            aload 17 /* win32Name */
            invokevirtual com.sun.javafx.font.directwrite.DWGlyphLayout.checkFontResource:(Lcom/sun/javafx/font/FontResource;Ljava/lang/String;Ljava/lang/String;)Lcom/sun/javafx/font/FontResource;
            astore 18 /* fr */
        43: .line 305
      StackMap locals:
      StackMap stack:
            aload 18 /* fr */
            ifnonnull 47
        44: .line 306
            getstatic com.sun.javafx.font.PrismFontFactory.debugFonts:Z
            ifeq 46
        45: .line 307
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "\t**** Failed to map IDWriteFont to Prism ****"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        46: .line 309
      StackMap locals:
      StackMap stack:
            iconst_m1
            ireturn
        47: .line 312
      StackMap locals:
      StackMap stack:
            aload 18 /* fr */
            invokeinterface com.sun.javafx.font.FontResource.getFullName:()Ljava/lang/String;
            astore 19 /* fallbackName */
        start local 19 // java.lang.String fallbackName
        48: .line 313
            aload 3 /* primaryFont */
            aload 19 /* fallbackName */
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifne 50
        49: .line 314
            aload 2 /* composite */
            aload 19 /* fallbackName */
            invokeinterface com.sun.javafx.font.CompositeFontResource.getSlotForFont:(Ljava/lang/String;)I
            istore 4 /* slot */
        50: .line 316
      StackMap locals: java.lang.String
      StackMap stack:
            getstatic com.sun.javafx.font.PrismFontFactory.debugFonts:Z
            ifeq 56
        51: .line 317
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "\tFallback full name=\""
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 19 /* fallbackName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        52: .line 318
            ldc "\" Postscript name=\""
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 18 /* fr */
            invokeinterface com.sun.javafx.font.FontResource.getPSName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        53: .line 319
            ldc "\" Style name=\""
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 18 /* fr */
            invokeinterface com.sun.javafx.font.FontResource.getStyleName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        54: .line 320
            ldc "\" slot="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 4 /* slot */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        55: .line 317
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        56: .line 322
      StackMap locals:
      StackMap stack:
            iload 4 /* slot */
            ireturn
        end local 19 // java.lang.String fallbackName
        end local 18 // com.sun.javafx.font.FontResource fr
        end local 17 // java.lang.String win32Name
        end local 16 // java.lang.String win32SubFamily
        end local 15 // java.lang.String win32Family
        end local 14 // java.lang.String psName
        end local 13 // int info
        end local 12 // int simulation
        end local 11 // boolean bold
        end local 10 // boolean italic
        end local 9 // java.lang.String family
        end local 8 // com.sun.javafx.font.directwrite.IDWriteFontFamily fallbackFamily
        end local 7 // com.sun.javafx.font.directwrite.IDWriteFont font
        end local 6 // com.sun.javafx.font.PrismFontFactory prismFactory
        end local 5 // com.sun.javafx.font.directwrite.IDWriteFontCollection collection
        end local 4 // int slot
        end local 3 // java.lang.String primaryFont
        end local 2 // com.sun.javafx.font.CompositeFontResource composite
        end local 1 // com.sun.javafx.font.directwrite.IDWriteFontFace face
        end local 0 // com.sun.javafx.font.directwrite.DWGlyphLayout this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   57     0            this  Lcom/sun/javafx/font/directwrite/DWGlyphLayout;
            0   57     1            face  Lcom/sun/javafx/font/directwrite/IDWriteFontFace;
            0   57     2       composite  Lcom/sun/javafx/font/CompositeFontResource;
            0   57     3     primaryFont  Ljava/lang/String;
            0   57     4            slot  I
            2   57     5      collection  Lcom/sun/javafx/font/directwrite/IDWriteFontCollection;
            3   57     6    prismFactory  Lcom/sun/javafx/font/PrismFontFactory;
            4   57     7            font  Lcom/sun/javafx/font/directwrite/IDWriteFont;
            6   57     8  fallbackFamily  Lcom/sun/javafx/font/directwrite/IDWriteFontFamily;
            7   57     9          family  Ljava/lang/String;
           11   57    10          italic  Z
           14   57    11            bold  Z
           15   57    12      simulation  I
           16   57    13            info  I
           17   57    14          psName  Ljava/lang/String;
           19   57    15     win32Family  Ljava/lang/String;
           21   57    16  win32SubFamily  Ljava/lang/String;
           22   57    17       win32Name  Ljava/lang/String;
           24   28    18       styleName  Ljava/lang/String;
           30   57    18              fr  Lcom/sun/javafx/font/FontResource;
           48   57    19    fallbackName  Ljava/lang/String;
    MethodParameters:
             Name  Flags
      face         
      composite    
      primaryFont  
      slot         

  private void renderShape(char[], com.sun.javafx.text.TextRun, com.sun.javafx.font.PGFont, int);
    descriptor: ([CLcom/sun/javafx/text/TextRun;Lcom/sun/javafx/font/PGFont;I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=31, args_size=5
        start local 0 // com.sun.javafx.font.directwrite.DWGlyphLayout this
        start local 1 // char[] text
        start local 2 // com.sun.javafx.text.TextRun run
        start local 3 // com.sun.javafx.font.PGFont font
        start local 4 // int baseSlot
         0: .line 326
            aload 3 /* font */
            invokeinterface com.sun.javafx.font.PGFont.getFontResource:()Lcom/sun/javafx/font/FontResource;
            checkcast com.sun.javafx.font.CompositeFontResource
            astore 5 /* composite */
        start local 5 // com.sun.javafx.font.CompositeFontResource composite
         1: .line 327
            aload 5 /* composite */
            iload 4 /* baseSlot */
            invokeinterface com.sun.javafx.font.CompositeFontResource.getSlotResource:(I)Lcom/sun/javafx/font/FontResource;
            astore 6 /* fr */
        start local 6 // com.sun.javafx.font.FontResource fr
         2: .line 328
            aload 6 /* fr */
            invokeinterface com.sun.javafx.font.FontResource.getFamilyName:()Ljava/lang/String;
            astore 7 /* family */
        start local 7 // java.lang.String family
         3: .line 329
            aload 6 /* fr */
            invokeinterface com.sun.javafx.font.FontResource.getFullName:()Ljava/lang/String;
            astore 8 /* fullName */
        start local 8 // java.lang.String fullName
         4: .line 330
            aload 6 /* fr */
            invokeinterface com.sun.javafx.font.FontResource.isBold:()Z
            ifeq 5
            sipush 700
            goto 6
         5: .line 331
      StackMap locals: com.sun.javafx.font.directwrite.DWGlyphLayout char[] com.sun.javafx.text.TextRun com.sun.javafx.font.PGFont int com.sun.javafx.font.CompositeFontResource com.sun.javafx.font.FontResource java.lang.String java.lang.String
      StackMap stack:
            sipush 400
         6: .line 330
      StackMap locals:
      StackMap stack: int
            istore 9 /* weight */
        start local 9 // int weight
         7: .line 332
            iconst_5
            istore 10 /* stretch */
        start local 10 // int stretch
         8: .line 333
            aload 6 /* fr */
            invokeinterface com.sun.javafx.font.FontResource.isItalic:()Z
            ifeq 9
            iconst_2
            goto 10
         9: .line 334
      StackMap locals: int int
      StackMap stack:
            iconst_0
        10: .line 333
      StackMap locals:
      StackMap stack: int
            istore 11 /* style */
        start local 11 // int style
        11: .line 335
            aload 3 /* font */
            invokeinterface com.sun.javafx.font.PGFont.getSize:()F
            fstore 12 /* size */
        start local 12 // float size
        12: .line 338
            fload 12 /* size */
            fconst_0
            fcmpl
            ifle 13
            fload 12 /* size */
            goto 14
      StackMap locals: int float
      StackMap stack:
        13: fconst_1
      StackMap locals:
      StackMap stack: float
        14: fstore 13 /* fontsize */
        start local 13 // float fontsize
        15: .line 340
            invokestatic com.sun.javafx.font.directwrite.DWFactory.getDWriteFactory:()Lcom/sun/javafx/font/directwrite/IDWriteFactory;
            astore 14 /* factory */
        start local 14 // com.sun.javafx.font.directwrite.IDWriteFactory factory
        16: .line 345
            invokestatic com.sun.javafx.font.directwrite.DWFactory.getFontCollection:()Lcom/sun/javafx/font/directwrite/IDWriteFontCollection;
            astore 15 /* collection */
        start local 15 // com.sun.javafx.font.directwrite.IDWriteFontCollection collection
        17: .line 347
            aload 14 /* factory */
            aload 7 /* family */
        18: .line 348
            aload 15 /* collection */
        19: .line 349
            iload 9 /* weight */
        20: .line 350
            iload 11 /* style */
        21: .line 351
            iload 10 /* stretch */
        22: .line 352
            fload 13 /* fontsize */
        23: .line 353
            ldc "en-us"
        24: .line 347
            invokevirtual com.sun.javafx.font.directwrite.IDWriteFactory.CreateTextFormat:(Ljava/lang/String;Lcom/sun/javafx/font/directwrite/IDWriteFontCollection;IIIFLjava/lang/String;)Lcom/sun/javafx/font/directwrite/IDWriteTextFormat;
            astore 16 /* format */
        start local 16 // com.sun.javafx.font.directwrite.IDWriteTextFormat format
        25: .line 354
            aload 16 /* format */
            ifnonnull 26
            return
        26: .line 356
      StackMap locals: com.sun.javafx.font.directwrite.DWGlyphLayout char[] com.sun.javafx.text.TextRun com.sun.javafx.font.PGFont int com.sun.javafx.font.CompositeFontResource com.sun.javafx.font.FontResource java.lang.String java.lang.String int int int float float com.sun.javafx.font.directwrite.IDWriteFactory com.sun.javafx.font.directwrite.IDWriteFontCollection com.sun.javafx.font.directwrite.IDWriteTextFormat
      StackMap stack:
            aload 2 /* run */
            invokevirtual com.sun.javafx.text.TextRun.getStart:()I
            istore 17 /* start */
        start local 17 // int start
        27: .line 357
            aload 2 /* run */
            invokevirtual com.sun.javafx.text.TextRun.getLength:()I
            istore 18 /* length */
        start local 18 // int length
        28: .line 358
            aload 14 /* factory */
            aload 1 /* text */
            iload 17 /* start */
            iload 18 /* length */
            aload 16 /* format */
            ldc 100000.0
            ldc 100000.0
            invokevirtual com.sun.javafx.font.directwrite.IDWriteFactory.CreateTextLayout:([CIILcom/sun/javafx/font/directwrite/IDWriteTextFormat;FF)Lcom/sun/javafx/font/directwrite/IDWriteTextLayout;
            astore 19 /* layout */
        start local 19 // com.sun.javafx.font.directwrite.IDWriteTextLayout layout
        29: .line 359
            aload 19 /* layout */
            ifnull 69
        30: .line 360
            invokestatic com.sun.javafx.font.directwrite.OS.NewJFXTextRenderer:()Lcom/sun/javafx/font/directwrite/JFXTextRenderer;
            astore 20 /* renderer */
        start local 20 // com.sun.javafx.font.directwrite.JFXTextRenderer renderer
        31: .line 361
            aload 20 /* renderer */
            ifnull 68
        32: .line 362
            aload 20 /* renderer */
            invokevirtual com.sun.javafx.font.directwrite.JFXTextRenderer.AddRef:()I
            pop
        33: .line 365
            aload 19 /* layout */
            lconst_0
            aload 20 /* renderer */
            fconst_0
            fconst_0
            invokevirtual com.sun.javafx.font.directwrite.IDWriteTextLayout.Draw:(JLcom/sun/javafx/font/directwrite/JFXTextRenderer;FF)I
            pop
        34: .line 368
            aload 20 /* renderer */
            invokevirtual com.sun.javafx.font.directwrite.JFXTextRenderer.GetTotalGlyphCount:()I
            istore 21 /* glyphCount */
        start local 21 // int glyphCount
        35: .line 369
            iload 21 /* glyphCount */
            newarray 10
            astore 22 /* glyphs */
        start local 22 // int[] glyphs
        36: .line 370
            iload 21 /* glyphCount */
            newarray 6
            astore 23 /* advances */
        start local 23 // float[] advances
        37: .line 371
            iload 21 /* glyphCount */
            iconst_2
            imul
            newarray 6
            astore 24 /* offsets */
        start local 24 // float[] offsets
        38: .line 372
            iload 18 /* length */
            newarray 9
            astore 25 /* clusterMap */
        start local 25 // short[] clusterMap
        39: .line 373
            iconst_0
            istore 26 /* glyphStart */
        start local 26 // int glyphStart
        40: .line 374
            iconst_0
            istore 27 /* textStart */
        start local 27 // int textStart
        41: .line 375
            goto 52
        42: .line 376
      StackMap locals: com.sun.javafx.font.directwrite.DWGlyphLayout char[] com.sun.javafx.text.TextRun com.sun.javafx.font.PGFont int com.sun.javafx.font.CompositeFontResource com.sun.javafx.font.FontResource java.lang.String java.lang.String int int int float float com.sun.javafx.font.directwrite.IDWriteFactory com.sun.javafx.font.directwrite.IDWriteFontCollection com.sun.javafx.font.directwrite.IDWriteTextFormat int int com.sun.javafx.font.directwrite.IDWriteTextLayout com.sun.javafx.font.directwrite.JFXTextRenderer int int[] float[] float[] short[] int int
      StackMap stack:
            aload 20 /* renderer */
            invokevirtual com.sun.javafx.font.directwrite.JFXTextRenderer.GetFontFace:()Lcom/sun/javafx/font/directwrite/IDWriteFontFace;
            astore 28 /* fallback */
        start local 28 // com.sun.javafx.font.directwrite.IDWriteFontFace fallback
        43: .line 377
            aload 0 /* this */
            aload 28 /* fallback */
            aload 5 /* composite */
            aload 8 /* fullName */
            iload 4 /* baseSlot */
            invokevirtual com.sun.javafx.font.directwrite.DWGlyphLayout.getFontSlot:(Lcom/sun/javafx/font/directwrite/IDWriteFontFace;Lcom/sun/javafx/font/CompositeFontResource;Ljava/lang/String;I)I
            istore 29 /* slot */
        start local 29 // int slot
        44: .line 378
            iload 29 /* slot */
            iflt 47
        45: .line 379
            aload 20 /* renderer */
            aload 22 /* glyphs */
            iload 26 /* glyphStart */
            iload 29 /* slot */
            bipush 24
            ishl
            invokevirtual com.sun.javafx.font.directwrite.JFXTextRenderer.GetGlyphIndices:([III)I
            pop
        46: .line 380
            aload 20 /* renderer */
            aload 24 /* offsets */
            iload 26 /* glyphStart */
            iconst_2
            imul
            invokevirtual com.sun.javafx.font.directwrite.JFXTextRenderer.GetGlyphOffsets:([FI)I
            pop
        47: .line 382
      StackMap locals: com.sun.javafx.font.directwrite.IDWriteFontFace int
      StackMap stack:
            fload 12 /* size */
            fconst_0
            fcmpl
            ifle 49
        48: .line 384
            aload 20 /* renderer */
            aload 23 /* advances */
            iload 26 /* glyphStart */
            invokevirtual com.sun.javafx.font.directwrite.JFXTextRenderer.GetGlyphAdvances:([FI)I
            pop
        49: .line 386
      StackMap locals:
      StackMap stack:
            aload 20 /* renderer */
            aload 25 /* clusterMap */
            iload 27 /* textStart */
            iload 26 /* glyphStart */
            invokevirtual com.sun.javafx.font.directwrite.JFXTextRenderer.GetClusterMap:([SII)I
            pop
        50: .line 387
            iload 26 /* glyphStart */
            aload 20 /* renderer */
            invokevirtual com.sun.javafx.font.directwrite.JFXTextRenderer.GetGlyphCount:()I
            iadd
            istore 26 /* glyphStart */
        51: .line 388
            iload 27 /* textStart */
            aload 20 /* renderer */
            invokevirtual com.sun.javafx.font.directwrite.JFXTextRenderer.GetLength:()I
            iadd
            istore 27 /* textStart */
        end local 29 // int slot
        end local 28 // com.sun.javafx.font.directwrite.IDWriteFontFace fallback
        52: .line 375
      StackMap locals:
      StackMap stack:
            aload 20 /* renderer */
            invokevirtual com.sun.javafx.font.directwrite.JFXTextRenderer.Next:()Z
            ifne 42
        53: .line 390
            aload 20 /* renderer */
            invokevirtual com.sun.javafx.font.directwrite.JFXTextRenderer.Release:()I
            pop
        54: .line 393
            aload 2 /* run */
            invokevirtual com.sun.javafx.text.TextRun.isLeftToRight:()Z
            ifeq 55
            iconst_0
            goto 56
      StackMap locals:
      StackMap stack:
        55: iconst_1
      StackMap locals:
      StackMap stack: int
        56: istore 28 /* rtl */
        start local 28 // boolean rtl
        57: .line 394
            iload 28 /* rtl */
            ifeq 65
        58: .line 395
            iconst_0
            istore 29 /* i */
        start local 29 // int i
        59: goto 64
        60: .line 396
      StackMap locals: int int
      StackMap stack:
            aload 22 /* glyphs */
            iload 29 /* i */
            iaload
            istore 30 /* tmp */
        start local 30 // int tmp
        61: .line 397
            aload 22 /* glyphs */
            iload 29 /* i */
            aload 22 /* glyphs */
            iload 21 /* glyphCount */
            iload 29 /* i */
            isub
            iconst_1
            isub
            iaload
            iastore
        62: .line 398
            aload 22 /* glyphs */
            iload 21 /* glyphCount */
            iload 29 /* i */
            isub
            iconst_1
            isub
            iload 30 /* tmp */
            iastore
        end local 30 // int tmp
        63: .line 395
            iinc 29 /* i */ 1
      StackMap locals:
      StackMap stack:
        64: iload 29 /* i */
            iload 21 /* glyphCount */
            iconst_2
            idiv
            if_icmplt 60
        end local 29 // int i
        65: .line 401
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 23 /* advances */
            aload 24 /* offsets */
            iload 21 /* glyphCount */
            iload 28 /* rtl */
            invokevirtual com.sun.javafx.font.directwrite.DWGlyphLayout.getPositions:([F[FIZ)[F
            astore 29 /* pos */
        start local 29 // float[] pos
        66: .line 402
            aload 0 /* this */
            aload 25 /* clusterMap */
            iload 21 /* glyphCount */
            iload 28 /* rtl */
            invokevirtual com.sun.javafx.font.directwrite.DWGlyphLayout.getIndices:([SIZ)[I
            astore 30 /* indices */
        start local 30 // int[] indices
        67: .line 403
            aload 2 /* run */
            iload 21 /* glyphCount */
            aload 22 /* glyphs */
            aload 29 /* pos */
            aload 30 /* indices */
            invokevirtual com.sun.javafx.text.TextRun.shape:(I[I[F[I)V
        end local 30 // int[] indices
        end local 29 // float[] pos
        end local 28 // boolean rtl
        end local 27 // int textStart
        end local 26 // int glyphStart
        end local 25 // short[] clusterMap
        end local 24 // float[] offsets
        end local 23 // float[] advances
        end local 22 // int[] glyphs
        end local 21 // int glyphCount
        68: .line 405
      StackMap locals: com.sun.javafx.font.directwrite.DWGlyphLayout char[] com.sun.javafx.text.TextRun com.sun.javafx.font.PGFont int com.sun.javafx.font.CompositeFontResource com.sun.javafx.font.FontResource java.lang.String java.lang.String int int int float float com.sun.javafx.font.directwrite.IDWriteFactory com.sun.javafx.font.directwrite.IDWriteFontCollection com.sun.javafx.font.directwrite.IDWriteTextFormat int int com.sun.javafx.font.directwrite.IDWriteTextLayout com.sun.javafx.font.directwrite.JFXTextRenderer
      StackMap stack:
            aload 19 /* layout */
            invokevirtual com.sun.javafx.font.directwrite.IDWriteTextLayout.Release:()I
            pop
        end local 20 // com.sun.javafx.font.directwrite.JFXTextRenderer renderer
        69: .line 407
      StackMap locals:
      StackMap stack:
            aload 16 /* format */
            invokevirtual com.sun.javafx.font.directwrite.IDWriteTextFormat.Release:()I
            pop
        70: .line 408
            return
        end local 19 // com.sun.javafx.font.directwrite.IDWriteTextLayout layout
        end local 18 // int length
        end local 17 // int start
        end local 16 // com.sun.javafx.font.directwrite.IDWriteTextFormat format
        end local 15 // com.sun.javafx.font.directwrite.IDWriteFontCollection collection
        end local 14 // com.sun.javafx.font.directwrite.IDWriteFactory factory
        end local 13 // float fontsize
        end local 12 // float size
        end local 11 // int style
        end local 10 // int stretch
        end local 9 // int weight
        end local 8 // java.lang.String fullName
        end local 7 // java.lang.String family
        end local 6 // com.sun.javafx.font.FontResource fr
        end local 5 // com.sun.javafx.font.CompositeFontResource composite
        end local 4 // int baseSlot
        end local 3 // com.sun.javafx.font.PGFont font
        end local 2 // com.sun.javafx.text.TextRun run
        end local 1 // char[] text
        end local 0 // com.sun.javafx.font.directwrite.DWGlyphLayout this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   71     0        this  Lcom/sun/javafx/font/directwrite/DWGlyphLayout;
            0   71     1        text  [C
            0   71     2         run  Lcom/sun/javafx/text/TextRun;
            0   71     3        font  Lcom/sun/javafx/font/PGFont;
            0   71     4    baseSlot  I
            1   71     5   composite  Lcom/sun/javafx/font/CompositeFontResource;
            2   71     6          fr  Lcom/sun/javafx/font/FontResource;
            3   71     7      family  Ljava/lang/String;
            4   71     8    fullName  Ljava/lang/String;
            7   71     9      weight  I
            8   71    10     stretch  I
           11   71    11       style  I
           12   71    12        size  F
           15   71    13    fontsize  F
           16   71    14     factory  Lcom/sun/javafx/font/directwrite/IDWriteFactory;
           17   71    15  collection  Lcom/sun/javafx/font/directwrite/IDWriteFontCollection;
           25   71    16      format  Lcom/sun/javafx/font/directwrite/IDWriteTextFormat;
           27   71    17       start  I
           28   71    18      length  I
           29   71    19      layout  Lcom/sun/javafx/font/directwrite/IDWriteTextLayout;
           31   69    20    renderer  Lcom/sun/javafx/font/directwrite/JFXTextRenderer;
           35   68    21  glyphCount  I
           36   68    22      glyphs  [I
           37   68    23    advances  [F
           38   68    24     offsets  [F
           39   68    25  clusterMap  [S
           40   68    26  glyphStart  I
           41   68    27   textStart  I
           43   52    28    fallback  Lcom/sun/javafx/font/directwrite/IDWriteFontFace;
           44   52    29        slot  I
           57   68    28         rtl  Z
           59   65    29           i  I
           61   63    30         tmp  I
           66   68    29         pos  [F
           67   68    30     indices  [I
    MethodParameters:
          Name  Flags
      text      
      run       
      font      
      baseSlot  
}
SourceFile: "DWGlyphLayout.java"