implement handle_input()