§
    'ê[f5	  ã                   ó~   — d Z ddlmZmZ ddlmZmZmZ ddlm	Z	 ddl
mZ  G d„ de¦  «        Z G d„ d	e¦  «        Zd
S )z
Tokenizer Interface
é    )ÚABCÚabstractmethod)ÚIteratorÚListÚTuple)Ú
overridden)Ústring_span_tokenizec                   óâ   — e Zd ZdZededee         fd„¦   «         Zdedee	e
e
f                  fd„Zdee         deee                  fd„Zdee         deee	e
e
f                           fd„Zd	S )
Ú
TokenizerIz†
    A processing interface for tokenizing a string.
    Subclasses must define ``tokenize()`` or ``tokenize_sents()`` (or both).
    ÚsÚreturnc                 óf   — t          | j        ¦  «        r|                      |g¦  «        d         S dS )zL
        Return a tokenized copy of *s*.

        :rtype: List[str]
        r   N)r   Útokenize_sents©Úselfr   s     úE/var/www/piapp/venv/lib/python3.11/site-packages/nltk/tokenize/api.pyÚtokenizezTokenizerI.tokenize   s<   € õ �dÔ)Ñ*Ô*ð 	/Ø×&Ò&¨ sÑ+Ô+¨AÔ.Ð.ð	/ð 	/ó    c                 ó   — t          ¦   «         ‚)z»
        Identify the tokens using integer offsets ``(start_i, end_i)``,
        where ``s[start_i:end_i]`` is the corresponding token.

        :rtype: Iterator[Tuple[int, int]]
        ©ÚNotImplementedErrorr   s     r   Úspan_tokenizezTokenizerI.span_tokenize$   s   € õ "Ñ#Ô#Ð#r   Ústringsc                 ó    ‡ — ˆ fd„|D ¦   «         S )z«
        Apply ``self.tokenize()`` to each element of ``strings``.  I.e.:

            return [self.tokenize(s) for s in strings]

        :rtype: List[List[str]]
        c                 ó:   •— g | ]}‰                      |¦  «        ‘ŒS © )r   )Ú.0r   r   s     €r   ú
<listcomp>z-TokenizerI.tokenize_sents.<locals>.<listcomp>5   s%   ø€ Ð2Ð2Ð2 Q�—’˜aÑ Ô Ð2Ð2Ð2r   r   )r   r   s   ` r   r   zTokenizerI.tokenize_sents-   s   ø€ ð 3Ð2Ð2Ð2¨'Ð2Ñ2Ô2Ð2r   c              #   ó\   K  — |D ]&}t          |                      |¦  «        ¦  «        V — Œ'dS )z»
        Apply ``self.span_tokenize()`` to each element of ``strings``.  I.e.:

            return [self.span_tokenize(s) for s in strings]

        :yield: List[Tuple[int, int]]
        N)Úlistr   )r   r   r   s      r   Úspan_tokenize_sentszTokenizerI.span_tokenize_sents7   sF   è è € ð ð 	.ð 	.ˆAÝ�t×)Ò)¨!Ñ,Ô,Ñ-Ô-Ð-Ð-Ð-Ð-ð	.ð 	.r   N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   Ústrr   r   r   r   Úintr   r   r!   r   r   r   r   r      sç   € € € € € ðð ð
 ð/˜#ð / $ s¤)ð /ð /ð /ñ „^ð/ð$˜sð $ x°°c¸3°h´Ô'@ð $ð $ð $ð $ð3 d¨3¤ið 3°D¸¸c¼´Oð 3ð 3ð 3ð 3ð.Ø˜C”yð.à	�$�u˜S #˜X”Ô'Ô	(ð.ð .ð .ð .ð .ð .r   r   c                   óD   — e Zd ZdZeed„ ¦   «         ¦   «         Zd„ Zd„ ZdS )ÚStringTokenizerzxA tokenizer that divides a string into substrings by splitting
    on the specified string (defined in subclasses).
    c                 ó   — t           ‚©Nr   )r   s    r   Ú_stringzStringTokenizer._stringJ   s
   € õ "Ð!r   c                 ó6   — |                      | j        ¦  «        S r+   )Úsplitr,   r   s     r   r   zStringTokenizer.tokenizeO   s   € Ø�wŠw�t”|Ñ$Ô$Ð$r   c              #   ó@   K  — t          || j        ¦  «        E d {V —† d S r+   )r	   r,   r   s     r   r   zStringTokenizer.span_tokenizeR   s0   è è € Ý'¨¨4¬<Ñ8Ô8Ð8Ð8Ð8Ð8Ð8Ð8Ð8Ð8Ð8r   N)	r"   r#   r$   r%   Úpropertyr   r,   r   r   r   r   r   r)   r)   E   sa   € € € € € ðð ð Øð"ð "ñ „^ñ „Xð"ð%ð %ð %ð9ð 9ð 9ð 9ð 9r   r)   N)r%   Úabcr   r   Útypingr   r   r   Únltk.internalsr   Únltk.tokenize.utilr	   r   r)   r   r   r   ú<module>r5      sÊ   ððð ð $Ð #Ð #Ð #Ð #Ð #Ð #Ð #Ø (Ð (Ð (Ð (Ð (Ð (Ð (Ð (Ð (Ð (à %Ð %Ð %Ð %Ð %Ð %Ø 3Ð 3Ð 3Ð 3Ð 3Ð 3ð..ð ..ð ..ð ..ð ..�ñ ..ô ..ð ..ðb9ð 9ð 9ð 9ð 9�jñ 9ô 9ð 9ð 9ð 9r   