text: 
  class Crc:
      def __init__(self):
          self.L = bytearray((0x00,0x5e,0xbc,0xe2,0x61,0x3f,0xdd,0x83,0xc2,0x9c,0x7e,0x20,0xa3,0xfd,0x1f,0x41))
          self.H = bytearray((0x00,0x9d,0x23,0xbe,0x46,0xdb,0x65,0xf8,0x8c,0x11,0xaf,0x32,0xca,0x57,0xe9,0x74))
  
      def crc_add_byte( self, crc_in, crc_data ):
          i = (crc_data ^ crc_in )
  	crc_result =  self.L[i&0x0F]^self.H[(i>>4)&0x0F]
  	return crc_result
  
      def CRC_cal( self, data ):
          crc_result = 0	 
          for var in data:
              crc_result = self.crc_add_byte(crc_result, var)	 
          return crc_result
  
  
  
  