anchor.diff:                 (make-field (proto-index field)
                              (proto-field-offset field)
                              (proto-bool-index field)
  +                           (and (proto-oneof-offset field) t)
                              (keywordify (proto-internal-field-name field))
                              field)))
           (if (< max (* count 2)) ; direct map
  
positive.code:     (deserialize-structure-object
       msg-desc buffer start end end-tag class)))
  
  (defstruct (field (:constructor make-field (index offset bool-index initarg complex-field))
                    (:print-object
                     (lambda (self stream)
                       (format stream "#<~D~S>" (field-index self) (field-initarg self)))))
    "Field metadata for a protocol buffer.
  Contains the INDEX of the field as according to protobuf, an internal
  OFFSET, the BOOL-NUMBER (for simple boolean fields), the INITARG, the COMPLEX-FIELD
  datastructure.
  See field-descriptor for the distinction between index, offset, and bool-number."
    index
    offset
    bool-index
    initarg
    complex-field)
  
  
negative.code:                ;; 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
  