Yep, it's possible to do that and the "reshaping" (see lines 177-178) in `read_tag()` instead, I just thought this was a cleaner way to do it (instead of replicating the code in these places). If you think it's easier to read the other way, I can implement that there -- it's probably a little bit more efficient, at least.