o
    Mi                    @   sl   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	dS )   )BaseStemmer)Amongc                   @   s0  e Zd ZdZh dZh 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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/d0 Zd1d2 Zd3d4 Zd5d6 Zd7d8 Z d9d: Z!d;d< Z"d=d> Z#d?d@ Z$dAdB Z%dCdD Z&dEdF Z'dGdH Z(dIdJ Z)g e*dKdLdMe*dNdOdPe*dQdOdRe*dSdOdTe*dUdOdVe*dWdOdXe*dYdOdZe*d[dOd\e*d]dOdTe*d^dOdPe*d_dOd`e*dadOdbe*dcdOdde*dedOdRe*dfdOdge*dhdOdTe*didOdje*dkdOdVe*dldOdme*dndOdoe*dpdOdqe*drdOdse*dtdOdue*dvdOdXe*dwdOdxe*dydOdze*d{dOd|e*d}dOd~e*ddOdZe*ddOde*ddOde*ddOde*ddOd\e*ddOdVe*ddOdZe*ddOdPe*ddOdRe*ddOdTe*ddOdVe*ddOdZe*ddOd|e*ddOdTe*ddOdZe*ddOdXe*ddOdZe*ddOd\Z+g e*ddLd`e*ddLdPe*ddLdbe*ddLdde*ddLdRe*ddLdge*ddLdTe*ddLdje*ddLdoe*ddLdme*ddLdVe*ddLdTe*ddLd`e*ddLdPe*ddLdbe*ddLdde*ddLdRe*ddLdge*ddLdTe*ddLdje*ddLdoe*ddLdme*ddLdVe*ddLdge*ddLdTe*ddLdje*ddLdoe*ddLdge*ddLdTe*ddLdje*ddLdoe*ddLdme*ddLdVe*ddLdme*ddLdVe*ddLd`e*ddLdPe*ddLdbe*ddLdde*ddLdRZ,g e*ddLdPe*ddOdPe*ddOdPe*ddOdPe*ddOdPe*ddOdPe*ddLd`e*ddLdPe*ddLd`e*ddLd`e*ddLd`e*ddLd`e*ddLd`e*ddLd`e*ddLdPe*ddudPe*ddLd`e*ddxd`e*ddLd`e*dd|d`e*dd|d`e*dd|d`e*dd|d`e*dd|d`e*dd|d`e*dd|d`e*ddMd`e*dd|d`e*dd|d`e*dd|d`e*ddLd`Z-e*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPgZ.e*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPgZ/e*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPgZ0g e*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLd`e*ddLd`e*ddLdPe*ddVdPe*ddmdPe*ddVdPe*d dVdPe*ddLdPe*ddLdPe*ddXdPe*ddxdPe*ddLdPe*ddLd`e*ddLd`e*ddZd`e*ddZd`e*ddLd`e*d	dLd`e*ddLdPe*ddMdPe*ddLd`e*d
dLd`e*ddLd`e*ddLd`e*ddd`Z1e*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPgZ2e*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddTdPe*ddjdPe*ddTdPe*d dTdPe*ddLdPe*ddLdPe*ddsdPe*ddudPe*ddLdPe*ddLdPe*ddzdPgZ3e*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPgZ4g e*ddLd`e*ddLd`e*ddPd`e*d dLd`e*d!dLd`e*d"dLd`e*ddLdPe*d dgdPe*d#dLdPe*ddLdPe*d$dLdPe*d%dmdPe*d&dLd`e*d'dLd`e*d(dLd`e*d)dLd`e*d*dLd`e*d+dLd`e*d,dLd`e*ddLd`e*d-d~d`e*d.dLd`e*ddLdPe*ddLd`e*d/dd`e*d0dd`e*d1dd`e*d2dLd`e*d3dLd`e*d4dLd`e*d5dLd`e*d6dLd`e*d7dLd`e*d8d9d`e*d:dLd`e*d;d<d`e*d=dLd`e*d>dLd`e*d?d@d`e*ddLd`Z5e*dAdLdPe*dBdLdPe*dCdLdPe*dDdLdPe*dEdLdPe*dFdLdPe*dGdLdPe*dHdLdPe*dIdLdPe*dJdLdPe*dKdLdPgZ6e*dLdLdPe*ddLdPe*ddLd`e*dMd`d`e*d$dLdPe*dNdddPe*dOdddPgZ7e*dPdLd`e*dQdLdde*dRdLdTe*dSdLdRe*dTdLdge*dUdLdbe*dVdRdPe*dWdLdje*dXdLdme*dYdLdVg
Z8e*dZdLdPe*d[dLdPe*d\dLdPe*d]dLdPe*d^dLdPe*d_dLdPgZ9e*ddLdPe*ddLdPgZ:e*d`dLdPe*dadLdPe*dbdLdPe*dcdLdPgZ;g e*ddLd`e*dddOdPe*dedOdPe*dfd`dPe*dgdLd`e*dhdLd`e*didRdPe*djdLdPe*dkdTdPe*dldTdPe*d*dTdPe*dmdLd`e*dndLdPe*dodLd`e*dpdLd`e*dqdLdPe*drdLdPe*dsdLdPe*dtdLdPe*dudLdPe*dvdLdPe*dwdLd`e*dxdLdPe*dydLd`e*dzdLdPe*d{dLd`e*ddLd`e*d|d}dPe*ddLdPe*d~ddPe*dddPe*dddPe*dddPe*ddd`e*dddPe*dddPe*ddLdPe*dddPe*ddd`e*ddLdPe*ddLdPe*ddLdPe*dddPe*dddPe*ddd`e*ddLdPZ<e*ddLdPe*dadOdPe*ddLdPe*ddLdPe*dcdbdPe*ddLdPe*ddLdPe*ddLdPgZ=e*ddLdPe*ddLdPe*d	dLdPe*ddLdPgZ>e*ddLdPe*ddLdPgZ?e*ddLdPe*ddLdPe*ddLdPgZ@e*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPgZAe*ddLdPe*ddLdPe*ddLdPe*ddLdPgZBe*ddLdPe*ddLdPgZCe*ddLdLe*ddLdLe*ddLdLe*ddLdLe*ddLdLe*ddLdLe*ddLdLe*ddLdLe*ddLdLe*ddLdLg
ZDe*ddLdPe*ddLdPgZEe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*d0dLdPe*ddLdPe*ddLdPe*ddLdPgZFe*ddLdPe*ddLdPgZGe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*d*dLdPe*ddLdPe*ddLdPe*drdLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPgZHe*ddLdPe*ddLdPgZIe*ddLdPe*ddOdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPgZJe*ddLdPe*ddLdPe*ddLdPgZKe*ddLdPe*ddLdPe*ddLdPe*ddLdPgZLg e*ddLdPe*ddOdPe*ddOdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddVdPe*ddLdPe*ddLdPe*ddqdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPZMe*ddLdPe*ddLdPe*d dPdPe*ddLdPe*ddLdPgZNe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*d	dLdPe*d
dLdPe*ddLdPe*ddLdPe*ddLdPe*ddmdPgZOe*ddLdPe*ddLdPgZPe*ddLdPe*ddLdPe*ddPdPe*ddLdPe*ddLdPe*ddLdPe*ddRdPe*ddLdPe*ddTdPe*ddLdPe*ddVdPgZQg e*ddLdPe*ddOdPe*ddOdPe*ddLdPe*ddbdPe*d dddPe*d!dLdPe*d"dgdPe*ddTdPe*d#dTdPe*d$dgdPe*d%dgdPe*d&dodPe*d'dgdPe*d(dgdPe*d)dgdPe*d*dgdPe*d+dgdPe*d,dLdPe*ddLdPe*d-d~dPe*d.d~dPe*d/ddPe*d0dLdPe*d1dLdPe*d2dLdPe*d3dMdPe*d4dLdPe*d5dLdPe*d6dLdPe*ddLdPe*d7ddPe*d8ddPe*d9ddPe*d:dLdPe*d;dLdPe*d<dLdPe*dqdLdPe*d=d@dPe*d>d@dPe*d?d@dPe*ddLdPe*ddLdPe*d@ddPe*dAddPe*dBddPe*dCddPe*ddLdPe*dDdEdPe*ddLdPe*dFdGdPe*dHdGdPe*dIdGdPe*dJdGdPe*dKdLdPe*dMdGdPe*dɐdGdPe*dNdLdPe*ddOdPe*dPdOdPe*dQdLdPe*dRdLdPe*dSdLdPe*dTdLdPe*ddLdPe*dUdVdPe*dWdVdPe*dXdVdPe*dYdVdPe*dZdLdPe*d[dLdPe*d\dLdPe*d]dLdPe*d^dLdPe*d_dLdPe*d`dLdPe*dadLdPe*dbdLdPe*ddLdPe*dcdddPe*dedddPe*dfdgdPe*dhdddPe*didjdPe*dkdddPe*dldddPe*dmdddPe*ddLdPe*dndodPe*dpdodPe*dqdrdPe*dsdrdPe*dtdrdPe*dudodPe*dːdodPZRe*dvdLdPgZSg e*ddLdPe*dwdLdPe*dxdLdPe*dydLdPe*d&dLdPe*dzdLdPe*d{dLdPe*d|dLdPe*d}dLdPe*d~dLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*d~dLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*d6dLdPe*ddLdPe*d>dLdPZTe*ddLdPe*ddLdPe*ddPdPe*ddLdPe*ddbdPe*ddLdPe*d*dLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*dJdLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPgZUe*ddLdPe*ddLdPgZVe*ddLdPe*ddOdPgZWe*ddLdPe*d/dOdPe*ddPdPe*ddOdPe*ddbdPe*ddLdPgZXe*dhdLdPe*ddLdPe*ddPdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*d2dLdPe*ddLdPg	ZYe*ddLdPe*ddLdPe*ddLdPgZZe*d.dLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPgZ[e*ddLdPe*dydOdPe*ddOdPe*ddOdPe*ddOdPgZ\e*ddLdPe*ddLdPe*ddLdPgZ]e*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPgZ^e*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*d#dLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddsdPe*ddsdPe*ddLdPe*ddLdPe*ddLdPe*dd|dPe*dd|dPe*ddLdPe*ddLdPe*ddLdPe*ddLdPgZ_e*ddLdPe*ddLdPe*ddLdPgZ`e*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddTdLe*ddLdPe*ddLdPe*ddmdLgZag e*ddLdPe*ddLdPe*ddPdPe*ddLdPe*ddbdPe*ddLdPe*ddRdPe*ddLdPe*ddTdPe*ddTdPe*ddTdPe*ddTdPe*ddTdPe*ddTdPe*ddTdPe*ddTdPe*ddTdPe*ddTdPe*ddTdPe*ddLdPe*dd~dPe*dd~dPe*dddPe*dd~dPe*dd~dPe*dTd~dPe*ddLdPe*dZd}dPe*dd}dPe*dd}dPe*dd}dPe*dddPe*dd}dPe*d d}dPe*dd}dPe*dd}dPe*dd}dPe*dd}dPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*d	dLdPZbe*d
dLdPe*ddLdPe*ddLdPgZce*ddLdPe*ddLdPe*ddLdPgZde*ddLdPe*ddOdPe*ddOdPe*ddOdPe*ddOdPe*ddOdPgZee*ddLdPgZfe*ddLdPe*ddOdPe*ddLdPe*ddLdPe*d5dLdPe*ddddPe*ddddPe*ddddPe*ddddPe*ddLdPg
Zge*ddLdPe*ddOdPe*d dOdPgZhe*d!dLdPe*ddLdPe*d"dPdPe*ddLdPe*d#dLdPe*d$dLdPgZie*d%dLdPe*d&dOdPe*d'dOdPgZje*d(dLdPe*d)dLdPe*d*dLdPe*d+d`dPe*d,dLdPe*ddLdPe*ddLdPgZke*d-dLdPe*d.dLdPe*d/dLdPgZlg e*d0dLdPe*d1dOdPe*d2dOdPe*d3d`dPe*d4dOdPe*d5dddPe*ddLdPe*d6dgdPe*d7dgdPe*d8djdPe*d9dgdPe*d:dgdPe*d;dgdPe*d<dqdPe*d=dgdPe*d>dgdPe*d?dXdPe*d@dgdPe*dAdgdPe*dBd|dPe*dCdLdPe*dDdLdPe*dEddPe*dFddPe*dGddPe*dHddPe*dIddPe*dJddPe*dKdLdPe*dMddPe*dNddPe*dOddPe*dPddPe*dQddPe*dRdSdPe*dTddPe*dUdVdPe*dWdVdPe*dXdVdPe*dYddPe*ddLdPe*dZd[dPe*d\d[dPe*d]ddPe*d^d[dPe*d_d[dPe*d`dadPe*dbdcdPe*ddd[dPe*dedfdPe*dgd[dPe*dhdidPe*djd[dPe*dkdldPe*dmd[dPe*dndodPe*dpd[dPe*dqdrdPe*dsdLdPe*dtdudPe*dvdudPe*dwdxdPe*dydudPe*dzdudPe*d{d|dPe*d}dLdPe*d~ddPe*ddLdPe*ddLdPe*ddLdPe*dddPe*dddPe*ddLdPe*ddLdPe*dddPe*ddLdPe*ddLdPe*dddPe*ddLdPe*ddddPe*ddLdPe*ddgdPe*ddgdPe*ddgdPZme*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPe*ddLdPgZndS (  GreekStemmerz
    This class implements the stemming algorithm defined by a snowball script.
    Generated from greek.sbl by Snowball 3.0.1 - https://snowballstem.org/
    >      α   ε   η   ι   ο   υ   ω>   r   r   r   r   r	   r   Fc                 C   s   t | jdkS )N   )lencurrentself r   Q/home/ubuntu/.local/lib/python3.10/site-packages/snowballstemmer/greek_stemmer.py__r_has_min_length   s   zGreekStemmer.__r_has_min_lengthc                 C   s  	 | j | j }zm| j| _| tj}| j| _|dkr%| ds#W dS nO|dkr3| ds1W dS nA|dkrA| ds?W dS n3|d	krO| d
sMW dS n%|dkr]| ds[W dS n|dkrk| dsiW dS n	|dkrx| dswW dS n|dkr| dsW dS n|dkr| dsW dS n|dkr| dsW dS n|dkr| dsW dS n|dkr| dsW dS n|dkr| dsW dS n|dkr| dsW dS n|dkr| d sW dS n|d!kr| d"sW dS n|d#kr| d$sW dS nz|d%kr	| d&sW dS nk|d'kr| d(sW dS n\|d)kr'| d*s&W dS nM|d+kr6| d,s5W dS n>|d-krE| d.sDW dS n/|d/krT| d0sSW dS n |d1krc| d2sbW dS n| j| jkrmt	 |  jd8  _W q  t	y   Y nw | j | | _	 dS )3NTr   r   F      βr      γ      δ   r         ζ   r         θ	   r   
      κ      λ      μ      ν      ξ   r	         π      ρ      σ      τ   r
         φ      χ   u   ψ   r   )
limitcursorketfind_among_br   a_0bra
slice_fromlimit_backwardlab0r   v_1	among_varr   r   r   __r_tolower   s   























zGreekStemmer.__r_tolowerc                 C   s0  | j | _| tj}|dkrdS | j | _|dkr | dsdS ns|dkr,| ds+dS ng|dkr8| ds7dS n[|d	krD| d
sCdS nO|dkrP| dsOdS nC|dkr\| ds[dS n7|dkrh| dsgdS n+|dkrt| dssdS n|dkr| dsdS n|dkr| dsdS n| dsdS d| _dS )N    Fr      φαr   u   σκαr      ολοr   u   σοr   u   τατοr      κρεr   u   περr   u   τερr   u   φωr    u   καθεστu
   γεγονT)r;   r<   r=   r   a_1r?   r@   B_test1r   rE   r   r   r   
__r_step_1p   sb   










zGreekStemmer.__r_step_1c                 C      | j | _| tjdkrdS | j | _|  sdS d| _| j | _| j | _| tj}|dkr/dS | j | j	kr7dS |dkrD| 
dsBdS dS | 
dsKdS dS )NrG   Fr   r   u   ιζT)r;   r<   r=   r   a_3r?   	slice_delrL   a_2rA   r@   rM   r   r   r   __r_step_s1   *   

zGreekStemmer.__r_step_s1c                 C   |   | j | _| tjdkrdS | j | _|  sdS d| _| j | _| j | _| tjdkr-dS | j | j	kr5dS | 
ds<dS dS )NrG   F   ωνT)r;   r<   r=   r   a_5r?   rQ   rL   a_4rA   r@   r   r   r   r   __r_step_s2       
zGreekStemmer.__r_step_s2c                 C   s(  zA| j | j }z%| j| _| dst | j| _| j| jkr!t | ds*W W dS t  ty5   Y nw | j | | _| j| _W n	 tyJ   Y nw | 	t
jdkrUdS | j| _|  s_dS d| _| j| _| j| _| 	t
j}|dkrvdS | j| jkr~dS |dkr| dsdS dS | dsdS dS )N   ισαu   ισFrG   r   r   T)r:   r;   r<   eq_s_blab1r?   rA   r@   rB   r=   r   a_7rQ   rL   a_6rC   r   r   r   __r_step_s3   sH   



zGreekStemmer.__r_step_s3c                 C   rU   NrG   Fr   T)r;   r<   r=   r   a_9r?   rQ   rL   a_8rA   r@   r   r   r   r   __r_step_s4   rZ   zGreekStemmer.__r_step_s4c                 C   rO   )NrG   Fr   r   u   ιστT)r;   r<   r=   r   a_11r?   rQ   rL   a_10rA   r@   rM   r   r   r   __r_step_s5   rT   zGreekStemmer.__r_step_s5c                 C   sB  | j | _| tjdkrdS | j | _|  sdS d| _z| j| j  }z:| j | _| j | _| tj	}|dkr8t
 | j | jkrAt
 |dkrQ| dsNW W dS t | dsZW W dS t  t
ye   Y nw | j| | _ | j | _| tj}|dkr}W dS | j | _|dkr| dsW dS W dS |dkr| dsW dS W dS |d	kr| d
sW dS W dS |dkr| dsW dS W dS |dkr| dsW dS W dS |dkr| dsW dS W dS |dkr| dsW dS W dS |dkr| dsW dS W dS |dkr
| dsW dS W dS | dsW dS W dS  ty    Y dS w )NrG   Fr   u   ισμr   u   αγνωστr   u   ατομr   u
   γνωστr   u   εθνr   u   εκλεκτr   u
   σκεπτr   u   τοπr   u   αλεξανδρr   u   βυζαντu
   θεατρT)r;   r<   r=   r   a_14r?   rQ   rL   r:   a_12r]   rA   r@   rB   a_13rC   r   r   r   __r_step_s6  s   









	
zGreekStemmer.__r_step_s6c                 C   rU   )NrG   Fu   αρακT)r;   r<   r=   r   a_16r?   rQ   rL   a_15rA   r@   r   r   r   r   __r_step_s7Y  rZ   zGreekStemmer.__r_step_s7c                 C   s"  | j | _| tjdkrdS | j | _|  sdS d| _zk| j| j  }z:| j | _| j | _| tj	}|dkr8t
 | j | jkrAt
 |dkrQ| dsNW W dS t | dsZW W dS t  t
ye   Y nw | j| | _ | j | _| j | _| ds|W dS | dsW dS W dS  ty   Y dS w )NrG   Fr   u   ακu   ιτσ   κορT)r;   r<   r=   r   a_18r?   rQ   rL   r:   a_17r]   rA   r@   rB   r\   rC   r   r   r   __r_step_s8l  sJ   



zGreekStemmer.__r_step_s8c                 C   s  | j | _| tjdkrdS | j | _|  sdS d| _z\| j| j  }z(| j | _| j | _| tj	dkr6t
 | j | jkr?t
 | dsHW W dS t  t
yS   Y nw | j| | _ | j | _| j | _| tjdkrmW dS | dsuW dS W dS  ty   Y dS w )NrG   F   ιδT)r;   r<   r=   r   a_21r?   rQ   rL   r:   a_19r]   rA   r@   rB   a_20r   rD   r   r   r   __r_step_s9  s@   

zGreekStemmer.__r_step_s9c                 C   rU   )NrG   Fu   ισκT)r;   r<   r=   r   a_23r?   rQ   rL   a_22rA   r@   r   r   r   r   __r_step_s10  rZ   zGreekStemmer.__r_step_s10c                 C   s   | j | _| tjdkrdS | j | _|  sdS | j| j  }z| tjdkr*t	 W dS  t	y5   Y nw | j| | _ | j }| 
| j | j d || _ dS )NrG   F   αδT)r;   r<   r=   r   a_24r?   rQ   r:   a_25rB   insert)r   rD   cr   r   r   __r_step_2a  s"   zGreekStemmer.__r_step_2ac                 C   f   | j | _| tjdkrdS | j | _|  sdS | j | _| j | _| tjdkr*dS | ds1dS dS )NrG   Fu   εδT)	r;   r<   r=   r   a_26r?   rQ   a_27r@   r   r   r   r   __r_step_2b     
zGreekStemmer.__r_step_2bc                 C   r   )NrG   Fu   ουδT)	r;   r<   r=   r   a_28r?   rQ   a_29r@   r   r   r   r   __r_step_2c  r   zGreekStemmer.__r_step_2cc                 C   rU   )NrG   Fr   T)r;   r<   r=   r   a_30r?   rQ   rL   a_31rA   r@   r   r   r   r   __r_step_2d  rZ   zGreekStemmer.__r_step_2dc                 C   sh   | j | _| tjdkrdS | j | _|  sdS d| _| j | _| j | _| tj	s+dS | 
ds2dS dS ra   )r;   r<   r=   r   a_32r?   rQ   rL   in_grouping_bg_vr@   r   r   r   r   
__r_step_3  s   
zGreekStemmer.__r_step_3c                 C   s   | j | _| tjdkrdS | j | _|  sdS d| _z9| j| j  }z| j | _| j | _| 	tj
s4t | ds=W W dS t  tyH   Y nw | j| | _ | j | _W n	 ty]   Y nw | j | _| tjdkrldS | j | jkrtdS | ds{dS dS )NrG   F   ικT)r;   r<   r=   r   a_33r?   rQ   rL   r:   r   r   r]   r@   rB   a_34rA   rw   r   r   r   
__r_step_4  s:   

zGreekStemmer.__r_step_4c                 C   sR  | j | j }z#| j| _| dst | j| _| j| jkr t | ds(W dS W n	 ty2   Y nw | j | | _| j | j }z| j| _| t	j
dkrOt | j| _|  sZW dS d| _W n	 tyg   Y nw | j | | _| j| _| dsydS | j| _|  sdS d| _| j| _| j| _| t	jdkrdS | j| jkrdS | dsdS dS )N
   αγαμεu   αγαμFrG   u   αμε   αμT)r:   r;   r<   r\   rB   r?   rA   r@   r=   r   a_35r]   rQ   rL   a_36r   rD   v_2r   r   r   __r_step_5a<  sP   




zGreekStemmer.__r_step_5ac                 C   s  | j | j }zC| j| _| tjdkrt | j| _|  s!W dS d| _	| j| _| j| _| tj
dkr7t | j| jkr@t | dsHW dS W n	 tyR   Y nw | j | | _| j| _| dsddS | j| _|  sndS d| _	z9| j | j }z| j| _| j| _| tjst | dsW W dS t  ty   Y nw | j | | _| j| _W n	 ty   Y nw | j| _| tjdkrdS | j| jkrdS | dsdS dS )NrG   F   αγανu   ανε   ανT)r:   r;   r<   r=   r   a_38rB   r?   rQ   rL   a_37rA   r@   r\   r   g_v2lab2r]   a_39r   r   r   r   __r_step_5bg  sb   



zGreekStemmer.__r_step_5bc                 C   s  | j | j }z| j| _| tjdkrt | j| _|  s!W dS d| _	W n	 ty.   Y nw | j | | _| j| _| 
ds@dS | j| _|  sJdS d| _	zh| j | j }z| j| _| j| _| tjsft | dsoW W dS t  tyz   Y nw | j | | _z| j| _| j| _| tjdkrt | dsW W dS t  ty   Y nw | j | | _| j| _W n	 ty   Y nw | j| _| tjdkrdS | j| jkrdS | dsdS dS )NrG   Fu   ετεu   ετT)r:   r;   r<   r=   r   a_40rB   r?   rQ   rL   r\   r   r   r   r@   r]   a_41lab3a_42rA   r   r   r   r   __r_step_5c  sd   




zGreekStemmer.__r_step_5cc                 C   s   | j | _| tjdkrdS | j | _|  sdS d| _zV| j| j  }z%| j | _| j | _| 	ds3t
 | j | jkr<t
 | dsEW W dS t  t
yP   Y nw | j| | _ | j | _| j | _| 	dsgW dS | dsoW dS W dS  ty{   Y dS w )NrG   Fu   αρχu   οντrJ   u   ωντT)r;   r<   r=   r   a_43r?   rQ   rL   r:   r\   r]   rA   r@   rB   rw   r   r   r   __r_step_5d  s@   



zGreekStemmer.__r_step_5dc                 C   sv   | j | _| tjdkrdS | j | _|  sdS d| _| j | _| j | _| ds*dS | j | j	kr2dS | 
ds9dS dS )NrG   Fu   ονu
   ομαστT)r;   r<   r=   r   a_44r?   rQ   rL   r\   rA   r@   r   r   r   r   __r_step_5e  s    

zGreekStemmer.__r_step_5ec                 C   s"  | j | j }z@| j| _| dst | j| _|  sW dS d| _| j| _| j| _| t	j
dkr4t | j| jkr=t | dsEW dS W n	 tyO   Y nw | j | | _| j| _| dsadS | j| _|  skdS d| _| j| _| j| _| t	jdkrdS | j| jkrdS | dsdS dS )Nu
   ιεστεFrG   u   ιεστu   εστεT)r:   r;   r<   r\   rB   r?   rQ   rL   r=   r   a_45rA   r@   a_46rw   r   r   r   __r_step_5f  sH   



zGreekStemmer.__r_step_5fc                 C   sn  | j | j }z| j| _| tjdkrt | j| _|  s!W dS d| _	W n	 ty.   Y nw | j | | _| j| _| tj
dkrCdS | j| _|  sMdS d| _	z\| j | j }z| j| _| j| _| tjdkrkt | dstW W dS t  ty   Y nw | j | | _| j| _| j| _| tjdkrW dS | j| jkrW dS | dsW dS W dS  ty   Y dS w )NrG   Fu   ηκT)r:   r;   r<   r=   r   a_47rB   r?   rQ   rL   a_50a_48r   r@   r]   a_49rA   r   r   r   r   __r_step_5g+  sV   


zGreekStemmer.__r_step_5gc                 C   s  | j | _| tjdkrdS | j | _|  sdS d| _z\| j| j  }z| j | _| j | _| tj	dkr6t
 | ds?W W dS t  t
yJ   Y nw | j| | _ | j | _| j | _| tjdkrdW dS | j | jkrmW dS | dsuW dS W dS  ty   Y dS w )NrG   F   ουσT)r;   r<   r=   r   a_53r?   rQ   rL   r:   a_51r]   r@   rB   a_52rA   rw   r   r   r   __r_step_5hW  s@   

zGreekStemmer.__r_step_5hc                 C   s  | j | _| tjdkrdS | j | _|  sdS d| _z| j| j  }z| j | _| j | _| 	ds3t
 | ds<W W dS t  t
yG   Y nw | j| | _ zg| j| j  }z&| j | _| j | _| tj}|dkrkt |dkry| dsyW W W dS t  ty   Y nw | j| | _ | j | _| j | _| tjdkrW W dS | j | jkrW W dS | dsW W dS W W dS  ty   Y W dS w  ty   Y dS w )NrG   Fu   κολλ   αγr   T)r;   r<   r=   r   a_56r?   rQ   rL   r:   r\   r]   r@   rB   a_54r   r   a_55rA   )r   rD   r   rE   r   r   r   __r_step_5iw  sb   




zGreekStemmer.__r_step_5ic                 C   rU   )NrG   F   ησT)r;   r<   r=   r   a_57r?   rQ   rL   a_58rA   r@   r   r   r   r   __r_step_5j  rZ   zGreekStemmer.__r_step_5jc                 C   rU   )NrG   Fu   ηστT)r;   r<   r=   r   a_59r?   rQ   rL   a_60rA   r@   r   r   r   r   __r_step_5k  rZ   zGreekStemmer.__r_step_5kc                 C   rU   )NrG   F   ουνT)r;   r<   r=   r   a_61r?   rQ   rL   a_62rA   r@   r   r   r   r   __r_step_5l  rZ   zGreekStemmer.__r_step_5lc                 C   rU   )NrG   Fu   ουμT)r;   r<   r=   r   a_63r?   rQ   rL   a_64rA   r@   r   r   r   r   __r_step_5m  rZ   zGreekStemmer.__r_step_5mc                 C   s   | j | j }z| j| _| tjdkrt | j| _| ds"W dS W n	 ty,   Y nw | j | | _| j	s8dS | j| _| tj
dkrFdS | j| _|  sPdS dS )NrG   u   μαFT)r:   r;   r<   r=   r   a_65rB   r?   r@   rL   a_66rQ   rw   r   r   r   
__r_step_6  s(   
zGreekStemmer.__r_step_6c                 C   s4   | j | _| tjdkrdS | j | _|  sdS dS )NrG   FT)r;   r<   r=   r   a_67r?   rQ   r   r   r   r   
__r_step_7  s   zGreekStemmer.__r_step_7c           "      C   sN  | j | _| j| _ | j| j  }|   | j| | _ |  sdS d| _| 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| 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  }|   | 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| | _ | j| j  }| "  | j| | _ | j| j  }| #  | j| | _ | j| j  } | $  | j|  | _ | j| j  }!| %  | j|! | _ | j| _ dS )NFT)&r;   rA   r:   _GreekStemmer__r_tolower_GreekStemmer__r_has_min_lengthrL   _GreekStemmer__r_step_1_GreekStemmer__r_step_s1_GreekStemmer__r_step_s2_GreekStemmer__r_step_s3_GreekStemmer__r_step_s4_GreekStemmer__r_step_s5_GreekStemmer__r_step_s6_GreekStemmer__r_step_s7_GreekStemmer__r_step_s8_GreekStemmer__r_step_s9_GreekStemmer__r_step_s10_GreekStemmer__r_step_2a_GreekStemmer__r_step_2b_GreekStemmer__r_step_2c_GreekStemmer__r_step_2d_GreekStemmer__r_step_3_GreekStemmer__r_step_4_GreekStemmer__r_step_5a_GreekStemmer__r_step_5b_GreekStemmer__r_step_5c_GreekStemmer__r_step_5d_GreekStemmer__r_step_5e_GreekStemmer__r_step_5f_GreekStemmer__r_step_5g_GreekStemmer__r_step_5h_GreekStemmer__r_step_5j_GreekStemmer__r_step_5i_GreekStemmer__r_step_5k_GreekStemmer__r_step_5l_GreekStemmer__r_step_5m_GreekStemmer__r_step_6_GreekStemmer__r_step_7)"r   rD   r   v_3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_16v_17v_18v_19v_20v_21v_22v_23v_24v_25v_26v_27v_28v_29v_30v_31v_32v_33r   r   r   _stem  s   zGreekStemmer._stem    u   ΆrG   r   u   Έr   u   Ήr   u   Ίr   u   Όr*   u   Ύr3   u   Ώr9   u   ΐu   Αu   Βr   u   Γr   u   Δr   u   Εu   Ζr   u   Ηu   Θr   u   Ιu   Κr    u   Λr"   u   Μr$   u   Νr&   u   Ξr(   u   Οu   Πr+   u   Ρr-   u   Σr/   u   Τr1   u   Υu   Φr4   u   Χr6   u   Ψr8   u   Ωu   Ϊu   Ϋu   άu   έu   ήu   ίu   ΰu   ςu   ϊu   ϋu   όu   ύu   ώu   σκαγιαu
   φαγιαu   ολογιαu
   σογιαu   τατογιαu   κρεαταu   περαταu   τεραταu   γεγονοταu   καθεστωταu   φωταu   περατηu   σκαγιωνu   φαγιωνu   ολογιωνu   σογιωνu   τατογιωνu   κρεατωνu   περατωνu   τερατωνu   γεγονοτωνu   καθεστωτωνu
   φωτωνu
   κρεασu
   περασu
   τερασu   γεγονοσu   κρεατοσu   περατοσu   τερατοσu   γεγονοτοσu   καθεστωτοσu
   φωτοσu   καθεστωσu   φωσu   σκαγιουu   φαγιουu   ολογιουu   σογιουu   τατογιουu   παu   ξαναπαu   επαu   περιπαu   αναμπαu   εμπαr   u   δανεu   βαθυριu   βαρκu   μαρκr#   r%   u   κορνu   αθροu   συναθροr,   u   ιμπr.   u   μαρu
   αμπαρu   γκρu   βολβορu   γλυκορu   πιπερορu   πρu   μπρu   αρρu   γλυκυρu
   πολυρu   λουu   ιζαu   ιζεu
   ιζαμεu   ιζουμεu
   ιζανεu   ιζουνεu
   ιζατεu
   ιζετεu   ιζειu   ιζανu
   ιζουνu   ιζεσu
   ιζεισu   ιζωu   βιu   λιu   αλu   ενr0   r7   u   υψu   ζωu
   ωθηκαu
   ωθηκεu   ωθηκαμεu   ωθηκανεu   ωθηκατεu   ωθηκανu   ωθηκεσu   χαρτοπαu   εξαρχαu   γεu   γκεu   κλεu   εκλεu   απεκλεu   αποκλεu   εσωκλεu   πεu   επεu   μετεπεu   εσεu   γκu   πουκαμu   κομr   rI   u   λαρu   δημοκρατu   αφu   γιγαντοαφ   r[   u
   ισαμεu
   ισανεu   ισεu
   ισατεu   ισανu   ισεσu   ισουμεu   ισουνεu
   ισετεu   ισειu
   ισουνu
   ισεισu   ισωu   αταrH   u   ηφαu   μεγu   λυγu   ηδu   πλεu   σεu   ασεu   καθu   εχθu   κακu   μακu   σκu   φιλu   κυλu   γεμu   αχνu   απu   εμπu   ευπu   αρu   αορu   γυρu   χρu   χωρu   κτu   ακτ    u   χτu   αχτ"   u   ταχu   σχu   ασχ%   u   ισταu   ιστεu   ιστηu
   ιστοιu
   ιστωνu   ιστοu
   ιστεσu
   ιστησu
   ιστοσu   ιστουσu
   ιστουu
   εγκλεu   αντιδανεu   μετασεu   μικροσεu   ατομικu
   εθνικu
   τοπικu   εκλεκτικu   σκεπτικu   γνωστικu   αγνωστικu   αλεξανδρινu   θεατρινu   βυζαντινu
   ισμοιu
   ισμωνu   ισμοu
   ισμοσu   ισμουσu
   ισμουu   ουδακιαu   αρακιαu   ουδακιu
   αρακιu   βαμβu   σλοβu   τσεχοσλοβu   καρδr   u   τζr!   u
   καπακu   σοκu   βαλu   μαλu   γλu   τριπολu   πλu   λουλu   φυλu   καιμu   κλιμu   φαρμu   γιανu   σπανu   ηγουμενu   κονu   μακρυνu   κατραπ   u   βρ   u   λαβρ   u   αμβρu   μερu
   πατερu   ανθρro   u   ναγκασ$   u   τοσu
   μουστu   ρυr5   u   σφ)   u
   αλισφ*   u   νυφu   ακιαu   ιτσαu   ακιu
   ιτσωνu
   ιτσασu
   ιτσεσu   ψαλu   αιφνu   ιρr   u
   παιχνu   ιδιαu
   ιδιωνu   ιδιοu   ιβr   u
   φραγκu   λυκu   οβελu   μηνu   ισκεu   ισκοu
   ισκοσu
   ισκουu   αδωνu   αδεσu
   γιαγιu   θειu   οκu   μαμu   μανu
   μπαμπu
   πεθερu   κυρu
   νταντu   εδωνu   εδεσu   μιλu   δαπu   γηπu   ιπu   οπu
   κρασπu   υπu
   ουδωνu
   ουδεσu   τραγu   φεu   καλιακu   αρκu
   πεταλu   βελu   φλu   χνu   πλεξu   σπu   φρu   λιχu   εωνu   εωσrs   r   u   γαλu   ελr'   u   παρu   ιαu   ιωνu   ιουu   ικαu   ικωνu   ικοu   ικουr|   u
   συναδu
   καταδu
   αντιδu   ενδu
   φυλοδu   υποδu   πρωτοδu   εξωδu   ηθu   ανηθu   ξικu   αμμοχαλu   συνομηλu   μπολu   μουλu   τσαμu   βρωμu   αμανu   μπανu   καλλινu   ποστελνu
   φιλονu   καλπu   γερu   χασu   μποσu   πλιατσu   πετσu   πιτσu   φυσu   μπαγιατu   νιτu   πικαντu   σερτr   u
   ηκαμεu   ηθηκαμεu
   ησαμεu   ουσαμεu   βουβu   ξεθu   πεθu   αποθu   αποκu   ουλu   αναπu   πικρu   ποτu
   αποστu   σιχu   τρu   τσu
   αγανεu
   ηκανεu   ηθηκανεu
   ησανεu   ουσανεu   οντανεu   ιοντανεu   ουντανεu   ιουντανεu
   οτανεu   ιοτανεu   ταβu   νταβu   ψηλοταβu   λιβu   κλιβu   ξηροκλιβr   r   u   τσαγu
   αθιγγu
   τσιγγu   ατσιγγu   στεγu   απηγu   σιγu
   ανοργu
   ενοργu   καλπουζu   μωαμεθu   πιθu   απιθu   δεκu
   πελεκr   u   ανικu
   βουλκu   βασκu   βραχυκu   καταγαλu   ολογαλu   βαθυγαλu   μελu   καστελu   πορτολu   διπλu
   λαοπλu   ψυχοπλu   ολιγοδαμu   μουσουλμu   δραδουμu
   βραχμu   αμερικαν/   u   αδαπ1   u   χαμηλοδαπu   πολυδαπu   κοπu   υποκοπ5   u   τσοπu   ερ9   u
   βετερu   λουθηρu   κορμορu   περιτρu   ουρu   βασ@   u
   πολισu   σαρακατσu   θυσu   διατu   πλατu   τσαρλατu   τετu   πουριτu
   σουλτu
   μαιντu   ζωντu   καστu   διαφN   u   στεφu   φωτοστεφP   u
   περηφu   υπερηφR   u   κοιλαρφu   πενταρφu   ορφu   αμηχW   u   βιομηχu   μεγλοβιομηχY   u   καπνοβιομηχu   μικροβιομηχu   πολυμηχu
   ησετεu   συνδu   οδu   διαθu   ραθu   ταθu   τιθu   εκθu   ενθu   συνθu   ροθu
   υπερθu   σθu   ευθu   ωφελu   βολu   αινu   πονu   ρονu   συνu   βαρu   αιρu   φορu   ευρu   πυρu   νετu   παγu   αθu   τοκu   παρακαλu   σκελu   απλu   εμu   βενu
   βαρονu   σερπu   αβαρu   εναρu   αβρu   μπορu   θαρρu   ντρr
   u   νιφu   συρφu
   οντασu
   ωντασu   ομαστεu   ιομαστεu   ακαταπu   συμπu
   ασυμπu   αμεταμφu
   εκτελr)   u   προu   νισu
   ηθηκαu
   ηθηκεu   ηθηκεσu   οθu   ναρθu
   σκουλu   σκωλu   παρακαταθu
   προσθu   ηκαu   ηκεu   ηκεσu   φαγu   ληγu   φρυδu   μαντιλu   μαλλu   ομu   βλεπu
   ποδαρu
   κυματu   πρωτu   λαχu   πανταχu   τσαu   χαδu   μεδu   λαμπιδu   δεu
   μεσαζu   δεσποζu   αιθu   φαρμακu   αγκu   ανηκr   u   βρομu   υποτεινu
   εκλιπu   ενδιαφερu
   αναρρu   πατu   καθαρευu   δευτερευu   λεχu   ουσαu   ουσεu
   ουσεσu   πελu   λλu   σμηνu   ρπu   χορτu   οφu   ψοφu   λοχu   ναυλοχu   αμαλλιu   αμαλu
   ουλαμu   δερβενu   αειπu
   αρτιπu   νεοπu   κροκαλοπu   ολοπu   προσωποπu   σιδηροπu   δροσοπu   ασπu   ανυπu
   ασπαρu   χαρu   αχαρu   απερr2   u   επιτu   συντu   ομοτu
   νομοτu   αποτu   υποτu
   αβαστu   αιμοστu
   προστu
   ανυστu   ναυu   ξεφu   αδηφu   παμφu
   πολυφu   αγαu   αγεu   αγεσu   ησαu   ησεu   ησουu   δωδεκανu
   επτανu   μεγαλονu   ερημονu   χερσονu   ηστεu   σβu   ασβu
   αειμνu   αχρu   κοινοχρu
   δυσχρu   ευχρu   παλιμψu   ουνεu   ηθουνεu   ησουνεu   σπιu   εξωνu   στραβομουτσu   κακομουτσu   ουμεu   ηθουμεu   ησουμεu   αζu   ωριοπλu
   ασουσu   παρασουσu   αλλοσουσu   ματαu
   ματωνu
   ματοσr   u
   ιουμαu   ομουναu   ιομουναu   οσουναu   ιοσουναu
   αγατεu
   ηκατεu   ηθηκατεu
   ησατεu   ουσατεu   ειτεu   ηθειτεu   ιεμαστεu   ουμαστεu   ιουμαστεu   ιεσαστεu   οσαστεu   ιοσαστεr   r   u   αμαιu
   ιεμαιu   ομαιu
   ουμαιu   ασαιu   εσαιu
   ιεσαι   u   αταιu   εταιu
   ιεταιu
   ονταιu   ουνταιu   ιουνται!   u   ειu   αει#   u   ηθειu   ησειu   οιr   (   u   ηκανu   ηθηκανu   ησανu
   ουσανu   οντουσαν-   u   ιοντουσαν.   u
   οντανu   ιονταν0   u   ουντανu   ιουνταν2   u   οτανu
   ιοταν4   u   ομαστανu   ιομασταν6   u   οσαστανu   ιοσασταν8   r   u
   ηθουν:   u
   ομουνu   ιομουν<   u
   ησουνu
   οσουνu   ιοσουν?   rV   u   ηδωνA   r	   u   ασu   εσu   ηδεσE   u   ησεσr   u   εισu
   ηθεισI   u   οσu   υσr   L   u   ουr   u   αωu   ηθωu   ησωu   οτερu
   εστερu   υτερu   ωτερu   οτατu
   εστατu   υτατu   ωτατN)o__name__
__module____qualname____doc__r   r   rL   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   r   r   r   r  r   r>   rK   rR   rP   rX   rW   r_   r^   rc   rb   rf   re   ri   rj   rh   rm   rl   rq   rp   ru   rv   rt   rz   ry   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   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r      s
   Y*'B%  +46 ', /
l








	

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

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























#





























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









 $















	




 !"#$%&'
(,





	


 !"#$
%&'()*+,-
.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[\]^_c	
#




	







	

 !"#$%&'()*+,0



	
 !"#$%&'()*+,-./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X
r   c                   @      e Zd ZdS )rB   Nr=  r>  r?  r   r   r   r   rB         rB   c                   @   rA  )r]   NrB  r   r   r   r   r]     rC  r]   c                   @   rA  )r   NrB  r   r   r   r   r     rC  r   c                   @   rA  )r   NrB  r   r   r   r   r     rC  r   N)
basestemmerr   amongr   r   BaseExceptionrB   r]   r   r   r   r   r   r   <module>   s0                    `