A behaviour/support library for writing plain Erlang FSMs.