rotation with user input