   ([routes]
    (segment-router routes {}))
   ([routes opts]
-   (let [compiled (compile-routes routes opts)
-         names (find-names routes opts)
+   (let [names (find-names routes opts)
          [pl nl] (reduce
                    (fn [[pl nl] [p {:keys [name] :as data} result]]
                      (let [{:keys [params] :as route} (impl/create [p data result])

       (router-name [_]
         :lookup-router)
       (routes [_]
         compiled)
       (options [_]
         opts)
       (route-names [_]

  ([routes]
   (linear-router routes {}))
  ([routes opts]
   (let [names (find-names routes opts)
         [pl nl] (reduce
                   (fn [[pl nl] [p {:keys [name] :as data} result]]
                     (let [{:keys [params] :as route} (impl/create [p data result])
