public override int GetHashCode()
 {
     unchecked
     {
         var hashCode = (Description != null ? Description.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ (Currency != null ? Currency.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ AmountFrom.GetHashCode();
         hashCode = (hashCode * 397) ^ AmountTo.GetHashCode();
         hashCode = (hashCode * 397) ^ (Status != null ? Status.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ PaymentDateFrom.GetHashCode();
         hashCode = (hashCode * 397) ^ PaymentDateTo.GetHashCode();
         hashCode = (hashCode * 397) ^ TransferredAtFrom.GetHashCode();
         hashCode = (hashCode * 397) ^ TransferredAtTo.GetHashCode();
         hashCode = (hashCode * 397) ^ CreatedAtFrom.GetHashCode();
         hashCode = (hashCode * 397) ^ CreatedAtTo.GetHashCode();
         hashCode = (hashCode * 397) ^ UpdatedAtFrom.GetHashCode();
         hashCode = (hashCode * 397) ^ UpdatedAtTo.GetHashCode();
         hashCode = (hashCode * 397) ^ (BeneficiaryId != null ? BeneficiaryId.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ (ConversionId != null ? ConversionId.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ WithDeleted.GetHashCode();
         hashCode = (hashCode * 397) ^ (PaymentGroupId != null ? PaymentGroupId.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ (UniqueRequestId != null ? UniqueRequestId.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ (Scope != null ? Scope.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ (BuyCurrency != null ? BuyCurrency.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ (SellCurrency != null ? SellCurrency.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ ClientBuyAmountFrom.GetHashCode();
         hashCode = (hashCode * 397) ^ ClientBuyAmountTo.GetHashCode();
         hashCode = (hashCode * 397) ^ ClientSellAmountFrom.GetHashCode();
         hashCode = (hashCode * 397) ^ ClientSellAmountTo.GetHashCode();
         hashCode = (hashCode * 397) ^ PartnerBuyAmountFrom.GetHashCode();
         hashCode = (hashCode * 397) ^ PartnerBuyAmountTo.GetHashCode();
         hashCode = (hashCode * 397) ^ PartnerSellAmountFrom.GetHashCode();
         hashCode = (hashCode * 397) ^ PartnerSellAmountTo.GetHashCode();
         hashCode = (hashCode * 397) ^ (ClientStatus != null ? ClientStatus.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ (PartnerStatus != null ? PartnerStatus.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ ConversionDateFrom.GetHashCode();
         hashCode = (hashCode * 397) ^ ConversionDateTo.GetHashCode();
         hashCode = (hashCode * 397) ^ SettlementDateFrom.GetHashCode();
         hashCode = (hashCode * 397) ^ SettlementDateTo.GetHashCode();
         return(hashCode);
     }
 }