U
     ÕdL  ã                   @   sT   d dl Z d dlZzd dlmZ W n& ek
rF   d dlZddd„ZY nX dd„ ZdS )é    N)Útoken_urlsafec                 C   s,   | d krd} t  | ¡}t |¡ d¡ d¡S )Né    ó   =Úascii)ÚosÚurandomÚbase64Úurlsafe_b64encodeÚrstripÚdecode)ÚnbytesÚtok© r   úp/var/www/html/crackeverytest/cet_env/lib/python3.8/site-packages/allauth/socialaccount/providers/oauth2/utils.pyr      s    
r   c                  C   s<   t dƒ} t |  d¡¡}t | ¡ ¡}| d¡}| d|dœS )Né`   r   r   ZS256)Úcode_verifierZcode_challenge_methodÚcode_challenge)r   ÚhashlibZsha256Úencoder   r	   Údigestr
   )r   Zhashed_verifierr   Zcode_challenge_without_paddingr   r   r   Úgenerate_code_challenge   s    
ýr   )N)r   r   Zsecretsr   ÚImportErrorr   r   r   r   r   r   Ú<module>   s   