public class java.awt.image.BufferedImageFilter extends java.awt.image.ImageFilter implements java.lang.Cloneable
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: java.awt.image.BufferedImageFilter
  super_class: java.awt.image.ImageFilter
{
  java.awt.image.BufferedImageOp bufferedImageOp;
    descriptor: Ljava/awt/image/BufferedImageOp;
    flags: (0x0000) 

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

  int width;
    descriptor: I
    flags: (0x0000) 

  int height;
    descriptor: I
    flags: (0x0000) 

  byte[] bytePixels;
    descriptor: [B
    flags: (0x0000) 

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

  public void <init>(java.awt.image.BufferedImageOp);
    descriptor: (Ljava/awt/image/BufferedImageOp;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.awt.image.BufferedImageFilter this
        start local 1 // java.awt.image.BufferedImageOp op
         0: .line 62
            aload 0 /* this */
            invokespecial java.awt.image.ImageFilter.<init>:()V
         1: .line 63
            aload 1 /* op */
            ifnonnull 3
         2: .line 64
            new java.lang.NullPointerException
            dup
            ldc "Operation cannot be null"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 66
      StackMap locals: java.awt.image.BufferedImageFilter java.awt.image.BufferedImageOp
      StackMap stack:
            aload 0 /* this */
            aload 1 /* op */
            putfield java.awt.image.BufferedImageFilter.bufferedImageOp:Ljava/awt/image/BufferedImageOp;
         4: .line 67
            return
        end local 1 // java.awt.image.BufferedImageOp op
        end local 0 // java.awt.image.BufferedImageFilter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljava/awt/image/BufferedImageFilter;
            0    5     1    op  Ljava/awt/image/BufferedImageOp;
    MethodParameters:
      Name  Flags
      op    

  public java.awt.image.BufferedImageOp getBufferedImageOp();
    descriptor: ()Ljava/awt/image/BufferedImageOp;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.awt.image.BufferedImageFilter this
         0: .line 74
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.bufferedImageOp:Ljava/awt/image/BufferedImageOp;
            areturn
        end local 0 // java.awt.image.BufferedImageFilter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/awt/image/BufferedImageFilter;

  public void setDimensions(int, int);
    descriptor: (II)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // java.awt.image.BufferedImageFilter this
        start local 1 // int width
        start local 2 // int height
         0: .line 96
            iload 1 /* width */
            ifle 1
            iload 2 /* height */
            ifgt 3
         1: .line 97
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_3
            invokevirtual java.awt.image.BufferedImageFilter.imageComplete:(I)V
         2: .line 98
            return
         3: .line 100
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* width */
            putfield java.awt.image.BufferedImageFilter.width:I
         4: .line 101
            aload 0 /* this */
            iload 2 /* height */
            putfield java.awt.image.BufferedImageFilter.height:I
         5: .line 102
            return
        end local 2 // int height
        end local 1 // int width
        end local 0 // java.awt.image.BufferedImageFilter this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Ljava/awt/image/BufferedImageFilter;
            0    6     1   width  I
            0    6     2  height  I
    MethodParameters:
        Name  Flags
      width   
      height  

  public void setColorModel(java.awt.image.ColorModel);
    descriptor: (Ljava/awt/image/ColorModel;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.awt.image.BufferedImageFilter this
        start local 1 // java.awt.image.ColorModel model
         0: .line 125
            aload 0 /* this */
            aload 1 /* model */
            putfield java.awt.image.BufferedImageFilter.model:Ljava/awt/image/ColorModel;
         1: .line 126
            return
        end local 1 // java.awt.image.ColorModel model
        end local 0 // java.awt.image.BufferedImageFilter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Ljava/awt/image/BufferedImageFilter;
            0    2     1  model  Ljava/awt/image/ColorModel;
    MethodParameters:
       Name  Flags
      model  

  private void convertToRGB();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=4, args_size=1
        start local 0 // java.awt.image.BufferedImageFilter this
         0: .line 129
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.width:I
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.height:I
            imul
            istore 1 /* size */
        start local 1 // int size
         1: .line 130
            iload 1 /* size */
            newarray 10
            astore 2 /* newpixels */
        start local 2 // int[] newpixels
         2: .line 131
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.bytePixels:[B
            ifnull 9
         3: .line 132
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         4: goto 7
         5: .line 133
      StackMap locals: int int[] int
      StackMap stack:
            aload 2 /* newpixels */
            iload 3 /* i */
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.model:Ljava/awt/image/ColorModel;
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.bytePixels:[B
            iload 3 /* i */
            baload
            sipush 255
            iand
            invokevirtual java.awt.image.ColorModel.getRGB:(I)I
            iastore
         6: .line 132
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 3 /* i */
            iload 1 /* size */
            if_icmplt 5
        end local 3 // int i
         8: .line 135
            goto 15
      StackMap locals:
      StackMap stack:
         9: aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.intPixels:[I
            ifnull 15
        10: .line 136
            iconst_0
            istore 3 /* i */
        start local 3 // int i
        11: goto 14
        12: .line 137
      StackMap locals: int
      StackMap stack:
            aload 2 /* newpixels */
            iload 3 /* i */
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.model:Ljava/awt/image/ColorModel;
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.intPixels:[I
            iload 3 /* i */
            iaload
            invokevirtual java.awt.image.ColorModel.getRGB:(I)I
            iastore
        13: .line 136
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        14: iload 3 /* i */
            iload 1 /* size */
            if_icmplt 12
        end local 3 // int i
        15: .line 140
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield java.awt.image.BufferedImageFilter.bytePixels:[B
        16: .line 141
            aload 0 /* this */
            aload 2 /* newpixels */
            putfield java.awt.image.BufferedImageFilter.intPixels:[I
        17: .line 142
            aload 0 /* this */
            invokestatic java.awt.image.ColorModel.getRGBdefault:()Ljava/awt/image/ColorModel;
            putfield java.awt.image.BufferedImageFilter.model:Ljava/awt/image/ColorModel;
        18: .line 143
            return
        end local 2 // int[] newpixels
        end local 1 // int size
        end local 0 // java.awt.image.BufferedImageFilter this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   19     0       this  Ljava/awt/image/BufferedImageFilter;
            1   19     1       size  I
            2   19     2  newpixels  [I
            4    8     3          i  I
           11   15     3          i  I

  public void setPixels(int, int, int, int, java.awt.image.ColorModel, byte[], int, int);
    descriptor: (IIIILjava/awt/image/ColorModel;[BII)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=14, args_size=9
        start local 0 // java.awt.image.BufferedImageFilter this
        start local 1 // int x
        start local 2 // int y
        start local 3 // int w
        start local 4 // int h
        start local 5 // java.awt.image.ColorModel model
        start local 6 // byte[] pixels
        start local 7 // int off
        start local 8 // int scansize
         0: .line 165
            iload 3 /* w */
            iflt 1
            iload 4 /* h */
            ifge 5
         1: .line 166
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Width ("
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 3 /* w */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
         2: .line 167
            ldc ") and height ("
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 4 /* h */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
         3: .line 168
            ldc ") must be > 0"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         4: .line 166
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 171
      StackMap locals:
      StackMap stack:
            iload 3 /* w */
            ifeq 6
            iload 4 /* h */
            ifne 7
         6: .line 172
      StackMap locals:
      StackMap stack:
            return
         7: .line 174
      StackMap locals:
      StackMap stack:
            iload 2 /* y */
            ifge 14
         8: .line 175
            iload 2 /* y */
            ineg
            istore 9 /* diff */
        start local 9 // int diff
         9: .line 176
            iload 9 /* diff */
            iload 4 /* h */
            if_icmplt 11
        10: .line 177
            return
        11: .line 179
      StackMap locals: int
      StackMap stack:
            iload 7 /* off */
            iload 8 /* scansize */
            iload 9 /* diff */
            imul
            iadd
            istore 7 /* off */
        12: .line 180
            iload 2 /* y */
            iload 9 /* diff */
            iadd
            istore 2 /* y */
        13: .line 181
            iload 4 /* h */
            iload 9 /* diff */
            isub
            istore 4 /* h */
        end local 9 // int diff
        14: .line 183
      StackMap locals:
      StackMap stack:
            iload 2 /* y */
            iload 4 /* h */
            iadd
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.height:I
            if_icmple 18
        15: .line 184
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.height:I
            iload 2 /* y */
            isub
            istore 4 /* h */
        16: .line 185
            iload 4 /* h */
            ifgt 18
        17: .line 186
            return
        18: .line 189
      StackMap locals:
      StackMap stack:
            iload 1 /* x */
            ifge 25
        19: .line 190
            iload 1 /* x */
            ineg
            istore 9 /* diff */
        start local 9 // int diff
        20: .line 191
            iload 9 /* diff */
            iload 3 /* w */
            if_icmplt 22
        21: .line 192
            return
        22: .line 194
      StackMap locals: int
      StackMap stack:
            iload 7 /* off */
            iload 9 /* diff */
            iadd
            istore 7 /* off */
        23: .line 195
            iload 1 /* x */
            iload 9 /* diff */
            iadd
            istore 1 /* x */
        24: .line 196
            iload 3 /* w */
            iload 9 /* diff */
            isub
            istore 3 /* w */
        end local 9 // int diff
        25: .line 198
      StackMap locals:
      StackMap stack:
            iload 1 /* x */
            iload 3 /* w */
            iadd
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.width:I
            if_icmple 29
        26: .line 199
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.width:I
            iload 1 /* x */
            isub
            istore 3 /* w */
        27: .line 200
            iload 3 /* w */
            ifgt 29
        28: .line 201
            return
        29: .line 204
      StackMap locals:
      StackMap stack:
            iload 2 /* y */
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.width:I
            imul
            iload 1 /* x */
            iadd
            istore 9 /* dstPtr */
        start local 9 // int dstPtr
        30: .line 205
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.intPixels:[I
            ifnonnull 45
        31: .line 206
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.bytePixels:[B
            ifnonnull 35
        32: .line 207
            aload 0 /* this */
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.width:I
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.height:I
            imul
            newarray 8
            putfield java.awt.image.BufferedImageFilter.bytePixels:[B
        33: .line 208
            aload 0 /* this */
            aload 5 /* model */
            putfield java.awt.image.BufferedImageFilter.model:Ljava/awt/image/ColorModel;
        34: .line 209
            goto 37
      StackMap locals: int
      StackMap stack:
        35: aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.model:Ljava/awt/image/ColorModel;
            aload 5 /* model */
            if_acmpeq 37
        36: .line 210
            aload 0 /* this */
            invokevirtual java.awt.image.BufferedImageFilter.convertToRGB:()V
        37: .line 212
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.bytePixels:[B
            ifnull 45
        38: .line 213
            iload 4 /* h */
            istore 10 /* sh */
        start local 10 // int sh
        39: goto 44
        40: .line 214
      StackMap locals: int
      StackMap stack:
            aload 6 /* pixels */
            iload 7 /* off */
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.bytePixels:[B
            iload 9 /* dstPtr */
            iload 3 /* w */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        41: .line 215
            iload 7 /* off */
            iload 8 /* scansize */
            iadd
            istore 7 /* off */
        42: .line 216
            iload 9 /* dstPtr */
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.width:I
            iadd
            istore 9 /* dstPtr */
        43: .line 213
            iinc 10 /* sh */ -1
      StackMap locals:
      StackMap stack:
        44: iload 10 /* sh */
            ifgt 40
        end local 10 // int sh
        45: .line 220
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.intPixels:[I
            ifnull 59
        46: .line 221
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.width:I
            iload 3 /* w */
            isub
            istore 10 /* dstRem */
        start local 10 // int dstRem
        47: .line 222
            iload 8 /* scansize */
            iload 3 /* w */
            isub
            istore 11 /* srcRem */
        start local 11 // int srcRem
        48: .line 223
            iload 4 /* h */
            istore 12 /* sh */
        start local 12 // int sh
        49: goto 58
        50: .line 224
      StackMap locals: int int int
      StackMap stack:
            iload 3 /* w */
            istore 13 /* sw */
        start local 13 // int sw
        51: goto 54
        52: .line 225
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.intPixels:[I
            iload 9 /* dstPtr */
            iinc 9 /* dstPtr */ 1
            aload 5 /* model */
            aload 6 /* pixels */
            iload 7 /* off */
            iinc 7 /* off */ 1
            baload
            sipush 255
            iand
            invokevirtual java.awt.image.ColorModel.getRGB:(I)I
            iastore
        53: .line 224
            iinc 13 /* sw */ -1
      StackMap locals:
      StackMap stack:
        54: iload 13 /* sw */
            ifgt 52
        end local 13 // int sw
        55: .line 227
            iload 7 /* off */
            iload 11 /* srcRem */
            iadd
            istore 7 /* off */
        56: .line 228
            iload 9 /* dstPtr */
            iload 10 /* dstRem */
            iadd
            istore 9 /* dstPtr */
        57: .line 223
            iinc 12 /* sh */ -1
      StackMap locals:
      StackMap stack:
        58: iload 12 /* sh */
            ifgt 50
        end local 12 // int sh
        end local 11 // int srcRem
        end local 10 // int dstRem
        59: .line 231
      StackMap locals:
      StackMap stack:
            return
        end local 9 // int dstPtr
        end local 8 // int scansize
        end local 7 // int off
        end local 6 // byte[] pixels
        end local 5 // java.awt.image.ColorModel model
        end local 4 // int h
        end local 3 // int w
        end local 2 // int y
        end local 1 // int x
        end local 0 // java.awt.image.BufferedImageFilter this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   60     0      this  Ljava/awt/image/BufferedImageFilter;
            0   60     1         x  I
            0   60     2         y  I
            0   60     3         w  I
            0   60     4         h  I
            0   60     5     model  Ljava/awt/image/ColorModel;
            0   60     6    pixels  [B
            0   60     7       off  I
            0   60     8  scansize  I
            9   14     9      diff  I
           20   25     9      diff  I
           30   60     9    dstPtr  I
           39   45    10        sh  I
           47   59    10    dstRem  I
           48   59    11    srcRem  I
           49   59    12        sh  I
           51   55    13        sw  I
    MethodParameters:
          Name  Flags
      x         
      y         
      w         
      h         
      model     
      pixels    
      off       
      scansize  

  public void setPixels(int, int, int, int, java.awt.image.ColorModel, int[], int, int);
    descriptor: (IIIILjava/awt/image/ColorModel;[III)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=14, args_size=9
        start local 0 // java.awt.image.BufferedImageFilter this
        start local 1 // int x
        start local 2 // int y
        start local 3 // int w
        start local 4 // int h
        start local 5 // java.awt.image.ColorModel model
        start local 6 // int[] pixels
        start local 7 // int off
        start local 8 // int scansize
         0: .line 252
            iload 3 /* w */
            iflt 1
            iload 4 /* h */
            ifge 5
         1: .line 253
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Width ("
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 3 /* w */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
         2: .line 254
            ldc ") and height ("
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 4 /* h */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
         3: .line 255
            ldc ") must be > 0"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         4: .line 253
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 258
      StackMap locals:
      StackMap stack:
            iload 3 /* w */
            ifeq 6
            iload 4 /* h */
            ifne 7
         6: .line 259
      StackMap locals:
      StackMap stack:
            return
         7: .line 261
      StackMap locals:
      StackMap stack:
            iload 2 /* y */
            ifge 14
         8: .line 262
            iload 2 /* y */
            ineg
            istore 9 /* diff */
        start local 9 // int diff
         9: .line 263
            iload 9 /* diff */
            iload 4 /* h */
            if_icmplt 11
        10: .line 264
            return
        11: .line 266
      StackMap locals: int
      StackMap stack:
            iload 7 /* off */
            iload 8 /* scansize */
            iload 9 /* diff */
            imul
            iadd
            istore 7 /* off */
        12: .line 267
            iload 2 /* y */
            iload 9 /* diff */
            iadd
            istore 2 /* y */
        13: .line 268
            iload 4 /* h */
            iload 9 /* diff */
            isub
            istore 4 /* h */
        end local 9 // int diff
        14: .line 270
      StackMap locals:
      StackMap stack:
            iload 2 /* y */
            iload 4 /* h */
            iadd
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.height:I
            if_icmple 18
        15: .line 271
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.height:I
            iload 2 /* y */
            isub
            istore 4 /* h */
        16: .line 272
            iload 4 /* h */
            ifgt 18
        17: .line 273
            return
        18: .line 276
      StackMap locals:
      StackMap stack:
            iload 1 /* x */
            ifge 25
        19: .line 277
            iload 1 /* x */
            ineg
            istore 9 /* diff */
        start local 9 // int diff
        20: .line 278
            iload 9 /* diff */
            iload 3 /* w */
            if_icmplt 22
        21: .line 279
            return
        22: .line 281
      StackMap locals: int
      StackMap stack:
            iload 7 /* off */
            iload 9 /* diff */
            iadd
            istore 7 /* off */
        23: .line 282
            iload 1 /* x */
            iload 9 /* diff */
            iadd
            istore 1 /* x */
        24: .line 283
            iload 3 /* w */
            iload 9 /* diff */
            isub
            istore 3 /* w */
        end local 9 // int diff
        25: .line 285
      StackMap locals:
      StackMap stack:
            iload 1 /* x */
            iload 3 /* w */
            iadd
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.width:I
            if_icmple 29
        26: .line 286
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.width:I
            iload 1 /* x */
            isub
            istore 3 /* w */
        27: .line 287
            iload 3 /* w */
            ifgt 29
        28: .line 288
            return
        29: .line 292
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.intPixels:[I
            ifnonnull 35
        30: .line 293
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.bytePixels:[B
            ifnonnull 34
        31: .line 294
            aload 0 /* this */
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.width:I
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.height:I
            imul
            newarray 10
            putfield java.awt.image.BufferedImageFilter.intPixels:[I
        32: .line 295
            aload 0 /* this */
            aload 5 /* model */
            putfield java.awt.image.BufferedImageFilter.model:Ljava/awt/image/ColorModel;
        33: .line 296
            goto 35
        34: .line 297
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.awt.image.BufferedImageFilter.convertToRGB:()V
        35: .line 300
      StackMap locals:
      StackMap stack:
            iload 2 /* y */
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.width:I
            imul
            iload 1 /* x */
            iadd
            istore 9 /* dstPtr */
        start local 9 // int dstPtr
        36: .line 301
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.model:Ljava/awt/image/ColorModel;
            aload 5 /* model */
            if_acmpne 45
        37: .line 302
            iload 4 /* h */
            istore 10 /* sh */
        start local 10 // int sh
        38: goto 43
        39: .line 303
      StackMap locals: int int
      StackMap stack:
            aload 6 /* pixels */
            iload 7 /* off */
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.intPixels:[I
            iload 9 /* dstPtr */
            iload 3 /* w */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        40: .line 304
            iload 7 /* off */
            iload 8 /* scansize */
            iadd
            istore 7 /* off */
        41: .line 305
            iload 9 /* dstPtr */
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.width:I
            iadd
            istore 9 /* dstPtr */
        42: .line 302
            iinc 10 /* sh */ -1
      StackMap locals:
      StackMap stack:
        43: iload 10 /* sh */
            ifgt 39
        end local 10 // int sh
        44: .line 307
            goto 60
        45: .line 308
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.model:Ljava/awt/image/ColorModel;
            invokestatic java.awt.image.ColorModel.getRGBdefault:()Ljava/awt/image/ColorModel;
            if_acmpeq 47
        46: .line 309
            aload 0 /* this */
            invokevirtual java.awt.image.BufferedImageFilter.convertToRGB:()V
        47: .line 311
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.width:I
            iload 3 /* w */
            isub
            istore 10 /* dstRem */
        start local 10 // int dstRem
        48: .line 312
            iload 8 /* scansize */
            iload 3 /* w */
            isub
            istore 11 /* srcRem */
        start local 11 // int srcRem
        49: .line 313
            iload 4 /* h */
            istore 12 /* sh */
        start local 12 // int sh
        50: goto 59
        51: .line 314
      StackMap locals: int int int
      StackMap stack:
            iload 3 /* w */
            istore 13 /* sw */
        start local 13 // int sw
        52: goto 55
        53: .line 315
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.intPixels:[I
            iload 9 /* dstPtr */
            iinc 9 /* dstPtr */ 1
            aload 5 /* model */
            aload 6 /* pixels */
            iload 7 /* off */
            iinc 7 /* off */ 1
            iaload
            invokevirtual java.awt.image.ColorModel.getRGB:(I)I
            iastore
        54: .line 314
            iinc 13 /* sw */ -1
      StackMap locals:
      StackMap stack:
        55: iload 13 /* sw */
            ifgt 53
        end local 13 // int sw
        56: .line 317
            iload 7 /* off */
            iload 11 /* srcRem */
            iadd
            istore 7 /* off */
        57: .line 318
            iload 9 /* dstPtr */
            iload 10 /* dstRem */
            iadd
            istore 9 /* dstPtr */
        58: .line 313
            iinc 12 /* sh */ -1
      StackMap locals:
      StackMap stack:
        59: iload 12 /* sh */
            ifgt 51
        end local 12 // int sh
        end local 11 // int srcRem
        end local 10 // int dstRem
        60: .line 321
      StackMap locals:
      StackMap stack:
            return
        end local 9 // int dstPtr
        end local 8 // int scansize
        end local 7 // int off
        end local 6 // int[] pixels
        end local 5 // java.awt.image.ColorModel model
        end local 4 // int h
        end local 3 // int w
        end local 2 // int y
        end local 1 // int x
        end local 0 // java.awt.image.BufferedImageFilter this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   61     0      this  Ljava/awt/image/BufferedImageFilter;
            0   61     1         x  I
            0   61     2         y  I
            0   61     3         w  I
            0   61     4         h  I
            0   61     5     model  Ljava/awt/image/ColorModel;
            0   61     6    pixels  [I
            0   61     7       off  I
            0   61     8  scansize  I
            9   14     9      diff  I
           20   25     9      diff  I
           36   61     9    dstPtr  I
           38   44    10        sh  I
           48   60    10    dstRem  I
           49   60    11    srcRem  I
           50   60    12        sh  I
           52   56    13        sw  I
    MethodParameters:
          Name  Flags
      x         
      y         
      w         
      h         
      model     
      pixels    
      off       
      scansize  

  public void imageComplete(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=9, args_size=2
        start local 0 // java.awt.image.BufferedImageFilter this
        start local 1 // int status
         0: .line 341
            iload 1 /* status */
            tableswitch { // 1 - 4
                    1: 1
                    2: 7
                    3: 7
                    4: 1
              default: 49
          }
         1: .line 345
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield java.awt.image.BufferedImageFilter.model:Ljava/awt/image/ColorModel;
         2: .line 346
            aload 0 /* this */
            iconst_m1
            putfield java.awt.image.BufferedImageFilter.width:I
         3: .line 347
            aload 0 /* this */
            iconst_m1
            putfield java.awt.image.BufferedImageFilter.height:I
         4: .line 348
            aload 0 /* this */
            aconst_null
            putfield java.awt.image.BufferedImageFilter.intPixels:[I
         5: .line 349
            aload 0 /* this */
            aconst_null
            putfield java.awt.image.BufferedImageFilter.bytePixels:[B
         6: .line 350
            goto 49
         7: .line 354
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.width:I
            ifle 49
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.height:I
            ifgt 8
            goto 49
         8: .line 355
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.model:Ljava/awt/image/ColorModel;
            instanceof java.awt.image.DirectColorModel
            ifeq 12
         9: .line 356
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.intPixels:[I
            ifnonnull 10
            goto 49
        10: .line 357
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.awt.image.BufferedImageFilter.createDCMraster:()Ljava/awt/image/WritableRaster;
            astore 2 /* wr */
        start local 2 // java.awt.image.WritableRaster wr
        11: .line 358
            goto 25
        end local 2 // java.awt.image.WritableRaster wr
        12: .line 359
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.model:Ljava/awt/image/ColorModel;
            instanceof java.awt.image.IndexColorModel
            ifeq 22
        13: .line 360
            iconst_1
            newarray 10
            astore 3 /* bandOffsets */
        start local 3 // int[] bandOffsets
        14: .line 361
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.bytePixels:[B
            ifnonnull 15
            goto 49
        15: .line 362
      StackMap locals: java.awt.image.BufferedImageFilter int top int[]
      StackMap stack:
            new java.awt.image.DataBufferByte
            dup
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.bytePixels:[B
        16: .line 363
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.width:I
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.height:I
            imul
        17: .line 362
            invokespecial java.awt.image.DataBufferByte.<init>:([BI)V
            astore 4 /* db */
        start local 4 // java.awt.image.DataBufferByte db
        18: .line 364
            aload 4 /* db */
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.width:I
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.height:I
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.width:I
        19: .line 365
            iconst_1
            aload 3 /* bandOffsets */
            aconst_null
        20: .line 364
            invokestatic java.awt.image.Raster.createInterleavedRaster:(Ljava/awt/image/DataBuffer;IIII[ILjava/awt/Point;)Ljava/awt/image/WritableRaster;
            astore 2 /* wr */
        end local 4 // java.awt.image.DataBufferByte db
        end local 3 // int[] bandOffsets
        start local 2 // java.awt.image.WritableRaster wr
        21: .line 366
            goto 25
        end local 2 // java.awt.image.WritableRaster wr
        22: .line 368
      StackMap locals: java.awt.image.BufferedImageFilter int
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.awt.image.BufferedImageFilter.convertToRGB:()V
        23: .line 369
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.intPixels:[I
            ifnonnull 24
            goto 49
        24: .line 370
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.awt.image.BufferedImageFilter.createDCMraster:()Ljava/awt/image/WritableRaster;
            astore 2 /* wr */
        start local 2 // java.awt.image.WritableRaster wr
        25: .line 372
      StackMap locals: java.awt.image.WritableRaster
      StackMap stack:
            new java.awt.image.BufferedImage
            dup
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.model:Ljava/awt/image/ColorModel;
            aload 2 /* wr */
        26: .line 373
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.model:Ljava/awt/image/ColorModel;
            invokevirtual java.awt.image.ColorModel.isAlphaPremultiplied:()Z
        27: .line 374
            aconst_null
        28: .line 372
            invokespecial java.awt.image.BufferedImage.<init>:(Ljava/awt/image/ColorModel;Ljava/awt/image/WritableRaster;ZLjava/util/Hashtable;)V
            astore 3 /* bi */
        start local 3 // java.awt.image.BufferedImage bi
        29: .line 375
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.bufferedImageOp:Ljava/awt/image/BufferedImageOp;
            aload 3 /* bi */
            aconst_null
            invokeinterface java.awt.image.BufferedImageOp.filter:(Ljava/awt/image/BufferedImage;Ljava/awt/image/BufferedImage;)Ljava/awt/image/BufferedImage;
            astore 3 /* bi */
        30: .line 376
            aload 3 /* bi */
            invokevirtual java.awt.image.BufferedImage.getRaster:()Ljava/awt/image/WritableRaster;
            astore 4 /* r */
        start local 4 // java.awt.image.WritableRaster r
        31: .line 377
            aload 3 /* bi */
            invokevirtual java.awt.image.BufferedImage.getColorModel:()Ljava/awt/image/ColorModel;
            astore 5 /* cm */
        start local 5 // java.awt.image.ColorModel cm
        32: .line 378
            aload 4 /* r */
            invokevirtual java.awt.image.WritableRaster.getWidth:()I
            istore 6 /* w */
        start local 6 // int w
        33: .line 379
            aload 4 /* r */
            invokevirtual java.awt.image.WritableRaster.getHeight:()I
            istore 7 /* h */
        start local 7 // int h
        34: .line 380
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.consumer:Ljava/awt/image/ImageConsumer;
            iload 6 /* w */
            iload 7 /* h */
            invokeinterface java.awt.image.ImageConsumer.setDimensions:(II)V
        35: .line 381
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.consumer:Ljava/awt/image/ImageConsumer;
            aload 5 /* cm */
            invokeinterface java.awt.image.ImageConsumer.setColorModel:(Ljava/awt/image/ColorModel;)V
        36: .line 382
            aload 5 /* cm */
            instanceof java.awt.image.DirectColorModel
            ifeq 42
        37: .line 383
            aload 4 /* r */
            invokevirtual java.awt.image.WritableRaster.getDataBuffer:()Ljava/awt/image/DataBuffer;
            checkcast java.awt.image.DataBufferInt
            astore 8 /* db */
        start local 8 // java.awt.image.DataBufferInt db
        38: .line 384
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.consumer:Ljava/awt/image/ImageConsumer;
            iconst_0
            iconst_0
            iload 6 /* w */
            iload 7 /* h */
        39: .line 385
            aload 5 /* cm */
            aload 8 /* db */
            invokevirtual java.awt.image.DataBufferInt.getData:()[I
            iconst_0
            iload 6 /* w */
        40: .line 384
            invokeinterface java.awt.image.ImageConsumer.setPixels:(IIIILjava/awt/image/ColorModel;[III)V
        end local 8 // java.awt.image.DataBufferInt db
        41: .line 386
            goto 49
        42: .line 387
      StackMap locals: java.awt.image.BufferedImageFilter int java.awt.image.WritableRaster java.awt.image.BufferedImage java.awt.image.WritableRaster java.awt.image.ColorModel int int
      StackMap stack:
            aload 5 /* cm */
            instanceof java.awt.image.IndexColorModel
            ifeq 48
        43: .line 388
            aload 4 /* r */
            invokevirtual java.awt.image.WritableRaster.getDataBuffer:()Ljava/awt/image/DataBuffer;
            checkcast java.awt.image.DataBufferByte
            astore 8 /* db */
        start local 8 // java.awt.image.DataBufferByte db
        44: .line 389
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.consumer:Ljava/awt/image/ImageConsumer;
            iconst_0
            iconst_0
            iload 6 /* w */
            iload 7 /* h */
        45: .line 390
            aload 5 /* cm */
            aload 8 /* db */
            invokevirtual java.awt.image.DataBufferByte.getData:()[B
            iconst_0
            iload 6 /* w */
        46: .line 389
            invokeinterface java.awt.image.ImageConsumer.setPixels:(IIIILjava/awt/image/ColorModel;[BII)V
        end local 8 // java.awt.image.DataBufferByte db
        47: .line 391
            goto 49
        48: .line 393
      StackMap locals:
      StackMap stack:
            new java.lang.InternalError
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unknown color model "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 5 /* cm */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
            athrow
        end local 7 // int h
        end local 6 // int w
        end local 5 // java.awt.image.ColorModel cm
        end local 4 // java.awt.image.WritableRaster r
        end local 3 // java.awt.image.BufferedImage bi
        end local 2 // java.awt.image.WritableRaster wr
        49: .line 397
      StackMap locals: java.awt.image.BufferedImageFilter int
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.consumer:Ljava/awt/image/ImageConsumer;
            iload 1 /* status */
            invokeinterface java.awt.image.ImageConsumer.imageComplete:(I)V
        50: .line 398
            return
        end local 1 // int status
        end local 0 // java.awt.image.BufferedImageFilter this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   51     0         this  Ljava/awt/image/BufferedImageFilter;
            0   51     1       status  I
           11   12     2           wr  Ljava/awt/image/WritableRaster;
           21   22     2           wr  Ljava/awt/image/WritableRaster;
           25   49     2           wr  Ljava/awt/image/WritableRaster;
           14   21     3  bandOffsets  [I
           18   21     4           db  Ljava/awt/image/DataBufferByte;
           29   49     3           bi  Ljava/awt/image/BufferedImage;
           31   49     4            r  Ljava/awt/image/WritableRaster;
           32   49     5           cm  Ljava/awt/image/ColorModel;
           33   49     6            w  I
           34   49     7            h  I
           38   41     8           db  Ljava/awt/image/DataBufferInt;
           44   47     8           db  Ljava/awt/image/DataBufferByte;
    MethodParameters:
        Name  Flags
      status  

  private final java.awt.image.WritableRaster createDCMraster();
    descriptor: ()Ljava/awt/image/WritableRaster;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=6, locals=6, args_size=1
        start local 0 // java.awt.image.BufferedImageFilter this
         0: .line 402
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.model:Ljava/awt/image/ColorModel;
            checkcast java.awt.image.DirectColorModel
            astore 2 /* dcm */
        start local 2 // java.awt.image.DirectColorModel dcm
         1: .line 403
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.model:Ljava/awt/image/ColorModel;
            invokevirtual java.awt.image.ColorModel.hasAlpha:()Z
            istore 3 /* hasAlpha */
        start local 3 // boolean hasAlpha
         2: .line 404
            iconst_3
            iload 3 /* hasAlpha */
            ifeq 3
            iconst_1
            goto 4
      StackMap locals: java.awt.image.BufferedImageFilter top java.awt.image.DirectColorModel int
      StackMap stack: int
         3: iconst_0
      StackMap locals: java.awt.image.BufferedImageFilter top java.awt.image.DirectColorModel int
      StackMap stack: int int
         4: iadd
            newarray 10
            astore 4 /* bandMasks */
        start local 4 // int[] bandMasks
         5: .line 405
            aload 4 /* bandMasks */
            iconst_0
            aload 2 /* dcm */
            invokevirtual java.awt.image.DirectColorModel.getRedMask:()I
            iastore
         6: .line 406
            aload 4 /* bandMasks */
            iconst_1
            aload 2 /* dcm */
            invokevirtual java.awt.image.DirectColorModel.getGreenMask:()I
            iastore
         7: .line 407
            aload 4 /* bandMasks */
            iconst_2
            aload 2 /* dcm */
            invokevirtual java.awt.image.DirectColorModel.getBlueMask:()I
            iastore
         8: .line 408
            iload 3 /* hasAlpha */
            ifeq 10
         9: .line 409
            aload 4 /* bandMasks */
            iconst_3
            aload 2 /* dcm */
            invokevirtual java.awt.image.DirectColorModel.getAlphaMask:()I
            iastore
        10: .line 411
      StackMap locals: int[]
      StackMap stack:
            new java.awt.image.DataBufferInt
            dup
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.intPixels:[I
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.width:I
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.height:I
            imul
            invokespecial java.awt.image.DataBufferInt.<init>:([II)V
            astore 5 /* db */
        start local 5 // java.awt.image.DataBufferInt db
        11: .line 412
            aload 5 /* db */
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.width:I
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.height:I
            aload 0 /* this */
            getfield java.awt.image.BufferedImageFilter.width:I
        12: .line 413
            aload 4 /* bandMasks */
            aconst_null
        13: .line 412
            invokestatic java.awt.image.Raster.createPackedRaster:(Ljava/awt/image/DataBuffer;III[ILjava/awt/Point;)Ljava/awt/image/WritableRaster;
            astore 1 /* wr */
        start local 1 // java.awt.image.WritableRaster wr
        14: .line 414
            aload 1 /* wr */
            areturn
        end local 5 // java.awt.image.DataBufferInt db
        end local 4 // int[] bandMasks
        end local 3 // boolean hasAlpha
        end local 2 // java.awt.image.DirectColorModel dcm
        end local 1 // java.awt.image.WritableRaster wr
        end local 0 // java.awt.image.BufferedImageFilter this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   15     0       this  Ljava/awt/image/BufferedImageFilter;
           14   15     1         wr  Ljava/awt/image/WritableRaster;
            1   15     2        dcm  Ljava/awt/image/DirectColorModel;
            2   15     3   hasAlpha  Z
            5   15     4  bandMasks  [I
           11   15     5         db  Ljava/awt/image/DataBufferInt;
}
SourceFile: "BufferedImageFilter.java"