generalize date input