anchor.diff:  	 (visible-region (pane-viewport-region stream))
   	 (old-children (if (slot-boundp record 'old-children)
   			   (old-children record)
  -			   nil)))
  +			   nil))
  +	 (old-bounds (old-bounds record)))
       (unless (or (null visible-region)
   		(region-intersects-region-p visible-region record)
   		(and old-children
  -		     (region-intersects-region-p visible-region old-children)))
  +		     (region-intersects-region-p visible-region old-bounds)))
         (return-from compute-difference-set (values nil nil nil nil nil)))
       ;; XXX This means that compute-difference-set can't be called repeatedly on
       ;; the same tree; ugh. On the other hand, if we don't clear explicit-moves,
  
positive.code: updating-output-parent above this one in the tree.")
     ;; Results of (setf output-record-position) while updating
     (explicit-moves :accessor explicit-moves)
     ;; on-screen state?
     ))
  
  
negative.code:     (values redisplayp (and (not (eq redisplayp :no-clear))
  			    (or (not (pane-incremental-redisplay pane))
  				(not *enable-updating-output*))))))
  
  (defmethod window-clear :after ((pane updating-output-stream-mixin))
    "Get rid of any updating output records stored in the stream; they're gone
    from the screen."
    (clear-map pane))
  
  ;;; INCREMENTAL-DISPLAY takes as input the difference set computed by
  ;;; COMPUTE-DIFFERENCE-SET and updates the screen. The 5 kinds of updates are
  