public class com.sun.scenario.effect.PerspectiveTransform extends com.sun.scenario.effect.CoreEffect<com.sun.scenario.effect.impl.state.RenderState>
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.sun.scenario.effect.PerspectiveTransform
  super_class: com.sun.scenario.effect.CoreEffect
{
  private float[][] tx;
    descriptor: [[F
    flags: (0x0002) ACC_PRIVATE

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

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

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

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

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

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

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

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

  private float[] devcoords;
    descriptor: [F
    flags: (0x0002) ACC_PRIVATE

  private final com.sun.scenario.effect.impl.state.PerspectiveTransformState state;
    descriptor: Lcom/sun/scenario/effect/impl/state/PerspectiveTransformState;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.scenario.effect.PerspectiveTransform this
         0: .line 45
            aload 0 /* this */
            getstatic com.sun.scenario.effect.PerspectiveTransform.DefaultInput:Lcom/sun/scenario/effect/Effect;
            invokespecial com.sun.scenario.effect.PerspectiveTransform.<init>:(Lcom/sun/scenario/effect/Effect;)V
         1: .line 46
            return
        end local 0 // com.sun.scenario.effect.PerspectiveTransform this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/scenario/effect/PerspectiveTransform;

  public void <init>(com.sun.scenario.effect.Effect);
    descriptor: (Lcom/sun/scenario/effect/Effect;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=2, args_size=2
        start local 0 // com.sun.scenario.effect.PerspectiveTransform this
        start local 1 // com.sun.scenario.effect.Effect input
         0: .line 49
            aload 0 /* this */
            aload 1 /* input */
            invokespecial com.sun.scenario.effect.CoreEffect.<init>:(Lcom/sun/scenario/effect/Effect;)V
         1: .line 39
            aload 0 /* this */
            iconst_3
            iconst_3
            multianewarray [[F 2
            putfield com.sun.scenario.effect.PerspectiveTransform.tx:[[F
         2: .line 41
            aload 0 /* this */
            bipush 8
            newarray 6
            putfield com.sun.scenario.effect.PerspectiveTransform.devcoords:[F
         3: .line 42
            aload 0 /* this */
            new com.sun.scenario.effect.impl.state.PerspectiveTransformState
            dup
            invokespecial com.sun.scenario.effect.impl.state.PerspectiveTransformState.<init>:()V
            putfield com.sun.scenario.effect.PerspectiveTransform.state:Lcom/sun/scenario/effect/impl/state/PerspectiveTransformState;
         4: .line 50
            aload 0 /* this */
            fconst_0
            fconst_0
            ldc 100.0
            fconst_0
            ldc 100.0
            ldc 100.0
            fconst_0
            ldc 100.0
            invokevirtual com.sun.scenario.effect.PerspectiveTransform.setQuadMapping:(FFFFFFFF)V
         5: .line 51
            aload 0 /* this */
            ldc "PerspectiveTransform"
            invokevirtual com.sun.scenario.effect.PerspectiveTransform.updatePeerKey:(Ljava/lang/String;)V
         6: .line 52
            return
        end local 1 // com.sun.scenario.effect.Effect input
        end local 0 // com.sun.scenario.effect.PerspectiveTransform this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0   this  Lcom/sun/scenario/effect/PerspectiveTransform;
            0    7     1  input  Lcom/sun/scenario/effect/Effect;
    MethodParameters:
       Name  Flags
      input  

  java.lang.Object getState();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.scenario.effect.PerspectiveTransform this
         0: .line 56
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.state:Lcom/sun/scenario/effect/impl/state/PerspectiveTransformState;
            areturn
        end local 0 // com.sun.scenario.effect.PerspectiveTransform this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/scenario/effect/PerspectiveTransform;

  public final com.sun.scenario.effect.Effect getInput();
    descriptor: ()Lcom/sun/scenario/effect/Effect;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.scenario.effect.PerspectiveTransform this
         0: .line 65
            aload 0 /* this */
            invokevirtual com.sun.scenario.effect.PerspectiveTransform.getInputs:()Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast com.sun.scenario.effect.Effect
            areturn
        end local 0 // com.sun.scenario.effect.PerspectiveTransform this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/scenario/effect/PerspectiveTransform;

  public void setInput(com.sun.scenario.effect.Effect);
    descriptor: (Lcom/sun/scenario/effect/Effect;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.sun.scenario.effect.PerspectiveTransform this
        start local 1 // com.sun.scenario.effect.Effect input
         0: .line 76
            aload 0 /* this */
            iconst_0
            aload 1 /* input */
            invokevirtual com.sun.scenario.effect.PerspectiveTransform.setInput:(ILcom/sun/scenario/effect/Effect;)V
         1: .line 77
            return
        end local 1 // com.sun.scenario.effect.Effect input
        end local 0 // com.sun.scenario.effect.PerspectiveTransform this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lcom/sun/scenario/effect/PerspectiveTransform;
            0    2     1  input  Lcom/sun/scenario/effect/Effect;
    MethodParameters:
       Name  Flags
      input  

  private void setUnitQuadMapping(float, float, float, float, float, float, float, float);
    descriptor: (FFFFFFFF)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=16, args_size=9
        start local 0 // com.sun.scenario.effect.PerspectiveTransform this
        start local 1 // float ulx
        start local 2 // float uly
        start local 3 // float urx
        start local 4 // float ury
        start local 5 // float lrx
        start local 6 // float lry
        start local 7 // float llx
        start local 8 // float lly
         0: .line 108
            fload 1 /* ulx */
            fload 3 /* urx */
            fsub
            fload 5 /* lrx */
            fadd
            fload 7 /* llx */
            fsub
            fstore 9 /* dx3 */
        start local 9 // float dx3
         1: .line 109
            fload 2 /* uly */
            fload 4 /* ury */
            fsub
            fload 6 /* lry */
            fadd
            fload 8 /* lly */
            fsub
            fstore 10 /* dy3 */
        start local 10 // float dy3
         2: .line 111
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.tx:[[F
            iconst_2
            aaload
            iconst_2
            fconst_1
            fastore
         3: .line 113
            fload 9 /* dx3 */
            fconst_0
            fcmpl
            ifne 13
            fload 10 /* dy3 */
            fconst_0
            fcmpl
            ifne 13
         4: .line 114
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.tx:[[F
            iconst_0
            aaload
            iconst_0
            fload 3 /* urx */
            fload 1 /* ulx */
            fsub
            fastore
         5: .line 115
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.tx:[[F
            iconst_0
            aaload
            iconst_1
            fload 5 /* lrx */
            fload 3 /* urx */
            fsub
            fastore
         6: .line 116
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.tx:[[F
            iconst_0
            aaload
            iconst_2
            fload 1 /* ulx */
            fastore
         7: .line 117
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.tx:[[F
            iconst_1
            aaload
            iconst_0
            fload 4 /* ury */
            fload 2 /* uly */
            fsub
            fastore
         8: .line 118
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.tx:[[F
            iconst_1
            aaload
            iconst_1
            fload 6 /* lry */
            fload 4 /* ury */
            fsub
            fastore
         9: .line 119
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.tx:[[F
            iconst_1
            aaload
            iconst_2
            fload 2 /* uly */
            fastore
        10: .line 120
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.tx:[[F
            iconst_2
            aaload
            iconst_0
            fconst_0
            fastore
        11: .line 121
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.tx:[[F
            iconst_2
            aaload
            iconst_1
            fconst_0
            fastore
        12: .line 122
            goto 26
        13: .line 123
      StackMap locals: float float
      StackMap stack:
            fload 3 /* urx */
            fload 5 /* lrx */
            fsub
            fstore 11 /* dx1 */
        start local 11 // float dx1
        14: .line 124
            fload 4 /* ury */
            fload 6 /* lry */
            fsub
            fstore 12 /* dy1 */
        start local 12 // float dy1
        15: .line 125
            fload 7 /* llx */
            fload 5 /* lrx */
            fsub
            fstore 13 /* dx2 */
        start local 13 // float dx2
        16: .line 126
            fload 8 /* lly */
            fload 6 /* lry */
            fsub
            fstore 14 /* dy2 */
        start local 14 // float dy2
        17: .line 128
            fconst_1
            fload 11 /* dx1 */
            fload 14 /* dy2 */
            fmul
            fload 13 /* dx2 */
            fload 12 /* dy1 */
            fmul
            fsub
            fdiv
            fstore 15 /* invdet */
        start local 15 // float invdet
        18: .line 129
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.tx:[[F
            iconst_2
            aaload
            iconst_0
            fload 9 /* dx3 */
            fload 14 /* dy2 */
            fmul
            fload 13 /* dx2 */
            fload 10 /* dy3 */
            fmul
            fsub
            fload 15 /* invdet */
            fmul
            fastore
        19: .line 130
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.tx:[[F
            iconst_2
            aaload
            iconst_1
            fload 11 /* dx1 */
            fload 10 /* dy3 */
            fmul
            fload 9 /* dx3 */
            fload 12 /* dy1 */
            fmul
            fsub
            fload 15 /* invdet */
            fmul
            fastore
        20: .line 131
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.tx:[[F
            iconst_0
            aaload
            iconst_0
            fload 3 /* urx */
            fload 1 /* ulx */
            fsub
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.tx:[[F
            iconst_2
            aaload
            iconst_0
            faload
            fload 3 /* urx */
            fmul
            fadd
            fastore
        21: .line 132
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.tx:[[F
            iconst_0
            aaload
            iconst_1
            fload 7 /* llx */
            fload 1 /* ulx */
            fsub
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.tx:[[F
            iconst_2
            aaload
            iconst_1
            faload
            fload 7 /* llx */
            fmul
            fadd
            fastore
        22: .line 133
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.tx:[[F
            iconst_0
            aaload
            iconst_2
            fload 1 /* ulx */
            fastore
        23: .line 134
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.tx:[[F
            iconst_1
            aaload
            iconst_0
            fload 4 /* ury */
            fload 2 /* uly */
            fsub
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.tx:[[F
            iconst_2
            aaload
            iconst_0
            faload
            fload 4 /* ury */
            fmul
            fadd
            fastore
        24: .line 135
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.tx:[[F
            iconst_1
            aaload
            iconst_1
            fload 8 /* lly */
            fload 2 /* uly */
            fsub
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.tx:[[F
            iconst_2
            aaload
            iconst_1
            faload
            fload 8 /* lly */
            fmul
            fadd
            fastore
        25: .line 136
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.tx:[[F
            iconst_1
            aaload
            iconst_2
            fload 2 /* uly */
            fastore
        end local 15 // float invdet
        end local 14 // float dy2
        end local 13 // float dx2
        end local 12 // float dy1
        end local 11 // float dx1
        26: .line 138
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.state:Lcom/sun/scenario/effect/impl/state/PerspectiveTransformState;
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.tx:[[F
            invokevirtual com.sun.scenario.effect.impl.state.PerspectiveTransformState.updateTx:([[F)V
        27: .line 139
            return
        end local 10 // float dy3
        end local 9 // float dx3
        end local 8 // float lly
        end local 7 // float llx
        end local 6 // float lry
        end local 5 // float lrx
        end local 4 // float ury
        end local 3 // float urx
        end local 2 // float uly
        end local 1 // float ulx
        end local 0 // com.sun.scenario.effect.PerspectiveTransform this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   28     0    this  Lcom/sun/scenario/effect/PerspectiveTransform;
            0   28     1     ulx  F
            0   28     2     uly  F
            0   28     3     urx  F
            0   28     4     ury  F
            0   28     5     lrx  F
            0   28     6     lry  F
            0   28     7     llx  F
            0   28     8     lly  F
            1   28     9     dx3  F
            2   28    10     dy3  F
           14   26    11     dx1  F
           15   26    12     dy1  F
           16   26    13     dx2  F
           17   26    14     dy2  F
           18   26    15  invdet  F
    MethodParameters:
      Name  Flags
      ulx   
      uly   
      urx   
      ury   
      lrx   
      lry   
      llx   
      lly   

  public final void setQuadMapping(float, float, float, float, float, float, float, float);
    descriptor: (FFFFFFFF)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=9, args_size=9
        start local 0 // com.sun.scenario.effect.PerspectiveTransform this
        start local 1 // float ulx
        start local 2 // float uly
        start local 3 // float urx
        start local 4 // float ury
        start local 5 // float lrx
        start local 6 // float lry
        start local 7 // float llx
        start local 8 // float lly
         0: .line 146
            aload 0 /* this */
            fload 1 /* ulx */
            putfield com.sun.scenario.effect.PerspectiveTransform.ulx:F
         1: .line 147
            aload 0 /* this */
            fload 2 /* uly */
            putfield com.sun.scenario.effect.PerspectiveTransform.uly:F
         2: .line 148
            aload 0 /* this */
            fload 3 /* urx */
            putfield com.sun.scenario.effect.PerspectiveTransform.urx:F
         3: .line 149
            aload 0 /* this */
            fload 4 /* ury */
            putfield com.sun.scenario.effect.PerspectiveTransform.ury:F
         4: .line 150
            aload 0 /* this */
            fload 5 /* lrx */
            putfield com.sun.scenario.effect.PerspectiveTransform.lrx:F
         5: .line 151
            aload 0 /* this */
            fload 6 /* lry */
            putfield com.sun.scenario.effect.PerspectiveTransform.lry:F
         6: .line 152
            aload 0 /* this */
            fload 7 /* llx */
            putfield com.sun.scenario.effect.PerspectiveTransform.llx:F
         7: .line 153
            aload 0 /* this */
            fload 8 /* lly */
            putfield com.sun.scenario.effect.PerspectiveTransform.lly:F
         8: .line 154
            return
        end local 8 // float lly
        end local 7 // float llx
        end local 6 // float lry
        end local 5 // float lrx
        end local 4 // float ury
        end local 3 // float urx
        end local 2 // float uly
        end local 1 // float ulx
        end local 0 // com.sun.scenario.effect.PerspectiveTransform this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lcom/sun/scenario/effect/PerspectiveTransform;
            0    9     1   ulx  F
            0    9     2   uly  F
            0    9     3   urx  F
            0    9     4   ury  F
            0    9     5   lrx  F
            0    9     6   lry  F
            0    9     7   llx  F
            0    9     8   lly  F
    MethodParameters:
      Name  Flags
      ulx   
      uly   
      urx   
      ury   
      lrx   
      lry   
      llx   
      lly   

  public com.sun.javafx.geom.RectBounds getBounds(com.sun.javafx.geom.transform.BaseTransform, com.sun.scenario.effect.Effect);
    descriptor: (Lcom/sun/javafx/geom/transform/BaseTransform;Lcom/sun/scenario/effect/Effect;)Lcom/sun/javafx/geom/RectBounds;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=8, args_size=3
        start local 0 // com.sun.scenario.effect.PerspectiveTransform this
        start local 1 // com.sun.javafx.geom.transform.BaseTransform transform
        start local 2 // com.sun.scenario.effect.Effect defaultInput
         0: .line 160
            aload 0 /* this */
            aload 1 /* transform */
            invokevirtual com.sun.scenario.effect.PerspectiveTransform.setupDevCoords:(Lcom/sun/javafx/geom/transform/BaseTransform;)V
         1: .line 163
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.devcoords:[F
            iconst_0
            faload
            dup
            fstore 5 /* maxx */
        start local 5 // float maxx
         2: fstore 3 /* minx */
        start local 3 // float minx
         3: .line 164
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.devcoords:[F
            iconst_1
            faload
            dup
            fstore 6 /* maxy */
        start local 6 // float maxy
         4: fstore 4 /* miny */
        start local 4 // float miny
         5: .line 165
            iconst_2
            istore 7 /* i */
        start local 7 // int i
         6: goto 12
         7: .line 166
      StackMap locals: com.sun.scenario.effect.PerspectiveTransform com.sun.javafx.geom.transform.BaseTransform com.sun.scenario.effect.Effect float float float float int
      StackMap stack:
            fload 3 /* minx */
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.devcoords:[F
            iload 7 /* i */
            faload
            fcmpl
            ifle 8
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.devcoords:[F
            iload 7 /* i */
            faload
            fstore 3 /* minx */
            goto 9
         8: .line 167
      StackMap locals:
      StackMap stack:
            fload 5 /* maxx */
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.devcoords:[F
            iload 7 /* i */
            faload
            fcmpg
            ifge 9
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.devcoords:[F
            iload 7 /* i */
            faload
            fstore 5 /* maxx */
         9: .line 168
      StackMap locals:
      StackMap stack:
            fload 4 /* miny */
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.devcoords:[F
            iload 7 /* i */
            iconst_1
            iadd
            faload
            fcmpl
            ifle 10
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.devcoords:[F
            iload 7 /* i */
            iconst_1
            iadd
            faload
            fstore 4 /* miny */
            goto 11
        10: .line 169
      StackMap locals:
      StackMap stack:
            fload 6 /* maxy */
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.devcoords:[F
            iload 7 /* i */
            iconst_1
            iadd
            faload
            fcmpg
            ifge 11
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.devcoords:[F
            iload 7 /* i */
            iconst_1
            iadd
            faload
            fstore 6 /* maxy */
        11: .line 165
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 2
      StackMap locals:
      StackMap stack:
        12: iload 7 /* i */
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.devcoords:[F
            arraylength
            if_icmplt 7
        end local 7 // int i
        13: .line 171
            new com.sun.javafx.geom.RectBounds
            dup
            fload 3 /* minx */
            fload 4 /* miny */
            fload 5 /* maxx */
            fload 6 /* maxy */
            invokespecial com.sun.javafx.geom.RectBounds.<init>:(FFFF)V
            areturn
        end local 6 // float maxy
        end local 5 // float maxx
        end local 4 // float miny
        end local 3 // float minx
        end local 2 // com.sun.scenario.effect.Effect defaultInput
        end local 1 // com.sun.javafx.geom.transform.BaseTransform transform
        end local 0 // com.sun.scenario.effect.PerspectiveTransform this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   14     0          this  Lcom/sun/scenario/effect/PerspectiveTransform;
            0   14     1     transform  Lcom/sun/javafx/geom/transform/BaseTransform;
            0   14     2  defaultInput  Lcom/sun/scenario/effect/Effect;
            3   14     3          minx  F
            5   14     4          miny  F
            2   14     5          maxx  F
            4   14     6          maxy  F
            6   13     7             i  I
    MethodParameters:
              Name  Flags
      transform     
      defaultInput  

  private void setupDevCoords(com.sun.javafx.geom.transform.BaseTransform);
    descriptor: (Lcom/sun/javafx/geom/transform/BaseTransform;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // com.sun.scenario.effect.PerspectiveTransform this
        start local 1 // com.sun.javafx.geom.transform.BaseTransform transform
         0: .line 175
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.devcoords:[F
            iconst_0
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.ulx:F
            fastore
         1: .line 176
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.devcoords:[F
            iconst_1
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.uly:F
            fastore
         2: .line 177
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.devcoords:[F
            iconst_2
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.urx:F
            fastore
         3: .line 178
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.devcoords:[F
            iconst_3
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.ury:F
            fastore
         4: .line 179
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.devcoords:[F
            iconst_4
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.lrx:F
            fastore
         5: .line 180
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.devcoords:[F
            iconst_5
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.lry:F
            fastore
         6: .line 181
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.devcoords:[F
            bipush 6
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.llx:F
            fastore
         7: .line 182
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.devcoords:[F
            bipush 7
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.lly:F
            fastore
         8: .line 183
            aload 1 /* transform */
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.devcoords:[F
            iconst_0
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.devcoords:[F
            iconst_0
            iconst_4
            invokevirtual com.sun.javafx.geom.transform.BaseTransform.transform:([FI[FII)V
         9: .line 184
            return
        end local 1 // com.sun.javafx.geom.transform.BaseTransform transform
        end local 0 // com.sun.scenario.effect.PerspectiveTransform this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   10     0       this  Lcom/sun/scenario/effect/PerspectiveTransform;
            0   10     1  transform  Lcom/sun/javafx/geom/transform/BaseTransform;
    MethodParameters:
           Name  Flags
      transform  

  public com.sun.scenario.effect.ImageData filter(com.sun.scenario.effect.FilterContext, com.sun.javafx.geom.transform.BaseTransform, com.sun.javafx.geom.Rectangle, java.lang.Object, com.sun.scenario.effect.Effect);
    descriptor: (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;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=11, args_size=6
        start local 0 // com.sun.scenario.effect.PerspectiveTransform this
        start local 1 // com.sun.scenario.effect.FilterContext fctx
        start local 2 // com.sun.javafx.geom.transform.BaseTransform transform
        start local 3 // com.sun.javafx.geom.Rectangle outputClip
        start local 4 // java.lang.Object renderHelper
        start local 5 // com.sun.scenario.effect.Effect defaultInput
         0: .line 193
            aload 0 /* this */
            aload 2 /* transform */
            invokevirtual com.sun.scenario.effect.PerspectiveTransform.setupTransforms:(Lcom/sun/javafx/geom/transform/BaseTransform;)V
         1: .line 194
            aload 0 /* this */
            aload 1 /* fctx */
            aload 2 /* transform */
            aload 3 /* outputClip */
         2: .line 195
            aload 4 /* renderHelper */
            aload 5 /* defaultInput */
         3: .line 194
            invokevirtual com.sun.scenario.effect.PerspectiveTransform.getRenderState:(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/impl/state/RenderState;
            astore 6 /* rstate */
        start local 6 // com.sun.scenario.effect.impl.state.RenderState rstate
         4: .line 196
            aload 0 /* this */
            iconst_0
            aload 5 /* defaultInput */
            invokevirtual com.sun.scenario.effect.PerspectiveTransform.getDefaultedInput:(ILcom/sun/scenario/effect/Effect;)Lcom/sun/scenario/effect/Effect;
            astore 7 /* input */
        start local 7 // com.sun.scenario.effect.Effect input
         5: .line 197
            aload 6 /* rstate */
            iconst_0
            aload 3 /* outputClip */
            invokeinterface com.sun.scenario.effect.impl.state.RenderState.getInputClip:(ILcom/sun/javafx/geom/Rectangle;)Lcom/sun/javafx/geom/Rectangle;
            astore 8 /* inputClip */
        start local 8 // com.sun.javafx.geom.Rectangle inputClip
         6: .line 199
            aload 7 /* input */
            aload 1 /* fctx */
            getstatic com.sun.javafx.geom.transform.BaseTransform.IDENTITY_TRANSFORM:Lcom/sun/javafx/geom/transform/BaseTransform;
         7: .line 200
            aload 8 /* inputClip */
            aconst_null
            aload 5 /* defaultInput */
         8: .line 199
            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;
         9: .line 198
            astore 9 /* inputData */
        start local 9 // com.sun.scenario.effect.ImageData inputData
        10: .line 201
            aload 9 /* inputData */
            aload 1 /* fctx */
            invokevirtual com.sun.scenario.effect.ImageData.validate:(Lcom/sun/scenario/effect/FilterContext;)Z
            ifne 13
        11: .line 202
            aload 9 /* inputData */
            invokevirtual com.sun.scenario.effect.ImageData.unref:()V
        12: .line 203
            new com.sun.scenario.effect.ImageData
            dup
            aload 1 /* fctx */
            aconst_null
            aload 9 /* inputData */
            invokevirtual com.sun.scenario.effect.ImageData.getUntransformedBounds:()Lcom/sun/javafx/geom/Rectangle;
            invokespecial com.sun.scenario.effect.ImageData.<init>:(Lcom/sun/scenario/effect/FilterContext;Lcom/sun/scenario/effect/Filterable;Lcom/sun/javafx/geom/Rectangle;)V
            areturn
        13: .line 205
      StackMap locals: com.sun.scenario.effect.PerspectiveTransform com.sun.scenario.effect.FilterContext com.sun.javafx.geom.transform.BaseTransform com.sun.javafx.geom.Rectangle java.lang.Object com.sun.scenario.effect.Effect com.sun.scenario.effect.impl.state.RenderState com.sun.scenario.effect.Effect com.sun.javafx.geom.Rectangle com.sun.scenario.effect.ImageData
      StackMap stack:
            aload 0 /* this */
            aload 1 /* fctx */
            aload 2 /* transform */
            aload 3 /* outputClip */
            aload 6 /* rstate */
            iconst_1
            anewarray com.sun.scenario.effect.ImageData
            dup
            iconst_0
            aload 9 /* inputData */
            aastore
            invokevirtual com.sun.scenario.effect.PerspectiveTransform.filterImageDatas:(Lcom/sun/scenario/effect/FilterContext;Lcom/sun/javafx/geom/transform/BaseTransform;Lcom/sun/javafx/geom/Rectangle;Lcom/sun/scenario/effect/impl/state/RenderState;[Lcom/sun/scenario/effect/ImageData;)Lcom/sun/scenario/effect/ImageData;
            astore 10 /* ret */
        start local 10 // com.sun.scenario.effect.ImageData ret
        14: .line 206
            aload 9 /* inputData */
            invokevirtual com.sun.scenario.effect.ImageData.unref:()V
        15: .line 207
            aload 10 /* ret */
            areturn
        end local 10 // com.sun.scenario.effect.ImageData ret
        end local 9 // com.sun.scenario.effect.ImageData inputData
        end local 8 // com.sun.javafx.geom.Rectangle inputClip
        end local 7 // com.sun.scenario.effect.Effect input
        end local 6 // com.sun.scenario.effect.impl.state.RenderState rstate
        end local 5 // com.sun.scenario.effect.Effect defaultInput
        end local 4 // java.lang.Object renderHelper
        end local 3 // com.sun.javafx.geom.Rectangle outputClip
        end local 2 // com.sun.javafx.geom.transform.BaseTransform transform
        end local 1 // com.sun.scenario.effect.FilterContext fctx
        end local 0 // com.sun.scenario.effect.PerspectiveTransform this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   16     0          this  Lcom/sun/scenario/effect/PerspectiveTransform;
            0   16     1          fctx  Lcom/sun/scenario/effect/FilterContext;
            0   16     2     transform  Lcom/sun/javafx/geom/transform/BaseTransform;
            0   16     3    outputClip  Lcom/sun/javafx/geom/Rectangle;
            0   16     4  renderHelper  Ljava/lang/Object;
            0   16     5  defaultInput  Lcom/sun/scenario/effect/Effect;
            4   16     6        rstate  Lcom/sun/scenario/effect/impl/state/RenderState;
            5   16     7         input  Lcom/sun/scenario/effect/Effect;
            6   16     8     inputClip  Lcom/sun/javafx/geom/Rectangle;
           10   16     9     inputData  Lcom/sun/scenario/effect/ImageData;
           14   16    10           ret  Lcom/sun/scenario/effect/ImageData;
    MethodParameters:
              Name  Flags
      fctx          
      transform     
      outputClip    
      renderHelper  
      defaultInput  

  public com.sun.javafx.geom.Rectangle getResultBounds(com.sun.javafx.geom.transform.BaseTransform, com.sun.javafx.geom.Rectangle, com.sun.scenario.effect.ImageData[]);
    descriptor: (Lcom/sun/javafx/geom/transform/BaseTransform;Lcom/sun/javafx/geom/Rectangle;[Lcom/sun/scenario/effect/ImageData;)Lcom/sun/javafx/geom/Rectangle;
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // com.sun.scenario.effect.PerspectiveTransform this
        start local 1 // com.sun.javafx.geom.transform.BaseTransform transform
        start local 2 // com.sun.javafx.geom.Rectangle outputClip
        start local 3 // com.sun.scenario.effect.ImageData[] inputDatas
         0: .line 215
            new com.sun.javafx.geom.Rectangle
            dup
            aload 0 /* this */
            aload 1 /* transform */
            aconst_null
            invokevirtual com.sun.scenario.effect.PerspectiveTransform.getBounds:(Lcom/sun/javafx/geom/transform/BaseTransform;Lcom/sun/scenario/effect/Effect;)Lcom/sun/javafx/geom/RectBounds;
            invokespecial com.sun.javafx.geom.Rectangle.<init>:(Lcom/sun/javafx/geom/BaseBounds;)V
            astore 4 /* ob */
        start local 4 // com.sun.javafx.geom.Rectangle ob
         1: .line 216
            aload 4 /* ob */
            aload 2 /* outputClip */
            invokevirtual com.sun.javafx.geom.Rectangle.intersectWith:(Lcom/sun/javafx/geom/Rectangle;)V
         2: .line 217
            aload 4 /* ob */
            areturn
        end local 4 // com.sun.javafx.geom.Rectangle ob
        end local 3 // com.sun.scenario.effect.ImageData[] inputDatas
        end local 2 // com.sun.javafx.geom.Rectangle outputClip
        end local 1 // com.sun.javafx.geom.transform.BaseTransform transform
        end local 0 // com.sun.scenario.effect.PerspectiveTransform this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Lcom/sun/scenario/effect/PerspectiveTransform;
            0    3     1   transform  Lcom/sun/javafx/geom/transform/BaseTransform;
            0    3     2  outputClip  Lcom/sun/javafx/geom/Rectangle;
            0    3     3  inputDatas  [Lcom/sun/scenario/effect/ImageData;
            1    3     4          ob  Lcom/sun/javafx/geom/Rectangle;
    MethodParameters:
            Name  Flags
      transform   
      outputClip  
      inputDatas  

  public com.sun.javafx.geom.Point2D transform(com.sun.javafx.geom.Point2D, com.sun.scenario.effect.Effect);
    descriptor: (Lcom/sun/javafx/geom/Point2D;Lcom/sun/scenario/effect/Effect;)Lcom/sun/javafx/geom/Point2D;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=10, args_size=3
        start local 0 // com.sun.scenario.effect.PerspectiveTransform this
        start local 1 // com.sun.javafx.geom.Point2D p
        start local 2 // com.sun.scenario.effect.Effect defaultInput
         0: .line 222
            aload 0 /* this */
            getstatic com.sun.javafx.geom.transform.BaseTransform.IDENTITY_TRANSFORM:Lcom/sun/javafx/geom/transform/BaseTransform;
            invokevirtual com.sun.scenario.effect.PerspectiveTransform.setupTransforms:(Lcom/sun/javafx/geom/transform/BaseTransform;)V
         1: .line 223
            aload 0 /* this */
            iconst_0
            aload 2 /* defaultInput */
            invokevirtual com.sun.scenario.effect.PerspectiveTransform.getDefaultedInput:(ILcom/sun/scenario/effect/Effect;)Lcom/sun/scenario/effect/Effect;
            astore 3 /* input */
        start local 3 // com.sun.scenario.effect.Effect input
         2: .line 224
            aload 3 /* input */
            aload 1 /* p */
            aload 2 /* defaultInput */
            invokevirtual com.sun.scenario.effect.Effect.transform:(Lcom/sun/javafx/geom/Point2D;Lcom/sun/scenario/effect/Effect;)Lcom/sun/javafx/geom/Point2D;
            astore 1 /* p */
         3: .line 225
            aload 3 /* input */
            getstatic com.sun.javafx.geom.transform.BaseTransform.IDENTITY_TRANSFORM:Lcom/sun/javafx/geom/transform/BaseTransform;
            aload 2 /* defaultInput */
            invokevirtual com.sun.scenario.effect.Effect.getBounds:(Lcom/sun/javafx/geom/transform/BaseTransform;Lcom/sun/scenario/effect/Effect;)Lcom/sun/javafx/geom/BaseBounds;
            astore 4 /* b */
        start local 4 // com.sun.javafx.geom.BaseBounds b
         4: .line 226
            aload 1 /* p */
            getfield com.sun.javafx.geom.Point2D.x:F
            aload 4 /* b */
            invokevirtual com.sun.javafx.geom.BaseBounds.getMinX:()F
            fsub
            aload 4 /* b */
            invokevirtual com.sun.javafx.geom.BaseBounds.getWidth:()F
            fdiv
            fstore 5 /* sx */
        start local 5 // float sx
         5: .line 227
            aload 1 /* p */
            getfield com.sun.javafx.geom.Point2D.y:F
            aload 4 /* b */
            invokevirtual com.sun.javafx.geom.BaseBounds.getMinY:()F
            fsub
            aload 4 /* b */
            invokevirtual com.sun.javafx.geom.BaseBounds.getHeight:()F
            fdiv
            fstore 6 /* sy */
        start local 6 // float sy
         6: .line 228
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.tx:[[F
            iconst_0
            aaload
            iconst_0
            faload
            fload 5 /* sx */
            fmul
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.tx:[[F
            iconst_0
            aaload
            iconst_1
            faload
            fload 6 /* sy */
            fmul
            fadd
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.tx:[[F
            iconst_0
            aaload
            iconst_2
            faload
            fadd
            fstore 7 /* dx */
        start local 7 // float dx
         7: .line 229
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.tx:[[F
            iconst_1
            aaload
            iconst_0
            faload
            fload 5 /* sx */
            fmul
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.tx:[[F
            iconst_1
            aaload
            iconst_1
            faload
            fload 6 /* sy */
            fmul
            fadd
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.tx:[[F
            iconst_1
            aaload
            iconst_2
            faload
            fadd
            fstore 8 /* dy */
        start local 8 // float dy
         8: .line 230
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.tx:[[F
            iconst_2
            aaload
            iconst_0
            faload
            fload 5 /* sx */
            fmul
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.tx:[[F
            iconst_2
            aaload
            iconst_1
            faload
            fload 6 /* sy */
            fmul
            fadd
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.tx:[[F
            iconst_2
            aaload
            iconst_2
            faload
            fadd
            fstore 9 /* dw */
        start local 9 // float dw
         9: .line 231
            new com.sun.javafx.geom.Point2D
            dup
            fload 7 /* dx */
            fload 9 /* dw */
            fdiv
            fload 8 /* dy */
            fload 9 /* dw */
            fdiv
            invokespecial com.sun.javafx.geom.Point2D.<init>:(FF)V
            astore 1 /* p */
        10: .line 232
            aload 1 /* p */
            areturn
        end local 9 // float dw
        end local 8 // float dy
        end local 7 // float dx
        end local 6 // float sy
        end local 5 // float sx
        end local 4 // com.sun.javafx.geom.BaseBounds b
        end local 3 // com.sun.scenario.effect.Effect input
        end local 2 // com.sun.scenario.effect.Effect defaultInput
        end local 1 // com.sun.javafx.geom.Point2D p
        end local 0 // com.sun.scenario.effect.PerspectiveTransform this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   11     0          this  Lcom/sun/scenario/effect/PerspectiveTransform;
            0   11     1             p  Lcom/sun/javafx/geom/Point2D;
            0   11     2  defaultInput  Lcom/sun/scenario/effect/Effect;
            2   11     3         input  Lcom/sun/scenario/effect/Effect;
            4   11     4             b  Lcom/sun/javafx/geom/BaseBounds;
            5   11     5            sx  F
            6   11     6            sy  F
            7   11     7            dx  F
            8   11     8            dy  F
            9   11     9            dw  F
    MethodParameters:
              Name  Flags
      p             
      defaultInput  

  public com.sun.javafx.geom.Point2D untransform(com.sun.javafx.geom.Point2D, com.sun.scenario.effect.Effect);
    descriptor: (Lcom/sun/javafx/geom/Point2D;Lcom/sun/scenario/effect/Effect;)Lcom/sun/javafx/geom/Point2D;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=11, args_size=3
        start local 0 // com.sun.scenario.effect.PerspectiveTransform this
        start local 1 // com.sun.javafx.geom.Point2D p
        start local 2 // com.sun.scenario.effect.Effect defaultInput
         0: .line 237
            aload 0 /* this */
            getstatic com.sun.javafx.geom.transform.BaseTransform.IDENTITY_TRANSFORM:Lcom/sun/javafx/geom/transform/BaseTransform;
            invokevirtual com.sun.scenario.effect.PerspectiveTransform.setupTransforms:(Lcom/sun/javafx/geom/transform/BaseTransform;)V
         1: .line 238
            aload 0 /* this */
            iconst_0
            aload 2 /* defaultInput */
            invokevirtual com.sun.scenario.effect.PerspectiveTransform.getDefaultedInput:(ILcom/sun/scenario/effect/Effect;)Lcom/sun/scenario/effect/Effect;
            astore 3 /* input */
        start local 3 // com.sun.scenario.effect.Effect input
         2: .line 239
            aload 1 /* p */
            getfield com.sun.javafx.geom.Point2D.x:F
            fstore 4 /* dx */
        start local 4 // float dx
         3: .line 240
            aload 1 /* p */
            getfield com.sun.javafx.geom.Point2D.y:F
            fstore 5 /* dy */
        start local 5 // float dy
         4: .line 241
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.state:Lcom/sun/scenario/effect/impl/state/PerspectiveTransformState;
            invokevirtual com.sun.scenario.effect.impl.state.PerspectiveTransformState.getITX:()[[F
            astore 6 /* itx */
        start local 6 // float[][] itx
         5: .line 242
            aload 6 /* itx */
            iconst_0
            aaload
            iconst_0
            faload
            fload 4 /* dx */
            fmul
            aload 6 /* itx */
            iconst_0
            aaload
            iconst_1
            faload
            fload 5 /* dy */
            fmul
            fadd
            aload 6 /* itx */
            iconst_0
            aaload
            iconst_2
            faload
            fadd
            fstore 7 /* sx */
        start local 7 // float sx
         6: .line 243
            aload 6 /* itx */
            iconst_1
            aaload
            iconst_0
            faload
            fload 4 /* dx */
            fmul
            aload 6 /* itx */
            iconst_1
            aaload
            iconst_1
            faload
            fload 5 /* dy */
            fmul
            fadd
            aload 6 /* itx */
            iconst_1
            aaload
            iconst_2
            faload
            fadd
            fstore 8 /* sy */
        start local 8 // float sy
         7: .line 244
            aload 6 /* itx */
            iconst_2
            aaload
            iconst_0
            faload
            fload 4 /* dx */
            fmul
            aload 6 /* itx */
            iconst_2
            aaload
            iconst_1
            faload
            fload 5 /* dy */
            fmul
            fadd
            aload 6 /* itx */
            iconst_2
            aaload
            iconst_2
            faload
            fadd
            fstore 9 /* sw */
        start local 9 // float sw
         8: .line 245
            aload 3 /* input */
            getstatic com.sun.javafx.geom.transform.BaseTransform.IDENTITY_TRANSFORM:Lcom/sun/javafx/geom/transform/BaseTransform;
            aload 2 /* defaultInput */
            invokevirtual com.sun.scenario.effect.Effect.getBounds:(Lcom/sun/javafx/geom/transform/BaseTransform;Lcom/sun/scenario/effect/Effect;)Lcom/sun/javafx/geom/BaseBounds;
            astore 10 /* b */
        start local 10 // com.sun.javafx.geom.BaseBounds b
         9: .line 246
            new com.sun.javafx.geom.Point2D
            dup
            aload 10 /* b */
            invokevirtual com.sun.javafx.geom.BaseBounds.getMinX:()F
            fload 7 /* sx */
            fload 9 /* sw */
            fdiv
            aload 10 /* b */
            invokevirtual com.sun.javafx.geom.BaseBounds.getWidth:()F
            fmul
            fadd
        10: .line 247
            aload 10 /* b */
            invokevirtual com.sun.javafx.geom.BaseBounds.getMinY:()F
            fload 8 /* sy */
            fload 9 /* sw */
            fdiv
            aload 10 /* b */
            invokevirtual com.sun.javafx.geom.BaseBounds.getHeight:()F
            fmul
            fadd
        11: .line 246
            invokespecial com.sun.javafx.geom.Point2D.<init>:(FF)V
            astore 1 /* p */
        12: .line 248
            aload 0 /* this */
            iconst_0
            aload 2 /* defaultInput */
            invokevirtual com.sun.scenario.effect.PerspectiveTransform.getDefaultedInput:(ILcom/sun/scenario/effect/Effect;)Lcom/sun/scenario/effect/Effect;
            aload 1 /* p */
            aload 2 /* defaultInput */
            invokevirtual com.sun.scenario.effect.Effect.untransform:(Lcom/sun/javafx/geom/Point2D;Lcom/sun/scenario/effect/Effect;)Lcom/sun/javafx/geom/Point2D;
            astore 1 /* p */
        13: .line 249
            aload 1 /* p */
            areturn
        end local 10 // com.sun.javafx.geom.BaseBounds b
        end local 9 // float sw
        end local 8 // float sy
        end local 7 // float sx
        end local 6 // float[][] itx
        end local 5 // float dy
        end local 4 // float dx
        end local 3 // com.sun.scenario.effect.Effect input
        end local 2 // com.sun.scenario.effect.Effect defaultInput
        end local 1 // com.sun.javafx.geom.Point2D p
        end local 0 // com.sun.scenario.effect.PerspectiveTransform this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   14     0          this  Lcom/sun/scenario/effect/PerspectiveTransform;
            0   14     1             p  Lcom/sun/javafx/geom/Point2D;
            0   14     2  defaultInput  Lcom/sun/scenario/effect/Effect;
            2   14     3         input  Lcom/sun/scenario/effect/Effect;
            3   14     4            dx  F
            4   14     5            dy  F
            5   14     6           itx  [[F
            6   14     7            sx  F
            7   14     8            sy  F
            8   14     9            sw  F
            9   14    10             b  Lcom/sun/javafx/geom/BaseBounds;
    MethodParameters:
              Name  Flags
      p             
      defaultInput  

  private void setupTransforms(com.sun.javafx.geom.transform.BaseTransform);
    descriptor: (Lcom/sun/javafx/geom/transform/BaseTransform;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=10, locals=2, args_size=2
        start local 0 // com.sun.scenario.effect.PerspectiveTransform this
        start local 1 // com.sun.javafx.geom.transform.BaseTransform transform
         0: .line 253
            aload 0 /* this */
            aload 1 /* transform */
            invokevirtual com.sun.scenario.effect.PerspectiveTransform.setupDevCoords:(Lcom/sun/javafx/geom/transform/BaseTransform;)V
         1: .line 254
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.devcoords:[F
            iconst_0
            faload
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.devcoords:[F
            iconst_1
            faload
         2: .line 255
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.devcoords:[F
            iconst_2
            faload
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.devcoords:[F
            iconst_3
            faload
         3: .line 256
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.devcoords:[F
            iconst_4
            faload
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.devcoords:[F
            iconst_5
            faload
         4: .line 257
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.devcoords:[F
            bipush 6
            faload
            aload 0 /* this */
            getfield com.sun.scenario.effect.PerspectiveTransform.devcoords:[F
            bipush 7
            faload
         5: .line 254
            invokevirtual com.sun.scenario.effect.PerspectiveTransform.setUnitQuadMapping:(FFFFFFFF)V
         6: .line 258
            return
        end local 1 // com.sun.javafx.geom.transform.BaseTransform transform
        end local 0 // com.sun.scenario.effect.PerspectiveTransform this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    7     0       this  Lcom/sun/scenario/effect/PerspectiveTransform;
            0    7     1  transform  Lcom/sun/javafx/geom/transform/BaseTransform;
    MethodParameters:
           Name  Flags
      transform  

  public com.sun.scenario.effect.impl.state.RenderState getRenderState(com.sun.scenario.effect.FilterContext, com.sun.javafx.geom.transform.BaseTransform, com.sun.javafx.geom.Rectangle, java.lang.Object, com.sun.scenario.effect.Effect);
    descriptor: (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/impl/state/RenderState;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=6, args_size=6
        start local 0 // com.sun.scenario.effect.PerspectiveTransform this
        start local 1 // com.sun.scenario.effect.FilterContext fctx
        start local 2 // com.sun.javafx.geom.transform.BaseTransform transform
        start local 3 // com.sun.javafx.geom.Rectangle outputClip
        start local 4 // java.lang.Object renderHelper
        start local 5 // com.sun.scenario.effect.Effect defaultInput
         0: .line 272
            getstatic com.sun.scenario.effect.impl.state.RenderState.UnclippedUserSpaceRenderState:Lcom/sun/scenario/effect/impl/state/RenderState;
            areturn
        end local 5 // com.sun.scenario.effect.Effect defaultInput
        end local 4 // java.lang.Object renderHelper
        end local 3 // com.sun.javafx.geom.Rectangle outputClip
        end local 2 // com.sun.javafx.geom.transform.BaseTransform transform
        end local 1 // com.sun.scenario.effect.FilterContext fctx
        end local 0 // com.sun.scenario.effect.PerspectiveTransform this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    1     0          this  Lcom/sun/scenario/effect/PerspectiveTransform;
            0    1     1          fctx  Lcom/sun/scenario/effect/FilterContext;
            0    1     2     transform  Lcom/sun/javafx/geom/transform/BaseTransform;
            0    1     3    outputClip  Lcom/sun/javafx/geom/Rectangle;
            0    1     4  renderHelper  Ljava/lang/Object;
            0    1     5  defaultInput  Lcom/sun/scenario/effect/Effect;
    MethodParameters:
              Name  Flags
      fctx          
      transform     
      outputClip    
      renderHelper  
      defaultInput  

  public boolean reducesOpaquePixels();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.scenario.effect.PerspectiveTransform this
         0: .line 277
            iconst_1
            ireturn
        end local 0 // com.sun.scenario.effect.PerspectiveTransform this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/scenario/effect/PerspectiveTransform;

  public com.sun.javafx.geom.DirtyRegionContainer getDirtyRegions(com.sun.scenario.effect.Effect, com.sun.javafx.geom.DirtyRegionPool);
    descriptor: (Lcom/sun/scenario/effect/Effect;Lcom/sun/javafx/geom/DirtyRegionPool;)Lcom/sun/javafx/geom/DirtyRegionContainer;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // com.sun.scenario.effect.PerspectiveTransform this
        start local 1 // com.sun.scenario.effect.Effect defaultInput
        start local 2 // com.sun.javafx.geom.DirtyRegionPool regionPool
         0: .line 282
            aload 2 /* regionPool */
            invokevirtual com.sun.javafx.geom.DirtyRegionPool.checkOut:()Lcom/sun/javafx/geom/DirtyRegionContainer;
            astore 3 /* drc */
        start local 3 // com.sun.javafx.geom.DirtyRegionContainer drc
         1: .line 285
            aload 3 /* drc */
            aload 0 /* this */
            getstatic com.sun.javafx.geom.transform.BaseTransform.IDENTITY_TRANSFORM:Lcom/sun/javafx/geom/transform/BaseTransform;
            aload 1 /* defaultInput */
            invokevirtual com.sun.scenario.effect.PerspectiveTransform.getBounds:(Lcom/sun/javafx/geom/transform/BaseTransform;Lcom/sun/scenario/effect/Effect;)Lcom/sun/javafx/geom/RectBounds;
            invokevirtual com.sun.javafx.geom.DirtyRegionContainer.deriveWithNewRegion:(Lcom/sun/javafx/geom/RectBounds;)Lcom/sun/javafx/geom/DirtyRegionContainer;
            pop
         2: .line 287
            aload 3 /* drc */
            areturn
        end local 3 // com.sun.javafx.geom.DirtyRegionContainer drc
        end local 2 // com.sun.javafx.geom.DirtyRegionPool regionPool
        end local 1 // com.sun.scenario.effect.Effect defaultInput
        end local 0 // com.sun.scenario.effect.PerspectiveTransform this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    3     0          this  Lcom/sun/scenario/effect/PerspectiveTransform;
            0    3     1  defaultInput  Lcom/sun/scenario/effect/Effect;
            0    3     2    regionPool  Lcom/sun/javafx/geom/DirtyRegionPool;
            1    3     3           drc  Lcom/sun/javafx/geom/DirtyRegionContainer;
    MethodParameters:
              Name  Flags
      defaultInput  
      regionPool    

  public com.sun.scenario.effect.ImageData filterImageDatas(com.sun.scenario.effect.FilterContext, com.sun.javafx.geom.transform.BaseTransform, com.sun.javafx.geom.Rectangle, com.sun.scenario.effect.impl.state.RenderState, com.sun.scenario.effect.ImageData[]);
    descriptor: (Lcom/sun/scenario/effect/FilterContext;Lcom/sun/javafx/geom/transform/BaseTransform;Lcom/sun/javafx/geom/Rectangle;Lcom/sun/scenario/effect/impl/state/RenderState;[Lcom/sun/scenario/effect/ImageData;)Lcom/sun/scenario/effect/ImageData;
    flags: (0x10c1) ACC_PUBLIC, ACC_BRIDGE, ACC_VARARGS, ACC_SYNTHETIC
    Code:
      stack=6, locals=6, args_size=6
         0: .line 1
            aload 0
            aload 1
            aload 2
            aload 3
            aload 4
            aload 5
            invokespecial com.sun.scenario.effect.CoreEffect.filterImageDatas:(Lcom/sun/scenario/effect/FilterContext;Lcom/sun/javafx/geom/transform/BaseTransform;Lcom/sun/javafx/geom/Rectangle;Lcom/sun/scenario/effect/impl/state/RenderState;[Lcom/sun/scenario/effect/ImageData;)Lcom/sun/scenario/effect/ImageData;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public com.sun.scenario.effect.Effect$AccelType getAccelType(com.sun.scenario.effect.FilterContext);
    descriptor: (Lcom/sun/scenario/effect/FilterContext;)Lcom/sun/scenario/effect/Effect$AccelType;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            invokespecial com.sun.scenario.effect.CoreEffect.getAccelType:(Lcom/sun/scenario/effect/FilterContext;)Lcom/sun/scenario/effect/Effect$AccelType;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public com.sun.javafx.geom.BaseBounds getBounds(com.sun.javafx.geom.transform.BaseTransform, com.sun.scenario.effect.Effect);
    descriptor: (Lcom/sun/javafx/geom/transform/BaseTransform;Lcom/sun/scenario/effect/Effect;)Lcom/sun/javafx/geom/BaseBounds;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
         0: .line 1
            aload 0
            aload 1
            aload 2
            invokevirtual com.sun.scenario.effect.PerspectiveTransform.getBounds:(Lcom/sun/javafx/geom/transform/BaseTransform;Lcom/sun/scenario/effect/Effect;)Lcom/sun/javafx/geom/RectBounds;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
Signature: Lcom/sun/scenario/effect/CoreEffect<Lcom/sun/scenario/effect/impl/state/RenderState;>;
SourceFile: "PerspectiveTransform.java"
InnerClasses:
  public final AccelType = com.sun.scenario.effect.Effect$AccelType of com.sun.scenario.effect.Effect