public class org.apache.batik.ext.awt.image.rendered.DiffuseLightingRed extends org.apache.batik.ext.awt.image.rendered.AbstractRed
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.batik.ext.awt.image.rendered.DiffuseLightingRed
  super_class: org.apache.batik.ext.awt.image.rendered.AbstractRed
{
  private double kd;
    descriptor: D
    flags: (0x0002) ACC_PRIVATE

  private org.apache.batik.ext.awt.image.Light light;
    descriptor: Lorg/apache/batik/ext/awt/image/Light;
    flags: (0x0002) ACC_PRIVATE

  private org.apache.batik.ext.awt.image.rendered.BumpMap bumpMap;
    descriptor: Lorg/apache/batik/ext/awt/image/rendered/BumpMap;
    flags: (0x0002) ACC_PRIVATE

  private double scaleX;
    descriptor: D
    flags: (0x0002) ACC_PRIVATE

  private double scaleY;
    descriptor: D
    flags: (0x0002) ACC_PRIVATE

  private java.awt.Rectangle litRegion;
    descriptor: Ljava/awt/Rectangle;
    flags: (0x0002) ACC_PRIVATE

  private boolean linear;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  public void <init>(double, org.apache.batik.ext.awt.image.Light, org.apache.batik.ext.awt.image.rendered.BumpMap, java.awt.Rectangle, double, double, boolean);
    descriptor: (DLorg/apache/batik/ext/awt/image/Light;Lorg/apache/batik/ext/awt/image/rendered/BumpMap;Ljava/awt/Rectangle;DDZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=13, args_size=8
        start local 0 // org.apache.batik.ext.awt.image.rendered.DiffuseLightingRed this
        start local 1 // double kd
        start local 3 // org.apache.batik.ext.awt.image.Light light
        start local 4 // org.apache.batik.ext.awt.image.rendered.BumpMap bumpMap
        start local 5 // java.awt.Rectangle litRegion
        start local 6 // double scaleX
        start local 8 // double scaleY
        start local 10 // boolean linear
         0: .line 69
            aload 0 /* this */
            invokespecial org.apache.batik.ext.awt.image.rendered.AbstractRed.<init>:()V
         1: .line 75
            aload 0 /* this */
            dload 1 /* kd */
            putfield org.apache.batik.ext.awt.image.rendered.DiffuseLightingRed.kd:D
         2: .line 76
            aload 0 /* this */
            aload 3 /* light */
            putfield org.apache.batik.ext.awt.image.rendered.DiffuseLightingRed.light:Lorg/apache/batik/ext/awt/image/Light;
         3: .line 77
            aload 0 /* this */
            aload 4 /* bumpMap */
            putfield org.apache.batik.ext.awt.image.rendered.DiffuseLightingRed.bumpMap:Lorg/apache/batik/ext/awt/image/rendered/BumpMap;
         4: .line 78
            aload 0 /* this */
            aload 5 /* litRegion */
            putfield org.apache.batik.ext.awt.image.rendered.DiffuseLightingRed.litRegion:Ljava/awt/Rectangle;
         5: .line 79
            aload 0 /* this */
            dload 6 /* scaleX */
            putfield org.apache.batik.ext.awt.image.rendered.DiffuseLightingRed.scaleX:D
         6: .line 80
            aload 0 /* this */
            dload 8 /* scaleY */
            putfield org.apache.batik.ext.awt.image.rendered.DiffuseLightingRed.scaleY:D
         7: .line 81
            aload 0 /* this */
            iload 10 /* linear */
            putfield org.apache.batik.ext.awt.image.rendered.DiffuseLightingRed.linear:Z
         8: .line 84
            iload 10 /* linear */
            ifeq 11
         9: .line 85
            getstatic org.apache.batik.ext.awt.image.GraphicsUtil.Linear_sRGB_Pre:Ljava/awt/image/ColorModel;
            astore 11 /* cm */
        start local 11 // java.awt.image.ColorModel cm
        10: goto 12
        end local 11 // java.awt.image.ColorModel cm
        11: .line 87
      StackMap locals: org.apache.batik.ext.awt.image.rendered.DiffuseLightingRed double org.apache.batik.ext.awt.image.Light org.apache.batik.ext.awt.image.rendered.BumpMap java.awt.Rectangle double double int
      StackMap stack:
            getstatic org.apache.batik.ext.awt.image.GraphicsUtil.sRGB_Pre:Ljava/awt/image/ColorModel;
            astore 11 /* cm */
        start local 11 // java.awt.image.ColorModel cm
        12: .line 90
      StackMap locals: java.awt.image.ColorModel
      StackMap stack:
            aload 11 /* cm */
            aload 5 /* litRegion */
            getfield java.awt.Rectangle.width:I
        13: .line 91
            aload 5 /* litRegion */
            getfield java.awt.Rectangle.height:I
        14: .line 90
            invokevirtual java.awt.image.ColorModel.createCompatibleSampleModel:(II)Ljava/awt/image/SampleModel;
        15: .line 89
            astore 12 /* sm */
        start local 12 // java.awt.image.SampleModel sm
        16: .line 93
            aload 0 /* this */
            aconst_null
            aload 5 /* litRegion */
            aload 11 /* cm */
            aload 12 /* sm */
        17: .line 94
            aload 5 /* litRegion */
            getfield java.awt.Rectangle.x:I
            aload 5 /* litRegion */
            getfield java.awt.Rectangle.y:I
            aconst_null
        18: .line 93
            invokevirtual org.apache.batik.ext.awt.image.rendered.DiffuseLightingRed.init:(Lorg/apache/batik/ext/awt/image/rendered/CachableRed;Ljava/awt/Rectangle;Ljava/awt/image/ColorModel;Ljava/awt/image/SampleModel;IILjava/util/Map;)V
        19: .line 95
            return
        end local 12 // java.awt.image.SampleModel sm
        end local 11 // java.awt.image.ColorModel cm
        end local 10 // boolean linear
        end local 8 // double scaleY
        end local 6 // double scaleX
        end local 5 // java.awt.Rectangle litRegion
        end local 4 // org.apache.batik.ext.awt.image.rendered.BumpMap bumpMap
        end local 3 // org.apache.batik.ext.awt.image.Light light
        end local 1 // double kd
        end local 0 // org.apache.batik.ext.awt.image.rendered.DiffuseLightingRed this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   20     0       this  Lorg/apache/batik/ext/awt/image/rendered/DiffuseLightingRed;
            0   20     1         kd  D
            0   20     3      light  Lorg/apache/batik/ext/awt/image/Light;
            0   20     4    bumpMap  Lorg/apache/batik/ext/awt/image/rendered/BumpMap;
            0   20     5  litRegion  Ljava/awt/Rectangle;
            0   20     6     scaleX  D
            0   20     8     scaleY  D
            0   20    10     linear  Z
           10   11    11         cm  Ljava/awt/image/ColorModel;
           12   20    11         cm  Ljava/awt/image/ColorModel;
           16   20    12         sm  Ljava/awt/image/SampleModel;
    MethodParameters:
           Name  Flags
      kd         
      light      
      bumpMap    
      litRegion  
      scaleX     
      scaleY     
      linear     

  public java.awt.image.WritableRaster copyData(java.awt.image.WritableRaster);
    descriptor: (Ljava/awt/image/WritableRaster;)Ljava/awt/image/WritableRaster;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=10, locals=30, args_size=2
        start local 0 // org.apache.batik.ext.awt.image.rendered.DiffuseLightingRed this
        start local 1 // java.awt.image.WritableRaster wr
         0: .line 98
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.DiffuseLightingRed.light:Lorg/apache/batik/ext/awt/image/Light;
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.DiffuseLightingRed.linear:Z
            invokeinterface org.apache.batik.ext.awt.image.Light.getColor:(Z)[D
            astore 2 /* lightColor */
        start local 2 // double[] lightColor
         1: .line 100
            aload 1 /* wr */
            invokevirtual java.awt.image.WritableRaster.getWidth:()I
            istore 3 /* w */
        start local 3 // int w
         2: .line 101
            aload 1 /* wr */
            invokevirtual java.awt.image.WritableRaster.getHeight:()I
            istore 4 /* h */
        start local 4 // int h
         3: .line 102
            aload 1 /* wr */
            invokevirtual java.awt.image.WritableRaster.getMinX:()I
            istore 5 /* minX */
        start local 5 // int minX
         4: .line 103
            aload 1 /* wr */
            invokevirtual java.awt.image.WritableRaster.getMinY:()I
            istore 6 /* minY */
        start local 6 // int minY
         5: .line 105
            aload 1 /* wr */
            invokevirtual java.awt.image.WritableRaster.getDataBuffer:()Ljava/awt/image/DataBuffer;
            checkcast java.awt.image.DataBufferInt
            astore 7 /* db */
        start local 7 // java.awt.image.DataBufferInt db
         6: .line 106
            aload 7 /* db */
            invokevirtual java.awt.image.DataBufferInt.getBankData:()[[I
            iconst_0
            aaload
            astore 8 /* pixels */
        start local 8 // int[] pixels
         7: .line 109
            aload 1 /* wr */
            invokevirtual java.awt.image.WritableRaster.getSampleModel:()Ljava/awt/image/SampleModel;
            checkcast java.awt.image.SinglePixelPackedSampleModel
            astore 9 /* sppsm */
        start local 9 // java.awt.image.SinglePixelPackedSampleModel sppsm
         8: .line 112
            aload 7 /* db */
            invokevirtual java.awt.image.DataBufferInt.getOffset:()I
         9: .line 113
            aload 9 /* sppsm */
            iload 5 /* minX */
            aload 1 /* wr */
            invokevirtual java.awt.image.WritableRaster.getSampleModelTranslateX:()I
            isub
        10: .line 114
            iload 6 /* minY */
            aload 1 /* wr */
            invokevirtual java.awt.image.WritableRaster.getSampleModelTranslateY:()I
            isub
        11: .line 113
            invokevirtual java.awt.image.SinglePixelPackedSampleModel.getOffset:(II)I
        12: .line 112
            iadd
        13: .line 111
            istore 10 /* offset */
        start local 10 // int offset
        14: .line 116
            aload 9 /* sppsm */
            invokevirtual java.awt.image.SinglePixelPackedSampleModel.getScanlineStride:()I
            istore 11 /* scanStride */
        start local 11 // int scanStride
        15: .line 117
            iload 11 /* scanStride */
            iload 3 /* w */
            isub
            istore 12 /* adjust */
        start local 12 // int adjust
        16: .line 118
            iload 10 /* offset */
            istore 13 /* p */
        start local 13 // int p
        17: .line 119
            iconst_0
            istore 14 /* r */
        start local 14 // int r
        18: iconst_0
            istore 15 /* g */
        start local 15 // int g
        19: iconst_0
            istore 16 /* b */
        start local 16 // int b
        20: .line 120
            iconst_0
            istore 17 /* i */
        start local 17 // int i
        21: iconst_0
            istore 18 /* j */
        start local 18 // int j
        22: .line 123
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.DiffuseLightingRed.scaleX:D
            iload 5 /* minX */
            i2d
            dmul
            dstore 19 /* x */
        start local 19 // double x
        23: .line 124
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.DiffuseLightingRed.scaleY:D
            iload 6 /* minY */
            i2d
            dmul
            dstore 21 /* y */
        start local 21 // double y
        24: .line 125
            dconst_0
            dstore 23 /* NL */
        start local 23 // double NL
        25: .line 128
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.DiffuseLightingRed.bumpMap:Lorg/apache/batik/ext/awt/image/rendered/BumpMap;
            iload 5 /* minX */
            iload 6 /* minY */
            iload 3 /* w */
            iload 4 /* h */
            invokevirtual org.apache.batik.ext.awt.image.rendered.BumpMap.getNormalArray:(IIII)[[[D
            astore 25 /* NA */
        start local 25 // double[][][] NA
        26: .line 129
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.DiffuseLightingRed.light:Lorg/apache/batik/ext/awt/image/Light;
            invokeinterface org.apache.batik.ext.awt.image.Light.isConstant:()Z
            ifne 61
        27: .line 130
            iload 3 /* w */
            iconst_3
            multianewarray [[D 2
            astore 26 /* LA */
        start local 26 // double[][] LA
        28: .line 132
            iconst_0
            istore 17 /* i */
            goto 59
        29: .line 133
      StackMap locals: org.apache.batik.ext.awt.image.rendered.DiffuseLightingRed java.awt.image.WritableRaster double[] int int int int java.awt.image.DataBufferInt int[] java.awt.image.SinglePixelPackedSampleModel int int int int int int int int int double double double double[][][] double[][]
      StackMap stack:
            aload 25 /* NA */
            iload 17 /* i */
            aaload
            astore 27 /* NR */
        start local 27 // double[][] NR
        30: .line 134
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.DiffuseLightingRed.light:Lorg/apache/batik/ext/awt/image/Light;
            dload 19 /* x */
            dload 21 /* y */
            iload 17 /* i */
            i2d
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.DiffuseLightingRed.scaleY:D
            dmul
            dadd
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.DiffuseLightingRed.scaleX:D
            iload 3 /* w */
            aload 27 /* NR */
            aload 26 /* LA */
            invokeinterface org.apache.batik.ext.awt.image.Light.getLightRow:(DDDI[[D[[D)[[D
            pop
        31: .line 135
            iconst_0
            istore 18 /* j */
            goto 56
        32: .line 137
      StackMap locals: double[][]
      StackMap stack:
            aload 27 /* NR */
            iload 18 /* j */
            aaload
            astore 28 /* N */
        start local 28 // double[] N
        33: .line 140
            aload 26 /* LA */
            iload 18 /* j */
            aaload
            astore 29 /* L */
        start local 29 // double[] L
        34: .line 142
            ldc 255.0
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.DiffuseLightingRed.kd:D
            dmul
            aload 28 /* N */
            iconst_0
            daload
            aload 29 /* L */
            iconst_0
            daload
            dmul
            aload 28 /* N */
            iconst_1
            daload
            aload 29 /* L */
            iconst_1
            daload
            dmul
            dadd
            aload 28 /* N */
            iconst_2
            daload
            aload 29 /* L */
            iconst_2
            daload
            dmul
            dadd
            dmul
            dstore 23 /* NL */
        35: .line 144
            dload 23 /* NL */
            aload 2 /* lightColor */
            iconst_0
            daload
            dmul
            d2i
            istore 14 /* r */
        36: .line 145
            dload 23 /* NL */
            aload 2 /* lightColor */
            iconst_1
            daload
            dmul
            d2i
            istore 15 /* g */
        37: .line 146
            dload 23 /* NL */
            aload 2 /* lightColor */
            iconst_2
            daload
            dmul
            d2i
            istore 16 /* b */
        38: .line 151
            iload 14 /* r */
            sipush -256
            iand
            ifeq 42
        39: .line 152
            iload 14 /* r */
            ldc -2147483648
            iand
            ifeq 40
            iconst_0
            goto 41
      StackMap locals: double[] double[]
      StackMap stack:
        40: sipush 255
      StackMap locals:
      StackMap stack: int
        41: istore 14 /* r */
        42: .line 153
      StackMap locals:
      StackMap stack:
            iload 15 /* g */
            sipush -256
            iand
            ifeq 46
        43: .line 154
            iload 15 /* g */
            ldc -2147483648
            iand
            ifeq 44
            iconst_0
            goto 45
      StackMap locals:
      StackMap stack:
        44: sipush 255
      StackMap locals:
      StackMap stack: int
        45: istore 15 /* g */
        46: .line 155
      StackMap locals:
      StackMap stack:
            iload 16 /* b */
            sipush -256
            iand
            ifeq 50
        47: .line 156
            iload 16 /* b */
            ldc -2147483648
            iand
            ifeq 48
            iconst_0
            goto 49
      StackMap locals:
      StackMap stack:
        48: sipush 255
      StackMap locals:
      StackMap stack: int
        49: istore 16 /* b */
        50: .line 158
      StackMap locals:
      StackMap stack:
            aload 8 /* pixels */
            iload 13 /* p */
            iinc 13 /* p */ 1
            ldc -16777216
        51: .line 160
            iload 14 /* r */
            bipush 16
            ishl
            ior
        52: .line 162
            iload 15 /* g */
            bipush 8
            ishl
            ior
        53: .line 164
            iload 16 /* b */
            ior
        54: .line 158
            iastore
        end local 29 // double[] L
        end local 28 // double[] N
        55: .line 135
            iinc 18 /* j */ 1
      StackMap locals:
      StackMap stack:
        56: iload 18 /* j */
            iload 3 /* w */
            if_icmplt 32
        57: .line 167
            iload 13 /* p */
            iload 12 /* adjust */
            iadd
            istore 13 /* p */
        end local 27 // double[][] NR
        58: .line 132
            iinc 17 /* i */ 1
      StackMap locals:
      StackMap stack:
        59: iload 17 /* i */
            iload 4 /* h */
            if_icmplt 29
        end local 26 // double[][] LA
        60: .line 169
            goto 93
        61: .line 173
      StackMap locals:
      StackMap stack:
            iconst_3
            newarray 7
            astore 26 /* L */
        start local 26 // double[] L
        62: .line 174
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.DiffuseLightingRed.light:Lorg/apache/batik/ext/awt/image/Light;
            dconst_0
            dconst_0
            dconst_0
            aload 26 /* L */
            invokeinterface org.apache.batik.ext.awt.image.Light.getLight:(DDD[D)V
        63: .line 176
            iconst_0
            istore 17 /* i */
            goto 92
        64: .line 177
      StackMap locals: double[]
      StackMap stack:
            aload 25 /* NA */
            iload 17 /* i */
            aaload
            astore 27 /* NR */
        start local 27 // double[][] NR
        65: .line 178
            iconst_0
            istore 18 /* j */
            goto 89
        66: .line 180
      StackMap locals: double[][]
      StackMap stack:
            aload 27 /* NR */
            iload 18 /* j */
            aaload
            astore 28 /* N */
        start local 28 // double[] N
        67: .line 182
            ldc 255.0
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.DiffuseLightingRed.kd:D
            dmul
            aload 28 /* N */
            iconst_0
            daload
            aload 26 /* L */
            iconst_0
            daload
            dmul
            aload 28 /* N */
            iconst_1
            daload
            aload 26 /* L */
            iconst_1
            daload
            dmul
            dadd
            aload 28 /* N */
            iconst_2
            daload
            aload 26 /* L */
            iconst_2
            daload
            dmul
            dadd
            dmul
            dstore 23 /* NL */
        68: .line 184
            dload 23 /* NL */
            aload 2 /* lightColor */
            iconst_0
            daload
            dmul
            d2i
            istore 14 /* r */
        69: .line 185
            dload 23 /* NL */
            aload 2 /* lightColor */
            iconst_1
            daload
            dmul
            d2i
            istore 15 /* g */
        70: .line 186
            dload 23 /* NL */
            aload 2 /* lightColor */
            iconst_2
            daload
            dmul
            d2i
            istore 16 /* b */
        71: .line 191
            iload 14 /* r */
            sipush -256
            iand
            ifeq 75
        72: .line 192
            iload 14 /* r */
            ldc -2147483648
            iand
            ifeq 73
            iconst_0
            goto 74
      StackMap locals: double[]
      StackMap stack:
        73: sipush 255
      StackMap locals:
      StackMap stack: int
        74: istore 14 /* r */
        75: .line 193
      StackMap locals:
      StackMap stack:
            iload 15 /* g */
            sipush -256
            iand
            ifeq 79
        76: .line 194
            iload 15 /* g */
            ldc -2147483648
            iand
            ifeq 77
            iconst_0
            goto 78
      StackMap locals:
      StackMap stack:
        77: sipush 255
      StackMap locals:
      StackMap stack: int
        78: istore 15 /* g */
        79: .line 195
      StackMap locals:
      StackMap stack:
            iload 16 /* b */
            sipush -256
            iand
            ifeq 83
        80: .line 196
            iload 16 /* b */
            ldc -2147483648
            iand
            ifeq 81
            iconst_0
            goto 82
      StackMap locals:
      StackMap stack:
        81: sipush 255
      StackMap locals:
      StackMap stack: int
        82: istore 16 /* b */
        83: .line 198
      StackMap locals:
      StackMap stack:
            aload 8 /* pixels */
            iload 13 /* p */
            iinc 13 /* p */ 1
            ldc -16777216
        84: .line 200
            iload 14 /* r */
            bipush 16
            ishl
            ior
        85: .line 202
            iload 15 /* g */
            bipush 8
            ishl
            ior
        86: .line 204
            iload 16 /* b */
            ior
        87: .line 198
            iastore
        end local 28 // double[] N
        88: .line 178
            iinc 18 /* j */ 1
      StackMap locals:
      StackMap stack:
        89: iload 18 /* j */
            iload 3 /* w */
            if_icmplt 66
        90: .line 206
            iload 13 /* p */
            iload 12 /* adjust */
            iadd
            istore 13 /* p */
        end local 27 // double[][] NR
        91: .line 176
            iinc 17 /* i */ 1
      StackMap locals:
      StackMap stack:
        92: iload 17 /* i */
            iload 4 /* h */
            if_icmplt 64
        end local 26 // double[] L
        93: .line 210
      StackMap locals:
      StackMap stack:
            aload 1 /* wr */
            areturn
        end local 25 // double[][][] NA
        end local 23 // double NL
        end local 21 // double y
        end local 19 // double x
        end local 18 // int j
        end local 17 // int i
        end local 16 // int b
        end local 15 // int g
        end local 14 // int r
        end local 13 // int p
        end local 12 // int adjust
        end local 11 // int scanStride
        end local 10 // int offset
        end local 9 // java.awt.image.SinglePixelPackedSampleModel sppsm
        end local 8 // int[] pixels
        end local 7 // java.awt.image.DataBufferInt db
        end local 6 // int minY
        end local 5 // int minX
        end local 4 // int h
        end local 3 // int w
        end local 2 // double[] lightColor
        end local 1 // java.awt.image.WritableRaster wr
        end local 0 // org.apache.batik.ext.awt.image.rendered.DiffuseLightingRed this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   94     0        this  Lorg/apache/batik/ext/awt/image/rendered/DiffuseLightingRed;
            0   94     1          wr  Ljava/awt/image/WritableRaster;
            1   94     2  lightColor  [D
            2   94     3           w  I
            3   94     4           h  I
            4   94     5        minX  I
            5   94     6        minY  I
            6   94     7          db  Ljava/awt/image/DataBufferInt;
            7   94     8      pixels  [I
            8   94     9       sppsm  Ljava/awt/image/SinglePixelPackedSampleModel;
           14   94    10      offset  I
           15   94    11  scanStride  I
           16   94    12      adjust  I
           17   94    13           p  I
           18   94    14           r  I
           19   94    15           g  I
           20   94    16           b  I
           21   94    17           i  I
           22   94    18           j  I
           23   94    19           x  D
           24   94    21           y  D
           25   94    23          NL  D
           26   94    25          NA  [[[D
           28   60    26          LA  [[D
           30   58    27          NR  [[D
           33   55    28           N  [D
           34   55    29           L  [D
           62   93    26           L  [D
           65   91    27          NR  [[D
           67   88    28           N  [D
    MethodParameters:
      Name  Flags
      wr    
}
SourceFile: "DiffuseLightingRed.java"