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

            if (booking_ != null)
            {
                hash ^= Booking.GetHashCode();
            }
            if (GroupName.Length != 0)
            {
                hash ^= GroupName.GetHashCode();
            }
            if (GroupNumber.Length != 0)
            {
                hash ^= GroupNumber.GetHashCode();
            }
            if (GroupContactName.Length != 0)
            {
                hash ^= GroupContactName.GetHashCode();
            }
            if (GroupType != 0)
            {
                hash ^= GroupType.GetHashCode();
            }
            if (bookingProperty_ != null)
            {
                hash ^= BookingProperty.GetHashCode();
            }
            hash ^= quantities_.GetHashCode();
            return(hash);
        }
 public void MergeFrom(GroupBookingExt other)
 {
     if (other == null)
     {
         return;
     }
     if (other.booking_ != null)
     {
         if (booking_ == null)
         {
             booking_ = new global::HOLMS.Types.Booking.Groups.GroupBooking();
         }
         Booking.MergeFrom(other.Booking);
     }
     if (other.GroupName.Length != 0)
     {
         GroupName = other.GroupName;
     }
     if (other.GroupNumber.Length != 0)
     {
         GroupNumber = other.GroupNumber;
     }
     if (other.GroupContactName.Length != 0)
     {
         GroupContactName = other.GroupContactName;
     }
     if (other.GroupType != 0)
     {
         GroupType = other.GroupType;
     }
     if (other.bookingProperty_ != null)
     {
         if (bookingProperty_ == null)
         {
             bookingProperty_ = new global::HOLMS.Types.TenancyConfig.Indicators.PropertyIndicator();
         }
         BookingProperty.MergeFrom(other.BookingProperty);
     }
     quantities_.Add(other.quantities_);
 }