Ë
    Ù"hI  ã                   ó@   — d Z dZdZdZ G d„ de«      Z G d„ de«      Zy)	zArtur Barseghyanz2013-2023 Artur Barseghyanz,MPL-1.1 OR GPL-2.0-only OR LGPL-2.1-or-later)ÚTrieÚTrieNodec                   ó   — e Zd ZdZdZd„ Zy)r   z&Class representing a single Trie node.©ÚchildrenÚ	exceptionÚleafÚprivatec                 ó<   — d | _         d | _        d| _        d| _        y )NFr   ©Úselfs    úE/var/www/html/sandstorm/venv/lib/python3.12/site-packages/tld/trie.pyÚ__init__zTrieNode.__init__   s   € ØˆŒØˆŒØˆŒ	Øˆó    N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__Ú	__slots__r   © r   r   r   r   
   s   „ Ù0à<€Iór   r   c                   ó2   — e Zd ZdZd„ Zd„ Zd	dededdfd„Zy)
r   zEAn adhoc Trie data structure to store tlds in reverse notation order.c                 ó0   — t        «       | _        d| _        y )Né    )r   ÚrootÚ_Trie__nodesr   s    r   r   zTrie.__init__   s   € Ü“JˆŒ	Øˆr   c                 ó   — | j                   S )N)r   r   s    r   Ú__len__zTrie.__len__   s   € Ø|‰|Ðr   Útldr	   ÚreturnNc                 óœ  — | j                   }|j                  d«      }|j                  «        |D ]u  }|j                  d«      r|dd  |_         nX|j
                  €i |_        t        «       }n'|j
                  j                  |«      }|€
t        «       }||j
                  |<   |}Œw d|_        |rd|_	        | xj                  dz  c_
        y )Nú.ú!é   T)r   ÚsplitÚreverseÚ
startswithr   r   r   Úgetr   r	   r   )r   r   r	   ÚnodeÚ	tld_splitÚpartÚchilds          r   ÚaddzTrie.add    s¿   € Øy‰yˆð —I‘I˜c“Nˆ	Ø×ÑÔØò 	ˆDà‰˜sÔ#Ø!% a b ”Ùð }‰}Ð$Ø "”Ü ›
‘àŸ™×)Ñ)¨$Ó/Ø=Ü$›JEà"'ˆDM‰M˜$Ñà‰Dð%	ð( ˆŒ	áØˆDŒLàŠ˜ÑŽr   )F)	r   r   r   r   r   r   ÚstrÚboolr+   r   r   r   r   r      s)   „ ÙOòòñ sð   Tð  °dô  r   r   N)Ú
__author__Ú__copyright__Ú__license__Ú__all__Úobjectr   r   r   r   r   ú<module>r3      s3   ðØ€
Ø,€Ø<€ð€ô	ˆvô 	ô*ˆ6õ *r   