anchor.diff:          (let ((curr-interval (1+ (- top bottom))))
             (cond
               ((and (null left) (null right)) (values curr-interval a-tree))
  -            ((null left) (multiple-value-bind (max-subtree-interval node) (diet-max-interval right)
  +            ((null left) (multiple-value-bind (max-subtree-interval node) (diet-longest-interval right)
                              (if (> max-subtree-interval curr-interval)
                                  (values max-subtree-interval node)
                                  (values curr-interval a-tree))))
  -            ((null right) (multiple-value-bind (max-subtree-interval node) (diet-max-interval left)
  -                             (if (> max-subtree-interval curr-interval)
  -                                 (values max-subtree-interval node)
  -                                 (values curr-interval a-tree))))
  +            ((null right) (multiple-value-bind (max-subtree-interval node) (diet-longest-interval left)
  +                            (if (> max-subtree-interval curr-interval)
  +                                (values max-subtree-interval node)
  +                                (values curr-interval a-tree))))
               (t
                (multiple-value-bind (max-left-int max-left-node)
  -                 (diet-max-interval left)
  +                 (diet-longest-interval left)
                  (multiple-value-bind (max-right-int max-right-node)
  -                   (diet-max-interval right)
  +                   (diet-longest-interval right)
                    (if (> max-left-int max-right-int)
                        (values max-left-int max-left-node)
                        (values max-right-int max-right-node))))))))))
  
positive.code:           (if (eql (1+ top) min-int-bottom)
                (make-s-diet-node :bottom bottom :top min-int-top :left left :right r-subtree-w/o-min-interval)
                (make-s-diet-node :bottom bottom :top top :left left :right right))))))
  
  (defun diet-insert (value a-diet-node)
    (if (null a-diet-node)
  
negative.code:               (make-s-diet-node :bottom max-int-bottom :top top :left l-subtree-w/o-max-interval :right right)
                (make-s-diet-node :bottom bottom :top top :left left :right right))))))
  
  
  (defun join-right-2 (a-diet-node)
    (with-slots (top bottom left right) a-diet-node
      (if (null right)
          a-diet-node
  