class_docstr: Abstract router interface.
class_docstr_tok: ["Abstract","router","interface","."]
docstr: Must be implemented to return an appropriate instance of `~.httputil.HTTPMessageDelegate`
  that can serve the request.
  Routing implementations may pass additional kwargs to extend the routing logic.
  
  :arg httputil.HTTPServerRequest request: current HTTP request.
  :arg kwargs: additional keyword arguments passed by routing implementation.
  :returns: an instance of `~.httputil.HTTPMessageDelegate` that will be used to
      process the request.
docstr_tok: ["Must","be","implemented","to","return","an","appropriate","instance","of","`","~.httputil.HTTPMessageDelegate","`","that","can","serve","the","request",".","Routing","implementations","may","pass","additional","kwargs","to","extend","the","routing","logic",".",":","arg","httputil.HTTPServerRequest","request",":","current","HTTP","request",".",":","arg","kwargs",":","additional","keyword","arguments","passed","by","routing","implementation",".",":","returns",":","an","instance","of","`","~.httputil.HTTPMessageDelegate","`","that","will","be","used","to","process","the","request","."]
code: def find_handler(self, request, **kwargs):
      # type: (httputil.HTTPServerRequest, typing.Any)->httputil.HTTPMessageDelegate
      """Must be implemented to return an appropriate instance of `~.httputil.HTTPMessageDelegate`
      that can serve the request.
      Routing implementations may pass additional kwargs to extend the routing logic.
  
      :arg httputil.HTTPServerRequest request: current HTTP request.
      :arg kwargs: additional keyword arguments passed by routing implementation.
      :returns: an instance of `~.httputil.HTTPMessageDelegate` that will be used to
          process the request.
      """
      raise NotImplementedError()
  
imports: from __future__ import absolute_import, division, print_function
  import re
  from functools import partial
  from tornado import httputil
  from tornado.httpserver import _CallableAdapter
  from tornado.escape import url_escape, url_unescape, utf8
  from tornado.log import app_log
  from tornado.util import basestring_type, import_object, re_unescape, unicode_type
label_desc: Use image node_id 1 for calling the Router obj's underlying member method code with example usage: obj.find_handler(request) without return types