
    ([f)                     B    d dl Z d dlmZmZmZ d dlmZ d ZddZd Z	dS )	    N)urlsafe_b64decode
json_loads
to_unicode)DecodeErrorc                     t          | |d          }	 t          |                    d                    }n # t          $ r} |d|           d }~ww xY wt	          |t
                    s |d          |S )Nheaderzutf-8zInvalid header string: zHeader must be a json object)extract_segmentr   decode
ValueError
isinstancedict)header_segment	error_clsheader_datar   es        E/var/www/piapp/venv/lib/python3.11/site-packages/authlib/jose/util.pyextract_headerr      s    !.)XFFK7K..w7788 7 7 7i5!556667 fd## 8i6777Ms   "6 
A AApayloadc                 x    	 t          |           S # t          t          j        f$ r d| d} ||          w xY w)NInvalid z padding)r   	TypeErrorbinasciiError)segmentr   namemsgs       r   r	   r	      sU     )))x~&   ''''inns    (9c                    t          | t                    sE	 t          t          |                     } n'# t          t
          f$ r t          d|           w xY wt          | t                    st          d|           | S )Nr   )r   r   r   r   r   r   r   )sstructure_names     r   ensure_dictr       s    a ;	;:a==))AAI& 	; 	; 	;999:::	; a 75^55666Hs	   4 $A)r   )
r   authlib.common.encodingr   r   r   authlib.jose.errorsr   r   r	   r         r   <module>r%      sz     M M M M M M M M M M + + + + + +
 
 
   
 
 
 
 
r$   