Ë
    ÚqjB	  ã                   ó²   — d Z ddlZddlmZmZmZ dZ ej                  dej                  ¬«      Z	 ej                  d«      Z
ded	eeeef   ee   f   fd
„Zy)z
ESMTP utils
é    N)ÚDictÚListÚTuple)Úparse_esmtp_extensionszauth=(?P<auth>.*))Úflagsz$(?P<ext>[A-Za-z0-9][A-Za-z0-9\-]*) ?ÚmessageÚreturnc                 ón  — i }g }| j                  d«      }|dd D �]  }t        j                  |«      }|�>|j                  d«      }|j	                  |j                  «       j                  «       «       t        j                  |«      }|€Œq|j                  d«      j                  «       }|j                  |j                  d«      d j                  «       }	|	||<   |dk(  sŒÇ|j                  |	j                  «       D �
cg c]   }
|
j                  «       j                  «       ‘Œ" c}
«       �Œ ||fS c c}
w )aj  
    Parse an EHLO response from the server into a dict of {extension: params}
    and a list of auth method names.

    It might look something like:

         220 size.does.matter.af.MIL (More ESMTP than Crappysoft!)
         EHLO heaven.af.mil
         250-size.does.matter.af.MIL offers FIFTEEN extensions:
         250-8BITMIME
         250-PIPELINING
         250-DSN
         250-ENHANCEDSTATUSCODES
         250-EXPN
         250-HELP
         250-SAML
         250-SEND
         250-SOML
         250-TURN
         250-XADR
         250-XSTA
         250-ETRN
         250-XGEN
         250 SIZE 51200000
    Ú
é   NÚauthÚext)ÚsplitÚOLDSTYLE_AUTH_REGEXÚmatchÚgroupÚappendÚlowerÚstripÚEXTENSIONS_REGEXÚstringÚendÚextend)r   Úesmtp_extensionsÚ
auth_typesÚresponse_linesÚlineÚ
auth_matchÚ	auth_typeÚ
extensionsÚ	extensionÚparamsÚparams              úQ/var/www/html/kelly-backend/venv/lib/python3.12/site-packages/aiosmtplib/esmtp.pyr   r      s$  € ð4 ÐØ€Jà—]‘] 4Ó(€Nð ˜q˜rÔ"ˆô )×.Ñ.¨tÓ4ˆ
ØÐ!Ø"×(Ñ(¨Ó0ˆIØ×Ñ˜iŸo™oÓ/×5Ñ5Ó7Ô8ô &×+Ñ+¨DÓ1ˆ
ØÑ!Ø"×(Ñ(¨Ó/×5Ñ5Ó7ˆIØ×&Ñ& z§~¡~°eÓ'<Ð'>Ð?×EÑEÓGˆFØ*0Ð˜YÑ'à˜FÓ"Ø×!Ñ!ÀfÇlÁlÄnÓ"UÁn¸U 5§;¡;£=×#6Ñ#6Õ#8ÀnÑ"UÖVð/ #ð2 ˜ZÐ'Ð'ùò #Vs   Ã?%D2
)Ú__doc__ÚreÚtypingr   r   r   Ú__all__ÚcompileÚIr   r   Ústrr   © ó    r$   Ú<module>r.      sq   ðñó 
ß $Ñ $ð &€ð !�b—j‘jÐ!5¸R¿T¹TÔBÐ Ø�2—:‘:ÐEÓFÐ ð9( Cð 9(¨E°$°s¸C°x±.À$ÀsÁ)Ð2KÑ,Lô 9(r-   