edited state machine