anchor.diff:        (record-monomer offset (length sites) binding-table)
         (loop ;; connect the monomer node to the site nodes:
               for i from (1+ offset) to (+ offset (length sites))
  -            for rest-bindings = (or bindings '(%%default)) 
  -                           then (or (rest rest-bindings) '(%%default))
  +            for rest-bindings = (or bindings default-signal) 
  +                           then (or (rest rest-bindings) default-signal)
               for binding = (first rest-bindings)   
               for site-label = (record-binding  binding i)
               when site-label 
  
positive.code:          (record-binding2 (si binding i)
             (when (eq binding '%%default)
               (setf binding (default-site-binding monomer (site-info-index si))))
             (when (wildcard-binding-p binding) (setf pattern-detected-p t))
             (etypecase si
               (bond-site-info
  
negative.code:                      with either other site offsets or values
           PATTERNP is always NIL."
    (let ((pattern-detected-p nil)
          (default-signal     '%%default)
          (sites              (map 'list #'identity (monomer-sites monomer-object))))
      (labels
          ((site-error (binding si msg &rest args)
  