now can handle abnormal exits of users