anchor.diff:        (setq trec (make-instance 'text-displayed-output-record))
         (add-output-record trec (stream-output-history stream))
         (setf (stream-current-output-record stream) trec)
  -      (with-slots (start-x start-y end-x end-y) trec
  +      (with-slots (start-x start-y end-x end-y x1 y1 x2 y2) trec
   	  (multiple-value-bind (cx cy) (stream-cursor-position stream)
   	    (setq start-x cx
   		  start-y (+ cy (stream-vertical-spacing stream))
   		  end-x start-x
  -		  end-y start-y))))
  +		  end-y start-y
  +		  x1 start-x
  +		  x2 end-x
  +		  y1 start-y
  +		  y2 end-y))))
       trec))
   
   (defmethod stream-write-char :around ((stream output-recording-stream) char)
  
positive.code:       (let ((trec (make-instance 'text-displayed-output-record)))
  	(add-output-record trec (stream-output-history stream))
  	(setf (stream-current-output-record stream) trec)
  	(with-slots (start-x start-y end-x end-y) trec
  	  (multiple-value-bind (cx cy) (stream-cursor-position stream)
  	    (setq start-x cx
  		  start-y (+ cy (stream-vertical-spacing stream))
  		  end-x start-x
  		  end-y start-y))))))))
  
  (defmethod stream-wrap-line :before ((stream output-recording-stream))
    (when (stream-recording-p stream)
  
negative.code: (defmethod recompute-extent-for-changed-child ((record output-record) child
  					       old-min-x old-min-y old-max-x old-max-y)
    (declare (ignore child old-min-x old-min-y old-max-x old-max-y))
    (tree-recompute-extent record))
  
  (defmethod tree-recompute-extent ((record output-record))
    (with-slots (parent children x1 y1 x2 y2) record
  