       (do
         (list bolt)))))
 
-(defn add-complements-to-bolts [bolts path spec grammar lexicon cache]
+(defn add-complements-to-bolts [bolts path spec grammar lexicon cache morph]
   (if (seq bolts)
-    (lazy-cat (add-complement (first bolts) path spec grammar lexicon cache)
-              (add-complements-to-bolts (rest bolts) path spec grammar lexicon cache))))
+    (lazy-cat (add-complement (first bolts) path spec grammar lexicon cache morph)
+              (add-complements-to-bolts (rest bolts) path spec grammar lexicon cache morph))))
 
 (defn path-to-map [path val]
   (let [feat (first path)]


              ;; else, no complements could be added to this bolt.
              (do
                (log/warn (str " add-complement took " run-time " msec, but found no lexical complements for " from-bolt ". Complements tried were: " complement-candidate-lexemes))
                ;; TODO: show warn about not finding ny phrasal complements, as well as not finding any lexical complements.
                (log/debug (str " fail-paths:"))
                (vec (map (fn [lexeme]

          (lazy-cat lexical phrasal)
          (lazy-cat phrasal lexical))))))

(defn add-complement [bolt path spec grammar lexicon cache morph]
  (let [input-spec spec
        cache (if (future? cache) @cache cache)
        from-bolt bolt ;; so we can show what (add-complement) did to the input bolt, for logging.
