§
    0xÅjÈ&  ã                   óv  — d dl mZmZmZ d dlZddlmZ ddlmZ ddl	m
Z
mZmZmZmZ ddlmZ erd dlZej        j        ZneZddddddddddddœd	eeef         d
ee         dee         dee         dee         dee         dee         dee         dee         dee         dee         dee         defd„ZdS )é    )ÚOptionalÚUnionÚTYPE_CHECKINGNé   )ÚEmailSyntaxError)ÚValidatedEmail)Úsplit_emailÚvalidate_email_local_partÚvalidate_email_domain_nameÚvalidate_email_domain_literalÚvalidate_email_length)ÚCASE_INSENSITIVE_MAILBOX_NAMES)Úallow_smtputf8Úallow_empty_localÚallow_quoted_localÚallow_domain_literalÚallow_display_nameÚstrictÚcheck_deliverabilityÚtest_environmentÚglobally_deliverableÚtimeoutÚdns_resolverÚemailr   r   r   r   r   r   r   r   r   r   r   Úreturnc               ó¸  — ddl m}m}m}m}m}m}m}m}m	}m
} |€|}|€|}|€|}|€|}|€|}|€|}|€|}|€|}|	€|}	|
€|€|}
t          | t          ¦  «        rn]t          | t          ¦  «        r9	 |                      d¦  «        } n1# t          $ r}t!          d¦  «        |‚d}~ww xY wt#          d¦  «        ‚t%          | ¦  «        \  }}}}|rt'          j        d|¦  «        }t+          ¦   «         }|s|nd|z   dz   d	z   |z   |_        ||_        t1          |||||¬
¦  «        }|d         |_        |d         |_        |d         |_        t'          j        d|j        ¦  «        }||j        k    rO	 t1          |||||¬
¦  «         n2# t           $ r%}t!          dt          |¦  «        z   ¦  «        |‚d}~ww xY w||_        |r|st!          d¦  «        ‚|j        �c|j                             ¦   «         t:          v rC|j        �<|j                             ¦   «         |_        |j                             ¦   «         |_        d}t=          |¦  «        dk    rt!          d¦  «        ‚|                     d¦  «        rg|                      d¦  «        rRtC          |dd…         ¦  «        }|st!          d¦  «        ‚|d         |_"        |d         |_#        |d         |_$        d}n,tK          |||	¬¦  «        } | d         |_"        | d         |_#        |j        d	z   |j"        z   |_&        |j        s0|j#        stO          d¦  «        ‚|j        pdd	z   |j#        z   |_(        nd|_(        tS          |¦  «         |�|st!          d¦  «        ‚|r\|sZ|r|S ddl*m+}!  |!|j#        |j"        |
|¦  «        }"|" ,                    d ¦  «        }#|#�|#|_-        |" ,                    d!¦  «        |_.        |S )"z÷
    Given an email address, and some options, returns a ValidatedEmail instance
    with information about the address if it is valid or, if the address is not
    valid, raises an EmailNotValidError. This is the main function of the module.
    r   )
ÚALLOW_SMTPUTF8ÚALLOW_EMPTY_LOCALÚALLOW_QUOTED_LOCALÚALLOW_DOMAIN_LITERALÚALLOW_DISPLAY_NAMEÚSTRICTÚGLOBALLY_DELIVERABLEÚCHECK_DELIVERABILITYÚTEST_ENVIRONMENTÚDEFAULT_TIMEOUTNÚasciiz%The email address is not valid ASCII.zemail must be str or bytesÚNFCú"ú@)r   r   Úquoted_local_partr   Ú
local_partÚascii_local_partÚsmtputf8zAfter Unicode normalization: z7Quoting the part before the @-sign is not allowed here.Fr   z)There must be something after the @-sign.ú[ú]éÿÿÿÿz<A bracketed IP address after the @-sign is not allowed here.ÚdomainÚdomain_addressT)r   r   Úascii_domainzMissing ASCII domain.Ú zRA display name and angle brackets around the email address are not permitted here.)Úvalidate_email_deliverabilityÚmxÚmx_fallback_type)/r5   r   r   r   r    r!   r"   r#   r$   r%   r&   Ú
isinstanceÚstrÚbytesÚdecodeÚ
ValueErrorr   Ú	TypeErrorr	   ÚunicodedataÚ	normalizer   ÚoriginalÚdisplay_namer
   r,   r-   r.   Úlowerr   ÚlenÚ
startswithÚendswithr   r2   r4   r3   r   Ú
normalizedÚ	ExceptionÚascii_emailr   Údeliverabilityr6   Úgetr7   r8   )$r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   ÚerB   r,   Údomain_partÚis_quoted_local_partÚretÚlocal_part_infoÚnormalized_local_partÚis_domain_literalÚdomain_literal_infoÚdomain_name_infor6   Údeliverability_infor7   s$                                       úOC:\Projects\Historical\venv\Lib\site-packages\email_validator/validate_email.pyÚvalidate_emailrW      sŒ  € ð.^ð ^ð ^ð ^ð ^ð ^ð ^ð ^ð ^ð ^ð ^ð ^ð ^ð ^ð ^ð ^ð ^ð ^ð ^ð ^ð ^ð ^ð ^ð ^àÐØ'ˆØÐ Ø-ÐØÐ!Ø/ÐØÐ#Ø3ÐØÐ!Ø/ÐØ€~ØˆØÐ#Ø3ÐØÐØ+ÐØÐ#Ø3ÐØ€˜<Ð/Ø!ˆå�%�ÑÔð 6ØÝ	�E�5Ñ	!Ô	!ð 	6ð	SØ—L’L Ñ)Ô)ˆEˆEøÝð 	Sð 	Sð 	SÝ"Ð#JÑKÔKÐQRÐRøøøøð	Søøøõ Ð4Ñ5Ô5Ð5õ �eÑ
Ô
ñ @€L�*˜kÐ+?ð ð Bõ #Ô,¨U°LÑAÔAˆõ Ñ
Ô
€CØ';ð 2�Z�ZØ 
Ñ*¨SÑ0Øñà'ñ(€C„Lð $€CÔõ 0°
Ø?MØBSØBVØ7=ð	?ñ ?ô ?€Oð
 % \Ô2€C„NØ*Ð+=Ô>€CÔØ" :Ô.€C„Lõ (Ô1°%¸¼ÑHÔHÐØ ¤Ò.Ð.ð	TÝ%Ð&;Ø5CØ8IØ8LØ-3ð	5ñ 5ô 5ð 5ð 5øõ
  ð 	Tð 	Tð 	TÝ"Ð#BÅSÈÁVÄVÑ#KÑLÔLÐRSÐSøøøøð	Tøøøà.ˆŒð
 ð ZÐ$6ð ZÝÐXÑYÔYÐYð
 ÔÐ'ØÔ×%Ò%Ñ'Ô'Õ+IÐIÐIØŒ>Ð%Ø"Ô3×9Ò9Ñ;Ô;ˆÔØœ×-Ò-Ñ/Ô/ˆŒð ÐÝ
ˆ;ÑÔ˜1ÒÐÝÐJÑKÔKÐKà	×	Ò	 Ñ	$Ô	$ð <¨×)=Ò)=¸cÑ)BÔ)Bð <å;¸KÈÈ"ÈÔ<MÑNÔNÐØ#ð 	cÝ"Ð#aÑbÔbÐbØ(¨Ô2ˆŒ
Ø.¨xÔ8ˆÔØ0Ð1AÔBˆÔØ ÐÐõ
 6°kÐTdð  |Pð  Qñ  Qô  QÐØ% hÔ/ˆŒ
Ø+¨NÔ;ˆÔð ”^ cÑ)¨C¬JÑ6€C„Nð Œ<ð ØÔð 	5ÝÐ3Ñ4Ô4Ð4ØÔ/Ð5°2¸Ñ<¸sÔ?OÑOˆŒˆàˆŒõ ˜#ÑÔÐð ÐÐ(:ÐÝÐsÑtÔtÐtàð KÐ$4ð Kð ð 	àˆJð 	BÐAÐAÐAÐAÐAØ;Ð;ØÔ˜cœj¨'°<ñ
ô 
Ðð !×$Ò$ TÑ*Ô*ˆØˆ>ØˆCŒFØ2×6Ò6Ð7IÑJÔJˆÔà€Js0   Á/B Â
B$ÂBÂB$Å.F Æ
F2Æ F-Æ-F2)Útypingr   r   r   r?   Ú
exceptionsr   Útypesr   Úsyntaxr	   r
   r   r   r   Úrfc_constantsr   Údns.resolverÚdnsÚresolverÚResolverÚ	_ResolverÚobjectr:   r;   ÚboolÚintrW   © ó    rV   ú<module>rg      sô  ðØ 1Ð 1Ð 1Ð 1Ð 1Ð 1Ð 1Ð 1Ð 1Ð 1Ø Ð Ð Ð à (Ð (Ð (Ð (Ð (Ð (Ø !Ð !Ð !Ð !Ð !Ð !ð Mð  Mð  Mð  Mð  Mð  Mð  Mð  Mð  Mð  Mð  Mð  Mð  Mð  MØ 9Ð 9Ð 9Ð 9Ð 9Ð 9àð ØÐÐÐØ”Ô%€I€Ià€Ið &*Ø(,Ø)-Ø+/Ø)-Ø!Ø+/Ø'+Ø+/Ø!Ø(,ðAð Að AØ��e�ÔðAð ˜T”Nð	Að
   ”~ðAð ! œðAð # 4œ.ðAð ! œðAð �TŒNðAð # 4œ.ðAð ˜t”nðAð # 4œ.ðAð �cŒ]ðAð ˜9Ô%ðAð ðAð Að Að Að Að Arf   