/// <inheritdoc />
 public override int GetHashCode()
 {
     unchecked
     {
         var hashCode = (int)Mode;
         hashCode = (hashCode * 397) ^ Staleness.GetHashCode();
         hashCode = (hashCode * 397) ^ Timestamp.GetHashCode();
         return(hashCode);
     }
 }
 /// <inheritdoc />
 public bool Equals(TimestampBound other)
 {
     if (ReferenceEquals(null, other))
     {
         return(false);
     }
     if (ReferenceEquals(this, other))
     {
         return(true);
     }
     return(Mode == other.Mode && Staleness.Equals(other.Staleness) && Timestamp.Equals(other.Timestamp));
 }