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 IMAGE_SMOOTH;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 20

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

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

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

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

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

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

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

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

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

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

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

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

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

  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 boolean imageSmoothing;
    descriptor: Z
    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 153
            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 154
            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 313
            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 351
            bipush 6
            newarray 6
            putstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_COORDS:[F
         4: .line 352
            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 353
            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 402
            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 403
            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 668
            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 793
            iconst_3
            newarray 10
            dup
            iconst_1
        10: .line 795
            iconst_1
            iastore
            dup
            iconst_2
        11: .line 796
            iconst_2
            iastore
        12: .line 793
            putstatic com.sun.javafx.sg.prism.NGCanvas.prcaps:[I
        13: .line 798
            iconst_3
            newarray 10
            dup
            iconst_1
        14: .line 800
            iconst_1
            iastore
            dup
            iconst_2
        15: .line 801
            iconst_2
            iastore
        16: .line 798
            putstatic com.sun.javafx.sg.prism.NGCanvas.prjoins:[I
        17: .line 803
            iconst_4
            newarray 10
            dup
            iconst_0
        18: .line 804
            getstatic javafx.geometry.VPos.TOP:Ljavafx/geometry/VPos;
            invokevirtual javafx.geometry.VPos.ordinal:()I
            iastore
            dup
            iconst_1
        19: .line 805
            getstatic javafx.geometry.VPos.CENTER:Ljavafx/geometry/VPos;
            invokevirtual javafx.geometry.VPos.ordinal:()I
            iastore
            dup
            iconst_2
        20: .line 806
            getstatic javafx.geometry.VPos.BASELINE:Ljavafx/geometry/VPos;
            invokevirtual javafx.geometry.VPos.ordinal:()I
            iastore
            dup
            iconst_3
        21: .line 807
            getstatic javafx.geometry.VPos.BOTTOM:Ljavafx/geometry/VPos;
            invokevirtual javafx.geometry.VPos.ordinal:()I
            iastore
        22: .line 803
            putstatic com.sun.javafx.sg.prism.NGCanvas.prbases:[I
        23: .line 809
            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 355
            aload 0 /* this */
            invokespecial com.sun.javafx.sg.prism.NGNode.<init>:()V
         1: .line 404
            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 356
            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 357
            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 358
            fconst_1
            fstore 3 /* hPS */
        start local 3 // float hPS
         5: .line 359
            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 360
            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 361
            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 359
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 6
        10: .line 363
            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 365
            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 366
            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 367
            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 369
            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 370
            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 371
            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 372
            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 373
            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 374
            aload 0 /* this */
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.initAttributes:()V
        20: .line 375
            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 378
            aload 0 /* this */
            fconst_1
            putfield com.sun.javafx.sg.prism.NGCanvas.globalAlpha:F
         1: .line 379
            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 380
            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 381
            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 382
            aload 0 /* this */
            fconst_1
            putfield com.sun.javafx.sg.prism.NGCanvas.linewidth:F
         5: .line 383
            aload 0 /* this */
            iconst_2
            putfield com.sun.javafx.sg.prism.NGCanvas.linecap:I
         6: .line 384
            aload 0 /* this */
            iconst_0
            putfield com.sun.javafx.sg.prism.NGCanvas.linejoin:I
         7: .line 385
            aload 0 /* this */
            ldc 10.0
            putfield com.sun.javafx.sg.prism.NGCanvas.miterlimit:F
         8: .line 386
            aload 0 /* this */
            aconst_null
            putfield com.sun.javafx.sg.prism.NGCanvas.dashes:[D
         9: .line 387
            aload 0 /* this */
            fconst_0
            putfield com.sun.javafx.sg.prism.NGCanvas.dashOffset:F
        10: .line 388
            aload 0 /* this */
            aconst_null
            putfield com.sun.javafx.sg.prism.NGCanvas.stroke:Lcom/sun/prism/BasicStroke;
        11: .line 389
            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 392
            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 393
            aload 0 /* this */
            getstatic com.sun.javafx.sg.prism.NGCanvas.SMOOTH_GRAY:B
            putfield com.sun.javafx.sg.prism.NGCanvas.smoothing:I
        14: .line 394
            aload 0 /* this */
            iconst_1
            putfield com.sun.javafx.sg.prism.NGCanvas.imageSmoothing:Z
        15: .line 395
            aload 0 /* this */
            iconst_0
            putfield com.sun.javafx.sg.prism.NGCanvas.align:I
        16: .line 396
            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
        17: .line 397
            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
        18: .line 398
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clipStack:Ljava/util/LinkedList;
            invokevirtual java.util.LinkedList.clear:()V
        19: .line 399
            aload 0 /* this */
            iconst_0
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.resetClip:(Z)V
        20: .line 400
            return
        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;

  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 513
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.inverseTransform:Lcom/sun/javafx/geom/transform/Affine2D;
            ifnonnull 3
         1: .line 514
            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 515
            aload 0 /* this */
            iconst_1
            putfield com.sun.javafx.sg.prism.NGCanvas.inversedirty:Z
         3: .line 517
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.inversedirty:Z
            ifeq 10
         4: .line 518
            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 520
            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 521
            goto 9
      StackMap locals:
      StackMap stack: com.sun.javafx.geom.transform.NoninvertibleTransformException
         7: pop
         8: .line 522
            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 524
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield com.sun.javafx.sg.prism.NGCanvas.inversedirty:Z
        10: .line 526
      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 531
            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 537
            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 538
            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 539
            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 540
            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 541
            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 540
            invokevirtual com.sun.javafx.geom.RectBounds.setBounds:(FFFF)V
         6: .line 542
            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 547
            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 548
            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 549
            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 550
            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 551
            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 550
            invokevirtual com.sun.javafx.geom.RectBounds.setBounds:(FFFF)V
         6: .line 552
            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 556
            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 557
            aload 0 /* r */
            invokeinterface java.lang.Runnable.run:()V
         2: .line 558
            goto 10
         3: .line 559
      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 560
            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 563
            aload 1 /* f */
            invokevirtual java.util.concurrent.FutureTask.get:()Ljava/lang/Object;
            pop
         6: .line 564
            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 565
            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 566
      StackMap locals:
      StackMap stack: java.lang.InterruptedException
            pop
        end local 1 // java.util.concurrent.FutureTask f
        10: .line 570
      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 573
            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 574
            aload 1 /* g */
            instanceof com.sun.prism.PrinterGraphics
            ifeq 2
            aload 2 /* localTex */
            ifnonnull 3
         2: .line 575
      StackMap locals: com.sun.prism.RTTexture
      StackMap stack:
            iconst_0
            ireturn
         3: .line 577
      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 578
            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 579
            iload 4 /* isCompatTex */
            ifeq 7
         6: .line 580
            iconst_0
            ireturn
         7: .line 583
      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 584
            aload 2 /* localTex */
            invokeinterface com.sun.prism.RTTexture.getContentHeight:()I
            istore 6 /* th */
        start local 6 // int th
         9: .line 586
            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 585
            astore 7 /* tmpTex */
        start local 7 // com.sun.prism.RTTexture tmpTex
        11: .line 587
            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 588
            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 589
            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 590
            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 591
            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 595
            goto 18
        17: .line 596
      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 598
      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 599
            aload 7 /* tmpTex */
            invokeinterface com.sun.prism.RTTexture.unlock:()V
        20: .line 600
            aload 7 /* tmpTex */
            invokeinterface com.sun.prism.RTTexture.dispose:()V
        21: .line 601
            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 606
            aload 0 /* this */
            aload 1 /* g */
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.printedCanvas:(Lcom/sun/prism/Graphics;)Z
            ifeq 1
            return
         1: .line 607
      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 608
            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 609
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.thebuf:Lcom/sun/javafx/sg/prism/GrowableDataBuffer;
            ifnull 7
         4: .line 610
            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 611
            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 612
            aload 0 /* this */
            aconst_null
            putfield com.sun.javafx.sg.prism.NGCanvas.thebuf:Lcom/sun/javafx/sg/prism/GrowableDataBuffer;
         7: .line 614
      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 615
            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 616
            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 617
            fconst_0
            fconst_0
            fload 2 /* dw */
            fload 3 /* dh */
        11: .line 618
            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 616
            invokeinterface com.sun.prism.Graphics.drawTexture:(Lcom/sun/prism/Texture;FFFFFFFF)V
        13: .line 620
            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 622
      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 623
            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 627
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.thebuf:Lcom/sun/javafx/sg/prism/GrowableDataBuffer;
            ifnull 8
         1: .line 628
            aload 0 /* this */
            aload 1 /* gOptional */
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.initCanvas:(Lcom/sun/prism/Graphics;)V
         2: .line 629
            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 630
            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 631
            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 632
            aload 0 /* this */
            aconst_null
            putfield com.sun.javafx.sg.prism.NGCanvas.thebuf:Lcom/sun/javafx/sg/prism/GrowableDataBuffer;
         6: .line 633
            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 635
      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 637
      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 640
            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 641
      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 642
            return
         3: .line 644
      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 647
            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 648
            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 649
            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 651
      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 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.CLEAR:Lcom/sun/prism/CompositeMode;
            invokeinterface com.sun.prism.Graphics.setCompositeMode:(Lcom/sun/prism/CompositeMode;)V
         1: .line 655
            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 656
            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 657
            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 658
            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 661
            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 662
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield com.sun.javafx.sg.prism.NGCanvas.clipsRendered:I
         2: .line 663
            aload 0 /* this */
            iconst_1
            putfield com.sun.javafx.sg.prism.NGCanvas.clipIsRect:Z
         3: .line 664
            aload 0 /* this */
            aconst_null
            putfield com.sun.javafx.sg.prism.NGCanvas.clipRect:Lcom/sun/javafx/geom/Rectangle;
         4: .line 665
            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 671
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clipIsRect:Z
            ifeq 3
         1: .line 672
            iconst_0
            istore 1 /* clipValidated */
        start local 1 // boolean clipValidated
         2: .line 673
            goto 7
        end local 1 // boolean clipValidated
         3: .line 674
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 1 /* clipValidated */
        start local 1 // boolean clipValidated
         4: .line 675
            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 676
            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 678
            aload 0 /* this */
            iconst_0
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.resetClip:(Z)V
         7: .line 681
      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 682
            goto 34
         9: .line 683
      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 684
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clipIsRect:Z
            ifeq 27
        11: .line 685
            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 686
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clipRect:Lcom/sun/javafx/geom/Rectangle;
            ifnonnull 15
        13: .line 687
            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 688
            goto 34
        15: .line 689
      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 691
            goto 34
        17: .line 693
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield com.sun.javafx.sg.prism.NGCanvas.clipIsRect:Z
        18: .line 694
            iload 1 /* clipValidated */
            ifne 22
        19: .line 695
            iconst_1
            istore 1 /* clipValidated */
        20: .line 696
            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 697
            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 701
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clipRect:Lcom/sun/javafx/geom/Rectangle;
            ifnull 27
        23: .line 702
            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 703
            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 704
            fconst_0
            fconst_0
            invokespecial com.sun.javafx.geom.RoundRectangle2D.<init>:(FFFFFF)V
        26: .line 702
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.renderClip:(Lcom/sun/javafx/geom/Shape;)V
        27: .line 707
      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 708
            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 709
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clipRect:Lcom/sun/javafx/geom/Rectangle;
            ifnonnull 32
        30: .line 710
            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 711
            goto 33
        32: .line 712
      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 714
      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 682
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clipsRendered:I
            iload 2 /* clipSize */
            if_icmplt 9
        35: .line 716
            iload 1 /* clipValidated */
            ifeq 37
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clipIsRect:Z
            ifeq 37
        36: .line 717
            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 719
      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 723
            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 724
            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 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.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 726
            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 727
            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 728
            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 729
            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 739
            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 738
            astore 7 /* fctx */
        start local 7 // com.sun.scenario.effect.FilterContext fctx
         2: .line 741
            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 740
            astore 8 /* id */
        start local 8 // com.sun.scenario.effect.ImageData id
         4: .line 742
            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 743
            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 744
            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 745
            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 746
            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 747
            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 748
            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 749
            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 750
            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 751
            aload 8 /* id */
            invokevirtual com.sun.scenario.effect.ImageData.unref:()V
        14: .line 752
            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 762
            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 763
            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 764
            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 766
            aload 4 /* bounds */
            ifnull 6
         4: .line 767
            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 768
            goto 7
        end local 7 // com.sun.javafx.geom.Rectangle blendclip
         6: .line 769
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 7 /* blendclip */
        start local 7 // com.sun.javafx.geom.Rectangle blendclip
         7: .line 771
      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 772
            getstatic com.sun.javafx.geom.transform.BaseTransform.IDENTITY_TRANSFORM:Lcom/sun/javafx/geom/transform/BaseTransform;
            aload 7 /* blendclip */
         9: .line 773
            aload 5 /* comp */
            aload 6 /* destbuf */
        10: .line 771
            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 774
            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 777
            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 778
            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 781
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.stroke:Lcom/sun/prism/BasicStroke;
            ifnonnull 4
         1: .line 782
            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 783
            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 782
            putfield com.sun.javafx.sg.prism.NGCanvas.stroke:Lcom/sun/prism/BasicStroke;
         4: .line 785
      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 789
            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 790
            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 791
            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 811
            goto 243
         1: .line 812
      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 813
            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: 144
                   10: 146
                   11: 98
                   12: 168
                   13: 40
                   14: 46
                   15: 49
                   16: 109
                   17: 132
                   18: 135
                   19: 140
                   20: 142
                   21: 242
                   22: 242
                   23: 242
                   24: 242
                   25: 170
                   26: 170
                   27: 170
                   28: 170
                   29: 170
                   30: 170
                   31: 170
                   32: 170
                   33: 170
                   34: 170
                   35: 170
                   36: 170
                   37: 242
                   38: 242
                   39: 242
                   40: 19
                   41: 21
                   42: 23
                   43: 25
                   44: 29
                   45: 34
                   46: 36
                   47: 170
                   48: 170
                   49: 242
                   50: 170
                   51: 170
                   52: 55
                   53: 72
                   54: 242
                   55: 242
                   56: 242
                   57: 242
                   58: 242
                   59: 242
                   60: 148
                   61: 242
                   62: 242
                   63: 242
                   64: 242
                   65: 242
                   66: 242
                   67: 242
                   68: 242
                   69: 242
                   70: 3
                   71: 8
              default: 242
          }
         3: .line 815
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.initAttributes:()V
         4: .line 818
            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 819
            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 820
            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 821
            goto 243
         8: .line 823
      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 824
            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 825
            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 826
            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 827
            iload 5 /* clearx */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.tw:I
            if_icmpge 14
        13: .line 832
            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 834
      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 839
            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 841
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 3 /* neww */
            putfield com.sun.javafx.sg.prism.NGCanvas.cw:I
        17: .line 842
            aload 0 /* this */
            iload 4 /* newh */
            putfield com.sun.javafx.sg.prism.NGCanvas.ch:I
        18: .line 843
            goto 243
        end local 6 // int cleary
        end local 5 // int clearx
        end local 4 // int newh
        end local 3 // int neww
        19: .line 845
      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 846
            goto 243
        21: .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.moveTo:(FF)V
        22: .line 849
            goto 243
        23: .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
            invokevirtual com.sun.javafx.geom.Path2D.lineTo:(FF)V
        24: .line 852
            goto 243
        25: .line 854
      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 855
            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 854
            invokevirtual com.sun.javafx.geom.Path2D.quadTo:(FFFF)V
        28: .line 856
            goto 243
        29: .line 858
      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 859
            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 860
            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 858
            invokevirtual com.sun.javafx.geom.Path2D.curveTo:(FFFFFF)V
        33: .line 861
            goto 243
        34: .line 863
      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 864
            goto 243
        36: .line 866
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.highestPixelScale:F
            fconst_1
            fcmpl
            ifeq 243
        37: .line 867
            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 868
            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 870
            goto 243
        40: .line 873
      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 874
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.highestPixelScale:F
            fconst_1
            fcmpl
            ifeq 44
        42: .line 875
            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 876
            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 878
      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 879
            goto 243
        end local 7 // com.sun.javafx.geom.Path2D clippath
        46: .line 883
      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 884
            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 885
            goto 243
        49: .line 888
      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 889
            iload 7 /* type */
            tableswitch { // 0 - 2
                    0: 51
                    1: 52
                    2: 53
              default: 54
          }
        51: .line 890
      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 243
        52: .line 891
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield com.sun.javafx.sg.prism.NGCanvas.arctype:I
            goto 243
        53: .line 892
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_2
            putfield com.sun.javafx.sg.prism.NGCanvas.arctype:I
        54: .line 894
      StackMap locals:
      StackMap stack:
            goto 243
        end local 7 // byte type
        55: .line 898
      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 899
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getInt:()I
            i2f
            fstore 8 /* dy1 */
        start local 8 // float dy1
        57: .line 900
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getInt:()I
            istore 9 /* argb */
        start local 9 // int argb
        58: .line 901
            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 902
            aload 10 /* gr */
            fconst_1
            invokeinterface com.sun.prism.Graphics.setExtraAlpha:(F)V
        60: .line 903
            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 904
            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 905
            fload 7 /* dx1 */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.highestPixelScale:F
            fmul
            fstore 7 /* dx1 */
        63: .line 906
            fload 8 /* dy1 */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.highestPixelScale:F
            fmul
            fstore 8 /* dy1 */
        64: .line 907
            iload 9 /* argb */
            bipush 24
            iushr
            i2f
            ldc 255.0
            fdiv
            fstore 11 /* a */
        start local 11 // float a
        65: .line 908
            iload 9 /* argb */
            bipush 16
            ishr
            sipush 255
            iand
            i2f
            ldc 255.0
            fdiv
            fstore 12 /* r */
        start local 12 // float r
        66: .line 909
            iload 9 /* argb */
            bipush 8
            ishr
            sipush 255
            iand
            i2f
            ldc 255.0
            fdiv
            fstore 13 /* g */
        start local 13 // float g
        67: .line 910
            iload 9 /* argb */
            sipush 255
            iand
            i2f
            ldc 255.0
            fdiv
            fstore 14 /* b */
        start local 14 // float b
        68: .line 911
            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 916
            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 917
            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 918
            goto 243
        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 922
      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 923
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getInt:()I
            i2f
            fstore 8 /* dy1 */
        start local 8 // float dy1
        74: .line 924
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getInt:()I
            istore 9 /* w */
        start local 9 // int w
        75: .line 925
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getInt:()I
            istore 10 /* h */
        start local 10 // int h
        76: .line 926
            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 927
            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 928
            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 929
            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 931
            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 930
            astore 15 /* tex */
        start local 15 // com.sun.prism.Texture tex
        82: .line 932
            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 933
            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 934
            fload 7 /* dx1 */
            iload 9 /* w */
            i2f
            fadd
            fstore 16 /* dx2 */
        start local 16 // float dx2
        85: .line 935
            fload 8 /* dy1 */
            iload 10 /* h */
            i2f
            fadd
            fstore 17 /* dy2 */
        start local 17 // float dy2
        86: .line 936
            fload 7 /* dx1 */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.highestPixelScale:F
            fmul
            fstore 7 /* dx1 */
        87: .line 937
            fload 8 /* dy1 */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.highestPixelScale:F
            fmul
            fstore 8 /* dy1 */
        88: .line 938
            fload 16 /* dx2 */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.highestPixelScale:F
            fmul
            fstore 16 /* dx2 */
        89: .line 939
            fload 17 /* dy2 */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.highestPixelScale:F
            fmul
            fstore 17 /* dy2 */
        90: .line 940
            aload 13 /* gr */
            aload 15 /* tex */
        91: .line 941
            fload 7 /* dx1 */
            fload 8 /* dy1 */
            fload 16 /* dx2 */
            fload 17 /* dy2 */
        92: .line 942
            fconst_0
            fconst_0
            iload 9 /* w */
            i2f
            iload 10 /* h */
            i2f
        93: .line 940
            invokeinterface com.sun.prism.Graphics.drawTexture:(Lcom/sun/prism/Texture;FFFFFFFF)V
        94: .line 943
            aload 15 /* tex */
            invokeinterface com.sun.prism.Texture.contentsNotUseful:()V
        95: .line 944
            aload 15 /* tex */
            invokeinterface com.sun.prism.Texture.unlock:()V
        96: .line 945
            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 946
            goto 243
        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 950
      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 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 9 /* mxy */
        start local 9 // double mxy
       100: .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 11 /* mxt */
        start local 11 // double mxt
       101: .line 953
            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 954
            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 955
            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 956
            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 957
            aload 0 /* this */
            iconst_1
            putfield com.sun.javafx.sg.prism.NGCanvas.inversedirty:Z
       106: .line 958
            goto 243
        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 961
      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 962
            goto 243
       109: .line 964
      StackMap locals:
      StackMap stack:
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getByte:()B
            ifne 112
       110: .line 965
            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 966
            goto 243
       112: .line 967
      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 969
            goto 243
       114: .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.scenario.effect.Blend$Mode
            putfield com.sun.javafx.sg.prism.NGCanvas.blendmode:Lcom/sun/scenario/effect/Blend$Mode;
       115: .line 972
            goto 243
       116: .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.fillPaint:Lcom/sun/prism/paint/Paint;
       117: .line 975
            goto 243
       118: .line 977
      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 978
            goto 243
       120: .line 980
      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 981
            aload 0 /* this */
            aconst_null
            putfield com.sun.javafx.sg.prism.NGCanvas.stroke:Lcom/sun/prism/BasicStroke;
       122: .line 982
            goto 243
       123: .line 984
      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 985
            aload 0 /* this */
            aconst_null
            putfield com.sun.javafx.sg.prism.NGCanvas.stroke:Lcom/sun/prism/BasicStroke;
       125: .line 986
            goto 243
       126: .line 988
      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 989
            aload 0 /* this */
            aconst_null
            putfield com.sun.javafx.sg.prism.NGCanvas.stroke:Lcom/sun/prism/BasicStroke;
       128: .line 990
            goto 243
       129: .line 992
      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 993
            aload 0 /* this */
            aconst_null
            putfield com.sun.javafx.sg.prism.NGCanvas.stroke:Lcom/sun/prism/BasicStroke;
       131: .line 994
            goto 243
       132: .line 996
      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 997
            aload 0 /* this */
            aconst_null
            putfield com.sun.javafx.sg.prism.NGCanvas.stroke:Lcom/sun/prism/BasicStroke;
       134: .line 998
            goto 243
       135: .line 1000
      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 1001
            aload 0 /* this */
            aconst_null
            putfield com.sun.javafx.sg.prism.NGCanvas.stroke:Lcom/sun/prism/BasicStroke;
       137: .line 1002
            goto 243
       138: .line 1004
      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 1005
            goto 243
       140: .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.smoothing:I
       141: .line 1008
            goto 243
       142: .line 1010
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getBoolean:()Z
            putfield com.sun.javafx.sg.prism.NGCanvas.imageSmoothing:Z
       143: .line 1011
            goto 243
       144: .line 1013
      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
       145: .line 1014
            goto 243
       146: .line 1016
      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
       147: .line 1017
            goto 243
       148: .line 1020
      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
       149: .line 1021
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clipStack:Ljava/util/LinkedList;
            invokevirtual java.util.LinkedList.isEmpty:()Z
            ifeq 150
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cv:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            goto 151
      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:
       150: 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
       151: astore 8 /* dest */
        start local 8 // com.sun.javafx.sg.prism.NGCanvas$RenderBuf dest
       152: .line 1023
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.highestPixelScale:F
            fconst_1
            fcmpl
            ifeq 157
       153: .line 1024
            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
       154: .line 1025
            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
       155: .line 1026
            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
       156: .line 1027
            goto 158
        end local 9 // com.sun.javafx.geom.transform.BaseTransform tx
       157: .line 1028
      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
       158: .line 1030
      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 */
       159: .line 1031
            aload 9 /* tx */
            aconst_null
       160: .line 1032
            getstatic com.sun.prism.CompositeMode.SRC:Lcom/sun/prism/CompositeMode;
            aload 8 /* dest */
       161: .line 1030
            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
       162: .line 1033
            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
       163: .line 1034
            aload 8 /* dest */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cv:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            if_acmpeq 243
       164: .line 1035
            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;
       165: .line 1036
            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;
       166: .line 1035
            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
       167: .line 1038
            goto 243
        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
       168: .line 1041
      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;
       169: .line 1042
            goto 243
       170: .line 1062
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.initClip:()Z
            istore 9 /* clipvalidated */
        start local 9 // boolean clipvalidated
       171: .line 1063
            iload 9 /* clipvalidated */
            ifeq 176
       172: .line 1064
            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
       173: .line 1065
            iconst_1
            istore 8 /* tempvalidated */
        start local 8 // boolean tempvalidated
       174: .line 1066
            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
       175: .line 1067
            goto 183
        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:
       176: 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 181
       177: .line 1068
            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
       178: .line 1069
            iconst_1
            istore 8 /* tempvalidated */
        start local 8 // boolean tempvalidated
       179: .line 1070
            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
       180: .line 1071
            goto 183
        end local 8 // boolean tempvalidated
        end local 7 // com.sun.javafx.sg.prism.NGCanvas$RenderBuf dest
       181: .line 1072
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 8 /* tempvalidated */
        start local 8 // boolean tempvalidated
       182: .line 1073
            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
       183: .line 1075
      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 199
       184: .line 1076
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.save:()V
       185: .line 1077
            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
       186: .line 1079
            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
       187: .line 1078
            astore 10 /* ri */
        start local 10 // com.sun.javafx.sg.prism.NGCanvas$RenderInput ri
       188: .line 1087
            aload 0 /* this */
            aload 10 /* ri */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.effect:Lcom/sun/scenario/effect/Effect;
       189: .line 1088
            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;
       190: .line 1089
            getstatic com.sun.prism.CompositeMode.SRC_OVER:Lcom/sun/prism/CompositeMode;
            aload 7 /* dest */
       191: .line 1087
            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;
       192: .line 1086
            astore 11 /* resultBounds */
        start local 11 // com.sun.javafx.geom.Rectangle resultBounds
       193: .line 1090
            aload 7 /* dest */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cv:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            if_acmpeq 208
       194: .line 1091
            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
       195: .line 1092
            aload 11 /* resultBounds */
            getfield com.sun.javafx.geom.Rectangle.x:I
            aload 11 /* resultBounds */
            getfield com.sun.javafx.geom.Rectangle.width:I
            iadd
            i2f
       196: .line 1093
            aload 11 /* resultBounds */
            getfield com.sun.javafx.geom.Rectangle.y:I
            aload 11 /* resultBounds */
            getfield com.sun.javafx.geom.Rectangle.height:I
            iadd
            i2f
       197: .line 1091
            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
       198: .line 1095
            goto 208
       199: .line 1096
      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
       200: .line 1097
            aload 10 /* g */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.globalAlpha:F
            invokeinterface com.sun.prism.Graphics.setExtraAlpha:(F)V
       201: .line 1098
            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
       202: .line 1099
            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
       203: .line 1103
            aload 7 /* dest */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cv:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            if_acmpeq 204
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_RECTBOUNDS:Lcom/sun/javafx/geom/RectBounds;
            goto 205
      StackMap locals: com.sun.prism.Graphics
      StackMap stack:
       204: aconst_null
       205: .line 1102
      StackMap locals:
      StackMap stack: com.sun.javafx.geom.RectBounds
            astore 11 /* optSaveBounds */
        start local 11 // com.sun.javafx.geom.RectBounds optSaveBounds
       206: .line 1104
            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
       207: .line 1105
            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
       208: .line 1107
      StackMap locals:
      StackMap stack:
            iload 9 /* clipvalidated */
            ifeq 231
       209: .line 1109
            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 213
       210: .line 1113
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cv:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            astore 7 /* dest */
       211: .line 1114
            getstatic com.sun.prism.CompositeMode.SRC_OVER:Lcom/sun/prism/CompositeMode;
            astore 10 /* compmode */
        start local 10 // com.sun.prism.CompositeMode compmode
       212: .line 1115
            goto 214
        end local 10 // com.sun.prism.CompositeMode compmode
       213: .line 1123
      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
       214: .line 1125
      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 216
       215: .line 1126
            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
       216: .line 1128
      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 231
       217: .line 1129
            aload 7 /* dest */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.cv:Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
            if_acmpne 228
            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 228
       218: .line 1130
            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
       219: .line 1131
            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
       220: .line 1132
            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
       221: .line 1133
            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
       222: .line 1134
            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
       223: .line 1135
            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;
       224: .line 1136
            iload 12 /* dx */
            iload 13 /* dy */
            iload 14 /* dw */
            iload 15 /* dh */
       225: .line 1137
            iload 12 /* dx */
            iload 13 /* dy */
            iload 12 /* dx */
            iload 13 /* dy */
       226: .line 1135
            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
       227: .line 1138
            goto 231
       228: .line 1139
      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;
       229: .line 1140
            getstatic com.sun.javafx.sg.prism.NGCanvas.TEMP_RECTBOUNDS:Lcom/sun/javafx/geom/RectBounds;
            aload 10 /* compmode */
            aload 7 /* dest */
       230: .line 1139
            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
       231: .line 1144
      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 237
       232: .line 1149
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.clipRect:Lcom/sun/javafx/geom/Rectangle;
            ifnull 234
       233: .line 1150
            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
       234: .line 1152
      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;
       235: .line 1153
            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;
       236: .line 1152
            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
       237: .line 1155
      StackMap locals:
      StackMap stack:
            iload 9 /* clipvalidated */
            ifeq 239
       238: .line 1156
            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
       239: .line 1158
      StackMap locals:
      StackMap stack:
            iload 8 /* tempvalidated */
            ifeq 243
       240: .line 1159
            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
       241: .line 1161
            goto 243
        end local 9 // boolean clipvalidated
        end local 8 // boolean tempvalidated
        end local 7 // com.sun.javafx.sg.prism.NGCanvas$RenderBuf dest
       242: .line 1164
      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
       243: .line 811
      StackMap locals:
      StackMap stack:
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.hasValues:()Z
            ifne 1
       244: .line 1167
            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  245     0           this  Lcom/sun/javafx/sg/prism/NGCanvas;
            0  245     1            buf  Lcom/sun/javafx/sg/prism/GrowableDataBuffer;
            2  243     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
          149  168     7              e  Lcom/sun/scenario/effect/Effect;
          152  168     8           dest  Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
          155  157     9             tx  Lcom/sun/javafx/geom/transform/BaseTransform;
          158  168     9             tx  Lcom/sun/javafx/geom/transform/BaseTransform;
          175  176     7           dest  Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
          180  181     7           dest  Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
          183  242     7           dest  Lcom/sun/javafx/sg/prism/NGCanvas$RenderBuf;
          174  176     8  tempvalidated  Z
          179  181     8  tempvalidated  Z
          182  242     8  tempvalidated  Z
          171  242     9  clipvalidated  Z
          188  198    10             ri  Lcom/sun/javafx/sg/prism/NGCanvas$RenderInput;
          193  198    11   resultBounds  Lcom/sun/javafx/geom/Rectangle;
          200  208    10              g  Lcom/sun/prism/Graphics;
          206  208    11  optSaveBounds  Lcom/sun/javafx/geom/RectBounds;
          212  213    10       compmode  Lcom/sun/prism/CompositeMode;
          214  231    10       compmode  Lcom/sun/prism/CompositeMode;
          219  227    11            mtg  Lcom/sun/prism/MaskTextureGraphics;
          220  227    12             dx  I
          221  227    13             dy  I
          222  227    14             dw  I
          223  227    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 1182
            iconst_0
            istore 5 /* strokeBounds */
        start local 5 // boolean strokeBounds
         1: .line 1183
            iconst_0
            istore 6 /* transformBounds */
        start local 6 // boolean transformBounds
         2: .line 1184
            iload 1 /* token */
            tableswitch { // 25 - 51
                   25: 28
                   26: 27
                   27: 28
                   28: 15
                   29: 28
                   30: 27
                   31: 54
                   32: 53
                   33: 71
                   34: 71
                   35: 130
                   36: 130
                   37: 200
                   38: 200
                   39: 200
                   40: 200
                   41: 200
                   42: 200
                   43: 200
                   44: 200
                   45: 200
                   46: 200
                   47: 3
                   48: 9
                   49: 200
                   50: 91
                   51: 91
              default: 200
          }
         3: .line 1187
      StackMap locals: int int
      StackMap stack:
            aload 4 /* bounds */
            ifnull 5
         4: .line 1188
            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 1190
      StackMap locals:
      StackMap stack:
            aload 3 /* gr */
            ifnull 201
         6: .line 1191
            aload 0 /* this */
            aload 3 /* gr */
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.setupFill:(Lcom/sun/prism/Graphics;)V
         7: .line 1192
            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 1194
            goto 201
         9: .line 1198
      StackMap locals:
      StackMap stack:
            aload 4 /* bounds */
            ifnull 11
        10: .line 1199
            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 1201
      StackMap locals:
      StackMap stack:
            aload 3 /* gr */
            ifnull 201
        12: .line 1202
            aload 0 /* this */
            aload 3 /* gr */
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.setupStroke:(Lcom/sun/prism/Graphics;)V
        13: .line 1203
            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 1205
            goto 201
        15: .line 1209
      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 1210
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 8 /* y1 */
        start local 8 // float y1
        17: .line 1211
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 9 /* x2 */
        start local 9 // float x2
        18: .line 1212
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 10 /* y2 */
        start local 10 // float y2
        19: .line 1213
            aload 4 /* bounds */
            ifnull 23
        20: .line 1214
            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 1215
            iconst_1
            istore 5 /* strokeBounds */
        22: .line 1216
            iconst_1
            istore 6 /* transformBounds */
        23: .line 1218
      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 201
        24: .line 1219
            aload 0 /* this */
            aload 3 /* gr */
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.setupStroke:(Lcom/sun/prism/Graphics;)V
        25: .line 1220
            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 1222
            goto 201
        end local 10 // float y2
        end local 9 // float x2
        end local 8 // float y1
        end local 7 // float x1
        27: .line 1226
      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 1231
      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 1232
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 8 /* y */
        start local 8 // float y
        30: .line 1233
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 9 /* w */
        start local 9 // float w
        31: .line 1234
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 10 /* h */
        start local 10 // float h
        32: .line 1235
            aload 4 /* bounds */
            ifnull 35
        33: .line 1236
            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 1237
            iconst_1
            istore 6 /* transformBounds */
        35: .line 1239
      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 201
        36: .line 1240
            iload 1 /* token */
            tableswitch { // 25 - 30
                   25: 37
                   26: 43
                   27: 49
                   28: 52
                   29: 40
                   30: 46
              default: 52
          }
        37: .line 1242
      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 1243
            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 1244
            goto 201
        40: .line 1246
      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 1247
            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 1248
            goto 201
        43: .line 1250
      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 1251
            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 1252
            goto 201
        46: .line 1254
      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 1255
            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 1256
            goto 201
        49: .line 1258
      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 1259
            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 1260
            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 1264
      StackMap locals:
      StackMap stack:
            goto 201
        end local 10 // float h
        end local 9 // float w
        end local 8 // float y
        end local 7 // float x
        53: .line 1267
      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 1270
      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 1271
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 8 /* y */
        start local 8 // float y
        56: .line 1272
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 9 /* w */
        start local 9 // float w
        57: .line 1273
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 10 /* h */
        start local 10 // float h
        58: .line 1274
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 11 /* aw */
        start local 11 // float aw
        59: .line 1275
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 12 /* ah */
        start local 12 // float ah
        60: .line 1276
            aload 4 /* bounds */
            ifnull 63
        61: .line 1277
            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 1278
            iconst_1
            istore 6 /* transformBounds */
        63: .line 1280
      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 201
        64: .line 1281
            iload 1 /* token */
            bipush 31
            if_icmpne 68
        65: .line 1282
            aload 0 /* this */
            aload 3 /* gr */
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.setupFill:(Lcom/sun/prism/Graphics;)V
        66: .line 1283
            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 1284
            goto 201
        68: .line 1285
      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 1286
            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 1289
            goto 201
        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 1294
      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 1295
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 8 /* y */
        start local 8 // float y
        73: .line 1296
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 9 /* w */
        start local 9 // float w
        74: .line 1297
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 10 /* h */
        start local 10 // float h
        75: .line 1298
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 11 /* as */
        start local 11 // float as
        76: .line 1299
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 12 /* ae */
        start local 12 // float ae
        77: .line 1300
            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 1301
            iload 1 /* token */
            bipush 33
            if_icmpne 85
        79: .line 1302
            aload 4 /* bounds */
            ifnull 81
        80: .line 1303
            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 1305
      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 201
        82: .line 1306
            aload 0 /* this */
            aload 3 /* gr */
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.setupFill:(Lcom/sun/prism/Graphics;)V
        83: .line 1307
            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 1309
            goto 201
        85: .line 1310
      StackMap locals:
      StackMap stack:
            aload 4 /* bounds */
            ifnull 87
        86: .line 1311
            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 1313
      StackMap locals:
      StackMap stack:
            aload 3 /* gr */
            ifnull 201
        88: .line 1314
            aload 0 /* this */
            aload 3 /* gr */
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.setupStroke:(Lcom/sun/prism/Graphics;)V
        89: .line 1315
            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 1318
            goto 201
        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 1323
      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 1324
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 8 /* dy */
        start local 8 // float dy
        93: .line 1325
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 9 /* dw */
        start local 9 // float dw
        94: .line 1326
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 10 /* dh */
        start local 10 // float dh
        95: .line 1327
            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 1329
            iload 1 /* token */
            bipush 50
            if_icmpne 102
        97: .line 1330
            fconst_0
            dup
            fstore 13 /* sy */
        start local 13 // float sy
        98: fstore 12 /* sx */
        start local 12 // float sx
        99: .line 1331
            aload 11 /* img */
            invokevirtual com.sun.prism.Image.getWidth:()I
            i2f
            fstore 14 /* sw */
        start local 14 // float sw
       100: .line 1332
            aload 11 /* img */
            invokevirtual com.sun.prism.Image.getHeight:()I
            i2f
            fstore 15 /* sh */
        start local 15 // float sh
       101: .line 1333
            goto 112
        end local 15 // float sh
        end local 14 // float sw
        end local 13 // float sy
        end local 12 // float sx
       102: .line 1334
      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 1335
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 13 /* sy */
        start local 13 // float sy
       104: .line 1336
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 14 /* sw */
        start local 14 // float sw
       105: .line 1337
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 15 /* sh */
        start local 15 // float sh
       106: .line 1338
            aload 11 /* img */
            invokevirtual com.sun.prism.Image.getPixelScale:()F
            fstore 16 /* ps */
        start local 16 // float ps
       107: .line 1339
            fload 16 /* ps */
            fconst_1
            fcmpl
            ifeq 112
       108: .line 1340
            fload 12 /* sx */
            fload 16 /* ps */
            fmul
            fstore 12 /* sx */
       109: .line 1341
            fload 13 /* sy */
            fload 16 /* ps */
            fmul
            fstore 13 /* sy */
       110: .line 1342
            fload 14 /* sw */
            fload 16 /* ps */
            fmul
            fstore 14 /* sw */
       111: .line 1343
            fload 15 /* sh */
            fload 16 /* ps */
            fmul
            fstore 15 /* sh */
        end local 16 // float ps
       112: .line 1346
      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 1347
            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 1348
            iconst_1
            istore 6 /* transformBounds */
       115: .line 1350
      StackMap locals:
      StackMap stack:
            aload 3 /* gr */
            ifnull 201
       116: .line 1351
            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 1353
            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 1352
            astore 17 /* tex */
        start local 17 // com.sun.prism.Texture tex
       119: .line 1354
            aload 17 /* tex */
            invokeinterface com.sun.prism.Texture.getLinearFiltering:()Z
            istore 18 /* isSmooth */
        start local 18 // boolean isSmooth
       120: .line 1355
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.imageSmoothing:Z
            iload 18 /* isSmooth */
            if_icmpeq 122
       121: .line 1356
            aload 17 /* tex */
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.imageSmoothing:Z
            invokeinterface com.sun.prism.Texture.setLinearFiltering:(Z)V
       122: .line 1358
      StackMap locals: com.sun.prism.ResourceFactory com.sun.prism.Texture int
      StackMap stack:
            aload 3 /* gr */
            aload 17 /* tex */
       123: .line 1359
            fload 7 /* dx */
            fload 8 /* dy */
            fload 7 /* dx */
            fload 9 /* dw */
            fadd
            fload 8 /* dy */
            fload 10 /* dh */
            fadd
       124: .line 1360
            fload 12 /* sx */
            fload 13 /* sy */
            fload 12 /* sx */
            fload 14 /* sw */
            fadd
            fload 13 /* sy */
            fload 15 /* sh */
            fadd
       125: .line 1358
            invokeinterface com.sun.prism.Graphics.drawTexture:(Lcom/sun/prism/Texture;FFFFFFFF)V
       126: .line 1361
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.imageSmoothing:Z
            iload 18 /* isSmooth */
            if_icmpeq 128
       127: .line 1362
            aload 17 /* tex */
            iload 18 /* isSmooth */
            invokeinterface com.sun.prism.Texture.setLinearFiltering:(Z)V
       128: .line 1364
      StackMap locals:
      StackMap stack:
            aload 17 /* tex */
            invokeinterface com.sun.prism.Texture.unlock:()V
        end local 18 // boolean isSmooth
        end local 17 // com.sun.prism.Texture tex
        end local 16 // com.sun.prism.ResourceFactory factory
       129: .line 1366
            goto 201
        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
       130: .line 1371
      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
       131: .line 1372
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 8 /* y */
        start local 8 // float y
       132: .line 1373
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getFloat:()F
            fstore 9 /* maxWidth */
        start local 9 // float maxWidth
       133: .line 1374
            aload 2 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.getBoolean:()Z
            istore 10 /* rtl */
        start local 10 // boolean rtl
       134: .line 1375
            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
       135: .line 1376
            iload 10 /* rtl */
            ifeq 136
            sipush 2048
            goto 137
       136: .line 1377
      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
       137: .line 1376
      StackMap locals:
      StackMap stack: int
            istore 12 /* dir */
        start local 12 // int dir
       138: .line 1379
            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
       139: .line 1380
            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
       140: .line 1381
            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
       141: .line 1382
            fconst_0
            fstore 13 /* xAlign */
        start local 13 // float xAlign
       142: fconst_0
            fstore 14 /* yAlign */
        start local 14 // float yAlign
       143: .line 1383
            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
       144: .line 1384
            aload 15 /* layoutBounds */
            invokevirtual com.sun.javafx.geom.BaseBounds.getWidth:()F
            fstore 16 /* layoutWidth */
        start local 16 // float layoutWidth
       145: .line 1385
            aload 15 /* layoutBounds */
            invokevirtual com.sun.javafx.geom.BaseBounds.getHeight:()F
            fstore 17 /* layoutHeight */
        start local 17 // float layoutHeight
       146: .line 1386
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.align:I
            tableswitch { // 1 - 2
                    1: 148
                    2: 147
              default: 149
          }
       147: .line 1387
      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 149
       148: .line 1388
      StackMap locals:
      StackMap stack:
            fload 16 /* layoutWidth */
            fconst_2
            fdiv
            fstore 13 /* xAlign */
       149: .line 1390
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.baseline:I
            tableswitch { // 1 - 3
                    1: 151
                    2: 150
                    3: 152
              default: 153
          }
       150: .line 1391
      StackMap locals:
      StackMap stack:
            aload 15 /* layoutBounds */
            invokevirtual com.sun.javafx.geom.BaseBounds.getMinY:()F
            fneg
            fstore 14 /* yAlign */
            goto 153
       151: .line 1392
      StackMap locals:
      StackMap stack:
            fload 17 /* layoutHeight */
            fconst_2
            fdiv
            fstore 14 /* yAlign */
            goto 153
       152: .line 1393
      StackMap locals:
      StackMap stack:
            fload 17 /* layoutHeight */
            fstore 14 /* yAlign */
       153: .line 1395
      StackMap locals:
      StackMap stack:
            fconst_1
            fstore 18 /* scaleX */
        start local 18 // float scaleX
       154: .line 1396
            fconst_0
            fstore 19 /* layoutX */
        start local 19 // float layoutX
       155: .line 1397
            fload 8 /* y */
            fload 14 /* yAlign */
            fsub
            fstore 20 /* layoutY */
        start local 20 // float layoutY
       156: .line 1398
            fload 9 /* maxWidth */
            f2d
            dconst_0
            dcmpl
            ifle 165
            fload 16 /* layoutWidth */
            fload 9 /* maxWidth */
            fcmpl
            ifle 165
       157: .line 1399
            fload 9 /* maxWidth */
            fload 16 /* layoutWidth */
            fdiv
            fstore 21 /* sx */
        start local 21 // float sx
       158: .line 1400
            iload 10 /* rtl */
            ifeq 162
       159: .line 1401
            fload 7 /* x */
            fload 9 /* maxWidth */
            fadd
            fload 21 /* sx */
            fdiv
            fload 13 /* xAlign */
            fsub
            fneg
            fstore 19 /* layoutX */
       160: .line 1402
            fload 21 /* sx */
            fneg
            fstore 18 /* scaleX */
       161: .line 1403
            goto 170
       162: .line 1404
      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 */
       163: .line 1405
            fload 21 /* sx */
            fstore 18 /* scaleX */
        end local 21 // float sx
       164: .line 1407
            goto 170
       165: .line 1408
      StackMap locals:
      StackMap stack:
            iload 10 /* rtl */
            ifeq 169
       166: .line 1409
            fload 7 /* x */
            fload 13 /* xAlign */
            fsub
            fload 16 /* layoutWidth */
            fadd
            fneg
            fstore 19 /* layoutX */
       167: .line 1410
            ldc -1.0
            fstore 18 /* scaleX */
       168: .line 1411
            goto 170
       169: .line 1412
      StackMap locals:
      StackMap stack:
            fload 7 /* x */
            fload 13 /* xAlign */
            fsub
            fstore 19 /* layoutX */
       170: .line 1415
      StackMap locals:
      StackMap stack:
            aload 4 /* bounds */
            ifnull 172
       171: .line 1416
            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
       172: .line 1418
      StackMap locals:
      StackMap stack:
            aload 3 /* gr */
            ifnull 201
       173: .line 1419
            fload 18 /* scaleX */
            fconst_1
            fcmpl
            ifeq 175
       174: .line 1420
            aload 3 /* gr */
            fload 18 /* scaleX */
            fconst_1
            invokeinterface com.sun.prism.Graphics.scale:(FF)V
       175: .line 1422
      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
       176: .line 1423
            iload 1 /* token */
            bipush 35
            if_icmpne 186
       177: .line 1424
            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
       178: .line 1425
            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
       179: .line 1426
            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 180
            aload 0 /* this */
            getfield com.sun.javafx.sg.prism.NGCanvas.smoothing:I
            getstatic com.sun.javafx.sg.prism.NGCanvas.SMOOTH_LCD:B
            if_icmpne 195
       180: .line 1427
      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
       181: .line 1428
            aload 0 /* this */
            aload 21 /* textBounds */
            getstatic com.sun.javafx.geom.transform.BaseTransform.IDENTITY_TRANSFORM:Lcom/sun/javafx/geom/transform/BaseTransform;
       182: .line 1429
            fconst_1
            fload 19 /* layoutX */
            fload 20 /* layoutY */
            iload 1 /* token */
       183: .line 1428
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.computeTextLayoutBounds:(Lcom/sun/javafx/geom/RectBounds;Lcom/sun/javafx/geom/transform/BaseTransform;FFFI)V
       184: .line 1430
            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
       185: .line 1432
            goto 195
       186: .line 1434
      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 192
       187: .line 1435
            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
       188: .line 1436
            aload 0 /* this */
            aload 21 /* textBounds */
            getstatic com.sun.javafx.geom.transform.BaseTransform.IDENTITY_TRANSFORM:Lcom/sun/javafx/geom/transform/BaseTransform;
       189: .line 1437
            fconst_1
            fload 19 /* layoutX */
            fload 20 /* layoutY */
            iload 1 /* token */
       190: .line 1436
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.computeTextLayoutBounds:(Lcom/sun/javafx/geom/RectBounds;Lcom/sun/javafx/geom/transform/BaseTransform;FFFI)V
       191: .line 1438
            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
       192: .line 1440
      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
       193: .line 1441
            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
       194: .line 1442
            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
       195: .line 1444
      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
       196: .line 1445
            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
       197: .line 1446
            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
       198: .line 1447
            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
       199: .line 1449
            goto 201
        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
       200: .line 1452
      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
       201: .line 1454
      StackMap locals:
      StackMap stack:
            aload 4 /* bounds */
            ifnull 211
       202: .line 1455
            iload 5 /* strokeBounds */
            ifeq 209
       203: .line 1456
            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
       204: .line 1457
            aload 7 /* s */
            invokevirtual com.sun.prism.BasicStroke.getType:()I
            iconst_1
            if_icmpeq 209
       205: .line 1458
            aload 7 /* s */
            invokevirtual com.sun.prism.BasicStroke.getLineWidth:()F
            fstore 8 /* lw */
        start local 8 // float lw
       206: .line 1459
            aload 7 /* s */
            invokevirtual com.sun.prism.BasicStroke.getType:()I
            ifne 208
       207: .line 1460
            fload 8 /* lw */
            fconst_2
            fdiv
            fstore 8 /* lw */
       208: .line 1462
      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
       209: .line 1465
      StackMap locals:
      StackMap stack:
            iload 6 /* transformBounds */
            ifeq 211
       210: .line 1466
            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
       211: .line 1469
      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  212     0             this  Lcom/sun/javafx/sg/prism/NGCanvas;
            0  212     1            token  I
            0  212     2              buf  Lcom/sun/javafx/sg/prism/GrowableDataBuffer;
            0  212     3               gr  Lcom/sun/prism/Graphics;
            0  212     4           bounds  Lcom/sun/javafx/geom/RectBounds;
            1  212     5     strokeBounds  Z
            2  212     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  130     7               dx  F
           93  130     8               dy  F
           94  130     9               dw  F
           95  130    10               dh  F
           96  130    11              img  Lcom/sun/prism/Image;
           99  102    12               sx  F
          103  130    12               sx  F
           98  102    13               sy  F
          104  130    13               sy  F
          100  102    14               sw  F
          105  130    14               sw  F
          101  102    15               sh  F
          106  130    15               sh  F
          107  112    16               ps  F
          117  129    16          factory  Lcom/sun/prism/ResourceFactory;
          119  129    17              tex  Lcom/sun/prism/Texture;
          120  129    18         isSmooth  Z
          131  200     7                x  F
          132  200     8                y  F
          133  200     9         maxWidth  F
          134  200    10              rtl  Z
          135  200    11           string  Ljava/lang/String;
          138  200    12              dir  I
          142  200    13           xAlign  F
          143  200    14           yAlign  F
          144  200    15     layoutBounds  Lcom/sun/javafx/geom/BaseBounds;
          145  200    16      layoutWidth  F
          146  200    17     layoutHeight  F
          154  200    18           scaleX  F
          155  200    19          layoutX  F
          156  200    20          layoutY  F
          158  164    21               sx  F
          181  185    21       textBounds  Lcom/sun/javafx/geom/RectBounds;
          188  192    21       textBounds  Lcom/sun/javafx/geom/RectBounds;
          204  209     7                s  Lcom/sun/prism/BasicStroke;
          206  209     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 1475
            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 1476
            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 1477
            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 1478
            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 1479
            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 1480
            iload 6 /* token */
            bipush 36
            if_icmpne 11
         6: .line 1481
            iconst_1
            istore 7 /* flag */
        start local 7 // int flag
         7: .line 1482
            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 1483
            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 1484
            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 1485
            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 1487
      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 1490
            aload 1 /* transform */
            invokevirtual com.sun.javafx.geom.transform.BaseTransform.getType:()I
            tableswitch { // 0 - 1
                    0: 1
                    1: 2
              default: 8
          }
         1: .line 1492
      StackMap locals:
      StackMap stack:
            goto 13
         2: .line 1494
      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 1495
            aload 1 /* transform */
            invokevirtual com.sun.javafx.geom.transform.BaseTransform.getMyt:()D
            d2f
            fstore 3 /* ty */
        start local 3 // float ty
         4: .line 1496
            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 1497
            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 1496
            invokevirtual com.sun.javafx.geom.RectBounds.setBounds:(FFFF)V
         7: .line 1498
            goto 13
        end local 3 // float ty
        end local 2 // float tx
         8: .line 1500
      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 1501
            aload 4 /* txbounds */
            aload 0 /* bounds */
            if_acmpeq 13
        10: .line 1502
            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 1503
            aload 4 /* txbounds */
            invokevirtual com.sun.javafx.geom.BaseBounds.getMaxX:()F
            aload 4 /* txbounds */
            invokevirtual com.sun.javafx.geom.BaseBounds.getMaxY:()F
        12: .line 1502
            invokevirtual com.sun.javafx.geom.RectBounds.setBounds:(FFFF)V
        end local 4 // com.sun.javafx.geom.BaseBounds txbounds
        13: .line 1507
      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 1510
            aload 1 /* transform */
            invokevirtual com.sun.javafx.geom.transform.BaseTransform.getType:()I
            tableswitch { // 0 - 1
                    0: 1
                    1: 2
              default: 8
          }
         1: .line 1512
      StackMap locals:
      StackMap stack:
            goto 16
         2: .line 1514
      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 1515
            aload 1 /* transform */
            invokevirtual com.sun.javafx.geom.transform.BaseTransform.getMyt:()D
            d2f
            fstore 3 /* ty */
        start local 3 // float ty
         4: .line 1516
            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 1517
            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 1516
            invokevirtual com.sun.javafx.geom.RectBounds.setBounds:(FFFF)V
         7: .line 1518
            goto 16
        end local 3 // float ty
        end local 2 // float tx
         8: .line 1521
      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 1522
            aload 4 /* txbounds */
            aload 0 /* bounds */
            if_acmpeq 16
        10: .line 1523
            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 1524
            aload 4 /* txbounds */
            invokevirtual com.sun.javafx.geom.BaseBounds.getMaxX:()F
            aload 4 /* txbounds */
            invokevirtual com.sun.javafx.geom.BaseBounds.getMaxY:()F
        12: .line 1523
            invokevirtual com.sun.javafx.geom.RectBounds.setBounds:(FFFF)V
        end local 4 // com.sun.javafx.geom.BaseBounds txbounds
        13: .line 1526
            goto 16
      StackMap locals:
      StackMap stack: com.sun.javafx.geom.transform.NoninvertibleTransformException
        14: pop
        15: .line 1527
            aload 0 /* bounds */
            invokevirtual com.sun.javafx.geom.RectBounds.makeEmpty:()Lcom/sun/javafx/geom/RectBounds;
            pop
        16: .line 1531
      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 1534
            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 1535
            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 1536
            aload 0 /* this */
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.geometryChanged:()V
         3: .line 1537
            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 1545
            aload 1 /* buf */
            invokevirtual com.sun.javafx.sg.prism.GrowableDataBuffer.isEmpty:()Z
            ifeq 4
         1: .line 1546
            aload 1 /* buf */
            invokestatic com.sun.javafx.sg.prism.GrowableDataBuffer.returnBuffer:(Lcom/sun/javafx/sg/prism/GrowableDataBuffer;)V
         2: .line 1547
            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 1549
      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 1551
            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 1552
      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 1553
            aload 0 /* this */
            aload 1 /* buf */
            putfield com.sun.javafx.sg.prism.NGCanvas.thebuf:Lcom/sun/javafx/sg/prism/GrowableDataBuffer;
        10: .line 1554
            goto 13
        end local 3 // com.sun.javafx.sg.prism.GrowableDataBuffer retbuf
        11: .line 1555
      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 1556
            aload 1 /* buf */
            astore 3 /* retbuf */
        start local 3 // com.sun.javafx.sg.prism.GrowableDataBuffer retbuf
        13: .line 1558
      StackMap locals: com.sun.javafx.sg.prism.GrowableDataBuffer
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.sun.javafx.sg.prism.NGCanvas.geometryChanged:()V
        14: .line 1559
            aload 3 /* retbuf */
            ifnull 17
        15: .line 1560
            aload 3 /* retbuf */
            invokestatic com.sun.javafx.sg.prism.GrowableDataBuffer.returnBuffer:(Lcom/sun/javafx/sg/prism/GrowableDataBuffer;)V
        16: .line 1561
            iconst_1
            ireturn
        17: .line 1563
      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 592
            aload 0
            aload 1
            invokevirtual com.sun.javafx.sg.prism.NGCanvas$PixelData.save:(Lcom/sun/prism/RTTexture;)V
         1: .line 593
            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 594
            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