wip

hum... currently returning `undefined` will also interrupt the event, I find it rather fragile.
we shouldn't interrupt for all falsy values IMO