
    mh&                     @   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y)    )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              r	 | j                  d      } nt#        d      t%        |       \  }}}}|rt'        j(                  d|      }t+               }|s|nd|z   dz   d	z   |z   |_        ||_        t1        |||||
      }|d   |_        |d   |_        |d   |_        t'        j(                  d|j2                        }||j2                  k7  r	 t1        |||||
       ||_        |r|st!        d      |j4                  j|j4                  j9                         t:        v rJ|j2                  >|j4                  j9                         |_        |j2                  j9                         |_        d}t=        |      dk(  rt!        d      |j?                  d      rM|jA                  d      r<tC        |dd       }|st!        d      |d   |_"        |d   |_#        |d   |_$        d}n"tK        |||	      } | d   |_"        | d   |_#        |j2                  d	z   |jD                  z   |_&        |j6                  s=|jF                  stO        d      |j4                  xs dd	z   |jF                  z   |_(        nd|_(        tS        |       ||st!        d      |r[|sY|r|S ddl*m+}!  |!|jF                  |jD                  |
|      }"|"jY                  d       }#|#|#|_-        |"jY                  d!      |_.        |S # t        $ r}t!        d      |d}~ww xY w# t         $ r}t!        dt        |      z         |d}~ww xY w)"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$                                       p/var/www/pru.catia.catastroantioquia-mas.com/tasa/lib/python3.12/site-packages/email_validator/validate_email.pyvalidate_emailrW      s(   .^ ^ ^' -!/#3!/~#3+#3</!%	E5	!	SLL)E 455 e
 @L*k+?  #,,ULA 
C';Z
*S0'(CL $C 0
?MBSBV7=	?O
 %\2CN*+=>C":.CL (11%H.	T%&;5C8I8L-3	5 /
 $6XYY
 '%%'+II>>%"3399;--/ 
;1JKK				$)=)=c)B;K"<MN#"#abb(2
.x801AB 
 6kTd  |P  Q%h/
+N; ^^c)CJJ6CN <<344//52<s?O?OO # (:stt$4 J 	B;cjj'<
 !$$T*>CF2667IJJW  	S"#JKQRR	Sz   	T"#BSV#KLRSS	Ts0   %M 0M. 	M+M&&M+.	N7NN)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  ( ! M  M 9%%II &*(,)-+/)-!+/'++/!(,AeA TN	A
  ~A !A #4.A !A TNA #4.A tnA #4.A c]A 9%A Arf   