added InputManager class