added exceptions
added exceptions
added exceptions
added exceptions