anchor.diff:  
   ;;; BORDER-PANE
   
  -(defclass border-pane (spacer-pane)
  +(defclass border-pane (spacing-pane)
     ((border-width :initarg :border-width :initform 1 :reader border-pane-width)
      )
     (:documentation ""))
  
positive.code: 	       space-requirement) pane
      (unless space-requirement
        (let ((request (call-next-method)))
  	(when (spacer-p pane)
  	  (with-slots (margin-width margin-height
  		       margin-max-width margin-max-height
  		       margin-min-width margin-min-height) pane
  
negative.code: 			    (make-translation-transformation (- x x1) (- y y1))))
  		    (allocate-space child (round new-width) (round new-height)))))
  
  ;;; SPACING PANE
  
  (defclass spacing-pane (composite-pane)
    ((margin-width :initform nil :initarg :width)
     (margin-height :initform nil :initarg :height)
     (margin-max-width :initform nil :initarg :max-width)
     (margin-max-height :initform nil :initarg :max-height)
     (margin-min-width :initform nil :initarg :min-width)
     (margin-min-height :initform nil :initarg :min-height))
    (:documentation "The spacing pane will create a margin for his child.
  The margin sizes (w h) are given with the :width and :height initargs.
  During realization the child of the spacing will have as cordinates
   x = w/2 , y = h/2."))
  
  (defmethod initialize-instance :after ((spacing spacing-pane) &rest ignore)
    (declare (ignore ignore))
    (with-slots (margin-width margin-height
  	       margin-max-width margin-max-height
  	       margin-min-width margin-min-height) spacing
      (setf margin-width (or margin-width 0)
  	  margin-height (or margin-height 0)
  	  margin-max-width (or margin-max-width margin-width)
  