ADD searcher
MOD some refactoring and comments