§
    ¡ã h-  ã                   óT   — d dl Z d dlmZ d dlmZmZmZ d dlmZ  G d„ d¦  «        Z	dS )é    N)Úutils)ÚAlreadyFinalizedÚUnsupportedAlgorithmÚ_Reasons)Ú_Poly1305Contextc            	       ó´   — e Zd ZU ej        e         ed<   defd„Zdeddfd„Z	defd„Z
d	eddfd
„Zedededefd„¦   «         Zededed	eddfd„¦   «         ZdS )ÚPoly1305Ú_ctxÚkeyc                 ó¢   — ddl m} |                     ¦   «         st          dt          j        ¦  «        ‚|                     |¦  «        | _        d S )Nr   )Úbackendz5poly1305 is not supported by this version of OpenSSL.)Ú,cryptography.hazmat.backends.openssl.backendr   Úpoly1305_supportedr   r   ÚUNSUPPORTED_MACÚcreate_poly1305_ctxr
   )Úselfr   r   s      úc/var/www/html/Sam_Eipo/venv/lib/python3.11/site-packages/cryptography/hazmat/primitives/poly1305.pyÚ__init__zPoly1305.__init__   s^   € ØHÐHÐHÐHÐHÐHà×)Ò)Ñ+Ô+ð 	Ý&ØGÝÔ(ñô ð ð ×/Ò/°Ñ4Ô4ˆŒ	ˆ	ˆ	ó    ÚdataÚreturnNc                 ó   — | j         €t          d¦  «        ‚t          j        d|¦  «         | j                              |¦  «         d S )NúContext was already finalized.r   )r
   r   r   Ú_check_byteslikeÚupdate)r   r   s     r   r   zPoly1305.update   sH   € ØŒ9ÐÝ"Ð#CÑDÔDÐDÝÔ˜v tÑ,Ô,Ð,ØŒ	×Ò˜ÑÔÐÐÐr   c                 ór   — | j         €t          d¦  «        ‚| j                              ¦   «         }d | _         |S )Nr   )r
   r   Úfinalize)r   Úmacs     r   r   zPoly1305.finalize#   s8   € ØŒ9ÐÝ"Ð#CÑDÔDÐDØŒi× Ò Ñ"Ô"ˆØˆŒ	Øˆ
r   Útagc                 ó¤   — t          j        d|¦  «         | j        €t          d¦  «        ‚| j        d c}| _        |                     |¦  «         d S )Nr   r   )r   Ú_check_bytesr
   r   Úverify)r   r   Úctxs      r   r"   zPoly1305.verify*   sN   € ÝÔ˜5 #Ñ&Ô&Ð&ØŒ9ÐÝ"Ð#CÑDÔDÐDàœ DˆˆˆTŒYØ
Š
3‰Œˆˆˆr   c                 ór   — t          |¦  «        }|                     |¦  «         |                     ¦   «         S ©N)r	   r   r   )Úclsr   r   Úps       r   Úgenerate_tagzPoly1305.generate_tag2   s*   € åS‰MŒMˆØ	Š‰ŒˆØzŠz‰|Œ|Ðr   c                 óx   — t          |¦  «        }|                     |¦  «         |                     |¦  «         d S r%   )r	   r   r"   )r&   r   r   r   r'   s        r   Ú
verify_tagzPoly1305.verify_tag8   s/   € åS‰MŒMˆØ	Š‰ŒˆØ	Š‰Œˆˆˆr   )Ú__name__Ú
__module__Ú__qualname__ÚtypingÚOptionalr   Ú__annotations__Úbytesr   r   r   r"   Úclassmethodr(   r*   © r   r   r	   r	      s  € € € € € € Ø
Œ/Ð*Ô
+Ð+Ð+Ñ+ð5˜Eð 5ð 5ð 5ð 5ð˜5ð  Tð ð ð ð ð˜%ð ð ð ð ð˜%ð  Dð ð ð ð ð ð˜uð ¨Eð °eð ð ð ñ „[ðð
 ð˜Uð ¨%ð °eð Àð ð ð ñ „[ðð ð r   r	   )
r.   Úcryptographyr   Úcryptography.exceptionsr   r   r   Ú-cryptography.hazmat.backends.openssl.poly1305r   r	   r3   r   r   ú<module>r7      s›   ðð
 €€€à Ð Ð Ð Ð Ð ðð ð ð ð ð ð ð ð ð ð
 KÐ JÐ JÐ JÐ JÐ Jð,ð ,ð ,ð ,ð ,ñ ,ô ,ð ,ð ,ð ,r   