text: import imp
  import os
  from lib.datasets.dataset_catalog import DatasetCatalog
  
  
  def _evaluator_factory(cfg):
      task = cfg.task
      data_source = DatasetCatalog.get(cfg.test.dataset)['id']
      module = '.'.join(['lib.evaluators', data_source, task])
      path = os.path.join('lib/evaluators', data_source, task + '.py')
      evaluator = imp.load_source(module, path).Evaluator(cfg.result_dir)
      return evaluator
  
  
  def make_evaluator(cfg):
      if cfg.skip_eval:
          return None
      else:
          return _evaluator_factory(cfg)
  