@Override public int hashCode() { int result = 0; result = 31 * result + (which != null ? which.hashCode() : 0); result = 31 * result + (first != null ? first.hashCode() : 0); result = 31 * result + (second != null ? second.hashCode() : 0); return result; }