public bool not_equal(int ex, int ey, cell_aa cell)
 {
     unchecked
     {
         return ((ex - x) | (ey - y) | (left - cell.left) | (right - cell.right)) != 0;
     }
 }
 public void Set(cell_aa cellB)
 {
     x = cellB.x;
     y = cellB.y;
     cover = cellB.cover;
     area = cellB.area;
     left = cellB.left;
     right = cellB.right;
 }
 static void swap_cells(cell_aa a, cell_aa b)
 {
     cell_aa temp = a;
     a = b;
     b = temp;
 }
 public void style(cell_aa cellB)
 {
     left = cellB.left;
     right = cellB.right;
 }
 public void scanline_cells(int y, out cell_aa[] CellData, out int Offset)
 {
     CellData = m_sorted_cells.data();
     Offset = m_sorted_y[y - m_min_y].start;
 }
 public void style(cell_aa style_cell)
 {
     m_style_cell.style(style_cell);
 }
 public void styles(int left, int right)
 {
     cell_aa cell = new cell_aa();
     cell.initial();
     cell.left = (int)left;
     cell.right = (int)right;
     m_Rasterizer.style(cell);
     if (left >= 0 && left < m_min_style) m_min_style = left;
     if (left >= 0 && left > m_max_style) m_max_style = left;
     if (right >= 0 && right < m_min_style) m_min_style = right;
     if (right >= 0 && right > m_max_style) m_max_style = right;
 }