moved notifier from io to io.listener