New error handling model