agreed.

Btw, I generally think this stuff could be refactored, having a helper object that lives only during one dump(), and that keeps all those plenty of variables as protected attributes, so they don't have to be passed around all over the place.

This should be done in a follow-up.