updated to use ginsfsm