lab5 add exceptions