anchor.diff:    }
   
     void flatten() {
  -    Uint8List bytes = Uint8List(available);
  +    Uint8List bytes = Uint8List(_length - _start);
       _length = bytes.length;
       _cursor -= _start;
       int index = 0;
  
positive.code: 
    final Queue<Uint8List> _buffer = Queue<Uint8List>();
  
    int _start = 0;
    int _cursor = 0;
    int _length = 0;
  
    void add(Uint8List data) {
      _buffer.add(data);
  
negative.code:   Uint8List readUint8List(int length) {
      assert(length <= available); // contract
      assert(_start < _buffer.first.length); // invariant
      if (length == 0) {
        return Uint8List(0);
      }
      int packetOffset = _cursor;
      for (Uint8List packet in _buffer) {
        if (packetOffset >= packet.length) {
          packetOffset -= packet.length;
          continue;
        }
  