public class com.sun.javafx.sg.prism.NGText extends com.sun.javafx.sg.prism.NGShape
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.sun.javafx.sg.prism.NGText
  super_class: com.sun.javafx.sg.prism.NGShape
{
  static final com.sun.javafx.geom.transform.BaseTransform IDENT;
    descriptor: Lcom/sun/javafx/geom/transform/BaseTransform;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  private com.sun.javafx.scene.text.GlyphList[] runs;
    descriptor: [Lcom/sun/javafx/scene/text/GlyphList;
    flags: (0x0002) ACC_PRIVATE

  private float layoutX;
    descriptor: F
    flags: (0x0002) ACC_PRIVATE

  private float layoutY;
    descriptor: F
    flags: (0x0002) ACC_PRIVATE

  private com.sun.javafx.font.PGFont font;
    descriptor: Lcom/sun/javafx/font/PGFont;
    flags: (0x0002) ACC_PRIVATE

  private int fontSmoothingType;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

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

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

  private java.lang.Object selectionPaint;
    descriptor: Ljava/lang/Object;
    flags: (0x0002) ACC_PRIVATE

  private int selectionStart;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private int selectionEnd;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private static double EPSILON;
    descriptor: D
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private com.sun.javafx.font.FontStrike fontStrike;
    descriptor: Lcom/sun/javafx/font/FontStrike;
    flags: (0x0002) ACC_PRIVATE

  private com.sun.javafx.font.FontStrike identityStrike;
    descriptor: Lcom/sun/javafx/font/FontStrike;
    flags: (0x0002) ACC_PRIVATE

  private double[] strikeMat;
    descriptor: [D
    flags: (0x0002) ACC_PRIVATE

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

  private static int FILL;
    descriptor: I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private static int SHAPE_FILL;
    descriptor: I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private static int TEXT;
    descriptor: I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private static int DECORATION;
    descriptor: I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 46
            getstatic com.sun.javafx.geom.transform.BaseTransform.IDENTITY_TRANSFORM:Lcom/sun/javafx/geom/transform/BaseTransform;
            putstatic com.sun.javafx.sg.prism.NGText.IDENT:Lcom/sun/javafx/geom/transform/BaseTransform;
         1: .line 118
            ldc 0.01
            putstatic com.sun.javafx.sg.prism.NGText.EPSILON:D
         2: .line 227
            iconst_2
            putstatic com.sun.javafx.sg.prism.NGText.FILL:I
         3: .line 228
            iconst_4
            putstatic com.sun.javafx.sg.prism.NGText.SHAPE_FILL:I
         4: .line 229
            bipush 8
            putstatic com.sun.javafx.sg.prism.NGText.TEXT:I
         5: .line 230
            bipush 16
            putstatic com.sun.javafx.sg.prism.NGText.DECORATION:I
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.javafx.sg.prism.NGText this
         0: .line 48
            aload 0 /* this */
            invokespecial com.sun.javafx.sg.prism.NGShape.<init>:()V
         1: .line 119
            aload 0 /* this */
            aconst_null
            putfield com.sun.javafx.sg.prism.NGText.fontStrike:Lcom/sun/javafx/font/FontStrike;
         2: .line 120
            aload 0 /* this */
            aconst_null
            putfield com.sun.javafx.sg.prism.NGText.identityStrike:Lcom/sun/javafx/font/FontStrike;
         3: .line 121
            aload 0 /* this */
            iconst_4
            newarray 7
            putfield com.sun.javafx.sg.prism.NGText.strikeMat:[D
         4: .line 194
            aload 0 /* this */
            iconst_0
            putfield com.sun.javafx.sg.prism.NGText.drawingEffect:Z
         5: .line 49
            return
        end local 0 // com.sun.javafx.sg.prism.NGText this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lcom/sun/javafx/sg/prism/NGText;

  public void setGlyphs(java.lang.Object[]);
    descriptor: ([Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.javafx.sg.prism.NGText this
        start local 1 // java.lang.Object[] glyphs
         0: .line 53
            aload 0 /* this */
            aload 1 /* glyphs */
            checkcast com.sun.javafx.scene.text.GlyphList[]
            putfield com.sun.javafx.sg.prism.NGText.runs:[Lcom/sun/javafx/scene/text/GlyphList;
         1: .line 54
            aload 0 /* this */
            invokevirtual com.sun.javafx.sg.prism.NGText.geometryChanged:()V
         2: .line 55
            return
        end local 1 // java.lang.Object[] glyphs
        end local 0 // com.sun.javafx.sg.prism.NGText this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lcom/sun/javafx/sg/prism/NGText;
            0    3     1  glyphs  [Ljava/lang/Object;
    MethodParameters:
        Name  Flags
      glyphs  

  public void setLayoutLocation(float, float);
    descriptor: (FF)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // com.sun.javafx.sg.prism.NGText this
        start local 1 // float x
        start local 2 // float y
         0: .line 59
            aload 0 /* this */
            fload 1 /* x */
            putfield com.sun.javafx.sg.prism.NGText.layoutX:F
         1: .line 60
            aload 0 /* this */
            fload 2 /* y */
            putfield com.sun.javafx.sg.prism.NGText.layoutY:F
         2: .line 61
            aload 0 /* this */
            invokevirtual com.sun.javafx.sg.prism.NGText.geometryChanged:()V
         3: .line 62
            return
        end local 2 // float y
        end local 1 // float x
        end local 0 // com.sun.javafx.sg.prism.NGText this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/sun/javafx/sg/prism/NGText;
            0    4     1     x  F
            0    4     2     y  F
    MethodParameters:
      Name  Flags
      x     
      y     

  public void setFont(java.lang.Object);
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.javafx.sg.prism.NGText this
        start local 1 // java.lang.Object font
         0: .line 66
            aload 1 /* font */
            ifnull 2
            aload 1 /* font */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.font:Lcom/sun/javafx/font/PGFont;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 2
         1: .line 67
            return
         2: .line 69
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* font */
            checkcast com.sun.javafx.font.PGFont
            putfield com.sun.javafx.sg.prism.NGText.font:Lcom/sun/javafx/font/PGFont;
         3: .line 70
            aload 0 /* this */
            aconst_null
            putfield com.sun.javafx.sg.prism.NGText.fontStrike:Lcom/sun/javafx/font/FontStrike;
         4: .line 71
            aload 0 /* this */
            aconst_null
            putfield com.sun.javafx.sg.prism.NGText.identityStrike:Lcom/sun/javafx/font/FontStrike;
         5: .line 72
            aload 0 /* this */
            invokevirtual com.sun.javafx.sg.prism.NGText.geometryChanged:()V
         6: .line 73
            return
        end local 1 // java.lang.Object font
        end local 0 // com.sun.javafx.sg.prism.NGText this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lcom/sun/javafx/sg/prism/NGText;
            0    7     1  font  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      font  

  public void setFontSmoothingType(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.javafx.sg.prism.NGText this
        start local 1 // int fontSmoothingType
         0: .line 77
            aload 0 /* this */
            iload 1 /* fontSmoothingType */
            putfield com.sun.javafx.sg.prism.NGText.fontSmoothingType:I
         1: .line 78
            aload 0 /* this */
            invokevirtual com.sun.javafx.sg.prism.NGText.geometryChanged:()V
         2: .line 79
            return
        end local 1 // int fontSmoothingType
        end local 0 // com.sun.javafx.sg.prism.NGText this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    3     0               this  Lcom/sun/javafx/sg/prism/NGText;
            0    3     1  fontSmoothingType  I
    MethodParameters:
                   Name  Flags
      fontSmoothingType  

  public void setUnderline(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.javafx.sg.prism.NGText this
        start local 1 // boolean underline
         0: .line 83
            aload 0 /* this */
            iload 1 /* underline */
            putfield com.sun.javafx.sg.prism.NGText.underline:Z
         1: .line 84
            aload 0 /* this */
            invokevirtual com.sun.javafx.sg.prism.NGText.geometryChanged:()V
         2: .line 85
            return
        end local 1 // boolean underline
        end local 0 // com.sun.javafx.sg.prism.NGText this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Lcom/sun/javafx/sg/prism/NGText;
            0    3     1  underline  Z
    MethodParameters:
           Name  Flags
      underline  

  public void setStrikethrough(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.javafx.sg.prism.NGText this
        start local 1 // boolean strikethrough
         0: .line 89
            aload 0 /* this */
            iload 1 /* strikethrough */
            putfield com.sun.javafx.sg.prism.NGText.strikethrough:Z
         1: .line 90
            aload 0 /* this */
            invokevirtual com.sun.javafx.sg.prism.NGText.geometryChanged:()V
         2: .line 91
            return
        end local 1 // boolean strikethrough
        end local 0 // com.sun.javafx.sg.prism.NGText this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    3     0           this  Lcom/sun/javafx/sg/prism/NGText;
            0    3     1  strikethrough  Z
    MethodParameters:
               Name  Flags
      strikethrough  

  public void setSelection(int, int, java.lang.Object);
    descriptor: (IILjava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // com.sun.javafx.sg.prism.NGText this
        start local 1 // int start
        start local 2 // int end
        start local 3 // java.lang.Object color
         0: .line 97
            aload 0 /* this */
            aload 3 /* color */
            putfield com.sun.javafx.sg.prism.NGText.selectionPaint:Ljava/lang/Object;
         1: .line 98
            aload 0 /* this */
            iload 1 /* start */
            putfield com.sun.javafx.sg.prism.NGText.selectionStart:I
         2: .line 99
            aload 0 /* this */
            iload 2 /* end */
            putfield com.sun.javafx.sg.prism.NGText.selectionEnd:I
         3: .line 100
            aload 0 /* this */
            invokevirtual com.sun.javafx.sg.prism.NGText.geometryChanged:()V
         4: .line 101
            return
        end local 3 // java.lang.Object color
        end local 2 // int end
        end local 1 // int start
        end local 0 // com.sun.javafx.sg.prism.NGText this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Lcom/sun/javafx/sg/prism/NGText;
            0    5     1  start  I
            0    5     2    end  I
            0    5     3  color  Ljava/lang/Object;
    MethodParameters:
       Name  Flags
      start  
      end    
      color  

  protected com.sun.javafx.geom.BaseBounds computePadding(com.sun.javafx.geom.BaseBounds);
    descriptor: (Lcom/sun/javafx/geom/BaseBounds;)Lcom/sun/javafx/geom/BaseBounds;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=7, locals=3, args_size=2
        start local 0 // com.sun.javafx.sg.prism.NGText this
        start local 1 // com.sun.javafx.geom.BaseBounds region
         0: .line 109
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.fontSmoothingType:I
            iconst_1
            if_icmpne 1
            fconst_2
            goto 2
      StackMap locals:
      StackMap stack:
         1: fconst_1
      StackMap locals:
      StackMap stack: float
         2: fstore 2 /* pad */
        start local 2 // float pad
         3: .line 110
            aload 1 /* region */
            aload 1 /* region */
            invokevirtual com.sun.javafx.geom.BaseBounds.getMinX:()F
            fload 2 /* pad */
            fsub
         4: .line 111
            aload 1 /* region */
            invokevirtual com.sun.javafx.geom.BaseBounds.getMinY:()F
            fload 2 /* pad */
            fsub
         5: .line 112
            aload 1 /* region */
            invokevirtual com.sun.javafx.geom.BaseBounds.getMinZ:()F
         6: .line 113
            aload 1 /* region */
            invokevirtual com.sun.javafx.geom.BaseBounds.getMaxX:()F
            fload 2 /* pad */
            fadd
         7: .line 114
            aload 1 /* region */
            invokevirtual com.sun.javafx.geom.BaseBounds.getMaxY:()F
            fload 2 /* pad */
            fadd
         8: .line 115
            aload 1 /* region */
            invokevirtual com.sun.javafx.geom.BaseBounds.getMaxZ:()F
         9: .line 110
            invokevirtual com.sun.javafx.geom.BaseBounds.deriveWithNewBounds:(FFFFFF)Lcom/sun/javafx/geom/BaseBounds;
            areturn
        end local 2 // float pad
        end local 1 // com.sun.javafx.geom.BaseBounds region
        end local 0 // com.sun.javafx.sg.prism.NGText this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   10     0    this  Lcom/sun/javafx/sg/prism/NGText;
            0   10     1  region  Lcom/sun/javafx/geom/BaseBounds;
            3   10     2     pad  F
    MethodParameters:
        Name  Flags
      region  

  private com.sun.javafx.font.FontStrike getStrike(com.sun.javafx.geom.transform.BaseTransform);
    descriptor: (Lcom/sun/javafx/geom/transform/BaseTransform;)Lcom/sun/javafx/font/FontStrike;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // com.sun.javafx.sg.prism.NGText this
        start local 1 // com.sun.javafx.geom.transform.BaseTransform xform
         0: .line 123
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.fontSmoothingType:I
            istore 2 /* smoothingType */
        start local 2 // int smoothingType
         1: .line 124
            aload 0 /* this */
            invokevirtual com.sun.javafx.sg.prism.NGText.getMode:()Lcom/sun/javafx/sg/prism/NGShape$Mode;
            getstatic com.sun.javafx.sg.prism.NGShape$Mode.STROKE_FILL:Lcom/sun/javafx/sg/prism/NGShape$Mode;
            if_acmpne 3
         2: .line 127
            iconst_0
            istore 2 /* smoothingType */
         3: .line 129
      StackMap locals: int
      StackMap stack:
            aload 1 /* xform */
            invokevirtual com.sun.javafx.geom.transform.BaseTransform.isIdentity:()Z
            ifeq 8
         4: .line 130
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.identityStrike:Lcom/sun/javafx/font/FontStrike;
            ifnull 6
         5: .line 131
            iload 2 /* smoothingType */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.identityStrike:Lcom/sun/javafx/font/FontStrike;
            invokeinterface com.sun.javafx.font.FontStrike.getAAMode:()I
            if_icmpeq 7
         6: .line 132
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.font:Lcom/sun/javafx/font/PGFont;
            getstatic com.sun.javafx.sg.prism.NGText.IDENT:Lcom/sun/javafx/geom/transform/BaseTransform;
            iload 2 /* smoothingType */
            invokeinterface com.sun.javafx.font.PGFont.getStrike:(Lcom/sun/javafx/geom/transform/BaseTransform;I)Lcom/sun/javafx/font/FontStrike;
            putfield com.sun.javafx.sg.prism.NGText.identityStrike:Lcom/sun/javafx/font/FontStrike;
         7: .line 134
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.identityStrike:Lcom/sun/javafx/font/FontStrike;
            areturn
         8: .line 137
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.fontStrike:Lcom/sun/javafx/font/FontStrike;
            ifnull 17
         9: .line 138
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.fontStrike:Lcom/sun/javafx/font/FontStrike;
            invokeinterface com.sun.javafx.font.FontStrike.getSize:()F
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.font:Lcom/sun/javafx/font/PGFont;
            invokeinterface com.sun.javafx.font.PGFont.getSize:()F
            fcmpl
            ifne 17
        10: .line 139
            aload 1 /* xform */
            invokevirtual com.sun.javafx.geom.transform.BaseTransform.getMxy:()D
            dconst_0
            dcmpl
            ifne 11
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.strikeMat:[D
            iconst_1
            daload
            dconst_0
            dcmpl
            ifne 17
        11: .line 140
      StackMap locals:
      StackMap stack:
            aload 1 /* xform */
            invokevirtual com.sun.javafx.geom.transform.BaseTransform.getMyx:()D
            dconst_0
            dcmpl
            ifne 12
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.strikeMat:[D
            iconst_2
            daload
            dconst_0
            dcmpl
            ifne 17
        12: .line 141
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.strikeMat:[D
            iconst_0
            daload
            aload 1 /* xform */
            invokevirtual com.sun.javafx.geom.transform.BaseTransform.getMxx:()D
            dsub
            invokestatic java.lang.Math.abs:(D)D
            getstatic com.sun.javafx.sg.prism.NGText.EPSILON:D
            dcmpl
            ifgt 17
        13: .line 142
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.strikeMat:[D
            iconst_1
            daload
            aload 1 /* xform */
            invokevirtual com.sun.javafx.geom.transform.BaseTransform.getMxy:()D
            dsub
            invokestatic java.lang.Math.abs:(D)D
            getstatic com.sun.javafx.sg.prism.NGText.EPSILON:D
            dcmpl
            ifgt 17
        14: .line 143
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.strikeMat:[D
            iconst_2
            daload
            aload 1 /* xform */
            invokevirtual com.sun.javafx.geom.transform.BaseTransform.getMyx:()D
            dsub
            invokestatic java.lang.Math.abs:(D)D
            getstatic com.sun.javafx.sg.prism.NGText.EPSILON:D
            dcmpl
            ifgt 17
        15: .line 144
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.strikeMat:[D
            iconst_3
            daload
            aload 1 /* xform */
            invokevirtual com.sun.javafx.geom.transform.BaseTransform.getMyy:()D
            dsub
            invokestatic java.lang.Math.abs:(D)D
            getstatic com.sun.javafx.sg.prism.NGText.EPSILON:D
            dcmpl
            ifgt 17
        16: .line 145
            iload 2 /* smoothingType */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.fontStrike:Lcom/sun/javafx/font/FontStrike;
            invokeinterface com.sun.javafx.font.FontStrike.getAAMode:()I
            if_icmpeq 22
        17: .line 147
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.font:Lcom/sun/javafx/font/PGFont;
            aload 1 /* xform */
            iload 2 /* smoothingType */
            invokeinterface com.sun.javafx.font.PGFont.getStrike:(Lcom/sun/javafx/geom/transform/BaseTransform;I)Lcom/sun/javafx/font/FontStrike;
            putfield com.sun.javafx.sg.prism.NGText.fontStrike:Lcom/sun/javafx/font/FontStrike;
        18: .line 148
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.strikeMat:[D
            iconst_0
            aload 1 /* xform */
            invokevirtual com.sun.javafx.geom.transform.BaseTransform.getMxx:()D
            dastore
        19: .line 149
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.strikeMat:[D
            iconst_1
            aload 1 /* xform */
            invokevirtual com.sun.javafx.geom.transform.BaseTransform.getMxy:()D
            dastore
        20: .line 150
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.strikeMat:[D
            iconst_2
            aload 1 /* xform */
            invokevirtual com.sun.javafx.geom.transform.BaseTransform.getMyx:()D
            dastore
        21: .line 151
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.strikeMat:[D
            iconst_3
            aload 1 /* xform */
            invokevirtual com.sun.javafx.geom.transform.BaseTransform.getMyy:()D
            dastore
        22: .line 153
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.fontStrike:Lcom/sun/javafx/font/FontStrike;
            areturn
        end local 2 // int smoothingType
        end local 1 // com.sun.javafx.geom.transform.BaseTransform xform
        end local 0 // com.sun.javafx.sg.prism.NGText this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   23     0           this  Lcom/sun/javafx/sg/prism/NGText;
            0   23     1          xform  Lcom/sun/javafx/geom/transform/BaseTransform;
            1   23     2  smoothingType  I
    MethodParameters:
       Name  Flags
      xform  

  public com.sun.javafx.geom.Shape getShape();
    descriptor: ()Lcom/sun/javafx/geom/Shape;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=11, args_size=1
        start local 0 // com.sun.javafx.sg.prism.NGText this
         0: .line 157
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.runs:[Lcom/sun/javafx/scene/text/GlyphList;
            ifnonnull 2
         1: .line 158
            new com.sun.javafx.geom.Path2D
            dup
            invokespecial com.sun.javafx.geom.Path2D.<init>:()V
            areturn
         2: .line 160
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic com.sun.javafx.sg.prism.NGText.IDENT:Lcom/sun/javafx/geom/transform/BaseTransform;
            invokevirtual com.sun.javafx.sg.prism.NGText.getStrike:(Lcom/sun/javafx/geom/transform/BaseTransform;)Lcom/sun/javafx/font/FontStrike;
            astore 1 /* strike */
        start local 1 // com.sun.javafx.font.FontStrike strike
         3: .line 161
            new com.sun.javafx.geom.Path2D
            dup
            invokespecial com.sun.javafx.geom.Path2D.<init>:()V
            astore 2 /* outline */
        start local 2 // com.sun.javafx.geom.Path2D outline
         4: .line 162
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         5: goto 31
         6: .line 163
      StackMap locals: com.sun.javafx.font.FontStrike com.sun.javafx.geom.Path2D int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.runs:[Lcom/sun/javafx/scene/text/GlyphList;
            iload 3 /* i */
            aaload
            astore 4 /* run */
        start local 4 // com.sun.javafx.scene.text.GlyphList run
         7: .line 164
            aload 4 /* run */
            invokeinterface com.sun.javafx.scene.text.GlyphList.getLocation:()Lcom/sun/javafx/geom/Point2D;
            astore 5 /* pt */
        start local 5 // com.sun.javafx.geom.Point2D pt
         8: .line 165
            aload 5 /* pt */
            getfield com.sun.javafx.geom.Point2D.x:F
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.layoutX:F
            fsub
            fstore 6 /* x */
        start local 6 // float x
         9: .line 166
            aload 5 /* pt */
            getfield com.sun.javafx.geom.Point2D.y:F
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.layoutY:F
            fsub
            fstore 7 /* y */
        start local 7 // float y
        10: .line 167
            fload 6 /* x */
            f2d
            fload 7 /* y */
            f2d
            invokestatic com.sun.javafx.geom.transform.BaseTransform.getTranslateInstance:(DD)Lcom/sun/javafx/geom/transform/BaseTransform;
            astore 8 /* t */
        start local 8 // com.sun.javafx.geom.transform.BaseTransform t
        11: .line 168
            aload 2 /* outline */
            aload 1 /* strike */
            aload 4 /* run */
            aload 8 /* t */
            invokeinterface com.sun.javafx.font.FontStrike.getOutline:(Lcom/sun/javafx/scene/text/GlyphList;Lcom/sun/javafx/geom/transform/BaseTransform;)Lcom/sun/javafx/geom/Shape;
            iconst_0
            invokevirtual com.sun.javafx.geom.Path2D.append:(Lcom/sun/javafx/geom/Shape;Z)V
        12: .line 169
            aconst_null
            astore 9 /* metrics */
        start local 9 // com.sun.javafx.font.Metrics metrics
        13: .line 170
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.underline:Z
            ifeq 21
        14: .line 171
            aload 1 /* strike */
            invokeinterface com.sun.javafx.font.FontStrike.getMetrics:()Lcom/sun/javafx/font/Metrics;
            astore 9 /* metrics */
        15: .line 172
            new com.sun.javafx.geom.RoundRectangle2D
            dup
            invokespecial com.sun.javafx.geom.RoundRectangle2D.<init>:()V
            astore 10 /* rect */
        start local 10 // com.sun.javafx.geom.RoundRectangle2D rect
        16: .line 173
            aload 10 /* rect */
            fload 6 /* x */
            putfield com.sun.javafx.geom.RoundRectangle2D.x:F
        17: .line 174
            aload 10 /* rect */
            fload 7 /* y */
            aload 9 /* metrics */
            invokeinterface com.sun.javafx.font.Metrics.getUnderLineOffset:()F
            fadd
            putfield com.sun.javafx.geom.RoundRectangle2D.y:F
        18: .line 175
            aload 10 /* rect */
            aload 4 /* run */
            invokeinterface com.sun.javafx.scene.text.GlyphList.getWidth:()F
            putfield com.sun.javafx.geom.RoundRectangle2D.width:F
        19: .line 176
            aload 10 /* rect */
            aload 9 /* metrics */
            invokeinterface com.sun.javafx.font.Metrics.getUnderLineThickness:()F
            putfield com.sun.javafx.geom.RoundRectangle2D.height:F
        20: .line 177
            aload 2 /* outline */
            aload 10 /* rect */
            iconst_0
            invokevirtual com.sun.javafx.geom.Path2D.append:(Lcom/sun/javafx/geom/Shape;Z)V
        end local 10 // com.sun.javafx.geom.RoundRectangle2D rect
        21: .line 179
      StackMap locals: com.sun.javafx.sg.prism.NGText com.sun.javafx.font.FontStrike com.sun.javafx.geom.Path2D int com.sun.javafx.scene.text.GlyphList com.sun.javafx.geom.Point2D float float com.sun.javafx.geom.transform.BaseTransform com.sun.javafx.font.Metrics
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.strikethrough:Z
            ifeq 30
        22: .line 180
            aload 9 /* metrics */
            ifnonnull 24
        23: .line 181
            aload 1 /* strike */
            invokeinterface com.sun.javafx.font.FontStrike.getMetrics:()Lcom/sun/javafx/font/Metrics;
            astore 9 /* metrics */
        24: .line 183
      StackMap locals:
      StackMap stack:
            new com.sun.javafx.geom.RoundRectangle2D
            dup
            invokespecial com.sun.javafx.geom.RoundRectangle2D.<init>:()V
            astore 10 /* rect */
        start local 10 // com.sun.javafx.geom.RoundRectangle2D rect
        25: .line 184
            aload 10 /* rect */
            fload 6 /* x */
            putfield com.sun.javafx.geom.RoundRectangle2D.x:F
        26: .line 185
            aload 10 /* rect */
            fload 7 /* y */
            aload 9 /* metrics */
            invokeinterface com.sun.javafx.font.Metrics.getStrikethroughOffset:()F
            fadd
            putfield com.sun.javafx.geom.RoundRectangle2D.y:F
        27: .line 186
            aload 10 /* rect */
            aload 4 /* run */
            invokeinterface com.sun.javafx.scene.text.GlyphList.getWidth:()F
            putfield com.sun.javafx.geom.RoundRectangle2D.width:F
        28: .line 187
            aload 10 /* rect */
            aload 9 /* metrics */
            invokeinterface com.sun.javafx.font.Metrics.getStrikethroughThickness:()F
            putfield com.sun.javafx.geom.RoundRectangle2D.height:F
        29: .line 188
            aload 2 /* outline */
            aload 10 /* rect */
            iconst_0
            invokevirtual com.sun.javafx.geom.Path2D.append:(Lcom/sun/javafx/geom/Shape;Z)V
        end local 10 // com.sun.javafx.geom.RoundRectangle2D rect
        end local 9 // com.sun.javafx.font.Metrics metrics
        end local 8 // com.sun.javafx.geom.transform.BaseTransform t
        end local 7 // float y
        end local 6 // float x
        end local 5 // com.sun.javafx.geom.Point2D pt
        end local 4 // com.sun.javafx.scene.text.GlyphList run
        30: .line 162
      StackMap locals: com.sun.javafx.sg.prism.NGText com.sun.javafx.font.FontStrike com.sun.javafx.geom.Path2D int
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        31: iload 3 /* i */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.runs:[Lcom/sun/javafx/scene/text/GlyphList;
            arraylength
            if_icmplt 6
        end local 3 // int i
        32: .line 191
            aload 2 /* outline */
            areturn
        end local 2 // com.sun.javafx.geom.Path2D outline
        end local 1 // com.sun.javafx.font.FontStrike strike
        end local 0 // com.sun.javafx.sg.prism.NGText this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   33     0     this  Lcom/sun/javafx/sg/prism/NGText;
            3   33     1   strike  Lcom/sun/javafx/font/FontStrike;
            4   33     2  outline  Lcom/sun/javafx/geom/Path2D;
            5   32     3        i  I
            7   30     4      run  Lcom/sun/javafx/scene/text/GlyphList;
            8   30     5       pt  Lcom/sun/javafx/geom/Point2D;
            9   30     6        x  F
           10   30     7        y  F
           11   30     8        t  Lcom/sun/javafx/geom/transform/BaseTransform;
           13   30     9  metrics  Lcom/sun/javafx/font/Metrics;
           16   21    10     rect  Lcom/sun/javafx/geom/RoundRectangle2D;
           25   30    10     rect  Lcom/sun/javafx/geom/RoundRectangle2D;

  protected void renderEffect(com.sun.prism.Graphics);
    descriptor: (Lcom/sun/prism/Graphics;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // com.sun.javafx.sg.prism.NGText this
        start local 1 // com.sun.prism.Graphics g
         0: .line 217
            aload 1 /* g */
            invokeinterface com.sun.prism.Graphics.getTransformNoClone:()Lcom/sun/javafx/geom/transform/BaseTransform;
            invokevirtual com.sun.javafx.geom.transform.BaseTransform.isTranslateOrIdentity:()Z
            ifne 2
         1: .line 218
            aload 0 /* this */
            iconst_1
            putfield com.sun.javafx.sg.prism.NGText.drawingEffect:Z
         2: .line 221
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* g */
            invokespecial com.sun.javafx.sg.prism.NGShape.renderEffect:(Lcom/sun/prism/Graphics;)V
         3: .line 222
            goto 7
      StackMap locals:
      StackMap stack: java.lang.Throwable
         4: astore 2
         5: .line 223
            aload 0 /* this */
            iconst_0
            putfield com.sun.javafx.sg.prism.NGText.drawingEffect:Z
         6: .line 224
            aload 2
            athrow
         7: .line 223
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield com.sun.javafx.sg.prism.NGText.drawingEffect:Z
         8: .line 225
            return
        end local 1 // com.sun.prism.Graphics g
        end local 0 // com.sun.javafx.sg.prism.NGText this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lcom/sun/javafx/sg/prism/NGText;
            0    9     1     g  Lcom/sun/prism/Graphics;
      Exception table:
        from    to  target  type
           2     4       4  any
    MethodParameters:
      Name  Flags
      g     

  protected void renderContent2D(com.sun.prism.Graphics, boolean);
    descriptor: (Lcom/sun/prism/Graphics;Z)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=8, args_size=3
        start local 0 // com.sun.javafx.sg.prism.NGText this
        start local 1 // com.sun.prism.Graphics g
        start local 2 // boolean printing
         0: .line 232
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.mode:Lcom/sun/javafx/sg/prism/NGShape$Mode;
            getstatic com.sun.javafx.sg.prism.NGShape$Mode.EMPTY:Lcom/sun/javafx/sg/prism/NGShape$Mode;
            if_acmpne 1
            return
         1: .line 233
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.runs:[Lcom/sun/javafx/scene/text/GlyphList;
            ifnull 2
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.runs:[Lcom/sun/javafx/scene/text/GlyphList;
            arraylength
            ifne 3
      StackMap locals:
      StackMap stack:
         2: return
         3: .line 235
      StackMap locals:
      StackMap stack:
            aload 1 /* g */
            invokeinterface com.sun.prism.Graphics.getTransformNoClone:()Lcom/sun/javafx/geom/transform/BaseTransform;
            astore 3 /* tx */
        start local 3 // com.sun.javafx.geom.transform.BaseTransform tx
         4: .line 236
            aload 0 /* this */
            aload 3 /* tx */
            invokevirtual com.sun.javafx.sg.prism.NGText.getStrike:(Lcom/sun/javafx/geom/transform/BaseTransform;)Lcom/sun/javafx/font/FontStrike;
            astore 4 /* strike */
        start local 4 // com.sun.javafx.font.FontStrike strike
         5: .line 238
            aload 4 /* strike */
            invokeinterface com.sun.javafx.font.FontStrike.getAAMode:()I
            iconst_1
            if_icmpeq 8
         6: .line 239
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.fillPaint:Lcom/sun/prism/paint/Paint;
            ifnull 7
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.fillPaint:Lcom/sun/prism/paint/Paint;
            invokevirtual com.sun.prism.paint.Paint.isProportional:()Z
            ifne 8
         7: .line 240
      StackMap locals: com.sun.javafx.geom.transform.BaseTransform com.sun.javafx.font.FontStrike
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.drawPaint:Lcom/sun/prism/paint/Paint;
            ifnull 10
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.drawPaint:Lcom/sun/prism/paint/Paint;
            invokevirtual com.sun.prism.paint.Paint.isProportional:()Z
            ifeq 10
         8: .line 250
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new com.sun.javafx.geom.RectBounds
            dup
            invokespecial com.sun.javafx.geom.RectBounds.<init>:()V
            getstatic com.sun.javafx.sg.prism.NGText.IDENT:Lcom/sun/javafx/geom/transform/BaseTransform;
            invokevirtual com.sun.javafx.sg.prism.NGText.getContentBounds:(Lcom/sun/javafx/geom/BaseBounds;Lcom/sun/javafx/geom/transform/BaseTransform;)Lcom/sun/javafx/geom/BaseBounds;
            astore 5 /* bds */
        start local 5 // com.sun.javafx.geom.BaseBounds bds
         9: .line 251
            aload 1 /* g */
            aload 5 /* bds */
            checkcast com.sun.javafx.geom.RectBounds
            invokeinterface com.sun.prism.Graphics.setNodeBounds:(Lcom/sun/javafx/geom/RectBounds;)V
        end local 5 // com.sun.javafx.geom.BaseBounds bds
        10: .line 254
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 5 /* selectionColor */
        start local 5 // com.sun.prism.paint.Color selectionColor
        11: .line 255
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.selectionStart:I
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.selectionEnd:I
            if_icmpeq 13
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.selectionPaint:Ljava/lang/Object;
            instanceof com.sun.prism.paint.Color
            ifeq 13
        12: .line 256
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.selectionPaint:Ljava/lang/Object;
            checkcast com.sun.prism.paint.Color
            astore 5 /* selectionColor */
        13: .line 259
      StackMap locals: com.sun.prism.paint.Color
      StackMap stack:
            aconst_null
            astore 6 /* clipBds */
        start local 6 // com.sun.javafx.geom.BaseBounds clipBds
        14: .line 260
            aload 0 /* this */
            invokevirtual com.sun.javafx.sg.prism.NGText.getClipNode:()Lcom/sun/javafx/sg/prism/NGNode;
            ifnull 16
        15: .line 262
            aload 0 /* this */
            new com.sun.javafx.geom.RectBounds
            dup
            invokespecial com.sun.javafx.geom.RectBounds.<init>:()V
            getstatic com.sun.javafx.sg.prism.NGText.IDENT:Lcom/sun/javafx/geom/transform/BaseTransform;
            invokevirtual com.sun.javafx.sg.prism.NGText.getClippedBounds:(Lcom/sun/javafx/geom/BaseBounds;Lcom/sun/javafx/geom/transform/BaseTransform;)Lcom/sun/javafx/geom/BaseBounds;
            astore 6 /* clipBds */
        16: .line 266
      StackMap locals: com.sun.javafx.geom.BaseBounds
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.mode:Lcom/sun/javafx/sg/prism/NGShape$Mode;
            getstatic com.sun.javafx.sg.prism.NGShape$Mode.STROKE:Lcom/sun/javafx/sg/prism/NGShape$Mode;
            if_acmpeq 27
        17: .line 267
            aload 1 /* g */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.fillPaint:Lcom/sun/prism/paint/Paint;
            invokeinterface com.sun.prism.Graphics.setPaint:(Lcom/sun/prism/paint/Paint;)V
        18: .line 268
            getstatic com.sun.javafx.sg.prism.NGText.TEXT:I
            istore 7 /* op */
        start local 7 // int op
        19: .line 269
            iload 7 /* op */
            aload 4 /* strike */
            invokeinterface com.sun.javafx.font.FontStrike.drawAsShapes:()Z
            ifne 20
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.drawingEffect:Z
            ifeq 21
      StackMap locals: com.sun.javafx.sg.prism.NGText com.sun.prism.Graphics int com.sun.javafx.geom.transform.BaseTransform com.sun.javafx.font.FontStrike com.sun.prism.paint.Color com.sun.javafx.geom.BaseBounds int
      StackMap stack: int
        20: getstatic com.sun.javafx.sg.prism.NGText.SHAPE_FILL:I
            goto 22
      StackMap locals:
      StackMap stack: int
        21: getstatic com.sun.javafx.sg.prism.NGText.FILL:I
      StackMap locals: com.sun.javafx.sg.prism.NGText com.sun.prism.Graphics int com.sun.javafx.geom.transform.BaseTransform com.sun.javafx.font.FontStrike com.sun.prism.paint.Color com.sun.javafx.geom.BaseBounds int
      StackMap stack: int int
        22: ior
            istore 7 /* op */
        23: .line 270
            aload 0 /* this */
            aload 1 /* g */
            aload 4 /* strike */
            aload 6 /* clipBds */
            aload 5 /* selectionColor */
            iload 7 /* op */
            invokevirtual com.sun.javafx.sg.prism.NGText.renderText:(Lcom/sun/prism/Graphics;Lcom/sun/javafx/font/FontStrike;Lcom/sun/javafx/geom/BaseBounds;Lcom/sun/prism/paint/Color;I)V
        24: .line 274
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.underline:Z
            ifne 25
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.strikethrough:Z
            ifeq 27
        25: .line 275
      StackMap locals:
      StackMap stack:
            getstatic com.sun.javafx.sg.prism.NGText.DECORATION:I
            getstatic com.sun.javafx.sg.prism.NGText.SHAPE_FILL:I
            ior
            istore 7 /* op */
        26: .line 276
            aload 0 /* this */
            aload 1 /* g */
            aload 4 /* strike */
            aload 6 /* clipBds */
            aload 5 /* selectionColor */
            iload 7 /* op */
            invokevirtual com.sun.javafx.sg.prism.NGText.renderText:(Lcom/sun/prism/Graphics;Lcom/sun/javafx/font/FontStrike;Lcom/sun/javafx/geom/BaseBounds;Lcom/sun/prism/paint/Color;I)V
        end local 7 // int op
        27: .line 281
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.mode:Lcom/sun/javafx/sg/prism/NGShape$Mode;
            getstatic com.sun.javafx.sg.prism.NGShape$Mode.FILL:Lcom/sun/javafx/sg/prism/NGShape$Mode;
            if_acmpeq 34
        28: .line 282
            aload 1 /* g */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.drawPaint:Lcom/sun/prism/paint/Paint;
            invokeinterface com.sun.prism.Graphics.setPaint:(Lcom/sun/prism/paint/Paint;)V
        29: .line 283
            aload 1 /* g */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.drawStroke:Lcom/sun/prism/BasicStroke;
            invokeinterface com.sun.prism.Graphics.setStroke:(Lcom/sun/prism/BasicStroke;)V
        30: .line 284
            getstatic com.sun.javafx.sg.prism.NGText.TEXT:I
            istore 7 /* op */
        start local 7 // int op
        31: .line 285
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.underline:Z
            ifne 32
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.strikethrough:Z
            ifeq 33
        32: .line 286
      StackMap locals: int
      StackMap stack:
            iload 7 /* op */
            getstatic com.sun.javafx.sg.prism.NGText.DECORATION:I
            ior
            istore 7 /* op */
        33: .line 288
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* g */
            aload 4 /* strike */
            aload 6 /* clipBds */
            aload 5 /* selectionColor */
            iload 7 /* op */
            invokevirtual com.sun.javafx.sg.prism.NGText.renderText:(Lcom/sun/prism/Graphics;Lcom/sun/javafx/font/FontStrike;Lcom/sun/javafx/geom/BaseBounds;Lcom/sun/prism/paint/Color;I)V
        end local 7 // int op
        34: .line 290
      StackMap locals:
      StackMap stack:
            aload 1 /* g */
            aconst_null
            invokeinterface com.sun.prism.Graphics.setNodeBounds:(Lcom/sun/javafx/geom/RectBounds;)V
        35: .line 291
            return
        end local 6 // com.sun.javafx.geom.BaseBounds clipBds
        end local 5 // com.sun.prism.paint.Color selectionColor
        end local 4 // com.sun.javafx.font.FontStrike strike
        end local 3 // com.sun.javafx.geom.transform.BaseTransform tx
        end local 2 // boolean printing
        end local 1 // com.sun.prism.Graphics g
        end local 0 // com.sun.javafx.sg.prism.NGText this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   36     0            this  Lcom/sun/javafx/sg/prism/NGText;
            0   36     1               g  Lcom/sun/prism/Graphics;
            0   36     2        printing  Z
            4   36     3              tx  Lcom/sun/javafx/geom/transform/BaseTransform;
            5   36     4          strike  Lcom/sun/javafx/font/FontStrike;
            9   10     5             bds  Lcom/sun/javafx/geom/BaseBounds;
           11   36     5  selectionColor  Lcom/sun/prism/paint/Color;
           14   36     6         clipBds  Lcom/sun/javafx/geom/BaseBounds;
           19   27     7              op  I
           31   34     7              op  I
    MethodParameters:
          Name  Flags
      g         
      printing  

  private void renderText(com.sun.prism.Graphics, com.sun.javafx.font.FontStrike, com.sun.javafx.geom.BaseBounds, com.sun.prism.paint.Color, int);
    descriptor: (Lcom/sun/prism/Graphics;Lcom/sun/javafx/font/FontStrike;Lcom/sun/javafx/geom/BaseBounds;Lcom/sun/prism/paint/Color;I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=16, args_size=6
        start local 0 // com.sun.javafx.sg.prism.NGText this
        start local 1 // com.sun.prism.Graphics g
        start local 2 // com.sun.javafx.font.FontStrike strike
        start local 3 // com.sun.javafx.geom.BaseBounds clipBds
        start local 4 // com.sun.prism.paint.Color selectionColor
        start local 5 // int op
         0: .line 295
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         1: goto 50
         2: .line 296
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.runs:[Lcom/sun/javafx/scene/text/GlyphList;
            iload 6 /* i */
            aaload
            checkcast com.sun.javafx.text.TextRun
            astore 7 /* run */
        start local 7 // com.sun.javafx.text.TextRun run
         3: .line 297
            aload 7 /* run */
            invokevirtual com.sun.javafx.text.TextRun.getLineBounds:()Lcom/sun/javafx/geom/RectBounds;
            astore 8 /* lineBounds */
        start local 8 // com.sun.javafx.geom.RectBounds lineBounds
         4: .line 298
            aload 7 /* run */
            invokevirtual com.sun.javafx.text.TextRun.getLocation:()Lcom/sun/javafx/geom/Point2D;
            astore 9 /* pt */
        start local 9 // com.sun.javafx.geom.Point2D pt
         5: .line 299
            aload 9 /* pt */
            getfield com.sun.javafx.geom.Point2D.x:F
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.layoutX:F
            fsub
            fstore 10 /* x */
        start local 10 // float x
         6: .line 300
            aload 9 /* pt */
            getfield com.sun.javafx.geom.Point2D.y:F
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.layoutY:F
            fsub
            fstore 11 /* y */
        start local 11 // float y
         7: .line 301
            aload 3 /* clipBds */
            ifnull 12
         8: .line 302
            fload 11 /* y */
            aload 3 /* clipBds */
            invokevirtual com.sun.javafx.geom.BaseBounds.getMaxY:()F
            fcmpl
            ifle 9
            goto 51
         9: .line 303
      StackMap locals: com.sun.javafx.sg.prism.NGText com.sun.prism.Graphics com.sun.javafx.font.FontStrike com.sun.javafx.geom.BaseBounds com.sun.prism.paint.Color int int com.sun.javafx.text.TextRun com.sun.javafx.geom.RectBounds com.sun.javafx.geom.Point2D float float
      StackMap stack:
            fload 11 /* y */
            aload 8 /* lineBounds */
            invokevirtual com.sun.javafx.geom.RectBounds.getHeight:()F
            fadd
            aload 3 /* clipBds */
            invokevirtual com.sun.javafx.geom.BaseBounds.getMinY:()F
            fcmpg
            ifge 10
            goto 49
        10: .line 304
      StackMap locals:
      StackMap stack:
            fload 10 /* x */
            aload 3 /* clipBds */
            invokevirtual com.sun.javafx.geom.BaseBounds.getMaxX:()F
            fcmpl
            ifle 11
            goto 49
        11: .line 305
      StackMap locals:
      StackMap stack:
            fload 10 /* x */
            aload 7 /* run */
            invokevirtual com.sun.javafx.text.TextRun.getWidth:()F
            fadd
            aload 3 /* clipBds */
            invokevirtual com.sun.javafx.geom.BaseBounds.getMinX:()F
            fcmpg
            ifge 12
            goto 49
        12: .line 307
      StackMap locals:
      StackMap stack:
            fload 11 /* y */
            aload 8 /* lineBounds */
            invokevirtual com.sun.javafx.geom.RectBounds.getMinY:()F
            fsub
            fstore 11 /* y */
        13: .line 309
            iload 5 /* op */
            getstatic com.sun.javafx.sg.prism.NGText.TEXT:I
            iand
            ifeq 27
            aload 7 /* run */
            invokevirtual com.sun.javafx.text.TextRun.getGlyphCount:()I
            ifle 27
        14: .line 310
            iload 5 /* op */
            getstatic com.sun.javafx.sg.prism.NGText.FILL:I
            iand
            ifeq 22
        15: .line 311
            aload 7 /* run */
            invokevirtual com.sun.javafx.text.TextRun.getStart:()I
            istore 12 /* start */
        start local 12 // int start
        16: .line 312
            aload 1 /* g */
            aload 7 /* run */
            aload 2 /* strike */
            fload 10 /* x */
            fload 11 /* y */
        17: .line 313
            aload 4 /* selectionColor */
        18: .line 314
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.selectionStart:I
            iload 12 /* start */
            isub
        19: .line 315
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.selectionEnd:I
            iload 12 /* start */
            isub
        20: .line 312
            invokeinterface com.sun.prism.Graphics.drawString:(Lcom/sun/javafx/scene/text/GlyphList;Lcom/sun/javafx/font/FontStrike;FFLcom/sun/prism/paint/Color;II)V
        end local 12 // int start
        21: .line 316
            goto 27
        22: .line 317
      StackMap locals:
      StackMap stack:
            fload 10 /* x */
            f2d
            fload 11 /* y */
            f2d
            invokestatic com.sun.javafx.geom.transform.BaseTransform.getTranslateInstance:(DD)Lcom/sun/javafx/geom/transform/BaseTransform;
            astore 12 /* t */
        start local 12 // com.sun.javafx.geom.transform.BaseTransform t
        23: .line 318
            iload 5 /* op */
            getstatic com.sun.javafx.sg.prism.NGText.SHAPE_FILL:I
            iand
            ifeq 26
        24: .line 319
            aload 1 /* g */
            aload 2 /* strike */
            aload 7 /* run */
            aload 12 /* t */
            invokeinterface com.sun.javafx.font.FontStrike.getOutline:(Lcom/sun/javafx/scene/text/GlyphList;Lcom/sun/javafx/geom/transform/BaseTransform;)Lcom/sun/javafx/geom/Shape;
            invokeinterface com.sun.prism.Graphics.fill:(Lcom/sun/javafx/geom/Shape;)V
        25: .line 320
            goto 27
        26: .line 321
      StackMap locals: com.sun.javafx.geom.transform.BaseTransform
      StackMap stack:
            aload 1 /* g */
            aload 2 /* strike */
            aload 7 /* run */
            aload 12 /* t */
            invokeinterface com.sun.javafx.font.FontStrike.getOutline:(Lcom/sun/javafx/scene/text/GlyphList;Lcom/sun/javafx/geom/transform/BaseTransform;)Lcom/sun/javafx/geom/Shape;
            invokeinterface com.sun.prism.Graphics.draw:(Lcom/sun/javafx/geom/Shape;)V
        end local 12 // com.sun.javafx.geom.transform.BaseTransform t
        27: .line 326
      StackMap locals:
      StackMap stack:
            iload 5 /* op */
            getstatic com.sun.javafx.sg.prism.NGText.DECORATION:I
            iand
            ifeq 49
        28: .line 327
            aload 2 /* strike */
            invokeinterface com.sun.javafx.font.FontStrike.getMetrics:()Lcom/sun/javafx/font/Metrics;
            astore 12 /* metrics */
        start local 12 // com.sun.javafx.font.Metrics metrics
        29: .line 328
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.underline:Z
            ifeq 39
        30: .line 329
            fload 11 /* y */
            aload 12 /* metrics */
            invokeinterface com.sun.javafx.font.Metrics.getUnderLineOffset:()F
            fadd
            fstore 13 /* offset */
        start local 13 // float offset
        31: .line 330
            aload 12 /* metrics */
            invokeinterface com.sun.javafx.font.Metrics.getUnderLineThickness:()F
            fstore 14 /* thickness */
        start local 14 // float thickness
        32: .line 331
            iload 5 /* op */
            getstatic com.sun.javafx.sg.prism.NGText.SHAPE_FILL:I
            iand
            ifeq 38
        33: .line 332
            fload 14 /* thickness */
            fconst_1
            fcmpg
            ifgt 36
            aload 1 /* g */
            invokeinterface com.sun.prism.Graphics.getTransformNoClone:()Lcom/sun/javafx/geom/transform/BaseTransform;
            invokevirtual com.sun.javafx.geom.transform.BaseTransform.isTranslateOrIdentity:()Z
            ifeq 36
        34: .line 333
            aload 1 /* g */
            invokeinterface com.sun.prism.Graphics.getTransformNoClone:()Lcom/sun/javafx/geom/transform/BaseTransform;
            invokevirtual com.sun.javafx.geom.transform.BaseTransform.getMyt:()D
            d2f
            fstore 15 /* myt */
        start local 15 // float myt
        35: .line 334
            fload 13 /* offset */
            fload 15 /* myt */
            fadd
            invokestatic java.lang.Math.round:(F)I
            i2f
            fload 15 /* myt */
            fsub
            fstore 13 /* offset */
        end local 15 // float myt
        36: .line 336
      StackMap locals: com.sun.javafx.font.Metrics float float
      StackMap stack:
            aload 1 /* g */
            fload 10 /* x */
            fload 13 /* offset */
            aload 7 /* run */
            invokevirtual com.sun.javafx.text.TextRun.getWidth:()F
            fload 14 /* thickness */
            invokeinterface com.sun.prism.Graphics.fillRect:(FFFF)V
        37: .line 337
            goto 39
        38: .line 338
      StackMap locals:
      StackMap stack:
            aload 1 /* g */
            fload 10 /* x */
            fload 13 /* offset */
            aload 7 /* run */
            invokevirtual com.sun.javafx.text.TextRun.getWidth:()F
            fload 14 /* thickness */
            invokeinterface com.sun.prism.Graphics.drawRect:(FFFF)V
        end local 14 // float thickness
        end local 13 // float offset
        39: .line 341
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.strikethrough:Z
            ifeq 49
        40: .line 342
            fload 11 /* y */
            aload 12 /* metrics */
            invokeinterface com.sun.javafx.font.Metrics.getStrikethroughOffset:()F
            fadd
            fstore 13 /* offset */
        start local 13 // float offset
        41: .line 343
            aload 12 /* metrics */
            invokeinterface com.sun.javafx.font.Metrics.getStrikethroughThickness:()F
            fstore 14 /* thickness */
        start local 14 // float thickness
        42: .line 344
            iload 5 /* op */
            getstatic com.sun.javafx.sg.prism.NGText.SHAPE_FILL:I
            iand
            ifeq 48
        43: .line 345
            fload 14 /* thickness */
            fconst_1
            fcmpg
            ifgt 46
            aload 1 /* g */
            invokeinterface com.sun.prism.Graphics.getTransformNoClone:()Lcom/sun/javafx/geom/transform/BaseTransform;
            invokevirtual com.sun.javafx.geom.transform.BaseTransform.isTranslateOrIdentity:()Z
            ifeq 46
        44: .line 346
            aload 1 /* g */
            invokeinterface com.sun.prism.Graphics.getTransformNoClone:()Lcom/sun/javafx/geom/transform/BaseTransform;
            invokevirtual com.sun.javafx.geom.transform.BaseTransform.getMyt:()D
            d2f
            fstore 15 /* myt */
        start local 15 // float myt
        45: .line 347
            fload 13 /* offset */
            fload 15 /* myt */
            fadd
            invokestatic java.lang.Math.round:(F)I
            i2f
            fload 15 /* myt */
            fsub
            fstore 13 /* offset */
        end local 15 // float myt
        46: .line 349
      StackMap locals: float float
      StackMap stack:
            aload 1 /* g */
            fload 10 /* x */
            fload 13 /* offset */
            aload 7 /* run */
            invokevirtual com.sun.javafx.text.TextRun.getWidth:()F
            fload 14 /* thickness */
            invokeinterface com.sun.prism.Graphics.fillRect:(FFFF)V
        47: .line 350
            goto 49
        48: .line 351
      StackMap locals:
      StackMap stack:
            aload 1 /* g */
            fload 10 /* x */
            fload 13 /* offset */
            aload 7 /* run */
            invokevirtual com.sun.javafx.text.TextRun.getWidth:()F
            fload 14 /* thickness */
            invokeinterface com.sun.prism.Graphics.drawRect:(FFFF)V
        end local 14 // float thickness
        end local 13 // float offset
        end local 12 // com.sun.javafx.font.Metrics metrics
        end local 11 // float y
        end local 10 // float x
        end local 9 // com.sun.javafx.geom.Point2D pt
        end local 8 // com.sun.javafx.geom.RectBounds lineBounds
        end local 7 // com.sun.javafx.text.TextRun run
        49: .line 295
      StackMap locals: com.sun.javafx.sg.prism.NGText com.sun.prism.Graphics com.sun.javafx.font.FontStrike com.sun.javafx.geom.BaseBounds com.sun.prism.paint.Color int int
      StackMap stack:
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        50: iload 6 /* i */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGText.runs:[Lcom/sun/javafx/scene/text/GlyphList;
            arraylength
            if_icmplt 2
        end local 6 // int i
        51: .line 356
      StackMap locals:
      StackMap stack:
            return
        end local 5 // int op
        end local 4 // com.sun.prism.paint.Color selectionColor
        end local 3 // com.sun.javafx.geom.BaseBounds clipBds
        end local 2 // com.sun.javafx.font.FontStrike strike
        end local 1 // com.sun.prism.Graphics g
        end local 0 // com.sun.javafx.sg.prism.NGText this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   52     0            this  Lcom/sun/javafx/sg/prism/NGText;
            0   52     1               g  Lcom/sun/prism/Graphics;
            0   52     2          strike  Lcom/sun/javafx/font/FontStrike;
            0   52     3         clipBds  Lcom/sun/javafx/geom/BaseBounds;
            0   52     4  selectionColor  Lcom/sun/prism/paint/Color;
            0   52     5              op  I
            1   51     6               i  I
            3   49     7             run  Lcom/sun/javafx/text/TextRun;
            4   49     8      lineBounds  Lcom/sun/javafx/geom/RectBounds;
            5   49     9              pt  Lcom/sun/javafx/geom/Point2D;
            6   49    10               x  F
            7   49    11               y  F
           16   21    12           start  I
           23   27    12               t  Lcom/sun/javafx/geom/transform/BaseTransform;
           29   49    12         metrics  Lcom/sun/javafx/font/Metrics;
           31   39    13          offset  F
           32   39    14       thickness  F
           35   36    15             myt  F
           41   49    13          offset  F
           42   49    14       thickness  F
           45   46    15             myt  F
    MethodParameters:
                Name  Flags
      g               
      strike          
      clipBds         
      selectionColor  
      op              
}
SourceFile: "NGText.java"
InnerClasses:
  public final Mode = com.sun.javafx.sg.prism.NGShape$Mode of com.sun.javafx.sg.prism.NGShape