add debug output lines
factor publisher conditions lookups together
add whitespace
move condition relevance test out of fn
rename var
use OO style for conditions
abuse the type system less