public final class org.apache.batik.ext.awt.image.rendered.BumpMap
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: org.apache.batik.ext.awt.image.rendered.BumpMap
  super_class: java.lang.Object
{
  private java.awt.image.RenderedImage texture;
    descriptor: Ljava/awt/image/RenderedImage;
    flags: (0x0002) ACC_PRIVATE

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

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

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

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

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

  public void <init>(java.awt.image.RenderedImage, double, double, double);
    descriptor: (Ljava/awt/image/RenderedImage;DDD)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=8, args_size=5
        start local 0 // org.apache.batik.ext.awt.image.rendered.BumpMap this
        start local 1 // java.awt.image.RenderedImage texture
        start local 2 // double surfaceScale
        start local 4 // double scaleX
        start local 6 // double scaleY
         0: .line 55
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 58
            aload 0 /* this */
            aload 1 /* texture */
            putfield org.apache.batik.ext.awt.image.rendered.BumpMap.texture:Ljava/awt/image/RenderedImage;
         2: .line 59
            aload 0 /* this */
            dload 2 /* surfaceScale */
            dload 4 /* scaleX */
            dmul
            putfield org.apache.batik.ext.awt.image.rendered.BumpMap.surfaceScaleX:D
         3: .line 60
            aload 0 /* this */
            dload 2 /* surfaceScale */
            dload 6 /* scaleY */
            dmul
            putfield org.apache.batik.ext.awt.image.rendered.BumpMap.surfaceScaleY:D
         4: .line 61
            aload 0 /* this */
            dload 2 /* surfaceScale */
            putfield org.apache.batik.ext.awt.image.rendered.BumpMap.surfaceScale:D
         5: .line 62
            aload 0 /* this */
            dload 4 /* scaleX */
            putfield org.apache.batik.ext.awt.image.rendered.BumpMap.scaleX:D
         6: .line 63
            aload 0 /* this */
            dload 6 /* scaleY */
            putfield org.apache.batik.ext.awt.image.rendered.BumpMap.scaleY:D
         7: .line 64
            return
        end local 6 // double scaleY
        end local 4 // double scaleX
        end local 2 // double surfaceScale
        end local 1 // java.awt.image.RenderedImage texture
        end local 0 // org.apache.batik.ext.awt.image.rendered.BumpMap this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    8     0          this  Lorg/apache/batik/ext/awt/image/rendered/BumpMap;
            0    8     1       texture  Ljava/awt/image/RenderedImage;
            0    8     2  surfaceScale  D
            0    8     4        scaleX  D
            0    8     6        scaleY  D
    MethodParameters:
              Name  Flags
      texture       
      surfaceScale  
      scaleX        
      scaleY        

  public double getSurfaceScale();
    descriptor: ()D
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.batik.ext.awt.image.rendered.BumpMap this
         0: .line 70
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.BumpMap.surfaceScale:D
            dreturn
        end local 0 // org.apache.batik.ext.awt.image.rendered.BumpMap this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/batik/ext/awt/image/rendered/BumpMap;

  public double[][][] getNormalArray(int, int, int, int);
    descriptor: (IIII)[[[D
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=12, locals=59, args_size=5
        start local 0 // org.apache.batik.ext.awt.image.rendered.BumpMap this
        start local 1 // int x
        start local 2 // int y
        start local 3 // int w
        start local 4 // int h
         0: .line 81
            iload 4 /* h */
            iload 3 /* w */
            iconst_4
            multianewarray [[[D 3
            astore 5 /* N */
        start local 5 // double[][][] N
         1: .line 83
            new java.awt.Rectangle
            dup
            iload 1 /* x */
            iconst_1
            isub
            iload 2 /* y */
            iconst_1
            isub
            iload 3 /* w */
            iconst_2
            iadd
            iload 4 /* h */
            iconst_2
            iadd
            invokespecial java.awt.Rectangle.<init>:(IIII)V
            astore 6 /* srcRect */
        start local 6 // java.awt.Rectangle srcRect
         2: .line 84
            new java.awt.Rectangle
            dup
         3: .line 85
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.BumpMap.texture:Ljava/awt/image/RenderedImage;
            invokeinterface java.awt.image.RenderedImage.getMinX:()I
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.BumpMap.texture:Ljava/awt/image/RenderedImage;
            invokeinterface java.awt.image.RenderedImage.getMinY:()I
         4: .line 86
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.BumpMap.texture:Ljava/awt/image/RenderedImage;
            invokeinterface java.awt.image.RenderedImage.getWidth:()I
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.BumpMap.texture:Ljava/awt/image/RenderedImage;
            invokeinterface java.awt.image.RenderedImage.getHeight:()I
         5: .line 84
            invokespecial java.awt.Rectangle.<init>:(IIII)V
            astore 7 /* srcBound */
        start local 7 // java.awt.Rectangle srcBound
         6: .line 88
            aload 6 /* srcRect */
            aload 7 /* srcBound */
            invokevirtual java.awt.Rectangle.intersects:(Ljava/awt/Rectangle;)Z
            ifne 8
         7: .line 89
            aload 5 /* N */
            areturn
         8: .line 91
      StackMap locals: double[][][] java.awt.Rectangle java.awt.Rectangle
      StackMap stack:
            aload 6 /* srcRect */
            aload 7 /* srcBound */
            invokevirtual java.awt.Rectangle.intersection:(Ljava/awt/Rectangle;)Ljava/awt/Rectangle;
            astore 6 /* srcRect */
         9: .line 92
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.BumpMap.texture:Ljava/awt/image/RenderedImage;
            aload 6 /* srcRect */
            invokeinterface java.awt.image.RenderedImage.getData:(Ljava/awt/Rectangle;)Ljava/awt/image/Raster;
            astore 8 /* r */
        start local 8 // java.awt.image.Raster r
        10: .line 94
            aload 8 /* r */
            invokevirtual java.awt.image.Raster.getBounds:()Ljava/awt/Rectangle;
            astore 6 /* srcRect */
        11: .line 101
            aload 8 /* r */
            invokevirtual java.awt.image.Raster.getDataBuffer:()Ljava/awt/image/DataBuffer;
            checkcast java.awt.image.DataBufferInt
            astore 9 /* db */
        start local 9 // java.awt.image.DataBufferInt db
        12: .line 104
            aload 9 /* db */
            invokevirtual java.awt.image.DataBufferInt.getBankData:()[[I
            iconst_0
            aaload
            astore 10 /* pixels */
        start local 10 // int[] pixels
        13: .line 107
            aload 8 /* r */
            invokevirtual java.awt.image.Raster.getSampleModel:()Ljava/awt/image/SampleModel;
            checkcast java.awt.image.SinglePixelPackedSampleModel
            astore 11 /* sppsm */
        start local 11 // java.awt.image.SinglePixelPackedSampleModel sppsm
        14: .line 110
            aload 11 /* sppsm */
            invokevirtual java.awt.image.SinglePixelPackedSampleModel.getScanlineStride:()I
            istore 12 /* scanStride */
        start local 12 // int scanStride
        15: .line 111
            iload 12 /* scanStride */
            iconst_1
            iadd
            istore 13 /* scanStridePP */
        start local 13 // int scanStridePP
        16: .line 112
            iload 12 /* scanStride */
            iconst_1
            isub
            istore 14 /* scanStrideMM */
        start local 14 // int scanStrideMM
        17: .line 113
            dconst_0
            dstore 15 /* prpc */
        start local 15 // double prpc
        18: dconst_0
            dstore 17 /* prcc */
        start local 17 // double prcc
        19: dconst_0
            dstore 19 /* prnc */
        start local 19 // double prnc
        20: .line 114
            dconst_0
            dstore 21 /* crpc */
        start local 21 // double crpc
        21: dconst_0
            dstore 23 /* crcc */
        start local 23 // double crcc
        22: dconst_0
            dstore 25 /* crnc */
        start local 25 // double crnc
        23: .line 115
            dconst_0
            dstore 27 /* nrpc */
        start local 27 // double nrpc
        24: dconst_0
            dstore 29 /* nrcc */
        start local 29 // double nrcc
        25: dconst_0
            dstore 31 /* nrnc */
        start local 31 // double nrnc
        26: .line 118
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.BumpMap.surfaceScaleX:D
            ldc 4.0
            ddiv
            dstore 35 /* quarterSurfaceScaleX */
        start local 35 // double quarterSurfaceScaleX
        27: .line 119
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.BumpMap.surfaceScaleY:D
            ldc 4.0
            ddiv
            dstore 37 /* quarterSurfaceScaleY */
        start local 37 // double quarterSurfaceScaleY
        28: .line 120
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.BumpMap.surfaceScaleX:D
            ldc 2.0
            ddiv
            dstore 39 /* halfSurfaceScaleX */
        start local 39 // double halfSurfaceScaleX
        29: .line 121
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.BumpMap.surfaceScaleY:D
            ldc 2.0
            ddiv
            dstore 41 /* halfSurfaceScaleY */
        start local 41 // double halfSurfaceScaleY
        30: .line 122
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.BumpMap.surfaceScaleX:D
            ldc 3.0
            ddiv
            dstore 43 /* thirdSurfaceScaleX */
        start local 43 // double thirdSurfaceScaleX
        31: .line 123
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.BumpMap.surfaceScaleY:D
            ldc 3.0
            ddiv
            dstore 45 /* thirdSurfaceScaleY */
        start local 45 // double thirdSurfaceScaleY
        32: .line 124
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.BumpMap.surfaceScaleX:D
            ldc 2.0
            dmul
            ldc 3.0
            ddiv
            dstore 47 /* twoThirdSurfaceScaleX */
        start local 47 // double twoThirdSurfaceScaleX
        33: .line 125
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.BumpMap.surfaceScaleY:D
            ldc 2.0
            dmul
            ldc 3.0
            ddiv
            dstore 49 /* twoThirdSurfaceScaleY */
        start local 49 // double twoThirdSurfaceScaleY
        34: .line 129
            iload 3 /* w */
            ifgt 36
        35: .line 130
            aload 5 /* N */
            areturn
        36: .line 132
      StackMap locals: org.apache.batik.ext.awt.image.rendered.BumpMap int int int int double[][][] java.awt.Rectangle java.awt.Rectangle java.awt.image.Raster java.awt.image.DataBufferInt int[] java.awt.image.SinglePixelPackedSampleModel int int int double double double double double double double double double top top double double double double double double double double
      StackMap stack:
            iload 4 /* h */
            ifgt 38
        37: .line 133
            aload 5 /* N */
            areturn
        38: .line 135
      StackMap locals:
      StackMap stack:
            aload 6 /* srcRect */
            getfield java.awt.Rectangle.x:I
            aload 6 /* srcRect */
            getfield java.awt.Rectangle.width:I
            iadd
            iconst_1
            isub
            iload 1 /* x */
            iload 3 /* w */
            iadd
            invokestatic java.lang.Math.min:(II)I
            istore 51 /* xEnd */
        start local 51 // int xEnd
        39: .line 136
            aload 6 /* srcRect */
            getfield java.awt.Rectangle.y:I
            aload 6 /* srcRect */
            getfield java.awt.Rectangle.height:I
            iadd
            iconst_1
            isub
            iload 2 /* y */
            iload 4 /* h */
            iadd
            invokestatic java.lang.Math.min:(II)I
            istore 52 /* yEnd */
        start local 52 // int yEnd
        40: .line 138
            aload 9 /* db */
            invokevirtual java.awt.image.DataBufferInt.getOffset:()I
        41: .line 139
            aload 11 /* sppsm */
            aload 6 /* srcRect */
            getfield java.awt.Rectangle.x:I
            aload 8 /* r */
            invokevirtual java.awt.image.Raster.getSampleModelTranslateX:()I
            isub
        42: .line 140
            aload 6 /* srcRect */
            getfield java.awt.Rectangle.y:I
            aload 8 /* r */
            invokevirtual java.awt.image.Raster.getSampleModelTranslateY:()I
            isub
        43: .line 139
            invokevirtual java.awt.image.SinglePixelPackedSampleModel.getOffset:(II)I
        44: .line 138
            iadd
        45: .line 137
            istore 53 /* offset */
        start local 53 // int offset
        46: .line 142
            iload 2 /* y */
            istore 54 /* yloc */
        start local 54 // int yloc
        47: .line 143
            iload 54 /* yloc */
            aload 6 /* srcRect */
            getfield java.awt.Rectangle.y:I
            if_icmpge 49
        48: .line 144
            aload 6 /* srcRect */
            getfield java.awt.Rectangle.y:I
            istore 54 /* yloc */
        49: .line 148
      StackMap locals: org.apache.batik.ext.awt.image.rendered.BumpMap int int int int double[][][] java.awt.Rectangle java.awt.Rectangle java.awt.image.Raster java.awt.image.DataBufferInt int[] java.awt.image.SinglePixelPackedSampleModel int int int double double double double double double double double double top top double double double double double double double double int int int int
      StackMap stack:
            iload 54 /* yloc */
            aload 6 /* srcRect */
            getfield java.awt.Rectangle.y:I
            if_icmpne 257
        50: .line 149
            iload 54 /* yloc */
            iload 52 /* yEnd */
            if_icmpne 101
        51: .line 151
            aload 5 /* N */
            iload 54 /* yloc */
            iload 2 /* y */
            isub
            aaload
            astore 55 /* NRow */
        start local 55 // double[][] NRow
        52: .line 152
            iload 1 /* x */
            istore 56 /* xloc */
        start local 56 // int xloc
        53: .line 153
            iload 56 /* xloc */
            aload 6 /* srcRect */
            getfield java.awt.Rectangle.x:I
            if_icmpge 55
        54: .line 154
            aload 6 /* srcRect */
            getfield java.awt.Rectangle.x:I
            istore 56 /* xloc */
        55: .line 155
      StackMap locals: double[][] int
      StackMap stack:
            iload 53 /* offset */
            iload 56 /* xloc */
            aload 6 /* srcRect */
            getfield java.awt.Rectangle.x:I
            isub
            iadd
        56: .line 156
            iload 12 /* scanStride */
            iload 54 /* yloc */
            aload 6 /* srcRect */
            getfield java.awt.Rectangle.y:I
            isub
            imul
        57: .line 155
            iadd
            istore 57 /* p */
        start local 57 // int p
        58: .line 158
            aload 10 /* pixels */
            iload 57 /* p */
            iaload
            bipush 24
            iushr
            i2d
            ldc 0.00392156862745098
            dmul
            dstore 23 /* crcc */
        59: .line 160
            iload 56 /* xloc */
            aload 6 /* srcRect */
            getfield java.awt.Rectangle.x:I
            if_icmpeq 62
        60: .line 161
            aload 10 /* pixels */
            iload 57 /* p */
            iconst_1
            isub
            iaload
            bipush 24
            iushr
            i2d
            ldc 0.00392156862745098
            dmul
            dstore 21 /* crpc */
        61: .line 162
            goto 90
        62: .line 163
      StackMap locals: int
      StackMap stack:
            iload 56 /* xloc */
            iload 51 /* xEnd */
            if_icmpge 76
        63: .line 165
            aload 10 /* pixels */
            iload 57 /* p */
            iconst_1
            iadd
            iaload
            bipush 24
            iushr
            i2d
            ldc 0.00392156862745098
            dmul
            dstore 25 /* crnc */
        64: .line 167
            aload 55 /* NRow */
            iload 56 /* xloc */
            iload 1 /* x */
            isub
            aaload
            astore 58 /* n */
        start local 58 // double[] n
        65: .line 169
            aload 58 /* n */
            iconst_0
            ldc 2.0
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.BumpMap.surfaceScaleX:D
            dmul
            dload 23 /* crcc */
            dload 25 /* crnc */
            dsub
            dmul
            dastore
        66: .line 170
            dconst_1
            aload 58 /* n */
            iconst_0
            daload
            aload 58 /* n */
            iconst_0
            daload
            dmul
            dconst_1
            dadd
            invokestatic java.lang.Math.sqrt:(D)D
            ddiv
            dstore 33 /* invNorm */
        start local 33 // double invNorm
        67: .line 171
            aload 58 /* n */
            iconst_0
            dup2
            daload
            dload 33 /* invNorm */
            dmul
            dastore
        68: .line 172
            aload 58 /* n */
            iconst_1
            dconst_0
            dastore
        69: .line 173
            aload 58 /* n */
            iconst_2
            dload 33 /* invNorm */
            dastore
        70: .line 174
            aload 58 /* n */
            iconst_3
            dload 23 /* crcc */
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.BumpMap.surfaceScale:D
            dmul
            dastore
        71: .line 175
            iinc 57 /* p */ 1
        72: .line 176
            iinc 56 /* xloc */ 1
        73: .line 177
            dload 23 /* crcc */
            dstore 21 /* crpc */
        74: .line 178
            dload 25 /* crnc */
            dstore 23 /* crcc */
        end local 58 // double[] n
        75: .line 179
            goto 90
        end local 33 // double invNorm
        76: .line 181
      StackMap locals:
      StackMap stack:
            dload 23 /* crcc */
            dstore 21 /* crpc */
        77: .line 184
            goto 90
        78: .line 186
      StackMap locals:
      StackMap stack:
            aload 10 /* pixels */
            iload 57 /* p */
            iconst_1
            iadd
            iaload
            bipush 24
            iushr
            i2d
            ldc 0.00392156862745098
            dmul
            dstore 25 /* crnc */
        79: .line 187
            aload 55 /* NRow */
            iload 56 /* xloc */
            iload 1 /* x */
            isub
            aaload
            astore 58 /* n */
        start local 58 // double[] n
        80: .line 189
            aload 58 /* n */
            iconst_0
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.BumpMap.surfaceScaleX:D
            dload 21 /* crpc */
            dload 25 /* crnc */
            dsub
            dmul
            dastore
        81: .line 190
            dconst_1
            aload 58 /* n */
            iconst_0
            daload
            aload 58 /* n */
            iconst_0
            daload
            dmul
            dconst_1
            dadd
            invokestatic java.lang.Math.sqrt:(D)D
            ddiv
            dstore 33 /* invNorm */
        start local 33 // double invNorm
        82: .line 191
            aload 58 /* n */
            iconst_0
            dup2
            daload
            dload 33 /* invNorm */
            dmul
            dastore
        83: .line 192
            aload 58 /* n */
            iconst_1
            dconst_0
            dastore
        84: .line 193
            aload 58 /* n */
            iconst_2
            dload 33 /* invNorm */
            dastore
        85: .line 194
            aload 58 /* n */
            iconst_3
            dload 23 /* crcc */
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.BumpMap.surfaceScale:D
            dmul
            dastore
        86: .line 195
            iinc 57 /* p */ 1
        87: .line 196
            dload 23 /* crcc */
            dstore 21 /* crpc */
        88: .line 197
            dload 25 /* crnc */
            dstore 23 /* crcc */
        end local 58 // double[] n
        89: .line 184
            iinc 56 /* xloc */ 1
        end local 33 // double invNorm
      StackMap locals:
      StackMap stack:
        90: iload 56 /* xloc */
            iload 51 /* xEnd */
            if_icmplt 78
        91: .line 200
            iload 56 /* xloc */
            iload 1 /* x */
            iload 3 /* w */
            iadd
            if_icmpge 100
        92: .line 201
            iload 56 /* xloc */
            aload 6 /* srcRect */
            getfield java.awt.Rectangle.x:I
            aload 6 /* srcRect */
            getfield java.awt.Rectangle.width:I
            iadd
            iconst_1
            isub
            if_icmpne 100
        93: .line 203
            aload 55 /* NRow */
            iload 56 /* xloc */
            iload 1 /* x */
            isub
            aaload
            astore 58 /* n */
        start local 58 // double[] n
        94: .line 205
            aload 58 /* n */
            iconst_0
            ldc 2.0
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.BumpMap.surfaceScaleX:D
            dmul
            dload 21 /* crpc */
            dload 23 /* crcc */
            dsub
            dmul
            dastore
        95: .line 206
            dconst_1
            aload 58 /* n */
            iconst_0
            daload
            aload 58 /* n */
            iconst_0
            daload
            dmul
            aload 58 /* n */
            iconst_1
            daload
            aload 58 /* n */
            iconst_1
            daload
            dmul
            dadd
            dconst_1
            dadd
            invokestatic java.lang.Math.sqrt:(D)D
            ddiv
            dstore 33 /* invNorm */
        start local 33 // double invNorm
        96: .line 207
            aload 58 /* n */
            iconst_0
            dup2
            daload
            dload 33 /* invNorm */
            dmul
            dastore
        97: .line 208
            aload 58 /* n */
            iconst_1
            dup2
            daload
            dload 33 /* invNorm */
            dmul
            dastore
        98: .line 209
            aload 58 /* n */
            iconst_2
            dload 33 /* invNorm */
            dastore
        99: .line 210
            aload 58 /* n */
            iconst_3
            dload 23 /* crcc */
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.BumpMap.surfaceScale:D
            dmul
            dastore
        end local 58 // double[] n
        end local 33 // double invNorm
       100: .line 212
      StackMap locals:
      StackMap stack:
            aload 5 /* N */
            areturn
        end local 57 // int p
        end local 56 // int xloc
        end local 55 // double[][] NRow
       101: .line 215
      StackMap locals:
      StackMap stack:
            aload 5 /* N */
            iload 54 /* yloc */
            iload 2 /* y */
            isub
            aaload
            astore 55 /* NRow */
        start local 55 // double[][] NRow
       102: .line 216
            iload 53 /* offset */
            iload 12 /* scanStride */
            iload 54 /* yloc */
            aload 6 /* srcRect */
            getfield java.awt.Rectangle.y:I
            isub
            imul
            iadd
            istore 56 /* p */
        start local 56 // int p
       103: .line 217
            iload 1 /* x */
            istore 57 /* xloc */
        start local 57 // int xloc
       104: .line 218
            iload 57 /* xloc */
            aload 6 /* srcRect */
            getfield java.awt.Rectangle.x:I
            if_icmpge 106
       105: .line 219
            aload 6 /* srcRect */
            getfield java.awt.Rectangle.x:I
            istore 57 /* xloc */
       106: .line 220
      StackMap locals: double[][] int int
      StackMap stack:
            iload 56 /* p */
            iload 57 /* xloc */
            aload 6 /* srcRect */
            getfield java.awt.Rectangle.x:I
            isub
            iadd
            istore 56 /* p */
       107: .line 222
            aload 10 /* pixels */
            iload 56 /* p */
            iaload
            bipush 24
            iushr
            i2d
            ldc 0.00392156862745098
            dmul
            dstore 23 /* crcc */
       108: .line 223
            aload 10 /* pixels */
            iload 56 /* p */
            iload 12 /* scanStride */
            iadd
            iaload
            bipush 24
            iushr
            i2d
            ldc 0.00392156862745098
            dmul
            dstore 29 /* nrcc */
       109: .line 225
            iload 57 /* xloc */
            aload 6 /* srcRect */
            getfield java.awt.Rectangle.x:I
            if_icmpeq 113
       110: .line 226
            aload 10 /* pixels */
            iload 56 /* p */
            iconst_1
            isub
            iaload
            bipush 24
            iushr
            i2d
            ldc 0.00392156862745098
            dmul
            dstore 21 /* crpc */
       111: .line 227
            aload 10 /* pixels */
            iload 56 /* p */
            iload 14 /* scanStrideMM */
            iadd
            iaload
            bipush 24
            iushr
            i2d
            ldc 0.00392156862745098
            dmul
            dstore 27 /* nrpc */
       112: .line 228
            goto 158
       113: .line 229
      StackMap locals:
      StackMap stack:
            iload 57 /* xloc */
            iload 51 /* xEnd */
            if_icmpge 135
       114: .line 231
            aload 10 /* pixels */
            iload 56 /* p */
            iconst_1
            iadd
            iaload
            bipush 24
            iushr
            i2d
            ldc 0.00392156862745098
            dmul
            dstore 25 /* crnc */
       115: .line 232
            aload 10 /* pixels */
            iload 56 /* p */
            iload 13 /* scanStridePP */
            iadd
            iaload
            bipush 24
            iushr
            i2d
            ldc 0.00392156862745098
            dmul
            dstore 31 /* nrnc */
       116: .line 234
            aload 55 /* NRow */
            iload 57 /* xloc */
            iload 1 /* x */
            isub
            aaload
            astore 58 /* n */
        start local 58 // double[] n
       117: .line 236
            aload 58 /* n */
            iconst_0
            dload 47 /* twoThirdSurfaceScaleX */
            dneg
       118: .line 237
            ldc 2.0
            dload 25 /* crnc */
            dmul
            dload 31 /* nrnc */
            dadd
            ldc 2.0
            dload 23 /* crcc */
            dmul
            dsub
            dload 29 /* nrcc */
            dsub
            dmul
       119: .line 236
            dastore
       120: .line 238
            aload 58 /* n */
            iconst_1
            dload 49 /* twoThirdSurfaceScaleY */
            dneg
       121: .line 239
            ldc 2.0
            dload 29 /* nrcc */
            dmul
            dload 31 /* nrnc */
            dadd
            ldc 2.0
            dload 23 /* crcc */
            dmul
            dsub
            dload 25 /* crnc */
            dsub
            dmul
       122: .line 238
            dastore
       123: .line 240
            dconst_1
            aload 58 /* n */
            iconst_0
            daload
            aload 58 /* n */
            iconst_0
            daload
            dmul
            aload 58 /* n */
            iconst_1
            daload
            aload 58 /* n */
            iconst_1
            daload
            dmul
            dadd
            dconst_1
            dadd
            invokestatic java.lang.Math.sqrt:(D)D
            ddiv
            dstore 33 /* invNorm */
        start local 33 // double invNorm
       124: .line 241
            aload 58 /* n */
            iconst_0
            dup2
            daload
            dload 33 /* invNorm */
            dmul
            dastore
       125: .line 242
            aload 58 /* n */
            iconst_1
            dup2
            daload
            dload 33 /* invNorm */
            dmul
            dastore
       126: .line 243
            aload 58 /* n */
            iconst_2
            dload 33 /* invNorm */
            dastore
       127: .line 244
            aload 58 /* n */
            iconst_3
            dload 23 /* crcc */
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.BumpMap.surfaceScale:D
            dmul
            dastore
       128: .line 245
            iinc 56 /* p */ 1
       129: .line 246
            iinc 57 /* xloc */ 1
       130: .line 247
            dload 23 /* crcc */
            dstore 21 /* crpc */
       131: .line 248
            dload 29 /* nrcc */
            dstore 27 /* nrpc */
       132: .line 249
            dload 25 /* crnc */
            dstore 23 /* crcc */
       133: .line 250
            dload 31 /* nrnc */
            dstore 29 /* nrcc */
        end local 58 // double[] n
       134: .line 251
            goto 158
        end local 33 // double invNorm
       135: .line 253
      StackMap locals:
      StackMap stack:
            dload 23 /* crcc */
            dstore 21 /* crpc */
       136: .line 254
            dload 29 /* nrcc */
            dstore 27 /* nrpc */
       137: .line 257
            goto 158
       138: .line 259
      StackMap locals:
      StackMap stack:
            aload 10 /* pixels */
            iload 56 /* p */
            iconst_1
            iadd
            iaload
            bipush 24
            iushr
            i2d
            ldc 0.00392156862745098
            dmul
            dstore 25 /* crnc */
       139: .line 260
            aload 10 /* pixels */
            iload 56 /* p */
            iload 13 /* scanStridePP */
            iadd
            iaload
            bipush 24
            iushr
            i2d
            ldc 0.00392156862745098
            dmul
            dstore 31 /* nrnc */
       140: .line 262
            aload 55 /* NRow */
            iload 57 /* xloc */
            iload 1 /* x */
            isub
            aaload
            astore 58 /* n */
        start local 58 // double[] n
       141: .line 264
            aload 58 /* n */
            iconst_0
            dload 43 /* thirdSurfaceScaleX */
            dneg
            ldc 2.0
            dload 25 /* crnc */
            dmul
            dload 31 /* nrnc */
            dadd
       142: .line 265
            ldc 2.0
            dload 21 /* crpc */
            dmul
            dload 27 /* nrpc */
            dadd
            dsub
            dmul
       143: .line 264
            dastore
       144: .line 266
            aload 58 /* n */
            iconst_1
            dload 41 /* halfSurfaceScaleY */
            dneg
            dload 27 /* nrpc */
            ldc 2.0
            dload 29 /* nrcc */
            dmul
            dadd
            dload 31 /* nrnc */
            dadd
       145: .line 267
            dload 21 /* crpc */
            ldc 2.0
            dload 23 /* crcc */
            dmul
            dadd
            dload 25 /* crnc */
            dadd
            dsub
            dmul
       146: .line 266
            dastore
       147: .line 269
            dconst_1
            aload 58 /* n */
            iconst_0
            daload
            aload 58 /* n */
            iconst_0
            daload
            dmul
            aload 58 /* n */
            iconst_1
            daload
            aload 58 /* n */
            iconst_1
            daload
            dmul
            dadd
            dconst_1
            dadd
            invokestatic java.lang.Math.sqrt:(D)D
            ddiv
            dstore 33 /* invNorm */
        start local 33 // double invNorm
       148: .line 270
            aload 58 /* n */
            iconst_0
            dup2
            daload
            dload 33 /* invNorm */
            dmul
            dastore
       149: .line 271
            aload 58 /* n */
            iconst_1
            dup2
            daload
            dload 33 /* invNorm */
            dmul
            dastore
       150: .line 272
            aload 58 /* n */
            iconst_2
            dload 33 /* invNorm */
            dastore
       151: .line 273
            aload 58 /* n */
            iconst_3
            dload 23 /* crcc */
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.BumpMap.surfaceScale:D
            dmul
            dastore
       152: .line 274
            iinc 56 /* p */ 1
       153: .line 275
            dload 23 /* crcc */
            dstore 21 /* crpc */
       154: .line 276
            dload 29 /* nrcc */
            dstore 27 /* nrpc */
       155: .line 277
            dload 25 /* crnc */
            dstore 23 /* crcc */
       156: .line 278
            dload 31 /* nrnc */
            dstore 29 /* nrcc */
        end local 58 // double[] n
       157: .line 257
            iinc 57 /* xloc */ 1
        end local 33 // double invNorm
      StackMap locals:
      StackMap stack:
       158: iload 57 /* xloc */
            iload 51 /* xEnd */
            if_icmplt 138
       159: .line 281
            iload 57 /* xloc */
            iload 1 /* x */
            iload 3 /* w */
            iadd
            if_icmpge 173
       160: .line 282
            iload 57 /* xloc */
            aload 6 /* srcRect */
            getfield java.awt.Rectangle.x:I
            aload 6 /* srcRect */
            getfield java.awt.Rectangle.width:I
            iadd
            iconst_1
            isub
            if_icmpne 173
       161: .line 284
            aload 55 /* NRow */
            iload 57 /* xloc */
            iload 1 /* x */
            isub
            aaload
            astore 58 /* n */
        start local 58 // double[] n
       162: .line 286
            aload 58 /* n */
            iconst_0
            dload 47 /* twoThirdSurfaceScaleX */
            dneg
            ldc 2.0
            dload 23 /* crcc */
            dmul
            dload 29 /* nrcc */
            dadd
       163: .line 287
            ldc 2.0
            dload 21 /* crpc */
            dmul
            dload 27 /* nrpc */
            dadd
            dsub
            dmul
       164: .line 286
            dastore
       165: .line 288
            aload 58 /* n */
            iconst_1
            dload 49 /* twoThirdSurfaceScaleY */
            dneg
            ldc 2.0
            dload 29 /* nrcc */
            dmul
            dload 27 /* nrpc */
            dadd
       166: .line 289
            ldc 2.0
            dload 23 /* crcc */
            dmul
            dload 21 /* crpc */
            dadd
            dsub
            dmul
       167: .line 288
            dastore
       168: .line 291
            dconst_1
            aload 58 /* n */
            iconst_0
            daload
            aload 58 /* n */
            iconst_0
            daload
            dmul
            aload 58 /* n */
            iconst_1
            daload
            aload 58 /* n */
            iconst_1
            daload
            dmul
            dadd
            dconst_1
            dadd
            invokestatic java.lang.Math.sqrt:(D)D
            ddiv
            dstore 33 /* invNorm */
        start local 33 // double invNorm
       169: .line 292
            aload 58 /* n */
            iconst_0
            dup2
            daload
            dload 33 /* invNorm */
            dmul
            dastore
       170: .line 293
            aload 58 /* n */
            iconst_1
            dup2
            daload
            dload 33 /* invNorm */
            dmul
            dastore
       171: .line 294
            aload 58 /* n */
            iconst_2
            dload 33 /* invNorm */
            dastore
       172: .line 295
            aload 58 /* n */
            iconst_3
            dload 23 /* crcc */
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.BumpMap.surfaceScale:D
            dmul
            dastore
        end local 58 // double[] n
        end local 33 // double invNorm
       173: .line 297
      StackMap locals:
      StackMap stack:
            iinc 54 /* yloc */ 1
        end local 57 // int xloc
        end local 56 // int p
        end local 55 // double[][] NRow
       174: .line 300
            goto 257
       175: .line 301
      StackMap locals:
      StackMap stack:
            aload 5 /* N */
            iload 54 /* yloc */
            iload 2 /* y */
            isub
            aaload
            astore 55 /* NRow */
        start local 55 // double[][] NRow
       176: .line 302
            iload 53 /* offset */
            iload 12 /* scanStride */
            iload 54 /* yloc */
            aload 6 /* srcRect */
            getfield java.awt.Rectangle.y:I
            isub
            imul
            iadd
            istore 56 /* p */
        start local 56 // int p
       177: .line 304
            iload 1 /* x */
            istore 57 /* xloc */
        start local 57 // int xloc
       178: .line 305
            iload 57 /* xloc */
            aload 6 /* srcRect */
            getfield java.awt.Rectangle.x:I
            if_icmpge 180
       179: .line 306
            aload 6 /* srcRect */
            getfield java.awt.Rectangle.x:I
            istore 57 /* xloc */
       180: .line 308
      StackMap locals: double[][] int int
      StackMap stack:
            iload 56 /* p */
            iload 57 /* xloc */
            aload 6 /* srcRect */
            getfield java.awt.Rectangle.x:I
            isub
            iadd
            istore 56 /* p */
       181: .line 310
            aload 10 /* pixels */
            iload 56 /* p */
            iload 12 /* scanStride */
            isub
            iaload
            bipush 24
            iushr
            i2d
            ldc 0.00392156862745098
            dmul
            dstore 17 /* prcc */
       182: .line 311
            aload 10 /* pixels */
            iload 56 /* p */
            iaload
            bipush 24
            iushr
            i2d
            ldc 0.00392156862745098
            dmul
            dstore 23 /* crcc */
       183: .line 312
            aload 10 /* pixels */
            iload 56 /* p */
            iload 12 /* scanStride */
            iadd
            iaload
            bipush 24
            iushr
            i2d
            ldc 0.00392156862745098
            dmul
            dstore 29 /* nrcc */
       184: .line 314
            iload 57 /* xloc */
            aload 6 /* srcRect */
            getfield java.awt.Rectangle.x:I
            if_icmpeq 189
       185: .line 315
            aload 10 /* pixels */
            iload 56 /* p */
            iload 13 /* scanStridePP */
            isub
            iaload
            bipush 24
            iushr
            i2d
            ldc 0.00392156862745098
            dmul
            dstore 15 /* prpc */
       186: .line 316
            aload 10 /* pixels */
            iload 56 /* p */
            iconst_1
            isub
            iaload
            bipush 24
            iushr
            i2d
            ldc 0.00392156862745098
            dmul
            dstore 21 /* crpc */
       187: .line 317
            aload 10 /* pixels */
            iload 56 /* p */
            iload 14 /* scanStrideMM */
            iadd
            iaload
            bipush 24
            iushr
            i2d
            ldc 0.00392156862745098
            dmul
            dstore 27 /* nrpc */
       188: .line 318
            goto 241
       189: .line 319
      StackMap locals:
      StackMap stack:
            iload 57 /* xloc */
            iload 51 /* xEnd */
            if_icmpge 214
       190: .line 321
            aload 10 /* pixels */
            iload 56 /* p */
            iconst_1
            iadd
            iaload
            bipush 24
            iushr
            i2d
            ldc 0.00392156862745098
            dmul
            dstore 25 /* crnc */
       191: .line 322
            aload 10 /* pixels */
            iload 56 /* p */
            iload 14 /* scanStrideMM */
            isub
            iaload
            bipush 24
            iushr
            i2d
            ldc 0.00392156862745098
            dmul
            dstore 19 /* prnc */
       192: .line 323
            aload 10 /* pixels */
            iload 56 /* p */
            iload 13 /* scanStridePP */
            iadd
            iaload
            bipush 24
            iushr
            i2d
            ldc 0.00392156862745098
            dmul
            dstore 31 /* nrnc */
       193: .line 325
            aload 55 /* NRow */
            iload 57 /* xloc */
            iload 1 /* x */
            isub
            aaload
            astore 58 /* n */
        start local 58 // double[] n
       194: .line 327
            aload 58 /* n */
            iconst_0
            dload 39 /* halfSurfaceScaleX */
            dneg
            dload 19 /* prnc */
            ldc 2.0
            dload 25 /* crnc */
            dmul
            dadd
            dload 31 /* nrnc */
            dadd
       195: .line 328
            dload 17 /* prcc */
            ldc 2.0
            dload 23 /* crcc */
            dmul
            dadd
            dload 29 /* nrcc */
            dadd
            dsub
            dmul
       196: .line 327
            dastore
       197: .line 329
            aload 58 /* n */
            iconst_1
            dload 45 /* thirdSurfaceScaleY */
            dneg
            ldc 2.0
            dload 17 /* prcc */
            dmul
            dload 19 /* prnc */
            dadd
       198: .line 330
            ldc 2.0
            dload 23 /* crcc */
            dmul
            dload 25 /* crnc */
            dadd
            dsub
            dmul
       199: .line 329
            dastore
       200: .line 332
            dconst_1
            aload 58 /* n */
            iconst_0
            daload
            aload 58 /* n */
            iconst_0
            daload
            dmul
            aload 58 /* n */
            iconst_1
            daload
            aload 58 /* n */
            iconst_1
            daload
            dmul
            dadd
            dconst_1
            dadd
            invokestatic java.lang.Math.sqrt:(D)D
            ddiv
            dstore 33 /* invNorm */
        start local 33 // double invNorm
       201: .line 333
            aload 58 /* n */
            iconst_0
            dup2
            daload
            dload 33 /* invNorm */
            dmul
            dastore
       202: .line 334
            aload 58 /* n */
            iconst_1
            dup2
            daload
            dload 33 /* invNorm */
            dmul
            dastore
       203: .line 335
            aload 58 /* n */
            iconst_2
            dload 33 /* invNorm */
            dastore
       204: .line 336
            aload 58 /* n */
            iconst_3
            dload 23 /* crcc */
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.BumpMap.surfaceScale:D
            dmul
            dastore
       205: .line 338
            iinc 56 /* p */ 1
       206: .line 339
            iinc 57 /* xloc */ 1
       207: .line 341
            dload 17 /* prcc */
            dstore 15 /* prpc */
       208: .line 342
            dload 23 /* crcc */
            dstore 21 /* crpc */
       209: .line 343
            dload 29 /* nrcc */
            dstore 27 /* nrpc */
       210: .line 344
            dload 19 /* prnc */
            dstore 17 /* prcc */
       211: .line 345
            dload 25 /* crnc */
            dstore 23 /* crcc */
       212: .line 346
            dload 31 /* nrnc */
            dstore 29 /* nrcc */
        end local 58 // double[] n
       213: .line 347
            goto 241
        end local 33 // double invNorm
       214: .line 349
      StackMap locals:
      StackMap stack:
            dload 17 /* prcc */
            dstore 15 /* prpc */
       215: .line 350
            dload 23 /* crcc */
            dstore 21 /* crpc */
       216: .line 351
            dload 29 /* nrcc */
            dstore 27 /* nrpc */
       217: .line 354
            goto 241
       218: .line 356
      StackMap locals:
      StackMap stack:
            aload 10 /* pixels */
            iload 56 /* p */
            iload 14 /* scanStrideMM */
            isub
            iaload
            bipush 24
            iushr
            i2d
            ldc 0.00392156862745098
            dmul
            dstore 19 /* prnc */
       219: .line 357
            aload 10 /* pixels */
            iload 56 /* p */
            iconst_1
            iadd
            iaload
            bipush 24
            iushr
            i2d
            ldc 0.00392156862745098
            dmul
            dstore 25 /* crnc */
       220: .line 358
            aload 10 /* pixels */
            iload 56 /* p */
            iload 13 /* scanStridePP */
            iadd
            iaload
            bipush 24
            iushr
            i2d
            ldc 0.00392156862745098
            dmul
            dstore 31 /* nrnc */
       221: .line 360
            aload 55 /* NRow */
            iload 57 /* xloc */
            iload 1 /* x */
            isub
            aaload
            astore 58 /* n */
        start local 58 // double[] n
       222: .line 362
            aload 58 /* n */
            iconst_0
            dload 35 /* quarterSurfaceScaleX */
            dneg
            dload 19 /* prnc */
            ldc 2.0
            dload 25 /* crnc */
            dmul
            dadd
            dload 31 /* nrnc */
            dadd
       223: .line 363
            dload 15 /* prpc */
            ldc 2.0
            dload 21 /* crpc */
            dmul
            dadd
            dload 27 /* nrpc */
            dadd
            dsub
            dmul
       224: .line 362
            dastore
       225: .line 364
            aload 58 /* n */
            iconst_1
            dload 37 /* quarterSurfaceScaleY */
            dneg
            dload 27 /* nrpc */
            ldc 2.0
            dload 29 /* nrcc */
            dmul
            dadd
            dload 31 /* nrnc */
            dadd
       226: .line 365
            dload 15 /* prpc */
            ldc 2.0
            dload 17 /* prcc */
            dmul
            dadd
            dload 19 /* prnc */
            dadd
            dsub
            dmul
       227: .line 364
            dastore
       228: .line 367
            dconst_1
            aload 58 /* n */
            iconst_0
            daload
            aload 58 /* n */
            iconst_0
            daload
            dmul
            aload 58 /* n */
            iconst_1
            daload
            aload 58 /* n */
            iconst_1
            daload
            dmul
            dadd
            dconst_1
            dadd
            invokestatic java.lang.Math.sqrt:(D)D
            ddiv
            dstore 33 /* invNorm */
        start local 33 // double invNorm
       229: .line 368
            aload 58 /* n */
            iconst_0
            dup2
            daload
            dload 33 /* invNorm */
            dmul
            dastore
       230: .line 369
            aload 58 /* n */
            iconst_1
            dup2
            daload
            dload 33 /* invNorm */
            dmul
            dastore
       231: .line 370
            aload 58 /* n */
            iconst_2
            dload 33 /* invNorm */
            dastore
       232: .line 371
            aload 58 /* n */
            iconst_3
            dload 23 /* crcc */
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.BumpMap.surfaceScale:D
            dmul
            dastore
       233: .line 373
            iinc 56 /* p */ 1
       234: .line 374
            dload 17 /* prcc */
            dstore 15 /* prpc */
       235: .line 375
            dload 23 /* crcc */
            dstore 21 /* crpc */
       236: .line 376
            dload 29 /* nrcc */
            dstore 27 /* nrpc */
       237: .line 377
            dload 19 /* prnc */
            dstore 17 /* prcc */
       238: .line 378
            dload 25 /* crnc */
            dstore 23 /* crcc */
       239: .line 379
            dload 31 /* nrnc */
            dstore 29 /* nrcc */
        end local 58 // double[] n
       240: .line 354
            iinc 57 /* xloc */ 1
        end local 33 // double invNorm
      StackMap locals:
      StackMap stack:
       241: iload 57 /* xloc */
            iload 51 /* xEnd */
            if_icmplt 218
       242: .line 382
            iload 57 /* xloc */
            iload 1 /* x */
            iload 3 /* w */
            iadd
            if_icmpge 256
       243: .line 383
            iload 57 /* xloc */
            aload 6 /* srcRect */
            getfield java.awt.Rectangle.x:I
            aload 6 /* srcRect */
            getfield java.awt.Rectangle.width:I
            iadd
            iconst_1
            isub
            if_icmpne 256
       244: .line 385
            aload 55 /* NRow */
            iload 57 /* xloc */
            iload 1 /* x */
            isub
            aaload
            astore 58 /* n */
        start local 58 // double[] n
       245: .line 387
            aload 58 /* n */
            iconst_0
            dload 39 /* halfSurfaceScaleX */
            dneg
            dload 17 /* prcc */
            ldc 2.0
            dload 23 /* crcc */
            dmul
            dadd
            dload 29 /* nrcc */
            dadd
       246: .line 388
            dload 15 /* prpc */
            ldc 2.0
            dload 21 /* crpc */
            dmul
            dadd
            dload 27 /* nrpc */
            dadd
            dsub
            dmul
       247: .line 387
            dastore
       248: .line 389
            aload 58 /* n */
            iconst_1
            dload 45 /* thirdSurfaceScaleY */
            dneg
            dload 27 /* nrpc */
            ldc 2.0
            dload 29 /* nrcc */
            dmul
            dadd
       249: .line 390
            dload 15 /* prpc */
            ldc 2.0
            dload 17 /* prcc */
            dmul
            dadd
            dsub
            dmul
       250: .line 389
            dastore
       251: .line 392
            dconst_1
            aload 58 /* n */
            iconst_0
            daload
            aload 58 /* n */
            iconst_0
            daload
            dmul
            aload 58 /* n */
            iconst_1
            daload
            aload 58 /* n */
            iconst_1
            daload
            dmul
            dadd
            dconst_1
            dadd
            invokestatic java.lang.Math.sqrt:(D)D
            ddiv
            dstore 33 /* invNorm */
        start local 33 // double invNorm
       252: .line 393
            aload 58 /* n */
            iconst_0
            dup2
            daload
            dload 33 /* invNorm */
            dmul
            dastore
       253: .line 394
            aload 58 /* n */
            iconst_1
            dup2
            daload
            dload 33 /* invNorm */
            dmul
            dastore
       254: .line 395
            aload 58 /* n */
            iconst_2
            dload 33 /* invNorm */
            dastore
       255: .line 396
            aload 58 /* n */
            iconst_3
            dload 23 /* crcc */
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.BumpMap.surfaceScale:D
            dmul
            dastore
        end local 58 // double[] n
        end local 57 // int xloc
        end local 56 // int p
        end local 55 // double[][] NRow
        end local 33 // double invNorm
       256: .line 300
      StackMap locals:
      StackMap stack:
            iinc 54 /* yloc */ 1
      StackMap locals:
      StackMap stack:
       257: iload 54 /* yloc */
            iload 52 /* yEnd */
            if_icmplt 175
       258: .line 400
            iload 54 /* yloc */
            iload 2 /* y */
            iload 4 /* h */
            iadd
            if_icmpge 328
       259: .line 401
            iload 54 /* yloc */
            aload 6 /* srcRect */
            getfield java.awt.Rectangle.y:I
            aload 6 /* srcRect */
            getfield java.awt.Rectangle.height:I
            iadd
            iconst_1
            isub
            if_icmpne 328
       260: .line 402
            aload 5 /* N */
            iload 54 /* yloc */
            iload 2 /* y */
            isub
            aaload
            astore 55 /* NRow */
        start local 55 // double[][] NRow
       261: .line 403
            iload 53 /* offset */
            iload 12 /* scanStride */
            iload 54 /* yloc */
            aload 6 /* srcRect */
            getfield java.awt.Rectangle.y:I
            isub
            imul
            iadd
            istore 56 /* p */
        start local 56 // int p
       262: .line 404
            iload 1 /* x */
            istore 57 /* xloc */
        start local 57 // int xloc
       263: .line 405
            iload 57 /* xloc */
            aload 6 /* srcRect */
            getfield java.awt.Rectangle.x:I
            if_icmpge 265
       264: .line 406
            aload 6 /* srcRect */
            getfield java.awt.Rectangle.x:I
            istore 57 /* xloc */
       265: .line 408
      StackMap locals: double[][] int int
      StackMap stack:
            iload 56 /* p */
            iload 57 /* xloc */
            aload 6 /* srcRect */
            getfield java.awt.Rectangle.x:I
            isub
            iadd
            istore 56 /* p */
       266: .line 410
            aload 10 /* pixels */
            iload 56 /* p */
            iaload
            bipush 24
            iushr
            i2d
            ldc 0.00392156862745098
            dmul
            dstore 23 /* crcc */
       267: .line 411
            aload 10 /* pixels */
            iload 56 /* p */
            iload 12 /* scanStride */
            isub
            iaload
            bipush 24
            iushr
            i2d
            ldc 0.00392156862745098
            dmul
            dstore 17 /* prcc */
       268: .line 413
            iload 57 /* xloc */
            aload 6 /* srcRect */
            getfield java.awt.Rectangle.x:I
            if_icmpeq 272
       269: .line 414
            aload 10 /* pixels */
            iload 56 /* p */
            iload 13 /* scanStridePP */
            isub
            iaload
            bipush 24
            iushr
            i2d
            ldc 0.00392156862745098
            dmul
            dstore 15 /* prpc */
       270: .line 415
            aload 10 /* pixels */
            iload 56 /* p */
            iconst_1
            isub
            iaload
            bipush 24
            iushr
            i2d
            ldc 0.00392156862745098
            dmul
            dstore 21 /* crpc */
       271: .line 416
            goto 313
       272: .line 417
      StackMap locals:
      StackMap stack:
            iload 57 /* xloc */
            iload 51 /* xEnd */
            if_icmpge 290
       273: .line 419
            aload 10 /* pixels */
            iload 56 /* p */
            iconst_1
            iadd
            iaload
            bipush 24
            iushr
            i2d
            ldc 0.00392156862745098
            dmul
            dstore 25 /* crnc */
       274: .line 420
            aload 10 /* pixels */
            iload 56 /* p */
            iload 14 /* scanStrideMM */
            isub
            iaload
            bipush 24
            iushr
            i2d
            ldc 0.00392156862745098
            dmul
            dstore 19 /* prnc */
       275: .line 422
            aload 55 /* NRow */
            iload 57 /* xloc */
            iload 1 /* x */
            isub
            aaload
            astore 58 /* n */
        start local 58 // double[] n
       276: .line 424
            aload 58 /* n */
            iconst_0
            dload 47 /* twoThirdSurfaceScaleX */
            dneg
            ldc 2.0
            dload 25 /* crnc */
            dmul
            dload 19 /* prnc */
            dadd
            ldc 2.0
            dload 23 /* crcc */
            dmul
            dsub
            dload 17 /* prcc */
            dsub
            dmul
            dastore
       277: .line 425
            aload 58 /* n */
            iconst_1
            dload 49 /* twoThirdSurfaceScaleY */
            dneg
            ldc 2.0
            dload 23 /* crcc */
            dmul
            dload 25 /* crnc */
            dadd
            ldc 2.0
            dload 17 /* prcc */
            dmul
            dsub
            dload 19 /* prnc */
            dsub
            dmul
            dastore
       278: .line 426
            dconst_1
            aload 58 /* n */
            iconst_0
            daload
            aload 58 /* n */
            iconst_0
            daload
            dmul
            aload 58 /* n */
            iconst_1
            daload
            aload 58 /* n */
            iconst_1
            daload
            dmul
            dadd
            dconst_1
            dadd
            invokestatic java.lang.Math.sqrt:(D)D
            ddiv
            dstore 33 /* invNorm */
        start local 33 // double invNorm
       279: .line 427
            aload 58 /* n */
            iconst_0
            dup2
            daload
            dload 33 /* invNorm */
            dmul
            dastore
       280: .line 428
            aload 58 /* n */
            iconst_1
            dup2
            daload
            dload 33 /* invNorm */
            dmul
            dastore
       281: .line 429
            aload 58 /* n */
            iconst_2
            dload 33 /* invNorm */
            dastore
       282: .line 430
            aload 58 /* n */
            iconst_3
            dload 23 /* crcc */
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.BumpMap.surfaceScale:D
            dmul
            dastore
       283: .line 432
            iinc 56 /* p */ 1
       284: .line 433
            iinc 57 /* xloc */ 1
       285: .line 434
            dload 23 /* crcc */
            dstore 21 /* crpc */
       286: .line 435
            dload 17 /* prcc */
            dstore 15 /* prpc */
       287: .line 436
            dload 25 /* crnc */
            dstore 23 /* crcc */
       288: .line 437
            dload 19 /* prnc */
            dstore 17 /* prcc */
        end local 58 // double[] n
       289: .line 438
            goto 313
        end local 33 // double invNorm
       290: .line 440
      StackMap locals:
      StackMap stack:
            dload 23 /* crcc */
            dstore 21 /* crpc */
       291: .line 441
            dload 17 /* prcc */
            dstore 15 /* prpc */
       292: .line 444
            goto 313
       293: .line 446
      StackMap locals:
      StackMap stack:
            aload 10 /* pixels */
            iload 56 /* p */
            iconst_1
            iadd
            iaload
            bipush 24
            iushr
            i2d
            ldc 0.00392156862745098
            dmul
            dstore 25 /* crnc */
       294: .line 447
            aload 10 /* pixels */
            iload 56 /* p */
            iload 14 /* scanStrideMM */
            isub
            iaload
            bipush 24
            iushr
            i2d
            ldc 0.00392156862745098
            dmul
            dstore 19 /* prnc */
       295: .line 453
            aload 55 /* NRow */
            iload 57 /* xloc */
            iload 1 /* x */
            isub
            aaload
            astore 58 /* n */
        start local 58 // double[] n
       296: .line 455
            aload 58 /* n */
            iconst_0
            dload 43 /* thirdSurfaceScaleX */
            dneg
            ldc 2.0
            dload 25 /* crnc */
            dmul
            dload 19 /* prnc */
            dadd
       297: .line 456
            ldc 2.0
            dload 21 /* crpc */
            dmul
            dload 15 /* prpc */
            dadd
            dsub
            dmul
       298: .line 455
            dastore
       299: .line 457
            aload 58 /* n */
            iconst_1
            dload 41 /* halfSurfaceScaleY */
            dneg
            dload 21 /* crpc */
            ldc 2.0
            dload 23 /* crcc */
            dmul
            dadd
            dload 25 /* crnc */
            dadd
       300: .line 458
            dload 15 /* prpc */
            ldc 2.0
            dload 17 /* prcc */
            dmul
            dadd
            dload 19 /* prnc */
            dadd
            dsub
            dmul
       301: .line 457
            dastore
       302: .line 460
            dconst_1
            aload 58 /* n */
            iconst_0
            daload
            aload 58 /* n */
            iconst_0
            daload
            dmul
            aload 58 /* n */
            iconst_1
            daload
            aload 58 /* n */
            iconst_1
            daload
            dmul
            dadd
            dconst_1
            dadd
            invokestatic java.lang.Math.sqrt:(D)D
            ddiv
            dstore 33 /* invNorm */
        start local 33 // double invNorm
       303: .line 461
            aload 58 /* n */
            iconst_0
            dup2
            daload
            dload 33 /* invNorm */
            dmul
            dastore
       304: .line 462
            aload 58 /* n */
            iconst_1
            dup2
            daload
            dload 33 /* invNorm */
            dmul
            dastore
       305: .line 463
            aload 58 /* n */
            iconst_2
            dload 33 /* invNorm */
            dastore
       306: .line 464
            aload 58 /* n */
            iconst_3
            dload 23 /* crcc */
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.BumpMap.surfaceScale:D
            dmul
            dastore
       307: .line 466
            iinc 56 /* p */ 1
       308: .line 467
            dload 23 /* crcc */
            dstore 21 /* crpc */
       309: .line 468
            dload 17 /* prcc */
            dstore 15 /* prpc */
       310: .line 469
            dload 25 /* crnc */
            dstore 23 /* crcc */
       311: .line 470
            dload 19 /* prnc */
            dstore 17 /* prcc */
        end local 58 // double[] n
       312: .line 444
            iinc 57 /* xloc */ 1
        end local 33 // double invNorm
      StackMap locals:
      StackMap stack:
       313: iload 57 /* xloc */
            iload 51 /* xEnd */
            if_icmplt 293
       314: .line 473
            iload 57 /* xloc */
            iload 1 /* x */
            iload 3 /* w */
            iadd
            if_icmpge 328
       315: .line 474
            iload 57 /* xloc */
            aload 6 /* srcRect */
            getfield java.awt.Rectangle.x:I
            aload 6 /* srcRect */
            getfield java.awt.Rectangle.width:I
            iadd
            iconst_1
            isub
            if_icmpne 328
       316: .line 476
            aload 55 /* NRow */
            iload 57 /* xloc */
            iload 1 /* x */
            isub
            aaload
            astore 58 /* n */
        start local 58 // double[] n
       317: .line 478
            aload 58 /* n */
            iconst_0
            dload 47 /* twoThirdSurfaceScaleX */
            dneg
            ldc 2.0
            dload 23 /* crcc */
            dmul
            dload 17 /* prcc */
            dadd
       318: .line 479
            ldc 2.0
            dload 21 /* crpc */
            dmul
            dload 15 /* prpc */
            dadd
            dsub
            dmul
       319: .line 478
            dastore
       320: .line 480
            aload 58 /* n */
            iconst_1
            dload 49 /* twoThirdSurfaceScaleY */
            dneg
            ldc 2.0
            dload 23 /* crcc */
            dmul
            dload 21 /* crpc */
            dadd
       321: .line 481
            ldc 2.0
            dload 17 /* prcc */
            dmul
            dload 15 /* prpc */
            dadd
            dsub
            dmul
       322: .line 480
            dastore
       323: .line 483
            dconst_1
            aload 58 /* n */
            iconst_0
            daload
            aload 58 /* n */
            iconst_0
            daload
            dmul
            aload 58 /* n */
            iconst_1
            daload
            aload 58 /* n */
            iconst_1
            daload
            dmul
            dadd
            dconst_1
            dadd
            invokestatic java.lang.Math.sqrt:(D)D
            ddiv
            dstore 33 /* invNorm */
        start local 33 // double invNorm
       324: .line 484
            aload 58 /* n */
            iconst_0
            dup2
            daload
            dload 33 /* invNorm */
            dmul
            dastore
       325: .line 485
            aload 58 /* n */
            iconst_1
            dup2
            daload
            dload 33 /* invNorm */
            dmul
            dastore
       326: .line 486
            aload 58 /* n */
            iconst_2
            dload 33 /* invNorm */
            dastore
       327: .line 487
            aload 58 /* n */
            iconst_3
            dload 23 /* crcc */
            aload 0 /* this */
            getfield org.apache.batik.ext.awt.image.rendered.BumpMap.surfaceScale:D
            dmul
            dastore
        end local 58 // double[] n
        end local 57 // int xloc
        end local 56 // int p
        end local 55 // double[][] NRow
        end local 33 // double invNorm
       328: .line 490
      StackMap locals:
      StackMap stack:
            aload 5 /* N */
            areturn
        end local 54 // int yloc
        end local 53 // int offset
        end local 52 // int yEnd
        end local 51 // int xEnd
        end local 49 // double twoThirdSurfaceScaleY
        end local 47 // double twoThirdSurfaceScaleX
        end local 45 // double thirdSurfaceScaleY
        end local 43 // double thirdSurfaceScaleX
        end local 41 // double halfSurfaceScaleY
        end local 39 // double halfSurfaceScaleX
        end local 37 // double quarterSurfaceScaleY
        end local 35 // double quarterSurfaceScaleX
        end local 31 // double nrnc
        end local 29 // double nrcc
        end local 27 // double nrpc
        end local 25 // double crnc
        end local 23 // double crcc
        end local 21 // double crpc
        end local 19 // double prnc
        end local 17 // double prcc
        end local 15 // double prpc
        end local 14 // int scanStrideMM
        end local 13 // int scanStridePP
        end local 12 // int scanStride
        end local 11 // java.awt.image.SinglePixelPackedSampleModel sppsm
        end local 10 // int[] pixels
        end local 9 // java.awt.image.DataBufferInt db
        end local 8 // java.awt.image.Raster r
        end local 7 // java.awt.Rectangle srcBound
        end local 6 // java.awt.Rectangle srcRect
        end local 5 // double[][][] N
        end local 4 // int h
        end local 3 // int w
        end local 2 // int y
        end local 1 // int x
        end local 0 // org.apache.batik.ext.awt.image.rendered.BumpMap this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0  329     0                   this  Lorg/apache/batik/ext/awt/image/rendered/BumpMap;
            0  329     1                      x  I
            0  329     2                      y  I
            0  329     3                      w  I
            0  329     4                      h  I
            1  329     5                      N  [[[D
            2  329     6                srcRect  Ljava/awt/Rectangle;
            6  329     7               srcBound  Ljava/awt/Rectangle;
           10  329     8                      r  Ljava/awt/image/Raster;
           12  329     9                     db  Ljava/awt/image/DataBufferInt;
           13  329    10                 pixels  [I
           14  329    11                  sppsm  Ljava/awt/image/SinglePixelPackedSampleModel;
           15  329    12             scanStride  I
           16  329    13           scanStridePP  I
           17  329    14           scanStrideMM  I
           18  329    15                   prpc  D
           19  329    17                   prcc  D
           20  329    19                   prnc  D
           21  329    21                   crpc  D
           22  329    23                   crcc  D
           23  329    25                   crnc  D
           24  329    27                   nrpc  D
           25  329    29                   nrcc  D
           26  329    31                   nrnc  D
           67   76    33                invNorm  D
           82   90    33                invNorm  D
           96  100    33                invNorm  D
          124  135    33                invNorm  D
          148  158    33                invNorm  D
          169  173    33                invNorm  D
          201  214    33                invNorm  D
          229  241    33                invNorm  D
          252  256    33                invNorm  D
          279  290    33                invNorm  D
          303  313    33                invNorm  D
          324  328    33                invNorm  D
           27  329    35   quarterSurfaceScaleX  D
           28  329    37   quarterSurfaceScaleY  D
           29  329    39      halfSurfaceScaleX  D
           30  329    41      halfSurfaceScaleY  D
           31  329    43     thirdSurfaceScaleX  D
           32  329    45     thirdSurfaceScaleY  D
           33  329    47  twoThirdSurfaceScaleX  D
           34  329    49  twoThirdSurfaceScaleY  D
           39  329    51                   xEnd  I
           40  329    52                   yEnd  I
           46  329    53                 offset  I
           47  329    54                   yloc  I
           52  101    55                   NRow  [[D
           53  101    56                   xloc  I
           58  101    57                      p  I
           65   75    58                      n  [D
           80   89    58                      n  [D
           94  100    58                      n  [D
          102  174    55                   NRow  [[D
          103  174    56                      p  I
          104  174    57                   xloc  I
          117  134    58                      n  [D
          141  157    58                      n  [D
          162  173    58                      n  [D
          176  256    55                   NRow  [[D
          177  256    56                      p  I
          178  256    57                   xloc  I
          194  213    58                      n  [D
          222  240    58                      n  [D
          245  256    58                      n  [D
          261  328    55                   NRow  [[D
          262  328    56                      p  I
          263  328    57                   xloc  I
          276  289    58                      n  [D
          296  312    58                      n  [D
          317  328    58                      n  [D
    MethodParameters:
      Name  Flags
      x     final
      y     final
      w     final
      h     final
}
SourceFile: "BumpMap.java"