searcher impl complete