Decouple with SearchResult and QuerySearcher