step 6.3 - better errors catching