error handling with dynamic *handle-error*