errors are handled within state-machine with a try/catch.