£Á°èZ¨Ä…–K§‚«“ô4“ÒÙ´dîfUÙÃÅ WKbyÊ¦•êŽ…È®FÒ¿ÊÎóCozá¬S@6{Í:›œêZÌ:Š•_%:¢¾¾~;‘Ã~èŠ©ÊÇí`ÔÑ©úë™µ'5I¿fš×WO%ø9¾«¾DK|€ùÍD”Ýs]nHÕ¶ê×Ó¼ãžªéUWŸÈË%DÒÕ¬ï‘]/Åcx  ‰ï2ß]ä6G[]S£ÔÏ¯rs{úëóµmÒï#UQxo·õÞCe]"±/aÙ&Eã4ú9Jé_ÞåëdãöKë)AÞ                  ¯¹ægƒÛowÐø^d™ý½ßB7áyMä9ÜÖUã
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
<html>

Re                 @   s=  d  Z  d d l Z d d l Z d d l Z d d l Z d g Z e e d  Z Gd d   d e  Z	 y
 e
 Z
 Wn e k
 r e	 Z
 Yn Xy
 e Z Wn e k
 r e	 Z Yn Xe j j Z e j d$ k rd d l m Z m Z d d	 l m Z d d
 l m Z m Z d d l m Z m Z d d l m Z m Z m Z d d l  m! Z" d d l# j$ Z% d d l j& Z' d d l( Z) d d l* j+ Z, d d l# j$ Z- d d l. j+ Z/ d d   Z0 d d   Z1 d d   Z2 d d   Z3 d d   Z4 e5 Z5 e6 f Z7 e8 Z9 nd d l: m Z d d
 l' m Z m Z d d l m Z m Z d d l% m Z m Z m Z d d l  m; Z" d d l% Z% d d l' Z' d d l- Z- d d l) Z) d d l, Z, d d l/ Z/ d d   Z1 d d   Z2 d d   Z3 d d   Z4 e6 Z5 e< f Z7 e Z e0 Z0 e9 Z9 e Z d d l= m> Z> m? Z? e@ e d d  ZA d  d!   ZB d" d#   ZC d S)%zKStuff that differs in different Python versions and platform
distributions.    NWindowsErrorcache_from_sourcec               @   s   e  Z d  Z d Z d S)NeverUsedExceptionz%this exception should never be raisedN)__name__
__module____qualname____doc__ r	   r	   6/tmp/pip-ztkk0jow-build/pip/backwardcompat/__init__.pyr      s   r      )StringIOBytesIO)reduce)URLError	HTTPError)QueueEmpty)url2pathnameurlretrievepathname2url)messagec             C   s   |  | k |  | k  S)Nr	   )abr	   r	   r
   cmp+   s    r   c             C   s   |  j  d  S)Nzutf-8)encode)sr	   r	   r
   r   .   s    r   c             C   s   |  j  d  S)Nzutf-8)decode)r   r	   r	   r
   u1   s    r   c             C   s7   y |  j  t  SWn t k
 r2 |  j  d  SYn Xd  S)Nutf_8)r   console_encodingUnicodeDecodeError)r   r	   r	   r
   console_to_str4   s    r!   c             C   s   |  j  | |  S)N)	get_param)http_messageparamdefault_valuer	   r	   r
   get_http_message_param:   s    r&   )r   )Messagec             C   s   |  S)Nr	   )r   r	   r	   r
   r   M   s    c             C   s   |  S)Nr	   )r   r	   r	   r
   r   P   s    c             C   s   |  S)Nr	   )r   r	   r	   r
   r!   S   s    c             C   s   |  j  |  } | p | S)N)Zgetparam)r#   r$   r%   resultr	   r	   r
   r&   V   s    )get_python_libget_python_version	USER_SITEc              /   sx   t  t t |    | j d d  } g  g } x' | D]     f d d   | D } q5 Wx | D] } t |  Vq_ Wd  S)Nrepeat   c                s*   g  |  ]  }   D] } | | g  q q Sr	   r	   ).0xy)poolr	   r
   
<listcomp>n   s   	 zproduct.<locals>.<listcomp>)listmaptupleget)argskwdspoolsr(   prodr	   )r1   r
   producth   s    %	r;   c             C   s   t  t d  rM t j |  t j t j B } t j |  j } t j |  n7 t j j	 |   st t j
 |   j } n t d |    | S)a)  
    Return path's uid.

    Does not follow symlinks: https://github.com/pypa/pip/pull/935#discussion_r5307003

    Placed this function in backwardcompat due to differences on AIX and Jython,
    that should eventually go away.

    :raises OSError: When path is a symlink or can't be read.
    
O_NOFOLLOWz1%s is a symlink; Will not return uid for symlinks)hasattrosopenO_RDONLYr<   fstatst_uidclosepathislinkstatOSError)rD   fdfile_uidr	   r	   r
   get_path_uids   s    rJ   )r   )Dr   r>   impsyssite__all__r=   uses_pycache	Exceptionr   r   	NameErrorPermissionError
__stdout__encodingr   version_infoior   r   	functoolsr   urllib.errorr   r   queuer   r   urllib.requestr   r   r   emailr   emailmessageurllib.parseparseurllibrequesturllib2configparserConfigParserxmlrpc.clientclient	xmlrpcliburlparsehttp.clienthttplibr   r   r   r!   r&   bytesstrstring_typesinput	raw_input	cStringIOr'   
basestringdistutils.sysconfigr)   r*   getattr	user_siter;   rJ   r	   r	   r	   r
   <module>   s|   	

			