KMP crc16 implemented