anchor.diff:      :reader bounding-box)))
   
   (defmethod initialize-instance :after ((p polygon) &key)
  -  (setf (slot-value p 'lines) 
  -	(loop 
  +  (setf (slot-value p 'lines)
  +	(loop
   	 :for i :below (length (corners p)) :collect
   	 (make-line (elt (corners p) i) (elt-mod (corners p) (+ i 1)))))
     (setf (slot-value p 'bounding-box)
  
positive.code: 	       (cond ((> s 1)
  		      (values (distance p b)
  			      lot))
  		     ((< s 0) 
  		      (values (distance p a)
  			      lot))
  		     (t 
  		      (values (distance p lot)
  			      lot))))
        ; line is degenerated
  
negative.code:     ; is a point of q in p => q completely in p => return q
      (when (and check-inclusion (contains? p (first (corners q))))
        (return-from intersects? q)))
    nil)
  