finite automata with output