style state machines