def _handle_ns(packageName, path_item):
 importer = get_importer(path_item)
 if (importer is None):
  return None
 loader = importer.find_module(packageName)
 if (loader is None):
  return None
 module = sys.modules.get(packageName)
 if (module is None):
  module = sys.modules[packageName] = types.ModuleType(packageName)
  module.__path__ = []
  _set_parent_ns(packageName)
 elif (not hasattr(module, '__path__')):
  raise TypeError('Not a package:', packageName)
 handler = _find_adapter(_namespace_handlers, importer)
 subpath = handler(importer, path_item, packageName, module)
 if (subpath is not None):
  path = module.__path__
  path.append(subpath)
  loader.load_module(packageName)
  sys_path = [((p and _normalize_cached(p)) or p) for p in sys.path]
  def sort_key(p):
   parts = p.split(os.sep)
   parts = parts[:(- (packageName.count('.') + 1))]
   return sys_path.index(_normalize_cached(os.sep.join(parts)))
  path.sort(key=sort_key)
  module.__path__[:] = [_normalize_cached(p) for p in path]
 return subpath

def _handle_ns ( packageName , path_item ) : importer = get_importer ( path_item ) if ( importer is None ) : return None loader = importer . find_module ( packageName ) if ( loader is None ) : return None module = sys . modules . get ( packageName ) if ( module is None ) : module = sys . modules [ packageName ] = types . ModuleType ( packageName ) module . __path__ = [ ] _set_parent_ns ( packageName ) elif ( not hasattr ( module , '__path__' ) ) : raise TypeError ( 'Not a package:' , packageName ) handler = _find_adapter ( _namespace_handlers , importer ) subpath = handler ( importer , path_item , packageName , module ) if ( subpath is not None ) : path = module . __path__ path . append ( subpath ) loader . load_module ( packageName ) sys_path = [ ( ( p and _normalize_cached ( p ) ) or p ) for p in sys . path ] def sort_key ( p ) : parts = p . split ( os . sep ) parts = parts [ : ( - ( packageName . count ( '.' ) + 1 ) ) ] return sys_path . index ( _normalize_cached ( os . sep . join ( parts ) ) ) path . sort ( key = sort_key ) module . __path__ [ : ] = [ _normalize_cached ( p ) for p in path ] return subpath
ensure that named package includes a subpath of path_item .