anchor.diff:                                         (setf (cdr prev-elements-rest)
                                                (cdr elements-rest))))
                                     ((<= pos end)
  -                                   (push (car elements-rest) new-values)
  +                                   (push (list 0 (- end pos) value) new-values)
                                      (setf (car elements-rest)
                                            (list start pos value))))))
                   (unless (null new-values)
  
positive.code:                                          (cdr elements-rest))
                                     (setf (cdr prev-elements-rest)
                                           (cdr elements-rest))))
                                ((< pos start (+ pos n))
                                 (setf (car elements-rest)
                                       (list pos (- end n) value)))
                                ((<= start pos (+ pos n) end)
                                 (setf (car elements-rest)
                                       (list start (- end n))))
                                ((<= start pos end (+ pos n))
                                 (setf (car elements-rest)
                                       (list start pos))))))))
  
  (defun line-property-delete-line (line pos)
    (loop :for plist-rest :on (line-plist line) :by #'cddr
  
negative.code:                 (cond ((<= pos start)
                         (incf (first v) offset)
                         (incf (second v) offset))
                        ((< start pos end)
                         (incf (second v) offset))
                        ((< pos end)
                         (incf (second v) offset)))))))
  
  (defun line-property-insert-newline (line next-line pos)
    (let ((new-plist '()))
  