code: def read_data(self, size):
          
          result = list()
          while size > 0:
              count = min(size, 8)
              buf = self.hid.read(count)
              if len(buf) < count:
                  raise IOError(
                      'pywws.device_cython_hidapi.USBDevice.read_data failed')
              result += buf
              size -= count
          return result
docs: Receive data from the device.
  
          If the read fails for any reason, an :obj:`IOError` exception
          is raised.
  
          :param size: the number of bytes to read.
  
          :type size: int
  
          :return: the data received.
  
          :rtype: list(int)