Ë
    Ûqj6  ã                   óH  — d dl mZmZmZmZmZ d dlZddlmZ d dl	Z
d dlZ
ddddœdee   dedee
j                  j                     d	e
j                  j                  fd
„Z edeeeef      ee   edœd¬«      Zddededee   dee
j                  j                     d	ef
d„Zy)é    )ÚAnyÚListÚOptionalÚTupleÚ	TypedDictNé   )ÚEmailUndeliverableError)ÚtimeoutÚcacheÚdns_resolverr
   r   r   Úreturnc                 óº   — | €ddl m} |} |xs t        j                  j	                  «       }|xs t        j                  j                  «       |_        | |_        |S )Nr   ©ÚDEFAULT_TIMEOUT)Ú r   ÚdnsÚresolverÚResolverÚLRUCacher   Úlifetime)r
   r   r   r   r   s        ú_/var/www/html/kelly-backend/venv/lib/python3.12/site-packages/email_validator/deliverability.pyÚcaching_resolverr      sL   € Ø€Ý%Ø!ˆØÒ6œsŸ|™|×4Ñ4Ó6€HØÒ5œcŸl™l×3Ñ3Ó5€H„NØ€HÔØ€Oó    ÚDeliverabilityInfo)ÚmxÚmx_fallback_typeúunknown-deliverabilityF)ÚtotalÚdomainÚdomain_i18nc           	      óz  ‡— |€0ddl m} |€|}t        j                  j	                  «       }||_        n|�t        d«      ‚i }	 	 |j                  | d«      }t        |D �cg c]2  }|j                  t        |j                  «      j                  d«      f‘Œ4 c}«      }|D �	�
cg c]  \  }	}
|
dk7  r|	|
f‘Œ }}	}
t        |«      dk(  rt        d|› d	�«      ‚||d
<   d |d<   |S c c}w c c}
}	w # t        j                  j                  $ �r‰ dt         dt"        fd„Š	 |j                  | d«      }t%        ˆfd„|D «       «      st        j                  j                  ‚d| fg|d
<   d|d<   n§# t        j                  j                  $ r‡ 	 |j                  | d«      }t%        ˆfd„|D «       «      st        j                  j                  ‚d| fg|d
<   d|d<   n5# t        j                  j                  $ r}t        d|› d	�«      |‚d }~ww xY wY nw xY w	 |j                  | d«      }|D ]C  }dj'                  |j(                  «      }|j+                  d«      sŒ0|dk(  sŒ6t        d|› d�«      ‚ n## t        j                  j                  $ r Y nw xY wY |S w xY w# t        j                  j,                  $ r}t        d|› d�«      |‚d }~wt        j                  j.                  $ r ddicY S t        j0                  j2                  $ r ddicY S t        $ r ‚ t4        $ r}t        dt        |«      z   «      |‚d }~ww xY w)Nr   r   z5It's not valid to pass both timeout and dns_resolver.ÚMXÚ.r   r   zThe domain name z does not accept email.r   r   Úaddressr   c                 ód   — 	 t        j                  | «      }|j                  S # t        $ r Y yw xY w)NF)Ú	ipaddressÚ
ip_addressÚ
ValueErrorÚ	is_global)r$   Úipaddrs     r   Úis_global_addrz5validate_email_deliverability.<locals>.is_global_addrO   s9   € ð!Ü&×1Ñ1°'Ó:�Fð ×'Ñ'Ð'øô "ò !Ù ð!ús   ‚# £	/®/ÚAc              3   óB   •K  — | ]  } ‰|j                   «      –— Œ y ­w©N©r$   ©Ú.0Úrr+   s     €r   Ú	<genexpr>z0validate_email_deliverability.<locals>.<genexpr>Y   s   øè ø€ ÐG¹h¸™>¨!¯)©)×4¹hùó   ƒÚAAAAc              3   óB   •K  — | ]  } ‰|j                   «      –— Œ y ­wr.   r/   r0   s     €r   r3   z0validate_email_deliverability.<locals>.<genexpr>f   s   øè ø€ ÐKÁ(¸Q™~¨a¯i©i×8Á(ùr4   ÚTXTr   s   v=spf1 s   v=spf1 -allz does not send email.z does not exist.r   Ú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   r(   ÚresolveÚsortedÚ
preferenceÚstrÚexchangeÚrstripÚlenr	   ÚNoAnswerr   ÚboolÚanyÚjoinÚstringsÚ
startswithÚNXDOMAINÚNoNameserversÚ	exceptionÚTimeoutÚ	Exception)r   r    r
   r   r   Údeliverability_infoÚresponser2   Úmtasr<   r>   ÚeÚrecÚvaluer+   s                 @r   Úvalidate_email_deliverabilityrR      s‡  ø€ ð ÐÝ%Øˆ?Ø%ˆGÜ—|‘|×8Ñ8Ó:ˆØ 'ˆÕØ	Ð	ÜÐPÓQÐQà.0ÐðmðP	à#×+Ñ+¨F°DÓ9ˆHô ÑPXÓYÑPXÈ1˜AŸL™L¬#¨a¯j©j«/×*@Ñ*@ÀÓ*EÒFÐPXÑYÓZˆDñ HLô 'ÁtÑ/C¨z¸8Ø 2’~ð   Ò*ÀtˆDñ 'ä�4‹y˜AŠ~Ü-Ð0@ÀÀÐMdÐ.eÓfÐfà(,Ð Ñ%Ø6:ÐÐ 2Ñ3ðz ÐùòS Zùó'øô �|‰|×$Ñ$ó =	ð(¬ð (´ó (ðrØ'×/Ñ/°¸Ó<�äÓG¹hÓGÔGÜŸ,™,×/Ñ/Ð/à./°¨[¨MÐ# DÑ)Ø:=Ð#Ð$6Ò7øä—<‘<×(Ñ(ò rðrØ+×3Ñ3°F¸FÓC�HäÓKÁ(ÓKÔKÜ!Ÿl™l×3Ñ3Ð3à23°V°°Ð'¨Ñ-Ø>DÐ'Ð(:Ò;øä—|‘|×,Ñ,ò rô
 2Ð4DÀ[ÀMÐQhÐ2iÓjÐpqÐqûðrúñ <ðrúð2	Ø'×/Ñ/°¸Ó>�Û#�CØŸH™H S§[¡[Ó1�EØ×'Ñ'¨
Õ3Ø  NÓ2Ü"9Ð<LÈ[ÈMÐYnÐ:oÓ"pÐpñ	 $øô
 —<‘<×(Ñ(ò áðûð@ Ððw=	ûô~ �<‰<× Ñ ò _ô &Ð(8¸¸ÐEUÐ&VÓWÐ]^Ð^ûä�<‰<×%Ñ%ò 
ð %Ð&6ð
ò 	
ô �=‰=× Ñ ò 
ð % ið
ò 	
ô #ò àäò ä%ØhÔknÐopÓkqÑqó
àð	ûðúsá   ÁC- Á 7C"ÂC- Â#C'Â6*C- Ã"C- Ã-.JÄAE*Å)JÅ*HÆAGÇHÇHÇ3HÈHÈHÈJÈHÈJÈAI-ÉI-ÉI-É,JÉ-JÊ
JÊJÊJÊJ ÊJÊJ ÊL:Ê4KË$L:Ë* L:ÌL:ÌL5Ì5L:)NN)Útypingr   r   r   r   r   r&   Úexceptions_typesr	   Údns.resolverr   Údns.exceptionÚintr   r   r   r=   r   rR   © r   r   Ú<module>rY      s  ðß 8Õ 8ã å 5ã Û ð 26ÀDÐz~ò  ¨#¡ð ¸cð ÐX`Ðad×amÑam×avÑavÑXwð ð  DG÷  DPñ  DP÷  DYñ  DYó ñ Ð3Ø
ˆu�S˜#�X‰Ñ
Ø  ™Ø!ñ6ð 
ô	Ð ñC¨#ð C¸Cð CÈ(ÐSVÉ-ð CÐnvÐwz÷  xDñ  xD÷  xMñ  xMñ  oNð Cð  Zlô Cr   