anchor.diff:  
   ;;; 16.4.4. Output Recording Utilities
   
  -(defmacro with-output-recording-options ((stream
  -					  &key (record nil record-supplied-p)
  -					       (draw nil draw-supplied-p))
  -					 &body body)
  -  (when (eq stream 't) (setq stream '*standard-output*))
  -  (check-type stream symbol)
  -  (with-gensyms (continuation)
  -    `(flet ((,continuation  (,stream) ,@body))
  -       (declare (dynamic-extent #',continuation))
  -       (invoke-with-output-recording-options
  -        ,stream #',continuation
  -        ,(if record-supplied-p record `(stream-recording-p ,stream))
  -        ,(if draw-supplied-p draw `(stream-drawing-p ,stream))))))
  -
   (defmethod invoke-with-output-recording-options
     ((stream output-recording-stream) continuation record draw)
     "Calls CONTINUATION on STREAM enabling or disabling recording and drawing
  
positive.code:      &allow-other-keys))
  
  (defgeneric make-design-from-output-record (record))
  
  
  
negative.code:         (if (output-record-ancestor-p (stream-output-history stream) record)
              (progn
                (delete-output-record record (output-record-parent record))
                (with-output-recording-options (stream :record nil)
                  (draw-rectangle* stream x1 y1 x2 y2 :ink +background-ink+))
                (stream-replay stream region))
              (when errorp
                (error "~S is not contained in ~S." record stream)))))))
  