code: func (r *Router) Handler(req *http.Request) (route *Route, h Handler, vars map[string]string) {
  	var match mux.RouteMatch
  
  	if r.mux.Match(req, &match) {
  		route = r.getOrCreateRoute(match.Route, "")
  		h = match.Handler.(Handler)
  		vars = match.Vars
  		return
  	}
  
  	if r.NotFoundHandler == nil {
  		h = HandlerFunc(NotFound)
  		return
  	}
  
  	h = r.NotFoundHandler
  	return
  }
docs: // Handler returns a Handler that can be used to serve the request. Most of this
  // is pulled from http://goo.gl/tyxad8.