code: def load_module(self, fullmodname):
          
          submodname, is_package, fullpath, source = self._get_source(fullmodname)
          code = compile(source, fullpath, 'exec')
          mod = sys.modules.get(fullmodname)
          try:
              if mod is None:
                  mod = sys.modules[fullmodname] = types.ModuleType(fullmodname)
              mod.__loader__ = self
              mod.__file__ = fullpath
              mod.__name__ = fullmodname
              if is_package:
                  mod.__path__ = [os.path.dirname(mod.__file__)]
              exec(code, mod.__dict__)
          except:
              if fullmodname in sys.modules:
                  del sys.modules[fullmodname]
              raise
          return mod
docs: PEP-302-compliant load_module() method.
  
          Args:
            fullmodname: The dot-separated full module name, e.g. 'django.core.mail'.
  
          Returns:
            The module object constructed from the source code.
  
          Raises:
            SyntaxError if the module's source code is syntactically incorrect.
            ImportError if there was a problem accessing the source code.
            Whatever else can be raised by executing the module's source code.