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

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

            return(obj is CatalogItemModifierListInfo other &&
                   ((ModifierListId == null && other.ModifierListId == null) || (ModifierListId?.Equals(other.ModifierListId) == true)) &&
                   ((ModifierOverrides == null && other.ModifierOverrides == null) || (ModifierOverrides?.Equals(other.ModifierOverrides) == true)) &&
                   ((MinSelectedModifiers == null && other.MinSelectedModifiers == null) || (MinSelectedModifiers?.Equals(other.MinSelectedModifiers) == true)) &&
                   ((MaxSelectedModifiers == null && other.MaxSelectedModifiers == null) || (MaxSelectedModifiers?.Equals(other.MaxSelectedModifiers) == true)) &&
                   ((Enabled == null && other.Enabled == null) || (Enabled?.Equals(other.Enabled) == true)));
        }