public override int GetHashCode() { unchecked { int hash = 17; if (Status != default(ScheduleStatus)) { hash = hash * 23 + Status.GetHashCode(); } if (Every != default(int)) { hash = hash * 23 + Every.GetHashCode(); } if (Period != default(SchedulePeriod)) { hash = hash * 23 + Period.GetHashCode(); } if (On != default(ScheduleOn)) { hash = hash * 23 + On.GetHashCode(); } if (InWords != default(String)) { hash = hash * 23 + InWords.GetHashCode(); } if (StartDate != default(DateTime)) { hash = hash * 23 + StartDate.GetHashCode(); } if (EndDate != default(DateTime)) { hash = hash * 23 + EndDate.GetHashCode(); } if (Charge != default(ChargeScheduling)) { hash = hash * 23 + Charge.GetHashCode(); } if (Transfer != default(TransferScheduling)) { hash = hash * 23 + Transfer.GetHashCode(); } if (Occurrences != default(ScopedList <Occurrence>)) { hash = hash * 23 + Occurrences.GetHashCode(); } if (NextOccurrences != default(ScopedList <Occurrence>)) { hash = hash * 23 + NextOccurrences.GetHashCode(); } return(hash); } }