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

  private double specularExponent;
    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, double, org.apache.batik.ext.awt.image.Light, org.apache.batik.ext.awt.image.rendered.BumpMap, java.awt.Rectangle, double, double, boolean);
    descriptor: (DDLorg/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=18, args_size=9
        start local 0 // org.apache.batik.ext.awt.image.rendered.SpecularLightingRed this
        start local 1 // double ks
        start local 3 // double specularExponent
        start local 5 // org.apache.batik.ext.awt.image.Light light
        start local 6 // org.apache.batik.ext.awt.image.rendered.BumpMap bumpMap
        start local 7 // java.awt.Rectangle litRegion
        start local 8 // double scaleX
        start local 10 // double scaleY
        start local 12 // boolean linear
         0: .line 75
            aload 0 /* this */
            invokespecial org.apache.batik.ext.awt.image.rendered.AbstractTiledRed.<init>:()V
         1: .line 82
            aload 0 /* this */
            dload 1 /* ks */
            putfield org.apache.batik.ext.awt.image.rendered.SpecularLightingRed.ks:D
         2: .line 83
            aload 0 /* this */
            dload 3 /* specularExponent */
            putfield org.apache.batik.ext.awt.image.rendered.SpecularLightingRed.specularExponent:D
         3: .line 84
            aload 0 /* this */
            aload 5 /* light */
            putfield org.apache.batik.ext.awt.image.rendered.SpecularLightingRed.light:Lorg/apache/batik/ext/awt/image/Light;
         4: .line 85
            aload 0 /* this */
            aload 6 /* bumpMap */
            putfield org.apache.batik.ext.awt.image.rendered.SpecularLightingRed.bumpMap:Lorg/apache/batik/ext/awt/image/rendered/BumpMap;
         5: .line 86
            aload 0 /* this */
            aload 7 /* litRegion */
            putfield org.apache.batik.ext.awt.image.rendered.SpecularLightingRed.litRegion:Ljava/awt/Rectangle;
         6: .line 87
            aload 0 /* this */
            dload 8 /* scaleX */
            putfield org.apache.batik.ext.awt.image.rendered.SpecularLightingRed.scaleX:D
         7: .line 88
            aload 0 /* this */
            dload 10 /* scaleY */
            putfield org.apache.batik.ext.awt.image.rendered.SpecularLightingRed.scaleY:D
         8: .line 89
            aload 0 /* this */
            iload 12 /* linear */
            putfield org.apache.batik.ext.awt.image.rendered.SpecularLightingRed.linear:Z
         9: .line 92
            iload 12 /* linear */
            ifeq 12
        10: .line 93
            getstatic org.apache.batik.ext.awt.image.GraphicsUtil.Linear_sRGB_Unpre:Ljava/awt/image/ColorModel;
            astore 13 /* cm */
        start local 13 // java.awt.image.ColorModel cm
        11: goto 13
        end local 13 // java.awt.image.ColorModel cm
        12: .line 95
      StackMap locals: org.apache.batik.ext.awt.image.rendered.SpecularLightingRed double 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_Unpre:Ljava/awt/image/ColorModel;
            astore 13 /* cm */
        start local 13 // java.awt.image.ColorModel cm
        13: .line 97
      StackMap locals: java.awt.image.ColorModel
      StackMap stack:
            aload 7 /* litRegion */
            getfield java.awt.Rectangle.width:I
            istore 14 /* tw */
        start local 14 // int tw
        14: .line 98
            aload 7 /* litRegion */
            getfield java.awt.Rectangle.height:I
            istore 15 /* th */
        start local 15 // int th
        15: .line 99
            invokestatic org.apache.batik.ext.awt.image.rendered.AbstractTiledRed.getDefaultTileSize:()I
            istore 16 /* defSz */
        start local 16 // int defSz
        16: .line 100
            iload 14 /* tw */
            iload 16 /* defSz */
            if_icmple 17
            iload 16 /* defSz */
            istore 14 /* tw */
        17: .line 101
      StackMap locals: int int int
      StackMap stack:
            iload 15 /* th */
            iload 16 /* defSz */
            if_icmple 18
            iload 16 /* defSz */
            istore 15 /* th */
        18: .line 102
      StackMap locals:
      StackMap stack:
            aload 13 /* cm */
            iload 14 /* tw */
            iload 15 /* th */
            invokevirtual java.awt.image.ColorModel.createCompatibleSampleModel:(II)Ljava/awt/image/SampleModel;
            astore 17 /* sm */
        start local 17 // java.awt.image.SampleModel sm
        19: .line 104
            aload 0 /* this */
            aconst_null
            aload 7 /* litRegion */
            aload 13 /* cm */
            aload 17 /* sm */
        20: .line 105
            aload 7 /* litRegion */
            getfield java.awt.Rectangle.x:I
            aload 7 /* litRegion */
            getfield java.awt.Rectangle.y:I
            aconst_null
        21: .line 104
            invokevirtual org.apache.batik.ext.awt.image.rendered.SpecularLightingRed.init:(Lorg/apache/batik/ext/awt/image/rendered/CachableRed;Ljava/awt/Rectangle;Ljava/awt/image/ColorModel;Ljava/awt/image/SampleModel;IILjava/util/Map;)V
        22: .line 106
            return
        end local 17 // java.awt.image.SampleModel sm
        end local 16 // int defSz
        end local 15 // int th
        end local 14 // int tw
        end local 13 // java.awt.image.ColorModel cm
        end local 12 // boolean linear
        end local 10 // double scaleY
        end local 8 // double scaleX
        end local 7 // java.awt.Rectangle litRegion
        end local 6 // org.apache.batik.ext.awt.image.rendered.BumpMap bumpMap
        end local 5 // org.apache.batik.ext.awt.image.Light light
        end local 3 // double specularExponent
        end local 1 // double ks
        end local 0 // org.apache.batik.ext.awt.image.rendered.SpecularLightingRed this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   23     0              this  Lorg/apache/batik/ext/awt/image/rendered/SpecularLightingRed;
            0   23     1                ks  D
            0   23     3  specularExponent  D
            0   23     5             light  Lorg/apache/batik/ext/awt/image/Light;
            0   23     6           bumpMap  Lorg/apache/batik/ext/awt/image/rendered/BumpMap;
            0   23     7         litRegion  Ljava/awt/Rectangle;
            0   23     8            scaleX  D
            0   23    10            scaleY  D
            0   23    12            linear  Z
           11   12    13                cm  Ljava/awt/image/ColorModel;
           13   23    13                cm  Ljava/awt/image/ColorModel;
           14   23    14                tw  I
           15   23    15                th  I
           16   23    16             defSz  I
           19   23    17                sm  Ljava/awt/image/SampleModel;
    MethodParameters:
                  Name  Flags
      ks                
      specularExponent  
      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=2, locals=2, args_size=2
        start local 0 // org.apache.batik.ext.awt.image.rendered.SpecularLightingRed this
        start local 1 // java.awt.image.WritableRaster wr
         0: .line 109
            aload 0 /* this */
            aload 1 /* wr */
            invokevirtual org.apache.batik.ext.awt.image.rendered.SpecularLightingRed.copyToRaster:(Ljava/awt/image/WritableRaster;)V
         1: .line 110
            aload 1 /* wr */
            areturn
        end local 1 // java.awt.image.WritableRaster wr
        end local 0 // org.apache.batik.ext.awt.image.rendered.SpecularLightingRed this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/batik/ext/awt/image/rendered/SpecularLightingRed;
            0    2     1    wr  Ljava/awt/image/WritableRaster;
    MethodParameters:
      Name  Flags
      wr    

  public void genRect(java.awt.image.WritableRaster);
    descriptor: (Ljava/awt/image/WritableRaster;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=10, locals=43, args_size=2
        start local 0 // org.apache.batik.ext.awt.image.rendered.SpecularLightingRed this
        start local 1 // java.awt.image.WritableRaster wr
         0: .line 115
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.SpecularLightingRed.scaleX:D
            dstore 2 /* scaleX */
        start local 2 // double scaleX
         1: .line 116
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.SpecularLightingRed.scaleY:D
            dstore 4 /* scaleY */
        start local 4 // double scaleY
         2: .line 118
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.SpecularLightingRed.light:Lorg/apache/batik/ext/awt/image/Light;
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.SpecularLightingRed.linear:Z
            invokeinterface org.apache.batik.ext.awt.image.Light.getColor:(Z)[D
            astore 6 /* lightColor */
        start local 6 // double[] lightColor
         3: .line 120
            aload 1 /* wr */
            invokevirtual java.awt.image.WritableRaster.getWidth:()I
            istore 7 /* w */
        start local 7 // int w
         4: .line 121
            aload 1 /* wr */
            invokevirtual java.awt.image.WritableRaster.getHeight:()I
            istore 8 /* h */
        start local 8 // int h
         5: .line 122
            aload 1 /* wr */
            invokevirtual java.awt.image.WritableRaster.getMinX:()I
            istore 9 /* minX */
        start local 9 // int minX
         6: .line 123
            aload 1 /* wr */
            invokevirtual java.awt.image.WritableRaster.getMinY:()I
            istore 10 /* minY */
        start local 10 // int minY
         7: .line 125
            aload 1 /* wr */
            invokevirtual java.awt.image.WritableRaster.getDataBuffer:()Ljava/awt/image/DataBuffer;
            checkcast java.awt.image.DataBufferInt
            astore 11 /* db */
        start local 11 // java.awt.image.DataBufferInt db
         8: .line 126
            aload 11 /* db */
            invokevirtual java.awt.image.DataBufferInt.getBankData:()[[I
            iconst_0
            aaload
            astore 12 /* pixels */
        start local 12 // int[] pixels
         9: .line 129
            aload 1 /* wr */
            invokevirtual java.awt.image.WritableRaster.getSampleModel:()Ljava/awt/image/SampleModel;
            checkcast java.awt.image.SinglePixelPackedSampleModel
            astore 13 /* sppsm */
        start local 13 // java.awt.image.SinglePixelPackedSampleModel sppsm
        10: .line 132
            aload 11 /* db */
            invokevirtual java.awt.image.DataBufferInt.getOffset:()I
        11: .line 133
            aload 13 /* sppsm */
            iload 9 /* minX */
            aload 1 /* wr */
            invokevirtual java.awt.image.WritableRaster.getSampleModelTranslateX:()I
            isub
        12: .line 134
            iload 10 /* minY */
            aload 1 /* wr */
            invokevirtual java.awt.image.WritableRaster.getSampleModelTranslateY:()I
            isub
        13: .line 133
            invokevirtual java.awt.image.SinglePixelPackedSampleModel.getOffset:(II)I
        14: .line 132
            iadd
        15: .line 131
            istore 14 /* offset */
        start local 14 // int offset
        16: .line 136
            aload 13 /* sppsm */
            invokevirtual java.awt.image.SinglePixelPackedSampleModel.getScanlineStride:()I
            istore 15 /* scanStride */
        start local 15 // int scanStride
        17: .line 137
            iload 15 /* scanStride */
            iload 7 /* w */
            isub
            istore 16 /* adjust */
        start local 16 // int adjust
        18: .line 138
            iload 14 /* offset */
            istore 17 /* p */
        start local 17 // int p
        19: .line 139
            iconst_0
            istore 18 /* a */
        start local 18 // int a
        20: iconst_0
            istore 19 /* i */
        start local 19 // int i
        21: iconst_0
            istore 20 /* j */
        start local 20 // int j
        22: .line 142
            dload 2 /* scaleX */
            iload 9 /* minX */
            i2d
            dmul
            dstore 21 /* x */
        start local 21 // double x
        23: .line 143
            dload 4 /* scaleY */
            iload 10 /* minY */
            i2d
            dmul
            dstore 23 /* y */
        start local 23 // double y
        24: .line 144
            dconst_0
            dstore 25 /* norm */
        start local 25 // double norm
        25: .line 146
            iconst_0
            istore 27 /* pixel */
        start local 27 // int pixel
        26: .line 148
            aload 6 /* lightColor */
            iconst_0
            daload
            aload 6 /* lightColor */
            iconst_1
            daload
            dcmpl
            ifle 27
            aload 6 /* lightColor */
            iconst_0
            daload
            goto 28
      StackMap locals: org.apache.batik.ext.awt.image.rendered.SpecularLightingRed java.awt.image.WritableRaster double double double[] int int int int java.awt.image.DataBufferInt int[] java.awt.image.SinglePixelPackedSampleModel int int int int int int int double double double int
      StackMap stack:
        27: aload 6 /* lightColor */
            iconst_1
            daload
      StackMap locals:
      StackMap stack: double
        28: dstore 29 /* mult */
        start local 29 // double mult
        29: .line 149
            dload 29 /* mult */
            aload 6 /* lightColor */
            iconst_2
            daload
            dcmpl
            ifle 30
            dload 29 /* mult */
            goto 31
      StackMap locals: org.apache.batik.ext.awt.image.rendered.SpecularLightingRed java.awt.image.WritableRaster double double double[] int int int int java.awt.image.DataBufferInt int[] java.awt.image.SinglePixelPackedSampleModel int int int int int int int double double double int top double
      StackMap stack:
        30: aload 6 /* lightColor */
            iconst_2
            daload
      StackMap locals:
      StackMap stack: double
        31: dstore 29 /* mult */
        32: .line 151
            ldc 255.0
            dload 29 /* mult */
            ddiv
            dstore 31 /* scale */
        start local 31 // double scale
        33: .line 152
            aload 6 /* lightColor */
            iconst_0
            daload
            dload 31 /* scale */
            dmul
            ldc 0.5
            dadd
            d2i
            istore 27 /* pixel */
        34: .line 153
            aload 6 /* lightColor */
            iconst_1
            daload
            dload 31 /* scale */
            dmul
            ldc 0.5
            dadd
            d2i
            istore 28 /* tmp */
        start local 28 // int tmp
        35: .line 154
            iload 27 /* pixel */
            bipush 8
            ishl
            iload 28 /* tmp */
            ior
            istore 27 /* pixel */
        36: .line 155
            aload 6 /* lightColor */
            iconst_2
            daload
            dload 31 /* scale */
            dmul
            ldc 0.5
            dadd
            d2i
            istore 28 /* tmp */
        37: .line 156
            iload 27 /* pixel */
            bipush 8
            ishl
            iload 28 /* tmp */
            ior
            istore 27 /* pixel */
        38: .line 158
            dload 29 /* mult */
            ldc 255.0
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.SpecularLightingRed.ks:D
            dmul
            dmul
            dstore 29 /* mult */
        39: .line 162
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.SpecularLightingRed.bumpMap:Lorg/apache/batik/ext/awt/image/rendered/BumpMap;
            iload 9 /* minX */
            iload 10 /* minY */
            iload 7 /* w */
            iload 8 /* h */
            invokevirtual org.apache.batik.ext.awt.image.rendered.BumpMap.getNormalArray:(IIII)[[[D
            astore 33 /* NA */
        start local 33 // double[][][] NA
        40: .line 165
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.SpecularLightingRed.light:Lorg/apache/batik/ext/awt/image/Light;
            instanceof org.apache.batik.ext.awt.image.SpotLight
            ifeq 70
        41: .line 166
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.SpecularLightingRed.light:Lorg/apache/batik/ext/awt/image/Light;
            checkcast org.apache.batik.ext.awt.image.SpotLight
            astore 34 /* slight */
        start local 34 // org.apache.batik.ext.awt.image.SpotLight slight
        42: .line 167
            iload 7 /* w */
            iconst_4
            multianewarray [[D 2
            astore 35 /* LA */
        start local 35 // double[][] LA
        43: .line 168
            iconst_0
            istore 19 /* i */
            goto 68
        44: .line 170
      StackMap locals: org.apache.batik.ext.awt.image.rendered.SpecularLightingRed java.awt.image.WritableRaster double double double[] int int int int java.awt.image.DataBufferInt int[] java.awt.image.SinglePixelPackedSampleModel int int int int int int int double double double int int double double double[][][] org.apache.batik.ext.awt.image.SpotLight double[][]
      StackMap stack:
            aload 33 /* NA */
            iload 19 /* i */
            aaload
            astore 36 /* NR */
        start local 36 // double[][] NR
        45: .line 171
            aload 34 /* slight */
            dload 21 /* x */
            dload 23 /* y */
            iload 19 /* i */
            i2d
            dload 4 /* scaleY */
            dmul
            dadd
            dload 2 /* scaleX */
            iload 7 /* w */
            aload 36 /* NR */
            aload 35 /* LA */
            invokevirtual org.apache.batik.ext.awt.image.SpotLight.getLightRow4:(DDDI[[D[[D)[[D
            pop
        46: .line 172
            iconst_0
            istore 20 /* j */
            goto 65
        47: .line 174
      StackMap locals: double[][]
      StackMap stack:
            aload 36 /* NR */
            iload 20 /* j */
            aaload
            astore 37 /* N */
        start local 37 // double[] N
        48: .line 177
            aload 35 /* LA */
            iload 20 /* j */
            aaload
            astore 38 /* L */
        start local 38 // double[] L
        49: .line 178
            aload 38 /* L */
            iconst_3
            daload
            dstore 39 /* vs */
        start local 39 // double vs
        50: .line 179
            dload 39 /* vs */
            dconst_0
            dcmpl
            ifne 53
        51: .line 180
            iconst_0
            istore 18 /* a */
        52: .line 181
            goto 63
        53: .line 182
      StackMap locals: double[] double[] double
      StackMap stack:
            aload 38 /* L */
            iconst_2
            dup2
            daload
            dconst_1
            dadd
            dastore
        54: .line 183
            aload 38 /* L */
            iconst_0
            daload
            aload 38 /* L */
            iconst_0
            daload
            dmul
            aload 38 /* L */
            iconst_1
            daload
            aload 38 /* L */
            iconst_1
            daload
            dmul
            dadd
            aload 38 /* L */
            iconst_2
            daload
            aload 38 /* L */
            iconst_2
            daload
            dmul
            dadd
            dstore 25 /* norm */
        55: .line 184
            dload 25 /* norm */
            invokestatic java.lang.Math.sqrt:(D)D
            dstore 25 /* norm */
        56: .line 185
            aload 37 /* N */
            iconst_0
            daload
            aload 38 /* L */
            iconst_0
            daload
            dmul
            aload 37 /* N */
            iconst_1
            daload
            aload 38 /* L */
            iconst_1
            daload
            dmul
            dadd
            aload 37 /* N */
            iconst_2
            daload
            aload 38 /* L */
            iconst_2
            daload
            dmul
            dadd
            dstore 41 /* dot */
        start local 41 // double dot
        57: .line 186
            dload 39 /* vs */
            dload 41 /* dot */
            dload 25 /* norm */
            ddiv
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.SpecularLightingRed.specularExponent:D
            invokestatic java.lang.Math.pow:(DD)D
            dmul
            dstore 39 /* vs */
        58: .line 187
            dload 29 /* mult */
            dload 39 /* vs */
            dmul
            ldc 0.5
            dadd
            d2i
            istore 18 /* a */
        59: .line 188
            iload 18 /* a */
            sipush -256
            iand
            ifeq 63
        60: .line 189
            iload 18 /* a */
            ldc -2147483648
            iand
            ifeq 61
            iconst_0
            goto 62
      StackMap locals: double
      StackMap stack:
        61: sipush 255
      StackMap locals:
      StackMap stack: int
        62: istore 18 /* a */
        end local 41 // double dot
        63: .line 191
      StackMap locals:
      StackMap stack:
            aload 12 /* pixels */
            iload 17 /* p */
            iinc 17 /* p */ 1
            iload 18 /* a */
            bipush 24
            ishl
            iload 27 /* pixel */
            ior
            iastore
        end local 39 // double vs
        end local 38 // double[] L
        end local 37 // double[] N
        64: .line 172
            iinc 20 /* j */ 1
      StackMap locals:
      StackMap stack:
        65: iload 20 /* j */
            iload 7 /* w */
            if_icmplt 47
        66: .line 193
            iload 17 /* p */
            iload 16 /* adjust */
            iadd
            istore 17 /* p */
        end local 36 // double[][] NR
        67: .line 168
            iinc 19 /* i */ 1
      StackMap locals:
      StackMap stack:
        68: iload 19 /* i */
            iload 8 /* h */
            if_icmplt 44
        end local 35 // double[][] LA
        end local 34 // org.apache.batik.ext.awt.image.SpotLight slight
        69: .line 195
            goto 122
      StackMap locals:
      StackMap stack:
        70: aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.SpecularLightingRed.light:Lorg/apache/batik/ext/awt/image/Light;
            invokeinterface org.apache.batik.ext.awt.image.Light.isConstant:()Z
            ifne 95
        71: .line 196
            iload 7 /* w */
            iconst_4
            multianewarray [[D 2
            astore 34 /* LA */
        start local 34 // double[][] LA
        72: .line 197
            iconst_0
            istore 19 /* i */
            goto 93
        73: .line 199
      StackMap locals: double[][]
      StackMap stack:
            aload 33 /* NA */
            iload 19 /* i */
            aaload
            astore 35 /* NR */
        start local 35 // double[][] NR
        74: .line 200
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.SpecularLightingRed.light:Lorg/apache/batik/ext/awt/image/Light;
            dload 21 /* x */
            dload 23 /* y */
            iload 19 /* i */
            i2d
            dload 4 /* scaleY */
            dmul
            dadd
            dload 2 /* scaleX */
            iload 7 /* w */
            aload 35 /* NR */
            aload 34 /* LA */
            invokeinterface org.apache.batik.ext.awt.image.Light.getLightRow:(DDDI[[D[[D)[[D
            pop
        75: .line 201
            iconst_0
            istore 20 /* j */
            goto 90
        76: .line 203
      StackMap locals: double[][]
      StackMap stack:
            aload 35 /* NR */
            iload 20 /* j */
            aaload
            astore 36 /* N */
        start local 36 // double[] N
        77: .line 206
            aload 34 /* LA */
            iload 20 /* j */
            aaload
            astore 37 /* L */
        start local 37 // double[] L
        78: .line 207
            aload 37 /* L */
            iconst_2
            dup2
            daload
            dconst_1
            dadd
            dastore
        79: .line 208
            aload 37 /* L */
            iconst_0
            daload
            aload 37 /* L */
            iconst_0
            daload
            dmul
            aload 37 /* L */
            iconst_1
            daload
            aload 37 /* L */
            iconst_1
            daload
            dmul
            dadd
            aload 37 /* L */
            iconst_2
            daload
            aload 37 /* L */
            iconst_2
            daload
            dmul
            dadd
            dstore 25 /* norm */
        80: .line 209
            dload 25 /* norm */
            invokestatic java.lang.Math.sqrt:(D)D
            dstore 25 /* norm */
        81: .line 210
            aload 36 /* N */
            iconst_0
            daload
            aload 37 /* L */
            iconst_0
            daload
            dmul
            aload 36 /* N */
            iconst_1
            daload
            aload 37 /* L */
            iconst_1
            daload
            dmul
            dadd
            aload 36 /* N */
            iconst_2
            daload
            aload 37 /* L */
            iconst_2
            daload
            dmul
            dadd
            dstore 38 /* dot */
        start local 38 // double dot
        82: .line 212
            dload 38 /* dot */
            dload 25 /* norm */
            ddiv
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.SpecularLightingRed.specularExponent:D
            invokestatic java.lang.Math.pow:(DD)D
            dstore 25 /* norm */
        83: .line 213
            dload 29 /* mult */
            dload 25 /* norm */
            dmul
            ldc 0.5
            dadd
            d2i
            istore 18 /* a */
        84: .line 214
            iload 18 /* a */
            sipush -256
            iand
            ifeq 88
        85: .line 215
            iload 18 /* a */
            ldc -2147483648
            iand
            ifeq 86
            iconst_0
            goto 87
      StackMap locals: double[] double[] double
      StackMap stack:
        86: sipush 255
      StackMap locals:
      StackMap stack: int
        87: istore 18 /* a */
        88: .line 216
      StackMap locals:
      StackMap stack:
            aload 12 /* pixels */
            iload 17 /* p */
            iinc 17 /* p */ 1
            iload 18 /* a */
            bipush 24
            ishl
            iload 27 /* pixel */
            ior
            iastore
        end local 38 // double dot
        end local 37 // double[] L
        end local 36 // double[] N
        89: .line 201
            iinc 20 /* j */ 1
      StackMap locals:
      StackMap stack:
        90: iload 20 /* j */
            iload 7 /* w */
            if_icmplt 76
        91: .line 218
            iload 17 /* p */
            iload 16 /* adjust */
            iadd
            istore 17 /* p */
        end local 35 // double[][] NR
        92: .line 197
            iinc 19 /* i */ 1
      StackMap locals:
      StackMap stack:
        93: iload 19 /* i */
            iload 8 /* h */
            if_icmplt 73
        end local 34 // double[][] LA
        94: .line 220
            goto 122
        95: .line 223
      StackMap locals:
      StackMap stack:
            iconst_3
            newarray 7
            astore 34 /* L */
        start local 34 // double[] L
        96: .line 224
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.SpecularLightingRed.light:Lorg/apache/batik/ext/awt/image/Light;
            dconst_0
            dconst_0
            dconst_0
            aload 34 /* L */
            invokeinterface org.apache.batik.ext.awt.image.Light.getLight:(DDD[D)V
        97: .line 227
            aload 34 /* L */
            iconst_2
            dup2
            daload
            dconst_1
            dadd
            dastore
        98: .line 228
            aload 34 /* L */
            iconst_0
            daload
            aload 34 /* L */
            iconst_0
            daload
            dmul
            aload 34 /* L */
            iconst_1
            daload
            aload 34 /* L */
            iconst_1
            daload
            dmul
            dadd
            aload 34 /* L */
            iconst_2
            daload
            aload 34 /* L */
            iconst_2
            daload
            dmul
            dadd
            invokestatic java.lang.Math.sqrt:(D)D
            dstore 25 /* norm */
        99: .line 229
            dload 25 /* norm */
            dconst_0
            dcmpl
            ifle 103
       100: .line 230
            aload 34 /* L */
            iconst_0
            dup2
            daload
            dload 25 /* norm */
            ddiv
            dastore
       101: .line 231
            aload 34 /* L */
            iconst_1
            dup2
            daload
            dload 25 /* norm */
            ddiv
            dastore
       102: .line 232
            aload 34 /* L */
            iconst_2
            dup2
            daload
            dload 25 /* norm */
            ddiv
            dastore
       103: .line 235
      StackMap locals: double[]
      StackMap stack:
            iconst_0
            istore 19 /* i */
            goto 121
       104: .line 236
      StackMap locals:
      StackMap stack:
            aload 33 /* NA */
            iload 19 /* i */
            aaload
            astore 35 /* NR */
        start local 35 // double[][] NR
       105: .line 237
            iconst_0
            istore 20 /* j */
            goto 118
       106: .line 239
      StackMap locals: double[][]
      StackMap stack:
            aload 35 /* NR */
            iload 20 /* j */
            aaload
            astore 36 /* N */
        start local 36 // double[] N
       107: .line 241
            dload 29 /* mult */
            aload 36 /* N */
            iconst_0
            daload
            aload 34 /* L */
            iconst_0
            daload
            dmul
            aload 36 /* N */
            iconst_1
            daload
            aload 34 /* L */
            iconst_1
            daload
            dmul
            dadd
            aload 36 /* N */
            iconst_2
            daload
            aload 34 /* L */
            iconst_2
            daload
            dmul
            dadd
       108: .line 242
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.SpecularLightingRed.specularExponent:D
       109: .line 241
            invokestatic java.lang.Math.pow:(DD)D
            dmul
       110: .line 242
            ldc 0.5
       111: .line 241
            dadd
            d2i
            istore 18 /* a */
       112: .line 244
            iload 18 /* a */
            sipush -256
            iand
            ifeq 116
       113: .line 245
            iload 18 /* a */
            ldc -2147483648
            iand
            ifeq 114
            iconst_0
            goto 115
      StackMap locals: double[]
      StackMap stack:
       114: sipush 255
      StackMap locals:
      StackMap stack: int
       115: istore 18 /* a */
       116: .line 247
      StackMap locals:
      StackMap stack:
            aload 12 /* pixels */
            iload 17 /* p */
            iinc 17 /* p */ 1
            iload 18 /* a */
            bipush 24
            ishl
            iload 27 /* pixel */
            ior
            iastore
        end local 36 // double[] N
       117: .line 237
            iinc 20 /* j */ 1
      StackMap locals:
      StackMap stack:
       118: iload 20 /* j */
            iload 7 /* w */
            if_icmplt 106
       119: .line 249
            iload 17 /* p */
            iload 16 /* adjust */
            iadd
            istore 17 /* p */
        end local 35 // double[][] NR
       120: .line 235
            iinc 19 /* i */ 1
      StackMap locals:
      StackMap stack:
       121: iload 19 /* i */
            iload 8 /* h */
            if_icmplt 104
        end local 34 // double[] L
       122: .line 253
      StackMap locals:
      StackMap stack:
            return
        end local 33 // double[][][] NA
        end local 31 // double scale
        end local 29 // double mult
        end local 28 // int tmp
        end local 27 // int pixel
        end local 25 // double norm
        end local 23 // double y
        end local 21 // double x
        end local 20 // int j
        end local 19 // int i
        end local 18 // int a
        end local 17 // int p
        end local 16 // int adjust
        end local 15 // int scanStride
        end local 14 // int offset
        end local 13 // java.awt.image.SinglePixelPackedSampleModel sppsm
        end local 12 // int[] pixels
        end local 11 // java.awt.image.DataBufferInt db
        end local 10 // int minY
        end local 9 // int minX
        end local 8 // int h
        end local 7 // int w
        end local 6 // double[] lightColor
        end local 4 // double scaleY
        end local 2 // double scaleX
        end local 1 // java.awt.image.WritableRaster wr
        end local 0 // org.apache.batik.ext.awt.image.rendered.SpecularLightingRed this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0  123     0        this  Lorg/apache/batik/ext/awt/image/rendered/SpecularLightingRed;
            0  123     1          wr  Ljava/awt/image/WritableRaster;
            1  123     2      scaleX  D
            2  123     4      scaleY  D
            3  123     6  lightColor  [D
            4  123     7           w  I
            5  123     8           h  I
            6  123     9        minX  I
            7  123    10        minY  I
            8  123    11          db  Ljava/awt/image/DataBufferInt;
            9  123    12      pixels  [I
           10  123    13       sppsm  Ljava/awt/image/SinglePixelPackedSampleModel;
           16  123    14      offset  I
           17  123    15  scanStride  I
           18  123    16      adjust  I
           19  123    17           p  I
           20  123    18           a  I
           21  123    19           i  I
           22  123    20           j  I
           23  123    21           x  D
           24  123    23           y  D
           25  123    25        norm  D
           26  123    27       pixel  I
           35  123    28         tmp  I
           29  123    29        mult  D
           33  123    31       scale  D
           40  123    33          NA  [[[D
           42   69    34      slight  Lorg/apache/batik/ext/awt/image/SpotLight;
           43   69    35          LA  [[D
           45   67    36          NR  [[D
           48   64    37           N  [D
           49   64    38           L  [D
           50   64    39          vs  D
           57   63    41         dot  D
           72   94    34          LA  [[D
           74   92    35          NR  [[D
           77   89    36           N  [D
           78   89    37           L  [D
           82   89    38         dot  D
           96  122    34           L  [D
          105  120    35          NR  [[D
          107  117    36           N  [D
    MethodParameters:
      Name  Flags
      wr    
}
SourceFile: "SpecularLightingRed.java"