U ��.e�~�C@s�dZddlmZddlZddlZddlZddlZddlZdZdZ ej ddkZ ej ddkZ ej dd�dkZ e r�efZefZefZeZeZejZn~efZeefZeejfZeZeZej�d �r�ed �ZnHGd d �d e�Z ze!e ��Wne"k �red �ZYn Xed �Z[ dd�Z#dd�Z$Gdd�de�Z%Gdd�de%�Z&Gdd�dej'�Z(Gdd�de%�Z)Gdd�de�Z*e*e+�Z,Gdd�de(�Z-e)dddd �e)d!d"d#d$d!�e)d%d"d"d&d%�e)d'd(d#d)d'�e)d*d(d+�e)d,d"d#d-d,�e)d.d/d/d0d.�e)d1d/d/d.d1�e)d2d3d4�e)d5d(d#d6d5�e)d7d(e �rd8nd9d:�e)d;d(d<�e)d=d>d?d@�e)d d d�e)dAdAdB�e)dCdCdB�e)dDdDdB�e)d6d(d#d6d5�e)dEd"d#dFdE�e)dGd"d"dHdG�e&d#d(�e&dIdJ�e&dKdL�e&dMdNdO�e&dPdQdP�e&dRdSdT�e&dUdVdW�e&dXdYdZ�e&d[d\d]�e&d^d_d`�e&dadbdc�e&dddedf�e&dgdhdi�e&djdkdl�e&dmdndo�e&dpdpdq�e&drdrdq�e&dsdsdq�e&dtdtdu�e&dvdw�e&dxdy�e&dzd{�e&d|d}d|�e&d~d�e&d�d�d��e&d�d�d��e&d�d�d��e&d�d�d��e&d�d�d��e&d�d�d��e&d�d�d��e&d�d�d��e&d�d�d��e&d�d�d��e&d�d�d��e&d�d�d��e&d�d�d��e&d�d�d��e&d�e+d�d��e&d�e+d�d��e&d�e+d�e+d��e&d�d�d��e&d�d�d��e&d�d�d��[email protected]jd�k�rfe.e&d�d��g7Z.e.D]2Z/e0e-e/j1e/�e2e/e&��rje,�3e/d�e/j1��qj[/e.e-_.e-e+d��Z4e,�3e4d��Gd�d��d�e(�Z5e)d�d�d��e)d�d�d��e)d�d�d��e)d�d�d��e)d�d�d��e)d�d�d��e)d�d�d��e)d�d�d��e)d�d�d��e)d�d�d��e)d@d�d��e)d�d�d��e)d�d�d��e)d�d�d��e)d�d�d�d�d΃e)d�d�d��e)d�d�d��e)d�d�d��e)d�d�d��e)d�d�d��e)d�d�d��e)d�d�d��e)d�d�d��e)d�d�d��e)d�d�d��gZ6e6D]Z/e0e5e/j1e/��q�[/e6e5_.e,�3e5e+d��d�dÚ¡Gd�dÜ„d�e(�Z7e)d�d�d��e)d�d�d��e)d�d�d��gZ8e8D]Z/e0e7e/j1e/��q>[/e8e7_.e,�3e7e+d��d�d�Gd�d�d�e(�Z9e)d�d�d�e)d�d�d�e)d�d�d�e)d�d�d�e)d�d�d�e)d�d�d�e)d�d�d�e)d�d�d�e)d�d�d�e)d�d�d�e)d�d�d�e)d�d�d�e)d�d�d�e)d�d�d�e)d�d�d�e)d�d�d�e)d�d�d�e)d�d�d�e)d�d�d�e)d�d�d�e)d�d�d�e)d�d�d�e)d�d�d�e)d�d�d�e)d�d�d�e)�dd�d�e)�dd�d�e)�dd�d�e)�dd�d�e)�dd�d�e)�dd�d�e)�dd�d�e)�dd�d�e)�dd�d�e)�d d�d�g#Z:e:D]Z/e0e9e/j1e/��q�[/e:e9_.e,�3e9e+�d ��d �d �G�d �d��de(�Z;e)�dd��d�e)�dd��d�e)�dd��d�e)�dd��d�gZe>D]Z/e0e=e/j1e/��q�[/e>e=_.e,�3e=e+�d��d�d�G�d�d��dej'�Z?e,�3e?e+d���d��d �d!�Z@�d"�d#�ZAe � r��d$ZB�d%ZC�d&ZD�d'ZE�d(ZF�d)ZGn$�d*ZB�d+ZC�d,ZD�d-ZE�d.ZF�d/ZGzeHZIWn"eJk � r��d0�d1�ZIYnXeIZHzeKZKWn"eJk � r�d2�d3�ZKYnXe � rF�d4�d5�ZLejMZN�d6�d7�ZOeZPn>�d8�d5�ZL�d9�d:�ZN�d;�d7�ZOG�d<�d=��d=e�ZPeKZKe#eL�d>�e�QeB�ZRe�QeC�ZSe�QeD�ZTe�QeE�ZUe�QeF�ZVe�QeG�ZWe � r(�d?�d@�ZX�dA�dB�ZY�dC�dD�ZZ�dE�dF�Z[e�\�dG�Z]e�\�dH�Z^e�\�dI�Z_nT�dJ�d@�ZX�dK�dB�ZY�dL�dD�ZZ�dM�dF�Z[e�\�dN�Z]e�\�dO�Z^e�\�dP�Z_e#eX�dQ�e#eY�dR�e#eZ�dS�e#e[�dT�e � rD�dU�dV�Z`�dW�dX�ZaebZcddldZded�e�dY�jfZg[de�hd�ZiejjZkelZmddlnZnenjoZoenjpZp�dZZqej �d[�d[k� r6�d\Zr�d]Zsn �d^Zr�d_Zsnj�d`�dV�Z`�da�dX�ZaecZcebZg�db�dc�Zi�dd�de�Zke�tejuev�ZmddloZoeojoZoZp�dfZq�d\Zr�d]Zse#e`�dg�e#ea�dh��di�dZ�Zw�dj�d^�Zx�dk�d_�Zye � reze4j{�dl�Z|�d��dm�dn�Z}n�d��do�dp�Z|e|�dq�ej dd��drk� rLe|�ds�n.ej dd��drk� rne|�dt�n �du�dv�Z~eze4j{�dwd�Zedk� r��dx�dy�Zej dd��dzk� r�eZ��d{�dy�Ze#e}�d|�ej dd�dk� r�ej�ej�f�d}�d~�Z�nej�Z��d�d��Z��d��d��Z��d��d��d��Z��d��d��d��Z��d��d��d��Z��d��d��Z�gZ�e+Z�e�����d��dk �rzge�_�ej��r�e�ej��D]4\Z�Z�ee��j+dk�r�e�j1e+k�r�ej�e�=�qÂ�q�[�[�ej���e,�dS(�z6Utilities for writing code that runs on Python 2 and 3�)�absolute_importNz'Benjamin Peterson z1.12.0��)r��javai���c@seZdZdd�ZdS)�XcCsdS)Nl���selfrr�3/usr/lib/python3.8/site-packages/pip/_vendor/six.py�__len__>sz X.__len__N)�__name__� __module__� __qualname__r rrrr r<srl����cCs ||_dS)z Add documentation to a function.N)�__doc__)�func�docrrr �_add_docKsrcCst|�tj|S)z7Import module, returning the module after the last dot.)� __import__�sys�modules��namerrr �_import_modulePsrc@seZdZdd�Zdd�ZdS)� _LazyDescrcCs ||_dS�Nr�r rrrr �__init__Xsz_LazyDescr.__init__cCsB|��}t||j|�zt|j|j�Wntk r<YnX|Sr)�_resolve�setattrr�delattr� __class__�AttributeError)r �obj�tp�resultrrr �__get__[sz_LazyDescr.__get__N)r rrrr&rrrr rVsrcs.eZdZd�fdd� Zdd�Zdd�Z�ZS) � MovedModuleNcs2tt|��|�tr(|dkr |}||_n||_dSr)�superr'r�PY3�mod)r r�old�new�r!rr ris zMovedModule.__init__cCs t|j�Sr)rr*r rrr rrszMovedModule._resolvecCs"|��}t||�}t|||�|Sr)r�getattrr)r �attr�_module�valuerrr � __getattr__us  zMovedModule.__getattr__)N)r rrrrr2� __classcell__rrr-r r'gs r'cs(eZdZ�fdd�Zdd�ZgZ�ZS)� _LazyModulecstt|��|�|jj|_dSr)r(r4rr!rrr-rr r~sz_LazyModule.__init__cCs ddg}|dd�|jD�7}|S)Nrr cSsg|] }|j�qSrr)�.0r/rrr � �sz'_LazyModule.__dir__..)�_moved_attributes)r Zattrsrrr �__dir__�sz_LazyModule.__dir__)r rrrr8r7r3rrr-r r4|s r4cs&eZdZd�fdd� Zdd�Z�ZS)�MovedAttributeNcsdtt|��|�trH|dkr |}||_|dkr@|dkr<|}n|}||_n||_|dkrZ|}||_dSr)r(r9rr)r*r/)r rZold_modZnew_modZold_attrZnew_attrr-rr r�szMovedAttribute.__init__cCst|j�}t||j�Sr)rr*r.r/)r �modulerrr r�s zMovedAttribute._resolve)NN)r rrrrr3rrr-r r9�sr9c@sVeZdZdZdd�Zdd�Zdd�Zdd d �Zd d �Zd d�Z dd�Z dd�Z e Z dS)�_SixMetaPathImporterz� A meta path importer to import six.moves and its submodules. This class implements a PEP302 finder and loader. It should be compatible with Python 2.5 and all existing versions of Python3 cCs||_i|_dSr)r� known_modules)r Zsix_module_namerrr r�sz_SixMetaPathImporter.__init__cGs"|D]}||j|jd|<qdS�N�.�r<r)r r*Z fullnames�fullnamerrr � _add_module�sz _SixMetaPathImporter._add_modulecCs|j|jd|Sr=r?�r r@rrr � _get_module�sz _SixMetaPathImporter._get_moduleNcCs||jkr|SdSr)r<)r r@�pathrrr � find_module�s z _SixMetaPathImporter.find_modulecCs2z |j|WStk r,td|��YnXdS)Nz!This loader does not know module )r<�KeyError� ImportErrorrBrrr Z __get_module�s z!_SixMetaPathImporter.__get_modulecCsTz tj|WStk r YnX|�|�}t|t�r@|��}n||_|tj|<|Sr)rrrF� _SixMetaPathImporter__get_module� isinstancer'r� __loader__)r r@r*rrr � load_module�s     z _SixMetaPathImporter.load_modulecCst|�|�d�S)z� Return true, if the named module is a package. We need this method to get correct spec objects with Python 3.4 (see PEP451) �__path__)�hasattrrHrBrrr � is_package�sz_SixMetaPathImporter.is_packagecCs|�|�dS)z;Return None Required, if is_package is implementedN)rHrBrrr �get_code�s z_SixMetaPathImporter.get_code)N) r rrrrrArCrErHrKrNrO� get_sourcerrrr r;�s  r;c@seZdZdZgZdS)� _MovedItemszLazy loading of moved objectsN)r rrrrLrrrr rQ�srQZ cStringIO�io�StringIO�filter� itertools�builtinsZifilter� filterfalseZ ifilterfalse�inputZ __builtin__Z raw_input�internr�map�imap�getcwd�osZgetcwdu�getcwdbZ getoutputZcommands� subprocess�rangeZxrangeZ reload_module� importlibZimp�reload�reduce� functoolsZ shlex_quoteZpipesZshlexZquote�UserDict� collections�UserList� UserString�zipZizip� zip_longestZ izip_longestZ configparserZ ConfigParser�copyregZcopy_regZdbm_gnuZgdbmzdbm.gnuZ _dummy_threadZ dummy_threadZhttp_cookiejarZ cookielibzhttp.cookiejarZ http_cookiesZCookiez http.cookiesZ html_entitiesZhtmlentitydefsz html.entitiesZ html_parserZ HTMLParserz html.parserZ http_clientZhttplibz http.clientZemail_mime_basezemail.MIMEBasezemail.mime.baseZemail_mime_imagezemail.MIMEImagezemail.mime.imageZemail_mime_multipartzemail.MIMEMultipartzemail.mime.multipartZemail_mime_nonmultipartzemail.MIMENonMultipartzemail.mime.nonmultipartZemail_mime_textzemail.MIMETextzemail.mime.textZBaseHTTPServerz http.serverZ CGIHTTPServerZSimpleHTTPServerZcPickle�pickleZqueueZQueue�reprlib�reprZ socketserverZ SocketServer�_thread�threadZtkinterZTkinterZtkinter_dialogZDialogztkinter.dialogZtkinter_filedialogZ FileDialogztkinter.filedialogZtkinter_scrolledtextZ ScrolledTextztkinter.scrolledtextZtkinter_simpledialogZ SimpleDialogztkinter.simpledialogZ tkinter_tixZTixz tkinter.tixZ tkinter_ttkZttkz tkinter.ttkZtkinter_constantsZ Tkconstantsztkinter.constantsZ tkinter_dndZTkdndz tkinter.dndZtkinter_colorchooserZtkColorChooserztkinter.colorchooserZtkinter_commondialogZtkCommonDialogztkinter.commondialogZtkinter_tkfiledialogZ tkFileDialogZ tkinter_fontZtkFontz tkinter.fontZtkinter_messageboxZ tkMessageBoxztkinter.messageboxZtkinter_tksimpledialogZtkSimpleDialogZ urllib_parsez.moves.urllib_parsez urllib.parseZ urllib_errorz.moves.urllib_errorz urllib.errorZurllibz .moves.urllibZurllib_robotparser� robotparserzurllib.robotparserZ xmlrpc_clientZ xmlrpclibz xmlrpc.clientZ xmlrpc_serverZSimpleXMLRPCServerz xmlrpc.serverZwin32�winreg�_winregzmoves.z.moves�movesc@seZdZdZdS)�Module_six_moves_urllib_parsez7Lazy loading of moved objects in six.moves.urllib_parseN�r rrrrrrr ruBsruZ ParseResultZurlparseZ SplitResultZparse_qsZ parse_qslZ urldefragZurljoinZurlsplitZ urlunparseZ urlunsplitZ quote_plusZunquoteZ unquote_plusZunquote_to_bytesZ urlencodeZ splitqueryZsplittagZ splituserZ splitvalueZ uses_fragmentZ uses_netlocZ uses_paramsZ uses_queryZ uses_relative�moves.urllib_parsezmoves.urllib.parsec@seZdZdZdS)�Module_six_moves_urllib_errorz7Lazy loading of moved objects in six.moves.urllib_errorNrvrrrr rxlsrxZURLErrorZurllib2Z HTTPErrorZContentTooShortErrorz.moves.urllib.error�moves.urllib_errorzmoves.urllib.errorc@seZdZdZdS)�Module_six_moves_urllib_requestz9Lazy loading of moved objects in six.moves.urllib_requestNrvrrrr rz�srzZurlopenzurllib.requestZinstall_openerZ build_openerZ pathname2urlZ url2pathnameZ getproxiesZRequestZOpenerDirectorZHTTPDefaultErrorHandlerZHTTPRedirectHandlerZHTTPCookieProcessorZ ProxyHandlerZ BaseHandlerZHTTPPasswordMgrZHTTPPasswordMgrWithDefaultRealmZAbstractBasicAuthHandlerZHTTPBasicAuthHandlerZProxyBasicAuthHandlerZAbstractDigestAuthHandlerZHTTPDigestAuthHandlerZProxyDigestAuthHandlerZ HTTPHandlerZ HTTPSHandlerZ FileHandlerZ FTPHandlerZCacheFTPHandlerZUnknownHandlerZHTTPErrorProcessorZ urlretrieveZ urlcleanupZ URLopenerZFancyURLopenerZ proxy_bypassZparse_http_listZparse_keqv_listz.moves.urllib.request�moves.urllib_requestzmoves.urllib.requestc@seZdZdZdS)� Module_six_moves_urllib_responsez:Lazy loading of moved objects in six.moves.urllib_responseNrvrrrr r|�sr|Zaddbasezurllib.responseZ addclosehookZaddinfoZ addinfourlz.moves.urllib.response�moves.urllib_responsezmoves.urllib.responsec@seZdZdZdS)�#Module_six_moves_urllib_robotparserz=Lazy loading of moved objects in six.moves.urllib_robotparserNrvrrrr r~�sr~ZRobotFileParserz.moves.urllib.robotparser�moves.urllib_robotparserzmoves.urllib.robotparserc@sNeZdZdZgZe�d�Ze�d�Ze�d�Z e�d�Z e�d�Z dd�Z d S) �Module_six_moves_urllibzICreate a six.moves.urllib namespace that resembles the Python 3 namespacerwryr{r}rcCsdddddgS)N�parse�error�request�responserqrr rrr r8�szModule_six_moves_urllib.__dir__N) r rrrrL� _importerrCr�r�r�r�rqr8rrrr r��s     r�z moves.urllibcCstt|j|�dS)zAdd an item to six.moves.N)rrQr)Zmoverrr �add_move�sr�c CsXztt|�WnDtk rRz tj|=Wn"tk rLtd|f��YnXYnXdS)zRemove item from six.moves.zno such move, %rN)r rQr"rt�__dict__rFrrrr � remove_move�s r��__func__�__self__� __closure__�__code__� __defaults__� __globals__�im_funcZim_selfZ func_closureZ func_codeZ func_defaultsZ func_globalscCs|��Sr)�next)�itrrr �advance_iteratorsr�cCstdd�t|�jD��S)Ncss|]}d|jkVqdS)�__call__N)r�)r5�klassrrr � szcallable..)�any�type�__mro__)r#rrr �callablesr�cCs|Srr�Zunboundrrr �get_unbound_functionsr�cCs|Srr�r�clsrrr �create_unbound_method#sr�cCs|jSr)r�r�rrr r�(scCst�|||j�Sr)�types� MethodTyper!)rr#rrr �create_bound_method+sr�cCst�|d|�Sr)r�r�r�rrr r�.sc@seZdZdd�ZdS)�IteratorcCst|��|�Sr)r��__next__r rrr r�3sz Iterator.nextN)r rrr�rrrr r�1sr�z3Get the function out of a possibly unbound functioncKst|jf|��Sr)�iter�keys��d�kwrrr �iterkeysDsr�cKst|jf|��Sr)r��valuesr�rrr � itervaluesGsr�cKst|jf|��Sr)r��itemsr�rrr � iteritemsJsr�cKst|jf|��Sr)r�Zlistsr�rrr � iterlistsMsr�r�r�r�cKs |jf|�Sr)r�r�rrr r�VscKs |jf|�Sr)r�r�rrr r�YscKs |jf|�Sr)r�r�rrr r�\scKs |jf|�Sr)r�r�rrr r�_s�viewkeys� viewvalues� viewitemsz1Return an iterator over the keys of a dictionary.z3Return an iterator over the values of a dictionary.z?Return an iterator over the (key, value) pairs of a dictionary.zBReturn an iterator over the (key, [values]) pairs of a dictionary.cCs |�d�S)Nzlatin-1)�encode��srrr �bqsr�cCs|Srrr�rrr �utsr�z>B�assertCountEqual�ZassertRaisesRegexpZassertRegexpMatches�assertRaisesRegex� assertRegexcCs|Srrr�rrr r��scCst|�dd�d�S)Nz\\z\\\\Zunicode_escape)�unicode�replacer�rrr r��scCs t|d�S)Nr��ord)Zbsrrr �byte2int�sr�cCs t||�Srr�)Zbuf�irrr � indexbytes�sr�ZassertItemsEqualz Byte literalz Text literalcOst|t�||�Sr)r.�_assertCountEqual�r �args�kwargsrrr r��scOst|t�||�Sr)r.�_assertRaisesRegexr�rrr r��scOst|t�||�Sr)r.� _assertRegexr�rrr r��s�execcCs:z*|dkr|�}|j|k r$|�|��|�W5d}d}XdSr)� __traceback__�with_traceback)r$r1�tbrrr �reraise�s  r�cCsB|dkr*t�d�}|j}|dkr&|j}~n |dkr6|}td�dS)zExecute code in a namespace.Nr�zexec _code_ in _globs_, _locs_)r� _getframe� f_globals�f_localsr�)Z_code_Z_globs_Z_locs_�framerrr �exec_�s r�zedef reraise(tp, value, tb=None): try: raise tp, value, tb finally: tb = None )rrz�def raise_from(value, from_value): try: if from_value is None: raise value raise value from from_value finally: value = None zrdef raise_from(value, from_value): try: raise value from from_value finally: value = None cCs|�dSrr)r1Z from_valuerrr � raise_from�sr��printc s.|�dtj���dkrdS�fdd�}d}|�dd�}|dk r`t|t�rNd}nt|t�s`td��|�d d�}|dk r�t|t�r�d}nt|t�s�td ��|r�td ��|s�|D]}t|t�r�d}q�q�|r�td �}td �}nd }d }|dkr�|}|dkr�|}t|�D] \} }| �r||�||��q||�dS)z4The new-style print function for Python 2.4 and 2.5.�fileNcsdt|t�st|�}t�t�rVt|t�rV�jdk rVt�dd�}|dkrHd}|��j|�}��|�dS)N�errors�strict) rI� basestring�strr�r��encodingr.r��write)�datar���fprr r��s  �� zprint_..writeF�sepTzsep must be None or a string�endzend must be None or a stringz$invalid keyword arguments to print()� � )�popr�stdoutrIr�r�� TypeError� enumerate) r�r�r�Z want_unicoder�r��arg�newlineZspacer�rr�r �print_�sL          r�)rrcOs<|�dtj�}|�dd�}t||�|r8|dk r8|��dS)Nr��flushF)�getrr�r��_printr�)r�r�r�r�rrr r�s    zReraise an exception.cs���fdd�}|S)Ncst�����|�}�|_|Sr)rd�wraps� __wrapped__)�f��assigned�updated�wrappedrr �wrapper*szwraps..wrapperr)r�r�r�r�rr�r r�(sr�cs&G��fdd�dt�}t�|ddi�S)z%Create a base class with a metaclass.cs,eZdZ��fdd�Ze��fdd��ZdS)z!with_metaclass..metaclasscs �|�|�Srr)r�r� this_basesr���bases�metarr �__new__:sz)with_metaclass..metaclass.__new__cs ��|��Sr)� __prepare__)r�rr�r�rr r�=sz-with_metaclass..metaclass.__prepare__N)r rrr�� classmethodr�rr�rr � metaclass8sr�Ztemporary_classr)r�r�)r�r�r�rr�r �with_metaclass3sr�cs�fdd�}|S)z6Class decorator for creating a class with a metaclass.cs||j��}|�d�}|dk r@t|t�r,|g}|D]}|�|�q0|�dd�|�dd�t|d�rl|j|d<�|j|j |�S)N� __slots__r�� __weakref__r) r��copyr�rIr�r�rMrr � __bases__)r�Z orig_vars�slotsZ slots_var�r�rr r�Es        zadd_metaclass..wrapperr)r�r�rrr � add_metaclassCs r�utf-8r�cCs8t|t�r|�||�St|t�r$|Stdt|���dS)z�Coerce **s** to six.binary_type. For Python 2: - `unicode` -> encoded to `str` - `str` -> `str` For Python 3: - `str` -> encoded to `bytes` - `bytes` -> `bytes` �not expecting type '%s'N)rI� text_typer�� binary_typer�r��r�r�r�rrr � ensure_binaryUs   r cCsXt|ttf�stdt|���tr:t|t�r:|�||�}ntrTt|t�rT|�||�}|S)z�Coerce *s* to `str`. For Python 2: - `unicode` -> encoded to `str` - `str` -> `str` For Python 3: - `str` -> `str` - `bytes` -> decoded to `str` r) rIrrr�r��PY2r�r)�decoderrrr � ensure_strhs  r cCs8t|t�r|�||�St|t�r$|Stdt|���dS)z�Coerce *s* to six.text_type. For Python 2: - `unicode` -> `unicode` - `str` -> `unicode` For Python 3: - `str` -> `str` - `bytes` -> decoded to `str` rN)rIrr rr�r�rrrr � ensure_text|s   r cCs2tr.d|jkrtd|j��|j|_dd�|_|S)a A decorator that defines __unicode__ and __str__ methods under Python 2. Under Python 3 it does nothing. To support Python 2 and 3 with a single code base, define a __str__ method returning text and apply this decorator to the class. �__str__zY@python_2_unicode_compatible cannot be applied to %s because it doesn't define __str__().cSs|���d�S)Nr)� __unicode__r�r rrr ���z-python_2_unicode_compatible..)r r�� ValueErrorr rr)r�rrr �python_2_unicode_compatible�s � r�__spec__)N)NN)rr�)rr�)rr�)�rZ __future__rrdrU�operatorrr�� __author__� __version__� version_infor r)ZPY34r�Z string_types�intZ integer_typesr�Z class_typesr�bytesr�maxsizeZMAXSIZEr�ZlongZ ClassTyper��platform� startswith�objectr�len� OverflowErrorrrrr'� ModuleTyper4r9r;r r�rQr7r/rrrIrArtruZ_urllib_parse_moved_attributesrxZ_urllib_error_moved_attributesrzZ _urllib_request_moved_attributesr|Z!_urllib_response_moved_attributesr~Z$_urllib_robotparser_moved_attributesr�r�r�Z _meth_funcZ _meth_selfZ _func_closureZ _func_codeZ_func_defaultsZ _func_globalsr�r�� NameErrorr�r�r�r�r�r�� attrgetterZget_method_functionZget_method_selfZget_function_closureZget_function_codeZget_function_defaultsZget_function_globalsr�r�r�r�� methodcallerr�r�r�r�r��chrZunichr�struct�Struct�packZint2byte� itemgetterr��getitemr�r�Z iterbytesrRrS�BytesIOr�r�r��partialr[r�r�r�r�r.rVr�r�r�r�r��WRAPPER_ASSIGNMENTS�WRAPPER_UPDATESr�r�rr r r rrL� __package__�globalsr�r�submodule_search_locations� meta_pathr�r�Zimporter�appendrrrr �s     >                                  ��   �   �F �                           ��   ��                                   �%��� �� �       �                     ��                    5  �   �