public class com.sun.javafx.sg.prism.NGCanvas extends com.sun.javafx.sg.prism.NGNode
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.sun.javafx.sg.prism.NGCanvas
  super_class: com.sun.javafx.sg.prism.NGNode
{
  public static final byte ATTR_BASE;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  public static final byte GLOBAL_ALPHA;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  public static final byte COMP_MODE;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  public static final byte FILL_PAINT;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  public static final byte STROKE_PAINT;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 3

  public static final byte LINE_WIDTH;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 4

  public static final byte LINE_CAP;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 5

  public static final byte LINE_JOIN;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 6

  public static final byte MITER_LIMIT;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 7

  public static final byte FONT;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 8

  public static final byte TEXT_ALIGN;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 9

  public static final byte TEXT_BASELINE;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 10

  public static final byte TRANSFORM;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 11

  public static final byte EFFECT;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 12

  public static final byte PUSH_CLIP;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 13

  public static final byte POP_CLIP;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 14

  public static final byte ARC_TYPE;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 15

  public static final byte FILL_RULE;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 16

  public static final byte DASH_ARRAY;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 17

  public static final byte DASH_OFFSET;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 18

  public static final byte FONT_SMOOTH;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 19

  public static final byte OP_BASE;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 20

  public static final byte FILL_RECT;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 20

  public static final byte STROKE_RECT;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 21

  public static final byte CLEAR_RECT;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 22

  public static final byte STROKE_LINE;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 23

  public static final byte FILL_OVAL;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 24

  public static final byte STROKE_OVAL;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 25

  public static final byte FILL_ROUND_RECT;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 26

  public static final byte STROKE_ROUND_RECT;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 27

  public static final byte FILL_ARC;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 28

  public static final byte STROKE_ARC;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 29

  public static final byte FILL_TEXT;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 30

  public static final byte STROKE_TEXT;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 31

  public static final byte PATH_BASE;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 40

  public static final byte PATHSTART;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 40

  public static final byte MOVETO;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 41

  public static final byte LINETO;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 42

  public static final byte QUADTO;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 43

  public static final byte CUBICTO;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 44

  public static final byte CLOSEPATH;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 45

  public static final byte PATHEND;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 46

  public static final byte FILL_PATH;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 47

  public static final byte STROKE_PATH;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 48

  public static final byte IMG_BASE;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 50

  public static final byte DRAW_IMAGE;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 50

  public static final byte DRAW_SUBIMAGE;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 51

  public static final byte PUT_ARGB;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 52

  public static final byte PUT_ARGBPRE_BUF;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 53

  public static final byte FX_BASE;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 60

  public static final byte FX_APPLY_EFFECT;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 60

  public static final byte UTIL_BASE;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 70

  public static final byte RESET;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 70

  public static final byte SET_DIMS;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 71

  public static final byte CAP_BUTT;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  public static final byte CAP_ROUND;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  public static final byte CAP_SQUARE;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  public static final byte JOIN_MITER;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  public static final byte JOIN_ROUND;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  public static final byte JOIN_BEVEL;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  public static final byte ARC_OPEN;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  public static final byte ARC_CHORD;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  public static final byte ARC_PIE;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  public static final byte SMOOTH_GRAY;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final byte SMOOTH_LCD;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final byte ALIGN_LEFT;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  public static final byte ALIGN_CENTER;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  public static final byte ALIGN_RIGHT;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  public static final byte ALIGN_JUSTIFY;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 3

  public static final byte BASE_TOP;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  public static final byte BASE_MIDDLE;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  public static final byte BASE_ALPHABETIC;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  public static final byte BASE_BOTTOM;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 3

  public static final byte FILL_RULE_NON_ZERO;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  public static final byte FILL_RULE_EVEN_ODD;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  private static com.sun.scenario.effect.Blend BLENDER;
    descriptor: Lcom/sun/scenario/effect/Blend;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private com.sun.javafx.sg.prism.GrowableDataBuffer thebuf;
    descriptor: Lcom/sun/javafx/sg/prism/GrowableDataBuffer;
    flags: (0x0002) ACC_PRIVATE

  private final float highestPixelScale;
    descriptor: F
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

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

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

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

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

  private com.sun.javafx.sg.prism.NGCanvas$RenderBuf cv;
    descriptor: Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
    flags: (0x0002) ACC_PRIVATE

  private com.sun.javafx.sg.prism.NGCanvas$RenderBuf temp;
    descriptor: Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
    flags: (0x0002) ACC_PRIVATE

  private com.sun.javafx.sg.prism.NGCanvas$RenderBuf clip;
    descriptor: Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
    flags: (0x0002) ACC_PRIVATE

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

  private com.sun.scenario.effect.Blend$Mode blendmode;
    descriptor: Lcom/sun/scenario/effect/Blend$Mode;
    flags: (0x0002) ACC_PRIVATE

  private com.sun.prism.paint.Paint fillPaint;
    descriptor: Lcom/sun/prism/paint/Paint;
    flags: (0x0002) ACC_PRIVATE

  private com.sun.prism.paint.Paint strokePaint;
    descriptor: Lcom/sun/prism/paint/Paint;
    flags: (0x0002) ACC_PRIVATE

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

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

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

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

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

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

  private com.sun.prism.BasicStroke stroke;
    descriptor: Lcom/sun/prism/BasicStroke;
    flags: (0x0002) ACC_PRIVATE

  private com.sun.javafx.geom.Path2D path;
    descriptor: Lcom/sun/javafx/geom/Path2D;
    flags: (0x0002) ACC_PRIVATE

  private com.sun.javafx.sg.prism.NGText ngtext;
    descriptor: Lcom/sun/javafx/sg/prism/NGText;
    flags: (0x0002) ACC_PRIVATE

  private com.sun.javafx.text.PrismTextLayout textLayout;
    descriptor: Lcom/sun/javafx/text/PrismTextLayout;
    flags: (0x0002) ACC_PRIVATE

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

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

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

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

  private com.sun.javafx.geom.transform.Affine2D transform;
    descriptor: Lcom/sun/javafx/geom/transform/Affine2D;
    flags: (0x0002) ACC_PRIVATE

  private com.sun.javafx.geom.transform.Affine2D inverseTransform;
    descriptor: Lcom/sun/javafx/geom/transform/Affine2D;
    flags: (0x0002) ACC_PRIVATE

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

  private java.util.LinkedList<com.sun.javafx.geom.Path2D> clipStack;
    descriptor: Ljava/util/LinkedList;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/LinkedList<Lcom/sun/javafx/geom/Path2D;>;

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

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

  private com.sun.javafx.geom.Rectangle clipRect;
    descriptor: Lcom/sun/javafx/geom/Rectangle;
    flags: (0x0002) ACC_PRIVATE

  private com.sun.scenario.effect.Effect effect;
    descriptor: Lcom/sun/scenario/effect/Effect;
    flags: (0x0002) ACC_PRIVATE

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

  static float[] TEMP_COORDS;
    descriptor: [F
    flags: (0x0008) ACC_STATIC

  private static com.sun.javafx.geom.Arc2D TEMP_ARC;
    descriptor: Lcom/sun/javafx/geom/Arc2D;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private static com.sun.javafx.geom.RectBounds TEMP_RECTBOUNDS;
    descriptor: Lcom/sun/javafx/geom/RectBounds;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  static final com.sun.javafx.geom.transform.Affine2D TEMP_PATH_TX;
    descriptor: Lcom/sun/javafx/geom/transform/Affine2D;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  static final int[] numCoords;
    descriptor: [I
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  com.sun.javafx.geom.Shape untransformedPath;
    descriptor: Lcom/sun/javafx/geom/Shape;
    flags: (0x0000) 

  private static final float CLIPRECT_TOLERANCE;
    descriptor: F
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 0.00390625

  private static final com.sun.javafx.geom.Rectangle TEMP_RECT;
    descriptor: Lcom/sun/javafx/geom/Rectangle;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final int[] prcaps;
    descriptor: [I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final int[] prjoins;
    descriptor: [I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final int[] prbases;
    descriptor: [I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final com.sun.javafx.geom.transform.Affine2D TEMP_TX;
    descriptor: Lcom/sun/javafx/geom/transform/Affine2D;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=0, args_size=0
         0: .line 152
            getstatic javafx.scene.text.FontSmoothingType.GRAY:Ljavafx/scene/text/FontSmoothingType;
            invokevirtual javafx.scene.text.FontSmoothingType.ordinal:()I
            i2b
            putstatic com.sun.javafx.sg.prism.NGCanvas.SMOOTH_GRAY:B
         1: .line 153
            getstatic javafx.scene.text.FontSmoothingType.LCD:Ljavafx/scene/text/FontSmoothingType;
            invokevirtual javafx.scene.text.FontSmoothingType.ordinal:()I
            i2b
            putstatic com.sun.javafx.sg.prism.NGCanvas.SMOOTH_LCD:B
         2: .line 312
            new com.sun.javafx.sg.prism.NGCanvas$MyBlend
            dup
            getstatic com.sun.scenario.effect.Blend$Mode.SRC_OVER:Lcom/sun/scenario/effect/Blend$Mode;
            aconst_null
            aconst_null
            invokespecial com.sun.javafx.sg.prism.NGCanvas$MyBlend.<init>:(Lcom/sun/scenario/effect/Blend$Mode;Lcom/sun/scenario/effect/Effect;Lcom/sun/scenario/effect/Effect;)V
            putstatic com.sun.javafx.sg.prism.NGCanvas.BLENDER:Lcom/sun/scenario/effect/Blend;
         3: .line 349
            bipush 6
            newarray 6
            putstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_COORDS:[F
         4: .line 350
            new com.sun.javafx.geom.Arc2D
            dup
            invokespecial com.sun.javafx.geom.Arc2D.<init>:()V
            putstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_ARC:Lcom/sun/javafx/geom/Arc2D;
         5: .line 351
            new com.sun.javafx.geom.RectBounds
            dup
            invokespecial com.sun.javafx.geom.RectBounds.<init>:()V
            putstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_RECTBOUNDS:Lcom/sun/javafx/geom/RectBounds;
         6: .line 399
            new com.sun.javafx.geom.transform.Affine2D
            dup
            invokespecial com.sun.javafx.geom.transform.Affine2D.<init>:()V
            putstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_PATH_TX:Lcom/sun/javafx/geom/transform/Affine2D;
         7: .line 400
            iconst_5
            newarray 10
            dup
            iconst_0
            iconst_2
            iastore
            dup
            iconst_1
            iconst_2
            iastore
            dup
            iconst_2
            iconst_4
            iastore
            dup
            iconst_3
            bipush 6
            iastore
            putstatic com.sun.javafx.sg.prism.NGCanvas.numCoords:[I
         8: .line 665
            new com.sun.javafx.geom.Rectangle
            dup
            invokespecial com.sun.javafx.geom.Rectangle.<init>:()V
            putstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_RECT:Lcom/sun/javafx/geom/Rectangle;
         9: .line 790
            iconst_3
            newarray 10
            dup
            iconst_1
        10: .line 792
            iconst_1
            iastore
            dup
            iconst_2
        11: .line 793
            iconst_2
            iastore
        12: .line 790
            putstatic com.sun.javafx.sg.prism.NGCanvas.prcaps:[I
        13: .line 795
            iconst_3
            newarray 10
            dup
            iconst_1
        14: .line 797
            iconst_1
            iastore
            dup
            iconst_2
        15: .line 798
            iconst_2
            iastore
        16: .line 795
            putstatic com.sun.javafx.sg.prism.NGCanvas.prjoins:[I
        17: .line 800
            iconst_4
            newarray 10
            dup
            iconst_0
        18: .line 801
            getstatic javafx.geometry.VPos.TOP:Ljavafx/geometry/VPos;
            invokevirtual javafx.geometry.VPos.ordinal:()I
            iastore
            dup
            iconst_1
        19: .line 802
            getstatic javafx.geometry.VPos.CENTER:Ljavafx/geometry/VPos;
            invokevirtual javafx.geometry.VPos.ordinal:()I
            iastore
            dup
            iconst_2
        20: .line 803
            getstatic javafx.geometry.VPos.BASELINE:Ljavafx/geometry/VPos;
            invokevirtual javafx.geometry.VPos.ordinal:()I
            iastore
            dup
            iconst_3
        21: .line 804
            getstatic javafx.geometry.VPos.BOTTOM:Ljavafx/geometry/VPos;
            invokevirtual javafx.geometry.VPos.ordinal:()I
            iastore
        22: .line 800
            putstatic com.sun.javafx.sg.prism.NGCanvas.prbases:[I
        23: .line 806
            new com.sun.javafx.geom.transform.Affine2D
            dup
            invokespecial com.sun.javafx.geom.transform.Affine2D.<init>:()V
            putstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_TX:Lcom/sun/javafx/geom/transform/Affine2D;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=1
        start local 0 // com.sun.javafx.sg.prism.NGCanvas this
         0: .line 353
            aload 0 /* this */
            invokespecial com.sun.javafx.sg.prism.NGNode.<init>:()V
         1: .line 401
            aload 0 /* this */
            new com.sun.javafx.sg.prism.NGCanvas$1
            dup
            aload 0 /* this */
            invokespecial com.sun.javafx.sg.prism.NGCanvas$1.<init>:(Lcom/sun/javafx/sg/prism/NGCanvas;)V
            putfield com.sun.javafx.sg.prism.NGCanvas.untransformedPath:Lcom/sun/javafx/geom/Shape;
         2: .line 354
            invokestatic com.sun.javafx.tk.Toolkit.getToolkit:()Lcom/sun/javafx/tk/Toolkit;
            astore 1 /* tk */
        start local 1 // com.sun.javafx.tk.Toolkit tk
         3: .line 355
            aload 1 /* tk */
            invokevirtual com.sun.javafx.tk.Toolkit.getScreenConfigurationAccessor:()Lcom/sun/javafx/tk/ScreenConfigurationAccessor;
            astore 2 /* screenAccessor */
        start local 2 // com.sun.javafx.tk.ScreenConfigurationAccessor screenAccessor
         4: .line 356
            fconst_1
            fstore 3 /* hPS */
        start local 3 // float hPS
         5: .line 357
            aload 1 /* tk */
            invokevirtual com.sun.javafx.tk.Toolkit.getScreens:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 5
            goto 9
      StackMap locals: com.sun.javafx.sg.prism.NGCanvas com.sun.javafx.tk.Toolkit com.sun.javafx.tk.ScreenConfigurationAccessor float top java.util.Iterator
      StackMap stack:
         6: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 4 /* screen */
        start local 4 // java.lang.Object screen
         7: .line 358
            aload 2 /* screenAccessor */
            aload 4 /* screen */
            invokeinterface com.sun.javafx.tk.ScreenConfigurationAccessor.getRecommendedOutputScaleX:(Ljava/lang/Object;)F
            fload 3 /* hPS */
            invokestatic java.lang.Math.max:(FF)F
            fstore 3 /* hPS */
         8: .line 359
            aload 2 /* screenAccessor */
            aload 4 /* screen */
            invokeinterface com.sun.javafx.tk.ScreenConfigurationAccessor.getRecommendedOutputScaleY:(Ljava/lang/Object;)F
            fload 3 /* hPS */
            invokestatic java.lang.Math.max:(FF)F
            fstore 3 /* hPS */
        end local 4 // java.lang.Object screen
         9: .line 357
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 6
        10: .line 361
            aload 0 /* this */
            fload 3 /* hPS */
            f2d
            invokestatic java.lang.Math.ceil:(D)D
            d2f
            putfield com.sun.javafx.sg.prism.NGCanvas.highestPixelScale:F
        11: .line 363
            aload 0 /* this */
            new com.sun.javafx.sg.prism.NGCanvas$RenderBuf
            dup
            getstatic com.sun.javafx.sg.prism.NGCanvas$InitType.PRESERVE_UPPER_LEFT:Lcom/sun/javafx/sg/prism/NGCanvas$InitType;
            invokespecial com.sun.javafx.sg.prism.NGCanvas$RenderBuf.<init>:(Lcom/sun/javafx/sg/prism/NGCanvas$InitType;)V
            putfield com.sun.javafx.sg.prism.NGCanvas.cv:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
        12: .line 364
            aload 0 /* this */
            new com.sun.javafx.sg.prism.NGCanvas$RenderBuf
            dup
            getstatic com.sun.javafx.sg.prism.NGCanvas$InitType.CLEAR:Lcom/sun/javafx/sg/prism/NGCanvas$InitType;
            invokespecial com.sun.javafx.sg.prism.NGCanvas$RenderBuf.<init>:(Lcom/sun/javafx/sg/prism/NGCanvas$InitType;)V
            putfield com.sun.javafx.sg.prism.NGCanvas.temp:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
        13: .line 365
            aload 0 /* this */
            new com.sun.javafx.sg.prism.NGCanvas$RenderBuf
            dup
            getstatic com.sun.javafx.sg.prism.NGCanvas$InitType.FILL_WHITE:Lcom/sun/javafx/sg/prism/NGCanvas$InitType;
            invokespecial com.sun.javafx.sg.prism.NGCanvas$RenderBuf.<init>:(Lcom/sun/javafx/sg/prism/NGCanvas$InitType;)V
            putfield com.sun.javafx.sg.prism.NGCanvas.clip:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
        14: .line 367
            aload 0 /* this */
            new com.sun.javafx.geom.Path2D
            dup
            invokespecial com.sun.javafx.geom.Path2D.<init>:()V
            putfield com.sun.javafx.sg.prism.NGCanvas.path:Lcom/sun/javafx/geom/Path2D;
        15: .line 368
            aload 0 /* this */
            new com.sun.javafx.sg.prism.NGText
            dup
            invokespecial com.sun.javafx.sg.prism.NGText.<init>:()V
            putfield com.sun.javafx.sg.prism.NGCanvas.ngtext:Lcom/sun/javafx/sg/prism/NGText;
        16: .line 369
            aload 0 /* this */
            new com.sun.javafx.text.PrismTextLayout
            dup
            invokespecial com.sun.javafx.text.PrismTextLayout.<init>:()V
            putfield com.sun.javafx.sg.prism.NGCanvas.textLayout:Lcom/sun/javafx/text/PrismTextLayout;
        17: .line 370
            aload 0 /* this */
            new com.sun.javafx.geom.transform.Affine2D
            dup
            invokespecial com.sun.javafx.geom.transform.Affine2D.<init>:()V
            putfield com.sun.javafx.sg.prism.NGCanvas.transform:Lcom/sun/javafx/geom/transform/Affine2D;
        18: .line 371
            aload 0 /* this */
            new java.util.LinkedList
            dup
            invokespecial java.util.LinkedList.<init>:()V
            putfield com.sun.javafx.sg.prism.NGCanvas.clipStack:Ljava/util/LinkedList;
        19: .line 372
            aload 0 /* this */
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.initAttributes:()V
        20: .line 373
            return
        end local 3 // float hPS
        end local 2 // com.sun.javafx.tk.ScreenConfigurationAccessor screenAccessor
        end local 1 // com.sun.javafx.tk.Toolkit tk
        end local 0 // com.sun.javafx.sg.prism.NGCanvas this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   21     0            this  Lcom/sun/javafx/sg/prism/NGCanvas;
            3   21     1              tk  Lcom/sun/javafx/tk/Toolkit;
            4   21     2  screenAccessor  Lcom/sun/javafx/tk/ScreenConfigurationAccessor;
            5   21     3             hPS  F
            7    9     4          screen  Ljava/lang/Object;

  private void initAttributes();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // com.sun.javafx.sg.prism.NGCanvas this
         0: .line 376
            aload 0 /* this */
            fconst_1
            putfield com.sun.javafx.sg.prism.NGCanvas.globalAlpha:F
         1: .line 377
            aload 0 /* this */
            getstatic com.sun.scenario.effect.Blend$Mode.SRC_OVER:Lcom/sun/scenario/effect/Blend$Mode;
            putfield com.sun.javafx.sg.prism.NGCanvas.blendmode:Lcom/sun/scenario/effect/Blend$Mode;
         2: .line 378
            aload 0 /* this */
            getstatic com.sun.prism.paint.Color.BLACK:Lcom/sun/prism/paint/Color;
            putfield com.sun.javafx.sg.prism.NGCanvas.fillPaint:Lcom/sun/prism/paint/Paint;
         3: .line 379
            aload 0 /* this */
            getstatic com.sun.prism.paint.Color.BLACK:Lcom/sun/prism/paint/Color;
            putfield com.sun.javafx.sg.prism.NGCanvas.strokePaint:Lcom/sun/prism/paint/Paint;
         4: .line 380
            aload 0 /* this */
            fconst_1
            putfield com.sun.javafx.sg.prism.NGCanvas.linewidth:F
         5: .line 381
            aload 0 /* this */
            iconst_2
            putfield com.sun.javafx.sg.prism.NGCanvas.linecap:I
         6: .line 382
            aload 0 /* this */
            iconst_0
            putfield com.sun.javafx.sg.prism.NGCanvas.linejoin:I
         7: .line 383
            aload 0 /* this */
            ldc 10.0
            putfield com.sun.javafx.sg.prism.NGCanvas.miterlimit:F
         8: .line 384
            aload 0 /* this */
            aconst_null
            putfield com.sun.javafx.sg.prism.NGCanvas.dashes:[D
         9: .line 385
            aload 0 /* this */
            fconst_0
            putfield com.sun.javafx.sg.prism.NGCanvas.dashOffset:F
        10: .line 386
            aload 0 /* this */
            aconst_null
            putfield com.sun.javafx.sg.prism.NGCanvas.stroke:Lcom/sun/prism/BasicStroke;
        11: .line 387
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.path:Lcom/sun/javafx/geom/Path2D;
            iconst_1
            invokevirtual com.sun.javafx.geom.Path2D.setWindingRule:(I)V
        12: .line 390
            aload 0 /* this */
            invokestatic javafx.scene.text.Font.getDefault:()Ljavafx/scene/text/Font;
            invokestatic com.sun.javafx.scene.text.FontHelper.getNativeFont:(Ljavafx/scene/text/Font;)Ljava/lang/Object;
            checkcast com.sun.javafx.font.PGFont
            putfield com.sun.javafx.sg.prism.NGCanvas.pgfont:Lcom/sun/javafx/font/PGFont;
        13: .line 391
            aload 0 /* this */
            getstatic com.sun.javafx.sg.prism.NGCanvas.SMOOTH_GRAY:B
            putfield com.sun.javafx.sg.prism.NGCanvas.smoothing:I
        14: .line 392
            aload 0 /* this */
            iconst_0
            putfield com.sun.javafx.sg.prism.NGCanvas.align:I
        15: .line 393
            aload 0 /* this */
            getstatic javafx.geometry.VPos.BASELINE:Ljavafx/geometry/VPos;
            invokevirtual javafx.geometry.VPos.ordinal:()I
            putfield com.sun.javafx.sg.prism.NGCanvas.baseline:I
        16: .line 394
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.transform:Lcom/sun/javafx/geom/transform/Affine2D;
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.highestPixelScale:F
            f2d
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.highestPixelScale:F
            f2d
            invokevirtual com.sun.javafx.geom.transform.Affine2D.setToScale:(DD)V
        17: .line 395
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clipStack:Ljava/util/LinkedList;
            invokevirtual java.util.LinkedList.clear:()V
        18: .line 396
            aload 0 /* this */
            iconst_0
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.resetClip:(Z)V
        19: .line 397
            return
        end local 0 // com.sun.javafx.sg.prism.NGCanvas this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   20     0  this  Lcom/sun/javafx/sg/prism/NGCanvas;

  private com.sun.javafx.geom.transform.Affine2D getInverseTransform();
    descriptor: ()Lcom/sun/javafx/geom/transform/Affine2D;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // com.sun.javafx.sg.prism.NGCanvas this
         0: .line 510
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.inverseTransform:Lcom/sun/javafx/geom/transform/Affine2D;
            ifnonnull 3
         1: .line 511
            aload 0 /* this */
            new com.sun.javafx.geom.transform.Affine2D
            dup
            invokespecial com.sun.javafx.geom.transform.Affine2D.<init>:()V
            putfield com.sun.javafx.sg.prism.NGCanvas.inverseTransform:Lcom/sun/javafx/geom/transform/Affine2D;
         2: .line 512
            aload 0 /* this */
            iconst_1
            putfield com.sun.javafx.sg.prism.NGCanvas.inversedirty:Z
         3: .line 514
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.inversedirty:Z
            ifeq 10
         4: .line 515
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.inverseTransform:Lcom/sun/javafx/geom/transform/Affine2D;
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.transform:Lcom/sun/javafx/geom/transform/Affine2D;
            invokevirtual com.sun.javafx.geom.transform.Affine2D.setTransform:(Lcom/sun/javafx/geom/transform/BaseTransform;)V
         5: .line 517
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.inverseTransform:Lcom/sun/javafx/geom/transform/Affine2D;
            invokevirtual com.sun.javafx.geom.transform.Affine2D.invert:()V
         6: .line 518
            goto 9
      StackMap locals:
      StackMap stack: com.sun.javafx.geom.transform.NoninvertibleTransformException
         7: pop
         8: .line 519
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.inverseTransform:Lcom/sun/javafx/geom/transform/Affine2D;
            dconst_0
            dconst_0
            invokevirtual com.sun.javafx.geom.transform.Affine2D.setToScale:(DD)V
         9: .line 521
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield com.sun.javafx.sg.prism.NGCanvas.inversedirty:Z
        10: .line 523
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.inverseTransform:Lcom/sun/javafx/geom/transform/Affine2D;
            areturn
        end local 0 // com.sun.javafx.sg.prism.NGCanvas this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Lcom/sun/javafx/sg/prism/NGCanvas;
      Exception table:
        from    to  target  type
           5     6       7  Class com.sun.javafx.geom.transform.NoninvertibleTransformException

  protected boolean hasOverlappingContents();
    descriptor: ()Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.javafx.sg.prism.NGCanvas this
         0: .line 528
            iconst_1
            ireturn
        end local 0 // com.sun.javafx.sg.prism.NGCanvas this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/javafx/sg/prism/NGCanvas;

  private static void shapebounds(com.sun.javafx.geom.Shape, com.sun.javafx.geom.RectBounds, com.sun.javafx.geom.transform.BaseTransform);
    descriptor: (Lcom/sun/javafx/geom/Shape;Lcom/sun/javafx/geom/RectBounds;Lcom/sun/javafx/geom/transform/BaseTransform;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // com.sun.javafx.geom.Shape shape
        start local 1 // com.sun.javafx.geom.RectBounds bounds
        start local 2 // com.sun.javafx.geom.transform.BaseTransform transform
         0: .line 534
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_COORDS:[F
            iconst_0
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_COORDS:[F
            iconst_1
            ldc Infinity
            dup_x2
            fastore
            fastore
         1: .line 535
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_COORDS:[F
            iconst_2
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_COORDS:[F
            iconst_3
            ldc -Infinity
            dup_x2
            fastore
            fastore
         2: .line 536
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_COORDS:[F
            aload 0 /* shape */
            aload 2 /* transform */
            invokestatic com.sun.javafx.geom.Shape.accumulate:([FLcom/sun/javafx/geom/Shape;Lcom/sun/javafx/geom/transform/BaseTransform;)V
         3: .line 537
            aload 1 /* bounds */
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_COORDS:[F
            iconst_0
            faload
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_COORDS:[F
            iconst_1
            faload
         4: .line 538
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_COORDS:[F
            iconst_2
            faload
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_COORDS:[F
            iconst_3
            faload
         5: .line 537
            invokevirtual com.sun.javafx.geom.RectBounds.setBounds:(FFFF)V
         6: .line 539
            return
        end local 2 // com.sun.javafx.geom.transform.BaseTransform transform
        end local 1 // com.sun.javafx.geom.RectBounds bounds
        end local 0 // com.sun.javafx.geom.Shape shape
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    7     0      shape  Lcom/sun/javafx/geom/Shape;
            0    7     1     bounds  Lcom/sun/javafx/geom/RectBounds;
            0    7     2  transform  Lcom/sun/javafx/geom/transform/BaseTransform;
    MethodParameters:
           Name  Flags
      shape      
      bounds     
      transform  

  private static void strokebounds(com.sun.prism.BasicStroke, com.sun.javafx.geom.Shape, com.sun.javafx.geom.RectBounds, com.sun.javafx.geom.transform.BaseTransform);
    descriptor: (Lcom/sun/prism/BasicStroke;Lcom/sun/javafx/geom/Shape;Lcom/sun/javafx/geom/RectBounds;Lcom/sun/javafx/geom/transform/BaseTransform;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=4, args_size=4
        start local 0 // com.sun.prism.BasicStroke stroke
        start local 1 // com.sun.javafx.geom.Shape shape
        start local 2 // com.sun.javafx.geom.RectBounds bounds
        start local 3 // com.sun.javafx.geom.transform.BaseTransform transform
         0: .line 544
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_COORDS:[F
            iconst_0
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_COORDS:[F
            iconst_1
            ldc Infinity
            dup_x2
            fastore
            fastore
         1: .line 545
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_COORDS:[F
            iconst_2
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_COORDS:[F
            iconst_3
            ldc -Infinity
            dup_x2
            fastore
            fastore
         2: .line 546
            aload 0 /* stroke */
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_COORDS:[F
            aload 1 /* shape */
            aload 3 /* transform */
            invokevirtual com.sun.prism.BasicStroke.accumulateShapeBounds:([FLcom/sun/javafx/geom/Shape;Lcom/sun/javafx/geom/transform/BaseTransform;)V
         3: .line 547
            aload 2 /* bounds */
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_COORDS:[F
            iconst_0
            faload
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_COORDS:[F
            iconst_1
            faload
         4: .line 548
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_COORDS:[F
            iconst_2
            faload
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_COORDS:[F
            iconst_3
            faload
         5: .line 547
            invokevirtual com.sun.javafx.geom.RectBounds.setBounds:(FFFF)V
         6: .line 549
            return
        end local 3 // com.sun.javafx.geom.transform.BaseTransform transform
        end local 2 // com.sun.javafx.geom.RectBounds bounds
        end local 1 // com.sun.javafx.geom.Shape shape
        end local 0 // com.sun.prism.BasicStroke stroke
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    7     0     stroke  Lcom/sun/prism/BasicStroke;
            0    7     1      shape  Lcom/sun/javafx/geom/Shape;
            0    7     2     bounds  Lcom/sun/javafx/geom/RectBounds;
            0    7     3  transform  Lcom/sun/javafx/geom/transform/BaseTransform;
    MethodParameters:
           Name  Flags
      stroke     
      shape      
      bounds     
      transform  

  private static void runOnRenderThread(java.lang.Runnable);
    descriptor: (Ljava/lang/Runnable;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // java.lang.Runnable r
         0: .line 553
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            invokevirtual java.lang.Thread.getName:()Ljava/lang/String;
            ldc "QuantumRenderer"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 3
         1: .line 554
            aload 0 /* r */
            invokeinterface java.lang.Runnable.run:()V
         2: .line 555
            goto 10
         3: .line 556
      StackMap locals:
      StackMap stack:
            new java.util.concurrent.FutureTask
            dup
            aload 0 /* r */
            aconst_null
            invokespecial java.util.concurrent.FutureTask.<init>:(Ljava/lang/Runnable;Ljava/lang/Object;)V
            astore 1 /* f */
        start local 1 // java.util.concurrent.FutureTask f
         4: .line 557
            invokestatic com.sun.javafx.tk.Toolkit.getToolkit:()Lcom/sun/javafx/tk/Toolkit;
            new com.sun.javafx.tk.RenderJob
            dup
            aload 1 /* f */
            invokespecial com.sun.javafx.tk.RenderJob.<init>:(Ljava/lang/Runnable;)V
            invokevirtual com.sun.javafx.tk.Toolkit.addRenderJob:(Lcom/sun/javafx/tk/RenderJob;)Ljava/util/concurrent/Future;
            pop
         5: .line 560
            aload 1 /* f */
            invokevirtual java.util.concurrent.FutureTask.get:()Ljava/lang/Object;
            pop
         6: .line 561
            goto 10
      StackMap locals: java.lang.Runnable java.util.concurrent.FutureTask
      StackMap stack: java.util.concurrent.ExecutionException
         7: astore 2 /* ex */
        start local 2 // java.util.concurrent.ExecutionException ex
         8: .line 562
            new java.lang.AssertionError
            dup
            aload 2 /* ex */
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        end local 2 // java.util.concurrent.ExecutionException ex
         9: .line 563
      StackMap locals:
      StackMap stack: java.lang.InterruptedException
            pop
        end local 1 // java.util.concurrent.FutureTask f
        10: .line 567
      StackMap locals:
      StackMap stack:
            return
        end local 0 // java.lang.Runnable r
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0     r  Ljava/lang/Runnable;
            4   10     1     f  Ljava/util/concurrent/FutureTask<Ljava/lang/Void;>;
            8    9     2    ex  Ljava/util/concurrent/ExecutionException;
      Exception table:
        from    to  target  type
           5     6       7  Class java.util.concurrent.ExecutionException
           5     6       9  Class java.lang.InterruptedException
    MethodParameters:
      Name  Flags
      r     final

  private boolean printedCanvas(com.sun.prism.Graphics);
    descriptor: (Lcom/sun/prism/Graphics;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=10, args_size=2
        start local 0 // com.sun.javafx.sg.prism.NGCanvas this
        start local 1 // com.sun.prism.Graphics g
         0: .line 570
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cv:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            getfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.tex:Lcom/sun/prism/RTTexture;
            astore 2 /* localTex */
        start local 2 // com.sun.prism.RTTexture localTex
         1: .line 571
            aload 1 /* g */
            instanceof com.sun.prism.PrinterGraphics
            ifeq 2
            aload 2 /* localTex */
            ifnonnull 3
         2: .line 572
      StackMap locals: com.sun.prism.RTTexture
      StackMap stack:
            iconst_0
            ireturn
         3: .line 574
      StackMap locals:
      StackMap stack:
            aload 1 /* g */
            invokeinterface com.sun.prism.Graphics.getResourceFactory:()Lcom/sun/prism/ResourceFactory;
            astore 3 /* factory */
        start local 3 // com.sun.prism.ResourceFactory factory
         4: .line 575
            aload 3 /* factory */
            aload 2 /* localTex */
            invokeinterface com.sun.prism.ResourceFactory.isCompatibleTexture:(Lcom/sun/prism/Texture;)Z
            istore 4 /* isCompatTex */
        start local 4 // boolean isCompatTex
         5: .line 576
            iload 4 /* isCompatTex */
            ifeq 7
         6: .line 577
            iconst_0
            ireturn
         7: .line 580
      StackMap locals: com.sun.prism.ResourceFactory int
      StackMap stack:
            aload 2 /* localTex */
            invokeinterface com.sun.prism.RTTexture.getContentWidth:()I
            istore 5 /* tw */
        start local 5 // int tw
         8: .line 581
            aload 2 /* localTex */
            invokeinterface com.sun.prism.RTTexture.getContentHeight:()I
            istore 6 /* th */
        start local 6 // int th
         9: .line 583
            aload 3 /* factory */
            iload 5 /* tw */
            iload 6 /* th */
            getstatic com.sun.prism.Texture$WrapMode.CLAMP_TO_ZERO:Lcom/sun/prism/Texture$WrapMode;
            invokeinterface com.sun.prism.ResourceFactory.createRTTexture:(IILcom/sun/prism/Texture$WrapMode;)Lcom/sun/prism/RTTexture;
        10: .line 582
            astore 7 /* tmpTex */
        start local 7 // com.sun.prism.RTTexture tmpTex
        11: .line 584
            aload 7 /* tmpTex */
            invokeinterface com.sun.prism.RTTexture.createGraphics:()Lcom/sun/prism/Graphics;
            astore 8 /* texg */
        start local 8 // com.sun.prism.Graphics texg
        12: .line 585
            aload 8 /* texg */
            getstatic com.sun.prism.CompositeMode.SRC:Lcom/sun/prism/CompositeMode;
            invokeinterface com.sun.prism.Graphics.setCompositeMode:(Lcom/sun/prism/CompositeMode;)V
        13: .line 586
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cv:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            getfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.savedPixelData:Lcom/sun/javafx/sg/prism/NGCanvas$PixelData;
            ifnonnull 17
        14: .line 587
            new com.sun.javafx.sg.prism.NGCanvas$PixelData
            dup
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cw:I
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.ch:I
            invokespecial com.sun.javafx.sg.prism.NGCanvas$PixelData.<init>:(II)V
            astore 9 /* pd */
        start local 9 // com.sun.javafx.sg.prism.NGCanvas$PixelData pd
        15: .line 588
            aload 9 /* pd */
            aload 2 /* localTex */
            aload 8 /* texg */
            iload 5 /* tw */
            iload 6 /* th */
            invokedynamic run(Lcom/sun/javafx/sg/prism/NGCanvas$PixelData;Lcom/sun/prism/RTTexture;Lcom/sun/prism/Graphics;II)Ljava/lang/Runnable;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()V
                  com/sun/javafx/sg/prism/NGCanvas.lambda$0(Lcom/sun/javafx/sg/prism/NGCanvas$PixelData;Lcom/sun/prism/RTTexture;Lcom/sun/prism/Graphics;II)V (6)
                  ()V
            invokestatic com.sun.javafx.sg.prism.NGCanvas.runOnRenderThread:(Ljava/lang/Runnable;)V
        end local 9 // com.sun.javafx.sg.prism.NGCanvas$PixelData pd
        16: .line 592
            goto 18
        17: .line 593
      StackMap locals: com.sun.javafx.sg.prism.NGCanvas com.sun.prism.Graphics com.sun.prism.RTTexture com.sun.prism.ResourceFactory int int int com.sun.prism.RTTexture com.sun.prism.Graphics
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cv:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            getfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.savedPixelData:Lcom/sun/javafx/sg/prism/NGCanvas$PixelData;
            aload 8 /* texg */
            iload 5 /* tw */
            iload 6 /* th */
            invokevirtual com.sun.javafx.sg.prism.NGCanvas$PixelData.restore:(Lcom/sun/prism/Graphics;II)V
        18: .line 595
      StackMap locals:
      StackMap stack:
            aload 1 /* g */
            aload 7 /* tmpTex */
            fconst_0
            fconst_0
            iload 5 /* tw */
            i2f
            iload 6 /* th */
            i2f
            invokeinterface com.sun.prism.Graphics.drawTexture:(Lcom/sun/prism/Texture;FFFF)V
        19: .line 596
            aload 7 /* tmpTex */
            invokeinterface com.sun.prism.RTTexture.unlock:()V
        20: .line 597
            aload 7 /* tmpTex */
            invokeinterface com.sun.prism.RTTexture.dispose:()V
        21: .line 598
            iconst_1
            ireturn
        end local 8 // com.sun.prism.Graphics texg
        end local 7 // com.sun.prism.RTTexture tmpTex
        end local 6 // int th
        end local 5 // int tw
        end local 4 // boolean isCompatTex
        end local 3 // com.sun.prism.ResourceFactory factory
        end local 2 // com.sun.prism.RTTexture localTex
        end local 1 // com.sun.prism.Graphics g
        end local 0 // com.sun.javafx.sg.prism.NGCanvas this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   22     0         this  Lcom/sun/javafx/sg/prism/NGCanvas;
            0   22     1            g  Lcom/sun/prism/Graphics;
            1   22     2     localTex  Lcom/sun/prism/RTTexture;
            4   22     3      factory  Lcom/sun/prism/ResourceFactory;
            5   22     4  isCompatTex  Z
            8   22     5           tw  I
            9   22     6           th  I
           11   22     7       tmpTex  Lcom/sun/prism/RTTexture;
           12   22     8         texg  Lcom/sun/prism/Graphics;
           15   16     9           pd  Lcom/sun/javafx/sg/prism/NGCanvas$PixelData;
    MethodParameters:
      Name  Flags
      g     

  protected void renderContent(com.sun.prism.Graphics);
    descriptor: (Lcom/sun/prism/Graphics;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=10, locals=4, args_size=2
        start local 0 // com.sun.javafx.sg.prism.NGCanvas this
        start local 1 // com.sun.prism.Graphics g
         0: .line 603
            aload 0 /* this */
            aload 1 /* g */
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.printedCanvas:(Lcom/sun/prism/Graphics;)Z
            ifeq 1
            return
         1: .line 604
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* g */
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.initCanvas:(Lcom/sun/prism/Graphics;)V
         2: .line 605
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cv:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            getfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.tex:Lcom/sun/prism/RTTexture;
            ifnull 14
         3: .line 606
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.thebuf:Lcom/sun/javafx/sg/prism/GrowableDataBuffer;
            ifnull 7
         4: .line 607
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.thebuf:Lcom/sun/javafx/sg/prism/GrowableDataBuffer;
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.renderStream:(Lcom/sun/javafx/sg/prism/GrowableDataBuffer;)V
         5: .line 608
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.thebuf:Lcom/sun/javafx/sg/prism/GrowableDataBuffer;
            invokestatic com.sun.javafx.sg.prism.GrowableDataBuffer.returnBuffer:(Lcom/sun/javafx/sg/prism/GrowableDataBuffer;)V
         6: .line 609
            aload 0 /* this */
            aconst_null
            putfield com.sun.javafx.sg.prism.NGCanvas.thebuf:Lcom/sun/javafx/sg/prism/GrowableDataBuffer;
         7: .line 611
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.tw:I
            i2f
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.highestPixelScale:F
            fdiv
            fstore 2 /* dw */
        start local 2 // float dw
         8: .line 612
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.th:I
            i2f
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.highestPixelScale:F
            fdiv
            fstore 3 /* dh */
        start local 3 // float dh
         9: .line 613
            aload 1 /* g */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cv:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            getfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.tex:Lcom/sun/prism/RTTexture;
        10: .line 614
            fconst_0
            fconst_0
            fload 2 /* dw */
            fload 3 /* dh */
        11: .line 615
            fconst_0
            fconst_0
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.tw:I
            i2f
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.th:I
            i2f
        12: .line 613
            invokeinterface com.sun.prism.Graphics.drawTexture:(Lcom/sun/prism/Texture;FFFFFFFF)V
        13: .line 617
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cv:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.tw:I
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.th:I
            invokevirtual com.sun.javafx.sg.prism.NGCanvas$RenderBuf.save:(II)V
        end local 3 // float dh
        end local 2 // float dw
        14: .line 619
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.temp:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clip:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cv:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            aconst_null
            dup_x1
            putfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.g:Lcom/sun/prism/Graphics;
            dup_x1
            putfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.g:Lcom/sun/prism/Graphics;
            putfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.g:Lcom/sun/prism/Graphics;
        15: .line 620
            return
        end local 1 // com.sun.prism.Graphics g
        end local 0 // com.sun.javafx.sg.prism.NGCanvas this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   16     0  this  Lcom/sun/javafx/sg/prism/NGCanvas;
            0   16     1     g  Lcom/sun/prism/Graphics;
            8   14     2    dw  F
            9   14     3    dh  F
    MethodParameters:
      Name  Flags
      g     

  public void renderForcedContent(com.sun.prism.Graphics);
    descriptor: (Lcom/sun/prism/Graphics;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // com.sun.javafx.sg.prism.NGCanvas this
        start local 1 // com.sun.prism.Graphics gOptional
         0: .line 624
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.thebuf:Lcom/sun/javafx/sg/prism/GrowableDataBuffer;
            ifnull 8
         1: .line 625
            aload 0 /* this */
            aload 1 /* gOptional */
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.initCanvas:(Lcom/sun/prism/Graphics;)V
         2: .line 626
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cv:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            getfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.tex:Lcom/sun/prism/RTTexture;
            ifnull 7
         3: .line 627
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.thebuf:Lcom/sun/javafx/sg/prism/GrowableDataBuffer;
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.renderStream:(Lcom/sun/javafx/sg/prism/GrowableDataBuffer;)V
         4: .line 628
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.thebuf:Lcom/sun/javafx/sg/prism/GrowableDataBuffer;
            invokestatic com.sun.javafx.sg.prism.GrowableDataBuffer.returnBuffer:(Lcom/sun/javafx/sg/prism/GrowableDataBuffer;)V
         5: .line 629
            aload 0 /* this */
            aconst_null
            putfield com.sun.javafx.sg.prism.NGCanvas.thebuf:Lcom/sun/javafx/sg/prism/GrowableDataBuffer;
         6: .line 630
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cv:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.tw:I
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.th:I
            invokevirtual com.sun.javafx.sg.prism.NGCanvas$RenderBuf.save:(II)V
         7: .line 632
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.temp:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clip:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cv:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            aconst_null
            dup_x1
            putfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.g:Lcom/sun/prism/Graphics;
            dup_x1
            putfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.g:Lcom/sun/prism/Graphics;
            putfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.g:Lcom/sun/prism/Graphics;
         8: .line 634
      StackMap locals:
      StackMap stack:
            return
        end local 1 // com.sun.prism.Graphics gOptional
        end local 0 // com.sun.javafx.sg.prism.NGCanvas this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    9     0       this  Lcom/sun/javafx/sg/prism/NGCanvas;
            0    9     1  gOptional  Lcom/sun/prism/Graphics;
    MethodParameters:
           Name  Flags
      gOptional  

  private void initCanvas(com.sun.prism.Graphics);
    descriptor: (Lcom/sun/prism/Graphics;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // com.sun.javafx.sg.prism.NGCanvas this
        start local 1 // com.sun.prism.Graphics g
         0: .line 637
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.tw:I
            ifle 1
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.th:I
            ifgt 3
         1: .line 638
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cv:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            invokevirtual com.sun.javafx.sg.prism.NGCanvas$RenderBuf.dispose:()V
         2: .line 639
            return
         3: .line 641
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cv:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            aload 1 /* g */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.tw:I
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.th:I
            invokevirtual com.sun.javafx.sg.prism.NGCanvas$RenderBuf.validate:(Lcom/sun/prism/Graphics;II)Z
            ifeq 7
         4: .line 644
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cv:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            getfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.tex:Lcom/sun/prism/RTTexture;
            invokeinterface com.sun.prism.RTTexture.contentsUseful:()V
         5: .line 645
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cv:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            getfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.tex:Lcom/sun/prism/RTTexture;
            invokeinterface com.sun.prism.RTTexture.makePermanent:()V
         6: .line 646
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cv:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            getfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.tex:Lcom/sun/prism/RTTexture;
            invokeinterface com.sun.prism.RTTexture.lock:()V
         7: .line 648
      StackMap locals:
      StackMap stack:
            return
        end local 1 // com.sun.prism.Graphics g
        end local 0 // com.sun.javafx.sg.prism.NGCanvas this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lcom/sun/javafx/sg/prism/NGCanvas;
            0    8     1     g  Lcom/sun/prism/Graphics;
    MethodParameters:
      Name  Flags
      g     

  private void clearCanvas(int, int, int, int);
    descriptor: (IIII)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // com.sun.javafx.sg.prism.NGCanvas this
        start local 1 // int x
        start local 2 // int y
        start local 3 // int w
        start local 4 // int h
         0: .line 651
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cv:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            getfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.g:Lcom/sun/prism/Graphics;
            getstatic com.sun.prism.CompositeMode.CLEAR:Lcom/sun/prism/CompositeMode;
            invokeinterface com.sun.prism.Graphics.setCompositeMode:(Lcom/sun/prism/CompositeMode;)V
         1: .line 652
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cv:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            getfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.g:Lcom/sun/prism/Graphics;
            getstatic com.sun.javafx.geom.transform.BaseTransform.IDENTITY_TRANSFORM:Lcom/sun/javafx/geom/transform/BaseTransform;
            invokeinterface com.sun.prism.Graphics.setTransform:(Lcom/sun/javafx/geom/transform/BaseTransform;)V
         2: .line 653
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cv:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            getfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.g:Lcom/sun/prism/Graphics;
            iload 1 /* x */
            i2f
            iload 2 /* y */
            i2f
            iload 1 /* x */
            iload 3 /* w */
            iadd
            i2f
            iload 2 /* y */
            iload 4 /* h */
            iadd
            i2f
            invokeinterface com.sun.prism.Graphics.fillQuad:(FFFF)V
         3: .line 654
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cv:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            getfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.g:Lcom/sun/prism/Graphics;
            getstatic com.sun.prism.CompositeMode.SRC_OVER:Lcom/sun/prism/CompositeMode;
            invokeinterface com.sun.prism.Graphics.setCompositeMode:(Lcom/sun/prism/CompositeMode;)V
         4: .line 655
            return
        end local 4 // int h
        end local 3 // int w
        end local 2 // int y
        end local 1 // int x
        end local 0 // com.sun.javafx.sg.prism.NGCanvas this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lcom/sun/javafx/sg/prism/NGCanvas;
            0    5     1     x  I
            0    5     2     y  I
            0    5     3     w  I
            0    5     4     h  I
    MethodParameters:
      Name  Flags
      x     
      y     
      w     
      h     

  private void resetClip(boolean);
    descriptor: (Z)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.javafx.sg.prism.NGCanvas this
        start local 1 // boolean andDispose
         0: .line 658
            iload 1 /* andDispose */
            ifeq 1
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clip:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            invokevirtual com.sun.javafx.sg.prism.NGCanvas$RenderBuf.dispose:()V
         1: .line 659
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield com.sun.javafx.sg.prism.NGCanvas.clipsRendered:I
         2: .line 660
            aload 0 /* this */
            iconst_1
            putfield com.sun.javafx.sg.prism.NGCanvas.clipIsRect:Z
         3: .line 661
            aload 0 /* this */
            aconst_null
            putfield com.sun.javafx.sg.prism.NGCanvas.clipRect:Lcom/sun/javafx/geom/Rectangle;
         4: .line 662
            return
        end local 1 // boolean andDispose
        end local 0 // com.sun.javafx.sg.prism.NGCanvas this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0        this  Lcom/sun/javafx/sg/prism/NGCanvas;
            0    5     1  andDispose  Z
    MethodParameters:
            Name  Flags
      andDispose  

  private boolean initClip();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=4, args_size=1
        start local 0 // com.sun.javafx.sg.prism.NGCanvas this
         0: .line 668
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clipIsRect:Z
            ifeq 3
         1: .line 669
            iconst_0
            istore 1 /* clipValidated */
        start local 1 // boolean clipValidated
         2: .line 670
            goto 7
        end local 1 // boolean clipValidated
         3: .line 671
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 1 /* clipValidated */
        start local 1 // boolean clipValidated
         4: .line 672
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clip:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cv:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            getfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.g:Lcom/sun/prism/Graphics;
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.tw:I
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.th:I
            invokevirtual com.sun.javafx.sg.prism.NGCanvas$RenderBuf.validate:(Lcom/sun/prism/Graphics;II)Z
            ifeq 7
         5: .line 673
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clip:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            getfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.tex:Lcom/sun/prism/RTTexture;
            invokeinterface com.sun.prism.RTTexture.contentsUseful:()V
         6: .line 675
            aload 0 /* this */
            iconst_0
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.resetClip:(Z)V
         7: .line 678
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clipStack:Ljava/util/LinkedList;
            invokevirtual java.util.LinkedList.size:()I
            istore 2 /* clipSize */
        start local 2 // int clipSize
         8: .line 679
            goto 34
         9: .line 680
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clipStack:Ljava/util/LinkedList;
            aload 0 /* this */
            dup
            getfield com.sun.javafx.sg.prism.NGCanvas.clipsRendered:I
            dup_x1
            iconst_1
            iadd
            putfield com.sun.javafx.sg.prism.NGCanvas.clipsRendered:I
            invokevirtual java.util.LinkedList.get:(I)Ljava/lang/Object;
            checkcast com.sun.javafx.geom.Path2D
            astore 3 /* clippath */
        start local 3 // com.sun.javafx.geom.Path2D clippath
        10: .line 681
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clipIsRect:Z
            ifeq 27
        11: .line 682
            aload 3 /* clippath */
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_RECT:Lcom/sun/javafx/geom/Rectangle;
            ldc 0.00390625
            invokevirtual com.sun.javafx.geom.Path2D.checkAndGetIntRect:(Lcom/sun/javafx/geom/Rectangle;F)Z
            ifeq 17
        12: .line 683
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clipRect:Lcom/sun/javafx/geom/Rectangle;
            ifnonnull 15
        13: .line 684
            aload 0 /* this */
            new com.sun.javafx.geom.Rectangle
            dup
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_RECT:Lcom/sun/javafx/geom/Rectangle;
            invokespecial com.sun.javafx.geom.Rectangle.<init>:(Lcom/sun/javafx/geom/Rectangle;)V
            putfield com.sun.javafx.sg.prism.NGCanvas.clipRect:Lcom/sun/javafx/geom/Rectangle;
        14: .line 685
            goto 34
        15: .line 686
      StackMap locals: com.sun.javafx.geom.Path2D
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clipRect:Lcom/sun/javafx/geom/Rectangle;
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_RECT:Lcom/sun/javafx/geom/Rectangle;
            invokevirtual com.sun.javafx.geom.Rectangle.intersectWith:(Lcom/sun/javafx/geom/Rectangle;)V
        16: .line 688
            goto 34
        17: .line 690
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield com.sun.javafx.sg.prism.NGCanvas.clipIsRect:Z
        18: .line 691
            iload 1 /* clipValidated */
            ifne 22
        19: .line 692
            iconst_1
            istore 1 /* clipValidated */
        20: .line 693
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clip:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cv:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            getfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.g:Lcom/sun/prism/Graphics;
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.tw:I
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.th:I
            invokevirtual com.sun.javafx.sg.prism.NGCanvas$RenderBuf.validate:(Lcom/sun/prism/Graphics;II)Z
            ifeq 22
        21: .line 694
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clip:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            getfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.tex:Lcom/sun/prism/RTTexture;
            invokeinterface com.sun.prism.RTTexture.contentsUseful:()V
        22: .line 698
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clipRect:Lcom/sun/javafx/geom/Rectangle;
            ifnull 27
        23: .line 699
            aload 0 /* this */
            new com.sun.javafx.geom.RoundRectangle2D
            dup
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clipRect:Lcom/sun/javafx/geom/Rectangle;
            getfield com.sun.javafx.geom.Rectangle.x:I
            i2f
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clipRect:Lcom/sun/javafx/geom/Rectangle;
            getfield com.sun.javafx.geom.Rectangle.y:I
            i2f
        24: .line 700
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clipRect:Lcom/sun/javafx/geom/Rectangle;
            getfield com.sun.javafx.geom.Rectangle.width:I
            i2f
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clipRect:Lcom/sun/javafx/geom/Rectangle;
            getfield com.sun.javafx.geom.Rectangle.height:I
            i2f
        25: .line 701
            fconst_0
            fconst_0
            invokespecial com.sun.javafx.geom.RoundRectangle2D.<init>:(FFFFFF)V
        26: .line 699
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.renderClip:(Lcom/sun/javafx/geom/Shape;)V
        27: .line 704
      StackMap locals:
      StackMap stack:
            aload 3 /* clippath */
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_RECTBOUNDS:Lcom/sun/javafx/geom/RectBounds;
            getstatic com.sun.javafx.geom.transform.BaseTransform.IDENTITY_TRANSFORM:Lcom/sun/javafx/geom/transform/BaseTransform;
            invokestatic com.sun.javafx.sg.prism.NGCanvas.shapebounds:(Lcom/sun/javafx/geom/Shape;Lcom/sun/javafx/geom/RectBounds;Lcom/sun/javafx/geom/transform/BaseTransform;)V
        28: .line 705
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_RECT:Lcom/sun/javafx/geom/Rectangle;
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_RECTBOUNDS:Lcom/sun/javafx/geom/RectBounds;
            invokevirtual com.sun.javafx.geom.Rectangle.setBounds:(Lcom/sun/javafx/geom/BaseBounds;)V
        29: .line 706
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clipRect:Lcom/sun/javafx/geom/Rectangle;
            ifnonnull 32
        30: .line 707
            aload 0 /* this */
            new com.sun.javafx.geom.Rectangle
            dup
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_RECT:Lcom/sun/javafx/geom/Rectangle;
            invokespecial com.sun.javafx.geom.Rectangle.<init>:(Lcom/sun/javafx/geom/Rectangle;)V
            putfield com.sun.javafx.sg.prism.NGCanvas.clipRect:Lcom/sun/javafx/geom/Rectangle;
        31: .line 708
            goto 33
        32: .line 709
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clipRect:Lcom/sun/javafx/geom/Rectangle;
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_RECT:Lcom/sun/javafx/geom/Rectangle;
            invokevirtual com.sun.javafx.geom.Rectangle.intersectWith:(Lcom/sun/javafx/geom/Rectangle;)V
        33: .line 711
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* clippath */
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.renderClip:(Lcom/sun/javafx/geom/Shape;)V
        end local 3 // com.sun.javafx.geom.Path2D clippath
        34: .line 679
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clipsRendered:I
            iload 2 /* clipSize */
            if_icmplt 9
        35: .line 713
            iload 1 /* clipValidated */
            ifeq 37
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clipIsRect:Z
            ifeq 37
        36: .line 714
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clip:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            getfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.tex:Lcom/sun/prism/RTTexture;
            invokeinterface com.sun.prism.RTTexture.unlock:()V
        37: .line 716
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clipIsRect:Z
            ifeq 38
            iconst_0
            goto 39
      StackMap locals:
      StackMap stack:
        38: iconst_1
      StackMap locals:
      StackMap stack: int
        39: ireturn
        end local 2 // int clipSize
        end local 1 // boolean clipValidated
        end local 0 // com.sun.javafx.sg.prism.NGCanvas this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   40     0           this  Lcom/sun/javafx/sg/prism/NGCanvas;
            2    3     1  clipValidated  Z
            4   40     1  clipValidated  Z
            8   40     2       clipSize  I
           10   34     3       clippath  Lcom/sun/javafx/geom/Path2D;

  private void renderClip(com.sun.javafx.geom.Shape);
    descriptor: (Lcom/sun/javafx/geom/Shape;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=2, args_size=2
        start local 0 // com.sun.javafx.sg.prism.NGCanvas this
        start local 1 // com.sun.javafx.geom.Shape clippath
         0: .line 720
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.temp:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cv:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            getfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.g:Lcom/sun/prism/Graphics;
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.tw:I
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.th:I
            invokevirtual com.sun.javafx.sg.prism.NGCanvas$RenderBuf.validate:(Lcom/sun/prism/Graphics;II)Z
            pop
         1: .line 721
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.temp:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            getfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.g:Lcom/sun/prism/Graphics;
            getstatic com.sun.prism.paint.Color.WHITE:Lcom/sun/prism/paint/Color;
            invokeinterface com.sun.prism.Graphics.setPaint:(Lcom/sun/prism/paint/Paint;)V
         2: .line 722
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.temp:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            getfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.g:Lcom/sun/prism/Graphics;
            getstatic com.sun.javafx.geom.transform.BaseTransform.IDENTITY_TRANSFORM:Lcom/sun/javafx/geom/transform/BaseTransform;
            invokeinterface com.sun.prism.Graphics.setTransform:(Lcom/sun/javafx/geom/transform/BaseTransform;)V
         3: .line 723
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.temp:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            getfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.g:Lcom/sun/prism/Graphics;
            aload 1 /* clippath */
            invokeinterface com.sun.prism.Graphics.fill:(Lcom/sun/javafx/geom/Shape;)V
         4: .line 724
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.temp:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            getstatic com.sun.scenario.effect.Blend$Mode.SRC_IN:Lcom/sun/scenario/effect/Blend$Mode;
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clip:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            aconst_null
            getstatic com.sun.prism.CompositeMode.SRC:Lcom/sun/prism/CompositeMode;
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clip:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.blendAthruBintoC:(Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;Lcom/sun/scenario/effect/Blend$Mode;Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;Lcom/sun/javafx/geom/RectBounds;Lcom/sun/prism/CompositeMode;Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;)V
         5: .line 725
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.temp:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            getfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.tex:Lcom/sun/prism/RTTexture;
            invokeinterface com.sun.prism.RTTexture.unlock:()V
         6: .line 726
            return
        end local 1 // com.sun.javafx.geom.Shape clippath
        end local 0 // com.sun.javafx.sg.prism.NGCanvas this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    7     0      this  Lcom/sun/javafx/sg/prism/NGCanvas;
            0    7     1  clippath  Lcom/sun/javafx/geom/Shape;
    MethodParameters:
          Name  Flags
      clippath  

  private com.sun.javafx.geom.Rectangle applyEffectOnAintoC(com.sun.scenario.effect.Effect, com.sun.scenario.effect.Effect, com.sun.javafx.geom.transform.BaseTransform, com.sun.javafx.geom.Rectangle, com.sun.prism.CompositeMode, com.sun.javafx.sg.prism.NGCanvas$RenderBuf);
    descriptor: (Lcom/sun/scenario/effect/Effect;Lcom/sun/scenario/effect/Effect;Lcom/sun/javafx/geom/transform/BaseTransform;Lcom/sun/javafx/geom/Rectangle;Lcom/sun/prism/CompositeMode;Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;)Lcom/sun/javafx/geom/Rectangle;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=13, args_size=7
        start local 0 // com.sun.javafx.sg.prism.NGCanvas this
        start local 1 // com.sun.scenario.effect.Effect definput
        start local 2 // com.sun.scenario.effect.Effect effect
        start local 3 // com.sun.javafx.geom.transform.BaseTransform transform
        start local 4 // com.sun.javafx.geom.Rectangle outputClip
        start local 5 // com.sun.prism.CompositeMode comp
        start local 6 // com.sun.javafx.sg.prism.NGCanvas$RenderBuf destbuf
         0: .line 736
            aload 6 /* destbuf */
            getfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.tex:Lcom/sun/prism/RTTexture;
            invokeinterface com.sun.prism.RTTexture.getAssociatedScreen:()Lcom/sun/glass/ui/Screen;
            invokestatic com.sun.scenario.effect.impl.prism.PrFilterContext.getInstance:(Lcom/sun/glass/ui/Screen;)Lcom/sun/scenario/effect/impl/prism/PrFilterContext;
         1: .line 735
            astore 7 /* fctx */
        start local 7 // com.sun.scenario.effect.FilterContext fctx
         2: .line 738
            aload 2 /* effect */
            aload 7 /* fctx */
            aload 3 /* transform */
            aload 4 /* outputClip */
            aconst_null
            aload 1 /* definput */
            invokevirtual com.sun.scenario.effect.Effect.filter:(Lcom/sun/scenario/effect/FilterContext;Lcom/sun/javafx/geom/transform/BaseTransform;Lcom/sun/javafx/geom/Rectangle;Ljava/lang/Object;Lcom/sun/scenario/effect/Effect;)Lcom/sun/scenario/effect/ImageData;
         3: .line 737
            astore 8 /* id */
        start local 8 // com.sun.scenario.effect.ImageData id
         4: .line 739
            aload 8 /* id */
            invokevirtual com.sun.scenario.effect.ImageData.getUntransformedBounds:()Lcom/sun/javafx/geom/Rectangle;
            astore 9 /* r */
        start local 9 // com.sun.javafx.geom.Rectangle r
         5: .line 740
            aload 8 /* id */
            invokevirtual com.sun.scenario.effect.ImageData.getUntransformedImage:()Lcom/sun/scenario/effect/Filterable;
            astore 10 /* f */
        start local 10 // com.sun.scenario.effect.Filterable f
         6: .line 741
            aload 10 /* f */
            checkcast com.sun.scenario.effect.impl.prism.PrTexture
            invokevirtual com.sun.scenario.effect.impl.prism.PrTexture.getTextureObject:()Lcom/sun/prism/Texture;
            astore 11 /* tex */
        start local 11 // com.sun.prism.Texture tex
         7: .line 742
            aload 6 /* destbuf */
            getfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.g:Lcom/sun/prism/Graphics;
            aload 8 /* id */
            invokevirtual com.sun.scenario.effect.ImageData.getTransform:()Lcom/sun/javafx/geom/transform/BaseTransform;
            invokeinterface com.sun.prism.Graphics.setTransform:(Lcom/sun/javafx/geom/transform/BaseTransform;)V
         8: .line 743
            aload 6 /* destbuf */
            getfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.g:Lcom/sun/prism/Graphics;
            aload 5 /* comp */
            invokeinterface com.sun.prism.Graphics.setCompositeMode:(Lcom/sun/prism/CompositeMode;)V
         9: .line 744
            aload 6 /* destbuf */
            getfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.g:Lcom/sun/prism/Graphics;
            aload 11 /* tex */
            aload 9 /* r */
            getfield com.sun.javafx.geom.Rectangle.x:I
            i2f
            aload 9 /* r */
            getfield com.sun.javafx.geom.Rectangle.y:I
            i2f
            aload 9 /* r */
            getfield com.sun.javafx.geom.Rectangle.width:I
            i2f
            aload 9 /* r */
            getfield com.sun.javafx.geom.Rectangle.height:I
            i2f
            invokeinterface com.sun.prism.Graphics.drawTexture:(Lcom/sun/prism/Texture;FFFF)V
        10: .line 745
            aload 6 /* destbuf */
            getfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.g:Lcom/sun/prism/Graphics;
            getstatic com.sun.javafx.geom.transform.BaseTransform.IDENTITY_TRANSFORM:Lcom/sun/javafx/geom/transform/BaseTransform;
            invokeinterface com.sun.prism.Graphics.setTransform:(Lcom/sun/javafx/geom/transform/BaseTransform;)V
        11: .line 746
            aload 6 /* destbuf */
            getfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.g:Lcom/sun/prism/Graphics;
            getstatic com.sun.prism.CompositeMode.SRC_OVER:Lcom/sun/prism/CompositeMode;
            invokeinterface com.sun.prism.Graphics.setCompositeMode:(Lcom/sun/prism/CompositeMode;)V
        12: .line 747
            aload 8 /* id */
            aload 4 /* outputClip */
            invokevirtual com.sun.scenario.effect.ImageData.getTransformedBounds:(Lcom/sun/javafx/geom/Rectangle;)Lcom/sun/javafx/geom/Rectangle;
            astore 12 /* resultBounds */
        start local 12 // com.sun.javafx.geom.Rectangle resultBounds
        13: .line 748
            aload 8 /* id */
            invokevirtual com.sun.scenario.effect.ImageData.unref:()V
        14: .line 749
            aload 12 /* resultBounds */
            areturn
        end local 12 // com.sun.javafx.geom.Rectangle resultBounds
        end local 11 // com.sun.prism.Texture tex
        end local 10 // com.sun.scenario.effect.Filterable f
        end local 9 // com.sun.javafx.geom.Rectangle r
        end local 8 // com.sun.scenario.effect.ImageData id
        end local 7 // com.sun.scenario.effect.FilterContext fctx
        end local 6 // com.sun.javafx.sg.prism.NGCanvas$RenderBuf destbuf
        end local 5 // com.sun.prism.CompositeMode comp
        end local 4 // com.sun.javafx.geom.Rectangle outputClip
        end local 3 // com.sun.javafx.geom.transform.BaseTransform transform
        end local 2 // com.sun.scenario.effect.Effect effect
        end local 1 // com.sun.scenario.effect.Effect definput
        end local 0 // com.sun.javafx.sg.prism.NGCanvas this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   15     0          this  Lcom/sun/javafx/sg/prism/NGCanvas;
            0   15     1      definput  Lcom/sun/scenario/effect/Effect;
            0   15     2        effect  Lcom/sun/scenario/effect/Effect;
            0   15     3     transform  Lcom/sun/javafx/geom/transform/BaseTransform;
            0   15     4    outputClip  Lcom/sun/javafx/geom/Rectangle;
            0   15     5          comp  Lcom/sun/prism/CompositeMode;
            0   15     6       destbuf  Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            2   15     7          fctx  Lcom/sun/scenario/effect/FilterContext;
            4   15     8            id  Lcom/sun/scenario/effect/ImageData;
            5   15     9             r  Lcom/sun/javafx/geom/Rectangle;
            6   15    10             f  Lcom/sun/scenario/effect/Filterable;
            7   15    11           tex  Lcom/sun/prism/Texture;
           13   15    12  resultBounds  Lcom/sun/javafx/geom/Rectangle;
    MethodParameters:
            Name  Flags
      definput    
      effect      
      transform   
      outputClip  
      comp        
      destbuf     

  private void blendAthruBintoC(com.sun.javafx.sg.prism.NGCanvas$RenderBuf, com.sun.scenario.effect.Blend$Mode, com.sun.javafx.sg.prism.NGCanvas$RenderBuf, com.sun.javafx.geom.RectBounds, com.sun.prism.CompositeMode, com.sun.javafx.sg.prism.NGCanvas$RenderBuf);
    descriptor: (Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;Lcom/sun/scenario/effect/Blend$Mode;Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;Lcom/sun/javafx/geom/RectBounds;Lcom/sun/prism/CompositeMode;Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=8, args_size=7
        start local 0 // com.sun.javafx.sg.prism.NGCanvas this
        start local 1 // com.sun.javafx.sg.prism.NGCanvas$RenderBuf drawbuf
        start local 2 // com.sun.scenario.effect.Blend$Mode mode
        start local 3 // com.sun.javafx.sg.prism.NGCanvas$RenderBuf clipbuf
        start local 4 // com.sun.javafx.geom.RectBounds bounds
        start local 5 // com.sun.prism.CompositeMode comp
        start local 6 // com.sun.javafx.sg.prism.NGCanvas$RenderBuf destbuf
         0: .line 759
            getstatic com.sun.javafx.sg.prism.NGCanvas.BLENDER:Lcom/sun/scenario/effect/Blend;
            aload 1 /* drawbuf */
            getfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.input:Lcom/sun/javafx/sg/prism/NGCanvas$EffectInput;
            invokevirtual com.sun.scenario.effect.Blend.setTopInput:(Lcom/sun/scenario/effect/Effect;)V
         1: .line 760
            getstatic com.sun.javafx.sg.prism.NGCanvas.BLENDER:Lcom/sun/scenario/effect/Blend;
            aload 3 /* clipbuf */
            getfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.input:Lcom/sun/javafx/sg/prism/NGCanvas$EffectInput;
            invokevirtual com.sun.scenario.effect.Blend.setBottomInput:(Lcom/sun/scenario/effect/Effect;)V
         2: .line 761
            getstatic com.sun.javafx.sg.prism.NGCanvas.BLENDER:Lcom/sun/scenario/effect/Blend;
            aload 2 /* mode */
            invokevirtual com.sun.scenario.effect.Blend.setMode:(Lcom/sun/scenario/effect/Blend$Mode;)V
         3: .line 763
            aload 4 /* bounds */
            ifnull 6
         4: .line 764
            new com.sun.javafx.geom.Rectangle
            dup
            aload 4 /* bounds */
            invokespecial com.sun.javafx.geom.Rectangle.<init>:(Lcom/sun/javafx/geom/BaseBounds;)V
            astore 7 /* blendclip */
        start local 7 // com.sun.javafx.geom.Rectangle blendclip
         5: .line 765
            goto 7
        end local 7 // com.sun.javafx.geom.Rectangle blendclip
         6: .line 766
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 7 /* blendclip */
        start local 7 // com.sun.javafx.geom.Rectangle blendclip
         7: .line 768
      StackMap locals: com.sun.javafx.geom.Rectangle
      StackMap stack:
            aload 0 /* this */
            aconst_null
            getstatic com.sun.javafx.sg.prism.NGCanvas.BLENDER:Lcom/sun/scenario/effect/Blend;
         8: .line 769
            getstatic com.sun.javafx.geom.transform.BaseTransform.IDENTITY_TRANSFORM:Lcom/sun/javafx/geom/transform/BaseTransform;
            aload 7 /* blendclip */
         9: .line 770
            aload 5 /* comp */
            aload 6 /* destbuf */
        10: .line 768
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.applyEffectOnAintoC:(Lcom/sun/scenario/effect/Effect;Lcom/sun/scenario/effect/Effect;Lcom/sun/javafx/geom/transform/BaseTransform;Lcom/sun/javafx/geom/Rectangle;Lcom/sun/prism/CompositeMode;Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;)Lcom/sun/javafx/geom/Rectangle;
            pop
        11: .line 771
            return
        end local 7 // com.sun.javafx.geom.Rectangle blendclip
        end local 6 // com.sun.javafx.sg.prism.NGCanvas$RenderBuf destbuf
        end local 5 // com.sun.prism.CompositeMode comp
        end local 4 // com.sun.javafx.geom.RectBounds bounds
        end local 3 // com.sun.javafx.sg.prism.NGCanvas$RenderBuf clipbuf
        end local 2 // com.sun.scenario.effect.Blend$Mode mode
        end local 1 // com.sun.javafx.sg.prism.NGCanvas$RenderBuf drawbuf
        end local 0 // com.sun.javafx.sg.prism.NGCanvas this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   12     0       this  Lcom/sun/javafx/sg/prism/NGCanvas;
            0   12     1    drawbuf  Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            0   12     2       mode  Lcom/sun/scenario/effect/Blend$Mode;
            0   12     3    clipbuf  Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            0   12     4     bounds  Lcom/sun/javafx/geom/RectBounds;
            0   12     5       comp  Lcom/sun/prism/CompositeMode;
            0   12     6    destbuf  Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            5    6     7  blendclip  Lcom/sun/javafx/geom/Rectangle;
            7   12     7  blendclip  Lcom/sun/javafx/geom/Rectangle;
    MethodParameters:
         Name  Flags
      drawbuf  
      mode     
      clipbuf  
      bounds   
      comp     
      destbuf  

  private void setupFill(com.sun.prism.Graphics);
    descriptor: (Lcom/sun/prism/Graphics;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.javafx.sg.prism.NGCanvas this
        start local 1 // com.sun.prism.Graphics gr
         0: .line 774
            aload 1 /* gr */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.fillPaint:Lcom/sun/prism/paint/Paint;
            invokeinterface com.sun.prism.Graphics.setPaint:(Lcom/sun/prism/paint/Paint;)V
         1: .line 775
            return
        end local 1 // com.sun.prism.Graphics gr
        end local 0 // com.sun.javafx.sg.prism.NGCanvas this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/javafx/sg/prism/NGCanvas;
            0    2     1    gr  Lcom/sun/prism/Graphics;
    MethodParameters:
      Name  Flags
      gr    

  private com.sun.prism.BasicStroke getStroke();
    descriptor: ()Lcom/sun/prism/BasicStroke;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=1, args_size=1
        start local 0 // com.sun.javafx.sg.prism.NGCanvas this
         0: .line 778
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.stroke:Lcom/sun/prism/BasicStroke;
            ifnonnull 4
         1: .line 779
            aload 0 /* this */
            new com.sun.prism.BasicStroke
            dup
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.linewidth:F
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.linecap:I
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.linejoin:I
         2: .line 780
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.miterlimit:F
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.dashes:[D
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.dashOffset:F
            invokespecial com.sun.prism.BasicStroke.<init>:(FIIF[DF)V
         3: .line 779
            putfield com.sun.javafx.sg.prism.NGCanvas.stroke:Lcom/sun/prism/BasicStroke;
         4: .line 782
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.stroke:Lcom/sun/prism/BasicStroke;
            areturn
        end local 0 // com.sun.javafx.sg.prism.NGCanvas this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lcom/sun/javafx/sg/prism/NGCanvas;

  private void setupStroke(com.sun.prism.Graphics);
    descriptor: (Lcom/sun/prism/Graphics;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.javafx.sg.prism.NGCanvas this
        start local 1 // com.sun.prism.Graphics gr
         0: .line 786
            aload 1 /* gr */
            aload 0 /* this */
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.getStroke:()Lcom/sun/prism/BasicStroke;
            invokeinterface com.sun.prism.Graphics.setStroke:(Lcom/sun/prism/BasicStroke;)V
         1: .line 787
            aload 1 /* gr */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.strokePaint:Lcom/sun/prism/paint/Paint;
            invokeinterface com.sun.prism.Graphics.setPaint:(Lcom/sun/prism/paint/Paint;)V
         2: .line 788
            return
        end local 1 // com.sun.prism.Graphics gr
        end local 0 // com.sun.javafx.sg.prism.NGCanvas this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/javafx/sg/prism/NGCanvas;
            0    3     1    gr  Lcom/sun/prism/Graphics;
    MethodParameters:
      Name  Flags
      gr    

  private void renderStream(com.sun.javafx.sg.prism.GrowableDataBuffer);
    descriptor: (Lcom/sun/javafx/sg/prism/GrowableDataBuffer;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=13, locals=19, args_size=2
        start local 0 // com.sun.javafx.sg.prism.NGCanvas this
        start local 1 // com.sun.javafx.sg.prism.GrowableDataBuffer buf
         0: .line 808
            goto 241
         1: .line 809
      StackMap locals:
      StackMap stack:
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getByte:()B
            istore 2 /* token */
        start local 2 // int token
         2: .line 810
            iload 2 /* token */
            tableswitch { // 0 - 71
                    0: 107
                    1: 114
                    2: 116
                    3: 118
                    4: 120
                    5: 123
                    6: 126
                    7: 129
                    8: 138
                    9: 142
                   10: 144
                   11: 98
                   12: 166
                   13: 40
                   14: 46
                   15: 49
                   16: 109
                   17: 132
                   18: 135
                   19: 140
                   20: 168
                   21: 168
                   22: 168
                   23: 168
                   24: 168
                   25: 168
                   26: 168
                   27: 168
                   28: 168
                   29: 168
                   30: 168
                   31: 168
                   32: 240
                   33: 240
                   34: 240
                   35: 240
                   36: 240
                   37: 240
                   38: 240
                   39: 240
                   40: 19
                   41: 21
                   42: 23
                   43: 25
                   44: 29
                   45: 34
                   46: 36
                   47: 168
                   48: 168
                   49: 240
                   50: 168
                   51: 168
                   52: 55
                   53: 72
                   54: 240
                   55: 240
                   56: 240
                   57: 240
                   58: 240
                   59: 240
                   60: 146
                   61: 240
                   62: 240
                   63: 240
                   64: 240
                   65: 240
                   66: 240
                   67: 240
                   68: 240
                   69: 240
                   70: 3
                   71: 8
              default: 240
          }
         3: .line 812
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.initAttributes:()V
         4: .line 815
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.tw:I
            putfield com.sun.javafx.sg.prism.NGCanvas.cw:I
         5: .line 816
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.th:I
            putfield com.sun.javafx.sg.prism.NGCanvas.ch:I
         6: .line 817
            aload 0 /* this */
            iconst_0
            iconst_0
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.tw:I
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.th:I
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.clearCanvas:(IIII)V
         7: .line 818
            goto 241
         8: .line 820
      StackMap locals:
      StackMap stack:
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.highestPixelScale:F
            fmul
            f2d
            invokestatic java.lang.Math.ceil:(D)D
            d2i
            istore 3 /* neww */
        start local 3 // int neww
         9: .line 821
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.highestPixelScale:F
            fmul
            f2d
            invokestatic java.lang.Math.ceil:(D)D
            d2i
            istore 4 /* newh */
        start local 4 // int newh
        10: .line 822
            iload 3 /* neww */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cw:I
            invokestatic java.lang.Math.min:(II)I
            istore 5 /* clearx */
        start local 5 // int clearx
        11: .line 823
            iload 4 /* newh */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.ch:I
            invokestatic java.lang.Math.min:(II)I
            istore 6 /* cleary */
        start local 6 // int cleary
        12: .line 824
            iload 5 /* clearx */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.tw:I
            if_icmpge 14
        13: .line 829
            aload 0 /* this */
            iload 5 /* clearx */
            iconst_0
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.tw:I
            iload 5 /* clearx */
            isub
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.th:I
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.clearCanvas:(IIII)V
        14: .line 831
      StackMap locals: com.sun.javafx.sg.prism.NGCanvas com.sun.javafx.sg.prism.GrowableDataBuffer int int int int int
      StackMap stack:
            iload 6 /* cleary */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.th:I
            if_icmpge 16
        15: .line 836
            aload 0 /* this */
            iconst_0
            iload 6 /* cleary */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.tw:I
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.th:I
            iload 6 /* cleary */
            isub
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.clearCanvas:(IIII)V
        16: .line 838
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 3 /* neww */
            putfield com.sun.javafx.sg.prism.NGCanvas.cw:I
        17: .line 839
            aload 0 /* this */
            iload 4 /* newh */
            putfield com.sun.javafx.sg.prism.NGCanvas.ch:I
        18: .line 840
            goto 241
        end local 6 // int cleary
        end local 5 // int clearx
        end local 4 // int newh
        end local 3 // int neww
        19: .line 842
      StackMap locals: com.sun.javafx.sg.prism.NGCanvas com.sun.javafx.sg.prism.GrowableDataBuffer int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.path:Lcom/sun/javafx/geom/Path2D;
            invokevirtual com.sun.javafx.geom.Path2D.reset:()V
        20: .line 843
            goto 241
        21: .line 845
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.path:Lcom/sun/javafx/geom/Path2D;
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            invokevirtual com.sun.javafx.geom.Path2D.moveTo:(FF)V
        22: .line 846
            goto 241
        23: .line 848
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.path:Lcom/sun/javafx/geom/Path2D;
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            invokevirtual com.sun.javafx.geom.Path2D.lineTo:(FF)V
        24: .line 849
            goto 241
        25: .line 851
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.path:Lcom/sun/javafx/geom/Path2D;
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
        26: .line 852
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
        27: .line 851
            invokevirtual com.sun.javafx.geom.Path2D.quadTo:(FFFF)V
        28: .line 853
            goto 241
        29: .line 855
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.path:Lcom/sun/javafx/geom/Path2D;
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
        30: .line 856
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
        31: .line 857
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
        32: .line 855
            invokevirtual com.sun.javafx.geom.Path2D.curveTo:(FFFFFF)V
        33: .line 858
            goto 241
        34: .line 860
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.path:Lcom/sun/javafx/geom/Path2D;
            invokevirtual com.sun.javafx.geom.Path2D.closePath:()V
        35: .line 861
            goto 241
        36: .line 863
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.highestPixelScale:F
            fconst_1
            fcmpl
            ifeq 241
        37: .line 864
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_TX:Lcom/sun/javafx/geom/transform/Affine2D;
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.highestPixelScale:F
            f2d
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.highestPixelScale:F
            f2d
            invokevirtual com.sun.javafx.geom.transform.Affine2D.setToScale:(DD)V
        38: .line 865
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.path:Lcom/sun/javafx/geom/Path2D;
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_TX:Lcom/sun/javafx/geom/transform/Affine2D;
            invokevirtual com.sun.javafx.geom.Path2D.transform:(Lcom/sun/javafx/geom/transform/BaseTransform;)V
        39: .line 867
            goto 241
        40: .line 870
      StackMap locals:
      StackMap stack:
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getObject:()Ljava/lang/Object;
            checkcast com.sun.javafx.geom.Path2D
            astore 7 /* clippath */
        start local 7 // com.sun.javafx.geom.Path2D clippath
        41: .line 871
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.highestPixelScale:F
            fconst_1
            fcmpl
            ifeq 44
        42: .line 872
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_TX:Lcom/sun/javafx/geom/transform/Affine2D;
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.highestPixelScale:F
            f2d
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.highestPixelScale:F
            f2d
            invokevirtual com.sun.javafx.geom.transform.Affine2D.setToScale:(DD)V
        43: .line 873
            aload 7 /* clippath */
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_TX:Lcom/sun/javafx/geom/transform/Affine2D;
            invokevirtual com.sun.javafx.geom.Path2D.transform:(Lcom/sun/javafx/geom/transform/BaseTransform;)V
        44: .line 875
      StackMap locals: com.sun.javafx.sg.prism.NGCanvas com.sun.javafx.sg.prism.GrowableDataBuffer int top top top top com.sun.javafx.geom.Path2D
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clipStack:Ljava/util/LinkedList;
            aload 7 /* clippath */
            invokevirtual java.util.LinkedList.addLast:(Ljava/lang/Object;)V
        45: .line 876
            goto 241
        end local 7 // com.sun.javafx.geom.Path2D clippath
        46: .line 880
      StackMap locals: com.sun.javafx.sg.prism.NGCanvas com.sun.javafx.sg.prism.GrowableDataBuffer int
      StackMap stack:
            aload 0 /* this */
            iconst_1
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.resetClip:(Z)V
        47: .line 881
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clipStack:Ljava/util/LinkedList;
            invokevirtual java.util.LinkedList.removeLast:()Ljava/lang/Object;
            pop
        48: .line 882
            goto 241
        49: .line 885
      StackMap locals:
      StackMap stack:
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getByte:()B
            istore 7 /* type */
        start local 7 // byte type
        50: .line 886
            iload 7 /* type */
            tableswitch { // 0 - 2
                    0: 51
                    1: 52
                    2: 53
              default: 54
          }
        51: .line 887
      StackMap locals: com.sun.javafx.sg.prism.NGCanvas com.sun.javafx.sg.prism.GrowableDataBuffer int top top top top int
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield com.sun.javafx.sg.prism.NGCanvas.arctype:I
            goto 241
        52: .line 888
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield com.sun.javafx.sg.prism.NGCanvas.arctype:I
            goto 241
        53: .line 889
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_2
            putfield com.sun.javafx.sg.prism.NGCanvas.arctype:I
        54: .line 891
      StackMap locals:
      StackMap stack:
            goto 241
        end local 7 // byte type
        55: .line 895
      StackMap locals: com.sun.javafx.sg.prism.NGCanvas com.sun.javafx.sg.prism.GrowableDataBuffer int
      StackMap stack:
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getInt:()I
            i2f
            fstore 7 /* dx1 */
        start local 7 // float dx1
        56: .line 896
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getInt:()I
            i2f
            fstore 8 /* dy1 */
        start local 8 // float dy1
        57: .line 897
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getInt:()I
            istore 9 /* argb */
        start local 9 // int argb
        58: .line 898
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cv:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            getfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.g:Lcom/sun/prism/Graphics;
            astore 10 /* gr */
        start local 10 // com.sun.prism.Graphics gr
        59: .line 899
            aload 10 /* gr */
            fconst_1
            invokeinterface com.sun.prism.Graphics.setExtraAlpha:(F)V
        60: .line 900
            aload 10 /* gr */
            getstatic com.sun.prism.CompositeMode.SRC:Lcom/sun/prism/CompositeMode;
            invokeinterface com.sun.prism.Graphics.setCompositeMode:(Lcom/sun/prism/CompositeMode;)V
        61: .line 901
            aload 10 /* gr */
            getstatic com.sun.javafx.geom.transform.BaseTransform.IDENTITY_TRANSFORM:Lcom/sun/javafx/geom/transform/BaseTransform;
            invokeinterface com.sun.prism.Graphics.setTransform:(Lcom/sun/javafx/geom/transform/BaseTransform;)V
        62: .line 902
            fload 7 /* dx1 */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.highestPixelScale:F
            fmul
            fstore 7 /* dx1 */
        63: .line 903
            fload 8 /* dy1 */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.highestPixelScale:F
            fmul
            fstore 8 /* dy1 */
        64: .line 904
            iload 9 /* argb */
            bipush 24
            iushr
            i2f
            ldc 255.0
            fdiv
            fstore 11 /* a */
        start local 11 // float a
        65: .line 905
            iload 9 /* argb */
            bipush 16
            ishr
            sipush 255
            iand
            i2f
            ldc 255.0
            fdiv
            fstore 12 /* r */
        start local 12 // float r
        66: .line 906
            iload 9 /* argb */
            bipush 8
            ishr
            sipush 255
            iand
            i2f
            ldc 255.0
            fdiv
            fstore 13 /* g */
        start local 13 // float g
        67: .line 907
            iload 9 /* argb */
            sipush 255
            iand
            i2f
            ldc 255.0
            fdiv
            fstore 14 /* b */
        start local 14 // float b
        68: .line 908
            aload 10 /* gr */
            new com.sun.prism.paint.Color
            dup
            fload 12 /* r */
            fload 13 /* g */
            fload 14 /* b */
            fload 11 /* a */
            invokespecial com.sun.prism.paint.Color.<init>:(FFFF)V
            invokeinterface com.sun.prism.Graphics.setPaint:(Lcom/sun/prism/paint/Paint;)V
        69: .line 913
            aload 10 /* gr */
            fload 7 /* dx1 */
            fload 8 /* dy1 */
            fload 7 /* dx1 */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.highestPixelScale:F
            fadd
            fload 8 /* dy1 */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.highestPixelScale:F
            fadd
            invokeinterface com.sun.prism.Graphics.fillQuad:(FFFF)V
        70: .line 914
            aload 10 /* gr */
            getstatic com.sun.prism.CompositeMode.SRC_OVER:Lcom/sun/prism/CompositeMode;
            invokeinterface com.sun.prism.Graphics.setCompositeMode:(Lcom/sun/prism/CompositeMode;)V
        71: .line 915
            goto 241
        end local 14 // float b
        end local 13 // float g
        end local 12 // float r
        end local 11 // float a
        end local 10 // com.sun.prism.Graphics gr
        end local 9 // int argb
        end local 8 // float dy1
        end local 7 // float dx1
        72: .line 919
      StackMap locals:
      StackMap stack:
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getInt:()I
            i2f
            fstore 7 /* dx1 */
        start local 7 // float dx1
        73: .line 920
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getInt:()I
            i2f
            fstore 8 /* dy1 */
        start local 8 // float dy1
        74: .line 921
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getInt:()I
            istore 9 /* w */
        start local 9 // int w
        75: .line 922
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getInt:()I
            istore 10 /* h */
        start local 10 // int h
        76: .line 923
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getObject:()Ljava/lang/Object;
            checkcast byte[]
            astore 11 /* data */
        start local 11 // byte[] data
        77: .line 924
            aload 11 /* data */
            iload 9 /* w */
            iload 10 /* h */
            invokestatic com.sun.prism.Image.fromByteBgraPreData:([BII)Lcom/sun/prism/Image;
            astore 12 /* img */
        start local 12 // com.sun.prism.Image img
        78: .line 925
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cv:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            getfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.g:Lcom/sun/prism/Graphics;
            astore 13 /* gr */
        start local 13 // com.sun.prism.Graphics gr
        79: .line 926
            aload 13 /* gr */
            invokeinterface com.sun.prism.Graphics.getResourceFactory:()Lcom/sun/prism/ResourceFactory;
            astore 14 /* factory */
        start local 14 // com.sun.prism.ResourceFactory factory
        80: .line 928
            aload 14 /* factory */
            aload 12 /* img */
            getstatic com.sun.prism.Texture$WrapMode.CLAMP_TO_EDGE:Lcom/sun/prism/Texture$WrapMode;
            invokeinterface com.sun.prism.ResourceFactory.getCachedTexture:(Lcom/sun/prism/Image;Lcom/sun/prism/Texture$WrapMode;)Lcom/sun/prism/Texture;
        81: .line 927
            astore 15 /* tex */
        start local 15 // com.sun.prism.Texture tex
        82: .line 929
            aload 13 /* gr */
            getstatic com.sun.javafx.geom.transform.BaseTransform.IDENTITY_TRANSFORM:Lcom/sun/javafx/geom/transform/BaseTransform;
            invokeinterface com.sun.prism.Graphics.setTransform:(Lcom/sun/javafx/geom/transform/BaseTransform;)V
        83: .line 930
            aload 13 /* gr */
            getstatic com.sun.prism.CompositeMode.SRC:Lcom/sun/prism/CompositeMode;
            invokeinterface com.sun.prism.Graphics.setCompositeMode:(Lcom/sun/prism/CompositeMode;)V
        84: .line 931
            fload 7 /* dx1 */
            iload 9 /* w */
            i2f
            fadd
            fstore 16 /* dx2 */
        start local 16 // float dx2
        85: .line 932
            fload 8 /* dy1 */
            iload 10 /* h */
            i2f
            fadd
            fstore 17 /* dy2 */
        start local 17 // float dy2
        86: .line 933
            fload 7 /* dx1 */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.highestPixelScale:F
            fmul
            fstore 7 /* dx1 */
        87: .line 934
            fload 8 /* dy1 */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.highestPixelScale:F
            fmul
            fstore 8 /* dy1 */
        88: .line 935
            fload 16 /* dx2 */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.highestPixelScale:F
            fmul
            fstore 16 /* dx2 */
        89: .line 936
            fload 17 /* dy2 */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.highestPixelScale:F
            fmul
            fstore 17 /* dy2 */
        90: .line 937
            aload 13 /* gr */
            aload 15 /* tex */
        91: .line 938
            fload 7 /* dx1 */
            fload 8 /* dy1 */
            fload 16 /* dx2 */
            fload 17 /* dy2 */
        92: .line 939
            fconst_0
            fconst_0
            iload 9 /* w */
            i2f
            iload 10 /* h */
            i2f
        93: .line 937
            invokeinterface com.sun.prism.Graphics.drawTexture:(Lcom/sun/prism/Texture;FFFFFFFF)V
        94: .line 940
            aload 15 /* tex */
            invokeinterface com.sun.prism.Texture.contentsNotUseful:()V
        95: .line 941
            aload 15 /* tex */
            invokeinterface com.sun.prism.Texture.unlock:()V
        96: .line 942
            aload 13 /* gr */
            getstatic com.sun.prism.CompositeMode.SRC_OVER:Lcom/sun/prism/CompositeMode;
            invokeinterface com.sun.prism.Graphics.setCompositeMode:(Lcom/sun/prism/CompositeMode;)V
        97: .line 943
            goto 241
        end local 17 // float dy2
        end local 16 // float dx2
        end local 15 // com.sun.prism.Texture tex
        end local 14 // com.sun.prism.ResourceFactory factory
        end local 13 // com.sun.prism.Graphics gr
        end local 12 // com.sun.prism.Image img
        end local 11 // byte[] data
        end local 10 // int h
        end local 9 // int w
        end local 8 // float dy1
        end local 7 // float dx1
        98: .line 947
      StackMap locals:
      StackMap stack:
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getDouble:()D
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.highestPixelScale:F
            f2d
            dmul
            dstore 7 /* mxx */
        start local 7 // double mxx
        99: .line 948
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getDouble:()D
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.highestPixelScale:F
            f2d
            dmul
            dstore 9 /* mxy */
        start local 9 // double mxy
       100: .line 949
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getDouble:()D
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.highestPixelScale:F
            f2d
            dmul
            dstore 11 /* mxt */
        start local 11 // double mxt
       101: .line 950
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getDouble:()D
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.highestPixelScale:F
            f2d
            dmul
            dstore 13 /* myx */
        start local 13 // double myx
       102: .line 951
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getDouble:()D
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.highestPixelScale:F
            f2d
            dmul
            dstore 15 /* myy */
        start local 15 // double myy
       103: .line 952
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getDouble:()D
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.highestPixelScale:F
            f2d
            dmul
            dstore 17 /* myt */
        start local 17 // double myt
       104: .line 953
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.transform:Lcom/sun/javafx/geom/transform/Affine2D;
            dload 7 /* mxx */
            dload 13 /* myx */
            dload 9 /* mxy */
            dload 15 /* myy */
            dload 11 /* mxt */
            dload 17 /* myt */
            invokevirtual com.sun.javafx.geom.transform.Affine2D.setTransform:(DDDDDD)V
       105: .line 954
            aload 0 /* this */
            iconst_1
            putfield com.sun.javafx.sg.prism.NGCanvas.inversedirty:Z
       106: .line 955
            goto 241
        end local 17 // double myt
        end local 15 // double myy
        end local 13 // double myx
        end local 11 // double mxt
        end local 9 // double mxy
        end local 7 // double mxx
       107: .line 958
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            putfield com.sun.javafx.sg.prism.NGCanvas.globalAlpha:F
       108: .line 959
            goto 241
       109: .line 961
      StackMap locals:
      StackMap stack:
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getByte:()B
            ifne 112
       110: .line 962
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.path:Lcom/sun/javafx/geom/Path2D;
            iconst_1
            invokevirtual com.sun.javafx.geom.Path2D.setWindingRule:(I)V
       111: .line 963
            goto 241
       112: .line 964
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.path:Lcom/sun/javafx/geom/Path2D;
            iconst_0
            invokevirtual com.sun.javafx.geom.Path2D.setWindingRule:(I)V
       113: .line 966
            goto 241
       114: .line 968
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getObject:()Ljava/lang/Object;
            checkcast com.sun.scenario.effect.Blend$Mode
            putfield com.sun.javafx.sg.prism.NGCanvas.blendmode:Lcom/sun/scenario/effect/Blend$Mode;
       115: .line 969
            goto 241
       116: .line 971
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getObject:()Ljava/lang/Object;
            checkcast com.sun.prism.paint.Paint
            putfield com.sun.javafx.sg.prism.NGCanvas.fillPaint:Lcom/sun/prism/paint/Paint;
       117: .line 972
            goto 241
       118: .line 974
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getObject:()Ljava/lang/Object;
            checkcast com.sun.prism.paint.Paint
            putfield com.sun.javafx.sg.prism.NGCanvas.strokePaint:Lcom/sun/prism/paint/Paint;
       119: .line 975
            goto 241
       120: .line 977
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            putfield com.sun.javafx.sg.prism.NGCanvas.linewidth:F
       121: .line 978
            aload 0 /* this */
            aconst_null
            putfield com.sun.javafx.sg.prism.NGCanvas.stroke:Lcom/sun/prism/BasicStroke;
       122: .line 979
            goto 241
       123: .line 981
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic com.sun.javafx.sg.prism.NGCanvas.prcaps:[I
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getUByte:()I
            iaload
            putfield com.sun.javafx.sg.prism.NGCanvas.linecap:I
       124: .line 982
            aload 0 /* this */
            aconst_null
            putfield com.sun.javafx.sg.prism.NGCanvas.stroke:Lcom/sun/prism/BasicStroke;
       125: .line 983
            goto 241
       126: .line 985
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic com.sun.javafx.sg.prism.NGCanvas.prjoins:[I
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getUByte:()I
            iaload
            putfield com.sun.javafx.sg.prism.NGCanvas.linejoin:I
       127: .line 986
            aload 0 /* this */
            aconst_null
            putfield com.sun.javafx.sg.prism.NGCanvas.stroke:Lcom/sun/prism/BasicStroke;
       128: .line 987
            goto 241
       129: .line 989
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            putfield com.sun.javafx.sg.prism.NGCanvas.miterlimit:F
       130: .line 990
            aload 0 /* this */
            aconst_null
            putfield com.sun.javafx.sg.prism.NGCanvas.stroke:Lcom/sun/prism/BasicStroke;
       131: .line 991
            goto 241
       132: .line 993
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getObject:()Ljava/lang/Object;
            checkcast double[]
            putfield com.sun.javafx.sg.prism.NGCanvas.dashes:[D
       133: .line 994
            aload 0 /* this */
            aconst_null
            putfield com.sun.javafx.sg.prism.NGCanvas.stroke:Lcom/sun/prism/BasicStroke;
       134: .line 995
            goto 241
       135: .line 997
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            putfield com.sun.javafx.sg.prism.NGCanvas.dashOffset:F
       136: .line 998
            aload 0 /* this */
            aconst_null
            putfield com.sun.javafx.sg.prism.NGCanvas.stroke:Lcom/sun/prism/BasicStroke;
       137: .line 999
            goto 241
       138: .line 1001
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getObject:()Ljava/lang/Object;
            checkcast com.sun.javafx.font.PGFont
            putfield com.sun.javafx.sg.prism.NGCanvas.pgfont:Lcom/sun/javafx/font/PGFont;
       139: .line 1002
            goto 241
       140: .line 1004
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getUByte:()I
            putfield com.sun.javafx.sg.prism.NGCanvas.smoothing:I
       141: .line 1005
            goto 241
       142: .line 1007
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getUByte:()I
            putfield com.sun.javafx.sg.prism.NGCanvas.align:I
       143: .line 1008
            goto 241
       144: .line 1010
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic com.sun.javafx.sg.prism.NGCanvas.prbases:[I
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getUByte:()I
            iaload
            putfield com.sun.javafx.sg.prism.NGCanvas.baseline:I
       145: .line 1011
            goto 241
       146: .line 1014
      StackMap locals:
      StackMap stack:
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getObject:()Ljava/lang/Object;
            checkcast com.sun.scenario.effect.Effect
            astore 7 /* e */
        start local 7 // com.sun.scenario.effect.Effect e
       147: .line 1015
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clipStack:Ljava/util/LinkedList;
            invokevirtual java.util.LinkedList.isEmpty:()Z
            ifeq 148
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cv:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            goto 149
      StackMap locals: com.sun.javafx.sg.prism.NGCanvas com.sun.javafx.sg.prism.GrowableDataBuffer int top top top top com.sun.scenario.effect.Effect
      StackMap stack:
       148: aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.temp:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
      StackMap locals:
      StackMap stack: com.sun.javafx.sg.prism.NGCanvas$RenderBuf
       149: astore 8 /* dest */
        start local 8 // com.sun.javafx.sg.prism.NGCanvas$RenderBuf dest
       150: .line 1017
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.highestPixelScale:F
            fconst_1
            fcmpl
            ifeq 155
       151: .line 1018
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_TX:Lcom/sun/javafx/geom/transform/Affine2D;
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.highestPixelScale:F
            f2d
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.highestPixelScale:F
            f2d
            invokevirtual com.sun.javafx.geom.transform.Affine2D.setToScale:(DD)V
       152: .line 1019
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_TX:Lcom/sun/javafx/geom/transform/Affine2D;
            astore 9 /* tx */
        start local 9 // com.sun.javafx.geom.transform.BaseTransform tx
       153: .line 1020
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cv:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            getfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.input:Lcom/sun/javafx/sg/prism/NGCanvas$EffectInput;
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.highestPixelScale:F
            invokevirtual com.sun.javafx.sg.prism.NGCanvas$EffectInput.setPixelScale:(F)V
       154: .line 1021
            goto 156
        end local 9 // com.sun.javafx.geom.transform.BaseTransform tx
       155: .line 1022
      StackMap locals: com.sun.javafx.sg.prism.NGCanvas$RenderBuf
      StackMap stack:
            getstatic com.sun.javafx.geom.transform.BaseTransform.IDENTITY_TRANSFORM:Lcom/sun/javafx/geom/transform/BaseTransform;
            astore 9 /* tx */
        start local 9 // com.sun.javafx.geom.transform.BaseTransform tx
       156: .line 1024
      StackMap locals: com.sun.javafx.geom.transform.BaseTransform
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cv:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            getfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.input:Lcom/sun/javafx/sg/prism/NGCanvas$EffectInput;
            aload 7 /* e */
       157: .line 1025
            aload 9 /* tx */
            aconst_null
       158: .line 1026
            getstatic com.sun.prism.CompositeMode.SRC:Lcom/sun/prism/CompositeMode;
            aload 8 /* dest */
       159: .line 1024
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.applyEffectOnAintoC:(Lcom/sun/scenario/effect/Effect;Lcom/sun/scenario/effect/Effect;Lcom/sun/javafx/geom/transform/BaseTransform;Lcom/sun/javafx/geom/Rectangle;Lcom/sun/prism/CompositeMode;Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;)Lcom/sun/javafx/geom/Rectangle;
            pop
       160: .line 1027
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cv:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            getfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.input:Lcom/sun/javafx/sg/prism/NGCanvas$EffectInput;
            fconst_1
            invokevirtual com.sun.javafx.sg.prism.NGCanvas$EffectInput.setPixelScale:(F)V
       161: .line 1028
            aload 8 /* dest */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cv:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            if_acmpeq 241
       162: .line 1029
            aload 0 /* this */
            aload 8 /* dest */
            getstatic com.sun.scenario.effect.Blend$Mode.SRC_IN:Lcom/sun/scenario/effect/Blend$Mode;
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clip:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
       163: .line 1030
            aconst_null
            getstatic com.sun.prism.CompositeMode.SRC:Lcom/sun/prism/CompositeMode;
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cv:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
       164: .line 1029
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.blendAthruBintoC:(Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;Lcom/sun/scenario/effect/Blend$Mode;Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;Lcom/sun/javafx/geom/RectBounds;Lcom/sun/prism/CompositeMode;Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;)V
       165: .line 1032
            goto 241
        end local 9 // com.sun.javafx.geom.transform.BaseTransform tx
        end local 8 // com.sun.javafx.sg.prism.NGCanvas$RenderBuf dest
        end local 7 // com.sun.scenario.effect.Effect e
       166: .line 1035
      StackMap locals: com.sun.javafx.sg.prism.NGCanvas com.sun.javafx.sg.prism.GrowableDataBuffer int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getObject:()Ljava/lang/Object;
            checkcast com.sun.scenario.effect.Effect
            putfield com.sun.javafx.sg.prism.NGCanvas.effect:Lcom/sun/scenario/effect/Effect;
       167: .line 1036
            goto 241
       168: .line 1056
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.initClip:()Z
            istore 9 /* clipvalidated */
        start local 9 // boolean clipvalidated
       169: .line 1057
            iload 9 /* clipvalidated */
            ifeq 174
       170: .line 1058
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.temp:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cv:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            getfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.g:Lcom/sun/prism/Graphics;
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.tw:I
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.th:I
            invokevirtual com.sun.javafx.sg.prism.NGCanvas$RenderBuf.validate:(Lcom/sun/prism/Graphics;II)Z
            pop
       171: .line 1059
            iconst_1
            istore 8 /* tempvalidated */
        start local 8 // boolean tempvalidated
       172: .line 1060
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.temp:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            astore 7 /* dest */
        start local 7 // com.sun.javafx.sg.prism.NGCanvas$RenderBuf dest
       173: .line 1061
            goto 181
        end local 8 // boolean tempvalidated
        end local 7 // com.sun.javafx.sg.prism.NGCanvas$RenderBuf dest
      StackMap locals: com.sun.javafx.sg.prism.NGCanvas com.sun.javafx.sg.prism.GrowableDataBuffer int top top top top top top int
      StackMap stack:
       174: aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.blendmode:Lcom/sun/scenario/effect/Blend$Mode;
            getstatic com.sun.scenario.effect.Blend$Mode.SRC_OVER:Lcom/sun/scenario/effect/Blend$Mode;
            if_acmpeq 179
       175: .line 1062
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.temp:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cv:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            getfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.g:Lcom/sun/prism/Graphics;
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.tw:I
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.th:I
            invokevirtual com.sun.javafx.sg.prism.NGCanvas$RenderBuf.validate:(Lcom/sun/prism/Graphics;II)Z
            pop
       176: .line 1063
            iconst_1
            istore 8 /* tempvalidated */
        start local 8 // boolean tempvalidated
       177: .line 1064
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.temp:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            astore 7 /* dest */
        start local 7 // com.sun.javafx.sg.prism.NGCanvas$RenderBuf dest
       178: .line 1065
            goto 181
        end local 8 // boolean tempvalidated
        end local 7 // com.sun.javafx.sg.prism.NGCanvas$RenderBuf dest
       179: .line 1066
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 8 /* tempvalidated */
        start local 8 // boolean tempvalidated
       180: .line 1067
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cv:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            astore 7 /* dest */
        start local 7 // com.sun.javafx.sg.prism.NGCanvas$RenderBuf dest
       181: .line 1069
      StackMap locals: com.sun.javafx.sg.prism.NGCanvas com.sun.javafx.sg.prism.GrowableDataBuffer int top top top top com.sun.javafx.sg.prism.NGCanvas$RenderBuf int int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.effect:Lcom/sun/scenario/effect/Effect;
            ifnull 197
       182: .line 1070
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.save:()V
       183: .line 1071
            aload 0 /* this */
            iload 2 /* token */
            aload 1 /* buf */
            aconst_null
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_RECTBOUNDS:Lcom/sun/javafx/geom/RectBounds;
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.handleRenderOp:(ILcom/sun/javafx/sg/prism/GrowableDataBuffer;Lcom/sun/prism/Graphics;Lcom/sun/javafx/geom/RectBounds;)V
       184: .line 1073
            new com.sun.javafx.sg.prism.NGCanvas$RenderInput
            dup
            aload 0 /* this */
            iload 2 /* token */
            aload 1 /* buf */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.transform:Lcom/sun/javafx/geom/transform/Affine2D;
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_RECTBOUNDS:Lcom/sun/javafx/geom/RectBounds;
            invokespecial com.sun.javafx.sg.prism.NGCanvas$RenderInput.<init>:(Lcom/sun/javafx/sg/prism/NGCanvas;ILcom/sun/javafx/sg/prism/GrowableDataBuffer;Lcom/sun/javafx/geom/transform/BaseTransform;Lcom/sun/javafx/geom/RectBounds;)V
       185: .line 1072
            astore 10 /* ri */
        start local 10 // com.sun.javafx.sg.prism.NGCanvas$RenderInput ri
       186: .line 1081
            aload 0 /* this */
            aload 10 /* ri */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.effect:Lcom/sun/scenario/effect/Effect;
       187: .line 1082
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.transform:Lcom/sun/javafx/geom/transform/Affine2D;
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clipRect:Lcom/sun/javafx/geom/Rectangle;
       188: .line 1083
            getstatic com.sun.prism.CompositeMode.SRC_OVER:Lcom/sun/prism/CompositeMode;
            aload 7 /* dest */
       189: .line 1081
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.applyEffectOnAintoC:(Lcom/sun/scenario/effect/Effect;Lcom/sun/scenario/effect/Effect;Lcom/sun/javafx/geom/transform/BaseTransform;Lcom/sun/javafx/geom/Rectangle;Lcom/sun/prism/CompositeMode;Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;)Lcom/sun/javafx/geom/Rectangle;
       190: .line 1080
            astore 11 /* resultBounds */
        start local 11 // com.sun.javafx.geom.Rectangle resultBounds
       191: .line 1084
            aload 7 /* dest */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cv:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            if_acmpeq 206
       192: .line 1085
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_RECTBOUNDS:Lcom/sun/javafx/geom/RectBounds;
            aload 11 /* resultBounds */
            getfield com.sun.javafx.geom.Rectangle.x:I
            i2f
            aload 11 /* resultBounds */
            getfield com.sun.javafx.geom.Rectangle.y:I
            i2f
       193: .line 1086
            aload 11 /* resultBounds */
            getfield com.sun.javafx.geom.Rectangle.x:I
            aload 11 /* resultBounds */
            getfield com.sun.javafx.geom.Rectangle.width:I
            iadd
            i2f
       194: .line 1087
            aload 11 /* resultBounds */
            getfield com.sun.javafx.geom.Rectangle.y:I
            aload 11 /* resultBounds */
            getfield com.sun.javafx.geom.Rectangle.height:I
            iadd
            i2f
       195: .line 1085
            invokevirtual com.sun.javafx.geom.RectBounds.setBounds:(FFFF)V
        end local 11 // com.sun.javafx.geom.Rectangle resultBounds
        end local 10 // com.sun.javafx.sg.prism.NGCanvas$RenderInput ri
       196: .line 1089
            goto 206
       197: .line 1090
      StackMap locals:
      StackMap stack:
            aload 7 /* dest */
            getfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.g:Lcom/sun/prism/Graphics;
            astore 10 /* g */
        start local 10 // com.sun.prism.Graphics g
       198: .line 1091
            aload 10 /* g */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.globalAlpha:F
            invokeinterface com.sun.prism.Graphics.setExtraAlpha:(F)V
       199: .line 1092
            aload 10 /* g */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.transform:Lcom/sun/javafx/geom/transform/Affine2D;
            invokeinterface com.sun.prism.Graphics.setTransform:(Lcom/sun/javafx/geom/transform/BaseTransform;)V
       200: .line 1093
            aload 10 /* g */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clipRect:Lcom/sun/javafx/geom/Rectangle;
            invokeinterface com.sun.prism.Graphics.setClipRect:(Lcom/sun/javafx/geom/Rectangle;)V
       201: .line 1097
            aload 7 /* dest */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cv:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            if_acmpeq 202
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_RECTBOUNDS:Lcom/sun/javafx/geom/RectBounds;
            goto 203
      StackMap locals: com.sun.prism.Graphics
      StackMap stack:
       202: aconst_null
       203: .line 1096
      StackMap locals:
      StackMap stack: com.sun.javafx.geom.RectBounds
            astore 11 /* optSaveBounds */
        start local 11 // com.sun.javafx.geom.RectBounds optSaveBounds
       204: .line 1098
            aload 0 /* this */
            iload 2 /* token */
            aload 1 /* buf */
            aload 10 /* g */
            aload 11 /* optSaveBounds */
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.handleRenderOp:(ILcom/sun/javafx/sg/prism/GrowableDataBuffer;Lcom/sun/prism/Graphics;Lcom/sun/javafx/geom/RectBounds;)V
       205: .line 1099
            aload 10 /* g */
            aconst_null
            invokeinterface com.sun.prism.Graphics.setClipRect:(Lcom/sun/javafx/geom/Rectangle;)V
        end local 11 // com.sun.javafx.geom.RectBounds optSaveBounds
        end local 10 // com.sun.prism.Graphics g
       206: .line 1101
      StackMap locals:
      StackMap stack:
            iload 9 /* clipvalidated */
            ifeq 229
       207: .line 1103
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.blendmode:Lcom/sun/scenario/effect/Blend$Mode;
            getstatic com.sun.scenario.effect.Blend$Mode.SRC_OVER:Lcom/sun/scenario/effect/Blend$Mode;
            if_acmpne 211
       208: .line 1107
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cv:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            astore 7 /* dest */
       209: .line 1108
            getstatic com.sun.prism.CompositeMode.SRC_OVER:Lcom/sun/prism/CompositeMode;
            astore 10 /* compmode */
        start local 10 // com.sun.prism.CompositeMode compmode
       210: .line 1109
            goto 212
        end local 10 // com.sun.prism.CompositeMode compmode
       211: .line 1117
      StackMap locals:
      StackMap stack:
            getstatic com.sun.prism.CompositeMode.SRC:Lcom/sun/prism/CompositeMode;
            astore 10 /* compmode */
        start local 10 // com.sun.prism.CompositeMode compmode
       212: .line 1119
      StackMap locals: com.sun.prism.CompositeMode
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clipRect:Lcom/sun/javafx/geom/Rectangle;
            ifnull 214
       213: .line 1120
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_RECTBOUNDS:Lcom/sun/javafx/geom/RectBounds;
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clipRect:Lcom/sun/javafx/geom/Rectangle;
            invokevirtual com.sun.javafx.geom.RectBounds.intersectWith:(Lcom/sun/javafx/geom/Rectangle;)V
       214: .line 1122
      StackMap locals:
      StackMap stack:
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_RECTBOUNDS:Lcom/sun/javafx/geom/RectBounds;
            invokevirtual com.sun.javafx.geom.RectBounds.isEmpty:()Z
            ifne 229
       215: .line 1123
            aload 7 /* dest */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cv:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            if_acmpne 226
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cv:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            getfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.g:Lcom/sun/prism/Graphics;
            instanceof com.sun.prism.MaskTextureGraphics
            ifeq 226
       216: .line 1124
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cv:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            getfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.g:Lcom/sun/prism/Graphics;
            checkcast com.sun.prism.MaskTextureGraphics
            astore 11 /* mtg */
        start local 11 // com.sun.prism.MaskTextureGraphics mtg
       217: .line 1125
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_RECTBOUNDS:Lcom/sun/javafx/geom/RectBounds;
            invokevirtual com.sun.javafx.geom.RectBounds.getMinX:()F
            f2d
            invokestatic java.lang.Math.floor:(D)D
            d2i
            istore 12 /* dx */
        start local 12 // int dx
       218: .line 1126
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_RECTBOUNDS:Lcom/sun/javafx/geom/RectBounds;
            invokevirtual com.sun.javafx.geom.RectBounds.getMinY:()F
            f2d
            invokestatic java.lang.Math.floor:(D)D
            d2i
            istore 13 /* dy */
        start local 13 // int dy
       219: .line 1127
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_RECTBOUNDS:Lcom/sun/javafx/geom/RectBounds;
            invokevirtual com.sun.javafx.geom.RectBounds.getMaxX:()F
            f2d
            invokestatic java.lang.Math.ceil:(D)D
            d2i
            iload 12 /* dx */
            isub
            istore 14 /* dw */
        start local 14 // int dw
       220: .line 1128
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_RECTBOUNDS:Lcom/sun/javafx/geom/RectBounds;
            invokevirtual com.sun.javafx.geom.RectBounds.getMaxY:()F
            f2d
            invokestatic java.lang.Math.ceil:(D)D
            d2i
            iload 13 /* dy */
            isub
            istore 15 /* dh */
        start local 15 // int dh
       221: .line 1129
            aload 11 /* mtg */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.temp:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            getfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.tex:Lcom/sun/prism/RTTexture;
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clip:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            getfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.tex:Lcom/sun/prism/RTTexture;
       222: .line 1130
            iload 12 /* dx */
            iload 13 /* dy */
            iload 14 /* dw */
            iload 15 /* dh */
       223: .line 1131
            iload 12 /* dx */
            iload 13 /* dy */
            iload 12 /* dx */
            iload 13 /* dy */
       224: .line 1129
            invokeinterface com.sun.prism.MaskTextureGraphics.drawPixelsMasked:(Lcom/sun/prism/RTTexture;Lcom/sun/prism/RTTexture;IIIIIIII)V
        end local 15 // int dh
        end local 14 // int dw
        end local 13 // int dy
        end local 12 // int dx
        end local 11 // com.sun.prism.MaskTextureGraphics mtg
       225: .line 1132
            goto 229
       226: .line 1133
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.temp:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            getstatic com.sun.scenario.effect.Blend$Mode.SRC_IN:Lcom/sun/scenario/effect/Blend$Mode;
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clip:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
       227: .line 1134
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_RECTBOUNDS:Lcom/sun/javafx/geom/RectBounds;
            aload 10 /* compmode */
            aload 7 /* dest */
       228: .line 1133
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.blendAthruBintoC:(Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;Lcom/sun/scenario/effect/Blend$Mode;Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;Lcom/sun/javafx/geom/RectBounds;Lcom/sun/prism/CompositeMode;Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;)V
        end local 10 // com.sun.prism.CompositeMode compmode
       229: .line 1138
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.blendmode:Lcom/sun/scenario/effect/Blend$Mode;
            getstatic com.sun.scenario.effect.Blend$Mode.SRC_OVER:Lcom/sun/scenario/effect/Blend$Mode;
            if_acmpeq 235
       230: .line 1143
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clipRect:Lcom/sun/javafx/geom/Rectangle;
            ifnull 232
       231: .line 1144
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_RECTBOUNDS:Lcom/sun/javafx/geom/RectBounds;
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clipRect:Lcom/sun/javafx/geom/Rectangle;
            invokevirtual com.sun.javafx.geom.RectBounds.intersectWith:(Lcom/sun/javafx/geom/Rectangle;)V
       232: .line 1146
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.temp:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.blendmode:Lcom/sun/scenario/effect/Blend$Mode;
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cv:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
       233: .line 1147
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_RECTBOUNDS:Lcom/sun/javafx/geom/RectBounds;
            getstatic com.sun.prism.CompositeMode.SRC:Lcom/sun/prism/CompositeMode;
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cv:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
       234: .line 1146
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.blendAthruBintoC:(Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;Lcom/sun/scenario/effect/Blend$Mode;Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;Lcom/sun/javafx/geom/RectBounds;Lcom/sun/prism/CompositeMode;Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;)V
       235: .line 1149
      StackMap locals:
      StackMap stack:
            iload 9 /* clipvalidated */
            ifeq 237
       236: .line 1150
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clip:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            getfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.tex:Lcom/sun/prism/RTTexture;
            invokeinterface com.sun.prism.RTTexture.unlock:()V
       237: .line 1152
      StackMap locals:
      StackMap stack:
            iload 8 /* tempvalidated */
            ifeq 241
       238: .line 1153
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.temp:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            getfield com.sun.javafx.sg.prism.NGCanvas$RenderBuf.tex:Lcom/sun/prism/RTTexture;
            invokeinterface com.sun.prism.RTTexture.unlock:()V
       239: .line 1155
            goto 241
        end local 9 // boolean clipvalidated
        end local 8 // boolean tempvalidated
        end local 7 // com.sun.javafx.sg.prism.NGCanvas$RenderBuf dest
       240: .line 1158
      StackMap locals: com.sun.javafx.sg.prism.NGCanvas com.sun.javafx.sg.prism.GrowableDataBuffer int
      StackMap stack:
            new java.lang.InternalError
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unrecognized PGCanvas token: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 2 /* token */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
            athrow
        end local 2 // int token
       241: .line 808
      StackMap locals:
      StackMap stack:
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.hasValues:()Z
            ifne 1
       242: .line 1161
            return
        end local 1 // com.sun.javafx.sg.prism.GrowableDataBuffer buf
        end local 0 // com.sun.javafx.sg.prism.NGCanvas this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0  243     0           this  Lcom/sun/javafx/sg/prism/NGCanvas;
            0  243     1            buf  Lcom/sun/javafx/sg/prism/GrowableDataBuffer;
            2  241     2          token  I
            9   19     3           neww  I
           10   19     4           newh  I
           11   19     5         clearx  I
           12   19     6         cleary  I
           41   46     7       clippath  Lcom/sun/javafx/geom/Path2D;
           50   55     7           type  B
           56   72     7            dx1  F
           57   72     8            dy1  F
           58   72     9           argb  I
           59   72    10             gr  Lcom/sun/prism/Graphics;
           65   72    11              a  F
           66   72    12              r  F
           67   72    13              g  F
           68   72    14              b  F
           73   98     7            dx1  F
           74   98     8            dy1  F
           75   98     9              w  I
           76   98    10              h  I
           77   98    11           data  [B
           78   98    12            img  Lcom/sun/prism/Image;
           79   98    13             gr  Lcom/sun/prism/Graphics;
           80   98    14        factory  Lcom/sun/prism/ResourceFactory;
           82   98    15            tex  Lcom/sun/prism/Texture;
           85   98    16            dx2  F
           86   98    17            dy2  F
           99  107     7            mxx  D
          100  107     9            mxy  D
          101  107    11            mxt  D
          102  107    13            myx  D
          103  107    15            myy  D
          104  107    17            myt  D
          147  166     7              e  Lcom/sun/scenario/effect/Effect;
          150  166     8           dest  Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
          153  155     9             tx  Lcom/sun/javafx/geom/transform/BaseTransform;
          156  166     9             tx  Lcom/sun/javafx/geom/transform/BaseTransform;
          173  174     7           dest  Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
          178  179     7           dest  Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
          181  240     7           dest  Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
          172  174     8  tempvalidated  Z
          177  179     8  tempvalidated  Z
          180  240     8  tempvalidated  Z
          169  240     9  clipvalidated  Z
          186  196    10             ri  Lcom/sun/javafx/sg/prism/NGCanvas$RenderInput;
          191  196    11   resultBounds  Lcom/sun/javafx/geom/Rectangle;
          198  206    10              g  Lcom/sun/prism/Graphics;
          204  206    11  optSaveBounds  Lcom/sun/javafx/geom/RectBounds;
          210  211    10       compmode  Lcom/sun/prism/CompositeMode;
          212  229    10       compmode  Lcom/sun/prism/CompositeMode;
          217  225    11            mtg  Lcom/sun/prism/MaskTextureGraphics;
          218  225    12             dx  I
          219  225    13             dy  I
          220  225    14             dw  I
          221  225    15             dh  I
    MethodParameters:
      Name  Flags
      buf   

  public void handleRenderOp(int, com.sun.javafx.sg.prism.GrowableDataBuffer, com.sun.prism.Graphics, com.sun.javafx.geom.RectBounds);
    descriptor: (ILcom/sun/javafx/sg/prism/GrowableDataBuffer;Lcom/sun/prism/Graphics;Lcom/sun/javafx/geom/RectBounds;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=11, locals=22, args_size=5
        start local 0 // com.sun.javafx.sg.prism.NGCanvas this
        start local 1 // int token
        start local 2 // com.sun.javafx.sg.prism.GrowableDataBuffer buf
        start local 3 // com.sun.prism.Graphics gr
        start local 4 // com.sun.javafx.geom.RectBounds bounds
         0: .line 1176
            iconst_0
            istore 5 /* strokeBounds */
        start local 5 // boolean strokeBounds
         1: .line 1177
            iconst_0
            istore 6 /* transformBounds */
        start local 6 // boolean transformBounds
         2: .line 1178
            iload 1 /* token */
            tableswitch { // 20 - 51
                   20: 28
                   21: 27
                   22: 28
                   23: 15
                   24: 28
                   25: 27
                   26: 54
                   27: 53
                   28: 71
                   29: 71
                   30: 125
                   31: 125
                   32: 195
                   33: 195
                   34: 195
                   35: 195
                   36: 195
                   37: 195
                   38: 195
                   39: 195
                   40: 195
                   41: 195
                   42: 195
                   43: 195
                   44: 195
                   45: 195
                   46: 195
                   47: 3
                   48: 9
                   49: 195
                   50: 91
                   51: 91
              default: 195
          }
         3: .line 1181
      StackMap locals: int int
      StackMap stack:
            aload 4 /* bounds */
            ifnull 5
         4: .line 1182
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.path:Lcom/sun/javafx/geom/Path2D;
            aload 4 /* bounds */
            getstatic com.sun.javafx.geom.transform.BaseTransform.IDENTITY_TRANSFORM:Lcom/sun/javafx/geom/transform/BaseTransform;
            invokestatic com.sun.javafx.sg.prism.NGCanvas.shapebounds:(Lcom/sun/javafx/geom/Shape;Lcom/sun/javafx/geom/RectBounds;Lcom/sun/javafx/geom/transform/BaseTransform;)V
         5: .line 1184
      StackMap locals:
      StackMap stack:
            aload 3 /* gr */
            ifnull 196
         6: .line 1185
            aload 0 /* this */
            aload 3 /* gr */
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.setupFill:(Lcom/sun/prism/Graphics;)V
         7: .line 1186
            aload 3 /* gr */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.untransformedPath:Lcom/sun/javafx/geom/Shape;
            invokeinterface com.sun.prism.Graphics.fill:(Lcom/sun/javafx/geom/Shape;)V
         8: .line 1188
            goto 196
         9: .line 1192
      StackMap locals:
      StackMap stack:
            aload 4 /* bounds */
            ifnull 11
        10: .line 1193
            aload 0 /* this */
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.getStroke:()Lcom/sun/prism/BasicStroke;
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.untransformedPath:Lcom/sun/javafx/geom/Shape;
            aload 4 /* bounds */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.transform:Lcom/sun/javafx/geom/transform/Affine2D;
            invokestatic com.sun.javafx.sg.prism.NGCanvas.strokebounds:(Lcom/sun/prism/BasicStroke;Lcom/sun/javafx/geom/Shape;Lcom/sun/javafx/geom/RectBounds;Lcom/sun/javafx/geom/transform/BaseTransform;)V
        11: .line 1195
      StackMap locals:
      StackMap stack:
            aload 3 /* gr */
            ifnull 196
        12: .line 1196
            aload 0 /* this */
            aload 3 /* gr */
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.setupStroke:(Lcom/sun/prism/Graphics;)V
        13: .line 1197
            aload 3 /* gr */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.untransformedPath:Lcom/sun/javafx/geom/Shape;
            invokeinterface com.sun.prism.Graphics.draw:(Lcom/sun/javafx/geom/Shape;)V
        14: .line 1199
            goto 196
        15: .line 1203
      StackMap locals:
      StackMap stack:
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 7 /* x1 */
        start local 7 // float x1
        16: .line 1204
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 8 /* y1 */
        start local 8 // float y1
        17: .line 1205
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 9 /* x2 */
        start local 9 // float x2
        18: .line 1206
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 10 /* y2 */
        start local 10 // float y2
        19: .line 1207
            aload 4 /* bounds */
            ifnull 23
        20: .line 1208
            aload 4 /* bounds */
            fload 7 /* x1 */
            fload 8 /* y1 */
            fload 9 /* x2 */
            fload 10 /* y2 */
            invokevirtual com.sun.javafx.geom.RectBounds.setBoundsAndSort:(FFFF)V
        21: .line 1209
            iconst_1
            istore 5 /* strokeBounds */
        22: .line 1210
            iconst_1
            istore 6 /* transformBounds */
        23: .line 1212
      StackMap locals: com.sun.javafx.sg.prism.NGCanvas int com.sun.javafx.sg.prism.GrowableDataBuffer com.sun.prism.Graphics com.sun.javafx.geom.RectBounds int int float float float float
      StackMap stack:
            aload 3 /* gr */
            ifnull 196
        24: .line 1213
            aload 0 /* this */
            aload 3 /* gr */
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.setupStroke:(Lcom/sun/prism/Graphics;)V
        25: .line 1214
            aload 3 /* gr */
            fload 7 /* x1 */
            fload 8 /* y1 */
            fload 9 /* x2 */
            fload 10 /* y2 */
            invokeinterface com.sun.prism.Graphics.drawLine:(FFFF)V
        26: .line 1216
            goto 196
        end local 10 // float y2
        end local 9 // float x2
        end local 8 // float y1
        end local 7 // float x1
        27: .line 1220
      StackMap locals: com.sun.javafx.sg.prism.NGCanvas int com.sun.javafx.sg.prism.GrowableDataBuffer com.sun.prism.Graphics com.sun.javafx.geom.RectBounds int int
      StackMap stack:
            iconst_1
            istore 5 /* strokeBounds */
        28: .line 1225
      StackMap locals:
      StackMap stack:
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 7 /* x */
        start local 7 // float x
        29: .line 1226
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 8 /* y */
        start local 8 // float y
        30: .line 1227
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 9 /* w */
        start local 9 // float w
        31: .line 1228
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 10 /* h */
        start local 10 // float h
        32: .line 1229
            aload 4 /* bounds */
            ifnull 35
        33: .line 1230
            aload 4 /* bounds */
            fload 7 /* x */
            fload 8 /* y */
            fload 7 /* x */
            fload 9 /* w */
            fadd
            fload 8 /* y */
            fload 10 /* h */
            fadd
            invokevirtual com.sun.javafx.geom.RectBounds.setBounds:(FFFF)V
        34: .line 1231
            iconst_1
            istore 6 /* transformBounds */
        35: .line 1233
      StackMap locals: com.sun.javafx.sg.prism.NGCanvas int com.sun.javafx.sg.prism.GrowableDataBuffer com.sun.prism.Graphics com.sun.javafx.geom.RectBounds int int float float float float
      StackMap stack:
            aload 3 /* gr */
            ifnull 196
        36: .line 1234
            iload 1 /* token */
            tableswitch { // 20 - 25
                   20: 37
                   21: 43
                   22: 49
                   23: 52
                   24: 40
                   25: 46
              default: 52
          }
        37: .line 1236
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* gr */
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.setupFill:(Lcom/sun/prism/Graphics;)V
        38: .line 1237
            aload 3 /* gr */
            fload 7 /* x */
            fload 8 /* y */
            fload 9 /* w */
            fload 10 /* h */
            invokeinterface com.sun.prism.Graphics.fillRect:(FFFF)V
        39: .line 1238
            goto 196
        40: .line 1240
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* gr */
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.setupFill:(Lcom/sun/prism/Graphics;)V
        41: .line 1241
            aload 3 /* gr */
            fload 7 /* x */
            fload 8 /* y */
            fload 9 /* w */
            fload 10 /* h */
            invokeinterface com.sun.prism.Graphics.fillEllipse:(FFFF)V
        42: .line 1242
            goto 196
        43: .line 1244
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* gr */
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.setupStroke:(Lcom/sun/prism/Graphics;)V
        44: .line 1245
            aload 3 /* gr */
            fload 7 /* x */
            fload 8 /* y */
            fload 9 /* w */
            fload 10 /* h */
            invokeinterface com.sun.prism.Graphics.drawRect:(FFFF)V
        45: .line 1246
            goto 196
        46: .line 1248
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* gr */
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.setupStroke:(Lcom/sun/prism/Graphics;)V
        47: .line 1249
            aload 3 /* gr */
            fload 7 /* x */
            fload 8 /* y */
            fload 9 /* w */
            fload 10 /* h */
            invokeinterface com.sun.prism.Graphics.drawEllipse:(FFFF)V
        48: .line 1250
            goto 196
        49: .line 1252
      StackMap locals:
      StackMap stack:
            aload 3 /* gr */
            getstatic com.sun.prism.CompositeMode.CLEAR:Lcom/sun/prism/CompositeMode;
            invokeinterface com.sun.prism.Graphics.setCompositeMode:(Lcom/sun/prism/CompositeMode;)V
        50: .line 1253
            aload 3 /* gr */
            fload 7 /* x */
            fload 8 /* y */
            fload 9 /* w */
            fload 10 /* h */
            invokeinterface com.sun.prism.Graphics.fillRect:(FFFF)V
        51: .line 1254
            aload 3 /* gr */
            getstatic com.sun.prism.CompositeMode.SRC_OVER:Lcom/sun/prism/CompositeMode;
            invokeinterface com.sun.prism.Graphics.setCompositeMode:(Lcom/sun/prism/CompositeMode;)V
        52: .line 1258
      StackMap locals:
      StackMap stack:
            goto 196
        end local 10 // float h
        end local 9 // float w
        end local 8 // float y
        end local 7 // float x
        53: .line 1261
      StackMap locals: com.sun.javafx.sg.prism.NGCanvas int com.sun.javafx.sg.prism.GrowableDataBuffer com.sun.prism.Graphics com.sun.javafx.geom.RectBounds int int
      StackMap stack:
            iconst_1
            istore 5 /* strokeBounds */
        54: .line 1264
      StackMap locals:
      StackMap stack:
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 7 /* x */
        start local 7 // float x
        55: .line 1265
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 8 /* y */
        start local 8 // float y
        56: .line 1266
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 9 /* w */
        start local 9 // float w
        57: .line 1267
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 10 /* h */
        start local 10 // float h
        58: .line 1268
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 11 /* aw */
        start local 11 // float aw
        59: .line 1269
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 12 /* ah */
        start local 12 // float ah
        60: .line 1270
            aload 4 /* bounds */
            ifnull 63
        61: .line 1271
            aload 4 /* bounds */
            fload 7 /* x */
            fload 8 /* y */
            fload 7 /* x */
            fload 9 /* w */
            fadd
            fload 8 /* y */
            fload 10 /* h */
            fadd
            invokevirtual com.sun.javafx.geom.RectBounds.setBounds:(FFFF)V
        62: .line 1272
            iconst_1
            istore 6 /* transformBounds */
        63: .line 1274
      StackMap locals: com.sun.javafx.sg.prism.NGCanvas int com.sun.javafx.sg.prism.GrowableDataBuffer com.sun.prism.Graphics com.sun.javafx.geom.RectBounds int int float float float float float float
      StackMap stack:
            aload 3 /* gr */
            ifnull 196
        64: .line 1275
            iload 1 /* token */
            bipush 26
            if_icmpne 68
        65: .line 1276
            aload 0 /* this */
            aload 3 /* gr */
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.setupFill:(Lcom/sun/prism/Graphics;)V
        66: .line 1277
            aload 3 /* gr */
            fload 7 /* x */
            fload 8 /* y */
            fload 9 /* w */
            fload 10 /* h */
            fload 11 /* aw */
            fload 12 /* ah */
            invokeinterface com.sun.prism.Graphics.fillRoundRect:(FFFFFF)V
        67: .line 1278
            goto 196
        68: .line 1279
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* gr */
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.setupStroke:(Lcom/sun/prism/Graphics;)V
        69: .line 1280
            aload 3 /* gr */
            fload 7 /* x */
            fload 8 /* y */
            fload 9 /* w */
            fload 10 /* h */
            fload 11 /* aw */
            fload 12 /* ah */
            invokeinterface com.sun.prism.Graphics.drawRoundRect:(FFFFFF)V
        70: .line 1283
            goto 196
        end local 12 // float ah
        end local 11 // float aw
        end local 10 // float h
        end local 9 // float w
        end local 8 // float y
        end local 7 // float x
        71: .line 1288
      StackMap locals: com.sun.javafx.sg.prism.NGCanvas int com.sun.javafx.sg.prism.GrowableDataBuffer com.sun.prism.Graphics com.sun.javafx.geom.RectBounds int int
      StackMap stack:
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 7 /* x */
        start local 7 // float x
        72: .line 1289
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 8 /* y */
        start local 8 // float y
        73: .line 1290
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 9 /* w */
        start local 9 // float w
        74: .line 1291
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 10 /* h */
        start local 10 // float h
        75: .line 1292
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 11 /* as */
        start local 11 // float as
        76: .line 1293
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 12 /* ae */
        start local 12 // float ae
        77: .line 1294
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_ARC:Lcom/sun/javafx/geom/Arc2D;
            fload 7 /* x */
            fload 8 /* y */
            fload 9 /* w */
            fload 10 /* h */
            fload 11 /* as */
            fload 12 /* ae */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.arctype:I
            invokevirtual com.sun.javafx.geom.Arc2D.setArc:(FFFFFFI)V
        78: .line 1295
            iload 1 /* token */
            bipush 28
            if_icmpne 85
        79: .line 1296
            aload 4 /* bounds */
            ifnull 81
        80: .line 1297
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_ARC:Lcom/sun/javafx/geom/Arc2D;
            aload 4 /* bounds */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.transform:Lcom/sun/javafx/geom/transform/Affine2D;
            invokestatic com.sun.javafx.sg.prism.NGCanvas.shapebounds:(Lcom/sun/javafx/geom/Shape;Lcom/sun/javafx/geom/RectBounds;Lcom/sun/javafx/geom/transform/BaseTransform;)V
        81: .line 1299
      StackMap locals: com.sun.javafx.sg.prism.NGCanvas int com.sun.javafx.sg.prism.GrowableDataBuffer com.sun.prism.Graphics com.sun.javafx.geom.RectBounds int int float float float float float float
      StackMap stack:
            aload 3 /* gr */
            ifnull 196
        82: .line 1300
            aload 0 /* this */
            aload 3 /* gr */
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.setupFill:(Lcom/sun/prism/Graphics;)V
        83: .line 1301
            aload 3 /* gr */
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_ARC:Lcom/sun/javafx/geom/Arc2D;
            invokeinterface com.sun.prism.Graphics.fill:(Lcom/sun/javafx/geom/Shape;)V
        84: .line 1303
            goto 196
        85: .line 1304
      StackMap locals:
      StackMap stack:
            aload 4 /* bounds */
            ifnull 87
        86: .line 1305
            aload 0 /* this */
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.getStroke:()Lcom/sun/prism/BasicStroke;
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_ARC:Lcom/sun/javafx/geom/Arc2D;
            aload 4 /* bounds */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.transform:Lcom/sun/javafx/geom/transform/Affine2D;
            invokestatic com.sun.javafx.sg.prism.NGCanvas.strokebounds:(Lcom/sun/prism/BasicStroke;Lcom/sun/javafx/geom/Shape;Lcom/sun/javafx/geom/RectBounds;Lcom/sun/javafx/geom/transform/BaseTransform;)V
        87: .line 1307
      StackMap locals:
      StackMap stack:
            aload 3 /* gr */
            ifnull 196
        88: .line 1308
            aload 0 /* this */
            aload 3 /* gr */
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.setupStroke:(Lcom/sun/prism/Graphics;)V
        89: .line 1309
            aload 3 /* gr */
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_ARC:Lcom/sun/javafx/geom/Arc2D;
            invokeinterface com.sun.prism.Graphics.draw:(Lcom/sun/javafx/geom/Shape;)V
        90: .line 1312
            goto 196
        end local 12 // float ae
        end local 11 // float as
        end local 10 // float h
        end local 9 // float w
        end local 8 // float y
        end local 7 // float x
        91: .line 1317
      StackMap locals: com.sun.javafx.sg.prism.NGCanvas int com.sun.javafx.sg.prism.GrowableDataBuffer com.sun.prism.Graphics com.sun.javafx.geom.RectBounds int int
      StackMap stack:
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 7 /* dx */
        start local 7 // float dx
        92: .line 1318
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 8 /* dy */
        start local 8 // float dy
        93: .line 1319
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 9 /* dw */
        start local 9 // float dw
        94: .line 1320
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 10 /* dh */
        start local 10 // float dh
        95: .line 1321
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getObject:()Ljava/lang/Object;
            checkcast com.sun.prism.Image
            astore 11 /* img */
        start local 11 // com.sun.prism.Image img
        96: .line 1323
            iload 1 /* token */
            bipush 50
            if_icmpne 102
        97: .line 1324
            fconst_0
            dup
            fstore 13 /* sy */
        start local 13 // float sy
        98: fstore 12 /* sx */
        start local 12 // float sx
        99: .line 1325
            aload 11 /* img */
            invokevirtual com.sun.prism.Image.getWidth:()I
            i2f
            fstore 14 /* sw */
        start local 14 // float sw
       100: .line 1326
            aload 11 /* img */
            invokevirtual com.sun.prism.Image.getHeight:()I
            i2f
            fstore 15 /* sh */
        start local 15 // float sh
       101: .line 1327
            goto 112
        end local 15 // float sh
        end local 14 // float sw
        end local 13 // float sy
        end local 12 // float sx
       102: .line 1328
      StackMap locals: com.sun.javafx.sg.prism.NGCanvas int com.sun.javafx.sg.prism.GrowableDataBuffer com.sun.prism.Graphics com.sun.javafx.geom.RectBounds int int float float float float com.sun.prism.Image
      StackMap stack:
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 12 /* sx */
        start local 12 // float sx
       103: .line 1329
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 13 /* sy */
        start local 13 // float sy
       104: .line 1330
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 14 /* sw */
        start local 14 // float sw
       105: .line 1331
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 15 /* sh */
        start local 15 // float sh
       106: .line 1332
            aload 11 /* img */
            invokevirtual com.sun.prism.Image.getPixelScale:()F
            fstore 16 /* ps */
        start local 16 // float ps
       107: .line 1333
            fload 16 /* ps */
            fconst_1
            fcmpl
            ifeq 112
       108: .line 1334
            fload 12 /* sx */
            fload 16 /* ps */
            fmul
            fstore 12 /* sx */
       109: .line 1335
            fload 13 /* sy */
            fload 16 /* ps */
            fmul
            fstore 13 /* sy */
       110: .line 1336
            fload 14 /* sw */
            fload 16 /* ps */
            fmul
            fstore 14 /* sw */
       111: .line 1337
            fload 15 /* sh */
            fload 16 /* ps */
            fmul
            fstore 15 /* sh */
        end local 16 // float ps
       112: .line 1340
      StackMap locals: com.sun.javafx.sg.prism.NGCanvas int com.sun.javafx.sg.prism.GrowableDataBuffer com.sun.prism.Graphics com.sun.javafx.geom.RectBounds int int float float float float com.sun.prism.Image float float float float
      StackMap stack:
            aload 4 /* bounds */
            ifnull 115
       113: .line 1341
            aload 4 /* bounds */
            fload 7 /* dx */
            fload 8 /* dy */
            fload 7 /* dx */
            fload 9 /* dw */
            fadd
            fload 8 /* dy */
            fload 10 /* dh */
            fadd
            invokevirtual com.sun.javafx.geom.RectBounds.setBounds:(FFFF)V
       114: .line 1342
            iconst_1
            istore 6 /* transformBounds */
       115: .line 1344
      StackMap locals:
      StackMap stack:
            aload 3 /* gr */
            ifnull 196
       116: .line 1345
            aload 3 /* gr */
            invokeinterface com.sun.prism.Graphics.getResourceFactory:()Lcom/sun/prism/ResourceFactory;
            astore 16 /* factory */
        start local 16 // com.sun.prism.ResourceFactory factory
       117: .line 1347
            aload 16 /* factory */
            aload 11 /* img */
            getstatic com.sun.prism.Texture$WrapMode.CLAMP_TO_EDGE:Lcom/sun/prism/Texture$WrapMode;
            invokeinterface com.sun.prism.ResourceFactory.getCachedTexture:(Lcom/sun/prism/Image;Lcom/sun/prism/Texture$WrapMode;)Lcom/sun/prism/Texture;
       118: .line 1346
            astore 17 /* tex */
        start local 17 // com.sun.prism.Texture tex
       119: .line 1348
            aload 3 /* gr */
            aload 17 /* tex */
       120: .line 1349
            fload 7 /* dx */
            fload 8 /* dy */
            fload 7 /* dx */
            fload 9 /* dw */
            fadd
            fload 8 /* dy */
            fload 10 /* dh */
            fadd
       121: .line 1350
            fload 12 /* sx */
            fload 13 /* sy */
            fload 12 /* sx */
            fload 14 /* sw */
            fadd
            fload 13 /* sy */
            fload 15 /* sh */
            fadd
       122: .line 1348
            invokeinterface com.sun.prism.Graphics.drawTexture:(Lcom/sun/prism/Texture;FFFFFFFF)V
       123: .line 1351
            aload 17 /* tex */
            invokeinterface com.sun.prism.Texture.unlock:()V
        end local 17 // com.sun.prism.Texture tex
        end local 16 // com.sun.prism.ResourceFactory factory
       124: .line 1353
            goto 196
        end local 15 // float sh
        end local 14 // float sw
        end local 13 // float sy
        end local 12 // float sx
        end local 11 // com.sun.prism.Image img
        end local 10 // float dh
        end local 9 // float dw
        end local 8 // float dy
        end local 7 // float dx
       125: .line 1358
      StackMap locals: com.sun.javafx.sg.prism.NGCanvas int com.sun.javafx.sg.prism.GrowableDataBuffer com.sun.prism.Graphics com.sun.javafx.geom.RectBounds int int
      StackMap stack:
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 7 /* x */
        start local 7 // float x
       126: .line 1359
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 8 /* y */
        start local 8 // float y
       127: .line 1360
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 9 /* maxWidth */
        start local 9 // float maxWidth
       128: .line 1361
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getBoolean:()Z
            istore 10 /* rtl */
        start local 10 // boolean rtl
       129: .line 1362
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getObject:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 11 /* string */
        start local 11 // java.lang.String string
       130: .line 1363
            iload 10 /* rtl */
            ifeq 131
            sipush 2048
            goto 132
       131: .line 1364
      StackMap locals: com.sun.javafx.sg.prism.NGCanvas int com.sun.javafx.sg.prism.GrowableDataBuffer com.sun.prism.Graphics com.sun.javafx.geom.RectBounds int int float float float int java.lang.String
      StackMap stack:
            sipush 1024
       132: .line 1363
      StackMap locals:
      StackMap stack: int
            istore 12 /* dir */
        start local 12 // int dir
       133: .line 1366
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.textLayout:Lcom/sun/javafx/text/PrismTextLayout;
            aload 11 /* string */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.pgfont:Lcom/sun/javafx/font/PGFont;
            invokevirtual com.sun.javafx.text.PrismTextLayout.setContent:(Ljava/lang/String;Ljava/lang/Object;)Z
            pop
       134: .line 1367
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.textLayout:Lcom/sun/javafx/text/PrismTextLayout;
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.align:I
            invokevirtual com.sun.javafx.text.PrismTextLayout.setAlignment:(I)Z
            pop
       135: .line 1368
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.textLayout:Lcom/sun/javafx/text/PrismTextLayout;
            iload 12 /* dir */
            invokevirtual com.sun.javafx.text.PrismTextLayout.setDirection:(I)Z
            pop
       136: .line 1369
            fconst_0
            fstore 13 /* xAlign */
        start local 13 // float xAlign
       137: fconst_0
            fstore 14 /* yAlign */
        start local 14 // float yAlign
       138: .line 1370
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.textLayout:Lcom/sun/javafx/text/PrismTextLayout;
            invokevirtual com.sun.javafx.text.PrismTextLayout.getBounds:()Lcom/sun/javafx/geom/BaseBounds;
            astore 15 /* layoutBounds */
        start local 15 // com.sun.javafx.geom.BaseBounds layoutBounds
       139: .line 1371
            aload 15 /* layoutBounds */
            invokevirtual com.sun.javafx.geom.BaseBounds.getWidth:()F
            fstore 16 /* layoutWidth */
        start local 16 // float layoutWidth
       140: .line 1372
            aload 15 /* layoutBounds */
            invokevirtual com.sun.javafx.geom.BaseBounds.getHeight:()F
            fstore 17 /* layoutHeight */
        start local 17 // float layoutHeight
       141: .line 1373
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.align:I
            tableswitch { // 1 - 2
                    1: 143
                    2: 142
              default: 144
          }
       142: .line 1374
      StackMap locals: com.sun.javafx.sg.prism.NGCanvas int com.sun.javafx.sg.prism.GrowableDataBuffer com.sun.prism.Graphics com.sun.javafx.geom.RectBounds int int float float float int java.lang.String int float float com.sun.javafx.geom.BaseBounds float float
      StackMap stack:
            fload 16 /* layoutWidth */
            fstore 13 /* xAlign */
            goto 144
       143: .line 1375
      StackMap locals:
      StackMap stack:
            fload 16 /* layoutWidth */
            fconst_2
            fdiv
            fstore 13 /* xAlign */
       144: .line 1377
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.baseline:I
            tableswitch { // 1 - 3
                    1: 146
                    2: 145
                    3: 147
              default: 148
          }
       145: .line 1378
      StackMap locals:
      StackMap stack:
            aload 15 /* layoutBounds */
            invokevirtual com.sun.javafx.geom.BaseBounds.getMinY:()F
            fneg
            fstore 14 /* yAlign */
            goto 148
       146: .line 1379
      StackMap locals:
      StackMap stack:
            fload 17 /* layoutHeight */
            fconst_2
            fdiv
            fstore 14 /* yAlign */
            goto 148
       147: .line 1380
      StackMap locals:
      StackMap stack:
            fload 17 /* layoutHeight */
            fstore 14 /* yAlign */
       148: .line 1382
      StackMap locals:
      StackMap stack:
            fconst_1
            fstore 18 /* scaleX */
        start local 18 // float scaleX
       149: .line 1383
            fconst_0
            fstore 19 /* layoutX */
        start local 19 // float layoutX
       150: .line 1384
            fload 8 /* y */
            fload 14 /* yAlign */
            fsub
            fstore 20 /* layoutY */
        start local 20 // float layoutY
       151: .line 1385
            fload 9 /* maxWidth */
            f2d
            dconst_0
            dcmpl
            ifle 160
            fload 16 /* layoutWidth */
            fload 9 /* maxWidth */
            fcmpl
            ifle 160
       152: .line 1386
            fload 9 /* maxWidth */
            fload 16 /* layoutWidth */
            fdiv
            fstore 21 /* sx */
        start local 21 // float sx
       153: .line 1387
            iload 10 /* rtl */
            ifeq 157
       154: .line 1388
            fload 7 /* x */
            fload 9 /* maxWidth */
            fadd
            fload 21 /* sx */
            fdiv
            fload 13 /* xAlign */
            fsub
            fneg
            fstore 19 /* layoutX */
       155: .line 1389
            fload 21 /* sx */
            fneg
            fstore 18 /* scaleX */
       156: .line 1390
            goto 165
       157: .line 1391
      StackMap locals: com.sun.javafx.sg.prism.NGCanvas int com.sun.javafx.sg.prism.GrowableDataBuffer com.sun.prism.Graphics com.sun.javafx.geom.RectBounds int int float float float int java.lang.String int float float com.sun.javafx.geom.BaseBounds float float float float float float
      StackMap stack:
            fload 7 /* x */
            fload 21 /* sx */
            fdiv
            fload 13 /* xAlign */
            fsub
            fstore 19 /* layoutX */
       158: .line 1392
            fload 21 /* sx */
            fstore 18 /* scaleX */
        end local 21 // float sx
       159: .line 1394
            goto 165
       160: .line 1395
      StackMap locals:
      StackMap stack:
            iload 10 /* rtl */
            ifeq 164
       161: .line 1396
            fload 7 /* x */
            fload 13 /* xAlign */
            fsub
            fload 16 /* layoutWidth */
            fadd
            fneg
            fstore 19 /* layoutX */
       162: .line 1397
            ldc -1.0
            fstore 18 /* scaleX */
       163: .line 1398
            goto 165
       164: .line 1399
      StackMap locals:
      StackMap stack:
            fload 7 /* x */
            fload 13 /* xAlign */
            fsub
            fstore 19 /* layoutX */
       165: .line 1402
      StackMap locals:
      StackMap stack:
            aload 4 /* bounds */
            ifnull 167
       166: .line 1403
            aload 0 /* this */
            aload 4 /* bounds */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.transform:Lcom/sun/javafx/geom/transform/Affine2D;
            fload 18 /* scaleX */
            fload 19 /* layoutX */
            fload 20 /* layoutY */
            iload 1 /* token */
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.computeTextLayoutBounds:(Lcom/sun/javafx/geom/RectBounds;Lcom/sun/javafx/geom/transform/BaseTransform;FFFI)V
       167: .line 1405
      StackMap locals:
      StackMap stack:
            aload 3 /* gr */
            ifnull 196
       168: .line 1406
            fload 18 /* scaleX */
            fconst_1
            fcmpl
            ifeq 170
       169: .line 1407
            aload 3 /* gr */
            fload 18 /* scaleX */
            fconst_1
            invokeinterface com.sun.prism.Graphics.scale:(FF)V
       170: .line 1409
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.ngtext:Lcom/sun/javafx/sg/prism/NGText;
            fload 19 /* layoutX */
            fneg
            fload 20 /* layoutY */
            fneg
            invokevirtual com.sun.javafx.sg.prism.NGText.setLayoutLocation:(FF)V
       171: .line 1410
            iload 1 /* token */
            bipush 30
            if_icmpne 181
       172: .line 1411
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.ngtext:Lcom/sun/javafx/sg/prism/NGText;
            getstatic com.sun.javafx.sg.prism.NGShape$Mode.FILL:Lcom/sun/javafx/sg/prism/NGShape$Mode;
            invokevirtual com.sun.javafx.sg.prism.NGText.setMode:(Lcom/sun/javafx/sg/prism/NGShape$Mode;)V
       173: .line 1412
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.ngtext:Lcom/sun/javafx/sg/prism/NGText;
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.fillPaint:Lcom/sun/prism/paint/Paint;
            invokevirtual com.sun.javafx.sg.prism.NGText.setFillPaint:(Ljava/lang/Object;)V
       174: .line 1413
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.fillPaint:Lcom/sun/prism/paint/Paint;
            invokevirtual com.sun.prism.paint.Paint.isProportional:()Z
            ifne 175
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.smoothing:I
            getstatic com.sun.javafx.sg.prism.NGCanvas.SMOOTH_LCD:B
            if_icmpne 190
       175: .line 1414
      StackMap locals:
      StackMap stack:
            new com.sun.javafx.geom.RectBounds
            dup
            invokespecial com.sun.javafx.geom.RectBounds.<init>:()V
            astore 21 /* textBounds */
        start local 21 // com.sun.javafx.geom.RectBounds textBounds
       176: .line 1415
            aload 0 /* this */
            aload 21 /* textBounds */
            getstatic com.sun.javafx.geom.transform.BaseTransform.IDENTITY_TRANSFORM:Lcom/sun/javafx/geom/transform/BaseTransform;
       177: .line 1416
            fconst_1
            fload 19 /* layoutX */
            fload 20 /* layoutY */
            iload 1 /* token */
       178: .line 1415
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.computeTextLayoutBounds:(Lcom/sun/javafx/geom/RectBounds;Lcom/sun/javafx/geom/transform/BaseTransform;FFFI)V
       179: .line 1417
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.ngtext:Lcom/sun/javafx/sg/prism/NGText;
            aload 21 /* textBounds */
            invokevirtual com.sun.javafx.sg.prism.NGText.setContentBounds:(Lcom/sun/javafx/geom/BaseBounds;)V
        end local 21 // com.sun.javafx.geom.RectBounds textBounds
       180: .line 1419
            goto 190
       181: .line 1421
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.strokePaint:Lcom/sun/prism/paint/Paint;
            invokevirtual com.sun.prism.paint.Paint.isProportional:()Z
            ifeq 187
       182: .line 1422
            new com.sun.javafx.geom.RectBounds
            dup
            invokespecial com.sun.javafx.geom.RectBounds.<init>:()V
            astore 21 /* textBounds */
        start local 21 // com.sun.javafx.geom.RectBounds textBounds
       183: .line 1423
            aload 0 /* this */
            aload 21 /* textBounds */
            getstatic com.sun.javafx.geom.transform.BaseTransform.IDENTITY_TRANSFORM:Lcom/sun/javafx/geom/transform/BaseTransform;
       184: .line 1424
            fconst_1
            fload 19 /* layoutX */
            fload 20 /* layoutY */
            iload 1 /* token */
       185: .line 1423
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.computeTextLayoutBounds:(Lcom/sun/javafx/geom/RectBounds;Lcom/sun/javafx/geom/transform/BaseTransform;FFFI)V
       186: .line 1425
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.ngtext:Lcom/sun/javafx/sg/prism/NGText;
            aload 21 /* textBounds */
            invokevirtual com.sun.javafx.sg.prism.NGText.setContentBounds:(Lcom/sun/javafx/geom/BaseBounds;)V
        end local 21 // com.sun.javafx.geom.RectBounds textBounds
       187: .line 1427
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.ngtext:Lcom/sun/javafx/sg/prism/NGText;
            getstatic com.sun.javafx.sg.prism.NGShape$Mode.STROKE:Lcom/sun/javafx/sg/prism/NGShape$Mode;
            invokevirtual com.sun.javafx.sg.prism.NGText.setMode:(Lcom/sun/javafx/sg/prism/NGShape$Mode;)V
       188: .line 1428
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.ngtext:Lcom/sun/javafx/sg/prism/NGText;
            aload 0 /* this */
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.getStroke:()Lcom/sun/prism/BasicStroke;
            invokevirtual com.sun.javafx.sg.prism.NGText.setDrawStroke:(Lcom/sun/prism/BasicStroke;)V
       189: .line 1429
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.ngtext:Lcom/sun/javafx/sg/prism/NGText;
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.strokePaint:Lcom/sun/prism/paint/Paint;
            invokevirtual com.sun.javafx.sg.prism.NGText.setDrawPaint:(Ljava/lang/Object;)V
       190: .line 1431
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.ngtext:Lcom/sun/javafx/sg/prism/NGText;
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.pgfont:Lcom/sun/javafx/font/PGFont;
            invokevirtual com.sun.javafx.sg.prism.NGText.setFont:(Ljava/lang/Object;)V
       191: .line 1432
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.ngtext:Lcom/sun/javafx/sg/prism/NGText;
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.smoothing:I
            invokevirtual com.sun.javafx.sg.prism.NGText.setFontSmoothingType:(I)V
       192: .line 1433
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.ngtext:Lcom/sun/javafx/sg/prism/NGText;
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.textLayout:Lcom/sun/javafx/text/PrismTextLayout;
            invokevirtual com.sun.javafx.text.PrismTextLayout.getRuns:()[Lcom/sun/javafx/scene/text/GlyphList;
            invokevirtual com.sun.javafx.sg.prism.NGText.setGlyphs:([Ljava/lang/Object;)V
       193: .line 1434
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.ngtext:Lcom/sun/javafx/sg/prism/NGText;
            aload 3 /* gr */
            invokevirtual com.sun.javafx.sg.prism.NGText.renderContent:(Lcom/sun/prism/Graphics;)V
       194: .line 1436
            goto 196
        end local 20 // float layoutY
        end local 19 // float layoutX
        end local 18 // float scaleX
        end local 17 // float layoutHeight
        end local 16 // float layoutWidth
        end local 15 // com.sun.javafx.geom.BaseBounds layoutBounds
        end local 14 // float yAlign
        end local 13 // float xAlign
        end local 12 // int dir
        end local 11 // java.lang.String string
        end local 10 // boolean rtl
        end local 9 // float maxWidth
        end local 8 // float y
        end local 7 // float x
       195: .line 1439
      StackMap locals: com.sun.javafx.sg.prism.NGCanvas int com.sun.javafx.sg.prism.GrowableDataBuffer com.sun.prism.Graphics com.sun.javafx.geom.RectBounds int int
      StackMap stack:
            new java.lang.InternalError
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unrecognized PGCanvas rendering token: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* token */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
            athrow
       196: .line 1441
      StackMap locals:
      StackMap stack:
            aload 4 /* bounds */
            ifnull 206
       197: .line 1442
            iload 5 /* strokeBounds */
            ifeq 204
       198: .line 1443
            aload 0 /* this */
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.getStroke:()Lcom/sun/prism/BasicStroke;
            astore 7 /* s */
        start local 7 // com.sun.prism.BasicStroke s
       199: .line 1444
            aload 7 /* s */
            invokevirtual com.sun.prism.BasicStroke.getType:()I
            iconst_1
            if_icmpeq 204
       200: .line 1445
            aload 7 /* s */
            invokevirtual com.sun.prism.BasicStroke.getLineWidth:()F
            fstore 8 /* lw */
        start local 8 // float lw
       201: .line 1446
            aload 7 /* s */
            invokevirtual com.sun.prism.BasicStroke.getType:()I
            ifne 203
       202: .line 1447
            fload 8 /* lw */
            fconst_2
            fdiv
            fstore 8 /* lw */
       203: .line 1449
      StackMap locals: com.sun.prism.BasicStroke float
      StackMap stack:
            aload 4 /* bounds */
            fload 8 /* lw */
            fload 8 /* lw */
            invokevirtual com.sun.javafx.geom.RectBounds.grow:(FF)V
        end local 8 // float lw
        end local 7 // com.sun.prism.BasicStroke s
       204: .line 1452
      StackMap locals:
      StackMap stack:
            iload 6 /* transformBounds */
            ifeq 206
       205: .line 1453
            aload 4 /* bounds */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.transform:Lcom/sun/javafx/geom/transform/Affine2D;
            invokestatic com.sun.javafx.sg.prism.NGCanvas.txBounds:(Lcom/sun/javafx/geom/RectBounds;Lcom/sun/javafx/geom/transform/BaseTransform;)V
       206: .line 1456
      StackMap locals:
      StackMap stack:
            return
        end local 6 // boolean transformBounds
        end local 5 // boolean strokeBounds
        end local 4 // com.sun.javafx.geom.RectBounds bounds
        end local 3 // com.sun.prism.Graphics gr
        end local 2 // com.sun.javafx.sg.prism.GrowableDataBuffer buf
        end local 1 // int token
        end local 0 // com.sun.javafx.sg.prism.NGCanvas this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0  207     0             this  Lcom/sun/javafx/sg/prism/NGCanvas;
            0  207     1            token  I
            0  207     2              buf  Lcom/sun/javafx/sg/prism/GrowableDataBuffer;
            0  207     3               gr  Lcom/sun/prism/Graphics;
            0  207     4           bounds  Lcom/sun/javafx/geom/RectBounds;
            1  207     5     strokeBounds  Z
            2  207     6  transformBounds  Z
           16   27     7               x1  F
           17   27     8               y1  F
           18   27     9               x2  F
           19   27    10               y2  F
           29   53     7                x  F
           30   53     8                y  F
           31   53     9                w  F
           32   53    10                h  F
           55   71     7                x  F
           56   71     8                y  F
           57   71     9                w  F
           58   71    10                h  F
           59   71    11               aw  F
           60   71    12               ah  F
           72   91     7                x  F
           73   91     8                y  F
           74   91     9                w  F
           75   91    10                h  F
           76   91    11               as  F
           77   91    12               ae  F
           92  125     7               dx  F
           93  125     8               dy  F
           94  125     9               dw  F
           95  125    10               dh  F
           96  125    11              img  Lcom/sun/prism/Image;
           99  102    12               sx  F
          103  125    12               sx  F
           98  102    13               sy  F
          104  125    13               sy  F
          100  102    14               sw  F
          105  125    14               sw  F
          101  102    15               sh  F
          106  125    15               sh  F
          107  112    16               ps  F
          117  124    16          factory  Lcom/sun/prism/ResourceFactory;
          119  124    17              tex  Lcom/sun/prism/Texture;
          126  195     7                x  F
          127  195     8                y  F
          128  195     9         maxWidth  F
          129  195    10              rtl  Z
          130  195    11           string  Ljava/lang/String;
          133  195    12              dir  I
          137  195    13           xAlign  F
          138  195    14           yAlign  F
          139  195    15     layoutBounds  Lcom/sun/javafx/geom/BaseBounds;
          140  195    16      layoutWidth  F
          141  195    17     layoutHeight  F
          149  195    18           scaleX  F
          150  195    19          layoutX  F
          151  195    20          layoutY  F
          153  159    21               sx  F
          176  180    21       textBounds  Lcom/sun/javafx/geom/RectBounds;
          183  187    21       textBounds  Lcom/sun/javafx/geom/RectBounds;
          199  204     7                s  Lcom/sun/prism/BasicStroke;
          201  204     8               lw  F
    MethodParameters:
        Name  Flags
      token   
      buf     
      gr      
      bounds  

  void computeTextLayoutBounds(com.sun.javafx.geom.RectBounds, com.sun.javafx.geom.transform.BaseTransform, float, float, float, int);
    descriptor: (Lcom/sun/javafx/geom/RectBounds;Lcom/sun/javafx/geom/transform/BaseTransform;FFFI)V
    flags: (0x0000) 
    Code:
      stack=5, locals=10, args_size=7
        start local 0 // com.sun.javafx.sg.prism.NGCanvas this
        start local 1 // com.sun.javafx.geom.RectBounds bounds
        start local 2 // com.sun.javafx.geom.transform.BaseTransform transform
        start local 3 // float scaleX
        start local 4 // float layoutX
        start local 5 // float layoutY
        start local 6 // int token
         0: .line 1462
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.textLayout:Lcom/sun/javafx/text/PrismTextLayout;
            aconst_null
            aload 1 /* bounds */
            invokevirtual com.sun.javafx.text.PrismTextLayout.getBounds:(Lcom/sun/javafx/scene/text/TextSpan;Lcom/sun/javafx/geom/BaseBounds;)Lcom/sun/javafx/geom/BaseBounds;
            pop
         1: .line 1463
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_TX:Lcom/sun/javafx/geom/transform/Affine2D;
            aload 2 /* transform */
            invokevirtual com.sun.javafx.geom.transform.Affine2D.setTransform:(Lcom/sun/javafx/geom/transform/BaseTransform;)V
         2: .line 1464
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_TX:Lcom/sun/javafx/geom/transform/Affine2D;
            fload 3 /* scaleX */
            f2d
            dconst_1
            invokevirtual com.sun.javafx.geom.transform.Affine2D.scale:(DD)V
         3: .line 1465
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_TX:Lcom/sun/javafx/geom/transform/Affine2D;
            fload 4 /* layoutX */
            f2d
            fload 5 /* layoutY */
            f2d
            invokevirtual com.sun.javafx.geom.transform.Affine2D.translate:(DD)V
         4: .line 1466
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_TX:Lcom/sun/javafx/geom/transform/Affine2D;
            aload 1 /* bounds */
            aload 1 /* bounds */
            invokevirtual com.sun.javafx.geom.transform.Affine2D.transform:(Lcom/sun/javafx/geom/BaseBounds;Lcom/sun/javafx/geom/BaseBounds;)Lcom/sun/javafx/geom/BaseBounds;
            pop
         5: .line 1467
            iload 6 /* token */
            bipush 31
            if_icmpne 11
         6: .line 1468
            iconst_1
            istore 7 /* flag */
        start local 7 // int flag
         7: .line 1469
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.textLayout:Lcom/sun/javafx/text/PrismTextLayout;
            iload 7 /* flag */
            aconst_null
            invokevirtual com.sun.javafx.text.PrismTextLayout.getShape:(ILcom/sun/javafx/scene/text/TextSpan;)Lcom/sun/javafx/geom/Shape;
            astore 8 /* textShape */
        start local 8 // com.sun.javafx.geom.Shape textShape
         8: .line 1470
            new com.sun.javafx.geom.RectBounds
            dup
            invokespecial com.sun.javafx.geom.RectBounds.<init>:()V
            astore 9 /* shapeBounds */
        start local 9 // com.sun.javafx.geom.RectBounds shapeBounds
         9: .line 1471
            aload 0 /* this */
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.getStroke:()Lcom/sun/prism/BasicStroke;
            aload 8 /* textShape */
            aload 9 /* shapeBounds */
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_TX:Lcom/sun/javafx/geom/transform/Affine2D;
            invokestatic com.sun.javafx.sg.prism.NGCanvas.strokebounds:(Lcom/sun/prism/BasicStroke;Lcom/sun/javafx/geom/Shape;Lcom/sun/javafx/geom/RectBounds;Lcom/sun/javafx/geom/transform/BaseTransform;)V
        10: .line 1472
            aload 1 /* bounds */
            aload 9 /* shapeBounds */
            invokevirtual com.sun.javafx.geom.RectBounds.unionWith:(Lcom/sun/javafx/geom/RectBounds;)V
        end local 9 // com.sun.javafx.geom.RectBounds shapeBounds
        end local 8 // com.sun.javafx.geom.Shape textShape
        end local 7 // int flag
        11: .line 1474
      StackMap locals:
      StackMap stack:
            return
        end local 6 // int token
        end local 5 // float layoutY
        end local 4 // float layoutX
        end local 3 // float scaleX
        end local 2 // com.sun.javafx.geom.transform.BaseTransform transform
        end local 1 // com.sun.javafx.geom.RectBounds bounds
        end local 0 // com.sun.javafx.sg.prism.NGCanvas this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   12     0         this  Lcom/sun/javafx/sg/prism/NGCanvas;
            0   12     1       bounds  Lcom/sun/javafx/geom/RectBounds;
            0   12     2    transform  Lcom/sun/javafx/geom/transform/BaseTransform;
            0   12     3       scaleX  F
            0   12     4      layoutX  F
            0   12     5      layoutY  F
            0   12     6        token  I
            7   11     7         flag  I
            8   11     8    textShape  Lcom/sun/javafx/geom/Shape;
            9   11     9  shapeBounds  Lcom/sun/javafx/geom/RectBounds;
    MethodParameters:
           Name  Flags
      bounds     
      transform  
      scaleX     
      layoutX    
      layoutY    
      token      

  static void txBounds(com.sun.javafx.geom.RectBounds, com.sun.javafx.geom.transform.BaseTransform);
    descriptor: (Lcom/sun/javafx/geom/RectBounds;Lcom/sun/javafx/geom/transform/BaseTransform;)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=6, locals=5, args_size=2
        start local 0 // com.sun.javafx.geom.RectBounds bounds
        start local 1 // com.sun.javafx.geom.transform.BaseTransform transform
         0: .line 1477
            aload 1 /* transform */
            invokevirtual com.sun.javafx.geom.transform.BaseTransform.getType:()I
            tableswitch { // 0 - 1
                    0: 1
                    1: 2
              default: 8
          }
         1: .line 1479
      StackMap locals:
      StackMap stack:
            goto 13
         2: .line 1481
      StackMap locals:
      StackMap stack:
            aload 1 /* transform */
            invokevirtual com.sun.javafx.geom.transform.BaseTransform.getMxt:()D
            d2f
            fstore 2 /* tx */
        start local 2 // float tx
         3: .line 1482
            aload 1 /* transform */
            invokevirtual com.sun.javafx.geom.transform.BaseTransform.getMyt:()D
            d2f
            fstore 3 /* ty */
        start local 3 // float ty
         4: .line 1483
            aload 0 /* bounds */
            aload 0 /* bounds */
            invokevirtual com.sun.javafx.geom.RectBounds.getMinX:()F
            fload 2 /* tx */
            fadd
            aload 0 /* bounds */
            invokevirtual com.sun.javafx.geom.RectBounds.getMinY:()F
            fload 3 /* ty */
            fadd
         5: .line 1484
            aload 0 /* bounds */
            invokevirtual com.sun.javafx.geom.RectBounds.getMaxX:()F
            fload 2 /* tx */
            fadd
            aload 0 /* bounds */
            invokevirtual com.sun.javafx.geom.RectBounds.getMaxY:()F
            fload 3 /* ty */
            fadd
         6: .line 1483
            invokevirtual com.sun.javafx.geom.RectBounds.setBounds:(FFFF)V
         7: .line 1485
            goto 13
        end local 3 // float ty
        end local 2 // float tx
         8: .line 1487
      StackMap locals:
      StackMap stack:
            aload 1 /* transform */
            aload 0 /* bounds */
            aload 0 /* bounds */
            invokevirtual com.sun.javafx.geom.transform.BaseTransform.transform:(Lcom/sun/javafx/geom/BaseBounds;Lcom/sun/javafx/geom/BaseBounds;)Lcom/sun/javafx/geom/BaseBounds;
            astore 4 /* txbounds */
        start local 4 // com.sun.javafx.geom.BaseBounds txbounds
         9: .line 1488
            aload 4 /* txbounds */
            aload 0 /* bounds */
            if_acmpeq 13
        10: .line 1489
            aload 0 /* bounds */
            aload 4 /* txbounds */
            invokevirtual com.sun.javafx.geom.BaseBounds.getMinX:()F
            aload 4 /* txbounds */
            invokevirtual com.sun.javafx.geom.BaseBounds.getMinY:()F
        11: .line 1490
            aload 4 /* txbounds */
            invokevirtual com.sun.javafx.geom.BaseBounds.getMaxX:()F
            aload 4 /* txbounds */
            invokevirtual com.sun.javafx.geom.BaseBounds.getMaxY:()F
        12: .line 1489
            invokevirtual com.sun.javafx.geom.RectBounds.setBounds:(FFFF)V
        end local 4 // com.sun.javafx.geom.BaseBounds txbounds
        13: .line 1494
      StackMap locals:
      StackMap stack:
            return
        end local 1 // com.sun.javafx.geom.transform.BaseTransform transform
        end local 0 // com.sun.javafx.geom.RectBounds bounds
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   14     0     bounds  Lcom/sun/javafx/geom/RectBounds;
            0   14     1  transform  Lcom/sun/javafx/geom/transform/BaseTransform;
            3    8     2         tx  F
            4    8     3         ty  F
            9   13     4   txbounds  Lcom/sun/javafx/geom/BaseBounds;
    MethodParameters:
           Name  Flags
      bounds     
      transform  

  static void inverseTxBounds(com.sun.javafx.geom.RectBounds, com.sun.javafx.geom.transform.BaseTransform);
    descriptor: (Lcom/sun/javafx/geom/RectBounds;Lcom/sun/javafx/geom/transform/BaseTransform;)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=6, locals=5, args_size=2
        start local 0 // com.sun.javafx.geom.RectBounds bounds
        start local 1 // com.sun.javafx.geom.transform.BaseTransform transform
         0: .line 1497
            aload 1 /* transform */
            invokevirtual com.sun.javafx.geom.transform.BaseTransform.getType:()I
            tableswitch { // 0 - 1
                    0: 1
                    1: 2
              default: 8
          }
         1: .line 1499
      StackMap locals:
      StackMap stack:
            goto 16
         2: .line 1501
      StackMap locals:
      StackMap stack:
            aload 1 /* transform */
            invokevirtual com.sun.javafx.geom.transform.BaseTransform.getMxt:()D
            d2f
            fstore 2 /* tx */
        start local 2 // float tx
         3: .line 1502
            aload 1 /* transform */
            invokevirtual com.sun.javafx.geom.transform.BaseTransform.getMyt:()D
            d2f
            fstore 3 /* ty */
        start local 3 // float ty
         4: .line 1503
            aload 0 /* bounds */
            aload 0 /* bounds */
            invokevirtual com.sun.javafx.geom.RectBounds.getMinX:()F
            fload 2 /* tx */
            fsub
            aload 0 /* bounds */
            invokevirtual com.sun.javafx.geom.RectBounds.getMinY:()F
            fload 3 /* ty */
            fsub
         5: .line 1504
            aload 0 /* bounds */
            invokevirtual com.sun.javafx.geom.RectBounds.getMaxX:()F
            fload 2 /* tx */
            fsub
            aload 0 /* bounds */
            invokevirtual com.sun.javafx.geom.RectBounds.getMaxY:()F
            fload 3 /* ty */
            fsub
         6: .line 1503
            invokevirtual com.sun.javafx.geom.RectBounds.setBounds:(FFFF)V
         7: .line 1505
            goto 16
        end local 3 // float ty
        end local 2 // float tx
         8: .line 1508
      StackMap locals:
      StackMap stack:
            aload 1 /* transform */
            aload 0 /* bounds */
            aload 0 /* bounds */
            invokevirtual com.sun.javafx.geom.transform.BaseTransform.inverseTransform:(Lcom/sun/javafx/geom/BaseBounds;Lcom/sun/javafx/geom/BaseBounds;)Lcom/sun/javafx/geom/BaseBounds;
            astore 4 /* txbounds */
        start local 4 // com.sun.javafx.geom.BaseBounds txbounds
         9: .line 1509
            aload 4 /* txbounds */
            aload 0 /* bounds */
            if_acmpeq 16
        10: .line 1510
            aload 0 /* bounds */
            aload 4 /* txbounds */
            invokevirtual com.sun.javafx.geom.BaseBounds.getMinX:()F
            aload 4 /* txbounds */
            invokevirtual com.sun.javafx.geom.BaseBounds.getMinY:()F
        11: .line 1511
            aload 4 /* txbounds */
            invokevirtual com.sun.javafx.geom.BaseBounds.getMaxX:()F
            aload 4 /* txbounds */
            invokevirtual com.sun.javafx.geom.BaseBounds.getMaxY:()F
        12: .line 1510
            invokevirtual com.sun.javafx.geom.RectBounds.setBounds:(FFFF)V
        end local 4 // com.sun.javafx.geom.BaseBounds txbounds
        13: .line 1513
            goto 16
      StackMap locals:
      StackMap stack: com.sun.javafx.geom.transform.NoninvertibleTransformException
        14: pop
        15: .line 1514
            aload 0 /* bounds */
            invokevirtual com.sun.javafx.geom.RectBounds.makeEmpty:()Lcom/sun/javafx/geom/RectBounds;
            pop
        16: .line 1518
      StackMap locals:
      StackMap stack:
            return
        end local 1 // com.sun.javafx.geom.transform.BaseTransform transform
        end local 0 // com.sun.javafx.geom.RectBounds bounds
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   17     0     bounds  Lcom/sun/javafx/geom/RectBounds;
            0   17     1  transform  Lcom/sun/javafx/geom/transform/BaseTransform;
            3    8     2         tx  F
            4    8     3         ty  F
            9   13     4   txbounds  Lcom/sun/javafx/geom/BaseBounds;
      Exception table:
        from    to  target  type
           8    13      14  Class com.sun.javafx.geom.transform.NoninvertibleTransformException
    MethodParameters:
           Name  Flags
      bounds     
      transform  

  public void updateBounds(float, float);
    descriptor: (FF)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.javafx.sg.prism.NGCanvas this
        start local 1 // float w
        start local 2 // float h
         0: .line 1521
            aload 0 /* this */
            fload 1 /* w */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.highestPixelScale:F
            fmul
            f2d
            invokestatic java.lang.Math.ceil:(D)D
            d2i
            putfield com.sun.javafx.sg.prism.NGCanvas.tw:I
         1: .line 1522
            aload 0 /* this */
            fload 2 /* h */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.highestPixelScale:F
            fmul
            f2d
            invokestatic java.lang.Math.ceil:(D)D
            d2i
            putfield com.sun.javafx.sg.prism.NGCanvas.th:I
         2: .line 1523
            aload 0 /* this */
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.geometryChanged:()V
         3: .line 1524
            return
        end local 2 // float h
        end local 1 // float w
        end local 0 // com.sun.javafx.sg.prism.NGCanvas this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/sun/javafx/sg/prism/NGCanvas;
            0    4     1     w  F
            0    4     2     h  F
    MethodParameters:
      Name  Flags
      w     
      h     

  public boolean updateRendering(com.sun.javafx.sg.prism.GrowableDataBuffer);
    descriptor: (Lcom/sun/javafx/sg/prism/GrowableDataBuffer;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // com.sun.javafx.sg.prism.NGCanvas this
        start local 1 // com.sun.javafx.sg.prism.GrowableDataBuffer buf
         0: .line 1532
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.isEmpty:()Z
            ifeq 4
         1: .line 1533
            aload 1 /* buf */
            invokestatic com.sun.javafx.sg.prism.GrowableDataBuffer.returnBuffer:(Lcom/sun/javafx/sg/prism/GrowableDataBuffer;)V
         2: .line 1534
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.thebuf:Lcom/sun/javafx/sg/prism/GrowableDataBuffer;
            ifnull 3
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         3: iconst_0
            ireturn
         4: .line 1536
      StackMap locals:
      StackMap stack:
            aload 1 /* buf */
            iconst_0
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.peekByte:(I)B
            bipush 70
            if_icmpne 5
            iconst_1
            goto 6
      StackMap locals:
      StackMap stack:
         5: iconst_0
      StackMap locals:
      StackMap stack: int
         6: istore 2 /* reset */
        start local 2 // boolean reset
         7: .line 1538
            iload 2 /* reset */
            ifne 8
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.thebuf:Lcom/sun/javafx/sg/prism/GrowableDataBuffer;
            ifnonnull 11
         8: .line 1539
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.thebuf:Lcom/sun/javafx/sg/prism/GrowableDataBuffer;
            astore 3 /* retbuf */
        start local 3 // com.sun.javafx.sg.prism.GrowableDataBuffer retbuf
         9: .line 1540
            aload 0 /* this */
            aload 1 /* buf */
            putfield com.sun.javafx.sg.prism.NGCanvas.thebuf:Lcom/sun/javafx/sg/prism/GrowableDataBuffer;
        10: .line 1541
            goto 13
        end local 3 // com.sun.javafx.sg.prism.GrowableDataBuffer retbuf
        11: .line 1542
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.thebuf:Lcom/sun/javafx/sg/prism/GrowableDataBuffer;
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.append:(Lcom/sun/javafx/sg/prism/GrowableDataBuffer;)V
        12: .line 1543
            aload 1 /* buf */
            astore 3 /* retbuf */
        start local 3 // com.sun.javafx.sg.prism.GrowableDataBuffer retbuf
        13: .line 1545
      StackMap locals: com.sun.javafx.sg.prism.GrowableDataBuffer
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.geometryChanged:()V
        14: .line 1546
            aload 3 /* retbuf */
            ifnull 17
        15: .line 1547
            aload 3 /* retbuf */
            invokestatic com.sun.javafx.sg.prism.GrowableDataBuffer.returnBuffer:(Lcom/sun/javafx/sg/prism/GrowableDataBuffer;)V
        16: .line 1548
            iconst_1
            ireturn
        17: .line 1550
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 3 // com.sun.javafx.sg.prism.GrowableDataBuffer retbuf
        end local 2 // boolean reset
        end local 1 // com.sun.javafx.sg.prism.GrowableDataBuffer buf
        end local 0 // com.sun.javafx.sg.prism.NGCanvas this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   18     0    this  Lcom/sun/javafx/sg/prism/NGCanvas;
            0   18     1     buf  Lcom/sun/javafx/sg/prism/GrowableDataBuffer;
            7   18     2   reset  Z
            9   11     3  retbuf  Lcom/sun/javafx/sg/prism/GrowableDataBuffer;
           13   18     3  retbuf  Lcom/sun/javafx/sg/prism/GrowableDataBuffer;
    MethodParameters:
      Name  Flags
      buf   

  private static void lambda$0(com.sun.javafx.sg.prism.NGCanvas$PixelData, com.sun.prism.RTTexture, com.sun.prism.Graphics, int, int);
    descriptor: (Lcom/sun/javafx/sg/prism/NGCanvas$PixelData;Lcom/sun/prism/RTTexture;Lcom/sun/prism/Graphics;II)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=5, args_size=5
         0: .line 589
            aload 0
            aload 1
            invokevirtual com.sun.javafx.sg.prism.NGCanvas$PixelData.save:(Lcom/sun/prism/RTTexture;)V
         1: .line 590
            aload 0
            aload 2
            iload 3
            iload 4
            invokevirtual com.sun.javafx.sg.prism.NGCanvas$PixelData.restore:(Lcom/sun/prism/Graphics;II)V
         2: .line 591
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "NGCanvas.java"
NestMembers:
  com.sun.javafx.sg.prism.NGCanvas$1  com.sun.javafx.sg.prism.NGCanvas$EffectInput  com.sun.javafx.sg.prism.NGCanvas$InitType  com.sun.javafx.sg.prism.NGCanvas$MyBlend  com.sun.javafx.sg.prism.NGCanvas$PixelData  com.sun.javafx.sg.prism.NGCanvas$RenderBuf  com.sun.javafx.sg.prism.NGCanvas$RenderInput
InnerClasses:
  com.sun.javafx.sg.prism.NGCanvas$1
  EffectInput = com.sun.javafx.sg.prism.NGCanvas$EffectInput of com.sun.javafx.sg.prism.NGCanvas
  final InitType = com.sun.javafx.sg.prism.NGCanvas$InitType of com.sun.javafx.sg.prism.NGCanvas
  MyBlend = com.sun.javafx.sg.prism.NGCanvas$MyBlend of com.sun.javafx.sg.prism.NGCanvas
  private PixelData = com.sun.javafx.sg.prism.NGCanvas$PixelData of com.sun.javafx.sg.prism.NGCanvas
  RenderBuf = com.sun.javafx.sg.prism.NGCanvas$RenderBuf of com.sun.javafx.sg.prism.NGCanvas
  RenderInput = com.sun.javafx.sg.prism.NGCanvas$RenderInput of com.sun.javafx.sg.prism.NGCanvas
  public final Mode = com.sun.javafx.sg.prism.NGShape$Mode of com.sun.javafx.sg.prism.NGShape
  public final WrapMode = com.sun.prism.Texture$WrapMode of com.sun.prism.Texture
  public final Mode = com.sun.scenario.effect.Blend$Mode of com.sun.scenario.effect.Blend
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles