Trying to clarify error handling, more work needed