public final class com.sun.pisces.PiscesRenderer
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: com.sun.pisces.PiscesRenderer
  super_class: java.lang.Object
{
  public static final int ARC_OPEN;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

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

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

  private long nativePtr;
    descriptor: J
    flags: (0x0002) ACC_PRIVATE

  private com.sun.pisces.AbstractSurface surface;
    descriptor: Lcom/sun/pisces/AbstractSurface;
    flags: (0x0002) ACC_PRIVATE

  public void <init>(com.sun.pisces.AbstractSurface);
    descriptor: (Lcom/sun/pisces/AbstractSurface;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // com.sun.pisces.PiscesRenderer this
        start local 1 // com.sun.pisces.AbstractSurface surface
         0: .line 88
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 80
            aload 0 /* this */
            lconst_0
            putfield com.sun.pisces.PiscesRenderer.nativePtr:J
         2: .line 89
            aload 0 /* this */
            aload 1 /* surface */
            putfield com.sun.pisces.PiscesRenderer.surface:Lcom/sun/pisces/AbstractSurface;
         3: .line 90
            aload 0 /* this */
            invokevirtual com.sun.pisces.PiscesRenderer.initialize:()V
         4: .line 91
            aload 0 /* this */
            new com.sun.pisces.PiscesRenderer$PiscesRendererDisposerRecord
            dup
            aload 0 /* this */
            getfield com.sun.pisces.PiscesRenderer.nativePtr:J
            invokespecial com.sun.pisces.PiscesRenderer$PiscesRendererDisposerRecord.<init>:(J)V
            invokestatic com.sun.prism.impl.Disposer.addRecord:(Ljava/lang/Object;Lcom/sun/prism/impl/Disposer$Record;)V
         5: .line 92
            return
        end local 1 // com.sun.pisces.AbstractSurface surface
        end local 0 // com.sun.pisces.PiscesRenderer this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Lcom/sun/pisces/PiscesRenderer;
            0    6     1  surface  Lcom/sun/pisces/AbstractSurface;
    MethodParameters:
         Name  Flags
      surface  

  private native void initialize();
    descriptor: ()V
    flags: (0x0102) ACC_PRIVATE, ACC_NATIVE

  public void setColor(int, int, int, int);
    descriptor: (IIII)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // com.sun.pisces.PiscesRenderer this
        start local 1 // int red
        start local 2 // int green
        start local 3 // int blue
        start local 4 // int alpha
         0: .line 105
            aload 0 /* this */
            iload 1 /* red */
            ldc "RED"
            invokevirtual com.sun.pisces.PiscesRenderer.checkColorRange:(ILjava/lang/String;)V
         1: .line 106
            aload 0 /* this */
            iload 2 /* green */
            ldc "GREEN"
            invokevirtual com.sun.pisces.PiscesRenderer.checkColorRange:(ILjava/lang/String;)V
         2: .line 107
            aload 0 /* this */
            iload 3 /* blue */
            ldc "BLUE"
            invokevirtual com.sun.pisces.PiscesRenderer.checkColorRange:(ILjava/lang/String;)V
         3: .line 108
            aload 0 /* this */
            iload 4 /* alpha */
            ldc "ALPHA"
            invokevirtual com.sun.pisces.PiscesRenderer.checkColorRange:(ILjava/lang/String;)V
         4: .line 109
            aload 0 /* this */
            iload 1 /* red */
            iload 2 /* green */
            iload 3 /* blue */
            iload 4 /* alpha */
            invokevirtual com.sun.pisces.PiscesRenderer.setColorImpl:(IIII)V
         5: .line 110
            return
        end local 4 // int alpha
        end local 3 // int blue
        end local 2 // int green
        end local 1 // int red
        end local 0 // com.sun.pisces.PiscesRenderer this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   this  Lcom/sun/pisces/PiscesRenderer;
            0    6     1    red  I
            0    6     2  green  I
            0    6     3   blue  I
            0    6     4  alpha  I
    MethodParameters:
       Name  Flags
      red    
      green  
      blue   
      alpha  

  private native void setColorImpl(int, int, int, int);
    descriptor: (IIII)V
    flags: (0x0102) ACC_PRIVATE, ACC_NATIVE
    MethodParameters:
       Name  Flags
      red    
      green  
      blue   
      alpha  

  private void checkColorRange(int, java.lang.String);
    descriptor: (ILjava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // com.sun.pisces.PiscesRenderer this
        start local 1 // int v
        start local 2 // java.lang.String componentName
         0: .line 115
            iload 1 /* v */
            iflt 1
            iload 1 /* v */
            sipush 255
            if_icmple 2
         1: .line 116
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            aload 2 /* componentName */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " color component is out of range"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 118
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.lang.String componentName
        end local 1 // int v
        end local 0 // com.sun.pisces.PiscesRenderer this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    3     0           this  Lcom/sun/pisces/PiscesRenderer;
            0    3     1              v  I
            0    3     2  componentName  Ljava/lang/String;
    MethodParameters:
               Name  Flags
      v              
      componentName  

  public void setColor(int, int, int);
    descriptor: (III)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // com.sun.pisces.PiscesRenderer this
        start local 1 // int red
        start local 2 // int green
        start local 3 // int blue
         0: .line 131
            aload 0 /* this */
            iload 1 /* red */
            iload 2 /* green */
            iload 3 /* blue */
            sipush 255
            invokevirtual com.sun.pisces.PiscesRenderer.setColor:(IIII)V
         1: .line 132
            return
        end local 3 // int blue
        end local 2 // int green
        end local 1 // int red
        end local 0 // com.sun.pisces.PiscesRenderer this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lcom/sun/pisces/PiscesRenderer;
            0    2     1    red  I
            0    2     2  green  I
            0    2     3   blue  I
    MethodParameters:
       Name  Flags
      red    
      green  
      blue   

  public void setCompositeRule(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.sun.pisces.PiscesRenderer this
        start local 1 // int compositeRule
         0: .line 140
            iload 1 /* compositeRule */
            ifeq 4
         1: .line 141
            iload 1 /* compositeRule */
            iconst_1
            if_icmpeq 4
         2: .line 142
            iload 1 /* compositeRule */
            iconst_2
            if_icmpeq 4
         3: .line 144
            new java.lang.IllegalArgumentException
            dup
            ldc "Invalid value for Composite-Rule"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 146
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* compositeRule */
            invokevirtual com.sun.pisces.PiscesRenderer.setCompositeRuleImpl:(I)V
         5: .line 147
            return
        end local 1 // int compositeRule
        end local 0 // com.sun.pisces.PiscesRenderer this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    6     0           this  Lcom/sun/pisces/PiscesRenderer;
            0    6     1  compositeRule  I
    MethodParameters:
               Name  Flags
      compositeRule  

  private native void setCompositeRuleImpl(int);
    descriptor: (I)V
    flags: (0x0102) ACC_PRIVATE, ACC_NATIVE
    MethodParameters:
               Name  Flags
      compositeRule  

  private native void setLinearGradientImpl(int, int, int, int, int[], int, com.sun.pisces.Transform6);
    descriptor: (IIII[IILcom/sun/pisces/Transform6;)V
    flags: (0x0102) ACC_PRIVATE, ACC_NATIVE
    MethodParameters:
                   Name  Flags
      x0                 
      y0                 
      x1                 
      y1                 
      colors             
      cycleMethod        
      gradientTransform  

  public void setLinearGradient(int, int, int, int, int[], int[], int, com.sun.pisces.Transform6);
    descriptor: (IIII[I[IILcom/sun/pisces/Transform6;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=15, locals=10, args_size=9
        start local 0 // com.sun.pisces.PiscesRenderer this
        start local 1 // int x0
        start local 2 // int y0
        start local 3 // int x1
        start local 4 // int y1
        start local 5 // int[] fractions
        start local 6 // int[] rgba
        start local 7 // int cycleMethod
        start local 8 // com.sun.pisces.Transform6 gradientTransform
         0: .line 175
            new com.sun.pisces.GradientColorMap
            dup
            aload 5 /* fractions */
            aload 6 /* rgba */
            iload 7 /* cycleMethod */
            invokespecial com.sun.pisces.GradientColorMap.<init>:([I[II)V
            astore 9 /* gradientColorMap */
        start local 9 // com.sun.pisces.GradientColorMap gradientColorMap
         1: .line 176
            aload 0 /* this */
            iload 1 /* x0 */
            iload 2 /* y0 */
            iload 3 /* x1 */
            iload 4 /* y1 */
         2: .line 177
            aload 9 /* gradientColorMap */
            getfield com.sun.pisces.GradientColorMap.colors:[I
            iload 7 /* cycleMethod */
         3: .line 178
            aload 8 /* gradientTransform */
            ifnonnull 4
            new com.sun.pisces.Transform6
            dup
            ldc 65536
            iconst_0
            iconst_0
            ldc 65536
            iconst_0
            iconst_0
            invokespecial com.sun.pisces.Transform6.<init>:(IIIIII)V
            goto 5
      StackMap locals: com.sun.pisces.PiscesRenderer int int int int int[] int[] int com.sun.pisces.Transform6 com.sun.pisces.GradientColorMap
      StackMap stack: com.sun.pisces.PiscesRenderer int int int int int[] int
         4: aload 8 /* gradientTransform */
         5: .line 176
      StackMap locals: com.sun.pisces.PiscesRenderer int int int int int[] int[] int com.sun.pisces.Transform6 com.sun.pisces.GradientColorMap
      StackMap stack: com.sun.pisces.PiscesRenderer int int int int int[] int com.sun.pisces.Transform6
            invokevirtual com.sun.pisces.PiscesRenderer.setLinearGradientImpl:(IIII[IILcom/sun/pisces/Transform6;)V
         6: .line 179
            return
        end local 9 // com.sun.pisces.GradientColorMap gradientColorMap
        end local 8 // com.sun.pisces.Transform6 gradientTransform
        end local 7 // int cycleMethod
        end local 6 // int[] rgba
        end local 5 // int[] fractions
        end local 4 // int y1
        end local 3 // int x1
        end local 2 // int y0
        end local 1 // int x0
        end local 0 // com.sun.pisces.PiscesRenderer this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    7     0               this  Lcom/sun/pisces/PiscesRenderer;
            0    7     1                 x0  I
            0    7     2                 y0  I
            0    7     3                 x1  I
            0    7     4                 y1  I
            0    7     5          fractions  [I
            0    7     6               rgba  [I
            0    7     7        cycleMethod  I
            0    7     8  gradientTransform  Lcom/sun/pisces/Transform6;
            1    7     9   gradientColorMap  Lcom/sun/pisces/GradientColorMap;
    MethodParameters:
                   Name  Flags
      x0                 
      y0                 
      x1                 
      y1                 
      fractions          
      rgba               
      cycleMethod        
      gradientTransform  

  public void setLinearGradient(int, int, int, int, com.sun.pisces.GradientColorMap, com.sun.pisces.Transform6);
    descriptor: (IIIILcom/sun/pisces/GradientColorMap;Lcom/sun/pisces/Transform6;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=15, locals=7, args_size=7
        start local 0 // com.sun.pisces.PiscesRenderer this
        start local 1 // int x0
        start local 2 // int y0
        start local 3 // int x1
        start local 4 // int y1
        start local 5 // com.sun.pisces.GradientColorMap gradientColorMap
        start local 6 // com.sun.pisces.Transform6 gradientTransform
         0: .line 197
            aload 0 /* this */
            iload 1 /* x0 */
            iload 2 /* y0 */
            iload 3 /* x1 */
            iload 4 /* y1 */
         1: .line 198
            aload 5 /* gradientColorMap */
            getfield com.sun.pisces.GradientColorMap.colors:[I
         2: .line 199
            aload 5 /* gradientColorMap */
            getfield com.sun.pisces.GradientColorMap.cycleMethod:I
         3: .line 200
            aload 6 /* gradientTransform */
            ifnonnull 4
            new com.sun.pisces.Transform6
            dup
            ldc 65536
            iconst_0
            iconst_0
            ldc 65536
            iconst_0
            iconst_0
            invokespecial com.sun.pisces.Transform6.<init>:(IIIIII)V
            goto 5
      StackMap locals: com.sun.pisces.PiscesRenderer int int int int com.sun.pisces.GradientColorMap com.sun.pisces.Transform6
      StackMap stack: com.sun.pisces.PiscesRenderer int int int int int[] int
         4: aload 6 /* gradientTransform */
         5: .line 197
      StackMap locals: com.sun.pisces.PiscesRenderer int int int int com.sun.pisces.GradientColorMap com.sun.pisces.Transform6
      StackMap stack: com.sun.pisces.PiscesRenderer int int int int int[] int com.sun.pisces.Transform6
            invokevirtual com.sun.pisces.PiscesRenderer.setLinearGradientImpl:(IIII[IILcom/sun/pisces/Transform6;)V
         6: .line 201
            return
        end local 6 // com.sun.pisces.Transform6 gradientTransform
        end local 5 // com.sun.pisces.GradientColorMap gradientColorMap
        end local 4 // int y1
        end local 3 // int x1
        end local 2 // int y0
        end local 1 // int x0
        end local 0 // com.sun.pisces.PiscesRenderer this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    7     0               this  Lcom/sun/pisces/PiscesRenderer;
            0    7     1                 x0  I
            0    7     2                 y0  I
            0    7     3                 x1  I
            0    7     4                 y1  I
            0    7     5   gradientColorMap  Lcom/sun/pisces/GradientColorMap;
            0    7     6  gradientTransform  Lcom/sun/pisces/Transform6;
    MethodParameters:
                   Name  Flags
      x0                 
      y0                 
      x1                 
      y1                 
      gradientColorMap   
      gradientTransform  

  public void setLinearGradient(int, int, int, int, int, int, int);
    descriptor: (IIIIIII)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=11, args_size=8
        start local 0 // com.sun.pisces.PiscesRenderer this
        start local 1 // int x0
        start local 2 // int y0
        start local 3 // int color0
        start local 4 // int x1
        start local 5 // int y1
        start local 6 // int color1
        start local 7 // int cycleMethod
         0: .line 222
            iconst_2
            newarray 10
            dup
            iconst_1
            ldc 65536
            iastore
            astore 8 /* fractions */
        start local 8 // int[] fractions
         1: .line 223
            iconst_2
            newarray 10
            dup
            iconst_0
            iload 3 /* color0 */
            iastore
            dup
            iconst_1
            iload 6 /* color1 */
            iastore
            astore 9 /* rgba */
        start local 9 // int[] rgba
         2: .line 224
            new com.sun.pisces.Transform6
            dup
            ldc 65536
            iconst_0
            iconst_0
            ldc 65536
            iconst_0
            iconst_0
            invokespecial com.sun.pisces.Transform6.<init>:(IIIIII)V
            astore 10 /* ident */
        start local 10 // com.sun.pisces.Transform6 ident
         3: .line 225
            aload 0 /* this */
            iload 1 /* x0 */
            iload 2 /* y0 */
            iload 4 /* x1 */
            iload 5 /* y1 */
            aload 8 /* fractions */
            aload 9 /* rgba */
            iload 7 /* cycleMethod */
            aload 10 /* ident */
            invokevirtual com.sun.pisces.PiscesRenderer.setLinearGradient:(IIII[I[IILcom/sun/pisces/Transform6;)V
         4: .line 226
            return
        end local 10 // com.sun.pisces.Transform6 ident
        end local 9 // int[] rgba
        end local 8 // int[] fractions
        end local 7 // int cycleMethod
        end local 6 // int color1
        end local 5 // int y1
        end local 4 // int x1
        end local 3 // int color0
        end local 2 // int y0
        end local 1 // int x0
        end local 0 // com.sun.pisces.PiscesRenderer this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0         this  Lcom/sun/pisces/PiscesRenderer;
            0    5     1           x0  I
            0    5     2           y0  I
            0    5     3       color0  I
            0    5     4           x1  I
            0    5     5           y1  I
            0    5     6       color1  I
            0    5     7  cycleMethod  I
            1    5     8    fractions  [I
            2    5     9         rgba  [I
            3    5    10        ident  Lcom/sun/pisces/Transform6;
    MethodParameters:
             Name  Flags
      x0           
      y0           
      color0       
      x1           
      y1           
      color1       
      cycleMethod  

  private native void setRadialGradientImpl(int, int, int, int, int, int[], int, com.sun.pisces.Transform6);
    descriptor: (IIIII[IILcom/sun/pisces/Transform6;)V
    flags: (0x0102) ACC_PRIVATE, ACC_NATIVE
    MethodParameters:
                   Name  Flags
      cx                 
      cy                 
      fx                 
      fy                 
      radius             
      colors             
      cycleMethod        
      gradientTransform  

  public void setRadialGradient(int, int, int, int, int, int[], int[], int, com.sun.pisces.Transform6);
    descriptor: (IIIII[I[IILcom/sun/pisces/Transform6;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=16, locals=11, args_size=10
        start local 0 // com.sun.pisces.PiscesRenderer this
        start local 1 // int cx
        start local 2 // int cy
        start local 3 // int fx
        start local 4 // int fy
        start local 5 // int radius
        start local 6 // int[] fractions
        start local 7 // int[] rgba
        start local 8 // int cycleMethod
        start local 9 // com.sun.pisces.Transform6 gradientTransform
         0: .line 256
            new com.sun.pisces.GradientColorMap
            dup
            aload 6 /* fractions */
            aload 7 /* rgba */
            iload 8 /* cycleMethod */
            invokespecial com.sun.pisces.GradientColorMap.<init>:([I[II)V
            astore 10 /* gradientColorMap */
        start local 10 // com.sun.pisces.GradientColorMap gradientColorMap
         1: .line 257
            aload 0 /* this */
            iload 1 /* cx */
            iload 2 /* cy */
            iload 3 /* fx */
            iload 4 /* fy */
            iload 5 /* radius */
         2: .line 258
            aload 10 /* gradientColorMap */
            getfield com.sun.pisces.GradientColorMap.colors:[I
            iload 8 /* cycleMethod */
         3: .line 259
            aload 9 /* gradientTransform */
            ifnonnull 4
            new com.sun.pisces.Transform6
            dup
            ldc 65536
            iconst_0
            iconst_0
            ldc 65536
            iconst_0
            iconst_0
            invokespecial com.sun.pisces.Transform6.<init>:(IIIIII)V
            goto 5
      StackMap locals: com.sun.pisces.PiscesRenderer int int int int int int[] int[] int com.sun.pisces.Transform6 com.sun.pisces.GradientColorMap
      StackMap stack: com.sun.pisces.PiscesRenderer int int int int int int[] int
         4: aload 9 /* gradientTransform */
         5: .line 257
      StackMap locals: com.sun.pisces.PiscesRenderer int int int int int int[] int[] int com.sun.pisces.Transform6 com.sun.pisces.GradientColorMap
      StackMap stack: com.sun.pisces.PiscesRenderer int int int int int int[] int com.sun.pisces.Transform6
            invokevirtual com.sun.pisces.PiscesRenderer.setRadialGradientImpl:(IIIII[IILcom/sun/pisces/Transform6;)V
         6: .line 260
            return
        end local 10 // com.sun.pisces.GradientColorMap gradientColorMap
        end local 9 // com.sun.pisces.Transform6 gradientTransform
        end local 8 // int cycleMethod
        end local 7 // int[] rgba
        end local 6 // int[] fractions
        end local 5 // int radius
        end local 4 // int fy
        end local 3 // int fx
        end local 2 // int cy
        end local 1 // int cx
        end local 0 // com.sun.pisces.PiscesRenderer this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    7     0               this  Lcom/sun/pisces/PiscesRenderer;
            0    7     1                 cx  I
            0    7     2                 cy  I
            0    7     3                 fx  I
            0    7     4                 fy  I
            0    7     5             radius  I
            0    7     6          fractions  [I
            0    7     7               rgba  [I
            0    7     8        cycleMethod  I
            0    7     9  gradientTransform  Lcom/sun/pisces/Transform6;
            1    7    10   gradientColorMap  Lcom/sun/pisces/GradientColorMap;
    MethodParameters:
                   Name  Flags
      cx                 
      cy                 
      fx                 
      fy                 
      radius             
      fractions          
      rgba               
      cycleMethod        
      gradientTransform  

  public void setRadialGradient(int, int, int, int, int, com.sun.pisces.GradientColorMap, com.sun.pisces.Transform6);
    descriptor: (IIIIILcom/sun/pisces/GradientColorMap;Lcom/sun/pisces/Transform6;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=16, locals=8, args_size=8
        start local 0 // com.sun.pisces.PiscesRenderer this
        start local 1 // int cx
        start local 2 // int cy
        start local 3 // int fx
        start local 4 // int fy
        start local 5 // int radius
        start local 6 // com.sun.pisces.GradientColorMap gradientColorMap
        start local 7 // com.sun.pisces.Transform6 gradientTransform
         0: .line 280
            aload 0 /* this */
            iload 1 /* cx */
            iload 2 /* cy */
            iload 3 /* fx */
            iload 4 /* fy */
            iload 5 /* radius */
         1: .line 281
            aload 6 /* gradientColorMap */
            getfield com.sun.pisces.GradientColorMap.colors:[I
         2: .line 282
            aload 6 /* gradientColorMap */
            getfield com.sun.pisces.GradientColorMap.cycleMethod:I
         3: .line 283
            aload 7 /* gradientTransform */
            ifnonnull 4
            new com.sun.pisces.Transform6
            dup
            ldc 65536
            iconst_0
            iconst_0
            ldc 65536
            iconst_0
            iconst_0
            invokespecial com.sun.pisces.Transform6.<init>:(IIIIII)V
            goto 5
      StackMap locals: com.sun.pisces.PiscesRenderer int int int int int com.sun.pisces.GradientColorMap com.sun.pisces.Transform6
      StackMap stack: com.sun.pisces.PiscesRenderer int int int int int int[] int
         4: aload 7 /* gradientTransform */
         5: .line 280
      StackMap locals: com.sun.pisces.PiscesRenderer int int int int int com.sun.pisces.GradientColorMap com.sun.pisces.Transform6
      StackMap stack: com.sun.pisces.PiscesRenderer int int int int int int[] int com.sun.pisces.Transform6
            invokevirtual com.sun.pisces.PiscesRenderer.setRadialGradientImpl:(IIIII[IILcom/sun/pisces/Transform6;)V
         6: .line 284
            return
        end local 7 // com.sun.pisces.Transform6 gradientTransform
        end local 6 // com.sun.pisces.GradientColorMap gradientColorMap
        end local 5 // int radius
        end local 4 // int fy
        end local 3 // int fx
        end local 2 // int cy
        end local 1 // int cx
        end local 0 // com.sun.pisces.PiscesRenderer this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    7     0               this  Lcom/sun/pisces/PiscesRenderer;
            0    7     1                 cx  I
            0    7     2                 cy  I
            0    7     3                 fx  I
            0    7     4                 fy  I
            0    7     5             radius  I
            0    7     6   gradientColorMap  Lcom/sun/pisces/GradientColorMap;
            0    7     7  gradientTransform  Lcom/sun/pisces/Transform6;
    MethodParameters:
                   Name  Flags
      cx                 
      cy                 
      fx                 
      fy                 
      radius             
      gradientColorMap   
      gradientTransform  

  public void setTexture(int, int[], int, int, int, com.sun.pisces.Transform6, boolean, boolean, boolean);
    descriptor: (I[IIIILcom/sun/pisces/Transform6;ZZZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=10, locals=10, args_size=10
        start local 0 // com.sun.pisces.PiscesRenderer this
        start local 1 // int imageType
        start local 2 // int[] data
        start local 3 // int width
        start local 4 // int height
        start local 5 // int stride
        start local 6 // com.sun.pisces.Transform6 textureTransform
        start local 7 // boolean repeat
        start local 8 // boolean linearFiltering
        start local 9 // boolean hasAlpha
         0: .line 289
            aload 0 /* this */
            iload 3 /* width */
            iload 4 /* height */
            iconst_0
            iload 5 /* stride */
            aload 2 /* data */
            arraylength
            invokevirtual com.sun.pisces.PiscesRenderer.inputImageCheck:(IIIII)V
         1: .line 290
            aload 0 /* this */
            iload 1 /* imageType */
            aload 2 /* data */
            iload 3 /* width */
            iload 4 /* height */
            iload 5 /* stride */
            aload 6 /* textureTransform */
            iload 7 /* repeat */
            iload 8 /* linearFiltering */
            iload 9 /* hasAlpha */
            invokevirtual com.sun.pisces.PiscesRenderer.setTextureImpl:(I[IIIILcom/sun/pisces/Transform6;ZZZ)V
         2: .line 291
            return
        end local 9 // boolean hasAlpha
        end local 8 // boolean linearFiltering
        end local 7 // boolean repeat
        end local 6 // com.sun.pisces.Transform6 textureTransform
        end local 5 // int stride
        end local 4 // int height
        end local 3 // int width
        end local 2 // int[] data
        end local 1 // int imageType
        end local 0 // com.sun.pisces.PiscesRenderer this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    3     0              this  Lcom/sun/pisces/PiscesRenderer;
            0    3     1         imageType  I
            0    3     2              data  [I
            0    3     3             width  I
            0    3     4            height  I
            0    3     5            stride  I
            0    3     6  textureTransform  Lcom/sun/pisces/Transform6;
            0    3     7            repeat  Z
            0    3     8   linearFiltering  Z
            0    3     9          hasAlpha  Z
    MethodParameters:
                  Name  Flags
      imageType         
      data              
      width             
      height            
      stride            
      textureTransform  
      repeat            
      linearFiltering   
      hasAlpha          

  private native void setTextureImpl(int, int[], int, int, int, com.sun.pisces.Transform6, boolean, boolean, boolean);
    descriptor: (I[IIIILcom/sun/pisces/Transform6;ZZZ)V
    flags: (0x0102) ACC_PRIVATE, ACC_NATIVE
    MethodParameters:
                  Name  Flags
      imageType         
      data              
      width             
      height            
      stride            
      textureTransform  
      repeat            
      linearFiltering   
      hasAlpha          

  public void setClip(int, int, int, int);
    descriptor: (IIII)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=9, args_size=5
        start local 0 // com.sun.pisces.PiscesRenderer this
        start local 1 // int minX
        start local 2 // int minY
        start local 3 // int width
        start local 4 // int height
         0: .line 302
            iload 1 /* minX */
            iconst_0
            invokestatic java.lang.Math.max:(II)I
            istore 5 /* x1 */
        start local 5 // int x1
         1: .line 303
            iload 2 /* minY */
            iconst_0
            invokestatic java.lang.Math.max:(II)I
            istore 6 /* y1 */
        start local 6 // int y1
         2: .line 304
            iload 1 /* minX */
            iload 3 /* width */
            iadd
            aload 0 /* this */
            getfield com.sun.pisces.PiscesRenderer.surface:Lcom/sun/pisces/AbstractSurface;
            invokevirtual com.sun.pisces.AbstractSurface.getWidth:()I
            invokestatic java.lang.Math.min:(II)I
            istore 7 /* x2 */
        start local 7 // int x2
         3: .line 305
            iload 2 /* minY */
            iload 4 /* height */
            iadd
            aload 0 /* this */
            getfield com.sun.pisces.PiscesRenderer.surface:Lcom/sun/pisces/AbstractSurface;
            invokevirtual com.sun.pisces.AbstractSurface.getHeight:()I
            invokestatic java.lang.Math.min:(II)I
            istore 8 /* y2 */
        start local 8 // int y2
         4: .line 306
            aload 0 /* this */
            iload 5 /* x1 */
            iload 6 /* y1 */
            iload 7 /* x2 */
            iload 5 /* x1 */
            isub
            iload 8 /* y2 */
            iload 6 /* y1 */
            isub
            invokevirtual com.sun.pisces.PiscesRenderer.setClipImpl:(IIII)V
         5: .line 307
            return
        end local 8 // int y2
        end local 7 // int x2
        end local 6 // int y1
        end local 5 // int x1
        end local 4 // int height
        end local 3 // int width
        end local 2 // int minY
        end local 1 // int minX
        end local 0 // com.sun.pisces.PiscesRenderer this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Lcom/sun/pisces/PiscesRenderer;
            0    6     1    minX  I
            0    6     2    minY  I
            0    6     3   width  I
            0    6     4  height  I
            1    6     5      x1  I
            2    6     6      y1  I
            3    6     7      x2  I
            4    6     8      y2  I
    MethodParameters:
        Name  Flags
      minX    
      minY    
      width   
      height  

  private native void setClipImpl(int, int, int, int);
    descriptor: (IIII)V
    flags: (0x0102) ACC_PRIVATE, ACC_NATIVE
    MethodParameters:
        Name  Flags
      minX    
      minY    
      width   
      height  

  public void resetClip();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // com.sun.pisces.PiscesRenderer this
         0: .line 316
            aload 0 /* this */
            iconst_0
            iconst_0
            aload 0 /* this */
            getfield com.sun.pisces.PiscesRenderer.surface:Lcom/sun/pisces/AbstractSurface;
            invokevirtual com.sun.pisces.AbstractSurface.getWidth:()I
            aload 0 /* this */
            getfield com.sun.pisces.PiscesRenderer.surface:Lcom/sun/pisces/AbstractSurface;
            invokevirtual com.sun.pisces.AbstractSurface.getHeight:()I
            invokevirtual com.sun.pisces.PiscesRenderer.setClipImpl:(IIII)V
         1: .line 317
            return
        end local 0 // com.sun.pisces.PiscesRenderer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/pisces/PiscesRenderer;

  public void clearRect(int, int, int, int);
    descriptor: (IIII)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=9, args_size=5
        start local 0 // com.sun.pisces.PiscesRenderer this
        start local 1 // int x
        start local 2 // int y
        start local 3 // int w
        start local 4 // int h
         0: .line 323
            iload 1 /* x */
            iconst_0
            invokestatic java.lang.Math.max:(II)I
            istore 5 /* x1 */
        start local 5 // int x1
         1: .line 324
            iload 2 /* y */
            iconst_0
            invokestatic java.lang.Math.max:(II)I
            istore 6 /* y1 */
        start local 6 // int y1
         2: .line 325
            iload 1 /* x */
            iload 3 /* w */
            iadd
            aload 0 /* this */
            getfield com.sun.pisces.PiscesRenderer.surface:Lcom/sun/pisces/AbstractSurface;
            invokevirtual com.sun.pisces.AbstractSurface.getWidth:()I
            invokestatic java.lang.Math.min:(II)I
            istore 7 /* x2 */
        start local 7 // int x2
         3: .line 326
            iload 2 /* y */
            iload 4 /* h */
            iadd
            aload 0 /* this */
            getfield com.sun.pisces.PiscesRenderer.surface:Lcom/sun/pisces/AbstractSurface;
            invokevirtual com.sun.pisces.AbstractSurface.getHeight:()I
            invokestatic java.lang.Math.min:(II)I
            istore 8 /* y2 */
        start local 8 // int y2
         4: .line 327
            aload 0 /* this */
            iload 5 /* x1 */
            iload 6 /* y1 */
            iload 7 /* x2 */
            iload 5 /* x1 */
            isub
            iload 8 /* y2 */
            iload 6 /* y1 */
            isub
            invokevirtual com.sun.pisces.PiscesRenderer.clearRectImpl:(IIII)V
         5: .line 328
            return
        end local 8 // int y2
        end local 7 // int x2
        end local 6 // int y1
        end local 5 // int x1
        end local 4 // int h
        end local 3 // int w
        end local 2 // int y
        end local 1 // int x
        end local 0 // com.sun.pisces.PiscesRenderer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lcom/sun/pisces/PiscesRenderer;
            0    6     1     x  I
            0    6     2     y  I
            0    6     3     w  I
            0    6     4     h  I
            1    6     5    x1  I
            2    6     6    y1  I
            3    6     7    x2  I
            4    6     8    y2  I
    MethodParameters:
      Name  Flags
      x     
      y     
      w     
      h     

  private native void clearRectImpl(int, int, int, int);
    descriptor: (IIII)V
    flags: (0x0102) ACC_PRIVATE, ACC_NATIVE
    MethodParameters:
      Name  Flags
      x     
      y     
      w     
      h     

  public void fillRect(int, int, int, int);
    descriptor: (IIII)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=11, args_size=5
        start local 0 // com.sun.pisces.PiscesRenderer this
        start local 1 // int x
        start local 2 // int y
        start local 3 // int w
        start local 4 // int h
         0: .line 333
            iload 1 /* x */
            iconst_0
            invokestatic java.lang.Math.max:(II)I
            istore 5 /* x1 */
        start local 5 // int x1
         1: .line 334
            iload 2 /* y */
            iconst_0
            invokestatic java.lang.Math.max:(II)I
            istore 6 /* y1 */
        start local 6 // int y1
         2: .line 335
            iload 1 /* x */
            iload 3 /* w */
            iadd
            aload 0 /* this */
            getfield com.sun.pisces.PiscesRenderer.surface:Lcom/sun/pisces/AbstractSurface;
            invokevirtual com.sun.pisces.AbstractSurface.getWidth:()I
            bipush 16
            ishl
            invokestatic java.lang.Math.min:(II)I
            istore 7 /* x2 */
        start local 7 // int x2
         3: .line 336
            iload 2 /* y */
            iload 4 /* h */
            iadd
            aload 0 /* this */
            getfield com.sun.pisces.PiscesRenderer.surface:Lcom/sun/pisces/AbstractSurface;
            invokevirtual com.sun.pisces.AbstractSurface.getHeight:()I
            bipush 16
            ishl
            invokestatic java.lang.Math.min:(II)I
            istore 8 /* y2 */
        start local 8 // int y2
         4: .line 337
            iload 7 /* x2 */
            iload 5 /* x1 */
            isub
            istore 9 /* w2 */
        start local 9 // int w2
         5: .line 338
            iload 8 /* y2 */
            iload 6 /* y1 */
            isub
            istore 10 /* h2 */
        start local 10 // int h2
         6: .line 339
            iload 9 /* w2 */
            ifle 8
            iload 10 /* h2 */
            ifle 8
         7: .line 340
            aload 0 /* this */
            iload 5 /* x1 */
            iload 6 /* y1 */
            iload 9 /* w2 */
            iload 10 /* h2 */
            invokevirtual com.sun.pisces.PiscesRenderer.fillRectImpl:(IIII)V
         8: .line 342
      StackMap locals: com.sun.pisces.PiscesRenderer int int int int int int int int int int
      StackMap stack:
            return
        end local 10 // int h2
        end local 9 // int w2
        end local 8 // int y2
        end local 7 // int x2
        end local 6 // int y1
        end local 5 // int x1
        end local 4 // int h
        end local 3 // int w
        end local 2 // int y
        end local 1 // int x
        end local 0 // com.sun.pisces.PiscesRenderer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lcom/sun/pisces/PiscesRenderer;
            0    9     1     x  I
            0    9     2     y  I
            0    9     3     w  I
            0    9     4     h  I
            1    9     5    x1  I
            2    9     6    y1  I
            3    9     7    x2  I
            4    9     8    y2  I
            5    9     9    w2  I
            6    9    10    h2  I
    MethodParameters:
      Name  Flags
      x     
      y     
      w     
      h     

  private native void fillRectImpl(int, int, int, int);
    descriptor: (IIII)V
    flags: (0x0102) ACC_PRIVATE, ACC_NATIVE
    MethodParameters:
      Name  Flags
      x     
      y     
      w     
      h     

  public void emitAndClearAlphaRow(byte[], int[], int, int, int, int);
    descriptor: ([B[IIIII)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=7, args_size=7
        start local 0 // com.sun.pisces.PiscesRenderer this
        start local 1 // byte[] alphaMap
        start local 2 // int[] alphaDeltas
        start local 3 // int pix_y
        start local 4 // int pix_x_from
        start local 5 // int pix_x_to
        start local 6 // int rowNum
         0: .line 349
            aload 0 /* this */
            aload 1 /* alphaMap */
            aload 2 /* alphaDeltas */
            iload 3 /* pix_y */
            iload 4 /* pix_x_from */
            iload 5 /* pix_x_to */
            iconst_0
            iload 6 /* rowNum */
            invokevirtual com.sun.pisces.PiscesRenderer.emitAndClearAlphaRow:([B[IIIIII)V
         1: .line 350
            return
        end local 6 // int rowNum
        end local 5 // int pix_x_to
        end local 4 // int pix_x_from
        end local 3 // int pix_y
        end local 2 // int[] alphaDeltas
        end local 1 // byte[] alphaMap
        end local 0 // com.sun.pisces.PiscesRenderer this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lcom/sun/pisces/PiscesRenderer;
            0    2     1     alphaMap  [B
            0    2     2  alphaDeltas  [I
            0    2     3        pix_y  I
            0    2     4   pix_x_from  I
            0    2     5     pix_x_to  I
            0    2     6       rowNum  I
    MethodParameters:
             Name  Flags
      alphaMap     
      alphaDeltas  
      pix_y        
      pix_x_from   
      pix_x_to     
      rowNum       

  public void emitAndClearAlphaRow(byte[], int[], int, int, int, int, int);
    descriptor: ([B[IIIIII)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=8, args_size=8
        start local 0 // com.sun.pisces.PiscesRenderer this
        start local 1 // byte[] alphaMap
        start local 2 // int[] alphaDeltas
        start local 3 // int pix_y
        start local 4 // int pix_x_from
        start local 5 // int pix_x_to
        start local 6 // int pix_x_off
        start local 7 // int rowNum
         0: .line 355
            iload 6 /* pix_x_off */
            iflt 1
            iload 6 /* pix_x_off */
            iload 5 /* pix_x_to */
            iload 4 /* pix_x_from */
            isub
            iadd
            aload 2 /* alphaDeltas */
            arraylength
            if_icmple 2
         1: .line 356
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            ldc "rendering range exceeds length of data"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 358
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* alphaMap */
            aload 2 /* alphaDeltas */
            iload 3 /* pix_y */
            iload 4 /* pix_x_from */
            iload 5 /* pix_x_to */
            iload 6 /* pix_x_off */
            iload 7 /* rowNum */
            invokevirtual com.sun.pisces.PiscesRenderer.emitAndClearAlphaRowImpl:([B[IIIIII)V
         3: .line 359
            return
        end local 7 // int rowNum
        end local 6 // int pix_x_off
        end local 5 // int pix_x_to
        end local 4 // int pix_x_from
        end local 3 // int pix_y
        end local 2 // int[] alphaDeltas
        end local 1 // byte[] alphaMap
        end local 0 // com.sun.pisces.PiscesRenderer this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Lcom/sun/pisces/PiscesRenderer;
            0    4     1     alphaMap  [B
            0    4     2  alphaDeltas  [I
            0    4     3        pix_y  I
            0    4     4   pix_x_from  I
            0    4     5     pix_x_to  I
            0    4     6    pix_x_off  I
            0    4     7       rowNum  I
    MethodParameters:
             Name  Flags
      alphaMap     
      alphaDeltas  
      pix_y        
      pix_x_from   
      pix_x_to     
      pix_x_off    
      rowNum       

  private native void emitAndClearAlphaRowImpl(byte[], int[], int, int, int, int, int);
    descriptor: ([B[IIIIII)V
    flags: (0x0102) ACC_PRIVATE, ACC_NATIVE
    MethodParameters:
             Name  Flags
      alphaMap     
      alphaDeltas  
      pix_y        
      pix_x_from   
      pix_x_to     
      pix_x_off    
      rowNum       

  public void fillAlphaMask(byte[], int, int, int, int, int, int);
    descriptor: ([BIIIIII)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=8, args_size=8
        start local 0 // com.sun.pisces.PiscesRenderer this
        start local 1 // byte[] mask
        start local 2 // int x
        start local 3 // int y
        start local 4 // int width
        start local 5 // int height
        start local 6 // int offset
        start local 7 // int stride
         0: .line 365
            aload 1 /* mask */
            ifnonnull 2
         1: .line 366
            new java.lang.NullPointerException
            dup
            ldc "Mask is NULL"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 368
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 4 /* width */
            iload 5 /* height */
            iload 6 /* offset */
            iload 7 /* stride */
            aload 1 /* mask */
            arraylength
            invokevirtual com.sun.pisces.PiscesRenderer.inputImageCheck:(IIIII)V
         3: .line 369
            aload 0 /* this */
            aload 1 /* mask */
            iload 2 /* x */
            iload 3 /* y */
            iload 4 /* width */
            iload 5 /* height */
            iload 6 /* offset */
            iload 7 /* stride */
            invokevirtual com.sun.pisces.PiscesRenderer.fillAlphaMaskImpl:([BIIIIII)V
         4: .line 370
            return
        end local 7 // int stride
        end local 6 // int offset
        end local 5 // int height
        end local 4 // int width
        end local 3 // int y
        end local 2 // int x
        end local 1 // byte[] mask
        end local 0 // com.sun.pisces.PiscesRenderer this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Lcom/sun/pisces/PiscesRenderer;
            0    5     1    mask  [B
            0    5     2       x  I
            0    5     3       y  I
            0    5     4   width  I
            0    5     5  height  I
            0    5     6  offset  I
            0    5     7  stride  I
    MethodParameters:
        Name  Flags
      mask    
      x       
      y       
      width   
      height  
      offset  
      stride  

  private native void fillAlphaMaskImpl(byte[], int, int, int, int, int, int);
    descriptor: ([BIIIIII)V
    flags: (0x0102) ACC_PRIVATE, ACC_NATIVE
    MethodParameters:
        Name  Flags
      mask    
      x       
      y       
      width   
      height  
      offset  
      stride  

  public void setLCDGammaCorrection(float);
    descriptor: (F)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.sun.pisces.PiscesRenderer this
        start local 1 // float gamma
         0: .line 375
            fload 1 /* gamma */
            fconst_0
            fcmpg
            ifgt 2
         1: .line 376
            new java.lang.IllegalArgumentException
            dup
            ldc "Gamma must be greater than zero"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 378
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            fload 1 /* gamma */
            invokevirtual com.sun.pisces.PiscesRenderer.setLCDGammaCorrectionImpl:(F)V
         3: .line 379
            return
        end local 1 // float gamma
        end local 0 // com.sun.pisces.PiscesRenderer this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lcom/sun/pisces/PiscesRenderer;
            0    4     1  gamma  F
    MethodParameters:
       Name  Flags
      gamma  

  private native void setLCDGammaCorrectionImpl(float);
    descriptor: (F)V
    flags: (0x0102) ACC_PRIVATE, ACC_NATIVE
    MethodParameters:
       Name  Flags
      gamma  

  public void fillLCDAlphaMask(byte[], int, int, int, int, int, int);
    descriptor: ([BIIIIII)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=8, args_size=8
        start local 0 // com.sun.pisces.PiscesRenderer this
        start local 1 // byte[] mask
        start local 2 // int x
        start local 3 // int y
        start local 4 // int width
        start local 5 // int height
        start local 6 // int offset
        start local 7 // int stride
         0: .line 385
            aload 1 /* mask */
            ifnonnull 2
         1: .line 386
            new java.lang.NullPointerException
            dup
            ldc "Mask is NULL"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 388
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 4 /* width */
            iload 5 /* height */
            iload 6 /* offset */
            iload 7 /* stride */
            aload 1 /* mask */
            arraylength
            invokevirtual com.sun.pisces.PiscesRenderer.inputImageCheck:(IIIII)V
         3: .line 389
            aload 0 /* this */
            aload 1 /* mask */
            iload 2 /* x */
            iload 3 /* y */
            iload 4 /* width */
            iload 5 /* height */
            iload 6 /* offset */
            iload 7 /* stride */
            invokevirtual com.sun.pisces.PiscesRenderer.fillLCDAlphaMaskImpl:([BIIIIII)V
         4: .line 390
            return
        end local 7 // int stride
        end local 6 // int offset
        end local 5 // int height
        end local 4 // int width
        end local 3 // int y
        end local 2 // int x
        end local 1 // byte[] mask
        end local 0 // com.sun.pisces.PiscesRenderer this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Lcom/sun/pisces/PiscesRenderer;
            0    5     1    mask  [B
            0    5     2       x  I
            0    5     3       y  I
            0    5     4   width  I
            0    5     5  height  I
            0    5     6  offset  I
            0    5     7  stride  I
    MethodParameters:
        Name  Flags
      mask    
      x       
      y       
      width   
      height  
      offset  
      stride  

  private native void fillLCDAlphaMaskImpl(byte[], int, int, int, int, int, int);
    descriptor: ([BIIIIII)V
    flags: (0x0102) ACC_PRIVATE, ACC_NATIVE
    MethodParameters:
        Name  Flags
      mask    
      x       
      y       
      width   
      height  
      offset  
      stride  

  public void drawImage(int, int, int[], int, int, int, int, com.sun.pisces.Transform6, boolean, boolean, int, int, int, int, int, int, int, int, int, int, int, int, boolean);
    descriptor: (II[IIIIILcom/sun/pisces/Transform6;ZZIIIIIIIIIIIIZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=24, locals=24, args_size=24
        start local 0 // com.sun.pisces.PiscesRenderer this
        start local 1 // int imageType
        start local 2 // int imageMode
        start local 3 // int[] data
        start local 4 // int width
        start local 5 // int height
        start local 6 // int offset
        start local 7 // int stride
        start local 8 // com.sun.pisces.Transform6 textureTransform
        start local 9 // boolean repeat
        start local 10 // boolean linearFiltering
        start local 11 // int bboxX
        start local 12 // int bboxY
        start local 13 // int bboxW
        start local 14 // int bboxH
        start local 15 // int lEdge
        start local 16 // int rEdge
        start local 17 // int tEdge
        start local 18 // int bEdge
        start local 19 // int txMin
        start local 20 // int tyMin
        start local 21 // int txMax
        start local 22 // int tyMax
        start local 23 // boolean hasAlpha
         0: .line 401
            aload 0 /* this */
            iload 4 /* width */
            iload 5 /* height */
            iload 6 /* offset */
            iload 7 /* stride */
            aload 3 /* data */
            arraylength
            invokevirtual com.sun.pisces.PiscesRenderer.inputImageCheck:(IIIII)V
         1: .line 402
            aload 0 /* this */
            iload 1 /* imageType */
            iload 2 /* imageMode */
            aload 3 /* data */
            iload 4 /* width */
            iload 5 /* height */
            iload 6 /* offset */
            iload 7 /* stride */
         2: .line 403
            aload 8 /* textureTransform */
            iload 9 /* repeat */
            iload 10 /* linearFiltering */
         3: .line 404
            iload 11 /* bboxX */
            iload 12 /* bboxY */
            iload 13 /* bboxW */
            iload 14 /* bboxH */
         4: .line 405
            iload 15 /* lEdge */
            iload 16 /* rEdge */
            iload 17 /* tEdge */
            iload 18 /* bEdge */
         5: .line 406
            iload 19 /* txMin */
            iload 20 /* tyMin */
            iload 21 /* txMax */
            iload 22 /* tyMax */
         6: .line 407
            iload 23 /* hasAlpha */
         7: .line 402
            invokevirtual com.sun.pisces.PiscesRenderer.drawImageImpl:(II[IIIIILcom/sun/pisces/Transform6;ZZIIIIIIIIIIIIZ)V
         8: .line 408
            return
        end local 23 // boolean hasAlpha
        end local 22 // int tyMax
        end local 21 // int txMax
        end local 20 // int tyMin
        end local 19 // int txMin
        end local 18 // int bEdge
        end local 17 // int tEdge
        end local 16 // int rEdge
        end local 15 // int lEdge
        end local 14 // int bboxH
        end local 13 // int bboxW
        end local 12 // int bboxY
        end local 11 // int bboxX
        end local 10 // boolean linearFiltering
        end local 9 // boolean repeat
        end local 8 // com.sun.pisces.Transform6 textureTransform
        end local 7 // int stride
        end local 6 // int offset
        end local 5 // int height
        end local 4 // int width
        end local 3 // int[] data
        end local 2 // int imageMode
        end local 1 // int imageType
        end local 0 // com.sun.pisces.PiscesRenderer this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    9     0              this  Lcom/sun/pisces/PiscesRenderer;
            0    9     1         imageType  I
            0    9     2         imageMode  I
            0    9     3              data  [I
            0    9     4             width  I
            0    9     5            height  I
            0    9     6            offset  I
            0    9     7            stride  I
            0    9     8  textureTransform  Lcom/sun/pisces/Transform6;
            0    9     9            repeat  Z
            0    9    10   linearFiltering  Z
            0    9    11             bboxX  I
            0    9    12             bboxY  I
            0    9    13             bboxW  I
            0    9    14             bboxH  I
            0    9    15             lEdge  I
            0    9    16             rEdge  I
            0    9    17             tEdge  I
            0    9    18             bEdge  I
            0    9    19             txMin  I
            0    9    20             tyMin  I
            0    9    21             txMax  I
            0    9    22             tyMax  I
            0    9    23          hasAlpha  Z
    MethodParameters:
                  Name  Flags
      imageType         
      imageMode         
      data              
      width             
      height            
      offset            
      stride            
      textureTransform  
      repeat            
      linearFiltering   
      bboxX             
      bboxY             
      bboxW             
      bboxH             
      lEdge             
      rEdge             
      tEdge             
      bEdge             
      txMin             
      tyMin             
      txMax             
      tyMax             
      hasAlpha          

  private native void drawImageImpl(int, int, int[], int, int, int, int, com.sun.pisces.Transform6, boolean, boolean, int, int, int, int, int, int, int, int, int, int, int, int, boolean);
    descriptor: (II[IIIIILcom/sun/pisces/Transform6;ZZIIIIIIIIIIIIZ)V
    flags: (0x0102) ACC_PRIVATE, ACC_NATIVE
    MethodParameters:
                  Name  Flags
      imageType         
      imageMode         
      data              
      width             
      height            
      offset            
      stride            
      textureTransform  
      repeat            
      linearFiltering   
      bboxX             
      bboxY             
      bboxW             
      bboxH             
      lEdge             
      rEdge             
      tEdge             
      bEdge             
      txMin             
      tyMin             
      txMax             
      tyMax             
      hasAlpha          

  private void inputImageCheck(int, int, int, int, int);
    descriptor: (IIIII)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=7, args_size=6
        start local 0 // com.sun.pisces.PiscesRenderer this
        start local 1 // int width
        start local 2 // int height
        start local 3 // int offset
        start local 4 // int stride
        start local 5 // int data_length
         0: .line 418
            iload 1 /* width */
            ifge 2
         1: .line 419
            new java.lang.IllegalArgumentException
            dup
            ldc "WIDTH must be positive"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 421
      StackMap locals:
      StackMap stack:
            iload 2 /* height */
            ifge 4
         3: .line 422
            new java.lang.IllegalArgumentException
            dup
            ldc "HEIGHT must be positive"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 424
      StackMap locals:
      StackMap stack:
            iload 3 /* offset */
            ifge 6
         5: .line 425
            new java.lang.IllegalArgumentException
            dup
            ldc "OFFSET must be positive"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         6: .line 427
      StackMap locals:
      StackMap stack:
            iload 4 /* stride */
            ifge 8
         7: .line 428
            new java.lang.IllegalArgumentException
            dup
            ldc "STRIDE must be positive"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         8: .line 430
      StackMap locals:
      StackMap stack:
            iload 4 /* stride */
            iload 1 /* width */
            if_icmpge 10
         9: .line 431
            new java.lang.IllegalArgumentException
            dup
            ldc "STRIDE must be >= WIDTH"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        10: .line 433
      StackMap locals:
      StackMap stack:
            bipush 32
            iload 4 /* stride */
            invokestatic java.lang.Integer.numberOfLeadingZeros:(I)I
            isub
            bipush 32
            iadd
            iload 2 /* height */
            invokestatic java.lang.Integer.numberOfLeadingZeros:(I)I
            isub
            istore 6 /* nbits */
        start local 6 // int nbits
        11: .line 434
            iload 6 /* nbits */
            bipush 31
            if_icmple 13
        12: .line 435
            new java.lang.IllegalArgumentException
            dup
            ldc "STRIDE * HEIGHT is too large"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        13: .line 437
      StackMap locals: int
      StackMap stack:
            iload 3 /* offset */
            iload 4 /* stride */
            iload 2 /* height */
            iconst_1
            isub
            imul
            iadd
            iload 1 /* width */
            iadd
            iload 5 /* data_length */
            if_icmple 15
        14: .line 438
            new java.lang.IllegalArgumentException
            dup
            ldc "STRIDE * HEIGHT exceeds length of data"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        15: .line 440
      StackMap locals:
      StackMap stack:
            return
        end local 6 // int nbits
        end local 5 // int data_length
        end local 4 // int stride
        end local 3 // int offset
        end local 2 // int height
        end local 1 // int width
        end local 0 // com.sun.pisces.PiscesRenderer this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   16     0         this  Lcom/sun/pisces/PiscesRenderer;
            0   16     1        width  I
            0   16     2       height  I
            0   16     3       offset  I
            0   16     4       stride  I
            0   16     5  data_length  I
           11   16     6        nbits  I
    MethodParameters:
             Name  Flags
      width        
      height       
      offset       
      stride       
      data_length  

  private static native void disposeNative(long);
    descriptor: (J)V
    flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
    MethodParameters:
              Name  Flags
      nativeHandle  
}
SourceFile: "PiscesRenderer.java"
NestMembers:
  com.sun.pisces.PiscesRenderer$PiscesRendererDisposerRecord
InnerClasses:
  private PiscesRendererDisposerRecord = com.sun.pisces.PiscesRenderer$PiscesRendererDisposerRecord of com.sun.pisces.PiscesRenderer
  public abstract Record = com.sun.prism.impl.Disposer$Record of com.sun.prism.impl.Disposer