Changes saved 1.8%, last run finishing in 58.9 minutes. I can shave a few more minutes off with these types of optimizations, but the big remaining one is shani. Non-Merkle hashing is at least 10% (shani doesn't help Merkle much). Hard to say for sure since there are so many types and calls. But reducing that to 2% might save us around 5 minutes. At that point it's pushing the theoretical limit based on bandwidth.