protected bool Equals(Flight other)
 {
     return(DepartureDate.Equals(other.DepartureDate) &&
            DepartureDateUtc.Equals(other.DepartureDateUtc) &&
            DepartureDateLocal.Equals(other.DepartureDateLocal) &&
            DepartureDateOffset.Equals(other.DepartureDateOffset) &&
            DepartureDateOffsetZero.Equals(other.DepartureDateOffsetZero) &&
            DepartureDateOffsetNonLocal.Equals(other.DepartureDateOffsetNonLocal));
 }
 public override int GetHashCode()
 {
     unchecked
     {
         var hashCode = DepartureDate.GetHashCode();
         hashCode = (hashCode * 397) ^ DepartureDateUtc.GetHashCode();
         hashCode = (hashCode * 397) ^ DepartureDateLocal.GetHashCode();
         hashCode = (hashCode * 397) ^ DepartureDateOffset.GetHashCode();
         hashCode = (hashCode * 397) ^ DepartureDateOffsetZero.GetHashCode();
         hashCode = (hashCode * 397) ^ DepartureDateOffsetNonLocal.GetHashCode();
         return(hashCode);
     }
 }