anchor.diff:                          (if (find-tree :back-reference end)
                               end
                               (ppcre:create-scanner end)))
  -                 :begin-captures begin-captures
  -                 :end-captures end-captures
  +                 :begin-captures (or begin-captures captures)
  +                 :end-captures (or end-captures captures)
                    :name name
                    :content-name content-name
                    :patterns patterns))
  
positive.code: 
  (defun make-tm-region (begin end
                         &key
                         begin-captures end-captures
                         name content-name (patterns (make-tm-patterns)))
    (make-instance 'tm-region
                   :begin (ppcre:create-scanner begin)
  
negative.code:     (setf (tm-result-option begin-result)
            (ppcre:create-scanner end-regex))))
  
  (defun tm-apply-begin-captures (rule point begin-result start-line-p)
    (when start-line-p
      (let ((captures (tm-region-begin-captures rule)))
        (tm-apply-captures point begin-result captures))))
  
  (defun tm-apply-end-captures (rule point end-result)
    (let ((captures (tm-region-end-captures rule)))
      (tm-apply-captures point end-result captures)))
  
  (defun tm-apply-region (rule point begin-result end start-line-p)
    (when start-line-p
      (tm-init-region-end-regex rule begin-result (line-string point)))
    (let ((start1 (if start-line-p (tm-result-start begin-result) 0))
          (start2 (if start-line-p (tm-result-end begin-result) 0)))
      (let ((end-result
  