Rework dispatching
Add State.tag_of_t