+
    ÖÇÜh.  ã                   ó’   € ^ RI t ^ RIHt ^ RIHt ^ RIHt ^ RIHt  ! R R] P                  4      t
 ! R R	] P                  4      tR# )
é    N)Úclosing)Údata)ÚPorterStemmer)ÚSnowballStemmerc                   ó>   a € ] tR t^	t o R tR tR tR tR tRt	V t
R# )ÚSnowballTestc                ó|  € \        RR4      pVP                  R4      R8X  g   Q hVP                  R4      R8X  g   Q hVP                  R4      R8X  g   Q hVP                  R4      R	8X  g   Q hVP                  R
4      R	8X  g   Q hVP                  R4      R	8X  g   Q hVP                  R4      R	8X  g   Q hVP                  R4      R8X  g   Q hVP                  R4      R8X  g   Q h\        RR4      pVP                  R4      R8X  g   Q hVP                  R4      R	8X  g   Q hVP                  R4      R8X  g   Q h\        R4      pVP                  R4      R8X  g   Q hVP                  R4      R8X  g   Q hVP                  R4      R8X  g   Q hVP                  R4      R	8X  g   Q hVP                  R4      R8X  g   Q hR# )zl
this unit testing for test the snowball arabic light stemmer
this stemmer deals with prefixes and suffixes
ÚarabicTu&   Ø§Ù„Ù’Ø¹ÙŽØ±ÙŽØ¨Ù�Ù€Ù€Ù€Ù€Ù€Ù€ÙŠÙ‘ÙŽØ©u   Ø¹Ø±Ø¨u   Ø§Ù„Ø¹Ø±Ø¨ÙŠØ©u   Ù�Ù‚Ø§Ù„ÙˆØ§u   Ù‚Ø§Ù„u   Ø§Ù„Ø·Ø§Ù„Ø¨Ø§Øªu   Ø·Ø§Ù„Ø¨u   Ù�Ø§Ù„Ø·Ø§Ù„Ø¨Ø§Øªu   ÙˆØ§Ù„Ø·Ø§Ù„Ø¨Ø§Øªu   Ø§Ù„Ø·Ø§Ù„Ø¨ÙˆÙ†u   Ø§Ù„Ù„Ø°Ø§Ù†u   Ù…Ù†Fu   Ø§Ù„Ù„Ø°u   Ø§Ù„ÙƒÙ„Ù…Ø§Øªu   ÙƒÙ„Ù…N©r   Ústem)ÚselfÚ
ar_stemmers   & Ú:/usr/lib/python3/dist-packages/nltk/test/unit/test_stem.pyÚtest_arabicÚSnowballTest.test_arabic
   s¹  € ô % X¨tÓ4ˆ
Ø�‰ÐGÓHÈHÔTÐTÐTØ�‰Ð/Ó0°HÔ<Ð<Ð<Ø�‰˜~Ó.°(Ô:Ð:Ð:Ø�‰Ð1Ó2°jÔ@Ð@Ð@Ø�‰Ð3Ó4¸
ÔBÐBÐBØ�‰Ð3Ó4¸
ÔBÐBÐBØ�‰Ð1Ó2°jÔ@Ð@Ð@Ø�‰˜~Ó.°.Ô@Ð@Ð@Ø�‰˜vÓ&¨&Ô0Ð0Ð0ä$ X¨uÓ5ˆ
Ø�‰˜~Ó.°*Ô<Ð<Ð<Ø�‰Ð1Ó2°jÔ@Ð@Ð@Ø�‰Ð/Ó0°HÔ<Ð<Ð<ä$ XÓ.ˆ
Ø�‰ÐGÓHÈHÔTÐTÐTØ�‰Ð/Ó0°HÔ<Ð<Ð<Ø�‰˜~Ó.°(Ô:Ð:Ð:Ø�‰Ð1Ó2°jÔ@Ð@Ð@Ø�‰Ð/Ó0°HÔ<Ð<Ò<ó    c                óL   € \        R 4      pVP                  R4      R8X  g   Q hR# )Úrussianu   Ð°Ð²Ð°Ð½Ñ‚Ð½ÐµÐ½ÑŒÐºÐ°Ñ�u   Ð°Ð²Ð°Ð½Ñ‚Ð½ÐµÐ½ÑŒÐºNr   )r   Ústemmer_russians   & r   Útest_russianÚSnowballTest.test_russian'   s'   € Ü)¨)Ó4ˆØ×#Ñ#Ð$>Ó?ÐCYÔYÐYÒYr   c                óö   € \        R 4      p\        R RR7      pVP                  R4      R8X  g   Q hVP                  R4      R8X  g   Q hVP                  R4      R8X  g   Q hVP                  R4      R8X  g   Q hR# )ÚgermanT)Úignore_stopwordsu	   SchrÃ¤nkeÚschrankÚkeinenÚkeinNr   )r   Ústemmer_germanÚstemmer_german2s   &  r   Útest_germanÚSnowballTest.test_german+   s|   € Ü(¨Ó2ˆÜ)¨(ÀTÔJˆà×"Ñ" =Ó1°YÔ>Ð>Ð>Ø×#Ñ# MÓ2°iÔ?Ð?Ð?à×"Ñ" 8Ó,°Ô6Ð6Ð6Ø×#Ñ# HÓ-°Ô9Ð9Ò9r   c                ó|   € \        R 4      pVP                  R4      R8X  g   Q hVP                  R4      R8X  g   Q hR# )ÚspanishÚ	VisionadoÚvisionÚalgueÚalguNr   ©r   Ústemmers   & r   Útest_spanishÚSnowballTest.test_spanish5   s<   € Ü! )Ó,ˆà�|‰|˜KÓ(¨HÔ4Ð4Ð4ð �|‰|˜GÓ$¨Ô.Ð.Ò.r   c                óL   € \        R 4      pVP                  R4      R8X  g   Q hR# )Úenglishzy'sÚyNr   r(   s   & r   Útest_short_strings_bugÚ#SnowballTest.test_short_strings_bug=   s#   € Ü! )Ó,ˆØ�|‰|˜EÓ" cÔ)Ð)Ò)r   © N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r   r   r    r*   r/   Ú__static_attributes__Ú__classdictcell__©Ú__classdict__s   @r   r   r   	   s$   ø‡ € ò=ò:Zò:ò/÷*ð *r   r   c                   óJ   a € ] tR t^Bt o R tR tR tR tR tR t	R t
RtV tR	# )
Ú
PorterTestc                óê   € \        \        P                  ! R 4      P                  RR7      4      ;_uu_ 4       pVP	                  4       P                  4       uuRRR4       #   + '       g   i     R# ; i)z*stemmers/porter_test/porter_vocabulary.txtúutf-8©ÚencodingN)r   r   ÚfindÚopenÚreadÚ
splitlines©r   Úfps   & r   Ú_vocabularyÚPorterTest._vocabularyC   s\   € ÜÜ�IŠIÐBÓC×HÑHØ ð Ió ÷
ô 
ð Ø—7‘7“9×'Ñ'Ó)÷
÷ 
÷ 
ó 
ús   ¸A!Á!A2	c                óÄ   € \        VR 7      p\        V P                  4       V4       F5  w  rEVP                  V4      pWe8X  d   K  Q RP	                  VVVV4      4       h	  R# ))Úmodez*{} should stem to {} in {} mode but got {}N)r   ÚziprF   r   Úformat)r   Ústemmer_modeÚexpected_stemsr)   ÚwordÚ	true_stemÚour_stems   &&&    r   Ú_test_against_expected_outputÚ(PorterTest._test_against_expected_outputK   sd   € Ü \Ô2ˆÜ" 4×#3Ñ#3Ó#5°~ÖF‰OˆDØ—|‘| DÓ)ˆHàÖ%ðà;×BÑBØØØØó	óØ%ó  Gr   c                ó&  € \        \        P                  ! R4      P                  RR7      4      ;_uu_ 4       pV P	                  \
        P                  VP                  4       P                  4       4       RRR4       R#   + '       g   i     R# ; i)aJ  Tests all words from the test vocabulary provided by M Porter

The sample vocabulary and output were sourced from
https://tartarus.org/martin/PorterStemmer/voc.txt and
https://tartarus.org/martin/PorterStemmer/output.txt
and are linked to from the Porter Stemmer algorithm's homepage
at https://tartarus.org/martin/PorterStemmer/
z-stemmers/porter_test/porter_martin_output.txtr=   r>   N)	r   r   r@   rA   rQ   r   ÚMARTIN_EXTENSIONSrB   rC   rD   s   & r   Útest_vocabulary_martin_modeÚ&PorterTest.test_vocabulary_martin_modeX   st   € ô Ü�IŠIÐEÓF×KÑKØ ð Ló ÷
ô 
ð Ø×.Ñ.Ü×/Ñ/°·±³×1EÑ1EÓ1Gô÷
÷ 
÷ 
ò 
úó   ¸=A?Á?B	c                ó&  € \        \        P                  ! R 4      P                  RR7      4      ;_uu_ 4       pV P	                  \
        P                  VP                  4       P                  4       4       RRR4       R#   + '       g   i     R# ; i)z+stemmers/porter_test/porter_nltk_output.txtr=   r>   N)	r   r   r@   rA   rQ   r   ÚNLTK_EXTENSIONSrB   rC   rD   s   & r   Útest_vocabulary_nltk_modeÚ$PorterTest.test_vocabulary_nltk_modej   sr   € ÜÜ�IŠIÐCÓD×IÑIØ ð Jó ÷
ô 
ð Ø×.Ñ.Ü×-Ñ-¨r¯w©w«y×/CÑ/CÓ/Eô÷
÷ 
÷ 
ò 
úrW   c                óä  € \        \        P                  ! R 4      P                  RR7      4      ;_uu_ 4       pV P	                  \
        P                  VP                  4       P                  4       4       RRR4       V P	                  \
        P                  \        P                  ! R 4      P                  RR7      P                  4       P                  4       4       R#   + '       g   i     Lr; i)z/stemmers/porter_test/porter_original_output.txtr=   r>   N)	r   r   r@   rA   rQ   r   ÚORIGINAL_ALGORITHMrB   rC   rD   s   & r   Útest_vocabulary_original_modeÚ(PorterTest.test_vocabulary_original_modet   s¯   € ô Ü�IŠIÐGÓH×MÑMØ ð Nó ÷
ô 
ð Ø×.Ñ.Ü×0Ñ0°"·'±'³)×2FÑ2FÓ2Hô÷
ð 	×*Ñ*Ü×,Ñ,Ü�IŠIÐGÓHß‰T˜7ˆTÓ#ß‰T‹Vß‰Z‹\ö	
÷
÷ 
ús   ¸=CÃC/	c                óF   € \        4       P                  R4      R8X  g   Q hR# )ztTest for bug https://github.com/nltk/nltk/issues/1581

Ensures that 'oed' can be stemmed without throwing an error.
ÚoedÚoN©r   r   )r   s   &r   Útest_oed_bugÚPorterTest.test_oed_bugŒ   s   € ô
 ‹×#Ñ# EÓ*¨cÔ1Ð1Ò1r   c                ó  € \        4       pVP                  R4      R8X  g   Q hVP                  R4      R8X  g   Q hVP                  RRR7      R8X  g   Q hVP                  R4      R8X  g   Q hVP                  RRR7      R8X  g   Q hR	# )
z}Test for improvement on https://github.com/nltk/nltk/issues/2507

Ensures that stems are lowercased when `to_lowercase=True`
ÚOnÚonÚIÚiF)Úto_lowercaseÚGithubÚgithubNrc   )r   Úporters   & r   Útest_lowercase_optionÚ PorterTest.test_lowercase_option“   s†   € ô
 “ˆØ�{‰{˜4Ó  DÔ(Ð(Ð(Ø�{‰{˜3Ó 3Ô&Ð&Ð&Ø�{‰{˜3¨Uˆ{Ó3°sÔ:Ð:Ð:Ø�{‰{˜8Ó$¨Ô0Ð0Ð0Ø�{‰{˜8°%ˆ{Ó8¸HÔDÐDÒDr   r1   N)r2   r3   r4   r5   rF   rQ   rU   rZ   r^   rd   ro   r6   r7   r8   s   @r   r;   r;   B   s/   ø‡ € ò*òòò$ò
ò02÷
Eð 
Er   r;   )ÚunittestÚ
contextlibr   Únltkr   Únltk.stem.porterr   Únltk.stem.snowballr   ÚTestCaser   r;   r1   r   r   Ú<module>rw      s=   ðÛ Ý å Ý *Ý .ô6*�8×$Ñ$ô 6*ôr[E�×"Ñ"ö [Er   