Explanation when to use state machine blocks.