'Can be overridden in order to modify the response object
before it\'s sent to the WSGI server.  By default this will
call all the :meth:`after_request` decorated functions.
.. versionchanged:: 0.5
As of Flask 0.5 the functions registered for after request
execution are called in reverse order of registration.
:param response: a :attr:`response_class` object.
:return: a new response object or the same, has to be an
instance of :attr:`response_class`.'

def process_response(self, response):

    ctx = _request_ctx_stack.top
    bp = ctx.request.blueprint
    funcs = ctx._after_request_functions
    if ((bp is not None) and (bp in self.after_request_funcs)):
        funcs = chain(funcs, reversed(self.after_request_funcs[bp]))
    if (None in self.after_request_funcs):
        funcs = chain(funcs, reversed(self.after_request_funcs[None]))
    for handler in funcs:
        response = handler(response)
    if (not self.session_interface.is_null_session(ctx.session)):
        self.session_interface.save_session(self, ctx.session, response)
    return response
