
    MiW                         S SK Jr  S SKJr   " S S\5      r " S S\5      r " S S\5      r " S	 S
\5      r " S S\5      r	 " S S\5      r
 " S S\5      rg)   )BaseStemmer)Amongc                      \ rS rSrSr\" SSS5      \" SSS5      \" SSS5      /r\" SSS5      \" S	S
S5      \" SSS5      /r\" SSS5      \" SSS5      \" SSS5      \" SSS5      \" SSS5      \" SSS5      /r\" SSS5      \" SS
S5      \" SS
S5      \" SS
S5      \" SS
S5      \" SS
S5      \" SS
S5      \" SS
S5      \" SS
S5      \" SS
S5      \" SS
S5      \" SS
S5      \" S S
S5      /r	\" S!SS5      \" S"S
S5      \" S#SS5      \" S$SS5      \" S%SS5      \" S&SS5      /r
\" S'SS5      \" S(SS5      \" S)SS*5      \" S+SS,5      \" S-SS.5      \" S/S0S05      \" S1SS25      \" S3SS45      \" S5SS65      \" S7SS85      \" S9SS:5      \" S;SS25      \" S<SS.5      \" S=SS>5      \" S?SS5      \" S@S6S5      \" SASS25      \" SBSS5      \" SCSDSE5      \" SFSSE5      \" SGSS5      \" SHSS>5      \" SISS45      \" SJSS85      /r\" SKSS05      \" SLSSE5      \" SMSS5      \" SNSS05      \" SOSS05      \" S?SS5      \" S@S:S5      \" SPSS:5      \" SQSS:5      /	r\" SRSS5      \" SSSS5      \" STSS5      \" SUSS5      \" SVSS5      \" SWSS5      \" SXSS5      \" SYSS5      \" SZSS5      \" S[SS5      \" S\SS5      \" S]SS5      \" S^SS5      \" S_SS5      \" S`SS5      \" SaSS5      \" SbS,S5      \" ScSdS5      /r\" SeSS5      \" SfSS5      /r\" SgSS5      \" ShSS5      \" SiSS5      \" SjSS5      \" SkSS5      \" SlSS5      \" SmSS5      \" SnSS5      /r\" SoSS5      \" SpSS5      \" SqSS5      \" SrSS5      \" SsSS5      \" StSS45      \" SuSS5      \" SvSS5      \" SwSSE5      \" SxSS05      \" SySS5      \" SzSS85      \" S{SS>5      \" S|SS5      \" S}SS5      \" S~SS5      \" SSS:5      \" SSS25      /r/ SQr/ SQr/ SQrSrS
rS
rS rS rS rS rS rS rS rS rS rS r S r!S r"S r#S r$S r%S r&Sr'g)EnglishStemmer   z
This class implements the stemming algorithm defined by a snowball script.
Generated by Snowball 2.2.0 - https://snowballstem.org/
arsencommungener'r   z's'    z'sied   s   iesssesssus bbddffggblmmnnpprratttizedeedingedlyeedlyinglyancienciogi   li   bli   abli   alli   fulli	   lessli   ousli
   entli   alitibilitiiviti   tionalationalalismationization      izeratorivenessfulnessousnessicateativealizeicitiicalfulnessicanceenceableibleateiveizeitialismionerousantentmentement   elsucceedproceedexceedcanninginningearringherringoutingandesatlasbiascosmosdyingearlygentlyhoweidlylyingnewsonlysinglyskiesskisskytyingugly)rF   A   rf   r   )r   rF   r      r   )7      r   Fc                    SU l         U R                  n U R                  U l        U R                  S5      (       d
  [	        5       eU R                  U l        U R                  5       (       d  g Xl        U R                  n U R                  U l        U R                  S5      (       d
  [        5       eU R                  U l        U R                  S5      (       d  gSU l         X l        U R                  n  U R                  n   U R                  n U R                  [        R                  SS5      (       d
  [        5       eU R                  U l        U R                  S5      (       d
  [        5       eU R                  U l        XPl        [        5       e! [         a     GN2f = f! [         a     Nf = f! [         a     Of = fXPl        U R                  U R                  :  a
  [        5       eU =R                  S-  sl        GM  ! [         a     Of = fU R                  S5      (       d  gSU l         GMC  ! [         a     Of = fX@l        O! [          a     Of = fX0l        g)	NFr   yYTa   y   r   )	B_Y_foundcursorbraeq_slab0ket	slice_dellab1
slice_fromin_groupingr   g_vlab5lab4limitlab3lab2)selfv_1v_2v_3v_4v_5s         y/var/www/eduai.edurigo.com/storigo/production/storigo_env/lib/python3.13/site-packages/snowballstemmer/english_stemmer.py__r_preludeEnglishStemmer.__r_prelude   s   kk	{{DH99T??f{{DH>>## $ kk	{{DH99T??f{{DH??4((!DNkk	kk"&""&++C	.'+'7'78J8JBPS'T'T*.&L+/;;'+yy*.&L+/;;.1&*f; T T& $(--*-K#{{djj8&*f KK1,K #   %%??400$%)DN!T!!Ts   AF AF$ F$ 4I H BF4 
F! F!$
F10F14
G>H  GAH 
HH7 HH7 -H7 4I 7
II I	I 
IIc                    U R                   U l        U R                   U l        U R                  n  U R                  n U R	                  [
        R                  5      S:X  a
  [        5       e[        5       e! [         a     Of = fX l        U R                  [
        R                  SS5      (       d
  [        5       eU =R                  S-  sl        U R                  [
        R                  SS5      (       d
  [        5       eU =R                  S-  sl        O! [         a     Of = fU R                  U l        U R                  [
        R                  SS5      (       d
  [        5       eU =R                  S-  sl        U R                  [
        R                  SS5      (       d
  [        5       eU =R                  S-  sl        U R                  U l        O! [         a     Of = fXl        g)Nr   r   r   r   T)r   I_p1I_p2r   
find_amongr   a_0r   r   go_out_groupingr   r   go_in_groupingr   r   r   s      r   __r_mark_regionsEnglishStemmer.__r_mark_regions   sh   JJ	JJ	kk	kk"~'9'9:a?"f&L!T!!++N,>,>CHH&Lq **>+=+=r3GG&Lq DI''(:(:BDDfKK1K&&~'9'92sCCfKK1KDITsN   D 7A5 5
B?D BBD G 
D# G "D##B/G 
G G c                     U R                   U R                  -
  n U R                  [        R                  SS5      (       d
  [        5       eU R                  [        R                  SS5      (       d
  [        5       eU R                  [        R                  SS5      (       d
  [        5       e[        5       e! [
         a     Of = fU R                   U-
  U l        U R                  [        R                  SS5      (       d  gU R                  [        R                  SS5      (       d  gU R                  U R                  :  a  g g! [         a     gf = f)NY   r   r   FT)
r   r   out_grouping_br   g_v_WXYr   in_grouping_br   r   limit_backwardr   r   s     r   
__r_shortvEnglishStemmer.__r_shortv   s   	**t{{*C**>+A+A2sKK&L)).*<*<b#FF&L**>+=+=r3GG&Lf**s*DK&&~'9'92sCC%%n&8&8"cBB{{T000 1  T 	s;   E BB6 6
C E C=E &E (E 
EEc                 :    U R                   U R                  ::  d  ggNFT)r   r   r   s    r   __r_R1EnglishStemmer.__r_R1      yyDKK'    c                 :    U R                   U R                  ::  d  ggr   )r   r   r   s    r   __r_R2EnglishStemmer.__r_R2  r   r   c                    U R                   U R                  -
  n U R                  U l        U R                  [        R
                  5      S:X  a  U R                   U-
  U l        [        5       eU R                  U l        U R                  5       (       d  g U R                  U l        U R                  [        R                  5      nUS:X  a  gU R                  U l        US:X  a  U R                  S5      (       d  g gUS:X  aj   U R                   U R                  -
  n U R                  S-
  nX@R                  :  a
  [        5       eX@l        U R                  S5      (       d  g[        5       eUS:X  a  U R                  U R                  ::  a  gU =R                  S-  sl        U R                  [        R                  S	S
5      (       d  gU =R                  S-  sl        U R                  5       (       d  gg! [         a     GNmf = f! [         a     Of = fU R                   U-
  U l        U R                  S5      (       d  g g! [         a     gf = f)Nr   Fr   r   r   iier   r   r   T)r   r   r   find_among_br   a_1r   r   r   a_2r   r   r   r   go_out_grouping_br   )r   r   	among_varr   cs        r   __r_Step_1aEnglishStemmer.__r_Step_1a   s   jj4;;&		{{DH  !3!349"jj3.f{{DH>>## $ ;;%%n&8&89	>;;>??5)) *8 5 !^jj4;;."aA..."f"#K??400$&L !^{{d111KK1K)).*<*<b#FFKK1K>>##G T( !T!"jj3.u--  .    sI   A8G5 I AH "
H 5
HH
HI H-I 
IIc                 0   U R                   U l        U R                  [        R                  5      nUS:X  a  gU R                   U l        US:X  a/  U R                  5       (       d  gU R                  S5      (       d  g g	U R                  U R                   -
  nU R                  [        R                  SS5      (       d  gU =R                   S-  sl         U R                  U-
  U l         U R                  5       (       d  gU R                  U R                   -
  nU R                  [        R                  5      nUS:X  a  gU R                  U-
  U l         US:X  a:  U R                   nU R                  U R                   U R                   S5        X@l         g	US:X  aj  U R                   U l        U R                   U R                  ::  a  gU =R                   S-  sl         U R                   U l        U R                  5       (       d  g g	U R                   U R                  :w  a  gU R                  U R                   -
  nU R!                  5       (       d  gU R                  U-
  U l         U R                   nU R                  U R                   U R                   S5        X@l         g	)
Nr   Fr   eer   r   rg   r   T)r   r   r   r   a_4r   _EnglishStemmer__r_R1r   r   r   r   r   a_3insertr   r   _EnglishStemmer__r_shortv)r   r   r   r   r   r   s         r   __r_Step_1bEnglishStemmer.__r_Step_1bP  s   ;;%%n&8&89	>;;>;;==??5)) *N I **t{{*C)).*<*<b#FFKK1K**s*DK>>##**t{{*C)).*<*<=IA~**s*DKA~KKDKKd;( ' a;;;;$"5"55 q ;;~~''  (  ;;$))+ jj4;;.(( "jj3.KKDKKd;r   c                 R   U R                   U l         U R                  U R                   -
  n U R                  S5      (       d
  [	        5       e[        5       e! [         a     Of = fU R                  U-
  U l         U R                  S5      (       d  gO! [
         a     Of = fU R                   U l        U R                  [        R                  SS5      (       d  g U R                   U R                  :  a
  [        5       eg! [         a     Of = fU R                  S5      (       d  gg)Nr   r   Fr   r   r   T)r   r   r   eq_s_br   r   r   r   r   r   r   r   r   r   s     r   __r_Step_1cEnglishStemmer.__r_Step_1c  s    ;;
	**t{{*C{{4((&Lf**s*DK;;t$$ %T;;"">#5#5r3??	{{T000fTt$$s@   B *A 
A$!B #A$$-B 
B B $D 
DDc                    U R                   U l        U R                  [        R                  5      nUS:X  a  gU R                   U l        U R                  5       (       d  gUS:X  a  U R                  S5      (       d  g g"US:X  a  U R                  S5      (       d  g g"US:X  a  U R                  S5      (       d  g g"US	:X  a  U R                  S
5      (       d  g g"US:X  a  U R                  S5      (       d  g g"US:X  a  U R                  S5      (       d  g g"US:X  a  U R                  S5      (       d  g g"US:X  a  U R                  S5      (       d  g g"US:X  a  U R                  S5      (       d  g g"US:X  a  U R                  S5      (       d  g g"US:X  a  U R                  S5      (       d  g g"US:X  a  U R                  S5      (       d  g g"US:X  a0  U R                  S5      (       d  gU R                  S5      (       d  g g"US:X  a  U R                  S5      (       d  g g"U R                  [        R                  S S!5      (       d  gU R                  5       (       d  gg")#Nr   Fr   tionr   rV   r   rU   r2   rW   r<   rc   rG   r[   r   rY   r4   r]   r6   rR   r:   ra   r@   rZ   r0   bler,   rh   ogr8   lessc   t   T)r   r   r   r   a_5r   r   r   r   r   
g_valid_LIr   r   r   s     r   
__r_Step_2EnglishStemmer.__r_Step_2  s   ;;%%n&8&89	>;;{{}}>??7++ ,b _ !^??7++ ,\ Y !^??7++ ,V S !^??7++ ,P M !^??6** +J G !^??6** +D A !^??6** +> ; !^??5)) *8 5 !^??6** +2 / "_??6** +, ) "_??6** +& # "_??6** +   "_;;t$$??5)) *  "_??7++ ,  %%n&?&?SII>>##r   c                 L   U R                   U l        U R                  [        R                  5      nUS:X  a  gU R                   U l        U R                  5       (       d  gUS:X  a  U R                  S5      (       d  g gUS:X  a  U R                  S5      (       d  g gUS:X  a  U R                  S5      (       d  g gUS	:X  a  U R                  S
5      (       d  g gUS:X  a  U R                  5       (       d  g gU R                  5       (       d  gU R                  5       (       d  gg)Nr   Fr   r   r   rY   r   r]   r2   rT   r<   T)
r   r   r   r   a_6r   r   r   r   _EnglishStemmer__r_R2r   s     r   
__r_Step_3EnglishStemmer.__r_Step_3  s   ;;%%n&8&89	>;;{{}}>??7++ ,* ' !^??6** +$ ! !^??5)) *  !^??5)) *  !^>>## $  ;;==>>##r   c                 J   U R                   U l        U R                  [        R                  5      nUS:X  a  gU R                   U l        U R                  5       (       d  gUS:X  a  U R                  5       (       d  g g U R                  U R                   -
  n U R                  S5      (       d
  [        5       e[        5       e! [         a     Of = fU R                  U-
  U l         U R                  S5      (       d  gO! [         a     Of = fU R                  5       (       d  gg)Nr   Fr   r   tT)r   r   r   r   a_7r   r   r   r   r   r   r   )r   r   r   s      r   
__r_Step_4EnglishStemmer.__r_Step_4  s    ;;%%n&8&89	>;;{{}}>>>## $$ 
jj4;;.";;t,,"f&L!T!"jj3.{{4((  )>>##s0   >C> *C 
CC> C-C> >
D
Dc                 0   U R                   U l        U R                  [        R                  5      nUS:X  a  gU R                   U l        US:X  aD   U R                  U R                   -
  n U R                  5       (       d
  [        5       e[        5       eU R                  5       (       d  gU R                  S5      (       d  gU R                  5       (       d  gg! [         a     Of = fU R                  U-
  U l         U R                  5       (       d  gU R                  U R                   -
  n U R                  5       (       d
  [        5       eg! [         a     Of = fU R                  U-
  U l         O! [         a     Of = fU R                  5       (       d  g g)Nr   Fr   rh   T)r   r   r   r   a_8r   r   r   r   r   r   r   r   r   r   )r   r   r   r   s       r   
__r_Step_5EnglishStemmer.__r_Step_5  sH   ;;%%n&8&89	>;;>jj4;;.";;=="f&L" ;;==;;t$$>>##/ !T!"jj3.{{}} jj4;;."??,,"f !T!"jj3.>>## $ sT   E0 *)C 
C$!E0 #C$$,E0 E0 +E 
EE0 EE0 0
E=<E=c                     U R                   U l        U R                  [        R                  5      S:X  a  gU R                   U l        U R                   U R                  :  a  gg)Nr   FT)r   r   r   r   a_9r   r   r   s    r   __r_exception2EnglishStemmer.__r_exception2:  sL    ;;^//0A5;;;;,,,r   c                 p   U R                   U l        U R                  [        R                  5      nUS:X  a  gU R                   U l        U R                   U R                  :  a  gUS:X  a  U R                  S5      (       d  g gUS:X  a  U R                  S5      (       d  g gUS:X  a  U R                  S5      (       d  g gUS	:X  a  U R                  S
5      (       d  g gUS:X  a  U R                  S5      (       d  g gUS:X  a  U R                  S5      (       d  g gUS:X  a  U R                  S5      (       d  g gUS:X  a  U R                  S5      (       d  g gUS:X  a  U R                  S5      (       d  g gUS:X  a  U R                  S5      (       d  g gUS:X  a  U R                  S5      (       d  gg)Nr   Fr   skir   r   r   dier2   lier<   tierG   idlr   gentlr4   uglir6   earlir:   onlir@   singlT)r   r   r   r   a_10r   r   r   r   s     r   __r_exception1EnglishStemmer.__r_exception1C  s   ;;OON$7$78	>;;;;#>??6** +@ = !^??6** +: 7 !^??6** +4 1 !^??6** +. + !^??6** +( % !^??6** +"  !^??8,, -  !^??7++ ,  !^??8,, -  "_??7++ ,
  "_??8,,r   c                 (   U R                   (       d  g U R                  n   U R                  n U R                  U l        U R                  S5      (       d
  [	        5       eU R                  U l        X l        [        5       e! [         a     Of = fX l        U R                  U R                  :  a
  [        5       eU =R                  S-  sl        M  ! [         a     Of = fU R                  S5      (       d  gM  ! [         a     Of = fXl         g)NFTr   r   r   )
r   r   r   r   r   r   r   r   r   r   r   s      r   __r_postludeEnglishStemmer.__r_postluden  s    ~~++C""kk*'+{{DH#'99T??&*f'+{{DH*-K"&&L#)T)&);;$**4"&&Lq(  !T!t,, KsH   C AB 
BC BAC 
C C< C  C< <
D	D	c                     U R                   n U R                  5       (       d
  [        5       e[        5       e! [         a     Of = fXl          U R                   n U R                   S-   nX0R                  :  a
  [        5       eX0l         [        5       e! [
         a     Of = fX l         [        5       e! [         a     Of = fXl         U R                  5         U R                  5         U R                   U l	        U R                  U l         U R                  U R                   -
  nU R                  5         U R                  U-
  U l          U R                  U R                   -
  n U R                  5       (       d
  [        5       e[        5       e! [         a     Of = fU R                  U-
  U l         U R                  U R                   -
  nU R                  5         U R                  U-
  U l         U R                  U R                   -
  nU R                  5         U R                  U-
  U l         U R                  U R                   -
  nU R!                  5         U R                  U-
  U l         U R                  U R                   -
  n	U R#                  5         U R                  U	-
  U l         U R                  U R                   -
  n
U R%                  5         U R                  U
-
  U l         U R                  U R                   -
  nU R'                  5         U R                  U-
  U l         O! [         a     Of = fU R                  U l         U R                   nU R)                  5         Xl         g! [         a     gf = f)Nr   T)r   _EnglishStemmer__r_exception1r   r   r   r   r   _EnglishStemmer__r_prelude_EnglishStemmer__r_mark_regionsr   _EnglishStemmer__r_Step_1a_EnglishStemmer__r_exception2r   r   _EnglishStemmer__r_Step_1b_EnglishStemmer__r_Step_1c_EnglishStemmer__r_Step_2_EnglishStemmer__r_Step_3_EnglishStemmer__r_Step_4_EnglishStemmer__r_Step_5_EnglishStemmer__r_postlude)r   r   r   r   r   v_6v_7v_8v_9v_10v_11v_12v_13s                r   _stemEnglishStemmer._stem  s   ;	++C**,,&LfKkk"aA::~"f"#K&L!T!!fK!!#"&++D**DK**t{{*C**s*DKjj4;;."..00"f&L!T!"jj3.jj4;;.  ""jj3.jj4;;.  ""jj3.jj4;;.!"jj3.zzDKK/!"jj4/zzDKK/!"jj4/zzDKK/!"jj4/--DK;;DK T 	s   M$ )8 
AM$ A	M$ B4 8B 
B!B4  B!!B4 4
C>M$  CBM$ 
L  $)F 
FL  FFL  M$  
L-*M$ ,L--6M$ $
M10M1)r   r   r   r   r   r   r   N)(__name__
__module____qualname____firstlineno____doc__r   r   r   r   r   r   r   r   r   r   r   r  r   r   r   r   r   r   r  r  r   r   r   r  r  r  r  r  r  r  r  r
  r  r  __static_attributes__ r   r   r   r      s
    	hBiR hBC 	dBfaeRC 	fb!dBfagq!eQeQC 	c2qeQeQeQeQeQeQeQeQeQeQeQeQC" 	eRfafb!gr1h1hAC 	gr1gr1fb"eRfagq!gq!h1iBh2h1hAiR hBiQj"a hAhAj"a gr1gr1j"b!j"a j"b!1C8 	hAhAhAhAgr1iQj!Qfb!gr1
C 	eRgr1gr1gr1gr1fb!fb!fb!fb!eRfb!fb!eRfb!fb!fb!gr1hA%C, 	dBdBC 	j"b!j"b!iR j"b!iR j"b!j"b!iR 	C 	hBhBgr2iR hAhAiQgr2gr1hAgr2gr2iR hAgr1fb"hAgr1%D* C!GJIDD8t@,

.`0d2:x@:$L)V<=r   r   c                       \ rS rSrSrg)r   i  r&  Nr   r!  r"  r#  r%  r&  r   r   r   r         4r   r   c                       \ rS rSrSrg)r   i  r&  Nr(  r&  r   r   r   r     r)  r   r   c                       \ rS rSrSrg)r   i  r&  Nr(  r&  r   r   r   r     r)  r   r   c                       \ rS rSrSrg)r   i  r&  Nr(  r&  r   r   r   r     r)  r   r   c                       \ rS rSrSrg)r   i  r&  Nr(  r&  r   r   r   r     r)  r   r   c                       \ rS rSrSrg)r   i  r&  Nr(  r&  r   r   r   r     r)  r   r   N)basestemmerr   amongr   r   BaseExceptionr   r   r   r   r   r   r&  r   r   <module>r2     sX    % B[ BJ  =   =   =   =   =   = r   