implementing context processors