code: func (h *pathHandler) ServeHTTP(w http.ResponseWriter, r *http.Request) {
  	if exactHandler, ok := h.pathToHandler[r.URL.Path]; ok {
  		klog.V(5).Infof("%v: %q satisfied by exact match", h.muxName, r.URL.Path)
  		exactHandler.ServeHTTP(w, r)
  		return
  	}
  
  	for _, prefixHandler := range h.prefixHandlers {
  		if strings.HasPrefix(r.URL.Path, prefixHandler.prefix) {
  			klog.V(5).Infof("%v: %q satisfied by prefix %v", h.muxName, r.URL.Path, prefixHandler.prefix)
  			prefixHandler.handler.ServeHTTP(w, r)
  			return
  		}
  	}
  
  	klog.V(5).Infof("%v: %q satisfied by NotFoundHandler", h.muxName, r.URL.Path)
  	h.notFoundHandler.ServeHTTP(w, r)
  }
docs: // ServeHTTP makes it an http.Handler