refined keyboard input