public override int GetHashCode() { unchecked { var hashCode = (WorkCell != null ? WorkCell.GetHashCode() : 0); hashCode = (hashCode * 397) ^ (WorkUnit != null ? WorkUnit.GetHashCode() : 0); hashCode = (hashCode * 397) ^ Actual.GetHashCode(); hashCode = (hashCode * 397) ^ Remaining.GetHashCode(); hashCode = (hashCode * 397) ^ Set.GetHashCode(); hashCode = (hashCode * 397) ^ OverflowRemaining.GetHashCode(); hashCode = (hashCode * 397) ^ OverflowSet.GetHashCode(); hashCode = (hashCode * 397) ^ (RuleName != null ? RuleName.GetHashCode() : 0); hashCode = (hashCode * 397) ^ (RuleType != null ? RuleType.GetHashCode() : 0); return(hashCode); } }