U
    YSh\                     @   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dS )   )BaseStemmer)Amongc                  @   s.  e Zd ZdZdddddddd	d
ddddddh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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d0dd)ed1dd)ed2d%d)ed3d%d)ed4d-d)ed5d%d)ed6d%d)ed7d%d)ed8d9d)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dCdDd)edEd%d)edFdGd)edHd%d)edId%d)edJdKd)edLd%d)edMdNd)edOd%d)edPd%d)edQd%d)edRd%d)edSd%d)edTd%d)edUdVd)edWd%d)edXdYd)edZd%d)ed[d%d)ed\d]d)ed^d%d)g'Z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didjd)edkd%d)edld%d)edmd%d)ednd%d)edod%d)edpd%d)edqd%d)edrdDd)edsdtd.edud%d)edvd%d)edwd%d)edxdKd)edyd%d)edzdNd)ed{d|d)ed}d%d)ed~d%d)edd%d)edd%d)edd%d)edd%d)edd%d)edd%d)edd%d)edd%d)edd]d)edd]d)edd%d)eddd)edd%d)edd%d,edd%d-eddd)edd%d)edd%d)edd%d)edd%d)edd%d)eddd)eddd)edd%d)eddd)eddd)eddd)edd%d)edd%d)edd%d)edd%d)edd%d)edd%d,edd%d)edd%d)edd%d)edd%d)edd%d)edd%d)edd%d)edd%d)edd%d)edd%d)edd%d)edd%d)eddd.edd%d)edd%d)edd%d)eddd)eddd)eddd)eddd)eddd)edd%d)edd%d)eddd)edd%d)edd%d)edd%d-eddd,edd%d)edd%d)edd%d*edd%d)edd%d)edd%d)edd%d)edd%d,edd%d)edd%d)edd%d)edd%d)edd%d)edd%d)eddd)eddd)edd%d)eddd)eddd.edd%d)edd%d)eddd)edd%d)edd%d)edd%d)eddd)eddd)edd%d)edd%d)edd%d)edd%d)edd%d)edd%d)edd%d)edd%d)eddd)eddd)edd%d-eddd,edd%d)eddd)edd%d,edd%d)edd%d)edd%d)edd%d,edd%d)edd%d)edd%d)eddd)ed dd)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)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)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/d0d)ed1d%d)ed2d%d)ed3d4d)ed5d4d)ed6d7d)ed8d%d)ed9d%d)ed:d%d)ed;d%d)ed<d=d)ed>d=d)ed?d@d)edAdBd)edCd%d)edDd%d)edEd%d)edFd%d)edGd%d)edHd%d)edId%d)edd%d)edJdKd)edLdMd)edNdOd)gZedPd%d)edQd%d)edRd%d)edSd%d)edbd%d)edTd%d)edUd%d)edVd%d)edWd%d)edXd9d)edYd9d)edZd%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dad%d)edbdGd)edcdGd)edddGd)eded%d)edfd%d)edgd%d)edhd%d)edid%d)edjd%d)edkd%d)edld%d)edmdnd)edod%d)edpd%d)edqd%d)edd%d)edrd%d)edsd%d)edtd%d)edud%d)edvd%d)edwd%d)edxd%d)edydzd)ed{dzd)ed|dzd)ed}dzd)ed~dzd)eddzd)eddzd)eddzd)eddzd)eddzd)eddzd)eddzd)eddzd)eddd)eddd)edd%d)edd%d)edd%d)edd%d)edd%d)edd%d)edd%d)edd%d)edd%d)eddd)eddd)eddd)eddd)eddd)eddd)eddd)eddd)eddd)edd%d)eddd)eddd)eddd)eddd)eddd)eddd)eddd)eddd)eddd)eddd)eddd)eddd)eddd)eddd)eddd)eddd)eddd)eddd)eddd)eddd)eddd)eddd)eddd)edd%d)eddd)eddd)eddd)eddd)eddd)eddd)eddd)eddd)eddd)edd%d)edd%d)edd%d)edd%d)edd%d)edd%d)edd%d)edd%d)edd%d*edd%d)edd%d)edd%d)edϐdd)edd%d)edd%d)edd%d)edӐdd)edd%d)eddd)edd%d)edd%d)edd%d)edڐdd)edܐdd)edݐdd)edސdd)edߐdd)eddd)eddd)eddd)eddd)edd%d)edd%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dd)eddd)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dd)eddd)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)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)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 dMd)ed!dMd)ed"dMd)ed#dMd)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/d0d)ed1d%d)edd%d)ed2d%d)ed!d%d)ed3d%d)ed4d5d)ed6d5d)ed7d%d)ed8d%d)ed9d%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dAd%d)edBd%d)edCdDd)edEd%d)edFd%d)edGd%d)edHd%d)edId%d)edJd%d)edKd%d)edLd%d)edMdNd)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dWdXd)edYd%d)edZ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dHd%d)edbd%d)edcd%d)eddded)edfd%d)edgd%d)edhd%d)edid%d)edjd%d)edkd%d)edld%d)edmd%d)ednd%d)edod%d)edpd%d)edqd%d)edrd%d)edd%d)edsd%d)edJd%d)gZedd%d)edd%d)edd%d)edtd%d)edd%d)edd%d)edud%d)edvd(d)edwd(d)edxd(d)ed>d%d)edyd%d)edzd%d)ed{d%d*edgd%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d|S (}  CatalanStemmerz
    This class implements the stemming algorithm defined by a snowball script.
    Generated from catalan.sbl by Snowball 3.0.1 - https://snowballstem.org/
    aeiou   á   à   é   è   í   ï   ó   ò   ú   ü    c                 C   s   | j | _| j | _| j}z| tjs*t |  jd7  _| tjsJt |  jd7  _| j| _| tjsrt |  jd7  _| tjst |  jd7  _| j| _W n tk
r   Y nX || _dS )Nr   T)	limitI_p1I_p2cursorZgo_out_groupingr   g_vlab0Zgo_in_grouping)selfv_1 r   R/root/rtd-docs/venv/lib/python3.8/site-packages/snowballstemmer/catalan_stemmer.pyZ__r_mark_regions   s,     zCatalanStemmer.__r_mark_regionsc                 C   s  | j }z| j | _| tj}| j | _|dkr>| dsW dS n|dkrX| dsW dS n|dkrr| dsW dS nn|dkr| d	sW dS nT|d
kr| dsW dS n:|dkr| dsW dS n | j | jkrt |  j d7  _ W q W n tk
r   Y nX || _ qq dS )Nr   r   F   r      r      r      r	      .T)	r   braZ
find_amongr   a_0ket
slice_fromr   r   )r   r   	among_varr   r   r   Z__r_cleaning*   s@    





 zCatalanStemmer.__r_cleaningc                 C   s   | j | jkS N)r   r   r   r   r   r   Z__r_R1M   s    zCatalanStemmer.__r_R1c                 C   s   | j | jkS r*   )r   r   r+   r   r   r   Z__r_R2P   s    zCatalanStemmer.__r_R2c                 C   s@   | j | _| tjdkrdS | j | _|  s0dS |  s<dS dS )Nr   FT)r   r'   find_among_br   a_1r%   _CatalanStemmer__r_R1	slice_delr+   r   r   r   Z__r_attached_pronounS   s    z#CatalanStemmer.__r_attached_pronounc                 C   s   | j | _| tj}|dkr dS | j | _|dkrJ|  s<dS |  sdS n|dkrl|  s^dS |  sdS nb|dkr|  sdS | 	dsdS n>|dkr|  sdS | 	dsdS n|  sdS | 	d	sdS d
S )Nr   Fr   r   r    logr!   iccT)
r   r'   r,   r   a_2r%   r.   r/   _CatalanStemmer__r_R2r(   r   r)   r   r   r   Z__r_standard_suffix_   s<    


z"CatalanStemmer.__r_standard_suffixc                 C   sf   | j | _| tj}|dkr dS | j | _|dkrJ|  s<dS |  sbdS n|  sVdS |  sbdS dS )Nr   Fr   T)	r   r'   r,   r   a_3r%   r.   r/   r4   r5   r   r   r   Z__r_verb_suffix   s    zCatalanStemmer.__r_verb_suffixc                 C   sh   | j | _| tj}|dkr dS | j | _|dkrJ|  s<dS |  sddS n|  sVdS | dsddS dS )Nr   Fr   r1   T)	r   r'   r,   r   a_4r%   r.   r/   r(   r5   r   r   r   Z__r_residual_suffix   s    
z"CatalanStemmer.__r_residual_suffixc                 C   s  |    | j| _| j| _| j| j }|   | j| | _| j| j }zrzX| j| j }z|  sdt t W n tk
r   Y nX | j| | _|  st	 W n tk
r   Y nX W n t	k
r   Y nX | j| | _| j| j }| 
  | j| | _| j| _| j}|   || _dS )NT)_CatalanStemmer__r_mark_regionsr   Zlimit_backwardr   #_CatalanStemmer__r_attached_pronoun"_CatalanStemmer__r_standard_suffixlab2lab1_CatalanStemmer__r_verb_suffixr   "_CatalanStemmer__r_residual_suffix_CatalanStemmer__r_cleaning)r   Zv_2Zv_3Zv_4Zv_5Zv_6r   r   r   _stem   s@    
 
 
 zCatalanStemmer._stem       ·r#   r   r      ìr    r!   r"   Zlaz-laZselalemez-mesez-tehiz'hi   Zliz-li
   z'lz'mz-mz'nz-nZhoz'ho   loZselo   z'sZlasZselas   Zlesz-les   z'lsz-lsz'nsz-nsZensZlosZselos   Znosz-nos!   Zvosusz-us$   z'tZicau   lógicaZencaadaZanciaZenciau   ènciau   íciaZlogiaZiniau   íinia	   Zeriau   àriau   atòriaZallaZellau   ívolaZimau   íssimau	   quíssima   ZanaZinaZeraZsferaZoraZdoraZadora   ZaduraZesaZosaZassaZessaZissaetaZitaZotaZistaZialistaZionistaZivaZativa'   u   nçau   logíar1   u   ístic+   encescZudZatgeZbleZable1   ZibleZismeZialisme4   ZionismeZivismeZaireZicteZisteZiciu   íciZlogiZariZtorialilallZellu   ívolZisamZissemu   ìssemu   íssemu   íssimu   quíssimI   Zamenu   ìssinarZificarM   ZegarZejarZitarZitzarZferorZdorT   ZdurZdorasZicsu   lógicsX   ZudsZncesZadesZanciesZenciesu   ènciesu   íciesZlogiesZiniesu   íniesZeriesu   àriesu   atòriesZblesZablesg   ZiblesZimesu   íssimesj   u
   quíssimesk   ZformesZismesZialismesn   ZinesZeresZoresZdoresr   Zidoress   ZduresZesesZosesZassesZictesZitesZotesZistesZialistes|   ZionistesZiquesu	   lógiques   ZivesZatives   u   logíesu
   allengüesZicisu   ícisZlogisZarisZtorisZlsZals   ZellsZimsu   íssims   u	   quíssims   ZionsZcions   Zacions   ZesosZososZassosZissosZersZorsZdors   Zadors   ZidorsZatsZitats   Zbilitats   ZivitatsZ	ativitats   u   ïtatsZetsZantsZentsZments   Zaments   ZotsZutsZiusZtrius   Zatiusu   èsu   ésu   ísu   dís   u   ósZitatZbilitat   ZivitatZativitat   u   ïtatetantZentZient   ZmentZament   Zisament   ZotZisseuu   ìsseuu   ísseuZtriuu   íssiuZatiuu   ió   u   ció   u   ació   ZabaZescaZiscau   ïscaZidaZudau   ïdaiaZariaZiriaZaraZieraZirau   ïraZavaZixaZitzau   íau   aríau   eríau   iríau   ïaZiscu   ïscadZedidZiereZdre   ZaseZieseZasteiiiniZesquiZeixiZitziamZemZarem*   Ziremu   àremu   íremu   àssemu   éssemZiguemu   ïguemZavemu   àvemu   ávemu   irìemu   íemu   aríem7   u   iríemZassimZessimZissimu   àssimu   èssimu   éssimu   ïmZanZabanB   ZarianZaranZieraniranu   íanu   aríanH   u   eríanu   iríanenZienL   ZarienZirienZarenZerenZirenu   àrenu   ïrenZasenZiesenZassenZessenZissenu   éssenu   ïssenZesquenZisquenu   ïsquenZavenZixenZeixen`   u   ïxenu   ïeninZinind   sinisinf   ZassinZessinZissinu   ïssinZesquinZeixinZaronZieronu   aránu   eránu   iránu   iïnZadoZidoZandoZiendoioZixoZeixoy   u   ïxoZitzoZtzar}   ZerZeixerZirZadorasZabas   ZadasZidasZarasZierasu   íasu   arías   u   eríasu   iríasZidsesZidesZudesu   ïdesZatgesZiesaries   ZiriesZaresZiresZadoresu   ïresZasesZiesesZessesZissesu   ïssesZquesZesques   u   ïsquesZavesZixesZeixesu   ïxesu   ïesZabaisZaraisZieraisu   íaisu   aríais   u   eríaisu   iríaisZaseisZieseisZasteisZisteisZinisZsisZisis   ZassisZessisZissisu   ïssisZesquisZeixisZitzisu   áisu   aréisu   eréisu   iréisZamsZadosZidosZamosu   ábamosu   áramosu   iéramosu   íamosu   aríamos   u   eríamosu   iríamosZaremosZeremosZiremosu   ásemosu   iésemosZimosZassZerass   ZessZitsu   àsu   aràs   u   iràsu   arásu   erásu   irásu   arés   u   iïsatitintutu   ïtauZerau   ZieuZineuZareuZireuu   àreuu   íreuZasseuZesseuZeresseu   u   àsseuu   ésseuZigueuu   ïgueuu   àveuu   áveuZitzeuu   ìeuu   irìeu   u   íeuu   aríeu   u   iríeuZassiuZissiuu   àssiuu   èssiuu   éssiuu   ïuZixZeixi	  u   ïxZitzu   iàu   aràu   iràu   itzàu   aráu   eráu   iráu   irèu   aréu   eréu   iréu   iïu   ïnsisosu   ïseuiuZiquN)__name__
__module____qualname____doc__r   r   r   r8   r?   r.   r4   r9   r:   r=   r>   r@   r   r&   r-   r3   r6   r7   r   r   r   r   r      s  "## 



















































+












































































































































  M





    !










r   c                   @   s   e Zd ZdS )r   Nr   r   r   r   r   r   r   r     s    r   c                   @   s   e Zd ZdS )r<   Nr   r   r   r   r   r<     s    r<   c                   @   s   e Zd ZdS )r;   Nr   r   r   r   r   r;     s    r;   N)	Zbasestemmerr   Zamongr   r   BaseExceptionr   r<   r;   r   r   r   r   <module>   s         