public final class java.awt.LinearGradientPaint extends java.awt.MultipleGradientPaint
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: java.awt.LinearGradientPaint
  super_class: java.awt.MultipleGradientPaint
{
  private final java.awt.geom.Point2D start;
    descriptor: Ljava/awt/geom/Point2D;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.awt.geom.Point2D end;
    descriptor: Ljava/awt/geom/Point2D;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public void <init>(float, float, float, float, float[], java.awt.Color[]);
    descriptor: (FFFF[F[Ljava/awt/Color;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=7, args_size=7
        start local 0 // java.awt.LinearGradientPaint this
        start local 1 // float startX
        start local 2 // float startY
        start local 3 // float endX
        start local 4 // float endY
        start local 5 // float[] fractions
        start local 6 // java.awt.Color[] colors
         0: .line 138
            aload 0 /* this */
            new java.awt.geom.Point2D$Float
            dup
            fload 1 /* startX */
            fload 2 /* startY */
            invokespecial java.awt.geom.Point2D$Float.<init>:(FF)V
         1: .line 139
            new java.awt.geom.Point2D$Float
            dup
            fload 3 /* endX */
            fload 4 /* endY */
            invokespecial java.awt.geom.Point2D$Float.<init>:(FF)V
         2: .line 140
            aload 5 /* fractions */
         3: .line 141
            aload 6 /* colors */
         4: .line 142
            getstatic java.awt.MultipleGradientPaint$CycleMethod.NO_CYCLE:Ljava/awt/MultipleGradientPaint$CycleMethod;
            invokespecial java.awt.LinearGradientPaint.<init>:(Ljava/awt/geom/Point2D;Ljava/awt/geom/Point2D;[F[Ljava/awt/Color;Ljava/awt/MultipleGradientPaint$CycleMethod;)V
         5: .line 143
            return
        end local 6 // java.awt.Color[] colors
        end local 5 // float[] fractions
        end local 4 // float endY
        end local 3 // float endX
        end local 2 // float startY
        end local 1 // float startX
        end local 0 // java.awt.LinearGradientPaint this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0       this  Ljava/awt/LinearGradientPaint;
            0    6     1     startX  F
            0    6     2     startY  F
            0    6     3       endX  F
            0    6     4       endY  F
            0    6     5  fractions  [F
            0    6     6     colors  [Ljava/awt/Color;
    MethodParameters:
           Name  Flags
      startX     
      startY     
      endX       
      endY       
      fractions  
      colors     

  public void <init>(float, float, float, float, float[], java.awt.Color[], java.awt.MultipleGradientPaint$CycleMethod);
    descriptor: (FFFF[F[Ljava/awt/Color;Ljava/awt/MultipleGradientPaint$CycleMethod;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=8, args_size=8
        start local 0 // java.awt.LinearGradientPaint this
        start local 1 // float startX
        start local 2 // float startY
        start local 3 // float endX
        start local 4 // float endY
        start local 5 // float[] fractions
        start local 6 // java.awt.Color[] colors
        start local 7 // java.awt.MultipleGradientPaint$CycleMethod cycleMethod
         0: .line 179
            aload 0 /* this */
            new java.awt.geom.Point2D$Float
            dup
            fload 1 /* startX */
            fload 2 /* startY */
            invokespecial java.awt.geom.Point2D$Float.<init>:(FF)V
         1: .line 180
            new java.awt.geom.Point2D$Float
            dup
            fload 3 /* endX */
            fload 4 /* endY */
            invokespecial java.awt.geom.Point2D$Float.<init>:(FF)V
         2: .line 181
            aload 5 /* fractions */
         3: .line 182
            aload 6 /* colors */
         4: .line 183
            aload 7 /* cycleMethod */
            invokespecial java.awt.LinearGradientPaint.<init>:(Ljava/awt/geom/Point2D;Ljava/awt/geom/Point2D;[F[Ljava/awt/Color;Ljava/awt/MultipleGradientPaint$CycleMethod;)V
         5: .line 184
            return
        end local 7 // java.awt.MultipleGradientPaint$CycleMethod cycleMethod
        end local 6 // java.awt.Color[] colors
        end local 5 // float[] fractions
        end local 4 // float endY
        end local 3 // float endX
        end local 2 // float startY
        end local 1 // float startX
        end local 0 // java.awt.LinearGradientPaint this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    6     0         this  Ljava/awt/LinearGradientPaint;
            0    6     1       startX  F
            0    6     2       startY  F
            0    6     3         endX  F
            0    6     4         endY  F
            0    6     5    fractions  [F
            0    6     6       colors  [Ljava/awt/Color;
            0    6     7  cycleMethod  Ljava/awt/MultipleGradientPaint$CycleMethod;
    MethodParameters:
             Name  Flags
      startX       
      startY       
      endX         
      endY         
      fractions    
      colors       
      cycleMethod  

  public void <init>(java.awt.geom.Point2D, java.awt.geom.Point2D, float[], java.awt.Color[]);
    descriptor: (Ljava/awt/geom/Point2D;Ljava/awt/geom/Point2D;[F[Ljava/awt/Color;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // java.awt.LinearGradientPaint this
        start local 1 // java.awt.geom.Point2D start
        start local 2 // java.awt.geom.Point2D end
        start local 3 // float[] fractions
        start local 4 // java.awt.Color[] colors
         0: .line 210
            aload 0 /* this */
            aload 1 /* start */
            aload 2 /* end */
         1: .line 211
            aload 3 /* fractions */
            aload 4 /* colors */
         2: .line 212
            getstatic java.awt.MultipleGradientPaint$CycleMethod.NO_CYCLE:Ljava/awt/MultipleGradientPaint$CycleMethod;
            invokespecial java.awt.LinearGradientPaint.<init>:(Ljava/awt/geom/Point2D;Ljava/awt/geom/Point2D;[F[Ljava/awt/Color;Ljava/awt/MultipleGradientPaint$CycleMethod;)V
         3: .line 213
            return
        end local 4 // java.awt.Color[] colors
        end local 3 // float[] fractions
        end local 2 // java.awt.geom.Point2D end
        end local 1 // java.awt.geom.Point2D start
        end local 0 // java.awt.LinearGradientPaint this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0       this  Ljava/awt/LinearGradientPaint;
            0    4     1      start  Ljava/awt/geom/Point2D;
            0    4     2        end  Ljava/awt/geom/Point2D;
            0    4     3  fractions  [F
            0    4     4     colors  [Ljava/awt/Color;
    MethodParameters:
           Name  Flags
      start      
      end        
      fractions  
      colors     

  public void <init>(java.awt.geom.Point2D, java.awt.geom.Point2D, float[], java.awt.Color[], java.awt.MultipleGradientPaint$CycleMethod);
    descriptor: (Ljava/awt/geom/Point2D;Ljava/awt/geom/Point2D;[F[Ljava/awt/Color;Ljava/awt/MultipleGradientPaint$CycleMethod;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=6, args_size=6
        start local 0 // java.awt.LinearGradientPaint this
        start local 1 // java.awt.geom.Point2D start
        start local 2 // java.awt.geom.Point2D end
        start local 3 // float[] fractions
        start local 4 // java.awt.Color[] colors
        start local 5 // java.awt.MultipleGradientPaint$CycleMethod cycleMethod
         0: .line 243
            aload 0 /* this */
            aload 1 /* start */
            aload 2 /* end */
         1: .line 244
            aload 3 /* fractions */
            aload 4 /* colors */
         2: .line 245
            aload 5 /* cycleMethod */
         3: .line 246
            getstatic java.awt.MultipleGradientPaint$ColorSpaceType.SRGB:Ljava/awt/MultipleGradientPaint$ColorSpaceType;
         4: .line 247
            new java.awt.geom.AffineTransform
            dup
            invokespecial java.awt.geom.AffineTransform.<init>:()V
            invokespecial java.awt.LinearGradientPaint.<init>:(Ljava/awt/geom/Point2D;Ljava/awt/geom/Point2D;[F[Ljava/awt/Color;Ljava/awt/MultipleGradientPaint$CycleMethod;Ljava/awt/MultipleGradientPaint$ColorSpaceType;Ljava/awt/geom/AffineTransform;)V
         5: .line 248
            return
        end local 5 // java.awt.MultipleGradientPaint$CycleMethod cycleMethod
        end local 4 // java.awt.Color[] colors
        end local 3 // float[] fractions
        end local 2 // java.awt.geom.Point2D end
        end local 1 // java.awt.geom.Point2D start
        end local 0 // java.awt.LinearGradientPaint this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    6     0         this  Ljava/awt/LinearGradientPaint;
            0    6     1        start  Ljava/awt/geom/Point2D;
            0    6     2          end  Ljava/awt/geom/Point2D;
            0    6     3    fractions  [F
            0    6     4       colors  [Ljava/awt/Color;
            0    6     5  cycleMethod  Ljava/awt/MultipleGradientPaint$CycleMethod;
    MethodParameters:
             Name  Flags
      start        
      end          
      fractions    
      colors       
      cycleMethod  

  public void <init>(java.awt.geom.Point2D, java.awt.geom.Point2D, float[], java.awt.Color[], java.awt.MultipleGradientPaint$CycleMethod, java.awt.MultipleGradientPaint$ColorSpaceType, java.awt.geom.AffineTransform);
    descriptor: (Ljava/awt/geom/Point2D;Ljava/awt/geom/Point2D;[F[Ljava/awt/Color;Ljava/awt/MultipleGradientPaint$CycleMethod;Ljava/awt/MultipleGradientPaint$ColorSpaceType;Ljava/awt/geom/AffineTransform;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=8, args_size=8
        start local 0 // java.awt.LinearGradientPaint this
        start local 1 // java.awt.geom.Point2D start
        start local 2 // java.awt.geom.Point2D end
        start local 3 // float[] fractions
        start local 4 // java.awt.Color[] colors
        start local 5 // java.awt.MultipleGradientPaint$CycleMethod cycleMethod
        start local 6 // java.awt.MultipleGradientPaint$ColorSpaceType colorSpace
        start local 7 // java.awt.geom.AffineTransform gradientTransform
         0: .line 285
            aload 0 /* this */
            aload 3 /* fractions */
            aload 4 /* colors */
            aload 5 /* cycleMethod */
            aload 6 /* colorSpace */
            aload 7 /* gradientTransform */
            invokespecial java.awt.MultipleGradientPaint.<init>:([F[Ljava/awt/Color;Ljava/awt/MultipleGradientPaint$CycleMethod;Ljava/awt/MultipleGradientPaint$ColorSpaceType;Ljava/awt/geom/AffineTransform;)V
         1: .line 288
            aload 1 /* start */
            ifnull 2
            aload 2 /* end */
            ifnonnull 3
         2: .line 289
      StackMap locals: java.awt.LinearGradientPaint java.awt.geom.Point2D java.awt.geom.Point2D float[] java.awt.Color[] java.awt.MultipleGradientPaint$CycleMethod java.awt.MultipleGradientPaint$ColorSpaceType java.awt.geom.AffineTransform
      StackMap stack:
            new java.lang.NullPointerException
            dup
            ldc "Start and end points must benon-null"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 293
      StackMap locals:
      StackMap stack:
            aload 1 /* start */
            aload 2 /* end */
            invokevirtual java.awt.geom.Point2D.equals:(Ljava/lang/Object;)Z
            ifeq 5
         4: .line 294
            new java.lang.IllegalArgumentException
            dup
            ldc "Start point cannot equalendpoint"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 299
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new java.awt.geom.Point2D$Double
            dup
            aload 1 /* start */
            invokevirtual java.awt.geom.Point2D.getX:()D
            aload 1 /* start */
            invokevirtual java.awt.geom.Point2D.getY:()D
            invokespecial java.awt.geom.Point2D$Double.<init>:(DD)V
            putfield java.awt.LinearGradientPaint.start:Ljava/awt/geom/Point2D;
         6: .line 300
            aload 0 /* this */
            new java.awt.geom.Point2D$Double
            dup
            aload 2 /* end */
            invokevirtual java.awt.geom.Point2D.getX:()D
            aload 2 /* end */
            invokevirtual java.awt.geom.Point2D.getY:()D
            invokespecial java.awt.geom.Point2D$Double.<init>:(DD)V
            putfield java.awt.LinearGradientPaint.end:Ljava/awt/geom/Point2D;
         7: .line 301
            return
        end local 7 // java.awt.geom.AffineTransform gradientTransform
        end local 6 // java.awt.MultipleGradientPaint$ColorSpaceType colorSpace
        end local 5 // java.awt.MultipleGradientPaint$CycleMethod cycleMethod
        end local 4 // java.awt.Color[] colors
        end local 3 // float[] fractions
        end local 2 // java.awt.geom.Point2D end
        end local 1 // java.awt.geom.Point2D start
        end local 0 // java.awt.LinearGradientPaint this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    8     0               this  Ljava/awt/LinearGradientPaint;
            0    8     1              start  Ljava/awt/geom/Point2D;
            0    8     2                end  Ljava/awt/geom/Point2D;
            0    8     3          fractions  [F
            0    8     4             colors  [Ljava/awt/Color;
            0    8     5        cycleMethod  Ljava/awt/MultipleGradientPaint$CycleMethod;
            0    8     6         colorSpace  Ljava/awt/MultipleGradientPaint$ColorSpaceType;
            0    8     7  gradientTransform  Ljava/awt/geom/AffineTransform;
    RuntimeVisibleAnnotations: 
      java.beans.ConstructorProperties(value = {"startPoint", "endPoint", "fractions", "colors", "cycleMethod", "colorSpace", "transform"})
    MethodParameters:
                   Name  Flags
      start              
      end                
      fractions          
      colors             
      cycleMethod        
      colorSpace         
      gradientTransform  

  public java.awt.PaintContext createContext(java.awt.image.ColorModel, java.awt.Rectangle, java.awt.geom.Rectangle2D, java.awt.geom.AffineTransform, java.awt.RenderingHints);
    descriptor: (Ljava/awt/image/ColorModel;Ljava/awt/Rectangle;Ljava/awt/geom/Rectangle2D;Ljava/awt/geom/AffineTransform;Ljava/awt/RenderingHints;)Ljava/awt/PaintContext;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=14, locals=7, args_size=6
        start local 0 // java.awt.LinearGradientPaint this
        start local 1 // java.awt.image.ColorModel cm
        start local 2 // java.awt.Rectangle deviceBounds
        start local 3 // java.awt.geom.Rectangle2D userBounds
        start local 4 // java.awt.geom.AffineTransform transform
        start local 5 // java.awt.RenderingHints hints
         0: .line 338
            new java.awt.geom.AffineTransform
            dup
            aload 4 /* transform */
            invokespecial java.awt.geom.AffineTransform.<init>:(Ljava/awt/geom/AffineTransform;)V
            astore 4 /* transform */
         1: .line 340
            aload 4 /* transform */
            aload 0 /* this */
            getfield java.awt.LinearGradientPaint.gradientTransform:Ljava/awt/geom/AffineTransform;
            invokevirtual java.awt.geom.AffineTransform.concatenate:(Ljava/awt/geom/AffineTransform;)V
         2: .line 342
            aload 0 /* this */
            getfield java.awt.LinearGradientPaint.fractions:[F
            arraylength
            iconst_2
            if_icmpne 13
         3: .line 343
            aload 0 /* this */
            getfield java.awt.LinearGradientPaint.cycleMethod:Ljava/awt/MultipleGradientPaint$CycleMethod;
            getstatic java.awt.MultipleGradientPaint$CycleMethod.REPEAT:Ljava/awt/MultipleGradientPaint$CycleMethod;
            if_acmpeq 13
         4: .line 344
            aload 0 /* this */
            getfield java.awt.LinearGradientPaint.colorSpace:Ljava/awt/MultipleGradientPaint$ColorSpaceType;
            getstatic java.awt.MultipleGradientPaint$ColorSpaceType.SRGB:Ljava/awt/MultipleGradientPaint$ColorSpaceType;
            if_acmpne 13
         5: .line 348
            aload 0 /* this */
            getfield java.awt.LinearGradientPaint.cycleMethod:Ljava/awt/MultipleGradientPaint$CycleMethod;
            getstatic java.awt.MultipleGradientPaint$CycleMethod.NO_CYCLE:Ljava/awt/MultipleGradientPaint$CycleMethod;
            if_acmpeq 6
            iconst_1
            goto 7
      StackMap locals:
      StackMap stack:
         6: iconst_0
      StackMap locals:
      StackMap stack: int
         7: istore 6 /* cyclic */
        start local 6 // boolean cyclic
         8: .line 349
            new java.awt.GradientPaintContext
            dup
            aload 1 /* cm */
            aload 0 /* this */
            getfield java.awt.LinearGradientPaint.start:Ljava/awt/geom/Point2D;
            aload 0 /* this */
            getfield java.awt.LinearGradientPaint.end:Ljava/awt/geom/Point2D;
         9: .line 350
            aload 4 /* transform */
        10: .line 351
            aload 0 /* this */
            getfield java.awt.LinearGradientPaint.colors:[Ljava/awt/Color;
            iconst_0
            aaload
            aload 0 /* this */
            getfield java.awt.LinearGradientPaint.colors:[Ljava/awt/Color;
            iconst_1
            aaload
        11: .line 352
            iload 6 /* cyclic */
        12: .line 349
            invokespecial java.awt.GradientPaintContext.<init>:(Ljava/awt/image/ColorModel;Ljava/awt/geom/Point2D;Ljava/awt/geom/Point2D;Ljava/awt/geom/AffineTransform;Ljava/awt/Color;Ljava/awt/Color;Z)V
            areturn
        end local 6 // boolean cyclic
        13: .line 354
      StackMap locals:
      StackMap stack:
            new java.awt.LinearGradientPaintContext
            dup
            aload 0 /* this */
            aload 1 /* cm */
        14: .line 355
            aload 2 /* deviceBounds */
            aload 3 /* userBounds */
        15: .line 356
            aload 4 /* transform */
            aload 5 /* hints */
        16: .line 357
            aload 0 /* this */
            getfield java.awt.LinearGradientPaint.start:Ljava/awt/geom/Point2D;
            aload 0 /* this */
            getfield java.awt.LinearGradientPaint.end:Ljava/awt/geom/Point2D;
        17: .line 358
            aload 0 /* this */
            getfield java.awt.LinearGradientPaint.fractions:[F
            aload 0 /* this */
            getfield java.awt.LinearGradientPaint.colors:[Ljava/awt/Color;
        18: .line 359
            aload 0 /* this */
            getfield java.awt.LinearGradientPaint.cycleMethod:Ljava/awt/MultipleGradientPaint$CycleMethod;
            aload 0 /* this */
            getfield java.awt.LinearGradientPaint.colorSpace:Ljava/awt/MultipleGradientPaint$ColorSpaceType;
        19: .line 354
            invokespecial java.awt.LinearGradientPaintContext.<init>:(Ljava/awt/LinearGradientPaint;Ljava/awt/image/ColorModel;Ljava/awt/Rectangle;Ljava/awt/geom/Rectangle2D;Ljava/awt/geom/AffineTransform;Ljava/awt/RenderingHints;Ljava/awt/geom/Point2D;Ljava/awt/geom/Point2D;[F[Ljava/awt/Color;Ljava/awt/MultipleGradientPaint$CycleMethod;Ljava/awt/MultipleGradientPaint$ColorSpaceType;)V
            areturn
        end local 5 // java.awt.RenderingHints hints
        end local 4 // java.awt.geom.AffineTransform transform
        end local 3 // java.awt.geom.Rectangle2D userBounds
        end local 2 // java.awt.Rectangle deviceBounds
        end local 1 // java.awt.image.ColorModel cm
        end local 0 // java.awt.LinearGradientPaint this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   20     0          this  Ljava/awt/LinearGradientPaint;
            0   20     1            cm  Ljava/awt/image/ColorModel;
            0   20     2  deviceBounds  Ljava/awt/Rectangle;
            0   20     3    userBounds  Ljava/awt/geom/Rectangle2D;
            0   20     4     transform  Ljava/awt/geom/AffineTransform;
            0   20     5         hints  Ljava/awt/RenderingHints;
            8   13     6        cyclic  Z
    MethodParameters:
              Name  Flags
      cm            
      deviceBounds  
      userBounds    
      transform     
      hints         

  public java.awt.geom.Point2D getStartPoint();
    descriptor: ()Ljava/awt/geom/Point2D;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=1, args_size=1
        start local 0 // java.awt.LinearGradientPaint this
         0: .line 370
            new java.awt.geom.Point2D$Double
            dup
            aload 0 /* this */
            getfield java.awt.LinearGradientPaint.start:Ljava/awt/geom/Point2D;
            invokevirtual java.awt.geom.Point2D.getX:()D
            aload 0 /* this */
            getfield java.awt.LinearGradientPaint.start:Ljava/awt/geom/Point2D;
            invokevirtual java.awt.geom.Point2D.getY:()D
            invokespecial java.awt.geom.Point2D$Double.<init>:(DD)V
            areturn
        end local 0 // java.awt.LinearGradientPaint this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/awt/LinearGradientPaint;

  public java.awt.geom.Point2D getEndPoint();
    descriptor: ()Ljava/awt/geom/Point2D;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=1, args_size=1
        start local 0 // java.awt.LinearGradientPaint this
         0: .line 380
            new java.awt.geom.Point2D$Double
            dup
            aload 0 /* this */
            getfield java.awt.LinearGradientPaint.end:Ljava/awt/geom/Point2D;
            invokevirtual java.awt.geom.Point2D.getX:()D
            aload 0 /* this */
            getfield java.awt.LinearGradientPaint.end:Ljava/awt/geom/Point2D;
            invokevirtual java.awt.geom.Point2D.getY:()D
            invokespecial java.awt.geom.Point2D$Double.<init>:(DD)V
            areturn
        end local 0 // java.awt.LinearGradientPaint this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/awt/LinearGradientPaint;
}
SourceFile: "LinearGradientPaint.java"
InnerClasses:
  public final ColorSpaceType = java.awt.MultipleGradientPaint$ColorSpaceType of java.awt.MultipleGradientPaint
  public final CycleMethod = java.awt.MultipleGradientPaint$CycleMethod of java.awt.MultipleGradientPaint
  public Double = java.awt.geom.Point2D$Double of java.awt.geom.Point2D
  public Float = java.awt.geom.Point2D$Float of java.awt.geom.Point2D