public class sun.java2d.xr.MaskTile
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: sun.java2d.xr.MaskTile
  super_class: java.lang.Object
{
  sun.java2d.xr.GrowableRectArray rects;
    descriptor: Lsun/java2d/xr/GrowableRectArray;
    flags: (0x0000) 

  sun.java2d.xr.DirtyRegion dirtyArea;
    descriptor: Lsun/java2d/xr/DirtyRegion;
    flags: (0x0000) 

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // sun.java2d.xr.MaskTile this
         0: .line 38
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 40
            aload 0 /* this */
            new sun.java2d.xr.GrowableRectArray
            dup
            sipush 128
            invokespecial sun.java2d.xr.GrowableRectArray.<init>:(I)V
            putfield sun.java2d.xr.MaskTile.rects:Lsun/java2d/xr/GrowableRectArray;
         2: .line 41
            aload 0 /* this */
            new sun.java2d.xr.DirtyRegion
            dup
            invokespecial sun.java2d.xr.DirtyRegion.<init>:()V
            putfield sun.java2d.xr.MaskTile.dirtyArea:Lsun/java2d/xr/DirtyRegion;
         3: .line 42
            return
        end local 0 // sun.java2d.xr.MaskTile this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lsun/java2d/xr/MaskTile;

  public void addRect(int, int, int, int);
    descriptor: (IIII)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=5
        start local 0 // sun.java2d.xr.MaskTile this
        start local 1 // int x
        start local 2 // int y
        start local 3 // int width
        start local 4 // int height
         0: .line 45
            aload 0 /* this */
            getfield sun.java2d.xr.MaskTile.rects:Lsun/java2d/xr/GrowableRectArray;
            invokevirtual sun.java2d.xr.GrowableRectArray.getNextIndex:()I
            istore 5 /* index */
        start local 5 // int index
         1: .line 46
            aload 0 /* this */
            getfield sun.java2d.xr.MaskTile.rects:Lsun/java2d/xr/GrowableRectArray;
            iload 5 /* index */
            iload 1 /* x */
            invokevirtual sun.java2d.xr.GrowableRectArray.setX:(II)V
         2: .line 47
            aload 0 /* this */
            getfield sun.java2d.xr.MaskTile.rects:Lsun/java2d/xr/GrowableRectArray;
            iload 5 /* index */
            iload 2 /* y */
            invokevirtual sun.java2d.xr.GrowableRectArray.setY:(II)V
         3: .line 48
            aload 0 /* this */
            getfield sun.java2d.xr.MaskTile.rects:Lsun/java2d/xr/GrowableRectArray;
            iload 5 /* index */
            iload 3 /* width */
            invokevirtual sun.java2d.xr.GrowableRectArray.setWidth:(II)V
         4: .line 49
            aload 0 /* this */
            getfield sun.java2d.xr.MaskTile.rects:Lsun/java2d/xr/GrowableRectArray;
            iload 5 /* index */
            iload 4 /* height */
            invokevirtual sun.java2d.xr.GrowableRectArray.setHeight:(II)V
         5: .line 50
            return
        end local 5 // int index
        end local 4 // int height
        end local 3 // int width
        end local 2 // int y
        end local 1 // int x
        end local 0 // sun.java2d.xr.MaskTile this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Lsun/java2d/xr/MaskTile;
            0    6     1       x  I
            0    6     2       y  I
            0    6     3   width  I
            0    6     4  height  I
            1    6     5   index  I
    MethodParameters:
        Name  Flags
      x       
      y       
      width   
      height  

  public void addLine(int, int, int, int);
    descriptor: (IIII)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=8, args_size=5
        start local 0 // sun.java2d.xr.MaskTile this
        start local 1 // int x1
        start local 2 // int y1
        start local 3 // int x2
        start local 4 // int y2
         0: .line 58
            new sun.java2d.xr.DirtyRegion
            dup
            invokespecial sun.java2d.xr.DirtyRegion.<init>:()V
            astore 5 /* region */
        start local 5 // sun.java2d.xr.DirtyRegion region
         1: .line 59
            aload 5 /* region */
            iload 1 /* x1 */
            iload 2 /* y1 */
            iload 3 /* x2 */
            iload 4 /* y2 */
            invokevirtual sun.java2d.xr.DirtyRegion.setDirtyLineRegion:(IIII)V
         2: .line 60
            aload 5 /* region */
            getfield sun.java2d.xr.DirtyRegion.x2:I
            aload 5 /* region */
            getfield sun.java2d.xr.DirtyRegion.x:I
            isub
            istore 6 /* xDiff */
        start local 6 // int xDiff
         3: .line 61
            aload 5 /* region */
            getfield sun.java2d.xr.DirtyRegion.y2:I
            aload 5 /* region */
            getfield sun.java2d.xr.DirtyRegion.y:I
            isub
            istore 7 /* yDiff */
        start local 7 // int yDiff
         4: .line 63
            iload 6 /* xDiff */
            ifeq 5
            iload 7 /* yDiff */
            ifne 9
         5: .line 64
      StackMap locals: sun.java2d.xr.DirtyRegion int int
      StackMap stack:
            aload 0 /* this */
            aload 5 /* region */
            getfield sun.java2d.xr.DirtyRegion.x:I
            aload 5 /* region */
            getfield sun.java2d.xr.DirtyRegion.y:I
         6: .line 65
            aload 5 /* region */
            getfield sun.java2d.xr.DirtyRegion.x2:I
            aload 5 /* region */
            getfield sun.java2d.xr.DirtyRegion.x:I
            isub
            iconst_1
            iadd
            aload 5 /* region */
            getfield sun.java2d.xr.DirtyRegion.y2:I
            aload 5 /* region */
            getfield sun.java2d.xr.DirtyRegion.y:I
            isub
            iconst_1
            iadd
         7: .line 64
            invokevirtual sun.java2d.xr.MaskTile.addRect:(IIII)V
         8: .line 66
            goto 14
      StackMap locals:
      StackMap stack:
         9: iload 6 /* xDiff */
            iconst_1
            if_icmpne 13
            iload 7 /* yDiff */
            iconst_1
            if_icmpne 13
        10: .line 67
            aload 0 /* this */
            iload 1 /* x1 */
            iload 2 /* y1 */
            iconst_1
            iconst_1
            invokevirtual sun.java2d.xr.MaskTile.addRect:(IIII)V
        11: .line 68
            aload 0 /* this */
            iload 3 /* x2 */
            iload 4 /* y2 */
            iconst_1
            iconst_1
            invokevirtual sun.java2d.xr.MaskTile.addRect:(IIII)V
        12: .line 69
            goto 14
        13: .line 70
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* x1 */
            iload 2 /* y1 */
            iload 3 /* x2 */
            iload 4 /* y2 */
            invokevirtual sun.java2d.xr.MaskTile.lineToRects:(IIII)V
        14: .line 72
      StackMap locals:
      StackMap stack:
            return
        end local 7 // int yDiff
        end local 6 // int xDiff
        end local 5 // sun.java2d.xr.DirtyRegion region
        end local 4 // int y2
        end local 3 // int x2
        end local 2 // int y1
        end local 1 // int x1
        end local 0 // sun.java2d.xr.MaskTile this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   15     0    this  Lsun/java2d/xr/MaskTile;
            0   15     1      x1  I
            0   15     2      y1  I
            0   15     3      x2  I
            0   15     4      y2  I
            1   15     5  region  Lsun/java2d/xr/DirtyRegion;
            3   15     6   xDiff  I
            4   15     7   yDiff  I
    MethodParameters:
      Name  Flags
      x1    
      y1    
      x2    
      y2    

  private void lineToRects(int, int, int, int);
    descriptor: (IIII)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=19, args_size=5
        start local 0 // sun.java2d.xr.MaskTile this
        start local 1 // int xstart
        start local 2 // int ystart
        start local 3 // int xend
        start local 4 // int yend
         0: .line 78
            iload 3 /* xend */
            iload 1 /* xstart */
            isub
            istore 8 /* dx */
        start local 8 // int dx
         1: .line 79
            iload 4 /* yend */
            iload 2 /* ystart */
            isub
            istore 9 /* dy */
        start local 9 // int dy
         2: .line 82
            iload 8 /* dx */
            ifle 3
            iconst_1
            goto 5
      StackMap locals: sun.java2d.xr.MaskTile int int int int top top top int int
      StackMap stack:
         3: iload 8 /* dx */
            ifge 4
            iconst_m1
            goto 5
      StackMap locals:
      StackMap stack:
         4: iconst_0
      StackMap locals:
      StackMap stack: int
         5: istore 10 /* incx */
        start local 10 // int incx
         6: .line 83
            iload 9 /* dy */
            ifle 7
            iconst_1
            goto 9
      StackMap locals: int
      StackMap stack:
         7: iload 9 /* dy */
            ifge 8
            iconst_m1
            goto 9
      StackMap locals:
      StackMap stack:
         8: iconst_0
      StackMap locals:
      StackMap stack: int
         9: istore 11 /* incy */
        start local 11 // int incy
        10: .line 84
            iload 8 /* dx */
            ifge 12
        11: .line 85
            iload 8 /* dx */
            ineg
            istore 8 /* dx */
        12: .line 86
      StackMap locals: int
      StackMap stack:
            iload 9 /* dy */
            ifge 14
        13: .line 87
            iload 9 /* dy */
            ineg
            istore 9 /* dy */
        14: .line 90
      StackMap locals:
      StackMap stack:
            iload 8 /* dx */
            iload 9 /* dy */
            if_icmple 22
        15: .line 92
            iload 10 /* incx */
            istore 12 /* pdx */
        start local 12 // int pdx
        16: .line 93
            iconst_0
            istore 13 /* pdy */
        start local 13 // int pdy
        17: .line 94
            iload 10 /* incx */
            istore 14 /* ddx */
        start local 14 // int ddx
        18: .line 95
            iload 11 /* incy */
            istore 15 /* ddy */
        start local 15 // int ddy
        19: .line 96
            iload 9 /* dy */
            istore 16 /* es */
        start local 16 // int es
        20: .line 97
            iload 8 /* dx */
            istore 17 /* el */
        start local 17 // int el
        21: .line 98
            goto 28
        end local 17 // int el
        end local 16 // int es
        end local 15 // int ddy
        end local 14 // int ddx
        end local 13 // int pdy
        end local 12 // int pdx
        22: .line 100
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 12 /* pdx */
        start local 12 // int pdx
        23: .line 101
            iload 11 /* incy */
            istore 13 /* pdy */
        start local 13 // int pdy
        24: .line 102
            iload 10 /* incx */
            istore 14 /* ddx */
        start local 14 // int ddx
        25: .line 103
            iload 11 /* incy */
            istore 15 /* ddy */
        start local 15 // int ddy
        26: .line 104
            iload 8 /* dx */
            istore 16 /* es */
        start local 16 // int es
        27: .line 105
            iload 9 /* dy */
            istore 17 /* el */
        start local 17 // int el
        28: .line 109
      StackMap locals: sun.java2d.xr.MaskTile int int int int top top top int int int int int int int int int int
      StackMap stack:
            iload 1 /* xstart */
            istore 5 /* x */
        start local 5 // int x
        29: .line 110
            iload 2 /* ystart */
            istore 6 /* y */
        start local 6 // int y
        30: .line 111
            iload 17 /* el */
            iconst_2
            idiv
            istore 18 /* err */
        start local 18 // int err
        31: .line 112
            aload 0 /* this */
            iload 5 /* x */
            iload 6 /* y */
            iconst_1
            iconst_1
            invokevirtual sun.java2d.xr.MaskTile.addRect:(IIII)V
        32: .line 115
            iconst_0
            istore 7 /* t */
        start local 7 // int t
        33: goto 44
        34: .line 118
      StackMap locals: sun.java2d.xr.MaskTile int int int int int int int int int int int int int int int int int int
      StackMap stack:
            iload 18 /* err */
            iload 16 /* es */
            isub
            istore 18 /* err */
        35: .line 119
            iload 18 /* err */
            ifge 40
        36: .line 121
            iload 18 /* err */
            iload 17 /* el */
            iadd
            istore 18 /* err */
        37: .line 123
            iload 5 /* x */
            iload 14 /* ddx */
            iadd
            istore 5 /* x */
        38: .line 124
            iload 6 /* y */
            iload 15 /* ddy */
            iadd
            istore 6 /* y */
        39: .line 125
            goto 42
        40: .line 127
      StackMap locals:
      StackMap stack:
            iload 5 /* x */
            iload 12 /* pdx */
            iadd
            istore 5 /* x */
        41: .line 128
            iload 6 /* y */
            iload 13 /* pdy */
            iadd
            istore 6 /* y */
        42: .line 130
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 5 /* x */
            iload 6 /* y */
            iconst_1
            iconst_1
            invokevirtual sun.java2d.xr.MaskTile.addRect:(IIII)V
        43: .line 115
            iinc 7 /* t */ 1
      StackMap locals:
      StackMap stack:
        44: iload 7 /* t */
            iload 17 /* el */
            if_icmplt 34
        45: .line 134
            return
        end local 18 // int err
        end local 17 // int el
        end local 16 // int es
        end local 15 // int ddy
        end local 14 // int ddx
        end local 13 // int pdy
        end local 12 // int pdx
        end local 11 // int incy
        end local 10 // int incx
        end local 9 // int dy
        end local 8 // int dx
        end local 7 // int t
        end local 6 // int y
        end local 5 // int x
        end local 4 // int yend
        end local 3 // int xend
        end local 2 // int ystart
        end local 1 // int xstart
        end local 0 // sun.java2d.xr.MaskTile this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   46     0    this  Lsun/java2d/xr/MaskTile;
            0   46     1  xstart  I
            0   46     2  ystart  I
            0   46     3    xend  I
            0   46     4    yend  I
           29   46     5       x  I
           30   46     6       y  I
           33   46     7       t  I
            1   46     8      dx  I
            2   46     9      dy  I
            6   46    10    incx  I
           10   46    11    incy  I
           16   22    12     pdx  I
           23   46    12     pdx  I
           17   22    13     pdy  I
           24   46    13     pdy  I
           18   22    14     ddx  I
           25   46    14     ddx  I
           19   22    15     ddy  I
           26   46    15     ddy  I
           20   22    16      es  I
           27   46    16      es  I
           21   22    17      el  I
           28   46    17      el  I
           31   46    18     err  I
    MethodParameters:
        Name  Flags
      xstart  
      ystart  
      xend    
      yend    

  public void calculateDirtyAreas();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=4, args_size=1
        start local 0 // sun.java2d.xr.MaskTile this
         0: .line 138
            iconst_0
            istore 1 /* i */
        start local 1 // int i
         1: goto 9
         2: .line 139
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield sun.java2d.xr.MaskTile.rects:Lsun/java2d/xr/GrowableRectArray;
            iload 1 /* i */
            invokevirtual sun.java2d.xr.GrowableRectArray.getX:(I)I
            istore 2 /* x */
        start local 2 // int x
         3: .line 140
            aload 0 /* this */
            getfield sun.java2d.xr.MaskTile.rects:Lsun/java2d/xr/GrowableRectArray;
            iload 1 /* i */
            invokevirtual sun.java2d.xr.GrowableRectArray.getY:(I)I
            istore 3 /* y */
        start local 3 // int y
         4: .line 141
            aload 0 /* this */
            getfield sun.java2d.xr.MaskTile.dirtyArea:Lsun/java2d/xr/DirtyRegion;
            iload 2 /* x */
            iload 3 /* y */
         5: .line 142
            iload 2 /* x */
            aload 0 /* this */
            getfield sun.java2d.xr.MaskTile.rects:Lsun/java2d/xr/GrowableRectArray;
            iload 1 /* i */
            invokevirtual sun.java2d.xr.GrowableRectArray.getWidth:(I)I
            iadd
         6: .line 143
            iload 3 /* y */
            aload 0 /* this */
            getfield sun.java2d.xr.MaskTile.rects:Lsun/java2d/xr/GrowableRectArray;
            iload 1 /* i */
            invokevirtual sun.java2d.xr.GrowableRectArray.getHeight:(I)I
            iadd
         7: .line 141
            invokevirtual sun.java2d.xr.DirtyRegion.growDirtyRegion:(IIII)V
        end local 3 // int y
        end local 2 // int x
         8: .line 138
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 1 /* i */
            aload 0 /* this */
            getfield sun.java2d.xr.MaskTile.rects:Lsun/java2d/xr/GrowableRectArray;
            invokevirtual sun.java2d.xr.GrowableRectArray.getSize:()I
            if_icmplt 2
        end local 1 // int i
        10: .line 145
            return
        end local 0 // sun.java2d.xr.MaskTile this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Lsun/java2d/xr/MaskTile;
            1   10     1     i  I
            3    8     2     x  I
            4    8     3     y  I

  public void reset();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.java2d.xr.MaskTile this
         0: .line 148
            aload 0 /* this */
            getfield sun.java2d.xr.MaskTile.rects:Lsun/java2d/xr/GrowableRectArray;
            invokevirtual sun.java2d.xr.GrowableRectArray.clear:()V
         1: .line 149
            aload 0 /* this */
            getfield sun.java2d.xr.MaskTile.dirtyArea:Lsun/java2d/xr/DirtyRegion;
            invokevirtual sun.java2d.xr.DirtyRegion.clear:()V
         2: .line 150
            return
        end local 0 // sun.java2d.xr.MaskTile this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lsun/java2d/xr/MaskTile;

  public void translate(int, int);
    descriptor: (II)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // sun.java2d.xr.MaskTile this
        start local 1 // int x
        start local 2 // int y
         0: .line 153
            aload 0 /* this */
            getfield sun.java2d.xr.MaskTile.rects:Lsun/java2d/xr/GrowableRectArray;
            invokevirtual sun.java2d.xr.GrowableRectArray.getSize:()I
            ifle 2
         1: .line 154
            aload 0 /* this */
            getfield sun.java2d.xr.MaskTile.dirtyArea:Lsun/java2d/xr/DirtyRegion;
            iload 1 /* x */
            iload 2 /* y */
            invokevirtual sun.java2d.xr.DirtyRegion.translate:(II)V
         2: .line 156
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.java2d.xr.MaskTile.rects:Lsun/java2d/xr/GrowableRectArray;
            iload 1 /* x */
            iload 2 /* y */
            invokevirtual sun.java2d.xr.GrowableRectArray.translateRects:(II)V
         3: .line 157
            return
        end local 2 // int y
        end local 1 // int x
        end local 0 // sun.java2d.xr.MaskTile this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lsun/java2d/xr/MaskTile;
            0    4     1     x  I
            0    4     2     y  I
    MethodParameters:
      Name  Flags
      x     
      y     

  public sun.java2d.xr.GrowableRectArray getRects();
    descriptor: ()Lsun/java2d/xr/GrowableRectArray;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.java2d.xr.MaskTile this
         0: .line 160
            aload 0 /* this */
            getfield sun.java2d.xr.MaskTile.rects:Lsun/java2d/xr/GrowableRectArray;
            areturn
        end local 0 // sun.java2d.xr.MaskTile this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/java2d/xr/MaskTile;

  public sun.java2d.xr.DirtyRegion getDirtyArea();
    descriptor: ()Lsun/java2d/xr/DirtyRegion;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.java2d.xr.MaskTile this
         0: .line 164
            aload 0 /* this */
            getfield sun.java2d.xr.MaskTile.dirtyArea:Lsun/java2d/xr/DirtyRegion;
            areturn
        end local 0 // sun.java2d.xr.MaskTile this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/java2d/xr/MaskTile;
}
SourceFile: "MaskTile.java"