anchor.diff:  				       &key contents
   				       &allow-other-keys)
     (declare (ignore args))
  -  (if contents
  -      (sheet-adopt-child pane (first contents))))
  +  (when contents
  +    (sheet-adopt-child pane (first contents))))
   
   (defmethod compose-space ((pane single-child-composite-pane))
     (if (sheet-children pane)
  -      (compute-and-set-space (first (sheet-children pane)))
  -    (make-space-requirement)))
  +      (compose-space (first (sheet-children pane)))
  +      (make-space-requirement)))
   
   (defmethod allocate-space ((pane single-child-composite-pane) width height)
  -  (set-width-and-height pane width height)
  -  (let ((child (first (sheet-children pane))))
  -    (when child
  -      (setf (sheet-transformation child)
  -	(make-translation-transformation 0 0))
  -      (allocate-space child width height))))
  -
  -;; TOP-LEVEL-SHEET
  +  (when (first (sheet-children pane))
  +    (set-width-and-height pane width height)
  +    (allocate-space (first (sheet-children pane)) width height)))
  +
  +;;; TOP-LEVEL-SHEET
   
   (defclass top-level-sheet-pane (composite-pane)
     ()
     (:documentation "For the first pane in the architecture"))
   
  +(defun top-level-sheet-pane-p (pane)
  +  (typep pane 'top-level-sheet-pane))
  +
   (defmethod compose-space ((pane top-level-sheet-pane))
  -  (compute-and-set-space (first (sheet-children pane))))
  +  (compose-space (first (sheet-children pane))))
   
   (defmethod allocate-space ((pane top-level-sheet-pane) width height)
  -  (allocate-space (first (sheet-children pane)) width height))
  +  (when (first (sheet-children pane))
  +    (allocate-space 
  +        (first (sheet-children pane))
  +	(do-in width (get-min-width pane) (get-max-width pane))
  +	(do-in height (get-min-height pane) (get-max-height pane)))))
   
   (defmethod dispatch-event ((pane top-level-sheet-pane) event)
     (handle-event pane event))
   
  -(defmethod handle-event ((pane top-level-sheet-pane) (event window-configuration-event))
  +(defmethod handle-event ((pane top-level-sheet-pane)
  +			 (event window-configuration-event))
     (let ((x (window-configuration-event-x event))
   	(y (window-configuration-event-y event))
   	(width (window-configuration-event-width event))
  
positive.code: (defmethod repaint-sheet ((pane raised-pane) region)
    (declare (ignore region))
    (multiple-value-bind (x1 y1 x2 y2) (bounding-rectangle* (sheet-region pane))
      (draw-edges-lines* pane 0 0 (1- (- x2 x1)) (1- (- y2 y1)))))
  
  
  ;; RESTRAINING PANE
  
  (defclass restraining-pane (composite-pane) ())
  
  (defmacro restraining ((&rest options) &body contents)
    `(make-pane 'restraining-pane ,@options :contents (list ,@contents)))
  
  (defmethod note-space-requirements-changed (sheet (restraining restraining-pane))
    (declare (ignore sheet))
    (values))
  
  
  ;; BBOARD PANE
  
  (defclass bboard-pane (composite-pane) ())
  
  
negative.code:   (remf options :equalize-height)
    (if equalize-height
        `(make-pane 'hrack-pane ,@options :contents (list ,@contents))
        `(make-pane 'hbox-pane ,@options :contents (list ,@contents))))
  
  (defmethod compose-space ((box hbox-pane))
    (loop with space = (make-space-requirement)
  	for child in (sheet-children box)	
  	for request = (compose-space child)
  	sum (get-size child) into sum-width
  	do (incf (space-requirement-width space)
  		 (space-requirement-width request))
  	   (incf (space-requirement-max-width space)
  