public override int GetHashCode() { int result; long temp; result = segments.GetHashCode(); temp = buf != +0.0d ? BitConverter.DoubleToInt64Bits(buf) : 0L; result = 31 * result + (int)(temp ^ (long)((ulong)temp >> 32)); return(result); }