§
    'ê[f£  ã                   ó,   — d dl mZ  G d„ d¦  «        ZdS )é    )Údefaultdictc                   ó<   — e Zd ZdZdd„Zd„ Zdd„Zdd„Zd	„ Zd
„ Z	dS )Ú
MinimalSeta¬  
    Find contexts where more than one possible target value can
    appear.  E.g. if targets are word-initial letters, and contexts
    are the remainders of words, then we would like to find cases like
    "fat" vs "cat", and "training" vs "draining".  If targets are
    parts-of-speech and contexts are words, then we would like to find
    cases like wind (noun) 'air in rapid motion', vs wind (verb)
    'coil, wrap'.
    Nc                 óÚ   — t          ¦   «         | _        t          ¦   «         | _        t          t           ¦  «        | _        i | _        |r |D ]\  }}}|                      |||¦  «         ŒdS dS )z¯
        Create a new minimal set.

        :param parameters: The (context, target, display) tuples for the item
        :type parameters: list(tuple(str, str, str))
        N)ÚsetÚ_targetsÚ	_contextsr   Ú_seenÚ	_displaysÚadd)ÚselfÚ
parametersÚcontextÚtargetÚdisplays        úH/var/www/piapp/venv/lib/python3.11/site-packages/nltk/misc/minimalset.pyÚ__init__zMinimalSet.__init__   s{   € õ ™œˆŒÝ™œˆŒÝ ¥Ñ%Ô%ˆŒ
ØˆŒàð 	3Ø,6ð 3ð 3Ñ(�˜ Ø—’˜ &¨'Ñ2Ô2Ð2Ð2ð	3ð 	3ð3ð 3ó    c                 óÆ   — | j         |                              |¦  «         | j                             |¦  «         | j                             |¦  «         || j        ||f<   dS )a€  
        Add a new item to the minimal set, having the specified
        context, target, and display form.

        :param context: The context in which the item of interest appears
        :type context: str
        :param target: The item of interest
        :type target: str
        :param display: The information to be reported for each item
        :type display: str
        N)r
   r   r	   r   r   )r   r   r   r   s       r   r   zMinimalSet.add&   sf   € ð 	Œ
�7Ô×Ò Ñ'Ô'Ð'ð 	Œ×Ò˜7Ñ#Ô#Ð#ØŒ×Ò˜&Ñ!Ô!Ð!ð -4ˆŒ˜ Ð(Ñ)Ð)Ð)r   é   c                 ó.   ‡ ‡— ˆˆ fd„‰ j         D ¦   «         S )zÆ
        Determine which contexts occurred with enough distinct targets.

        :param minimum: the minimum number of distinct target forms
        :type minimum: int
        :rtype: list
        c                 óP   •— g | ]"}t          ‰j        |         ¦  «        ‰k    ¯ |‘Œ#S © )Úlenr
   )Ú.0ÚcÚminimumr   s     €€r   ú
<listcomp>z'MinimalSet.contexts.<locals>.<listcomp>D   s1   ø€ ÐKÐKÐK�a­S°´¸A´Ñ-?Ô-?À7Ò-JÐ-J�Ð-JÐ-JÐ-Jr   )r	   )r   r   s   ``r   ÚcontextszMinimalSet.contexts<   s&   øø€ ð LÐKÐKÐKÐK˜4œ>ÐKÑKÔKÐKr   Ú c                 ó:   — ||f| j         v r| j         ||f         S |S ©N)r   )r   r   r   Údefaults       r   r   zMinimalSet.displayF   s+   € Ø�VÐ ¤Ð.Ð.Ø”> 7¨FÐ"3Ô4Ð4àˆNr   c                 óx   — g }| j         D ]/}|                      ||¦  «        }|r|                     |¦  «         Œ0|S r"   )r   r   Úappend)r   r   Úresultr   Úxs        r   Údisplay_allzMinimalSet.display_allL   sK   € ØˆØ”mð 	!ð 	!ˆFØ—’˜W fÑ-Ô-ˆAØð !Ø—’˜aÑ Ô Ð øØˆr   c                 ó   — | j         S r"   )r   )r   s    r   ÚtargetszMinimalSet.targetsT   s
   € ØŒ}Ðr   r"   )r   )r    )
Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r   r   r(   r*   r   r   r   r   r      s‹   € € € € € ðð ð3ð 3ð 3ð 3ð 4ð 4ð 4ð,Lð Lð Lð Lðð ð ð ðð ð ðð ð ð ð r   r   N)Úcollectionsr   r   r   r   r   ú<module>r0      sU   ðð $Ð #Ð #Ð #Ð #Ð #ðJð Jð Jð Jð Jñ Jô Jð Jð Jð Jr   