anchor.diff:        (cond ((stream:eos? in) (node-terminal? parent))
               ((null node) nil)
               ((= (stream:peek in) (node-label node))
  -             (when (loop FOR c IN (node-nobranch-child-labels node)
  +             (when (loop FOR c OF-TYPE uint1 IN (node-nobranch-child-labels node)
                            ALWAYS (and (progn (stream:eat in)
                                               (not (stream:eos? in)))
                                        (= c (stream:peek in))))
  
positive.code: ;;;;;;;;;;;;;;;;;;
  ;;; build function
  (defun reduce-nobranch-descendant (node)
    (loop FOR child = (node-child node) THEN (node-child child)
          WHILE (and child
                     (not (node-terminal? child))
                     (not (node-sibling child)))
      COLLECT (node-label child) INTO labels
      FINALLY
      (setf (node-child node) child
            (node-nobranch-child-labels node) labels)))
  
  (defun share (node memo)
    (when (null node)
  
negative.code: ;;; declamation
  (declaim #.*fastest*
           (inline make-node collect-children calc-child-total calc-sibling-total 
                   node-options element-count reduce-nobranch-descendant))
  
  ;;;;;;;;
  ;;; node
  