public void MergeFrom(RecommendedCheckinAuthorizationAmounts other)
 {
     if (other == null)
     {
         return;
     }
     if (other.minimumGuaranteeVoided_ != null)
     {
         if (minimumGuaranteeVoided_ == null)
         {
             minimumGuaranteeVoided_ = new global::HOLMS.Types.Primitive.MonetaryAmount();
         }
         MinimumGuaranteeVoided.MergeFrom(other.MinimumGuaranteeVoided);
     }
     if (other.wholeStayGuaranteeVoided_ != null)
     {
         if (wholeStayGuaranteeVoided_ == null)
         {
             wholeStayGuaranteeVoided_ = new global::HOLMS.Types.Primitive.MonetaryAmount();
         }
         WholeStayGuaranteeVoided.MergeFrom(other.WholeStayGuaranteeVoided);
     }
     if (other.minimumGuaranteeCharged_ != null)
     {
         if (minimumGuaranteeCharged_ == null)
         {
             minimumGuaranteeCharged_ = new global::HOLMS.Types.Primitive.MonetaryAmount();
         }
         MinimumGuaranteeCharged.MergeFrom(other.MinimumGuaranteeCharged);
     }
     if (other.wholeStayGuaranteeCharged_ != null)
     {
         if (wholeStayGuaranteeCharged_ == null)
         {
             wholeStayGuaranteeCharged_ = new global::HOLMS.Types.Primitive.MonetaryAmount();
         }
         WholeStayGuaranteeCharged.MergeFrom(other.WholeStayGuaranteeCharged);
     }
 }
        public override int GetHashCode()
        {
            int hash = 1;

            if (minimumGuaranteeVoided_ != null)
            {
                hash ^= MinimumGuaranteeVoided.GetHashCode();
            }
            if (wholeStayGuaranteeVoided_ != null)
            {
                hash ^= WholeStayGuaranteeVoided.GetHashCode();
            }
            if (minimumGuaranteeCharged_ != null)
            {
                hash ^= MinimumGuaranteeCharged.GetHashCode();
            }
            if (wholeStayGuaranteeCharged_ != null)
            {
                hash ^= WholeStayGuaranteeCharged.GetHashCode();
            }
            return(hash);
        }