modify fsm