new state_machine extension adde to source