         (do
           (if (not (= true head-pre-checks))
             (log/warn (str "moreover-head: pre-checked missed: fail-path-between "
-                           "parent:'" (get-in parent [:rule]) "' and child '" (morph child) "' :"
-                           (fail-path-between parent {:head child}))))
+                           "parent:'" (get-in parent [:rule]) "' and child:"
+                           (get-in child [:rule] (get-in child [:synsem :sem :pred] :nopred)) ".")))
           (if (= *extra-diagnostics* true)
             (let [fail-path (get-fail-path (get-in parent [:head]) child)]
               (log/trace (str "moreover-head: failed to add head: '" (morph child) "' to parent: " (get-in parent [:rule])))

          result
          (if head-pre-checks
            (do
              (log/debug (str "moreover-head: head failed prechecks for parent: " (get-in parent [:rule])))
              :fail)
            (unify
             (copy parent)

         label (if (get-in parent [:rule]) (get-in parent [:rule]) (:comment parent))]
     (if (not is-fail?)
       (do
         (log/debug (str "overh: " (get-in parent [:rule]) "=>" (get-in head [:rule]
                                                                        (get-in head [:synsem :sem :pred]
                                                                                "(no pred for head)"))))
         (log/trace (str "overh successful result: " (strip-refs (dissoc result :serialized))))
         (list result))))))

