control flow seems correct now
almost correct, must be a wrong branch somewhere...
state reset for debugging
1st attempt written, now debug!
TODO: unify equate equateargs