flow needs injected event loop
auxiliary flow func
cleanup
cleanup