nfa
---------------------------------------