o
    욌hU                     @   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                   @   s	  e Zd Z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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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ed-ddgZed.dded/dded0ddgZ	ed*dded1dded-ddgZ
g ed2dded3dd	ed4dded5dd	ed6dded7dded8dd9ed:dded;dded<dd=ed.dded/dded0d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d9edIdd	edJddedKdd	edLddedMdd	edNddedOddedPdd9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d9Zed`ddedaddedbddedcddedddded!ddededdedfddedgddedhddediddedjddgZg 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dsdd	ed+d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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d%dd	ed&d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	Zeddd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gZg dӢZdZdZdZddՄ Zddׄ Zddل Zddۄ Zdd݄ Zdd߄ Zdd Zdd Zdd Zdd Zdd ZdS )SpanishStemmerz
    This class implements the stemming algorithm defined by a snowball script.
    Generated by Snowball 2.2.0 - https://snowballstem.org/
           á    r      é      í      ó      ú   laselalemeseloselolasselas   leslosselos
   nosandoiendoyendou   ándou   iéndoareriru   áru   éru   íricadosivableibleanteabilicaanciaenciaadoraosaistaiva	   anzau   logíaidad   menteamente   u   aciónu   uciónicoismoosoamientoimientoivoadoricasanciasenciasadorasosasistasivasanzasu   logíasidadesablesiblesacionesucionesadoresantesicosismosososamientosimientosivosyayeyanyenyeronyoyasyesyaisyamosu   yóabaadaidaaraierau   íau   aríau   eríau   iríaedidaseieseasteisteanaban   aranieranu   íanu   arían   u   eríanu   iríanenasen   iesenaronieronu   aránu   eránu   iránadoidoasabas'   adasidasarasierasu   íasu   arías-   u   eríasu   iríasesases1   iesesabaisaraisieraisu   íaisu   aríais7   u   eríaisu   iríaisaseisieseisasteisisteisu   áisu   éisu   aréis@   u   eréisu   iréisadosidosamosu   ábamosF   u   áramosu   iéramosu   íamosu   aríamosJ   u   eríamosu   iríamosemosaremosN   eremosiremosu   ásemosu   iésemosimosu   arásu   erásu   irásu   ísu   aráu   eráu   iráu   aréu   eréu   iréu   ióaeo)   A   rp   r	   r	   r	   r	   r	   r	   r	   r	   r	   r	   r	   r	   r	   r   r   r   r   c                 C   s  | j | _| j | _| j | _| j}zz| j}zh| tjdds t zQ| j}z | 	tjdds0t
 | tjdds;t
 |  jd7  _t  t
yM   Y nw || _| tjdds\t | tjddsgt |  jd7  _W t  ty|   Y t w  ty   Y nw || _| 	tjddst zM| j}z | 	tjddst | tjddst |  jd7  _t  ty   Y nw || _| tjddst | j| j krt |  jd7  _W n	 ty   Y nw W n	 ty   Y nw | j| _W n
 ty   Y nw || _| j}zV| tjddst |  jd7  _| tjdds,t |  jd7  _| j| _| tjddsCt |  jd7  _| tjddsVt |  jd7  _| j| _W n
 tyl   Y nw || _dS )Na      r   T)limitI_pVI_p1I_p2cursorin_groupingr   g_vlab2out_groupinglab4go_out_groupinglab3go_in_groupinglab1lab0lab6lab5lab7)selfv_1v_2v_3v_4v_5 r   \/var/www/Befach/backend/venv/lib/python3.10/site-packages/snowballstemmer/spanish_stemmer.py__r_mark_regions   s   zSpanishStemmer.__r_mark_regionsc                 C   s   	 | j }zh| j | _| tj}|dkrt | j | _|dkr'| ds&W dS nD|dkr4| ds3W dS n7|dkrA| d	s@W dS n*|d
krN| dsMW dS n|dkr[| dsZW dS n| j | jkrdt |  j d7  _ W q  tyu   Y nw || _ 	 dS )NTr	   r   r   Fr   r   r   ir   r   r   u)	r   bra
find_amongr   a_0r   ket
slice_fromr   )r   r   	among_varr   r   r   __r_postludeE  sH   




zSpanishStemmer.__r_postludec                 C      | j | jksdS dS NFT)r   r   r   r   r   r   __r_RVg     zSpanishStemmer.__r_RVc                 C   r   r   )r   r   r   r   r   r   __r_R1l  r   zSpanishStemmer.__r_R1c                 C   r   r   )r   r   r   r   r   r   __r_R2q  r   zSpanishStemmer.__r_R2c                 C   s(  | j | _| tjdkrdS | j | _| tj}|dkrdS |  s$dS |dkr5| j | _| ds3dS dS |dkrF| j | _| dsDdS dS |dkrW| j | _| dsUdS dS |d	krh| j | _| d
sfdS dS |dkry| j | _| dswdS dS |dkr| 	 sdS dS | 
dsdS | 	 sdS dS )Nr	   Fr   r"   r   r!   r   r$   r   r%   r   r&   r   r   T)r   r   find_among_br   a_1r   a_2_SpanishStemmer__r_RVr   	slice_deleq_s_b)r   r   r   r   r   __r_attached_pronounv  sV   





z#SpanishStemmer.__r_attached_pronounc                 C   sn  | j | _| tj}|dkrdS | j | _|dkr&|  sdS |  s$dS dS |dkrt|  s0dS |  s6dS | j| j  }z-| j | _| 	dsO| j| | _ t
 | j | _|  s`| j| | _ t
 |  sgW dS W dS  t
ys   Y dS w |dkr|  s~dS | dsdS dS |dkr|  sdS | d	sdS dS |d
kr|  sdS | dsdS dS |dkr7|  sdS |  sdS | j| j  }zg| j | _| tj}|dkr| j| | _ t | j | _|  s| j| | _ t |  sW dS |dkr&| j | _| 	ds| j| | _ t | j | _|  s| j| | _ t |  s)W dS W dS W dS  ty6   Y dS w |dkr|  sCdS |  sJdS | j| j  }z3| j | _| tjdkrg| j| | _ t | j | _|  sy| j| | _ t |  sW dS W dS  ty   Y dS w |dkr|  sdS |  sdS | j| j  }z3| j | _| tjdkr| j| | _ t | j | _|  s| j| | _ t |  sW dS W dS  ty   Y dS w |  sdS |  sdS | j| j  }z0| j | _| 	ds| j| | _ t | j | _|  s!| j| | _ t |  s)W dS W dS  ty6   Y dS w )Nr	   Fr   r   r'   r   logr   r   r   enter   atr   r9   T)r   r   r   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   __r_standard_suffix  s4    
pm
h
c
^



I@=




,)








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 | 	 s4dS dS )NFr	   r   T)
r   r   limit_backwardr   r   r   a_7r   r   r   )r   r   r   r   r   __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r"|| _dS | j | _|| _|dkrs| j| j  }z*| 	dsB| j| | _ t
 | j| j  }| 	dsV| j| | _ t
 | j| | _ W n	 t
yf   Y nw | j | _|  sqdS dS |  sydS dS )NFr	   r   r   gT)r   r   r   r   r   r   a_8r   r   r   r   r   )r   r   r   r   r   r   r   r   __r_verb_suffix@  s<   

zSpanishStemmer.__r_verb_suffixc                 C   s  | j | _| tj}|dkrdS | j | _|dkr&|  sdS |  s$dS dS |  s,dS |  s2dS | j| j  }zG| j | _| 	dsK| j| | _ t
 | j | _| j| j  }| 	dsc| j| | _ t
 | j| | _ |  sv| j| | _ t
 |  s}W dS W dS  t
y   Y dS w )Nr	   Fr   r   r   T)r   r   r   r   a_9r   r   r   r   r   r   )r   r   r   r   r   r   r   __r_residual_suffixb  sJ   

z"SpanishStemmer.__r_residual_suffixc                 C   sB  |    | j| _| j| _| j| j }|   | j| | _| j| j }zOzC| j| j }z
|  s2t t  ty=   Y nw | j| | _z
|  sLt	 t  t	yW   Y nw | j| | _| 
 set W n	 tyo   Y nw W n	 tyz   Y nw | j| | _| j| j }|   | j| | _| j| _| j}|   || _dS )NT)_SpanishStemmer__r_mark_regionsr   r   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   v_6r   r   r   _stem  sJ   zSpanishStemmer._stemN)__name__
__module____qualname____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      s   

















































	























 
!
"
#
$
%
&
'
(
)
*
+
,
-
.
2



















	























 
!
"
#
$
%
&
'
(
)
*
+
,
-
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
@
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
[
\
]
^
_
`
d






J"* "'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   )r   Nr   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   )r   Nr   r   r   r   r   r     r   r   c                   @   r   )r   Nr   r   r   r   r   r     r   r   N)basestemmerr   amongr   r   BaseExceptionr   r   r   r   r   r   r   r   r   r   r   r   <module>   s         -