still confident, adding pass? and pass_for_each?
fixed
finished rad; cleaning up output
not pretty, but it runs for all three types
tweaking output
semi-finalized version