public override bool ContainsText(string text) { string matchText = text.ToLowerInvariant(); return(Name.ToLowerInvariant().Contains(matchText) || PlotArchetype?.ToLowerInvariant().Contains(matchText) == true || PlotSubtype?.ToLowerInvariant().Contains(matchText) == true || PlotElement?.ToLowerInvariant().Contains(matchText) == true || CharacterConflict?.ToLowerInvariant().Contains(matchText) == true || Backgrounds?.ContainsText(matchText) == true || Resolutions?.ContainsText(matchText) == true || Traits?.ContainsText(matchText) == true || Settings?.ContainsText(matchText) == true || Themes?.ContainsText(matchText) == true || Genres?.ContainsText(matchText) == true); }