code: def _get_parsed_url(url):
      # type: (S) -> Url
      
  
      try:
          parsed = urllib3_parse(url)
      except ValueError:
          scheme, _, url = url.partition("://")
          auth, _, url = url.rpartition("@")
          url = "{scheme}://{url}".format(scheme=scheme, url=url)
          parsed = urllib3_parse(url)._replace(auth=auth)
      return parsed
docs: This is a stand-in function for `urllib3.util.parse_url`
  
      The orignal function doesn't handle special characters very well, this simply splits
      out the authentication section, creates the parsed url, then puts the authentication
      section back in, bypassing validation.
  
      :return: The new, parsed URL object
      :rtype: :class:`~urllib3.util.url.Url`