 
 (declare zip)
 
-(defn- vec-zip
+(defn- zip-vec
   ([fs m]
    (into (empty m) (map deepfmap #?(:clj (eval (vec fs))
                                     :cljs fs) m)))

      (mapcat #(apply map (partial deepfapply #?(:clj (eval %)
                                                 :cljs %)) m ms) fs))))

(defn- seq-fapply
  ([fs m]
   (mapcat #(map (partial deepfapply %) m) fs))
  ([fs m ms]
   (mapcat #(apply map (partial deepfapply %) m ms) fs)))

(defn- set-fapply
  ([fs m]
   (set
     (mapcat #(map (partial deepfapply %) m) fs)))

       (map (partial eval-entries seed fs) (cons m ms))
       (eval-entries seed fs m)))))

(defn- transitive-lst
  ([f]
   (fn [result m]
     (if-let [v (f m)]
       (conj result v)
       result))))

(defn- transitive-map
  ([k f]
   (fn [result m]
     (if-some [v (f m)]
