final user input