/// <inheritdoc/> protected override ulong CalculateLongHashCode() { var result = base.CalculateLongHashCode() ^ SubName.GetLongHashCode() ^ SuperName.GetLongHashCode(); if (Rank != null) { result ^= LongHashCodeWeights.BaseModalityWeight ^ Rank.GetLongHashCode(); } return(result); }