public override int GetHashCode()
        {
            int hash = 1;

            if (groupBookingId_ != null)
            {
                hash ^= GroupBookingId.GetHashCode();
            }
            if (InvoiceNumber != 0)
            {
                hash ^= InvoiceNumber.GetHashCode();
            }
            if (invoiceId_ != null)
            {
                hash ^= InvoiceId.GetHashCode();
            }
            if (Voided != false)
            {
                hash ^= Voided.GetHashCode();
            }
            if (createdBy_ != null)
            {
                hash ^= CreatedBy.GetHashCode();
            }
            if (voidedBy_ != null)
            {
                hash ^= VoidedBy.GetHashCode();
            }
            if (voidedAt_ != null)
            {
                hash ^= VoidedAt.GetHashCode();
            }
            if (createdAt_ != null)
            {
                hash ^= CreatedAt.GetHashCode();
            }
            return(hash);
        }
 public void MergeFrom(GroupBookingInvoiceMapping other)
 {
     if (other == null)
     {
         return;
     }
     if (other.groupBookingId_ != null)
     {
         if (groupBookingId_ == null)
         {
             groupBookingId_ = new global::HOLMS.Types.Booking.Indicators.GroupBookingIndicator();
         }
         GroupBookingId.MergeFrom(other.GroupBookingId);
     }
     if (other.InvoiceNumber != 0)
     {
         InvoiceNumber = other.InvoiceNumber;
     }
     if (other.invoiceId_ != null)
     {
         if (invoiceId_ == null)
         {
             invoiceId_ = new global::HOLMS.Types.Primitive.Uuid();
         }
         InvoiceId.MergeFrom(other.InvoiceId);
     }
     if (other.Voided != false)
     {
         Voided = other.Voided;
     }
     if (other.createdBy_ != null)
     {
         if (createdBy_ == null)
         {
             createdBy_ = new global::HOLMS.Types.IAM.StaffMember();
         }
         CreatedBy.MergeFrom(other.CreatedBy);
     }
     if (other.voidedBy_ != null)
     {
         if (voidedBy_ == null)
         {
             voidedBy_ = new global::HOLMS.Types.IAM.StaffMember();
         }
         VoidedBy.MergeFrom(other.VoidedBy);
     }
     if (other.voidedAt_ != null)
     {
         if (voidedAt_ == null)
         {
             voidedAt_ = new global::Google.Protobuf.WellKnownTypes.Timestamp();
         }
         VoidedAt.MergeFrom(other.VoidedAt);
     }
     if (other.createdAt_ != null)
     {
         if (createdAt_ == null)
         {
             createdAt_ = new global::Google.Protobuf.WellKnownTypes.Timestamp();
         }
         CreatedAt.MergeFrom(other.CreatedAt);
     }
 }