/// <summary> /// Gets the hash code /// </summary> /// <returns>Hash code</returns> public override int GetHashCode() { unchecked // Overflow is fine, just wrap { var hashCode = 41; // Suitable nullity checks etc, of course :) if (BiggestRideDistance != null) { hashCode = hashCode * 59 + BiggestRideDistance.GetHashCode(); } if (BiggestClimbElevationGain != null) { hashCode = hashCode * 59 + BiggestClimbElevationGain.GetHashCode(); } if (RecentRideTotals != null) { hashCode = hashCode * 59 + RecentRideTotals.GetHashCode(); } if (RecentRunTotals != null) { hashCode = hashCode * 59 + RecentRunTotals.GetHashCode(); } if (RecentSwimTotals != null) { hashCode = hashCode * 59 + RecentSwimTotals.GetHashCode(); } if (YtdRideTotals != null) { hashCode = hashCode * 59 + YtdRideTotals.GetHashCode(); } if (YtdRunTotals != null) { hashCode = hashCode * 59 + YtdRunTotals.GetHashCode(); } if (YtdSwimTotals != null) { hashCode = hashCode * 59 + YtdSwimTotals.GetHashCode(); } if (AllRideTotals != null) { hashCode = hashCode * 59 + AllRideTotals.GetHashCode(); } if (AllRunTotals != null) { hashCode = hashCode * 59 + AllRunTotals.GetHashCode(); } if (AllSwimTotals != null) { hashCode = hashCode * 59 + AllSwimTotals.GetHashCode(); } return(hashCode); } }