anchor.diff:  
   (defmethod scroll-extent ((pane basic-pane) x y)
     (when (is-in-scroller-pane pane)
  -    (let ((transform (sheet-transformation pane)))
  -      (multiple-value-bind (old-x old-y)
  -          (transform-position transform 0 0)
  -        (setf (sheet-transformation pane)
  -              (compose-translation-with-transformation
  -               transform (- x old-x) (- y old-y)))))
  +    (move-sheet pane x y)
       (update-scroll-bars pane (sheet-region pane) x y)
       (dispatch-repaint pane (sheet-region pane))))
   
  
positive.code: 		 for tmp-width = width then (decf tmp-width new-width)
  		 for new-width = (/ tmp-width l)
  		 for x = 0 then (+ x new-width)
  		 do (multiple-value-bind (x1 y1)
  			(bounding-rectangle* (sheet-region child))
  		      (setf (sheet-transformation child)
  			    (make-translation-transformation (- x x1) (- y y1))))
  		    (allocate-space child (round new-width) (round new-height)))))
  
  ;;; SPACING PANE
  
negative.code:   (make-extremums-children-ratio rack (sheet-children rack) :height nil))
  
  (defmethod allocate-space ((rack hrack-pane) width height)
    (resize-sheet rack width height)
    (allocate-space-internal rack width)
    (loop for child in (sheet-children rack)
  	for nw = (slot-value child 'new-width)
  	and x = 0 then (+ x (round nw))
          do (move-sheet child x 0)
  	   (allocate-space child nw height)))
  
  ;;; VRACK-PANE
  