
    -Ph9                     R   d dl mZ d dlmZ  G d de          Z G d de          Z G d de          Z G d	 d
e          Z G d de          Z	 G d de          Z
 G d de          Z G d de          Z G d de          Z G d de          Z G d de          ZdS )   )BaseStemmer)Amongc                      e Zd ZdZh dZh dZdZdZdZd Z	d Z
d Zd	 Zd
 Zd Zd Zd Zd Zd Zd Zd Z eddd           eddd           eddd           eddd          gZ eddd           eddd           eddd           eddd           eddd           eddd           ed dd           ed!dd           ed"dd           ed#dd           ed$dd           ed%dd           ed&dd          gZ ed'dd           ed(dd           ed)dd          gZ ed*dd           ed+dd           ed,dd-           ed.dd/           ed0dd1           ed2dd3           ed4dd5           ed6dd1           ed7dd8           ed9dd:           ed;dd           ed<d=d>           ed?dd1           ed@dd>           edAd8dB           edCddB           edDdd>           edEdd:           edFdd=           edGdd3          gZ edHdd           edIdd           edJdd           edKdd           edLdd           edMdd           edNdd          gZ edOdd           edPdd           edQdd           edRdd           edSdd           edTdd           edUdd           edVdd           edWdd           edXdd           edYdd           edZdd           ed[dd           ed\dd           ed]dd           ed^dd           ed_d`d           edadbd           edcdd          gZddS )ePorterStemmerz
    This class implements the stemming algorithm defined by a snowball script.
    Generated from porter.sbl by Snowball 3.0.1 - https://snowballstem.org/
    >   aeiouy>	   Yr   r   r	   r
   r   wxr   F    c                     |                      t          j                  sdS |                     t          j                  sdS |                      t          j                  sdS dS )NFT)out_grouping_br   g_v_WXYin_grouping_bg_vselfs    ^/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/snowballstemmer/porter_stemmer.py
__r_shortvzPorterStemmer.__r_shortv   sa    ""=#899 	5!!-"344 	5""=#455 	5t    c                 "    | j         | j        k    S N)I_p1cursorr   s    r   __r_R1zPorterStemmer.__r_R1       yDK''r   c                 "    | j         | j        k    S r   )I_p2r   r   s    r   __r_R2zPorterStemmer.__r_R2"   r    r   c                 4   | j         | _        |                     t          j                  }|dk    rdS | j         | _        |dk    r|                     d          sdS n:|dk    r|                     d          sdS n|dk    r|                                 sdS dS )	Nr   Fr   ss   r	      T)r   ketfind_among_br   a_0bra
slice_from	slice_delr   	among_vars     r   __r_Step_1azPorterStemmer.__r_Step_1a%   s    ;%%m&788	>>5;>>??5)) u!^^??4(( u!^^>>## utr   c                 6   | j         | _        |                     t          j                  }|dk    rdS | j         | _        |dk    r/|                                 sdS |                     d          sdS n| j        | j         z
  }| 	                    t          j
                  sdS | xj         dz  c_         | j        |z
  | _         |                                 sdS | j        | j         z
  }|                     t          j                  }| j        |z
  | _         |dk    r0| j         }|                     | j         | j         d           || _         n|dk    rQ| j         | _        | j         | j        k    rdS | xj         dz  c_         | j         | _        |                                 sdS nu| j         | j        k    rdS | j        | j         z
  }|                                 sdS | j        |z
  | _         | j         }|                     | j         | j         d           || _         dS )Nr   Fr   eer   r&   T)r   r(   r)   r   a_2r+   _PorterStemmer__r_R1r,   limitgo_out_grouping_br   r-   a_1insertlimit_backwardr   _PorterStemmer__r_shortv)r   r/   v_1v_2cv_3s         r   __r_Step_1bzPorterStemmer.__r_Step_1b7   s   ;%%m&788	>>5;>>;;== u??5)) u *t{*C))-*;<< uKK1KK*s*DK>>## u*t{*C))-*;<<I*s*DKA~~KDKd;;;a;;$"555 5q ;~~'' ! 5! ;$)++ 5j4;.(( ! 5"j3.KDKd;;;tr   c                    | j         | _        	 | j        | j         z
  }	 |                     d          st	                      t                      # t          $ r Y nw xY w| j        |z
  | _         |                     d          sdS n# t
          $ r Y nw xY w| j         | _        |                     t          j	                  sdS | xj         dz  c_         | 
                    d          sdS dS )Nr   r   Fr   r	   T)r   r(   r5   eq_s_blab1lab0r+   r6   r   r   r,   )r   r;   s     r   __r_Step_1czPorterStemmer.__r_Step_1cg   s    ;
	*t{*C{{4(( !&&Lff*s*DK;;t$$ uTT;%%m&788 	5qt$$ 	5ts.   B 1A 
AB A'B 
BBc                    | j         | _        |                     t          j                  }|dk    rdS | j         | _        |                                 sdS |dk    r|                     d          sdS nd|dk    r|                     d          sdS nE|dk    r|                     d          sdS n&|d	k    r|                     d
          sdS n|dk    r|                     d          sdS n|dk    r|                     d          sdS n|dk    r|                     d          sdS n|dk    r|                     d          sdS n|dk    r|                     d          sdS nq|dk    r|                     d          sdS nS|dk    r|                     d          sdS n5|dk    r|                     d          sdS n|                     d          sdS dS )Nr   Fr   tionr&   encer'   ance   able   ent   r      ize   ate	   al
   ful   ous   ivebleT)r   r(   r)   r   a_3r+   r4   r,   r.   s     r   
__r_Step_2zPorterStemmer.__r_Step_2|   sA   ;%%m&788	>>5;{{}} 	5>>??7++ u!^^??7++ u!^^??7++ u!^^??7++ u!^^??6** u!^^??4(( u!^^??6** u!^^??6** u!^^??5)) u"__??6** u"__??6** u"__??6** u ??6** utr   c                 T   | j         | _        |                     t          j                  }|dk    rdS | j         | _        |                                 sdS |dk    r|                     d          sdS n4|dk    r|                     d          sdS n|                                 sdS dS )Nr   Fr   rS   r&   icT)	r   r(   r)   r   a_4r+   r4   r,   r-   r.   s     r   
__r_Step_3zPorterStemmer.__r_Step_3   s    ;%%m&788	>>5;{{}} 	5>>??5)) u!^^??5)) u >>## utr   c                 (   | j         | _        |                     t          j                  }|dk    rdS | j         | _        |                                 sdS |dk    r|                                 sdS n	 | j        | j         z
  }	 | 	                    d          st                      t                      # t          $ r Y nw xY w| j        |z
  | _         | 	                    d          sdS n# t          $ r Y nw xY w|                                 sdS dS )Nr   Fr   stT)r   r(   r)   r   a_5r+   _PorterStemmer__r_R2r-   r5   rA   rB   rC   )r   r/   r;   s      r   
__r_Step_4zPorterStemmer.__r_Step_4   s&   ;%%m&788	>>5;{{}} 	5>>>>## u
j4;.";;t,, %"ff&&L!!!TT!"j3.{{4(( ! 5!>>## uts0   4C, 1B5 5
C?C, C'C, ,
C98C9c                    | j         | _        |                     d          sdS | j         | _        	 	 |                                 st                      t                      # t
          $ r Y nw xY w|                                 sdS | j        | j         z
  }	 | 	                                st                      dS # t          $ r Y nw xY w| j        |z
  | _         n# t          $ r Y nw xY w|                                 sdS dS )Nr   FT)r   r(   rA   r+   re   rB   rC   r4   r5   r:   lab2r-   )r   r<   s     r   __r_Step_5azPorterStemmer.__r_Step_5a   s   ;{{4   	5;	{{}} !&&Lff;;== u*t{*C(( !&&Lu*s*DKKTT~~ 	5tsM   0A" "
A/,C .A//C C "B< <
C	C C		C 
C)(C)c                     | j         | _        |                     d          sdS | j         | _        |                                 sdS |                     d          sdS |                                 sdS dS )NlFT)r   r(   rA   r+   re   r-   r   s    r   __r_Step_5bzPorterStemmer.__r_Step_5b   sw    ;{{4   	5;{{}} 	5{{4   	5~~ 	5tr   c                    d| _         | j        }	 | j        | _        |                     d          st	                      | j        | _        |                     d          sdS d| _         n# t          $ r Y nw xY w|| _        | j        }	 	 | j        }	 	 	 | j        }	 |                     t          j	                  st                      | j        | _        |                     d          st                      | j        | _        || _        t                      # t          $ r Y nw xY w|| _        | j        | j        k    rt                      | xj        dz  c_        # t          $ r Y nw xY w|                     d          sdS d| _         # t          $ r Y nw xY w|| _        n# t          $ r Y nw xY w|| _        | j        | _        | j        | _        | j        }	 |                     t          j	                  st%                      | xj        dz  c_        |                     t          j	                  st%                      | xj        dz  c_        | j        | _        |                     t          j	                  st%                      | xj        dz  c_        |                     t          j	                  st%                      | xj        dz  c_        | j        | _        n# t$          $ r Y nw xY w|| _        | j        | _        | j        | _        | j        | j        z
  }|                                  | j        |z
  | _        | j        | j        z
  }|                                  | j        |z
  | _        | j        | j        z
  }|                                  | j        |z
  | _        | j        | j        z
  }	|                                  | j        |	z
  | _        | j        | j        z
  }
|                                  | j        |
z
  | _        | j        | j        z
  }|                                  | j        |z
  | _        | j        | j        z
  }|                                  | j        |z
  | _        | j        | j        z
  }|                                  | j        |z
  | _        | j        | _        | j        }	 | j         st;                      	 | j        }	 	 	 | j        }	 | j        | _        |                     d          st=                      | j        | _        || _        t?                      # t<          $ r Y nw xY w|| _        | j        | j        k    rtA                      | xj        dz  c_        # t>          $ r Y nw xY w|                     d          sdS # t@          $ r Y nw xY w|| _        n# t:          $ r Y nw xY w|| _        dS )NFr   r   Tr   )!	B_Y_foundr   r+   eq_srC   r(   r,   in_groupingr   r   lab4lab3r5   rh   rB   r   r"   go_out_groupinglab5go_in_groupingr9   _PorterStemmer__r_Step_1a_PorterStemmer__r_Step_1b_PorterStemmer__r_Step_1c_PorterStemmer__r_Step_2_PorterStemmer__r_Step_3_PorterStemmer__r_Step_4_PorterStemmer__r_Step_5a_PorterStemmer__r_Step_5blab6lab9lab8lab7)r   r;   r<   r>   v_4v_5v_6v_7v_8v_9v_10v_11v_12v_13v_14v_15v_16s                    r   _stemzPorterStemmer._stem  s   k	{DH99T?? ff{DH??4(( u!DNNTTk	k"&-"&+C	.'+'7'78I'J'J !1*.&&L+/;'+yy !1*.&&L+/;.1&*ff#'----*-DK#{dj88&*ff KK1,KK-   %%%%??400 %$u%)DN!!!TT!!TTJ	J	k	''(9:: ffKK1KK&&}'899 ffKK1KKDI''(9:: ffKK1KK&&}'899 ffKK1KKDIITT"kjj4;&j3&j4;&j3&j4;&j3&j4;&j3&zDK'j4'zDK'j4'zDK'j4'zDK'j4'){	> ff{"&-#';D.+/;'+yy !1*.&&L+/;.2&*ff#'----*.DK#{dj88&*ff KK1,KK-  %%%%??400 %$u!!!TT!"TTts  AA* "A* *
A76A7	F' E A=D 
D&#E %D&&9E 
E,)F +E,,F F F' 
FF' F
F' '
F43F4DK+ +
K87K8>V< U< &AT6 6
U U< U9U< <
V	V$ V		V$ #V< $
V1.V< 0V11
V< <
W	W	rb   r'   iesr&   ssesr   r%    bbddffggblmmnnpprratttizedeedingancienciablirI   elirM   allirR   ouslirV   entlirK   alitibiliti   ivitirX   tionalationalrT   rP   alismationizationrN   izeratorivenessfulnessousnessicateativealizeicitiicalrU   nessr^   rH   rG   rJ   iblerQ   rY   rO   itirS   ismionerrW   antrL   ment   ement   ouN)__name__
__module____qualname____doc__r   r   rn   r"   r   r:   r4   re   rv   rw   rx   ry   rz   r{   r|   r}   r   r   r*   r7   r3   r[   r_   rd    r   r   r   r      s        
 /
.
.CDDDGIDD  ( ( (( ( (  $. . .`  */ / /b  (  :  4  { { {| 	dBfagq!eQ	C 	c2qeQeQeQeQeQeQeQeQeQeQeQeQC" 	eRfafb!C 	gr1gr1gr1fb!gr1hBhAhAiR  hBiQj"a  hAhAj"a  gr1gr1j"b!!j"b!!j"b!!)C0 	hAhAhAhAgr1fb!gr1C 	eRgr1gr1gr1gr1fb!fb!fb!fb!eRfb!fb!eRfb!fb!fb!gr1hAeR'CCCr   r   c                       e Zd ZdS )rC   Nr   r   r   r   r   r   rC   rC               r   rC   c                       e Zd ZdS )rB   Nr   r   r   r   rB   rB     r   r   rB   c                       e Zd ZdS )rh   Nr   r   r   r   rh   rh     r   r   rh   c                       e Zd ZdS )rr   Nr   r   r   r   rr   rr     r   r   rr   c                       e Zd ZdS )rq   Nr   r   r   r   rq   rq     r   r   rq   c                       e Zd ZdS )rt   Nr   r   r   r   rt   rt     r   r   rt   c                       e Zd ZdS )r~   Nr   r   r   r   r~   r~     r   r   r~   c                       e Zd ZdS )r   Nr   r   r   r   r   r     r   r   r   c                       e Zd ZdS )r   Nr   r   r   r   r   r     r   r   r   c                       e Zd ZdS )r   Nr   r   r   r   r   r     r   r   r   N)basestemmerr   amongr   r   BaseExceptionrC   rB   rh   rr   rq   rt   r~   r   r   r   r   r   r   <module>r      s|   % $ $ $ $ $      M M M M MK M M M`      =         =         =         =         =         =         =         =         =         =     r   