code: def do(self):
          "run it, get a new url"
          scheme, netloc, path, params, query, fragment = Split(self.url).do()
  
          if isinstance(self.query, dict):
              query = query + "&" + urllib.urlencode(self.query) if query else urllib.urlencode(self.query)
  
          path = urljoin(path, self.path).replace('\\', '/') if self.path else path
          
          return Splice(scheme=scheme, netloc=netloc, path=path, params=params, query=query, fragment=fragment).geturf do(self):
          "run it, get a new url"
          scheme, netloc, path, params, query, fragment = Split(self.url).do()
  
          if isinstance(self.query, dict):
              query = query + "&" + urllib.urlencode(self.query) if query else urllib.urlencode(self.query)
  
          path = urljoin(path, self.path).replace('\\', '/') if self.path else path
          
          return Splice(scheme=scheme, netloc=netloc, path=path, params=params, query=query, fragment=fragment).geturl
docs: run it, get a new url