starting to handle exceptions