I find the `err1`/`err2` confusing, can you just return after successfully parsing?