Rather than keeping state around within the formatter, can load time bet put on the `summary` object here?  That seems like it would remove another need for inheritance.