anchor.diff:            do (walk-document node process-node)
             do (setf node (ps:chain node next-sibling))))
     
  -  (let ((*matches* (array)))
  +  (let ((*matches* (array))
  +        (*identifier* 0))
       (walk-document (ps:chain document body) matches-from-element)
       (ps:chain -j-s-o-n (stringify *matches*))))
   
  
positive.code:    (body :accessor body :initarg :body)))
  
  (defmethod object-string ((match match))
    (format nil "...~a..." (body match)))
  
  (defun matches-from-json (matches-json)
    (loop for element in (cl-json:decode-json-from-string matches-json)
  
negative.code:           (string (if case-sensitive-p string (ps:chain string (to-lower-case)))))
        (loop with i = (ps:chain string (index-of search-string 0))
              until (equal i -1)
              collect (match-object-create (get-substring i string) (incf *identifier*))
              do (setf i (ps:chain string (index-of search-string (+ i 1)))))))
    
    (defun matches-from-element (element query)
  