refactor computer.search