formatting and date format
wrap user-input-generation in try catch