added search and hash tables