Ë
    o UfX  ã                   óò   — d Z ddlZddlZddlZej                  d   dk(  ZereZeZ	ne
ZeZ	ee	fZ	 ddlmZmZ 	 ej"                  Z eedd«      rd„ Zyd„ Zy# e$ r ddlmZmZ Y Œ.w xY w# e$ r d„ ZY Œ/w xY w)	z–
The `compat` module provides support for backwards compatibility with older
versions of python, and compatibility wrappers around optional packages.
é    Né   )ÚIterableÚMappingc                 óœ   — t        | «      t        |«      k7  ryd}t        | |«      D ]  \  }}|t        |«      t        |«      z  z  }Œ! |dk(  S )zœ
        Returns True if the two strings are equal, False otherwise.

        The time taken is independent of the number of characters that match.
        Fr   )ÚlenÚzipÚord)Úval1Úval2ÚresultÚxÚys        úIC:\Users\user\Documents\project_loop\venv\Lib\site-packages\jwt/compat.pyÚconstant_time_comparer   !   sW   € ô ˆt‹9œ˜D›	Ò!Øàˆä˜˜d“Oò 	&‰DˆAˆqØ”c˜!“fœs 1›v‘oÑ%‰Fð	&ð ˜‰{Ðó    Úto_bytesc                 ó\   — | }d}|dk7  r|dz	  }|dz  }|dk7  rŒ| j                  |dd¬«      S )Nr   é   é   ÚbigF)Úsigned)r   )ÚvalÚ	remainingÚbyte_lengths      r   Úbytes_from_intr   3   sF   € Øˆ	Øˆà˜1ŠnØ! Q™ˆIØ˜1ÑˆKð ˜1‹nð �|‰|˜K¨°uˆ|Ó=Ð=r   c                 ó´   — g }| r#t        | d«      \  } }|j                  |«       | rŒ#|j                  «        t        j                  dt        |«      z  g|¢­Ž S )Né   z%sB)ÚdivmodÚappendÚreverseÚstructÚpackr   )r   ÚbufÚ	remainders      r   r   r   =   sS   € ØˆÙÜ# C¨Ó-‰NˆC�Ø�J‰J�yÔ!ò ð 	�‰ŒÜ�{‰{˜5¤3 s£8Ñ+Ð2¨cÒ2Ð2r   )Ú__doc__Úhmacr!   ÚsysÚversion_infoÚPY3ÚstrÚ	text_typeÚbytesÚbinary_typeÚunicodeÚstring_typesÚcollections.abcr   r   ÚImportErrorÚcollectionsÚcompare_digestr   ÚAttributeErrorÚgetattrÚintr   © r   r   ú<module>r8      s­   ðñó
 Û Û 
ð 
×Ñ�qÑ˜QÑ€ñ Ø€IØ�Kà€IØ€Kà˜;Ð'€ð.ç1ðØ ×/Ñ/Ðñ( ˆ3�
˜DÔ!ó>ó3øðG ò .ß-Ñ-ð.ûð
 ò ôðús"   ±A ºA+ ÁA(Á'A(Á+A6Á5A6