code: def splitroot(self, part, sep=sep):
          
          drv = ''
          root = ''
  
          base = get_global_base_url(part)
          if base and without_http_prefix(part).startswith(without_http_prefix(base)):
              mark = without_http_prefix(base).rstrip(sep) + sep
              parts = part.split(mark)
          else:
              url = urllib3.util.parse_url(part)
  
              if (without_http_prefix(part).strip("/") == part.strip("/") and
                      url.path and not url.path.strip("/").startswith("artifactory")):
                  return '', '', part
  
              if url.path is None or url.path == sep:
                  if url.scheme:
                      return part.rstrip(sep), '', ''
                  return '', '', part
              elif url.path.lstrip("/").startswith("artifactory"):
                  mark = sep + 'artifactory' + sep
                  parts = part.split(mark)
              else:
                  drv = part.split(url.path)[0]
                  path_parts = url.path.strip(sep).split(sep)
                  root = sep + path_parts[0] + sep
                  rest = sep.join(path_parts[1:])
                  return drv, root, rest
  
          if len(parts) >= 2:
              drv = parts[0] + mark.rstrip(sep)
              rest = sep + mark.join(parts[1:])
          elif part.endswith(mark.rstrip(sep)):
              drv = part
              rest = ''
          else:
              rest = part
  
          if not rest:
              return drv, '', ''
  
          if rest == sep:
              return drv, '', ''
  
          if rest.startswith(sep):
              root, _, part = rest[1:].partition(sep)
              root = sep + root + sep
  
          return drv, root, part
docs: Splits path string into drive, root and relative path
  
          Uses '/artifactory/' as a splitting point in URI. Everything
          before it, including '/artifactory/' itself is treated as drive.
          The next folder is treated as root, and everything else is taken
          for relative path.
  
          If '/artifactory/' is not in the URI. Everything before the path
          component is treated as drive. The first folder of the path is
          treated as root, and everything else is taken for relative path.