anchor.diff:    (label         0 :type octet)
     (terminal?   nil :type boolean)
     (child       nil :type (or null node))
  +  (nobranch-child-labels nil :type list)
     (sibling     nil :type (or null node))
     (child-total   0 :type positive-fixnum) ; amount of child side nodes
     (sibling-total 0 :type positive-fixnum) ; amount of sibling side nodes
  
positive.code:   (and (eq (node-child n1) (node-child n2))
         (eq (node-sibling n1) (node-sibling n2))
         (= (node-label n1) (node-label n2))
         (eq (node-terminal? n1) (node-terminal? n2))))
  
  (defun sxhash-node (node)
    (if (null node)
  
negative.code:       (when (= -1 hash)
          (setf hash (logxor (sxhash (node-label node))
                             (sxhash (node-terminal? node))
                             (sxhash (node-nobranch-child-labels node))
                             (fixnumize (* (sxhash-node (node-child node)) 7))
                             (fixnumize (* (sxhash-node (node-sibling node)) 13))))
          (setf child-total (calc-child-total node)
  