refinement: use input manager.