Decided to go after a stack based state machine