a loot of modifications on error handling
a loot of modifications on error handling