Deterministic finite-state automaton