+
    üÐjÁ  ã                   ó`   € R t ^ RIHt ^ RIHtHt ^ RIHtHt  ! R R]P                  4      t
R# )z 
An in-memory caching resolver.
)Údefer)ÚcommonÚdns)ÚfailureÚlogc                   ó^   a € ] tR t^t o RtRtRR ltR tR tR t	RR lt
RR ltR	 tR
tV tR# )ÚCacheResolverzw
A resolver that serves records from a local, memory cache.

@ivar _reactor: A provider of L{interfaces.IReactorTime}.
Nc                óü   € \         P                  P                  V 4       / V n        W n        / V n        Vf   ^ RIHp W0n        V'       d1   VP                  4        F  w  pw  rVV P                  WFV4       K  	  R # R # )N)Úreactor)r   ÚResolverBaseÚ__init__ÚcacheÚverboseÚcancelÚtwisted.internetr
   Ú_reactorÚitemsÚcacheResult)Úselfr   r   r
   ÚqueryÚsecondsÚpayloads   &&&&   Ú5/usr/lib/python3/dist-packages/twisted/names/cache.pyr   ÚCacheResolver.__init__   sf   € Ü×Ñ×$Ñ$ TÔ*àˆŒ
ØŒØˆŒØŠ?Ý0ØŒçØ-2¯[©[®]Ñ)�Ñ)˜Ø× Ñ  °Ö9ó .;ñ ó    c                ó  € Wn         V P                  P                  4       pV P                  P	                  4        FK  w  pw  pw  rVpW$,
          pWV,           V,            F$  p	V	P
                  V8  g   K  V P                  V  KI  	  KM  	  R # ©N)Ú__dict__r   r   r   r   Úttl)
r   ÚstateÚnowÚkÚwhenÚansÚaddÚnsÚdiffÚrecs
   &&        r   Ú__setstate__ÚCacheResolver.__setstate__&   sp   € ØŒà�m‰m×#Ñ#Ó%ˆØ)-¯©×)9Ñ)9Ö);Ñ%ˆAÑ%�‘n�s Ø•:ˆDØ•y 2—~�~�Ø—7‘7˜T–>ØŸ
™
 1˜Úó &ó *<r   c                ó°   € V P                   P                  4        F  pVP                  4        K  	  V P                   P                  4        V P                  # r   )r   ÚvaluesÚclearr   )r   Úcs   & r   Ú__getstate__ÚCacheResolver.__getstate__1   s<   € Ø—‘×#Ñ#Ö%ˆAØ�H‰HŽJñ &à�‰×ÑÔØ�}‰}Ðr   c                óš  € V P                   P                  4       p\        P                  ! WV4      p V P                  V,          w  pw  r‰p
V P
                  '       d'   \        P                  ! R \        V4      ,           4       WW,
          p V Uu. uF`  p\        P                  ! VP                  P                  VP                  VP                  VP                  V,
          VP                  4      NKb  	  upV	 Uu. uF`  p\        P                  ! VP                  P                  VP                  VP                  VP                  V,
          VP                  4      NKb  	  upV
 Uu. uF`  p\        P                  ! VP                  P                  VP                  VP                  VP                  V,
          VP                  4      NKb  	  up3p\        P                   ! V4      # u upi u upi u upi   \"         dB    \        P$                  ! \&        P(                  ! \        P*                  ! T4      4      4      u # i ; i  \,         dy    T P
                  ^8”  d'   \        P                  ! R\        T4      ,           4       \        P$                  ! \&        P(                  ! \        P*                  ! T4      4      4      u # i ; i)zCache hit for zCache miss for )r   r   r   ÚQueryr   r   r   ÚmsgÚreprÚRRHeaderÚnameÚtypeÚclsr   r   r   ÚsucceedÚ
ValueErrorÚfailr   ÚFailureÚDomainErrorÚKeyError)r   r5   r7   r6   Útimeoutr    Úqr"   r#   Úauthr$   r&   ÚrÚresults   &&&&&         r   Ú_lookupÚCacheResolver._lookup7   s  € Ø�m‰m×#Ñ#Ó%ˆÜ�IŠI�d #Ó&ˆð#	-Ø%)§Z¡Z°¥]Ñ"ˆDÑ"�3˜cð �|�|ˆ|Ü—’Ð(¬4°«:Õ5Ô6Ø•:ˆDð-ñ "%ó	ñ "%˜Aô ŸšØŸF™FŸK™K¨¯©°·±¸¿¹À½ÀaÇiÁiöñ "%ñ	ñ "&ó	ñ "&˜Aô ŸšØŸF™FŸK™K¨¯©°·±¸¿¹À½ÀaÇiÁiöñ "&ñ	ñ "%ó	ñ "%˜Aô ŸšØŸF™FŸK™K¨¯©°·±¸¿¹À½ÀaÇiÁiöñ "%ñ	ð�ô. —}’} VÓ,Ð,ùò-ùòùòøô ô JÜ—z’z¤'§/¢/´#·/²/À$Ó2GÓ"HÓIÒIðJûô= ô 	FØ�|‰|˜aÔÜ—’Ð)¬D°«JÕ6Ô7Ü—:’:œgŸošo¬c¯oªo¸dÓ.CÓDÓEÒEð	FúsR   ³I ÂG8 ÂA&G)Ã7G8 Ã=A&G.Å#G8 Å)A&G3ÇG8 Ç)G8 Ç8A	IÉIÉB K
Ë	K
c                ó~   € \         P                  ! \        P                  ! \        P
                  ! V4      4      4      # r   )r   r:   r   r;   r   r<   )r   r5   r>   s   &&&r   ÚlookupAllRecordsÚCacheResolver.lookupAllRecords_   s#   € Ü�zŠzœ'Ÿ/š/¬#¯/ª/¸$Ó*?Ó@ÓAÐAr   c                óˆ  € V P                   ^8”  d   \        P                  ! RV,          4       T;'       g    V P                  P	                  4       V3V P
                  V&   WP                  9   d"   V P                  V,          P                  4        \        V^ ,          4      \        V^,          4      ,           \        V^,          4      ,           pV'       d3   V^ ,          P                  pV F  p\        WVP                  4      pK  	  M^ pV P                  P                  WPP                  V4      V P                  V&   R# )aq  
Cache a DNS entry.

@param query: a L{dns.Query} instance.

@param payload: a 3-tuple of lists of L{dns.RRHeader} records, the
    matching result of the query (answers, authority and additional).

@param cacheTime: The time (seconds since epoch) at which the entry is
    considered to have been added to the cache. If L{None} is given,
    the current time is used.
zAdding %r to cacheN)r   r   r2   r   r   r   r   Úlistr   ÚminÚ	callLaterÚ
clearEntry)r   r   r   Ú	cacheTimeÚsÚmrA   s   &&&&   r   r   ÚCacheResolver.cacheResultb   sä   € ð �<‰<˜!ÔÜ�GŠGÐ(¨5Õ0Ô1à&×AÐA¨$¯-©-×*?Ñ*?Ó*AÀ7ÐKˆ�
‰
�5Ñà—K‘KÔØ�K‰K˜Õ×%Ñ%Ô'ä�˜•Óœt G¨A¥JÓ/Õ/´$°w¸qµzÓ2BÕBˆßØ�!•—‘ˆAÛ�Ü˜Ÿ5™5“M’ò ð ˆAà!Ÿ]™]×4Ñ4°Q¿¹ÈÓOˆ�‰�EÓr   c                ó:   € V P                   V V P                  V R # r   )r   r   )r   r   s   &&r   rL   ÚCacheResolver.clearEntry�   s   € Ø�J‰J�uÐØ�K‰K˜Òr   )r   r   r   r   r   )Né    Nr   )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r   r   r(   r.   rC   rF   r   rL   Ú__static_attributes__Ú__classdictcell__)Ú__classdict__s   @r   r   r      s<   ø‡ € ñð €Eô:ò	òò&-ôPBôP÷>ð r   r   N)rX   r   r   Útwisted.namesr   r   Útwisted.pythonr   r   r   r   © r   r   Ú<module>r_      s)   ðñ
õ
 #ß %ß 'ôt�F×'Ñ'ö tr   