anchor.diff:    (mapcar #'(lambda (seq) (add-seq trie seq)) seqs))
   
   (defun add-seq (trie seq &optional (count 1))
  -  "Add a branch to the trie count times. If branch already exists, increase it’s width.
  -  A count below one is changed to one. Modifies trie in-place."
  +  "Add a branch to the trie count times. Modifies trie in-place.
  +  If branch already exists, increase it’s width.
  +  A count below one is changed to one."
     (when (< count 0)
       (error (format nil "Negative count ~A." count)))
     (incf (trie-width trie) count)
  
positive.code:       ; 3. If width is 0, remove node into new trie to be returned.
        (when (equal 0 (trie-width node))
          (remove-node node key)))))
  
  ; (defun remove-key-broken (trie key)
  ;   "###"
  ;   (let ((node (find-key trie key))
  ;       (branches (trie-branches trie)))
  ;     (when node
  ;       (decf (trie-width node)) ; FIXME
  ;       (when (<= 0 trie-width node)
  ;         (setf branches (remove-if #'(lambda (x) (equal x key)) branches))))))
  
  
  ; (defun remove-seq (trie seq &optional (count 1))
  ;   "### Remove a sequence from trie"
  
negative.code:   (find key (trie-branches trie) :test #'equal :key #'trie-key))
  
  (defun sym-interval (trie key)
    "Return interval limits for a symbol matching key.
    Nil if key not found."
    (when (find-key trie key)
      (let* ((node (find-key trie key))
             (low (sym-low trie key))
  