Explain Finite State Automata