class java.awt.GradientPaintContext implements java.awt.PaintContext
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: java.awt.GradientPaintContext
  super_class: java.lang.Object
{
  static java.awt.image.ColorModel xrgbmodel;
    descriptor: Ljava/awt/image/ColorModel;
    flags: (0x0008) ACC_STATIC

  static java.awt.image.ColorModel xbgrmodel;
    descriptor: Ljava/awt/image/ColorModel;
    flags: (0x0008) ACC_STATIC

  static java.awt.image.ColorModel cachedModel;
    descriptor: Ljava/awt/image/ColorModel;
    flags: (0x0008) ACC_STATIC

  static java.lang.ref.WeakReference<java.awt.image.Raster> cached;
    descriptor: Ljava/lang/ref/WeakReference;
    flags: (0x0008) ACC_STATIC
    Signature: Ljava/lang/ref/WeakReference<Ljava/awt/image/Raster;>;

  double x1;
    descriptor: D
    flags: (0x0000) 

  double y1;
    descriptor: D
    flags: (0x0000) 

  double dx;
    descriptor: D
    flags: (0x0000) 

  double dy;
    descriptor: D
    flags: (0x0000) 

  boolean cyclic;
    descriptor: Z
    flags: (0x0000) 

  int[] interp;
    descriptor: [I
    flags: (0x0000) 

  java.awt.image.Raster saved;
    descriptor: Ljava/awt/image/Raster;
    flags: (0x0000) 

  java.awt.image.ColorModel model;
    descriptor: Ljava/awt/image/ColorModel;
    flags: (0x0000) 

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=6, locals=0, args_size=0
         0: .line 39
            new java.awt.image.DirectColorModel
            dup
            bipush 24
            ldc 16711680
            ldc 65280
            sipush 255
            invokespecial java.awt.image.DirectColorModel.<init>:(IIII)V
         1: .line 38
            putstatic java.awt.GradientPaintContext.xrgbmodel:Ljava/awt/image/ColorModel;
         2: .line 41
            new java.awt.image.DirectColorModel
            dup
            bipush 24
            sipush 255
            ldc 65280
            ldc 16711680
            invokespecial java.awt.image.DirectColorModel.<init>:(IIII)V
         3: .line 40
            putstatic java.awt.GradientPaintContext.xbgrmodel:Ljava/awt/image/ColorModel;
         4: .line 44
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  static synchronized java.awt.image.Raster getCachedRaster(java.awt.image.ColorModel, int, int);
    descriptor: (Ljava/awt/image/ColorModel;II)Ljava/awt/image/Raster;
    flags: (0x0028) ACC_STATIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // java.awt.image.ColorModel cm
        start local 1 // int w
        start local 2 // int h
         0: .line 47
            aload 0 /* cm */
            getstatic java.awt.GradientPaintContext.cachedModel:Ljava/awt/image/ColorModel;
            if_acmpne 8
         1: .line 48
            getstatic java.awt.GradientPaintContext.cached:Ljava/lang/ref/WeakReference;
            ifnull 8
         2: .line 49
            getstatic java.awt.GradientPaintContext.cached:Ljava/lang/ref/WeakReference;
            invokevirtual java.lang.ref.WeakReference.get:()Ljava/lang/Object;
            checkcast java.awt.image.Raster
            astore 3 /* ras */
        start local 3 // java.awt.image.Raster ras
         3: .line 50
            aload 3 /* ras */
            ifnull 8
         4: .line 51
            aload 3 /* ras */
            invokevirtual java.awt.image.Raster.getWidth:()I
            iload 1 /* w */
            if_icmplt 8
         5: .line 52
            aload 3 /* ras */
            invokevirtual java.awt.image.Raster.getHeight:()I
            iload 2 /* h */
            if_icmplt 8
         6: .line 54
            aconst_null
            putstatic java.awt.GradientPaintContext.cached:Ljava/lang/ref/WeakReference;
         7: .line 55
            aload 3 /* ras */
            areturn
        end local 3 // java.awt.image.Raster ras
         8: .line 59
      StackMap locals:
      StackMap stack:
            aload 0 /* cm */
            iload 1 /* w */
            iload 2 /* h */
            invokevirtual java.awt.image.ColorModel.createCompatibleWritableRaster:(II)Ljava/awt/image/WritableRaster;
            areturn
        end local 2 // int h
        end local 1 // int w
        end local 0 // java.awt.image.ColorModel cm
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0    cm  Ljava/awt/image/ColorModel;
            0    9     1     w  I
            0    9     2     h  I
            3    8     3   ras  Ljava/awt/image/Raster;
    MethodParameters:
      Name  Flags
      cm    
      w     
      h     

  static synchronized void putCachedRaster(java.awt.image.ColorModel, java.awt.image.Raster);
    descriptor: (Ljava/awt/image/ColorModel;Ljava/awt/image/Raster;)V
    flags: (0x0028) ACC_STATIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=7, args_size=2
        start local 0 // java.awt.image.ColorModel cm
        start local 1 // java.awt.image.Raster ras
         0: .line 63
            getstatic java.awt.GradientPaintContext.cached:Ljava/lang/ref/WeakReference;
            ifnull 11
         1: .line 64
            getstatic java.awt.GradientPaintContext.cached:Ljava/lang/ref/WeakReference;
            invokevirtual java.lang.ref.WeakReference.get:()Ljava/lang/Object;
            checkcast java.awt.image.Raster
            astore 2 /* cras */
        start local 2 // java.awt.image.Raster cras
         2: .line 65
            aload 2 /* cras */
            ifnull 11
         3: .line 66
            aload 2 /* cras */
            invokevirtual java.awt.image.Raster.getWidth:()I
            istore 3 /* cw */
        start local 3 // int cw
         4: .line 67
            aload 2 /* cras */
            invokevirtual java.awt.image.Raster.getHeight:()I
            istore 4 /* ch */
        start local 4 // int ch
         5: .line 68
            aload 1 /* ras */
            invokevirtual java.awt.image.Raster.getWidth:()I
            istore 5 /* iw */
        start local 5 // int iw
         6: .line 69
            aload 1 /* ras */
            invokevirtual java.awt.image.Raster.getHeight:()I
            istore 6 /* ih */
        start local 6 // int ih
         7: .line 70
            iload 3 /* cw */
            iload 5 /* iw */
            if_icmplt 9
            iload 4 /* ch */
            iload 6 /* ih */
            if_icmplt 9
         8: .line 71
            return
         9: .line 73
      StackMap locals: java.awt.image.ColorModel java.awt.image.Raster java.awt.image.Raster int int int int
      StackMap stack:
            iload 3 /* cw */
            iload 4 /* ch */
            imul
            iload 5 /* iw */
            iload 6 /* ih */
            imul
            if_icmplt 11
        10: .line 74
            return
        end local 6 // int ih
        end local 5 // int iw
        end local 4 // int ch
        end local 3 // int cw
        end local 2 // java.awt.image.Raster cras
        11: .line 78
      StackMap locals: java.awt.image.ColorModel java.awt.image.Raster
      StackMap stack:
            aload 0 /* cm */
            putstatic java.awt.GradientPaintContext.cachedModel:Ljava/awt/image/ColorModel;
        12: .line 79
            new java.lang.ref.WeakReference
            dup
            aload 1 /* ras */
            invokespecial java.lang.ref.WeakReference.<init>:(Ljava/lang/Object;)V
            putstatic java.awt.GradientPaintContext.cached:Ljava/lang/ref/WeakReference;
        13: .line 80
            return
        end local 1 // java.awt.image.Raster ras
        end local 0 // java.awt.image.ColorModel cm
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   14     0    cm  Ljava/awt/image/ColorModel;
            0   14     1   ras  Ljava/awt/image/Raster;
            2   11     2  cras  Ljava/awt/image/Raster;
            4   11     3    cw  I
            5   11     4    ch  I
            6   11     5    iw  I
            7   11     6    ih  I
    MethodParameters:
      Name  Flags
      cm    
      ras   

  public void <init>(java.awt.image.ColorModel, java.awt.geom.Point2D, java.awt.geom.Point2D, java.awt.geom.AffineTransform, java.awt.Color, java.awt.Color, boolean);
    descriptor: (Ljava/awt/image/ColorModel;Ljava/awt/geom/Point2D;Ljava/awt/geom/Point2D;Ljava/awt/geom/AffineTransform;Ljava/awt/Color;Ljava/awt/Color;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=30, args_size=8
        start local 0 // java.awt.GradientPaintContext this
        start local 1 // java.awt.image.ColorModel cm
        start local 2 // java.awt.geom.Point2D p1
        start local 3 // java.awt.geom.Point2D p2
        start local 4 // java.awt.geom.AffineTransform xform
        start local 5 // java.awt.Color c1
        start local 6 // java.awt.Color c2
        start local 7 // boolean cyclic
         0: .line 91
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 96
            new java.awt.geom.Point2D$Double
            dup
            dconst_1
            dconst_0
            invokespecial java.awt.geom.Point2D$Double.<init>:(DD)V
            astore 8 /* xvec */
        start local 8 // java.awt.geom.Point2D xvec
         2: .line 97
            new java.awt.geom.Point2D$Double
            dup
            dconst_0
            dconst_1
            invokespecial java.awt.geom.Point2D$Double.<init>:(DD)V
            astore 9 /* yvec */
        start local 9 // java.awt.geom.Point2D yvec
         3: .line 99
            aload 4 /* xform */
            invokevirtual java.awt.geom.AffineTransform.createInverse:()Ljava/awt/geom/AffineTransform;
            astore 10 /* inverse */
        start local 10 // java.awt.geom.AffineTransform inverse
         4: .line 100
            aload 10 /* inverse */
            aload 8 /* xvec */
            aload 8 /* xvec */
            invokevirtual java.awt.geom.AffineTransform.deltaTransform:(Ljava/awt/geom/Point2D;Ljava/awt/geom/Point2D;)Ljava/awt/geom/Point2D;
            pop
         5: .line 101
            aload 10 /* inverse */
            aload 9 /* yvec */
            aload 9 /* yvec */
            invokevirtual java.awt.geom.AffineTransform.deltaTransform:(Ljava/awt/geom/Point2D;Ljava/awt/geom/Point2D;)Ljava/awt/geom/Point2D;
            pop
        end local 10 // java.awt.geom.AffineTransform inverse
         6: .line 102
            goto 10
      StackMap locals: java.awt.GradientPaintContext java.awt.image.ColorModel java.awt.geom.Point2D java.awt.geom.Point2D java.awt.geom.AffineTransform java.awt.Color java.awt.Color int java.awt.geom.Point2D java.awt.geom.Point2D
      StackMap stack: java.awt.geom.NoninvertibleTransformException
         7: pop
         8: .line 103
            aload 8 /* xvec */
            dconst_0
            dconst_0
            invokevirtual java.awt.geom.Point2D.setLocation:(DD)V
         9: .line 104
            aload 9 /* yvec */
            dconst_0
            dconst_0
            invokevirtual java.awt.geom.Point2D.setLocation:(DD)V
        10: .line 110
      StackMap locals:
      StackMap stack:
            aload 3 /* p2 */
            invokevirtual java.awt.geom.Point2D.getX:()D
            aload 2 /* p1 */
            invokevirtual java.awt.geom.Point2D.getX:()D
            dsub
            dstore 10 /* udx */
        start local 10 // double udx
        11: .line 111
            aload 3 /* p2 */
            invokevirtual java.awt.geom.Point2D.getY:()D
            aload 2 /* p1 */
            invokevirtual java.awt.geom.Point2D.getY:()D
            dsub
            dstore 12 /* udy */
        start local 12 // double udy
        12: .line 112
            dload 10 /* udx */
            dload 10 /* udx */
            dmul
            dload 12 /* udy */
            dload 12 /* udy */
            dmul
            dadd
            dstore 14 /* ulenSq */
        start local 14 // double ulenSq
        13: .line 114
            dload 14 /* ulenSq */
            ldc 4.9E-324
            dcmpg
            ifgt 17
        14: .line 115
            aload 0 /* this */
            dconst_0
            putfield java.awt.GradientPaintContext.dx:D
        15: .line 116
            aload 0 /* this */
            dconst_0
            putfield java.awt.GradientPaintContext.dy:D
        16: .line 117
            goto 30
        17: .line 133
      StackMap locals: double double double
      StackMap stack:
            aload 0 /* this */
            aload 8 /* xvec */
            invokevirtual java.awt.geom.Point2D.getX:()D
            dload 10 /* udx */
            dmul
            aload 8 /* xvec */
            invokevirtual java.awt.geom.Point2D.getY:()D
            dload 12 /* udy */
            dmul
            dadd
            dload 14 /* ulenSq */
            ddiv
            putfield java.awt.GradientPaintContext.dx:D
        18: .line 134
            aload 0 /* this */
            aload 9 /* yvec */
            invokevirtual java.awt.geom.Point2D.getX:()D
            dload 10 /* udx */
            dmul
            aload 9 /* yvec */
            invokevirtual java.awt.geom.Point2D.getY:()D
            dload 12 /* udy */
            dmul
            dadd
            dload 14 /* ulenSq */
            ddiv
            putfield java.awt.GradientPaintContext.dy:D
        19: .line 136
            iload 7 /* cyclic */
            ifeq 23
        20: .line 137
            aload 0 /* this */
            dup
            getfield java.awt.GradientPaintContext.dx:D
            dconst_1
            drem
            putfield java.awt.GradientPaintContext.dx:D
        21: .line 138
            aload 0 /* this */
            dup
            getfield java.awt.GradientPaintContext.dy:D
            dconst_1
            drem
            putfield java.awt.GradientPaintContext.dy:D
        22: .line 139
            goto 30
        23: .line 141
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.GradientPaintContext.dx:D
            dconst_0
            dcmpg
            ifge 30
        24: .line 147
            aload 2 /* p1 */
            astore 16 /* p */
        start local 16 // java.awt.geom.Point2D p
        25: aload 3 /* p2 */
            astore 2 /* p1 */
            aload 16 /* p */
            astore 3 /* p2 */
        26: .line 148
            aload 5 /* c1 */
            astore 17 /* c */
        start local 17 // java.awt.Color c
        27: aload 6 /* c2 */
            astore 5 /* c1 */
            aload 17 /* c */
            astore 6 /* c2 */
        28: .line 149
            aload 0 /* this */
            aload 0 /* this */
            getfield java.awt.GradientPaintContext.dx:D
            dneg
            putfield java.awt.GradientPaintContext.dx:D
        29: .line 150
            aload 0 /* this */
            aload 0 /* this */
            getfield java.awt.GradientPaintContext.dy:D
            dneg
            putfield java.awt.GradientPaintContext.dy:D
        end local 17 // java.awt.Color c
        end local 16 // java.awt.geom.Point2D p
        30: .line 155
      StackMap locals:
      StackMap stack:
            aload 4 /* xform */
            aload 2 /* p1 */
            aconst_null
            invokevirtual java.awt.geom.AffineTransform.transform:(Ljava/awt/geom/Point2D;Ljava/awt/geom/Point2D;)Ljava/awt/geom/Point2D;
            astore 16 /* dp1 */
        start local 16 // java.awt.geom.Point2D dp1
        31: .line 156
            aload 0 /* this */
            aload 16 /* dp1 */
            invokevirtual java.awt.geom.Point2D.getX:()D
            putfield java.awt.GradientPaintContext.x1:D
        32: .line 157
            aload 0 /* this */
            aload 16 /* dp1 */
            invokevirtual java.awt.geom.Point2D.getY:()D
            putfield java.awt.GradientPaintContext.y1:D
        33: .line 159
            aload 0 /* this */
            iload 7 /* cyclic */
            putfield java.awt.GradientPaintContext.cyclic:Z
        34: .line 160
            aload 5 /* c1 */
            invokevirtual java.awt.Color.getRGB:()I
            istore 17 /* rgb1 */
        start local 17 // int rgb1
        35: .line 161
            aload 6 /* c2 */
            invokevirtual java.awt.Color.getRGB:()I
            istore 18 /* rgb2 */
        start local 18 // int rgb2
        36: .line 162
            iload 17 /* rgb1 */
            bipush 24
            ishr
            sipush 255
            iand
            istore 19 /* a1 */
        start local 19 // int a1
        37: .line 163
            iload 17 /* rgb1 */
            bipush 16
            ishr
            sipush 255
            iand
            istore 20 /* r1 */
        start local 20 // int r1
        38: .line 164
            iload 17 /* rgb1 */
            bipush 8
            ishr
            sipush 255
            iand
            istore 21 /* g1 */
        start local 21 // int g1
        39: .line 165
            iload 17 /* rgb1 */
            sipush 255
            iand
            istore 22 /* b1 */
        start local 22 // int b1
        40: .line 166
            iload 18 /* rgb2 */
            bipush 24
            ishr
            sipush 255
            iand
            iload 19 /* a1 */
            isub
            istore 23 /* da */
        start local 23 // int da
        41: .line 167
            iload 18 /* rgb2 */
            bipush 16
            ishr
            sipush 255
            iand
            iload 20 /* r1 */
            isub
            istore 24 /* dr */
        start local 24 // int dr
        42: .line 168
            iload 18 /* rgb2 */
            bipush 8
            ishr
            sipush 255
            iand
            iload 21 /* g1 */
            isub
            istore 25 /* dg */
        start local 25 // int dg
        43: .line 169
            iload 18 /* rgb2 */
            sipush 255
            iand
            iload 22 /* b1 */
            isub
            istore 26 /* db */
        start local 26 // int db
        44: .line 170
            iload 19 /* a1 */
            sipush 255
            if_icmpne 57
            iload 23 /* da */
            ifne 57
        45: .line 171
            aload 0 /* this */
            getstatic java.awt.GradientPaintContext.xrgbmodel:Ljava/awt/image/ColorModel;
            putfield java.awt.GradientPaintContext.model:Ljava/awt/image/ColorModel;
        46: .line 172
            aload 1 /* cm */
            instanceof java.awt.image.DirectColorModel
            ifeq 58
        47: .line 173
            aload 1 /* cm */
            checkcast java.awt.image.DirectColorModel
            astore 27 /* dcm */
        start local 27 // java.awt.image.DirectColorModel dcm
        48: .line 174
            aload 27 /* dcm */
            invokevirtual java.awt.image.DirectColorModel.getAlphaMask:()I
            istore 28 /* tmp */
        start local 28 // int tmp
        49: .line 175
            iload 28 /* tmp */
            ifeq 50
            iload 28 /* tmp */
            sipush 255
            if_icmpne 58
        50: .line 176
      StackMap locals: java.awt.GradientPaintContext java.awt.image.ColorModel java.awt.geom.Point2D java.awt.geom.Point2D java.awt.geom.AffineTransform java.awt.Color java.awt.Color int java.awt.geom.Point2D java.awt.geom.Point2D double double double java.awt.geom.Point2D int int int int int int int int int int java.awt.image.DirectColorModel int
      StackMap stack:
            aload 27 /* dcm */
            invokevirtual java.awt.image.DirectColorModel.getRedMask:()I
            sipush 255
            if_icmpne 58
        51: .line 177
            aload 27 /* dcm */
            invokevirtual java.awt.image.DirectColorModel.getGreenMask:()I
            ldc 65280
            if_icmpne 58
        52: .line 178
            aload 27 /* dcm */
            invokevirtual java.awt.image.DirectColorModel.getBlueMask:()I
            ldc 16711680
            if_icmpne 58
        53: .line 180
            aload 0 /* this */
            getstatic java.awt.GradientPaintContext.xbgrmodel:Ljava/awt/image/ColorModel;
            putfield java.awt.GradientPaintContext.model:Ljava/awt/image/ColorModel;
        54: .line 181
            iload 20 /* r1 */
            istore 28 /* tmp */
            iload 22 /* b1 */
            istore 20 /* r1 */
            iload 28 /* tmp */
            istore 22 /* b1 */
        55: .line 182
            iload 24 /* dr */
            istore 28 /* tmp */
            iload 26 /* db */
            istore 24 /* dr */
            iload 28 /* tmp */
            istore 26 /* db */
        end local 28 // int tmp
        end local 27 // java.awt.image.DirectColorModel dcm
        56: .line 185
            goto 58
        57: .line 186
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokestatic java.awt.image.ColorModel.getRGBdefault:()Ljava/awt/image/ColorModel;
            putfield java.awt.GradientPaintContext.model:Ljava/awt/image/ColorModel;
        58: .line 188
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 7 /* cyclic */
            ifeq 59
            sipush 513
            goto 60
      StackMap locals:
      StackMap stack: java.awt.GradientPaintContext
        59: sipush 257
      StackMap locals: java.awt.GradientPaintContext java.awt.image.ColorModel java.awt.geom.Point2D java.awt.geom.Point2D java.awt.geom.AffineTransform java.awt.Color java.awt.Color int java.awt.geom.Point2D java.awt.geom.Point2D double double double java.awt.geom.Point2D int int int int int int int int int int
      StackMap stack: java.awt.GradientPaintContext int
        60: newarray 10
            putfield java.awt.GradientPaintContext.interp:[I
        61: .line 189
            iconst_0
            istore 27 /* i */
        start local 27 // int i
        62: goto 76
        63: .line 190
      StackMap locals: int
      StackMap stack:
            iload 27 /* i */
            i2f
            ldc 256.0
            fdiv
            fstore 28 /* rel */
        start local 28 // float rel
        64: .line 192
            iload 19 /* a1 */
            i2f
            iload 23 /* da */
            i2f
            fload 28 /* rel */
            fmul
            fadd
            f2i
            bipush 24
            ishl
        65: .line 193
            iload 20 /* r1 */
            i2f
            iload 24 /* dr */
            i2f
            fload 28 /* rel */
            fmul
            fadd
            f2i
            bipush 16
            ishl
        66: .line 192
            ior
        67: .line 194
            iload 21 /* g1 */
            i2f
            iload 25 /* dg */
            i2f
            fload 28 /* rel */
            fmul
            fadd
            f2i
            bipush 8
            ishl
        68: .line 192
            ior
        69: .line 195
            iload 22 /* b1 */
            i2f
            iload 26 /* db */
            i2f
            fload 28 /* rel */
            fmul
            fadd
            f2i
        70: .line 192
            ior
        71: .line 191
            istore 29 /* rgb */
        start local 29 // int rgb
        72: .line 196
            aload 0 /* this */
            getfield java.awt.GradientPaintContext.interp:[I
            iload 27 /* i */
            iload 29 /* rgb */
            iastore
        73: .line 197
            iload 7 /* cyclic */
            ifeq 75
        74: .line 198
            aload 0 /* this */
            getfield java.awt.GradientPaintContext.interp:[I
            sipush 512
            iload 27 /* i */
            isub
            iload 29 /* rgb */
            iastore
        end local 29 // int rgb
        end local 28 // float rel
        75: .line 189
      StackMap locals:
      StackMap stack:
            iinc 27 /* i */ 1
      StackMap locals:
      StackMap stack:
        76: iload 27 /* i */
            sipush 256
            if_icmple 63
        end local 27 // int i
        77: .line 201
            return
        end local 26 // int db
        end local 25 // int dg
        end local 24 // int dr
        end local 23 // int da
        end local 22 // int b1
        end local 21 // int g1
        end local 20 // int r1
        end local 19 // int a1
        end local 18 // int rgb2
        end local 17 // int rgb1
        end local 16 // java.awt.geom.Point2D dp1
        end local 14 // double ulenSq
        end local 12 // double udy
        end local 10 // double udx
        end local 9 // java.awt.geom.Point2D yvec
        end local 8 // java.awt.geom.Point2D xvec
        end local 7 // boolean cyclic
        end local 6 // java.awt.Color c2
        end local 5 // java.awt.Color c1
        end local 4 // java.awt.geom.AffineTransform xform
        end local 3 // java.awt.geom.Point2D p2
        end local 2 // java.awt.geom.Point2D p1
        end local 1 // java.awt.image.ColorModel cm
        end local 0 // java.awt.GradientPaintContext this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   78     0     this  Ljava/awt/GradientPaintContext;
            0   78     1       cm  Ljava/awt/image/ColorModel;
            0   78     2       p1  Ljava/awt/geom/Point2D;
            0   78     3       p2  Ljava/awt/geom/Point2D;
            0   78     4    xform  Ljava/awt/geom/AffineTransform;
            0   78     5       c1  Ljava/awt/Color;
            0   78     6       c2  Ljava/awt/Color;
            0   78     7   cyclic  Z
            2   78     8     xvec  Ljava/awt/geom/Point2D;
            3   78     9     yvec  Ljava/awt/geom/Point2D;
            4    6    10  inverse  Ljava/awt/geom/AffineTransform;
           11   78    10      udx  D
           12   78    12      udy  D
           13   78    14   ulenSq  D
           25   30    16        p  Ljava/awt/geom/Point2D;
           27   30    17        c  Ljava/awt/Color;
           31   78    16      dp1  Ljava/awt/geom/Point2D;
           35   78    17     rgb1  I
           36   78    18     rgb2  I
           37   78    19       a1  I
           38   78    20       r1  I
           39   78    21       g1  I
           40   78    22       b1  I
           41   78    23       da  I
           42   78    24       dr  I
           43   78    25       dg  I
           44   78    26       db  I
           48   56    27      dcm  Ljava/awt/image/DirectColorModel;
           49   56    28      tmp  I
           62   77    27        i  I
           64   75    28      rel  F
           72   75    29      rgb  I
      Exception table:
        from    to  target  type
           3     6       7  Class java.awt.geom.NoninvertibleTransformException
    MethodParameters:
        Name  Flags
      cm      
      p1      
      p2      
      xform   
      c1      
      c2      
      cyclic  

  public void dispose();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.awt.GradientPaintContext this
         0: .line 207
            aload 0 /* this */
            getfield java.awt.GradientPaintContext.saved:Ljava/awt/image/Raster;
            ifnull 3
         1: .line 208
            aload 0 /* this */
            getfield java.awt.GradientPaintContext.model:Ljava/awt/image/ColorModel;
            aload 0 /* this */
            getfield java.awt.GradientPaintContext.saved:Ljava/awt/image/Raster;
            invokestatic java.awt.GradientPaintContext.putCachedRaster:(Ljava/awt/image/ColorModel;Ljava/awt/image/Raster;)V
         2: .line 209
            aload 0 /* this */
            aconst_null
            putfield java.awt.GradientPaintContext.saved:Ljava/awt/image/Raster;
         3: .line 211
      StackMap locals:
      StackMap stack:
            return
        end local 0 // java.awt.GradientPaintContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljava/awt/GradientPaintContext;

  public java.awt.image.ColorModel getColorModel();
    descriptor: ()Ljava/awt/image/ColorModel;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.awt.GradientPaintContext this
         0: .line 217
            aload 0 /* this */
            getfield java.awt.GradientPaintContext.model:Ljava/awt/image/ColorModel;
            areturn
        end local 0 // java.awt.GradientPaintContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/awt/GradientPaintContext;

  public java.awt.image.Raster getRaster(int, int, int, int);
    descriptor: (IIII)Ljava/awt/image/Raster;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=12, locals=12, args_size=5
        start local 0 // java.awt.GradientPaintContext this
        start local 1 // int x
        start local 2 // int y
        start local 3 // int w
        start local 4 // int h
         0: .line 227
            iload 1 /* x */
            i2d
            aload 0 /* this */
            getfield java.awt.GradientPaintContext.x1:D
            dsub
            aload 0 /* this */
            getfield java.awt.GradientPaintContext.dx:D
            dmul
            iload 2 /* y */
            i2d
            aload 0 /* this */
            getfield java.awt.GradientPaintContext.y1:D
            dsub
            aload 0 /* this */
            getfield java.awt.GradientPaintContext.dy:D
            dmul
            dadd
            dstore 5 /* rowrel */
        start local 5 // double rowrel
         1: .line 229
            aload 0 /* this */
            getfield java.awt.GradientPaintContext.saved:Ljava/awt/image/Raster;
            astore 7 /* rast */
        start local 7 // java.awt.image.Raster rast
         2: .line 230
            aload 7 /* rast */
            ifnull 3
            aload 7 /* rast */
            invokevirtual java.awt.image.Raster.getWidth:()I
            iload 3 /* w */
            if_icmplt 3
            aload 7 /* rast */
            invokevirtual java.awt.image.Raster.getHeight:()I
            iload 4 /* h */
            if_icmpge 5
         3: .line 231
      StackMap locals: double java.awt.image.Raster
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.GradientPaintContext.model:Ljava/awt/image/ColorModel;
            iload 3 /* w */
            iload 4 /* h */
            invokestatic java.awt.GradientPaintContext.getCachedRaster:(Ljava/awt/image/ColorModel;II)Ljava/awt/image/Raster;
            astore 7 /* rast */
         4: .line 232
            aload 0 /* this */
            aload 7 /* rast */
            putfield java.awt.GradientPaintContext.saved:Ljava/awt/image/Raster;
         5: .line 234
      StackMap locals:
      StackMap stack:
            aload 7 /* rast */
            checkcast sun.awt.image.IntegerComponentRaster
            astore 8 /* irast */
        start local 8 // sun.awt.image.IntegerComponentRaster irast
         6: .line 235
            aload 8 /* irast */
            iconst_0
            invokevirtual sun.awt.image.IntegerComponentRaster.getDataOffset:(I)I
            istore 9 /* off */
        start local 9 // int off
         7: .line 236
            aload 8 /* irast */
            invokevirtual sun.awt.image.IntegerComponentRaster.getScanlineStride:()I
            iload 3 /* w */
            isub
            istore 10 /* adjust */
        start local 10 // int adjust
         8: .line 237
            aload 8 /* irast */
            invokevirtual sun.awt.image.IntegerComponentRaster.getDataStorage:()[I
            astore 11 /* pixels */
        start local 11 // int[] pixels
         9: .line 239
            aload 0 /* this */
            getfield java.awt.GradientPaintContext.cyclic:Z
            ifeq 12
        10: .line 240
            aload 0 /* this */
            aload 11 /* pixels */
            iload 9 /* off */
            iload 10 /* adjust */
            iload 3 /* w */
            iload 4 /* h */
            dload 5 /* rowrel */
            aload 0 /* this */
            getfield java.awt.GradientPaintContext.dx:D
            aload 0 /* this */
            getfield java.awt.GradientPaintContext.dy:D
            invokevirtual java.awt.GradientPaintContext.cycleFillRaster:([IIIIIDDD)V
        11: .line 241
            goto 13
        12: .line 242
      StackMap locals: java.awt.GradientPaintContext int int int int double java.awt.image.Raster sun.awt.image.IntegerComponentRaster int int int[]
      StackMap stack:
            aload 0 /* this */
            aload 11 /* pixels */
            iload 9 /* off */
            iload 10 /* adjust */
            iload 3 /* w */
            iload 4 /* h */
            dload 5 /* rowrel */
            aload 0 /* this */
            getfield java.awt.GradientPaintContext.dx:D
            aload 0 /* this */
            getfield java.awt.GradientPaintContext.dy:D
            invokevirtual java.awt.GradientPaintContext.clipFillRaster:([IIIIIDDD)V
        13: .line 245
      StackMap locals:
      StackMap stack:
            aload 8 /* irast */
            invokevirtual sun.awt.image.IntegerComponentRaster.markDirty:()V
        14: .line 247
            aload 7 /* rast */
            areturn
        end local 11 // int[] pixels
        end local 10 // int adjust
        end local 9 // int off
        end local 8 // sun.awt.image.IntegerComponentRaster irast
        end local 7 // java.awt.image.Raster rast
        end local 5 // double rowrel
        end local 4 // int h
        end local 3 // int w
        end local 2 // int y
        end local 1 // int x
        end local 0 // java.awt.GradientPaintContext this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   15     0    this  Ljava/awt/GradientPaintContext;
            0   15     1       x  I
            0   15     2       y  I
            0   15     3       w  I
            0   15     4       h  I
            1   15     5  rowrel  D
            2   15     7    rast  Ljava/awt/image/Raster;
            6   15     8   irast  Lsun/awt/image/IntegerComponentRaster;
            7   15     9     off  I
            8   15    10  adjust  I
            9   15    11  pixels  [I
    MethodParameters:
      Name  Flags
      x     
      y     
      w     
      h     

  void cycleFillRaster(int[], int, int, int, int, double, double, double);
    descriptor: ([IIIIIDDD)V
    flags: (0x0000) 
    Code:
      stack=5, locals=17, args_size=9
        start local 0 // java.awt.GradientPaintContext this
        start local 1 // int[] pixels
        start local 2 // int off
        start local 3 // int adjust
        start local 4 // int w
        start local 5 // int h
        start local 6 // double rowrel
        start local 8 // double dx
        start local 10 // double dy
         0: .line 252
            dload 6 /* rowrel */
            ldc 2.0
            drem
            dstore 6 /* rowrel */
         1: .line 253
            dload 6 /* rowrel */
            ldc 1.073741824E9
            dmul
            d2i
            iconst_1
            ishl
            istore 12 /* irowrel */
        start local 12 // int irowrel
         2: .line 254
            dload 8 /* dx */
            dneg
            ldc -2.147483648E9
            dmul
            d2i
            istore 13 /* idx */
        start local 13 // int idx
         3: .line 255
            dload 10 /* dy */
            dneg
            ldc -2.147483648E9
            dmul
            d2i
            istore 14 /* idy */
        start local 14 // int idy
         4: .line 256
            goto 14
         5: .line 257
      StackMap locals: int int int
      StackMap stack:
            iload 12 /* irowrel */
            istore 15 /* icolrel */
        start local 15 // int icolrel
         6: .line 258
            iload 4 /* w */
            istore 16 /* j */
        start local 16 // int j
         7: goto 11
         8: .line 259
      StackMap locals: int int
      StackMap stack:
            aload 1 /* pixels */
            iload 2 /* off */
            iinc 2 /* off */ 1
            aload 0 /* this */
            getfield java.awt.GradientPaintContext.interp:[I
            iload 15 /* icolrel */
            bipush 23
            iushr
            iaload
            iastore
         9: .line 260
            iload 15 /* icolrel */
            iload 13 /* idx */
            iadd
            istore 15 /* icolrel */
        10: .line 258
            iinc 16 /* j */ -1
      StackMap locals:
      StackMap stack:
        11: iload 16 /* j */
            ifgt 8
        end local 16 // int j
        12: .line 263
            iload 2 /* off */
            iload 3 /* adjust */
            iadd
            istore 2 /* off */
        13: .line 264
            iload 12 /* irowrel */
            iload 14 /* idy */
            iadd
            istore 12 /* irowrel */
        end local 15 // int icolrel
        14: .line 256
      StackMap locals:
      StackMap stack:
            iinc 5 /* h */ -1
            iload 5 /* h */
            ifge 5
        15: .line 266
            return
        end local 14 // int idy
        end local 13 // int idx
        end local 12 // int irowrel
        end local 10 // double dy
        end local 8 // double dx
        end local 6 // double rowrel
        end local 5 // int h
        end local 4 // int w
        end local 3 // int adjust
        end local 2 // int off
        end local 1 // int[] pixels
        end local 0 // java.awt.GradientPaintContext this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   16     0     this  Ljava/awt/GradientPaintContext;
            0   16     1   pixels  [I
            0   16     2      off  I
            0   16     3   adjust  I
            0   16     4        w  I
            0   16     5        h  I
            0   16     6   rowrel  D
            0   16     8       dx  D
            0   16    10       dy  D
            2   16    12  irowrel  I
            3   16    13      idx  I
            4   16    14      idy  I
            6   14    15  icolrel  I
            7   12    16        j  I
    MethodParameters:
        Name  Flags
      pixels  
      off     
      adjust  
      w       
      h       
      rowrel  
      dx      
      dy      

  void clipFillRaster(int[], int, int, int, int, double, double, double);
    descriptor: ([IIIIIDDD)V
    flags: (0x0000) 
    Code:
      stack=7, locals=16, args_size=9
        start local 0 // java.awt.GradientPaintContext this
        start local 1 // int[] pixels
        start local 2 // int off
        start local 3 // int adjust
        start local 4 // int w
        start local 5 // int h
        start local 6 // double rowrel
        start local 8 // double dx
        start local 10 // double dy
         0: .line 270
            goto 20
         1: .line 271
      StackMap locals:
      StackMap stack:
            dload 6 /* rowrel */
            dstore 12 /* colrel */
        start local 12 // double colrel
         2: .line 272
            iload 4 /* w */
            istore 14 /* j */
        start local 14 // int j
         3: .line 273
            dload 12 /* colrel */
            dconst_0
            dcmpg
            ifgt 12
         4: .line 274
            aload 0 /* this */
            getfield java.awt.GradientPaintContext.interp:[I
            iconst_0
            iaload
            istore 15 /* rgb */
        start local 15 // int rgb
         5: .line 276
      StackMap locals: double int int
      StackMap stack:
            aload 1 /* pixels */
            iload 2 /* off */
            iinc 2 /* off */ 1
            iload 15 /* rgb */
            iastore
         6: .line 277
            dload 12 /* colrel */
            dload 8 /* dx */
            dadd
            dstore 12 /* colrel */
         7: .line 278
            iinc 14 /* j */ -1
            iload 14 /* j */
            ifle 12
            dload 12 /* colrel */
            dconst_0
         8: .line 275
            dcmpg
            ifle 5
        end local 15 // int rgb
         9: .line 280
            goto 12
        10: .line 281
      StackMap locals:
      StackMap stack:
            aload 1 /* pixels */
            iload 2 /* off */
            iinc 2 /* off */ 1
            aload 0 /* this */
            getfield java.awt.GradientPaintContext.interp:[I
            dload 12 /* colrel */
            ldc 256.0
            dmul
            d2i
            iaload
            iastore
        11: .line 282
            dload 12 /* colrel */
            dload 8 /* dx */
            dadd
            dstore 12 /* colrel */
        12: .line 280
      StackMap locals:
      StackMap stack:
            dload 12 /* colrel */
            dconst_1
            dcmpg
            ifge 13
            iinc 14 /* j */ -1
            iload 14 /* j */
            ifge 10
        13: .line 284
      StackMap locals:
      StackMap stack:
            iload 14 /* j */
            ifle 18
        14: .line 285
            aload 0 /* this */
            getfield java.awt.GradientPaintContext.interp:[I
            sipush 256
            iaload
            istore 15 /* rgb */
        start local 15 // int rgb
        15: .line 287
      StackMap locals: int
      StackMap stack:
            aload 1 /* pixels */
            iload 2 /* off */
            iinc 2 /* off */ 1
            iload 15 /* rgb */
            iastore
        16: .line 288
            iinc 14 /* j */ -1
            iload 14 /* j */
        17: .line 286
            ifgt 15
        end local 15 // int rgb
        18: .line 291
      StackMap locals:
      StackMap stack:
            iload 2 /* off */
            iload 3 /* adjust */
            iadd
            istore 2 /* off */
        19: .line 292
            dload 6 /* rowrel */
            dload 10 /* dy */
            dadd
            dstore 6 /* rowrel */
        end local 14 // int j
        end local 12 // double colrel
        20: .line 270
      StackMap locals:
      StackMap stack:
            iinc 5 /* h */ -1
            iload 5 /* h */
            ifge 1
        21: .line 294
            return
        end local 10 // double dy
        end local 8 // double dx
        end local 6 // double rowrel
        end local 5 // int h
        end local 4 // int w
        end local 3 // int adjust
        end local 2 // int off
        end local 1 // int[] pixels
        end local 0 // java.awt.GradientPaintContext this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   22     0    this  Ljava/awt/GradientPaintContext;
            0   22     1  pixels  [I
            0   22     2     off  I
            0   22     3  adjust  I
            0   22     4       w  I
            0   22     5       h  I
            0   22     6  rowrel  D
            0   22     8      dx  D
            0   22    10      dy  D
            2   20    12  colrel  D
            3   20    14       j  I
            5    9    15     rgb  I
           15   18    15     rgb  I
    MethodParameters:
        Name  Flags
      pixels  
      off     
      adjust  
      w       
      h       
      rowrel  
      dx      
      dy      
}
SourceFile: "GradientPaintContext.java"
InnerClasses:
  public Double = java.awt.geom.Point2D$Double of java.awt.geom.Point2D