
    hu                     r    S SK JrJrJr  SSKJr  S SKrS SKrSSS.S\\	   4S jjr
SS\S	\S\\	   4S
 jjrg)    )OptionalAnyDict   )EmailUndeliverableErrorN)timeoutcacher   c                     U c  SSK Jn  Un [        R                  R	                  5       nU=(       d    [        R                  R                  5       Ul        Xl        U$ )Nr   DEFAULT_TIMEOUT) r   dnsresolverResolverLRUCacher	   lifetime)r   r	   r   r   s       sC:\Users\ROHAN GUPTA\OneDrive\Desktop\mathbuddy-assessment\venv\Lib\site-packages\email_validator/deliverability.pycaching_resolverr   	   sE    %!||$$&H5cll335HNO    domaindomain_i18nc           	      B   Uc/  SSK Jn  Uc  Un[        R                  R	                  5       nX#l        0 n  UR                  U S5      n[        U Vs/ s H2  owR                  [        UR                  5      R                  S5      4PM4     sn5      nU V	V
s/ s H  u  pU
S:w  d  M  X4PM     nn	n
[        U5      S:X  a  [        SU S35      eXS	'   S US
'   U$ s  snf s  sn
n	f ! [        R                  R                   Gau     UR                  U S5      nU Vs/ s H  nS[        U5      4PM     Os  snf snUS	'   SUS
'   O! [        R                  R                   as     UR                  U S5      nU Vs/ s H  nS[        U5      4PM     Os  snf snUS	'   SUS
'    O5! [        R                  R                   a    [        SU S35      ef = ff = f UR                  U S5      nU H^  nSR                  UR                   5      nUR#                  S5      (       d  M6  UR%                  SSS9US'   US:X  d  MQ  [        SU S35      e    U$ ! [        R                  R                   a      U$ f = ff = f! [        R                  R&                   a    [        SU S35      e[        R                  R(                   a    SS0s $ [        R*                  R,                   a    SS0s $ [         a    e [.         a  n[        S[        U5      -   5      eS nAff = f)Nr   r   MX.r   r   zThe domain name z does not accept email.mxmx_fallback_typeAAAAATXTr   s   v=spf1 asciireplace)errorsspfs   v=spf1 -allz does not send email.z does not exist.zunknown-deliverabilityno_nameserversr   zZThere was an error while checking if the domain name in the email address is deliverable: )r   r   r   r   get_default_resolverr   resolvesorted
preferencestrexchangerstriplenr   NoAnswerjoinstrings
startswithdecodeNXDOMAINNoNameservers	exceptionTimeout	Exception)r   r   r   dns_resolverr   deliverability_inforesponsermtasr(   r*   recvaluees                 r   validate_email_deliverabilityr?      sS    %?%G||88: '*,V
9	#++FD9H PXYPX1LL#ajj/*@*@*EFPXYZD HL 't/Cz2~ +Z*tD '4yA~-0@Md.eff(,%6: 23L e Z' ||$$ &	k'//<BJ,K(QaQ[(,K#D):=#$67<<(( k
k+33FFCHFN0Oh!SVh0O'->D'(:;||,, k
 24D[MQh2ijjkk*
'//>#CHHS[[1E''
335:\\'R[\5\+E2 N2"9<L[MYn:o"pp $L A <<(( < AI&	P <<   X &(8EU&VWW<<%% 
 %&6
 	
 ==   
 %i
 	
 #  
%hknopkqq
 	

s   C% 9CC% C'C.*C% C% %I9ED32EI9G#F#9FF#!I9#.GGI9AI#I>II< I50I91I< 4I55I99I< <AL!L/LLL)NN)typingr   r   r   exceptions_typesr   dns.resolverr   dns.exceptionintr   r)   r?    r   r   <module>rF      sN    & & 5   26T # j# jC j(SV- jr   