public override int GetHashCode()
 {
     unchecked
     {
         var hashCode = NewNumber;
         hashCode = (hashCode * 397) ^ Origin1.GetHashCode();
         hashCode = (hashCode * 397) ^ Origin2.GetHashCode();
         hashCode = (hashCode * 397) ^ Target.GetHashCode();
         return(hashCode);
     }
 }
 public bool Equals(NumbersMergedEvent other)
 => NewNumber == other.NewNumber &&
 ((Origin1.Equals(other.Origin1) && Origin2.Equals(other.Origin2)) || (Origin1.Equals(other.Origin2) && Origin2.Equals(Origin1))) &&
 Target.Equals(other.Target);