added exceptions
added exceptions