U
    YShT                     @   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dS )   )BaseStemmer)Amongc                c   @   s  e Zd ZdZdddddddd	d
ddh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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%ed/d%d%ed0d%d%ed1d%d%ed2d+d%ed3d%d%ed4d5d%ed6d%d%ed7d%d%ed8d9d%ed:d%d%gZed;d%d&ed<d%d&ed=d%d5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+gZedFd%d%edGd%d%edHd%d%edId%d'gZedJd%d'edKd%d'edLd%d'gZedFd%d'edMd%d'edId%d'gZedNd%d'edOd%d(edPd%d+edQd%d(edRd%d'edSd%d'edTd%dUedVd%d'edWd%d)edXd%dYedJd%d'edKd%d'edLd%d(edZd%d5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%dUedgd%d(edhd%d'edid%d(edjd%d+edkd%d(edld%d'edmd%d'ednd%dUedod%d'edpd%d)edqd%dY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%dUg0Zed~d%d'edd%d'edd%d'edd%d'edd%d'ed=d%d'edd%d'edd%d'edd%d'edd%d'edd%d'edd%d'gZ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dGd%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ddd(eddd(eddd(eddd(eddd(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d;d%d(ed<d%d(ed@d%d(edAd%d(edBd%d(edd%d(eddd(eddd(eddd(eddd(eddd(eddd(eddd(eddd(eddd(edd%d'eddd(eddd(edd%d(edd%d(edd%d(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ddd(eddd(eddd(edd%d(edd%d(edd%d(eddd(eddd(eddd(eddd(eddd(eddd(eddd(edd%d'eddd(eddd(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(g`Zedd%d'edd%d(edd%d'edHd%d'edd%d'edd%d(ed	d%d'ed
d%d'gZdS )SpanishStemmerz
    This class implements the stemming algorithm defined by a snowball script.
    Generated from spanish.sbl by Snowball 3.0.1 - https://snowballstem.org/
    aeiou   á   é   í   ó   ú   ü    c                 C   s  | j | _| j | _| j | _| j}zސz| j}z| tjs@t z| j}z<| 	tjs\t
 | tjsnt
 |  jd7  _t W n t
k
r   Y nX || _| tjst | tjst |  jd7  _W n tk
r   Y nX t W n tk
r   Y nX || _| 	tjs$t z| j}z@| 	tjsBt | tjsVt |  jd7  _t W n tk
r   Y nX || _| tjst | j| j krt |  jd7  _W n tk
r   Y nX W n tk
r   Y nX | j| _W n tk
r   Y nX || _| j}z| tjs8t |  jd7  _| tjsZt |  jd7  _| j| _| tjst |  jd7  _| tjst |  jd7  _| j| _W n tk
r   Y nX || _dS )Nr   T)limitI_pVI_p1I_p2cursorZin_groupingr   g_vlab2Zout_groupinglab4Zgo_out_groupinglab3Zgo_in_groupinglab1lab0lab6lab5lab7)selfv_1v_2v_3v_4v_5 r%   R/root/rtd-docs/venv/lib/python3.8/site-packages/snowballstemmer/spanish_stemmer.pyZ__r_mark_regions   s    
  
 
  
   zSpanishStemmer.__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 nn|dkrr| 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 || _ qq 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_postlude^   s:    




 zSpanishStemmer.__r_postludec                 C   s   | j | jkS N)r   r   r   r%   r%   r&   Z__r_RV~   s    zSpanishStemmer.__r_RVc                 C   s   | j | jkS r0   )r   r   r1   r%   r%   r&   Z__r_R1   s    zSpanishStemmer.__r_R1c                 C   s   | j | jkS r0   )r   r   r1   r%   r%   r&   Z__r_R2   s    zSpanishStemmer.__r_R2c                 C   s   | j | _| tjdkrdS | j | _| tj}|dkr<dS |  sHdS |dkrh| j | _| dsfdS n|dkr| j | _| dsdS n|dkr| j | _| dsdS nt|d	kr| j | _| d
sdS nT|dkr| j | _| dsdS n4|dkr| 	 sdS n| 
dsdS | 	 sdS dS )Nr   Fr   iendor'   andor(   arr)   err*   ir   r	   T)r   r-   find_among_br   a_1r+   a_2_SpanishStemmer__r_RVr.   	slice_deleq_s_b)r   r/   r%   r%   r&   Z__r_attached_pronoun   sJ    





z#SpanishStemmer.__r_attached_pronounc                 C   s  | j | _| tj}|dkr dS | j | _|dkrL|  s<dS |  sHdS n<|dkr|  s`dS |  sldS | j| j  }zX| j | _| 	ds| j| | _ t
 | j | _|  s| j| | _ t
 |  sW dS W n t
k
r   Y nX n|dkr|  sdS | dsdS nr|dkrB|  s.dS | d	sdS nF|d
krn|  sZdS | dsdS n|dkr|  sdS |  sdS | j| j  }z| j | _| tj}|dkr| j| | _ t | j | _|  s| j| | _ t |  sW dS |dkrj| j | _| 	ds6| j| | _ t | j | _|  sZ| j| | _ t |  sjW dS W n tk
r   Y nX n |dkr:|  sdS |  sdS | j| j  }zd| j | _| tjdkr| j| | _ t | j | _|  s| j| | _ t |  sW dS W n tk
r4   Y nX nN|dkr|  sRdS |  s`dS | j| j  }zd| j | _| tjdkr| j| | _ t | j | _|  s| j| | _ t |  sW dS W n tk
r   Y nX n|  sdS |  sdS | j| j  }z^| j | _| 	ds:| j| | _ t | j | _|  s^| j| | _ t |  snW dS W n tk
r   Y nX dS )Nr   Fr   r'   icr(   logr)   r	   r*   Zenter7   at      T)r   r-   r8   r   a_6r+   _SpanishStemmer__r_R2r<   r   r=   r   r.   _SpanishStemmer__r_R1a_3r   a_4r   a_5r   r   )r   r/   r    r!   r"   r#   r$   r%   r%   r&   Z__r_standard_suffix   s   

 
















 






 






 




 z"SpanishStemmer.__r_standard_suffixc                 C   sl   | j | jk rdS | j}| j| _| j | _| tjdkr@|| _dS | j | _|| _| ds\dS | 	 shdS dS )NFr   r	   T)
r   r   limit_backwardr-   r8   r   a_7r+   r=   r<   )r   r!   r%   r%   r&   Z__r_y_verb_suffix?  s    
z SpanishStemmer.__r_y_verb_suffixc                 C   s   | j | jk rdS | j}| j| _| j | _| tj}|dkrD|| _dS | j | _|| _|dkr| j| j  }zT| 	ds| j| | _ t
 | j| j  }| 	ds| j| | _ t
 | j| | _ W n t
k
r   Y nX | j | _|  sdS n|  sdS dS )NFr   r   r	   gT)r   r   rI   r-   r8   r   a_8r+   r   r=   r   r<   )r   r!   r/   r"   r#   r%   r%   r&   Z__r_verb_suffixQ  s<    

 zSpanishStemmer.__r_verb_suffixc                 C   s  | j | _| tj}|dkr dS | j | _|dkrJ|  s<dS |  sHdS n|  sVdS |  sbdS | j| j  }z| j | _| 	ds| j| | _ t
 | j | _| j| j  }| 	ds| j| | _ t
 | j| | _ |  s| j| | _ t
 |  sW dS W n t
k
r   Y nX dS )Nr   Fr   r	   rK   T)r   r-   r8   r   a_9r+   r;   r<   r   r=   r   )r   r/   r    r!   r%   r%   r&   Z__r_residual_suffixs  sD    


 z"SpanishStemmer.__r_residual_suffixc                 C   sT  |    | j| _| j| _| j| j }|   | j| | _| j| j }zz| j| j }z|  sdt t W n tk
r   Y nX | j| | _z|  st	 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)_SpanishStemmer__r_mark_regionsr   rI   r   #_SpanishStemmer__r_attached_pronoun"_SpanishStemmer__r_standard_suffixr   r    _SpanishStemmer__r_y_verb_suffixr   _SpanishStemmer__r_verb_suffixr   "_SpanishStemmer__r_residual_suffix_SpanishStemmer__r_postlude)r   r!   r"   r#   r$   Zv_6r%   r%   r&   _stem  sN    
 
 
 
 zSpanishStemmer._stem r7   r   r'   r(   r)   r*   ZlaZselalemeseloZseloZlasZselasrA   ZlesZlosZselos
   Znosr3   r2   Zyendou   ándou   iéndor4   r5   r6   u   áru   éru   írr>   adosZivZableZibleZanteZabilZicaZanciaZenciaZadoraZosaZistaZiva	   Zanzau   logíaZidadrB   ZmenteZamente   ZacionZucionu   aciónu   uciónZicoZismoZosoZamientoZimientoZivoZadorZicasZanciasZenciasZadorasZosasZistasZivasZanzasu   logíasZidadesZablesZiblesZacionesZucionesZadoresZantesZicosZismosZososZamientosZimientosZivosZyaZyeZyanyenZyeronZyoZyasyesZyaisZyamosu   yóZabaadaZidaZaraZierau   íau   aríau   eríau   iríaZedidZaseZieseZasteZisteZanZaban   ZaranZieranu   íanu   arían   u   eríanu   iríanenZasen   ZiesenZaronZieronu   aránu   eránu   iránZadoZidoasZabas'   ZadasZidasZarasZierasu   íasu   arías-   u   eríasu   iríasesZases1   ZiesesZabaisZaraisZieraisu   íaisu   aríais7   u   eríaisu   iríaisZaseisZieseisZasteisZisteisu   áisu   éisu   aréis@   u   eréisu   iréisZadosZidosZamosu   ábamosF   u   áramosu   iéramosu   íamosu   aríamosJ   u   eríamosu   iríamosZemosZaremosN   ZeremosZiremosu   ásemosu   iésemosZimosu   arásu   erásu   irásu   ísu   aráu   eráu   iráu   aréu   eréu   iréu   ióN)__name__
__module____qualname____doc__r   r   r   r   rN   rT   r;   rE   rD   rO   rP   rQ   rR   rS   rU   r   r,   r9   r:   rF   rG   rH   rC   rJ   rL   rM   r%   r%   r%   r&   r      s  J * "'&
























































































4











































































































d







r   c                   @   s   e Zd ZdS )r   Nrs   rt   ru   r%   r%   r%   r&   r     s    r   c                   @   s   e Zd ZdS )r   Nrw   r%   r%   r%   r&   r     s    r   c                   @   s   e Zd ZdS )r   Nrw   r%   r%   r%   r&   r     s    r   c                   @   s   e Zd ZdS )r   Nrw   r%   r%   r%   r&   r     s    r   c                   @   s   e Zd ZdS )r   Nrw   r%   r%   r%   r&   r     s    r   c                   @   s   e Zd ZdS )r   Nrw   r%   r%   r%   r&   r     s    r   c                   @   s   e Zd ZdS )r   Nrw   r%   r%   r%   r&   r     s    r   c                   @   s   e Zd ZdS )r   Nrw   r%   r%   r%   r&   r     s    r   N)Zbasestemmerr   Zamongr   r   BaseExceptionr   r   r   r   r   r   r   r   r%   r%   r%   r&   <module>   s        '