anchor.diff:  
   ;;; MEDIUM class
   
  -(defclass medium ()
  -  ((port :initarg :port
  -	 :accessor port)
  -   (graft :initarg :graft
  -	  :accessor graft)
  -   (foreground :initarg :foreground
  -	       :initform +black+
  -	       :accessor medium-foreground)
  +(defclass medium () ())
  +
  +(defclass basic-medium (medium)
  +  ((foreground :initarg :foreground
  +               :initform +black+
  +               :accessor medium-foreground)
      (background :initarg :background
  -	       :initform +white+
  -	       :accessor medium-background)
  +               :initform +white+
  +               :accessor medium-background)
      (ink :initarg :ink
  -	:initform +foreground-ink+
  -	:accessor medium-ink)
  +        :initform +foreground-ink+
  +        :accessor medium-ink)
      (transformation :type transformation
  -		   :initarg :transformation
  -		   :initform +identity-transformation+ 
  -		   :accessor medium-transformation)
  +                   :initarg :transformation
  +                   :initform +identity-transformation+ 
  +                   :accessor medium-transformation)
      (clipping-region :type region
  -		    :initarg :clipping-region
  -		    :initform +everywhere+
  -		    :documentation "Clipping region in the SHEET coordinates.")
  +                    :initarg :clipping-region
  +                    :initform +everywhere+
  +                    :documentation "Clipping region in the SHEET coordinates.")
      ;; always use this slot through its accessor, since there may
      ;; be secondary methods on it -RS 2001-08-23
      (line-style :initarg :line-style
  -	       :initform (make-line-style)
  -	       :accessor medium-line-style)
  +               :initform (make-line-style)
  +               :accessor medium-line-style)
      ;; always use this slot through its accessor, since there may
      ;; be secondary methods on it -RS 2001-08-23
      (text-style :initarg :text-style
  -	       :initform (make-text-style :fix :roman :normal)
  -	       :accessor medium-text-style)
  +               :initform (make-text-style :fix :roman :normal)
  +               :accessor medium-text-style)
      (default-text-style :initarg :default-text-style
  -                       :initform (make-text-style :fix :roman :normal)
  -		       :accessor medium-default-text-style)
  +     :initform (make-text-style :fix :roman :normal)
  +     :accessor medium-default-text-style)
      (sheet :initarg :sheet
  -	  :initform nil ; this means that medium is not linked to a sheet
  -	  :accessor medium-sheet)
  -   ))
  -
  -(defun mediump (x)
  -  (typep x 'medium))
  +          :initform nil                 ; this means that medium is not linked to a sheet
  +          :reader medium-sheet
  +          :writer (setf %medium-sheet) )))
  +
  +(defclass ungrafted-medium (basic-medium) ())
  +
  +(defmethod mediump ((x medium))
  +  t)
  +
  +(defmethod mediump ((x medium))
  +  nil)
   
   (defmethod initialize-instance :after ((medium medium) &rest args)
     (declare (ignore args))
  
positive.code:     :line-cap-shape cap-shape
      :line-dashes dashes))
  
  
  ;;; Graphics ops
  
  (defgeneric medium-draw-point* (medium x y))
  (defgeneric medium-draw-points* (medium coord-seq))
  (defgeneric medium-draw-line* (medium x1 y1 x2 y2))
  (defgeneric medium-draw-lines* (medium coord-seq))
  (defgeneric medium-draw-polygon* (medium coord-seq closed filled))
  (defgeneric medium-draw-rectangle* (medium left top right bottom filled))
  (defgeneric medium-draw-ellipse* (medium center-x center-y
  				  radius-1-dx radius-1-dy radius-2-dx radius-2-dy
  				  start-angle end-angle filled))
  (defgeneric medium-draw-text* (medium string x y
  			       start end
  			       align-x align-y
  			       toward-x toward-y transform-glyphs))
  
  
  
negative.code: ;;; Line-Style class
  
  (defclass line-style ()
    ())
  
  (defclass standard-line-style (line-style)
    ((unit        :initarg :line-unit
  	        :initform :normal
  	        :reader line-style-unit
                  :type (member :normal :point :coordinate))
     (thickness   :initarg :line-thickness
  	        :initform 1
  	        :reader line-style-thickness
                  :type real)
     (joint-shape :initarg :line-joint-shape
  		:initform :miter
  		:reader line-style-joint-shape
                  :type (member :miter :bevel :round :none))
     (cap-shape   :initarg :line-cap-shape
  	        :initform :butt
  	        :reader line-style-cap-shape
                  :type (member :butt :squere :round :no-end-point))
     (dashes      :initarg :line-dashes
  	        :initform nil
  	        :reader line-style-dashes
                  :type (or (member t nil)
                            sequence)) ))
  
  (defmethod line-style-p ((x line-style))
    (declare (ignorable x))
    t)
  
  (defmethod line-style-p ((x t))
    (declare (ignorable x))
    nil)
  
  (defun make-line-style (&key (unit :normal) (thickness 1)
  			     (joint-shape :miter) (cap-shape :butt)
  