/// <summary>
 /// Gets the hash code
 /// </summary>
 /// <returns>Hash code</returns>
 public override int GetHashCode()
 {
     unchecked // Overflow is fine, just wrap
     {
         var hashCode = 41;
         // Suitable nullity checks etc, of course :)
         if (InboxImplTypeproviderRegistrypaths != null)
         {
             hashCode = hashCode * 59 + InboxImplTypeproviderRegistrypaths.GetHashCode();
         }
         if (InboxImplTypeproviderLegacypaths != null)
         {
             hashCode = hashCode * 59 + InboxImplTypeproviderLegacypaths.GetHashCode();
         }
         if (InboxImplTypeproviderDefaulturlFailureitem != null)
         {
             hashCode = hashCode * 59 + InboxImplTypeproviderDefaulturlFailureitem.GetHashCode();
         }
         if (InboxImplTypeproviderDefaulturlWorkitem != null)
         {
             hashCode = hashCode * 59 + InboxImplTypeproviderDefaulturlWorkitem.GetHashCode();
         }
         if (InboxImplTypeproviderDefaulturlTask != null)
         {
             hashCode = hashCode * 59 + InboxImplTypeproviderDefaulturlTask.GetHashCode();
         }
         return(hashCode);
     }
 }
        /// <summary>
        /// Returns true if ComAdobeCqInboxImplTypeproviderItemTypeProviderProperties instances are equal
        /// </summary>
        /// <param name="other">Instance of ComAdobeCqInboxImplTypeproviderItemTypeProviderProperties to be compared</param>
        /// <returns>Boolean</returns>
        public bool Equals(ComAdobeCqInboxImplTypeproviderItemTypeProviderProperties other)
        {
            if (other is null)
            {
                return(false);
            }
            if (ReferenceEquals(this, other))
            {
                return(true);
            }

            return
                ((
                     InboxImplTypeproviderRegistrypaths == other.InboxImplTypeproviderRegistrypaths ||
                     InboxImplTypeproviderRegistrypaths != null &&
                     InboxImplTypeproviderRegistrypaths.Equals(other.InboxImplTypeproviderRegistrypaths)
                     ) &&
                 (
                     InboxImplTypeproviderLegacypaths == other.InboxImplTypeproviderLegacypaths ||
                     InboxImplTypeproviderLegacypaths != null &&
                     InboxImplTypeproviderLegacypaths.Equals(other.InboxImplTypeproviderLegacypaths)
                 ) &&
                 (
                     InboxImplTypeproviderDefaulturlFailureitem == other.InboxImplTypeproviderDefaulturlFailureitem ||
                     InboxImplTypeproviderDefaulturlFailureitem != null &&
                     InboxImplTypeproviderDefaulturlFailureitem.Equals(other.InboxImplTypeproviderDefaulturlFailureitem)
                 ) &&
                 (
                     InboxImplTypeproviderDefaulturlWorkitem == other.InboxImplTypeproviderDefaulturlWorkitem ||
                     InboxImplTypeproviderDefaulturlWorkitem != null &&
                     InboxImplTypeproviderDefaulturlWorkitem.Equals(other.InboxImplTypeproviderDefaulturlWorkitem)
                 ) &&
                 (
                     InboxImplTypeproviderDefaulturlTask == other.InboxImplTypeproviderDefaulturlTask ||
                     InboxImplTypeproviderDefaulturlTask != null &&
                     InboxImplTypeproviderDefaulturlTask.Equals(other.InboxImplTypeproviderDefaulturlTask)
                 ));
        }