exceptions added as mentioned by Abhinav