anchor.diff:  (defcon monomer ()
     (&optional (name := *name*)
      &property (location-class := compartment)))
  +
  +     
  +(defield monomer.[] (x)
  +  object.(site x))
   
   (defprop monomer.sites ()
    (let* ((sindex -1)
  
positive.code: ;;;
  ;;; SITE-INFO structure
  ;;;
  (defstruct (site-info (:constructor nil)) tags index)
  
  (defun site-info-name (s) (first (site-info-tags s)))
  
  
negative.code:              default states name))
  
      
       (states (make-state-site-info :tags tags :type states :default default :index index
                                     :documentation documentation))
  
       (t      (make-bond-site-info :tags tags
                                    :index index
                                    :type connector
                                    :documentation documentation
                                    :sublocation sublocation)))))
  
  (defun ensure-canonical-complex-graph (x &optional force-pattern)
    (gtools:canonical-graph
  