working on user input