anchor.diff:  
   proto(4) -> {4, ?PROTOCOL_MAGIC_311};
   proto(3) -> {6, ?PROTOCOL_MAGIC_31};
  -proto(131) -> {9, ?PROTOCOL_MAGIC_131}.
  +proto(131) -> {6, ?PROTOCOL_MAGIC_31}.
   
   flag([]) -> 0;
   flag(undefined) -> 0;
  
positive.code:     #mqtt_unsuback{message_id=MessageId};
  parse(<<?CONNECT:4, 0:4>>, <<L:16/big, PMagic:L/binary, _/binary>>)
    when not ((PMagic == ?PROTOCOL_MAGIC_311) or
               (PMagic == ?PROTOCOL_MAGIC_31) or
               (PMagic == ?PROTOCOL_MAGIC_131)) ->
      error;
  parse(<<?CONNECT:4, 0:4>>,
      <<L:16/big, _:L/binary, ProtoVersion:8,
  
negative.code: -define(RESERVED, 0).
  -define(PROTOCOL_MAGIC_31, <<"MQIsdp">>).
  -define(PROTOCOL_MAGIC_311, <<"MQTT">>).
  -define(MAX_LEN, 16#fffffff).
  -define(HIGHBIT, 2#10000000).
  -define(LOWBITS, 2#01111111).
  