refactor and added exceptions notifications