added some comments and regions, and the define in order to ignore the errors that are thrown by default