 
                           (and (empty? filtered-lexical-complements)
                                (empty? phrasal-complements))
-                          (log/warn (str "add-complement-to-bolt: could generate neither phrasal nor lexical complements for parent: "
+                          (log/warn (str "add-complement-to-bolt: could generate neither phrasal nor lexical complements for bolt:" (show-bolt bolt language-model) "; immediate parent: "
                                           (get-in bolt (concat (butlast path) [:rule]) :norule) " "
                                           "while trying to create a complement: " (spec-info spec)))
 

                         (truncate unified [path])
                         unified)))
                  (let [debug (log/trace (str "add-complement-to-bolt(total-depth=" total-depth
                                              ",path=" path ",bolt=(" (show-bolt bolt path language-model)
                                              "): calling generate-all(" (strip-refs spec) ");"
                                              "spec: " spec))
                        phrasal-complements (if (and (> max-total-depth total-depth)

        (> (* 10 prob) (rand-int 10)))
      false)))

(defn show-bolt [bolt language-model]
  (if (nil? bolt)
    (exception (str "don't call show-bolt with bolt=null."))
    (let [morph (:morph language-model)]
      (if (nil? morph)
        (exception (str "don't call show-bolt with morph=null."))
        (str "[" (get-in bolt [:rule])
             " '" (morph-with-recovery morph bolt) "'"
             (let [head-bolt (get-in bolt [:head])]
               (if (not (nil? head-bolt))
                 (let [rest-str (show-bolt (get-in bolt [:head]) language-model)]
                   (if (not (nil? rest-str))
                     (str " -> " rest-str)))))
             "]")))))

