anchor.diff:    } 
     
     writeType(type) {
  -    buf[bufPos++] = type;
  +    buf[bufPos++] = type&0x1F;
     }
     
     writeInt(value) {
  +    _ensureSpace(5);
       writeType(_INT);
       buf[bufPos]=value;
       buf[bufPos+1]=value>>8;
  
positive.code:   writeString(value) {
      // optimistically, 1 byte per char
      int firstPos=bufPos;
      writeTypeAndLength(_STRING1, value.length);
      bool isOneByteString=true;
      for (int i=0; i<value.length; i++) {
  
negative.code: 
  class Pigeonson {
  
    var buf;
    int bufPos=0;
    int bufLength;
    serialize(PigeonStruct map) {
      bufLength=1024;
      buf=new Uint8List(bufLength);
      writePigeon(map, map.nameSet.type);
      return new Uint8List.view(buf.buffer, 0, bufPos);
    }
    _ensureSpace(extraLength) {
      if (bufPos+extraLength>bufLength) {
        var newBuf=new Uint8List(bufLength*2);
        newBuf.setRange(0, bufPos, buf, 0);
        buf=newBuf;
        bufLength=newBuf.length;
      }
    }
    writePigeon(obj, objtype) {
      _ensureSpace(8);
      writeType(_PIGEON);
      var slotTypes=obj.nameSet.pigeonsonSlotTypes;
      var len=obj.nameSet.length;
  