a
   ØîD)É6ò‹ã                   @   sD  d Z ddlZddlZddlZzddlmZmZ W n" eyR   ddlmZmZ Y n0 ej	d dkZ
e
rÆeZddlmZ ddlmZ ddlmZmZmZmZmZ ddlmZmZ efZefZe d	¡Znrdd
l m!Z ddlm"Z ddl#mZmZmZmZ ddl$mZmZ ddl%Z%dd„ Ze&Zee'fZe d¡Zddl(mZ dd„ Z)dS )zK
Python 2/3 compatibility helpers.

Note: This module is *not* public API.
é    N)ÚMutableMappingÚSequenceé   )Ú	lru_cache)ÚStringIO)ÚunquoteÚurljoinÚ
urlunsplitÚSplitResultÚurlsplit)Úpathname2urlÚurlopenÚitems)Úizip)ÚBytesIO)r   r	   r
   r   )r   r   c                  O   s   t  tj| i |¤Ž¡S )N)Ú
contextlibÚclosingÚurllib2r   )ÚargsÚkwargs© r   ú5/usr/lib/python3.9/site-packages/jsonschema/compat.pyr   #   s    r   Ú	iteritemsc                 C   s>   d| v r.t | ƒ\}}}}}t||||dfƒ}n| }d}||fS )Nú#Ú )r   r	   )ÚurlÚsÚnÚpÚqÚfragÚdefragr   r   r   Ú	urldefrag-   s    r"   )*Ú__doc__r   ÚoperatorÚsysÚcollections.abcr   r   ÚImportErrorÚcollectionsÚversion_infoZPY3ÚzipÚ	functoolsr   Úior   ZNativeIOÚurllib.parser   r   r	   r
   r   Zurllib.requestr   r   ÚstrZ	str_typesÚintZ	int_typesÚmethodcallerr   Ú	itertoolsr   r   ÚurlparseZurllibr   Z
basestringZlongZfunctools32r"   r   r   r   r   Ú<module>   s8   
