refactor do_look