anchor.diff:        if (MessageType = Ord(MQTT.UNSUBACK)) then
           begin
             // Read the Message ID for the event handler
  -          ResponseVH := Copy(FCurrentData.Data, 0, 2);
  +          ResponseVH := Copy(CurrentMessage.Data, 0, 2);
             DataLen := BytesToStrLength(ResponseVH);
             if Assigned(OnUnSubAck) then OnUnSubAck(Self, DataLen);
           end
  
positive.code:   ResponseVH: TBytes;
    ConnectReturn: Integer;
  begin
    if (FCurrentData.FixedHeader <> 0) then
      begin
        MessageType := FCurrentData.FixedHeader shr 4;
  
        if (MessageType = Ord(MQTT.CONNACK)) then
          begin
            // Check if we were given a Connect Return Code.
            ConnectReturn := 0;
            // Any return code except 0 is an Error
            if ((Length(FCurrentData.Data) > 0) and (Length(FCurrentData.Data) < 4)) then
              begin
                ConnectReturn := FCurrentData.Data[1];
                Exception.Create('Connect Error Returned by the Broker. Error Code: ' + IntToStr(FCurrentData.Data[1]));
              end;
            if Assigned(OnConnAck) then OnConnAck(Self, ConnectReturn);
          end
  
negative.code:                     writeln ('Error: 2:');
                      rxState := 3;
                  end;
                  Synchronize(@HandleData);
                  rxState := 0;
              end;
  