drastic revisions to state tracking, considering how to implement character translation