            entries (seq (unnest-dispatch-table dispatch-table))]
       (if-let [analyze-state' (analyze* analyze-state arg-resolvers (first entries))]
         (recur analyze-state' (next entries))
-        (let [[routes handlers middleware] analyze-state]
-          {:routes     (sorted-routes routes)
-           :handlers   handlers
-           :middleware (set/map-invert middleware)})))))
+        (let [[routes handlers] analyze-state]
+          {:routes   (sorted-routes routes)
+           :handlers handlers})))))
 
 (defn- map-traversal-dispatcher
   "Returns a Ring handler using the given dispatch-map to guide


(defn- build-dispatch-map
  "Returns a dispatch-map for use with map-traversal-dispatcher."
  [{:keys [routes handlers middleware]}
   {:keys [async? arg-resolvers sync-wrapper]}]
  (reduce (fn [dispatch-map [[method pathvec] handler-key]]
            (t/track #(format "Compiling handler for `%s'."
                              (get-in handlers [handler-key :verb-fn-sym]))
                     (let [{:keys           [middleware-key route-params
                                             verb-fn-sym arglist
                                             metadata context]
                            extra-resolvers :arg-resolvers}

  provided by the values."
  {'show    [:get [:id]]
   'modify  [:put [:id]]
   ;; change will be removed at some point
   'change  [:put [:id]]
   'patch   [:patch [:id]]
   'destroy [:delete [:id]]
