basic and advanced search functionality