public abstract class com.sun.scenario.effect.FilterEffect<T extends com.sun.scenario.effect.impl.state.RenderState> extends com.sun.scenario.effect.Effect
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: com.sun.scenario.effect.FilterEffect
  super_class: com.sun.scenario.effect.Effect
{
  protected void <init>();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.scenario.effect.FilterEffect this
         0: .line 44
            aload 0 /* this */
            invokespecial com.sun.scenario.effect.Effect.<init>:()V
         1: .line 45
            return
        end local 0 // com.sun.scenario.effect.FilterEffect this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/scenario/effect/FilterEffect<TT;>;

  protected void <init>(com.sun.scenario.effect.Effect);
    descriptor: (Lcom/sun/scenario/effect/Effect;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.scenario.effect.FilterEffect this
        start local 1 // com.sun.scenario.effect.Effect input
         0: .line 48
            aload 0 /* this */
            aload 1 /* input */
            invokespecial com.sun.scenario.effect.Effect.<init>:(Lcom/sun/scenario/effect/Effect;)V
         1: .line 49
            return
        end local 1 // com.sun.scenario.effect.Effect input
        end local 0 // com.sun.scenario.effect.FilterEffect this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lcom/sun/scenario/effect/FilterEffect<TT;>;
            0    2     1  input  Lcom/sun/scenario/effect/Effect;
    MethodParameters:
       Name  Flags
      input  

  protected void <init>(com.sun.scenario.effect.Effect, com.sun.scenario.effect.Effect);
    descriptor: (Lcom/sun/scenario/effect/Effect;Lcom/sun/scenario/effect/Effect;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.scenario.effect.FilterEffect this
        start local 1 // com.sun.scenario.effect.Effect input1
        start local 2 // com.sun.scenario.effect.Effect input2
         0: .line 52
            aload 0 /* this */
            aload 1 /* input1 */
            aload 2 /* input2 */
            invokespecial com.sun.scenario.effect.Effect.<init>:(Lcom/sun/scenario/effect/Effect;Lcom/sun/scenario/effect/Effect;)V
         1: .line 53
            return
        end local 2 // com.sun.scenario.effect.Effect input2
        end local 1 // com.sun.scenario.effect.Effect input1
        end local 0 // com.sun.scenario.effect.FilterEffect this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lcom/sun/scenario/effect/FilterEffect<TT;>;
            0    2     1  input1  Lcom/sun/scenario/effect/Effect;
            0    2     2  input2  Lcom/sun/scenario/effect/Effect;
    MethodParameters:
        Name  Flags
      input1  
      input2  

  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: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=10, args_size=3
        start local 0 // com.sun.scenario.effect.FilterEffect this
        start local 1 // com.sun.javafx.geom.transform.BaseTransform transform
        start local 2 // com.sun.scenario.effect.Effect defaultInput
         0: .line 59
            aload 0 /* this */
            invokevirtual com.sun.scenario.effect.FilterEffect.getNumInputs:()I
            istore 3 /* numinputs */
        start local 3 // int numinputs
         1: .line 60
            aload 0 /* this */
            aconst_null
            aload 1 /* transform */
            aconst_null
         2: .line 61
            aconst_null
            aload 2 /* defaultInput */
         3: .line 60
            invokevirtual com.sun.scenario.effect.FilterEffect.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 4 /* rstate */
        start local 4 // com.sun.scenario.effect.impl.state.RenderState rstate
         4: .line 62
            aload 4 /* rstate */
            aload 1 /* transform */
            invokeinterface com.sun.scenario.effect.impl.state.RenderState.getInputTransform:(Lcom/sun/javafx/geom/transform/BaseTransform;)Lcom/sun/javafx/geom/transform/BaseTransform;
            astore 5 /* inputtx */
        start local 5 // com.sun.javafx.geom.transform.BaseTransform inputtx
         5: .line 64
            iload 3 /* numinputs */
            iconst_1
            if_icmpne 9
         6: .line 65
            aload 0 /* this */
            iconst_0
            aload 2 /* defaultInput */
            invokevirtual com.sun.scenario.effect.FilterEffect.getDefaultedInput:(ILcom/sun/scenario/effect/Effect;)Lcom/sun/scenario/effect/Effect;
            astore 7 /* input */
        start local 7 // com.sun.scenario.effect.Effect input
         7: .line 66
            aload 7 /* input */
            aload 5 /* inputtx */
            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 6 /* ret */
        end local 7 // com.sun.scenario.effect.Effect input
        start local 6 // com.sun.javafx.geom.BaseBounds ret
         8: .line 67
            goto 17
        end local 6 // com.sun.javafx.geom.BaseBounds ret
         9: .line 68
      StackMap locals: int com.sun.scenario.effect.impl.state.RenderState com.sun.javafx.geom.transform.BaseTransform
      StackMap stack:
            iload 3 /* numinputs */
            anewarray com.sun.javafx.geom.BaseBounds
            astore 7 /* inputBounds */
        start local 7 // com.sun.javafx.geom.BaseBounds[] inputBounds
        10: .line 69
            iconst_0
            istore 8 /* i */
        start local 8 // int i
        11: goto 15
        12: .line 70
      StackMap locals: com.sun.scenario.effect.FilterEffect com.sun.javafx.geom.transform.BaseTransform com.sun.scenario.effect.Effect int com.sun.scenario.effect.impl.state.RenderState com.sun.javafx.geom.transform.BaseTransform top com.sun.javafx.geom.BaseBounds[] int
      StackMap stack:
            aload 0 /* this */
            iload 8 /* i */
            aload 2 /* defaultInput */
            invokevirtual com.sun.scenario.effect.FilterEffect.getDefaultedInput:(ILcom/sun/scenario/effect/Effect;)Lcom/sun/scenario/effect/Effect;
            astore 9 /* input */
        start local 9 // com.sun.scenario.effect.Effect input
        13: .line 71
            aload 7 /* inputBounds */
            iload 8 /* i */
            aload 9 /* input */
            aload 5 /* inputtx */
            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;
            aastore
        end local 9 // com.sun.scenario.effect.Effect input
        14: .line 69
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
        15: iload 8 /* i */
            iload 3 /* numinputs */
            if_icmplt 12
        end local 8 // int i
        16: .line 73
            aload 7 /* inputBounds */
            invokestatic com.sun.scenario.effect.FilterEffect.combineBounds:([Lcom/sun/javafx/geom/BaseBounds;)Lcom/sun/javafx/geom/BaseBounds;
            astore 6 /* ret */
        end local 7 // com.sun.javafx.geom.BaseBounds[] inputBounds
        start local 6 // com.sun.javafx.geom.BaseBounds ret
        17: .line 75
      StackMap locals: com.sun.scenario.effect.FilterEffect com.sun.javafx.geom.transform.BaseTransform com.sun.scenario.effect.Effect int com.sun.scenario.effect.impl.state.RenderState com.sun.javafx.geom.transform.BaseTransform com.sun.javafx.geom.BaseBounds
      StackMap stack:
            aload 4 /* rstate */
            aload 1 /* transform */
            invokeinterface com.sun.scenario.effect.impl.state.RenderState.getResultTransform:(Lcom/sun/javafx/geom/transform/BaseTransform;)Lcom/sun/javafx/geom/transform/BaseTransform;
            aload 6 /* ret */
            invokestatic com.sun.scenario.effect.FilterEffect.transformBounds:(Lcom/sun/javafx/geom/transform/BaseTransform;Lcom/sun/javafx/geom/BaseBounds;)Lcom/sun/javafx/geom/BaseBounds;
            areturn
        end local 6 // com.sun.javafx.geom.BaseBounds ret
        end local 5 // com.sun.javafx.geom.transform.BaseTransform inputtx
        end local 4 // com.sun.scenario.effect.impl.state.RenderState rstate
        end local 3 // int numinputs
        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.FilterEffect this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   18     0          this  Lcom/sun/scenario/effect/FilterEffect<TT;>;
            0   18     1     transform  Lcom/sun/javafx/geom/transform/BaseTransform;
            0   18     2  defaultInput  Lcom/sun/scenario/effect/Effect;
            1   18     3     numinputs  I
            4   18     4        rstate  Lcom/sun/scenario/effect/impl/state/RenderState;
            5   18     5       inputtx  Lcom/sun/javafx/geom/transform/BaseTransform;
            8    9     6           ret  Lcom/sun/javafx/geom/BaseBounds;
           17   18     6           ret  Lcom/sun/javafx/geom/BaseBounds;
            7    8     7         input  Lcom/sun/scenario/effect/Effect;
           10   17     7   inputBounds  [Lcom/sun/javafx/geom/BaseBounds;
           11   16     8             i  I
           13   14     9         input  Lcom/sun/scenario/effect/Effect;
    MethodParameters:
              Name  Flags
      transform     
      defaultInput  

  protected static com.sun.javafx.geom.Rectangle untransformClip(com.sun.javafx.geom.transform.BaseTransform, com.sun.javafx.geom.Rectangle);
    descriptor: (Lcom/sun/javafx/geom/transform/BaseTransform;Lcom/sun/javafx/geom/Rectangle;)Lcom/sun/javafx/geom/Rectangle;
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=4, locals=9, args_size=2
        start local 0 // com.sun.javafx.geom.transform.BaseTransform transform
        start local 1 // com.sun.javafx.geom.Rectangle clip
         0: .line 81
            aload 0 /* transform */
            invokevirtual com.sun.javafx.geom.transform.BaseTransform.isIdentity:()Z
            ifne 1
            aload 1 /* clip */
            ifnull 1
            aload 1 /* clip */
            invokevirtual com.sun.javafx.geom.Rectangle.isEmpty:()Z
            ifeq 2
         1: .line 82
      StackMap locals:
      StackMap stack:
            aload 1 /* clip */
            areturn
         2: .line 101
      StackMap locals:
      StackMap stack:
            new com.sun.javafx.geom.Rectangle
            dup
            invokespecial com.sun.javafx.geom.Rectangle.<init>:()V
            astore 2 /* transformedBounds */
        start local 2 // com.sun.javafx.geom.Rectangle transformedBounds
         3: .line 102
            aload 0 /* transform */
            invokevirtual com.sun.javafx.geom.transform.BaseTransform.isTranslateOrIdentity:()Z
            ifeq 15
         4: .line 106
            aload 2 /* transformedBounds */
            aload 1 /* clip */
            invokevirtual com.sun.javafx.geom.Rectangle.setBounds:(Lcom/sun/javafx/geom/Rectangle;)V
         5: .line 107
            aload 0 /* transform */
            invokevirtual com.sun.javafx.geom.transform.BaseTransform.getMxt:()D
            dneg
            dstore 3 /* tx */
        start local 3 // double tx
         6: .line 108
            aload 0 /* transform */
            invokevirtual com.sun.javafx.geom.transform.BaseTransform.getMyt:()D
            dneg
            dstore 5 /* ty */
        start local 5 // double ty
         7: .line 109
            dload 3 /* tx */
            invokestatic java.lang.Math.floor:(D)D
            d2i
            istore 7 /* itx */
        start local 7 // int itx
         8: .line 110
            dload 5 /* ty */
            invokestatic java.lang.Math.floor:(D)D
            d2i
            istore 8 /* ity */
        start local 8 // int ity
         9: .line 111
            aload 2 /* transformedBounds */
            iload 7 /* itx */
            iload 8 /* ity */
            invokevirtual com.sun.javafx.geom.Rectangle.translate:(II)V
        10: .line 112
            iload 7 /* itx */
            i2d
            dload 3 /* tx */
            dcmpl
            ifeq 12
        11: .line 114
            aload 2 /* transformedBounds */
            dup
            getfield com.sun.javafx.geom.Rectangle.width:I
            iconst_1
            iadd
            putfield com.sun.javafx.geom.Rectangle.width:I
        12: .line 116
      StackMap locals: com.sun.javafx.geom.transform.BaseTransform com.sun.javafx.geom.Rectangle com.sun.javafx.geom.Rectangle double double int int
      StackMap stack:
            iload 8 /* ity */
            i2d
            dload 5 /* ty */
            dcmpl
            ifeq 14
        13: .line 118
            aload 2 /* transformedBounds */
            dup
            getfield com.sun.javafx.geom.Rectangle.height:I
            iconst_1
            iadd
            putfield com.sun.javafx.geom.Rectangle.height:I
        14: .line 120
      StackMap locals:
      StackMap stack:
            aload 2 /* transformedBounds */
            areturn
        end local 8 // int ity
        end local 7 // int itx
        end local 5 // double ty
        end local 3 // double tx
        15: .line 122
      StackMap locals: com.sun.javafx.geom.transform.BaseTransform com.sun.javafx.geom.Rectangle com.sun.javafx.geom.Rectangle
      StackMap stack:
            new com.sun.javafx.geom.RectBounds
            dup
            aload 1 /* clip */
            invokespecial com.sun.javafx.geom.RectBounds.<init>:(Lcom/sun/javafx/geom/Rectangle;)V
            astore 3 /* b */
        start local 3 // com.sun.javafx.geom.RectBounds b
        16: .line 124
            aload 3 /* b */
            ldc -0.5
            ldc -0.5
            invokevirtual com.sun.javafx.geom.RectBounds.grow:(FF)V
        17: .line 125
            aload 0 /* transform */
            aload 3 /* b */
            aload 3 /* b */
            invokevirtual com.sun.javafx.geom.transform.BaseTransform.inverseTransform:(Lcom/sun/javafx/geom/BaseBounds;Lcom/sun/javafx/geom/BaseBounds;)Lcom/sun/javafx/geom/BaseBounds;
            checkcast com.sun.javafx.geom.RectBounds
            astore 3 /* b */
        18: .line 126
            aload 3 /* b */
            ldc 0.5
            ldc 0.5
            invokevirtual com.sun.javafx.geom.RectBounds.grow:(FF)V
        19: .line 127
            aload 2 /* transformedBounds */
            aload 3 /* b */
            invokevirtual com.sun.javafx.geom.Rectangle.setBounds:(Lcom/sun/javafx/geom/BaseBounds;)V
        20: .line 128
            goto 22
      StackMap locals: com.sun.javafx.geom.transform.BaseTransform com.sun.javafx.geom.Rectangle com.sun.javafx.geom.Rectangle com.sun.javafx.geom.RectBounds
      StackMap stack: com.sun.javafx.geom.transform.NoninvertibleTransformException
        21: pop
        22: .line 136
      StackMap locals:
      StackMap stack:
            aload 2 /* transformedBounds */
            areturn
        end local 3 // com.sun.javafx.geom.RectBounds b
        end local 2 // com.sun.javafx.geom.Rectangle transformedBounds
        end local 1 // com.sun.javafx.geom.Rectangle clip
        end local 0 // com.sun.javafx.geom.transform.BaseTransform transform
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   23     0          transform  Lcom/sun/javafx/geom/transform/BaseTransform;
            0   23     1               clip  Lcom/sun/javafx/geom/Rectangle;
            3   23     2  transformedBounds  Lcom/sun/javafx/geom/Rectangle;
            6   15     3                 tx  D
            7   15     5                 ty  D
            8   15     7                itx  I
            9   15     8                ity  I
           16   23     3                  b  Lcom/sun/javafx/geom/RectBounds;
      Exception table:
        from    to  target  type
          16    20      21  Class com.sun.javafx.geom.transform.NoninvertibleTransformException
    MethodParameters:
           Name  Flags
      transform  
      clip       

  public abstract T getRenderState(com.sun.scenario.effect.FilterContext, com.sun.javafx.geom.transform.BaseTransform, com.sun.javafx.geom.Rectangle, , 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: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Lcom/sun/scenario/effect/FilterContext;Lcom/sun/javafx/geom/transform/BaseTransform;Lcom/sun/javafx/geom/Rectangle;Ljava/lang/Object;Lcom/sun/scenario/effect/Effect;)TT;
    MethodParameters:
              Name  Flags
      fctx          
      transform     
      outputClip    
      renderHelper  
      defaultInput  

  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=8, locals=15, args_size=6
        start local 0 // com.sun.scenario.effect.FilterEffect 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 170
            aload 0 /* this */
            aload 1 /* fctx */
            aload 2 /* transform */
            aload 3 /* outputClip */
         1: .line 171
            aload 4 /* renderHelper */
            aload 5 /* defaultInput */
         2: .line 170
            invokevirtual com.sun.scenario.effect.FilterEffect.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
         3: .line 172
            aload 0 /* this */
            invokevirtual com.sun.scenario.effect.FilterEffect.getNumInputs:()I
            istore 7 /* numinputs */
        start local 7 // int numinputs
         4: .line 173
            iload 7 /* numinputs */
            anewarray com.sun.scenario.effect.ImageData
            astore 8 /* inputDatas */
        start local 8 // com.sun.scenario.effect.ImageData[] inputDatas
         5: .line 175
            aload 6 /* rstate */
            aload 2 /* transform */
            invokeinterface com.sun.scenario.effect.impl.state.RenderState.getInputTransform:(Lcom/sun/javafx/geom/transform/BaseTransform;)Lcom/sun/javafx/geom/transform/BaseTransform;
            astore 10 /* inputtx */
        start local 10 // com.sun.javafx.geom.transform.BaseTransform inputtx
         6: .line 176
            aload 6 /* rstate */
            aload 2 /* transform */
            invokeinterface com.sun.scenario.effect.impl.state.RenderState.getResultTransform:(Lcom/sun/javafx/geom/transform/BaseTransform;)Lcom/sun/javafx/geom/transform/BaseTransform;
            astore 11 /* resulttx */
        start local 11 // com.sun.javafx.geom.transform.BaseTransform resulttx
         7: .line 177
            aload 11 /* resulttx */
            invokevirtual com.sun.javafx.geom.transform.BaseTransform.isIdentity:()Z
            ifeq 10
         8: .line 178
            aload 3 /* outputClip */
            astore 9 /* filterClip */
        start local 9 // com.sun.javafx.geom.Rectangle filterClip
         9: .line 179
            goto 11
        end local 9 // com.sun.javafx.geom.Rectangle filterClip
        10: .line 180
      StackMap locals: com.sun.scenario.effect.FilterEffect 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 int com.sun.scenario.effect.ImageData[] top com.sun.javafx.geom.transform.BaseTransform com.sun.javafx.geom.transform.BaseTransform
      StackMap stack:
            aload 11 /* resulttx */
            aload 3 /* outputClip */
            invokestatic com.sun.scenario.effect.FilterEffect.untransformClip:(Lcom/sun/javafx/geom/transform/BaseTransform;Lcom/sun/javafx/geom/Rectangle;)Lcom/sun/javafx/geom/Rectangle;
            astore 9 /* filterClip */
        start local 9 // com.sun.javafx.geom.Rectangle filterClip
        11: .line 182
      StackMap locals: com.sun.scenario.effect.FilterEffect 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 int com.sun.scenario.effect.ImageData[] com.sun.javafx.geom.Rectangle com.sun.javafx.geom.transform.BaseTransform com.sun.javafx.geom.transform.BaseTransform
      StackMap stack:
            iconst_0
            istore 12 /* i */
        start local 12 // int i
        12: goto 28
        13: .line 183
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            iload 12 /* i */
            aload 5 /* defaultInput */
            invokevirtual com.sun.scenario.effect.FilterEffect.getDefaultedInput:(ILcom/sun/scenario/effect/Effect;)Lcom/sun/scenario/effect/Effect;
            astore 13 /* input */
        start local 13 // com.sun.scenario.effect.Effect input
        14: .line 184
            aload 8 /* inputDatas */
            iload 12 /* i */
        15: .line 185
            aload 13 /* input */
            aload 1 /* fctx */
            aload 10 /* inputtx */
        16: .line 186
            aload 6 /* rstate */
            iload 12 /* i */
            aload 9 /* filterClip */
            invokeinterface com.sun.scenario.effect.impl.state.RenderState.getInputClip:(ILcom/sun/javafx/geom/Rectangle;)Lcom/sun/javafx/geom/Rectangle;
        17: .line 187
            aconst_null
            aload 5 /* defaultInput */
        18: .line 185
            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;
        19: .line 184
            aastore
        20: .line 188
            aload 8 /* inputDatas */
            iload 12 /* i */
            aaload
            aload 1 /* fctx */
            invokevirtual com.sun.scenario.effect.ImageData.validate:(Lcom/sun/scenario/effect/FilterContext;)Z
            ifne 27
        21: .line 189
            iconst_0
            istore 14 /* j */
        start local 14 // int j
        22: goto 25
        23: .line 190
      StackMap locals: com.sun.scenario.effect.Effect int
      StackMap stack:
            aload 8 /* inputDatas */
            iload 14 /* j */
            aaload
            invokevirtual com.sun.scenario.effect.ImageData.unref:()V
        24: .line 189
            iinc 14 /* j */ 1
      StackMap locals:
      StackMap stack:
        25: iload 14 /* j */
            iload 12 /* i */
            if_icmple 23
        end local 14 // int j
        26: .line 192
            new com.sun.scenario.effect.ImageData
            dup
            aload 1 /* fctx */
            aconst_null
            aconst_null
            invokespecial com.sun.scenario.effect.ImageData.<init>:(Lcom/sun/scenario/effect/FilterContext;Lcom/sun/scenario/effect/Filterable;Lcom/sun/javafx/geom/Rectangle;)V
            areturn
        end local 13 // com.sun.scenario.effect.Effect input
        27: .line 182
      StackMap locals:
      StackMap stack:
            iinc 12 /* i */ 1
      StackMap locals:
      StackMap stack:
        28: iload 12 /* i */
            iload 7 /* numinputs */
            if_icmplt 13
        end local 12 // int i
        29: .line 195
            aload 0 /* this */
            aload 1 /* fctx */
            aload 10 /* inputtx */
            aload 9 /* filterClip */
            aload 6 /* rstate */
            aload 8 /* inputDatas */
            invokevirtual com.sun.scenario.effect.FilterEffect.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 12 /* ret */
        start local 12 // com.sun.scenario.effect.ImageData ret
        30: .line 196
            iconst_0
            istore 13 /* i */
        start local 13 // int i
        31: goto 34
        32: .line 197
      StackMap locals: com.sun.scenario.effect.FilterEffect 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 int com.sun.scenario.effect.ImageData[] com.sun.javafx.geom.Rectangle com.sun.javafx.geom.transform.BaseTransform com.sun.javafx.geom.transform.BaseTransform com.sun.scenario.effect.ImageData int
      StackMap stack:
            aload 8 /* inputDatas */
            iload 13 /* i */
            aaload
            invokevirtual com.sun.scenario.effect.ImageData.unref:()V
        33: .line 196
            iinc 13 /* i */ 1
      StackMap locals:
      StackMap stack:
        34: iload 13 /* i */
            iload 7 /* numinputs */
            if_icmplt 32
        end local 13 // int i
        35: .line 199
            aload 11 /* resulttx */
            invokevirtual com.sun.javafx.geom.transform.BaseTransform.isIdentity:()Z
            ifne 43
        36: .line 200
            aload 4 /* renderHelper */
            instanceof com.sun.scenario.effect.ImageDataRenderer
            ifeq 42
        37: .line 201
            aload 4 /* renderHelper */
            checkcast com.sun.scenario.effect.ImageDataRenderer
            astore 13 /* renderer */
        start local 13 // com.sun.scenario.effect.ImageDataRenderer renderer
        38: .line 202
            aload 13 /* renderer */
            aload 12 /* ret */
            aload 11 /* resulttx */
            aload 1 /* fctx */
            invokeinterface com.sun.scenario.effect.ImageDataRenderer.renderImage:(Lcom/sun/scenario/effect/ImageData;Lcom/sun/javafx/geom/transform/BaseTransform;Lcom/sun/scenario/effect/FilterContext;)V
        39: .line 203
            aload 12 /* ret */
            invokevirtual com.sun.scenario.effect.ImageData.unref:()V
        40: .line 204
            aconst_null
            astore 12 /* ret */
        end local 13 // com.sun.scenario.effect.ImageDataRenderer renderer
        41: .line 205
            goto 43
        42: .line 206
      StackMap locals:
      StackMap stack:
            aload 12 /* ret */
            aload 11 /* resulttx */
            invokevirtual com.sun.scenario.effect.ImageData.transform:(Lcom/sun/javafx/geom/transform/BaseTransform;)Lcom/sun/scenario/effect/ImageData;
            astore 12 /* ret */
        43: .line 209
      StackMap locals:
      StackMap stack:
            aload 12 /* ret */
            areturn
        end local 12 // com.sun.scenario.effect.ImageData ret
        end local 11 // com.sun.javafx.geom.transform.BaseTransform resulttx
        end local 10 // com.sun.javafx.geom.transform.BaseTransform inputtx
        end local 9 // com.sun.javafx.geom.Rectangle filterClip
        end local 8 // com.sun.scenario.effect.ImageData[] inputDatas
        end local 7 // int numinputs
        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.FilterEffect this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   44     0          this  Lcom/sun/scenario/effect/FilterEffect<TT;>;
            0   44     1          fctx  Lcom/sun/scenario/effect/FilterContext;
            0   44     2     transform  Lcom/sun/javafx/geom/transform/BaseTransform;
            0   44     3    outputClip  Lcom/sun/javafx/geom/Rectangle;
            0   44     4  renderHelper  Ljava/lang/Object;
            0   44     5  defaultInput  Lcom/sun/scenario/effect/Effect;
            3   44     6        rstate  TT;
            4   44     7     numinputs  I
            5   44     8    inputDatas  [Lcom/sun/scenario/effect/ImageData;
            9   10     9    filterClip  Lcom/sun/javafx/geom/Rectangle;
           11   44     9    filterClip  Lcom/sun/javafx/geom/Rectangle;
            6   44    10       inputtx  Lcom/sun/javafx/geom/transform/BaseTransform;
            7   44    11      resulttx  Lcom/sun/javafx/geom/transform/BaseTransform;
           12   29    12             i  I
           14   27    13         input  Lcom/sun/scenario/effect/Effect;
           22   26    14             j  I
           30   44    12           ret  Lcom/sun/scenario/effect/ImageData;
           31   35    13             i  I
           38   41    13      renderer  Lcom/sun/scenario/effect/ImageDataRenderer;
    MethodParameters:
              Name  Flags
      fctx          
      transform     
      outputClip    
      renderHelper  
      defaultInput  

  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=3, locals=3, args_size=3
        start local 0 // com.sun.scenario.effect.FilterEffect this
        start local 1 // com.sun.javafx.geom.Point2D p
        start local 2 // com.sun.scenario.effect.Effect defaultInput
         0: .line 214
            aload 0 /* this */
            iconst_0
            aload 2 /* defaultInput */
            invokevirtual com.sun.scenario.effect.FilterEffect.getDefaultedInput:(ILcom/sun/scenario/effect/Effect;)Lcom/sun/scenario/effect/Effect;
            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;
            areturn
        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.FilterEffect this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    1     0          this  Lcom/sun/scenario/effect/FilterEffect<TT;>;
            0    1     1             p  Lcom/sun/javafx/geom/Point2D;
            0    1     2  defaultInput  Lcom/sun/scenario/effect/Effect;
    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=3, locals=3, args_size=3
        start local 0 // com.sun.scenario.effect.FilterEffect this
        start local 1 // com.sun.javafx.geom.Point2D p
        start local 2 // com.sun.scenario.effect.Effect defaultInput
         0: .line 219
            aload 0 /* this */
            iconst_0
            aload 2 /* defaultInput */
            invokevirtual com.sun.scenario.effect.FilterEffect.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;
            areturn
        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.FilterEffect this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    1     0          this  Lcom/sun/scenario/effect/FilterEffect<TT;>;
            0    1     1             p  Lcom/sun/javafx/geom/Point2D;
            0    1     2  defaultInput  Lcom/sun/scenario/effect/Effect;
    MethodParameters:
              Name  Flags
      p             
      defaultInput  

  protected abstract com.sun.scenario.effect.ImageData filterImageDatas(com.sun.scenario.effect.FilterContext, com.sun.javafx.geom.transform.BaseTransform, com.sun.javafx.geom.Rectangle, T, 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: (0x0484) ACC_PROTECTED, ACC_VARARGS, ACC_ABSTRACT
    Signature: (Lcom/sun/scenario/effect/FilterContext;Lcom/sun/javafx/geom/transform/BaseTransform;Lcom/sun/javafx/geom/Rectangle;TT;[Lcom/sun/scenario/effect/ImageData;)Lcom/sun/scenario/effect/ImageData;
    MethodParameters:
            Name  Flags
      fctx        
      transform   
      outputClip  
      rstate      
      inputDatas  
}
Signature: <T::Lcom/sun/scenario/effect/impl/state/RenderState;>Lcom/sun/scenario/effect/Effect;
SourceFile: "FilterEffect.java"