Added  custom exceptions