
    &gn                        d dl Z d dlZd dlZddlT 	 ej        j        Zn# e$ r
 ej        ZY nw xY w ej        d          Z	d Z
dej        z   ej        z   Z ej        e                              d          Z ej         ej        dej        z   ej        z              ej         ej        d	                                                    z                                 d
          Zej                                                            d                              e
          Ze                                                    d                              e          Ze ej        d	          z   eez  z   Z ej         ej         ej        e                              Z  ed          Z!e! e d           ed          z  z   Z"e                                 Z# ej         ej        e"                    Z$ddZ%ddZ&dS )    N   )*z\\(.)c                 T    t                               d|d         dd                   S )Nz\1r   r   )UNQUOTE_PAIRSsub)slts      ?/var/www/api/venv/lib/python3.11/site-packages/httplib2/auth.py<lambda>r      s"    -++E1Q4":>>     z!#$%&'*+-.^_`|~tokenz-._~+/=token68zquoted-stringzauth-param-nameschemeparamsauthentication-infoc                    |                      |d                                          }|si S 	 t                              |          }n&# t          j        $ r}t          |          d}~ww xY w|                                S )z(https://tools.ietf.org/html/rfc7615
     N)getstripauthentication_infoparseStringppParseExceptionMalformedHeaderasDict)headers
headernameheaderparsedexs        r   _parse_authentication_infor$   %   s     [[R((..00F 	*$0088 * * *j)))* ==??   A	 	A,A''A,www-authenticatec                     |                      |d                                          }|si S 	 t                              |          }n&# t          j        $ r}t          |          d}~ww xY wd |D             }|S )z?Returns a dictionary of dictionaries, one dict per auth_scheme.r   Nc                     i | ]P}|d                                           d|v r|d                                         nd|                    d          iQS )r   r   r   )lowerr   r   ).0	challenges     r   
<dictcomp>z+_parse_www_authenticate.<locals>.<dictcomp>?   ss         	(!!##y   &/x%8%?%?%A%A%Ay}}W--.  r   )r   r   www_authenticater   r   r   r   )r   r    r!   r"   r#   retvals         r   _parse_www_authenticater/   4   s    [[R((..00F 	*!--f55 * * *j)))*   	  F Mr%   )r   )r&   )'base64re	pyparsingr   errorcommondowncaseTokensAttributeErrorcompiler   unquotenumsalphastcharWordsetNamer   CombineOptionalleaveWhitespacer   dblQuotedStringcopysetParseActionquoted_stringaddParseActionauth_param_nameSuppress
auth_paramDictdelimitedListGroupr   r   r+   r   r-   r$   r/    r   r   <module>rM      sQ    				        'Y-NN ' ' '&NNN' 
8$$
>
> 	BG#bi/w''
"*WRWX/");<<{r{727SV<<KgKgKiKi?j?jj
k
k
s
s  "''))11/BBQQRYZZ**,,&&'899HHXX{r{3///=53HI
	!!("(:"6"677	8	8	xffX&&)9)99:	kkmm #2#HBHY$7$788         s    ..