public IList<IHtmlElement> Apply(IHtmlElement root) { var result = new List<IHtmlElement>(); if (Filter.Check(root, root) != null) result.Add(root); root.Walkthough((elem) => { if (Filter.Check(elem, root) != null) result.Add(elem); return true; }); return result; }