events
StateGroupStorage
StateHandler
We make multiple passes over this, so a regular iterable won't do.