if the user fails, the function should be recursiv...
# announcements
j
if the user fails, the function should be recursively called