> Whew. > > This was way too big to be reviewed in a single sitting. I do not > know offhand if there is a better way to structure the changes into > a more digestible pieces to help prevent reviewers from overlooking > potential mistakes, though. > > Thanks. I just took a look at this, and one thing that would have helped is if you ported the end of the function first in a commit, and work your way backwards (in one or more commits). After reading through the whole thing, I saw that this is mostly a straightforward start-to-finish port (besides factoring out code into functions), but it would be much easier for reviewers to conceptualize and discuss the different parts if they were already divided.