the ContextListener version