state_machine
some refactoring
Merge branch 'release/state_machine'

* release/state_machine:
  some refactoring
  state_machine
Merge tag 'state_machine' into develop

v1.64

* tag 'state_machine':
  some refactoring