abstract interfaces for state behavior
Merge branch 'master' of https://github.com/denper-0/M7012E