protect the user from bad input
protect the user from bad input