private void setupGrid() {
		int middle = height / 2 + 1;	// middle row
		int center = width / 2 + 1;	// center column
		
		// lower 2 rows
		for (int i = 1; i < middle; i++)
		{
			for (int k = 1; k <= width; k++)
			{
				grid[i][k] = WHITE;
			}
		}
		
		// left half of middle row
		for (int k = 1; k < center; k++)
		{
			grid[middle][k] = (k & 1) == 1 ? BLACK : WHITE;
		}
		
		// middle center position
		grid[middle][center] = EMPTY;
		
		// right half of middle row
		for (int k = center + 1; k <= width; k++)
		{
			grid[middle][k] = (k & 1) == 1 ? WHITE : BLACK;
		}
		
		// upper 2 rows
		for (int i = middle+1; i <= height; i++)
		{
			for (int k = 1; k <= width; k++)
			{
				grid[i][k] = BLACK;
			}
		}
	}