anchor.diff:    (declare (ignore offset-x offset-y old-offset-x old-offset-y))
     (when (eq (output-record-dirty record) :clean)
       (return-from compute-difference-set (values nil nil nil nil nil)))
  -  (let* ((existing-output-records (make-hash-table :test #'eq))
  +  (let* ((existing-output-records nil)
   	 (draws nil)
   	 (moves (explicit-moves record))
   	 (erases nil)
  
positive.code: 	 (old-children (if (slot-boundp record 'old-children)
  			   (old-children record)
  			   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,
      ;; they can hang around in the tree for later passes and cause trouble.
  
negative.code:       rect
      (make-bounding-rectangle min-x min-y max-x max-y)))
  
  (defvar *existing-output-records* nil)
  
  (defmethod compute-difference-set ((record standard-updating-output-record)
  				   &optional (check-overlapping t)
  				   offset-x offset-y
  