Updated handle_input()