                          (fn [replace-pattern]
                            (let [from (nth (:g replace-pattern) 0)
                                  to (nth (:g replace-pattern) 1)]
+                             (when (and from to infinitive)
+                               (log/debug (str "from: " from "; infinitive: " infinitive " => "
+                                               (re-matches from infinitive)))
+                               (log/debug (if (re-matches from infinitive)
+                                            (str "matched: from: " from "; infinitive: "
+                                                 infinitive " with "
+                                                 "unify-against: " (strip-refs (:u replace-pattern)) ";"
+                                                 "conjugate-with:" (strip-refs conjugate-with)))))
                              (if (and from to infinitive
                                       (re-matches from infinitive)
                                       (not (= :fail

                               (string/replace infinitive from to))))
                         regular-patterns))]
            (let [results (concat exceptional-surface-forms regulars [infinitive])]
              (first results))))))
  
(defn pre-conjugate [spec]

                                   {:français {:infinitive infinitive
                                               :exception true}}))))
                
                error (if (= :fail spec)
                        (throw (Exception. (str "conjugate was given conjugate-with=:fail; "
                                              "arg1="
                                              (strip-refs (dissoc-paths
