added search, refactoring