[FEATURE] added some new types of exceptions and added a unique code for each thrown exception