anchor.diff:  		int bytepos = (position / 8.0).floor();
   		int bitpos = position % 8;
   
  -		int byte = bytes.getUint8(bytepos);
  +		int byte = _bytes.getUint8(bytepos);
   
   		return byte & (1 << bitpos) > 0;
   	}
   
   	/// Reads the next bit from the buffer.
   	bool readBit() {
  -		bool val = this._read(this.position);
  -		position++;
  +		bool val = this._read(this._position);
  +		_position++;
   		return val;
   	}
   
  
positive.code: 	/// Bit position within the current working byte.
  	int _position = 0;
  
  	ByteBuilder();
  
  	/// Appends a single bit to the buffer.
  
negative.code: /// Reads a [ByteBuffer] as a stream of bits.
  class ByteReader {
  	/// Source buffer.
  	ByteData _bytes;
  	/// Current bit position within the buffer.
  	int _position = 0;
  
  	/// Creates a new ByteReader reading from [bytes]. The start position will be offset by [offset] bytes.
  	ByteReader(ByteBuffer bytes, [int offset = 0]) {
  		this._bytes = bytes.asByteData(offset);
  	}
  
  	/// Internal method for reading a bit at a specific position. Use read for getting single bits from the buffer instead.
  