N
ώωO5c       s]  k  Z  k  l l l l d  d d d d d d d d d	 g
 Z d  d d d d
 d d d d d d	 g Z d d d d d
 d d g Z d  d d d d d d	 g Z d d d d d d	 g Z	 d  d d d d d d d d d d d d	 g Z
 e  i e  i d Z d Z h  Z d   Z d	 d d  Z d   Z d d  Z d   Z d Z d   Z e d j o e   n d S(   s   ftps   https   gophers   nntps   waiss   files   httpss   shttps   prosperos    s   telnets   snewss   hdls   mailtos   newss   +-.i   c      s
   h  a  d S(   s   Clear the parse cache.N(   s   _parse_cache(    s2   /var/tmp/python-root/usr/lib/python1.5/urlparse.pys   clear_cache# s      c    st  |  | | f } y t | SWn t j
 o n Xt t  t j o t   n d } } } } } t i |  d  }	 |	 d j oT xM |  |	  d r }
 |
 t j o Pn q Wt i |  |	   |  |	 d f \ } }  n | t j oh |  d  d j oS t i |  d d  }	 |	 d j  o t |   }	 n |  d |	 !|  |	 f \ } }  n n | o
 | t j oE t i |  d  }	 |	 d j o" |  |	  |  |	 d f \ }  } n n | t j oE t i |  d	  }	 |	 d j o" |  |	  |  |	 d f \ }  } n n | t j oE t i |  d
  }	 |	 d j o" |  |	  |  |	 d f \ }  } n n | | |  | | | f } | t | <| Sd  S(   Ns    s   :i    i   i   s   //s   /s   #s   ?s   ;(   s   urls   schemes   allow_framentss   keys   _parse_caches   KeyErrors   lens   MAX_CACHE_SIZEs   clear_caches   netlocs   paths   paramss   querys   fragments   strings   finds   is   cs   scheme_charss   lowers   uses_netlocs   uses_fragments   rfinds
   uses_querys   uses_paramss   tuple(   s   urls   schemes   allow_framentss   keys   netlocs   paths   paramss   querys   fragments   is   cs   tuples2   /var/tmp/python-root/usr/lib/python1.5/urlparse.pys   urlparse. sH     	+%&&&
i   c    sΌ   |  \ } } } } } } | o1 | d  d j o d | } n d | | } n | o | d | } n | o | d | } n | o | d | } n | o | d | } n | Sd  S(   Ni   s   /s   //s   :s   ;s   ?s   #(   s   netlocs   urls   schemes   paramss   querys   fragment(   s   .0s   schemes   netlocs   urls   paramss   querys   fragments2   /var/tmp/python-root/usr/lib/python1.5/urlparse.pys
   urlunparseX s    c    sz  |  o | Sn t |  d |  \ } } } } } } t | | |  \ }	 }
 } } } } |	 | j o9 |
 o1 |	 t j o$ | t j o |	 t j o
 | t j o] | }
 t |
 d  } | d j  o
 d } n t |
 d |  } | d j o |
 |  }
 n n |	 | j p
 |	 t j o  t |	 |
 | | | | f  Sn |	 t j o1 |
 o  t |	 |
 | | | | f  Sn | }
 n | d  d j o  t |	 |
 | | | | f  Sn | o' t |	 |
 | | | p | | f  Sn t | d  } | d j o | |  d | } n t | d  } | d d j o d | d <n x d | j o | i d  q;Wxy d oq d } t |  d } xT | | j  oE | | d j o | | d o | | d | d 5Pn | d } q}WPq]Wt |  d	 j o | d d j o | d d j o d | d <n8 t |  d	 j o | d d j o d g | d	 )n t |	 |
 t | d  | | | f  Sd  S(
   Ns    s   @i    s   :i   s   /s   .s   ..i   (   s   bases   urls   urlparses   allow_framentss   bschemes   bnetlocs   bpaths   bparamss   bquerys	   bfragments   schemes   netlocs   paths   paramss   querys   fragments   uses_relatives   uses_netlocs   finds   is
   urlunparses   rfinds   splitfieldss   segmentss   removes   lens   ns
   joinfields(   s   bases   urls   allow_framentss   bschemes   bnetlocs   bpaths   bparamss   bquerys	   bfragments   schemes   netlocs   paths   paramss   querys   fragments   is   segmentss   ns2   /var/tmp/python-root/usr/lib/python1.5/urlparse.pys   urljoinh s^    $$I 
  
 '    5%c    sJ   t  |   \ } } } } } } t | | | | | d f  } | | f Sd S(   sΏ   Removes any existing fragment from URL.

    Returns a tuple of the defragmented URL and the fragment.  If
    the URL contained no fragments, the second element is the
    empty string.
    s    N(
   s   urlparses   urls   ss   ns   ps   as   qs   frags
   urlunparses   defrag(   s   urls   ss   ns   ps   as   qs   frags   defrags2   /var/tmp/python-root/usr/lib/python1.5/urlparse.pys	   urldefrag’ s     s  
      http://a/b/c/d

      g:h        = <URL:g:h>
      http:g     = <URL:http://a/b/c/g>
      http:      = <URL:http://a/b/c/d>
      g          = <URL:http://a/b/c/g>
      ./g        = <URL:http://a/b/c/g>
      g/         = <URL:http://a/b/c/g/>
      /g         = <URL:http://a/g>
      //g        = <URL:http://g>
      ?y         = <URL:http://a/b/c/d?y>
      g?y        = <URL:http://a/b/c/g?y>
      g?y/./x    = <URL:http://a/b/c/g?y/./x>
      .          = <URL:http://a/b/c/>
      ./         = <URL:http://a/b/c/>
      ..         = <URL:http://a/b/>
      ../        = <URL:http://a/b/>
      ../g       = <URL:http://a/b/g>
      ../..      = <URL:http://a/>
      ../../g    = <URL:http://a/g>
      ../../../g = <URL:http://a/../g>
      ./../g     = <URL:http://a/b/g>
      ./g/.      = <URL:http://a/b/c/g/>
      /./g       = <URL:http://a/./g>
      g/./h      = <URL:http://a/b/c/g/h>
      g/../h     = <URL:http://a/b/c/h>
      http:g     = <URL:http://a/b/c/g>
      http:      = <URL:http://a/b/c/d>
c     s]  k  }  d } |  i d o7 |  i d } | d j o |  i } n t |  } n k } | i t  } xπ d oθ | i	   } | o Pn t i |  } | o qi n | d } t |  } d | | f GHt | |  }	 | o
 |	 } n d |	 }
 d | |
 f GHt |  d j o | d d	 j o* |
 | d
 j o d G| d
 Gd GHn n qi Wd  S(   Ns    i   s   -i    s
   %-10s : %ss   <URL:%s>s
   %-10s = %si   s   =i   s   EXPECTEDs
   !!!!!!!!!!(   s   syss   bases   argvs   fns   stdins   fps   opens   StringIOs
   test_inputs   readlines   lines   strings   splits   wordss   urls   urlparses   partss   urljoins   abss   wrappeds   len(   s   syss   bases   fns   fps   StringIOs   lines   wordss   urls   partss   abss   wrappeds2   /var/tmp/python-root/usr/lib/python1.5/urlparse.pys   testΝ s8      


$s   __main__N(   s   strings
   joinfieldss   splitfieldss   finds   rfinds   uses_relatives   uses_netlocs   non_hierarchicals   uses_paramss
   uses_querys   uses_fragments   letterss   digitss   scheme_charss   MAX_CACHE_SIZEs   _parse_caches   clear_caches   urlparses
   urlunparses   urljoins	   urldefrags
   test_inputs   tests   __name__(    s2   /var/tmp/python-root/usr/lib/python1.5/urlparse.pys   ? s&   $'-	*	:		