took another crack at rewriting my own propagator.
saving whatever the latest vresion is.