These days, finite automata are most often used as recognizers or generators of regular languages (see e.g. page 957). A finite automaton has a certain finite number of states, which can be represented as nodes in a network. These nodes are then joined by directed edges. When a finite automaton is used as a recognizer or a generator of a regular language, each edge has a single symbol such as 0 or 1 on it. Then a possible word in the language corresponds to the sequence of symbols seen on some possible path through the network that represents the finite automaton. If one is trying to recognize whether a given word is in a regular language, one starts from a particular "start node" of the finite automaton, and sees whether each successive symbol in the word corresponds to a successive element in a possible path through the network. If one is using a finite automaton as a generator of a regular language, one follows all possible paths, and sees what words they correspond to. But there is also another way to set up a finite automaton: not as a generator or recognizer, but instead as a transducer, or translator of one sequence to another. This setup was particularly popular in the past, often as a model of an electrical or mechanical machine that operates in some kind of sequential way. In the theory of finite automata, such transducer systems are sometimes known as Mealy machines. A finite automaton that is going to be used as a transducer has not just one symbol but two associated with each edge: an input symbol and an output symbol. Then given a sequence of symbols, one treats each one as an input, finds the corresponding edge in the network, and then gives the output symbol from that edge.