implemented request handler