anchor.diff:  
   ;;;;
   
  -(defun best-kana-conj (obj)
  -  (cond ((not (eql (best-kana obj) :null)) (best-kana obj))
  +(defun best-kana-conj (obj &aux (wc (word-conjugations obj)))
  +  (cond ((and (or (not wc) (eql wc :root))
  +              (not (eql (best-kana obj) :null)))
  +         (best-kana obj))
           (t (let* ((parents (query (:select 'kt.id 'conj.id
                                              :from (:as 'kanji-text 'kt)
                                              (:as 'conj-source-reading 'csr)
  
positive.code:                                                    (:= 'kt.text 'csr.source-text))))))
               (loop for (pid cid) in parents
                    for parent-bk = (best-kanji-conj (get-dao 'kana-text pid))
                    unless (eql parent-bk :null)
                    do (let* ((readings (query (:select 'text :from 'conj-source-reading
                                                       :where (:and (:= 'conj-id cid)
                                                                    (:= 'source-text parent-bk)))
  
negative.code:                   finally (return :null))))))
  
  
  (defun best-kanji-conj (obj &aux (wc (word-conjugations obj)))
    (cond ((and (or (not wc) (eql wc :root))
                (not (eql (best-kanji obj) :null)))
           (best-kanji obj))
          ((or (nokanji obj) (= (n-kanji (get-dao 'entry (seq obj))) 0))
           :null)
          (t (let* ((parents (query (:select 'kt.id 'conj.id
  