o
    ÿM iž9  ã                   @   sÌ   d dl mZ d dlmZ G dd„ deƒZG dd„ deƒZG dd„ deƒZG d	d
„ d
eƒZG dd„ deƒZ	G dd„ deƒZ
G dd„ deƒZG dd„ deƒZG dd„ deƒZG dd„ deƒZG dd„ deƒZdS )é   )ÚBaseStemmer)ÚAmongc                   @   s8  e Zd ZdZh d£Zh d£ZdZdZdZdd„ Z	dd	„ Z
d
d„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zd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d0dd$ƒed1dd"ƒed2dd$ƒgZed3dd"ƒed4dd$ƒed5dd"ƒgZed6dd ƒed7dd"ƒed8dd9ƒed:dd;ƒed<dd=ƒed>dd?ƒed@ddAƒedBdd=ƒedCddDƒedEddFƒedGdd$ƒedHdIdJƒedKdd=ƒedLddJƒedMdDdNƒedOddNƒedPddJƒedQddFƒedRddIƒedSdd?ƒgZedTdd"ƒedUdd ƒedVdd$ƒedWdd"ƒedXdd"ƒedYdd ƒedZd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dadd$ƒedbdd$ƒedcdd$ƒedddd$ƒededd$ƒedfdd"ƒedgdd$ƒedhdd$ƒedidd$ƒedjdd$ƒedkdld$ƒedmdnd$ƒedodd$ƒgZdpS )qÚ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                 C   s4   |   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©Úself© r   úR/home/ubuntu/.local/lib/python3.10/site-packages/snowballstemmer/porter_stemmer.pyÚ
__r_shortv   s   zPorterStemmer.__r_shortvc                 C   ó   | j | jkS ©N)ÚI_p1Úcursorr   r   r   r   Ú__r_R1   ó   zPorterStemmer.__r_R1c                 C   r   r   )ÚI_p2r   r   r   r   r   Ú__r_R2"   r   zPorterStemmer.__r_R2c                 C   st   | j | _|  tj¡}|dkrdS | j | _|dkr!|  d¡sdS dS |dkr.|  d¡s,dS dS |dkr8|  ¡ s8dS dS )	Nr   Fr   Ússé   r   é   T)r   ÚketÚfind_among_br   Úa_0ÚbraÚ
slice_fromÚ	slice_del©r   Ú	among_varr   r   r   Ú__r_Step_1a%   s"   
ù
üzPorterStemmer.__r_Step_1ac                 C   sz  | j | _|  tj¡}|dkrdS | j | _|dkr'|  ¡ sdS |  d¡s%dS dS | j| j  }|  	tj
¡s5dS |  j d8  _ | j| | _ |  ¡ sHdS | j| j  }|  tj¡}| j| | _ |dkro| j }|  | j | j d¡ || _ dS |dkr’| j | _| j | jkrdS |  j d8  _ | j | _|  ¡ sdS dS | j | jkršdS | j| j  }|  ¡ s¦dS | j| | _ | 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_3r   r   r   Ú__r_Step_1b7   sZ   
$Þí÷zPorterStemmer.__r_Step_1bc                 C   sª   | j | _z+| j| j  }z|  d¡stƒ ‚tƒ ‚ ty   Y nw | j| | _ |  d¡s.W dS W n	 ty8   Y nw | j | _|  tj	¡sEdS |  j d8  _ |  
d¡sSdS dS )Nr
   r   Fr   r   T)r   r#   r/   Úeq_s_bÚlab1Úlab0r&   r0   r   r   r'   )r   r5   r   r   r   Ú__r_Step_1cg   s(   

ÿ
zPorterStemmer.__r_Step_1cc                 C   s~  | j | _|  tj¡}|dkrdS | j | _|  ¡ sdS |dkr'|  d¡s%dS dS |dkr4|  d¡s2dS dS |dkrA|  d¡s?dS dS |d	krN|  d
¡sLdS dS |dkr[|  d¡sYdS dS |dkrh|  d¡sfdS dS |dkru|  d¡ssdS dS |dkr‚|  d¡s€dS dS |dkr|  d¡sdS dS |dkrœ|  d¡sšdS dS |dkr©|  d¡s§dS dS |dkr¶|  d¡s´dS dS |  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&   r.   r'   r)   r   r   r   Ú
__r_Step_2|   st   
%Ü
"ß
â
å
è
ë
î
ñ
ô

÷
ú

þzPorterStemmer.__r_Step_2c                 C   sx   | j | _|  tj¡}|dkrdS | j | _|  ¡ sdS |dkr'|  d¡s%dS dS |dkr4|  d¡s2dS dS |  ¡ s:dS dS )Nr   Fr   rK   r!   ÚicT)	r   r#   r$   r   Úa_4r&   r.   r'   r(   r)   r   r   r   Ú
__r_Step_3­   s$   
ù
ýzPorterStemmer.__r_Step_3c                 C   sÆ   | j | _|  tj¡}|dkrdS | j | _|  ¡ sdS |dkr&|  ¡ s$dS dS z+| j| j  }z|  	d¡s6t
ƒ ‚tƒ ‚ t
yA   Y nw | j| | _ |  	d¡sPW dS W n	 tyZ   Y nw |  ¡ sadS dS )Nr   Fr   ÚsÚtT)r   r#   r$   r   Úa_5r&   Ú_PorterStemmer__r_R2r(   r/   r:   r;   r<   )r   r*   r5   r   r   r   Ú
__r_Step_4Á   s4   ò

ÿzPorterStemmer.__r_Step_4c                 C   s¾   | j | _|  d¡sdS | j | _z>z
|  ¡ stƒ ‚tƒ ‚ ty#   Y nw |  ¡ s+W dS | j| j  }z|  	¡ s9t
ƒ ‚W W dS  t
yE   Y nw | j| | _ W n	 tyV   Y nw |  ¡ s]dS dS )Nr   FT)r   r#   r:   r&   r[   r;   r<   r.   r/   r4   Úlab2r(   )r   r6   r   r   r   Ú__r_Step_5aÞ   s.   
zPorterStemmer.__r_Step_5ac                 C   sH   | j | _|  d¡sdS | j | _|  ¡ sdS |  d¡sdS |  ¡ s"dS dS )NÚlFT)r   r#   r:   r&   r[   r(   r   r   r   r   Ú__r_Step_5bø   s   

zPorterStemmer.__r_Step_5bc                 C   s>  d| _ | j}z| j| _|  d¡stƒ ‚| j| _|  d¡sW dS d| _ W n	 ty,   Y nw || _| j}zm	 | j}zYzA	 | j}z|  tj	¡sHt
ƒ ‚| j| _|  d¡sTt
ƒ ‚| j| _|| _tƒ ‚ t
yf   Y nw || _| j| jkrstƒ ‚|  jd7  _q; tyƒ   Y nw |  d¡sW W dS d| _ W q4 tyš   Y nw || _	 W n	 ty©   Y nw || _| j| _| j| _| j}zJ|  tj	¡sÂtƒ ‚|  jd7  _|  tj	¡sÒtƒ ‚|  jd7  _| j| _|  tj	¡sætƒ ‚|  jd7  _|  tj	¡sötƒ ‚|  jd7  _| j| _W n
 ty   Y nw || _| j| _| j| _| j| j }|  ¡  | j| | _| j| j }|  ¡  | j| | _| j| j }|  ¡  | j| | _| j| j }	|  ¡  | j|	 | _| j| j }
|  ¡  | j|
 | _| j| j }|  ¡  | j| | _| j| j }|  ¡  | j| | _| j| j }|  ¡  | j| | _| j| _| j}zp| j s§tƒ ‚	 | j}zTz<	 | j}z| j| _|  d¡s¿tƒ ‚| j| _|| _tƒ ‚ tyÒ   Y nw || _| j| jkràt ƒ ‚|  jd7  _q® tyò   Y nw |  d¡sýW W dS W q§ t y	   Y nw || _	 W n
 ty   Y nw || _dS )NFr
   r   Tr   )!Ú	B_Y_foundr   r&   Úeq_sr<   r#   r'   Úin_groupingr   r   Úlab4Úlab3r/   r]   r;   r   r   Úgo_out_groupingÚlab5Úgo_in_groupingr3   Ú_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   r5   r6   r8   Ú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_16r   r   r   Ú_stem  sú   



ñ
ózPorterStemmer._stemrX   éÿÿÿÿr"   Úiesr!   Ússesr   r    Ú ÚbbÚddÚffÚggÚblÚmmÚnnÚppÚrrÚatÚttÚizÚedÚeedÚingÚanciÚenciÚablirA   ÚelirE   ÚallirJ   ÚouslirN   ÚentlirC   ÚalitiÚbilitié   ÚivitirP   ÚtionalÚationalrL   rH   ÚalismÚationÚizationrF   ÚizerÚatorÚivenessÚfulnessÚousnessÚicateÚativeÚalizeÚicitiÚicalrM   ÚnessrU   r@   r?   rB   ÚiblerI   rQ   rG   ÚitirK   ÚismÚionÚerrO   ÚantrD   Úmenté   Úementé   ÚouN)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   ra   r   r   r4   r.   r[   ri   rj   rk   rl   rm   rn   ro   rp   r‚   r   r%   r1   r-   rS   rV   rZ   r   r   r   r   r      s¶    	01
~


ü












ó


ý



















ì






ù


















ír   c                   @   ó   e Zd ZdS )r<   N©r¼   r½   r¾   r   r   r   r   r<   Ø  ó    r<   c                   @   rÀ   )r;   NrÁ   r   r   r   r   r;   Û  rÂ   r;   c                   @   rÀ   )r]   NrÁ   r   r   r   r   r]   Þ  rÂ   r]   c                   @   rÀ   )re   NrÁ   r   r   r   r   re   á  rÂ   re   c                   @   rÀ   )rd   NrÁ   r   r   r   r   rd   ä  rÂ   rd   c                   @   rÀ   )rg   NrÁ   r   r   r   r   rg   ç  rÂ   rg   c                   @   rÀ   )rq   NrÁ   r   r   r   r   rq   ê  rÂ   rq   c                   @   rÀ   )rt   NrÁ   r   r   r   r   rt   í  rÂ   rt   c                   @   rÀ   )rs   NrÁ   r   r   r   r   rs   ð  rÂ   rs   c                   @   rÀ   )rr   NrÁ   r   r   r   r   rr   ó  rÂ   rr   N)Úbasestemmerr   Úamongr   r   ÚBaseExceptionr<   r;   r]   re   rd   rg   rq   rt   rs   rr   r   r   r   r   Ú<module>   s       S