all errors are now caught