automaton: use protected access types instead of private
This MR sets the private
access types to protected
so that the automaton can be used in derived classes.
This MR sets the private
access types to protected
so that the automaton can be used in derived classes.