added typed keyboard input