correction to TAP fsm