anchor.diff:      _out.putBytes(buff);
     }
   
  +  /// Bytestring primitive
     void writeBuff(typed.Uint8Buffer data, int size) {
       _writeTypeValue(3, size);
       _out.putBytes(data);
     }
   
  +  /// Array primitive
     void writeArray(int size) {
       _writeTypeValue(4, size);
     }
   
  +  /// Map primitive
     void writeMap(int size) {
       _writeTypeValue(5, size);
     }
   
  +  /// Tag primitive
     void writeTag(int tag) {
       _writeTypeValue(6, tag);
     }
   
  +  /// Special(major type 7) primitive
     void writeSpecial(int special) {
       int type = 7;
       type <<= majorTypeShift;
       _out.putByte(type | special);
     }
   
  +  /// Null writer
     void writeNull() {
       _out.putByte(0xf6);
     }
   
  +  /// Undefined writer
     void writeUndefined() {
       _out.putByte(0xf7);
     }
   
  -  /// Simple values, values over 255 or less
  +  /// Simple values, negative values, values over 255 or less
     /// than 0 will be encoded as an int.
     void writeSimple(int value) {
       if (!value.isNegative) {
  
positive.code:     }
    }
  
    void writeInt(int value) {
      if (value < 0) {
        _writeTypeValue(1, -(value + 1));
  
negative.code:     this._out = out;
    }
  
    /// Clears the output buffer
    void clear() {
      _out.clear();
    }
  