protected virtual void CalculateFletcherChecksum(byte[] bytes)
{
byte c0 = 0, c1 = 0;
int count = 0;
for (count = 0; count < bytes.Length; count++)
{
c1 += (c0 += bytes[count]);
}
bytes[bytes.Length - 2] = (byte)((c0 - c1) & 0xFF);
bytes[bytes.Length - 1] = (byte)((c1 - 2 * c0) & 0xFF);
}