code: def resolve(self, symbol):
          
  
          # Search for a corresponding symbol
          if symbol not in self._resolve_cache:
              result = None
  
              # Search through entrypoints only if we have a group
              if self._group is not None:
                  for ep in pkg_resources.iter_entry_points(self._group, symbol):
                      try:
                          result = ep.load()
                      except (ImportError, AttributeError,
                              pkg_resources.UnknownExtra):
                          continue
  
                      # We found the result we were looking for
                      break
  
              # Cache the result
              self._resolve_cache[symbol] = result
  
          return self._resolve_cache[symbol]
docs: Resolve a symbol using the entrypoint group.
  
          :param symbol: The symbol being resolved.
  
          :returns: The value of that symbol.  If the symbol cannot be
                    found, or if no entrypoint group was passed to the
                    constructor, will return ``None``.