/// <summary>
        /// Returns true if ComAdobeCqSocialCommonsUgclimitsconfigImplCommunityUserUGCLimitProperties instances are equal
        /// </summary>
        /// <param name="other">Instance of ComAdobeCqSocialCommonsUgclimitsconfigImplCommunityUserUGCLimitProperties to be compared</param>
        /// <returns>Boolean</returns>
        public bool Equals(ComAdobeCqSocialCommonsUgclimitsconfigImplCommunityUserUGCLimitProperties other)
        {
            if (other is null)
            {
                return(false);
            }
            if (ReferenceEquals(this, other))
            {
                return(true);
            }

            return
                ((
                     Enable == other.Enable ||
                     Enable != null &&
                     Enable.Equals(other.Enable)
                     ) &&
                 (
                     UGCLimit == other.UGCLimit ||
                     UGCLimit != null &&
                     UGCLimit.Equals(other.UGCLimit)
                 ) &&
                 (
                     UgcLimitDuration == other.UgcLimitDuration ||
                     UgcLimitDuration != null &&
                     UgcLimitDuration.Equals(other.UgcLimitDuration)
                 ) &&
                 (
                     Domains == other.Domains ||
                     Domains != null &&
                     Domains.Equals(other.Domains)
                 ) &&
                 (
                     ToList == other.ToList ||
                     ToList != null &&
                     ToList.Equals(other.ToList)
                 ));
        }