code: def load_library(lib, name=None, lib_cls=None):
      
      try:
          if lib_cls:
              return lib_cls(lib)
          else:
              return ctypes.CDLL(lib)
      except Exception:
          if name:
              lib_msg = '%s (%s)' % (name, lib)
          else:
              lib_msg = lib
  
          lib_msg += ' could not be loaded'
  
          if sys.platform == 'cygwin':
              lib_msg += ' in cygwin'
          _LOGGER.error(lib_msg, exc_info=True)
          return None
docs: Loads a library. Catches and logs exceptions.
  
      Returns: the loaded library or None
  
      arguments:
      * lib        -- path to/name of the library to be loaded
      * name       -- the library's identifier (for logging)
                      Defaults to None.
      * lib_cls    -- library class. Defaults to None (-> ctypes.CDLL).