As mentioned earlier, each module is implemented as a finite state acceptor or transducer; these modules are built and combined using tools from the FSM  and the GRM (Allauzen et al., 2005) toolkit.
the entire normalization process is computed by a weighted transducer (E • P • D • S), which can be optimized off-line as is commonly done in finitestate speech recognition systems .