public override bool Equals(object obj) { if (obj == null) { return(false); } if (obj == this) { return(true); } return(obj is InventoryChange other && ((Type == null && other.Type == null) || (Type?.Equals(other.Type) == true)) && ((PhysicalCount == null && other.PhysicalCount == null) || (PhysicalCount?.Equals(other.PhysicalCount) == true)) && ((Adjustment == null && other.Adjustment == null) || (Adjustment?.Equals(other.Adjustment) == true)) && ((Transfer == null && other.Transfer == null) || (Transfer?.Equals(other.Transfer) == true))); }