Ë
    [üàgT  ã                   ó2   — d dl mZ d dlmZ  G d„ de«      Zy)é    )Úsha256)ÚJwtc                   óV   ‡ — e Zd ZdZdZdZˆ fd„Zd„ Zd„ Ze	d„ «       Z
e	d„ «       Zˆ xZS )	ÚClientValidationJwtzIA JWT included on requests so that Twilio can verify request authenticityztwilio-pkrv;v=1ÚRS256c                 óf   •— t         t        | �  |||| j                  d¬«       || _        || _        y)aû  
        Create a new ClientValidationJwt
        :param str account_sid: A Twilio Account Sid starting with 'AC'
        :param str api_key_sid: A Twilio API Key Sid starting with 'SK'
        :param str credential_sid: A Credential Sid starting with 'CR',
                                   public key Twilio will use to verify the JWT.
        :param str private_key: The private key used to sign the JWT.
        :param ValidationPayload validation_payload: information from the request to sign
        i,  )Ú
secret_keyÚissuerÚsubjectÚ	algorithmÚttlN)Úsuperr   Ú__init__Ú	ALGORITHMÚcredential_sidÚvalidation_payload)ÚselfÚaccount_sidÚapi_key_sidr   Úprivate_keyr   Ú	__class__s         €ú\/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/twilio/jwt/validation/__init__.pyr   zClientValidationJwt.__init__   s?   ø€ ô 	Ô! 4Ñ1Ø"ØØØ—n‘nØð 	2ô 	
ð -ˆÔØ"4ˆÕó    c                 ó<   — t         j                  | j                  dœS )N)ÚctyÚkid)r   Ú_ClientValidationJwt__CTYr   )r   s    r   Ú_generate_headersz%ClientValidationJwt._generate_headers"   s   € Ü*×0Ñ0¸×9LÑ9LÑMÐMr   c           	      ó€  — | j                   j                  j                  «       D ��ci c]&  \  }}|j                  «       | j	                  |d«      “Œ( }}}t        | j                   j                  «      }|D �cg c]  }||v rdj                  |||   «      ‘Œ }}dj                  |«      }| j                   j                  j                  d«      }| j	                  |d«      }| j                  | j                   j                  «      xs d}dj                  |«      }	| j                   j                  | j                   j                  |g}
|r|
j                  |«       |
j                  d«       |
j                  |	«       |
j                  |«       dj                  |
«      }
|	| j                  |
«      dœS c c}}w c c}w )Nú,z{}:{}ú
ú&Ú ú;)ÚhrhÚrqh)r   Úall_headersÚitemsÚlowerÚ_sort_and_joinÚsortedÚsigned_headersÚformatÚjoinÚquery_stringÚsplitÚ_hashÚbodyÚmethodÚpathÚappend)r   ÚkÚvr'   r,   ÚhÚheaders_strr/   Úreq_body_hashÚsigned_headers_strÚsigned_payloads              r   Ú_generate_payloadz%ClientValidationJwt._generate_payload%   s£  € ð ×/Ñ/×;Ñ;×AÑAÓC÷
á��1ð �G‰G‹I�t×*Ñ*¨1¨cÓ2Ñ2ð
ˆñ 
ô
   × 7Ñ 7× FÑ FÓGˆð
 $ö
àØ�KÑð �N‰N˜1˜k¨!™nÕ-ð
ˆð 
ð
 —i‘i Ó,ˆð ×.Ñ.×;Ñ;×AÑAÀ#ÓFˆØ×*Ñ*¨<¸Ó=ˆàŸ
™
 4×#:Ñ#:×#?Ñ#?Ó@ÒFÀBˆà ŸX™X nÓ5Ðð ×#Ñ#×*Ñ*Ø×#Ñ#×(Ñ(Øð
ˆñ Ø×!Ñ! +Ô.Ø×Ñ˜bÔ!Ø×ÑÐ0Ô1Ø×Ñ˜mÔ,àŸ™ >Ó2ˆà)°$·*±*¸^Ó2LÑMÐMùóK
ùò
s   ¨+F5Á9 F;c                 óZ   — t        |t        «      r|S |j                  t        |«      «      S )N)Ú
isinstanceÚstrr.   r+   )ÚclsÚvaluesÚjoiners      r   r*   z"ClientValidationJwt._sort_and_joinN   s$   € ä�fœcÔ"ØˆMØ�{‰{œ6 &›>Ó*Ð*r   c                 ó~   — |s|S t        |t        «      s|j                  d«      }t        |«      j	                  «       S )Nzutf-8)r?   ÚbytesÚencoder   Ú	hexdigest)rA   Ú	input_strs     r   r1   zClientValidationJwt._hashT   s9   € áØÐä˜)¤UÔ+Ø!×(Ñ(¨Ó1ˆIä�iÓ ×*Ñ*Ó,Ð,r   )Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r   r   r=   Úclassmethodr*   r1   Ú__classcell__)r   s   @r   r   r      sJ   ø„ ÙSà€EØ€Iô5ò,Nò'NðR ñ+ó ð+ð
 ñ-ó ô-r   r   N)Úhashlibr   Ú
twilio.jwtr   r   © r   r   ú<module>rR      s   ðÝ å ôV-˜#õ V-r   