added more user validation