public boolean gameOver() {
		for (int r = 0; r < WIDTH; r++) {
			for (int c = 0; c < WIDTH; c++) {
				if (squares[r][c] == '.') {
					for (int[] offset : OFFSETS) {
						int dr = offset[0];
						int dc = offset[1];
						if (flips(r, c, dr, dc) > 0) {
							return false;
						}
						colorToPlay = opposite(colorToPlay);
						if (flips(r, c, dr, dc) > 0) {
							colorToPlay = opposite(colorToPlay);
							return false;
						}
						colorToPlay = opposite(colorToPlay);
					}
				}
			}
		}
		return true;
	}