anchor.diff:      }
   
       // json data
  -    if (packet.data.isNotEmpty) {
  +    if (packet.data != null) {
         if (nsp) {
           encoded += ',';
         }
  
positive.code:    * deconstructing packet into object with placeholders and
     * a list of buffers.
     */
    void _encodeAsBinary(Packet packet, Function callback) {
      // TODO:
    }
  
    /**
     * Decode a packet String to Packet type
     */
    Packet decodeString(String encoded) {
      Packet packet = new Packet();
      int i = 0;
  
  
negative.code:   /**
     * Logger
     */
    static Logger _log = new Logger('connexa:parser');
  
    /**
     * Gte logger instance
     */
    static Logger get log => _log;
  
    /**
     * Encode a packet as a single string if non-binary, or as a
     * buffer sequence, depending on packet type.
     */
    static void encode(Packet packet, Function callback) {
      log.info('encoding packet ${packet}');
  
      if (packet.type == PacketType.binary_event ||
          packet.type == PacketType.binary_ack) {
        _encodeAsBinary(packet, callback);
      } else {
        _encodeAsString(packet, callback);
      }
    }
  
    static void _encodeAsString(Packet packet, Function callback) {
      String encoded = '';
      bool nsp = false;
  
  