code: def project_map(self):
          
          # first update with the experiments in the memory (the others should
          # already be loaded within the :attr:`exp_files` attribute)
          for key, val in self.items():
              if isinstance(val, dict):
                  l = self._project_map[val['project']]
              elif isinstance(val, Archive):
                  l = self._project_map[val.project]
              else:
                  continue
              if key not in l:
                  l.append(key)
          return self._project_map
docs: A mapping from project name to experiments