public void Update(DestinyProfileTransitoryComponent?other)
 {
     if (other is null)
     {
         return;
     }
     if (!PartyMembers.DeepEqualsList(other.PartyMembers))
     {
         PartyMembers = other.PartyMembers;
         OnPropertyChanged(nameof(PartyMembers));
     }
     if (!CurrentActivity.DeepEquals(other.CurrentActivity))
     {
         CurrentActivity.Update(other.CurrentActivity);
         OnPropertyChanged(nameof(CurrentActivity));
     }
     if (!Joinability.DeepEquals(other.Joinability))
     {
         Joinability.Update(other.Joinability);
         OnPropertyChanged(nameof(Joinability));
     }
     if (!Tracking.DeepEqualsList(other.Tracking))
     {
         Tracking = other.Tracking;
         OnPropertyChanged(nameof(Tracking));
     }
     if (LastOrbitedDestinationHash != other.LastOrbitedDestinationHash)
     {
         LastOrbitedDestinationHash = other.LastOrbitedDestinationHash;
         OnPropertyChanged(nameof(LastOrbitedDestinationHash));
     }
 }
 public bool DeepEquals(DestinyProfileTransitoryComponent?other)
 {
     return(other is not null &&
            PartyMembers.DeepEqualsList(other.PartyMembers) &&
            (CurrentActivity is not null ? CurrentActivity.DeepEquals(other.CurrentActivity) : other.CurrentActivity is null) &&
            (Joinability is not null ? Joinability.DeepEquals(other.Joinability) : other.Joinability is null) &&
            Tracking.DeepEqualsList(other.Tracking) &&
            LastOrbitedDestinationHash == other.LastOrbitedDestinationHash);
 }