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