public override int GetHashCode() { int result = 1; for (int i = 0; i < vals.Length; i++) result = 31 * result + vals[i].GetHashCode(); return result; }