more robust error handler