     query
     (let [[k & ks] path]
       (letfn [(match [x]
-                (= k (join-key x)))
+                (= k (util/join-key x)))
               (value [x]
                 (focused-join x ks))]
         (if (map? query) ;; UNION

    (seq? expr)     (let [expr' (first expr)]
                      (when (map? expr')
                        (ffirst expr')))
    (ident? expr)   (cond-> expr (= '_ (second expr)) first)
    :else
    (throw
      (ex-info (str "Invalid query expr " expr)


(declare focus-query)

(defn- focused-join [expr ks]
  (let [expr-meta (meta expr)
        expr' (cond
