@Override
	public boolean equals(Object other) {
		if (this == other) {
			return true;
		}
		if (other == null) {
			return false;
		}
		if (getClass() != other.getClass()) {
			return false;
		}
		State that = (State) other;
		return colorToPlay == that.colorToPlay
				&& Arrays.deepEquals(squares, that.squares);
	}