added features for user input