anchor.diff:                      :encoding :utf-8)
                    (u8)))
                (arr (element-type length)
  +               (align (alignment element-type))
                  (loop with start = (stream-read-position stream)
                        with end = (+ start length)
                        until (= end (stream-read-position stream))
                        collect (unpack-1 element-type)))
                (struct (field-types)
  -               (align 8)
                  (unpack-seq field-types))
                (unpack-1 (type)
  +               (align (alignment type))
                  (etypecase type
                    ((eql :byte) (u8))
                    ((eql :boolean) (if (zerop (u32)) nil t))
  
positive.code:                  (map nil #'u8 octets)
                   (u8 0)))
               (arr (element-type value)
                 (align 4)
                 (let ((length-position (file-position stream)))
                   (u32 0)
                   (typecase element-type
                     ((or (member :int64 :uint64 :double)
                          (cons (member :struct :dict-entry)))
                      (align 8)))
                   (let ((start-position (file-position stream)))
                     (pack-seq (circular-list element-type) value)
                     (let ((end-position (file-position stream)))
  
negative.code:                (pack-1 :signature type)
                 (pack-1 (first type) value))
               (pack-1 (type value)
                 (align (alignment type))
                 (etypecase type
                   ((eql :byte) (u8 value))
                   ((eql :boolean) (u32 (if value 1 0)))
  