Changed to use callbacks instead of returning associated event-names