public override bool Equals(object obj)
        {
            if (obj == null)
            {
                return(false);
            }

            if (obj == this)
            {
                return(true);
            }

            return(obj is RetrieveCatalogObjectResponse other &&
                   ((Context == null && other.Context == null) || (Context?.Equals(other.Context) == true)) &&
                   ((Errors == null && other.Errors == null) || (Errors?.Equals(other.Errors) == true)) &&
                   ((MObject == null && other.MObject == null) || (MObject?.Equals(other.MObject) == true)) &&
                   ((RelatedObjects == null && other.RelatedObjects == null) || (RelatedObjects?.Equals(other.RelatedObjects) == true)));
        }