anchor.diff:  
       return new InputBuffer(buffer.sublist(position, end),
                              byteOrder: byteOrder);
  +  }
  +
  +  /**
  +   * Read [count] bytes from an [offset] of the current read position, without
  +   * moving the read position.
  +   */
  +  List<int> peekBytes(int count, [int offset = 0]) {
  +    List<int> bytes = buffer.sublist(position + offset,
  +                                     position + offset + count);
  +    return bytes;
     }
   
     /**
  
positive.code:   int get length => buffer.length;
  
    /**
     * Is the current position at the end of the buffer?
     */
    bool get isEOF => position >= buffer.length;
  
negative.code: part of archive;
  
  class InputBuffer {
    final List<int> buffer;
    int position = 0;
    final int byteOrder;
  
  