+
    +O|j   ã                   ó4   € R t ^ RIHt ^ RIt ! R R]4      tR# )zDNS name dictionary)ÚMutableMappingNc                   ón   a a€ ] tR t^$t oRt. ROtV 3R ltR tR tR t	R t
R tR tR	 tR
 tRtVtV ;t# )ÚNameDictz«A dictionary whose keys are dns.name.Name objects.

In addition to being like a regular Python dictionary, this
dictionary can also get the deepest match for a given key.
c                ó’   <€ \         SV `  4        \        4       V n        ^ V n        ^ V n        V P                  \        V/ VB 4       R# )é    N)ÚsuperÚ__init__ÚdictÚ_NameDict__storeÚ	max_depthÚmax_depth_itemsÚupdate)ÚselfÚargsÚkwargsÚ	__class__s   &*,€ÚEC:\Users\alokc\chatbot\backend\venv\Lib\site-packages\dns/namedict.pyr   ÚNameDict.__init__-   s<   ø€ Ü‰ÑÔÜ“vˆŒàˆŒà ˆÔØ�‰”D˜$Ð) &Ñ)Ö*ó    c                óÔ   € \        V4      V P                  8X  d   V P                  ^,           V n        R# \        V4      V P                  8”  d   \        V4      V n        ^V n        R# R# ©é   N)Úlenr   r   ©r   Úkeys   &&r   Ú__update_max_depthÚNameDict.__update_max_depth6   sM   € Üˆs‹8�t—~‘~Ô%Ø#'×#7Ñ#7¸!Õ#;ˆDÖ Ü�‹X˜Ÿ™Ô&Ü  ›XˆDŒNØ#$ˆDÖ ñ 'r   c                ó(   € V P                   V,          # ©N©r
   r   s   &&r   Ú__getitem__ÚNameDict.__getitem__=   s   € Ø�|‰|˜CÕ Ð r   c                ó®   € \        V\        P                  P                  4      '       g   \	        R 4      hW P
                  V&   V P                  V4       R# )zNameDict key must be a nameN)Ú
isinstanceÚdnsÚnameÚNameÚ
ValueErrorr
   Ú_NameDict__update_max_depth)r   r   Úvalues   &&&r   Ú__setitem__ÚNameDict.__setitem__@   s=   € Ü˜#œsŸx™xŸ}™}×-Ò-ÜÐ:Ó;Ð;Ø!�‰�SÑØ×Ñ Ö$r   c                ó  € V P                   P                  V4       \        V4      V P                  8X  d   V P                  ^,
          V n        V P                  ^ 8X  d.   ^ V n        V P                    F  pV P                  V4       K  	  R# R# r   )r
   Úpopr   r   r   r(   )r   r   Úks   && r   Ú__delitem__ÚNameDict.__delitem__F   sm   € Ø�‰×Ñ˜ÔÜˆs‹8�t—~‘~Ô%Ø#'×#7Ñ#7¸!Õ#;ˆDÔ Ø×Ñ 1Ô$ØˆDŒNØ—\”\�Ø×'Ñ'¨Ö*ó "ñ %r   c                ó,   € \        V P                  4      # r   )Úiterr
   ©r   s   &r   Ú__iter__ÚNameDict.__iter__O   s   € Ü�D—L‘LÓ!Ð!r   c                ó,   € \        V P                  4      # r   )r   r
   r3   s   &r   Ú__len__ÚNameDict.__len__R   s   € Ü�4—<‘<Ó Ð r   c                ó   € WP                   9   # r   r   r   s   &&r   Úhas_keyÚNameDict.has_keyU   s   € Ø—l‘lÑ"Ð"r   c                óX  € \        V4      pW P                  8”  d   V P                  p\        V) ^ 4       F6  p\        P                  P                  WR 4      pW@9   g   K,  W@V,          3u # 	  V \        P                  P                  ,          p\        P                  P                  V3# )as  Find the deepest match to *name* in the dictionary.

The deepest match is the longest name in the dictionary which is
a superdomain of *name*.  Note that *superdomain* includes matching
*name* itself.

*name*, a ``dns.name.Name``, the name to find.

Returns a ``(key, value)`` where *key* is the deepest
``dns.name.Name``, and *value* is the value associated with *key*.
N)r   r   Úranger$   r%   r&   Úempty)r   r%   ÚdepthÚiÚnÚvs   &&    r   Úget_deepest_matchÚNameDict.get_deepest_matchX   s�   € ô �D“	ˆØ—>‘>Ô!Ø—N‘NˆEÜ˜�v˜qÖ!ˆAÜ—‘—‘˜d 2˜hÓ'ˆAØŽyØ �7�|Ò#ñ "ð ”—‘—‘Õ ˆÜ—‘—‘ Ð"Ð"r   )Ú__storer   r   )r   r   rE   )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__Ú	__slots__r   r(   r    r*   r/   r4   r7   r:   rC   Ú__static_attributes__Ú__classdictcell__Ú__classcell__)r   Ú__classdict__s   @@r   r   r   $   sC   ù‡ € ñò <€Iõ+ò%ò!ò%ò+ò"ò!ò#÷#ò #r   r   )rJ   Úcollections.abcr   Údns.namer$   r   © r   r   Ú<module>rS      s    ðñ8 õ +ã ôI#ˆ~ö I#r   