anchor.diff:                 ;; First return value is the cons cell for the pair,
                  ;; second is the list as a whole, which is now headed by this pair.
                  (values pair pair)))
  +           (insert-at-end (head &aux (rest (cdr head)))
  +             (if (not rest)
  +                 (insert-after head)
  +                 (insert-at-end (cdr rest))))
              (insert-after (tail)
                ;; A picture: list is (#<FIELD A> a-val #<FIELD C> c-val #<FIELD D> d-val ...)
                ;;                                ^--- TAIL points here
  
positive.code:                (make-field (proto-index field)
                             (proto-field-offset field)
                             (proto-bool-index field)
                             (keywordify (proto-internal-field-name field))
                             field)))
          (if (< max (* count 2)) ; direct map
  
negative.code:                           (insert-in (cdr rest))))))))
      (if (not field-list)
          (insert-at-front)
          (let* ((cur-field (find-in-field-map field-number field-map))
                 (top-field (car field-list))
                 (index (field-index top-field)))
            (if (field-oneof-p cur-field)
                ;; If a field is part of a oneof, put it at the end of the plist.
                ;; This is to preserve the behavior that if two fields from the same
                ;; oneof are recieved on the wire, then only the last one is set. Since
                ;; this list sorts fields by their index, this information is lost here,
                ;; so oneofs need to ignore this heuristic.
                (insert-at-end (cdr field-list))
                (cond ((i> field-number index) ; greater than any field number seen thus far
                       (insert-at-front))
                      ((i= field-number index) ; a field number which has been seen before
                       (values field-list field-list))
                      (t                       ; keep on looking
                       (insert-in (cdr field-list)))))))))
  
  (defun deserialize-structure-object (message buffer index limit end-tag class)
    "Deserialize a message.
  