ex5 exceptions done