
ed]c           @   s|   d  d l  m Z d  d l m Z d e f d     YZ d e f d     YZ d e f d     YZ d	 e f d
     YZ d S(   i   (   t   BaseStemmer(   t   Amongt   CatalanStemmerc          B   sn!  e  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  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  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 d0 d d  e d1 d d  e d2 d3 d  e d4 d d  e d5 d6 d  e d7 d d  e d8 d d  e d9 d d  e d: d d  e d; d d  e d< d d  e d= d> d  e d? d d  e d@ dA d  e dB d d  e dC d d  e dD dE d  e dF d d  g' Z e dG d d  e dH d d  e dI d d  e dJ d d  e dK d d  e dL d d  e dM d d  e dN d d  e dO d d  e dP d d  e dQ dR d  e dS d d  e dT d d  e dU d d  e dV d d  e dW d d  e dX d d  e dY d d  e dZ d, d  e d[ d\ d  e d] d d  e d^ d d  e d_ d d  e d` d3 d  e da d d  e db d6 d  e dc dd d  e de d d  e df d d  e dg d d  e dh d d  e di d d  e dj d d  e dk d d  e dl d d  e dm d d  e dn d d  e do dE d  e dp dE d  e dq d d  e dr ds d  e dt d d  e du d d  e dv d d  e dw dx d  e dy d 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 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 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 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 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)d*d  e d+d d  e d,d d  e d-d d  e d.d d  e d/d d  e d0d d  e d1d d  e d d d  e d2d3d  e d4d5d  e d6d7d  g Z e d8d d  e d9d d  e d:d d  e d;d d  e dJ d d  e d<d d  e d=d d  e d>d d  e d?d d  e d@d! d  e dAd! d  e dBd d  e dCd d  e dDd d  e dc d d  e dEd d  e dFd d  e dGd d  e dHd d  e dId d  e dJd/ d  e dKd/ d  e dLd/ d  e dMd d  e dNd d  e dOd d  e dPd d  e dQd d  e dRd d  e dSd d  e dTd d  e dUdVd  e dWd d  e dXd d  e dYd d  e d d 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 d`d d  e dadbd  e dcdbd  e dddbd  e dedbd  e dfdbd  e dgdbd  e dhdbd  e didbd  e djdbd  e dkdbd  e dldbd  e dmdbd  e dndbd  e dodpd  e dqdpd  e drd d  e dsd d  e dtd d  e dud d  e dvd d  e dwd d  e d d d  e dxd d  e dyd 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 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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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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d5d  e d	d5d  e d
d5d  e dd5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*d d  e d+d,d  e d-d d  e d.d d  e d/d d  e d0d d  e d1d d  e d2d d  e d3d d  e d4d d  e d5d6d  e d7d d  e d8d d  e d9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 dAd d  e dBdCd  e dDdCd  e dEd d  e dFd d  e dGd d  e dHd d  e dId d  e d0d d  e dJd d  e dKd d  e dLdMd  e dNd d  e dOd d  e dPd d  e dQd d  e dRd d  e dSd d  e dTd d  e dUd d  e dVd d  e dWd d  e dXd d  e dYd d  e dZd d  e d d d  e d[d d  e d2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 dad d  e dbd d  e dcd d  e ddd d  e d&d d  e ded d  e dfd d  e dgd d  e dO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 d, dhdid d d d d d d d d d d d djd dkd d$ g Z	 d Z
 d Z dl  Z dm  Z dn  Z do  Z dp  Z dq  Z dr  Z ds  Z dt  Z RS(u  s   
    This class implements the stemming algorithm defined by a snowball script.
    Generated by Snowball 2.0.0 - https://snowballstem.org/
    u    ii   u   ·i    i   u   ài   u   áu   èi   u   éu   ìi   u   íu   ïu   òi   u   óu   úi   u   üu   lau   -lau   selau   leu   meu   -meu   seu   -teu   hiu   'hii   u   liu   -lii
   u   'lu   'mu   -mu   'nu   -nu   hou   'hoi   u   lou   seloi   u   'su   lasu   selasi   u   lesu   -lesi   u   'lsu   -lsu   'nsu   -nsu   ensu   losu   selosi   u   nosu   -nosi!   u   vosu   usu   -usi$   u   'tu   icau   lógicau   encau   adau   anciau   enciau   ènciau   íciau   logiau   iniau   íiniai	   u   eriau   àriau   atòriau   allau   ellau   ívolau   imau   íssimau	   quíssimai   u   anau   inau   erau   sferau   orau   dorau   adorai   u   adurau   esau   osau   assau   essau   issau   etau   itau   otau   istau   ialistau   ionistau   ivau   ativai'   u   nçau   logíau   icu   ístici+   u   encu   escu   udu   atgeu   bleu   ablei1   u   ibleu   ismeu   ialismei4   u   ionismeu   ivismeu   aireu   icteu   isteu   iciu   íciu   logiu   ariu   toriu   alu   ilu   allu   ellu   ívolu   isamu   issemu   ìssemu   íssemu   íssimu   quíssimiI   u   amenu   ìssinu   aru   ificariM   u   egaru   ejaru   itaru   itzaru   feru   oru   doriT   u   duru   dorasu   icsu   lógicsiX   u   udsu   ncesu   adesu   anciesu   enciesu   ènciesu   íciesu   logiesu   iniesu   íniesu   eriesu   àriesu   atòriesu   blesu   ablesig   u   iblesu   imesu   íssimesij   u
   quíssimesik   u   formesu   ismesu   ialismesin   u   inesu   eresu   oresu   doresir   u   idoresis   u   duresu   esesu   osesu   assesu   ictesu   itesu   otesu   istesu   ialistesi|   u   ionistesu   iquesu	   lógiquesi   u   ivesu   ativesi   u   logíesu
   allengüesu   icisu   ícisu   logisu   arisu   torisu   lsu   alsi   u   ellsu   imsu   íssimsi   u	   quíssimsi   u   ionsu   cionsi   u   acionsi   u   esosu   ososu   assosu   issosu   ersu   orsu   dorsi   u   adorsi   u   idorsu   atsu   itatsi   u   bilitatsi   u   ivitatsu	   ativitatsi   u   ïtatsu   etsu   antsu   entsu   mentsi   u   amentsi   u   otsu   utsu   iusu   triusi   u   atiusu   èsu   ésu   ísu   dísi   u   ósu   itatu   bilitati   u   ivitatu   ativitati   u   ïtatu   etu   antu   entu   ienti   u   mentu   amenti   u   isamenti   u   otu   isseuu   ìsseuu   ísseuu   triuu   íssiuu   atiuu   iói   u   ciói   u   aciói   u   abau   escau   iscau   ïscau   idau   udau   ïdau   iau   ariau   iriau   arau   ierau   irau   ïrau   avau   ixau   itzau   íau   aríau   eríau   iríau   ïau   iscu   ïscu   adu   edu   idu   ieu   reu   drei   u   aseu   ieseu   asteu   iiu   iniu   esquiu   eixiu   itziu   amu   emu   aremi*   u   iremu   àremu   íremu   àssemu   éssemu   iguemu   ïguemu   avemu   àvemu   ávemu   irìemu   íemu   aríemi7   u   iríemu   assimu   essimu   issimu   àssimu   èssimu   éssimu   ïmu   anu   abaniB   u   arianu   aranu   ieranu   iranu   íanu   aríaniH   u   eríanu   iríanu   enu   ieniL   u   arienu   irienu   arenu   erenu   irenu   àrenu   ïrenu   asenu   iesenu   assenu   essenu   issenu   éssenu   ïssenu   esquenu   isquenu   ïsquenu   avenu   ixenu   eixeni`   u   ïxenu   ïenu   inu   ininid   u   sinu   isinif   u   assinu   essinu   issinu   ïssinu   esquinu   eixinu   aronu   ieronu   aránu   eránu   iránu   iïnu   adou   idou   andou   iendou   iou   ixou   eixoiy   u   ïxou   itzou   tzari}   u   eru   eixeru   iru   adoru   asu   abasi   u   adasu   idasu   arasu   ierasu   íasu   aríasi   u   eríasu   iríasu   idsu   esu   idesu   udesu   ïdesu   atgesu   iesu   ariesi   u   iriesu   aresu   iresu   adoresu   ïresu   asesu   iesesu   essesu   issesu   ïssesu   quesu   esquesi   u   ïsquesu   avesu   ixesu   eixesu   ïxesu   ïesu   abaisu   araisu   ieraisu   íaisu   aríaisi   u   eríaisu   iríaisu   aseisu   ieseisu   asteisu   isteisu   inisu   sisu   isisi   u   assisu   essisu   issisu   ïssisu   esquisu   eixisu   itzisu   áisu   aréisu   eréisu   iréisu   amsu   adosu   idosu   amosu   ábamosu   áramosu   iéramosu   íamosu   aríamosi   u   eríamosu   iríamosu   aremosu   eremosu   iremosu   ásemosu   iésemosu   imosu   assu   erassi   u   essu   itsu   àsu   aràsi   u   iràsu   arásu   erásu   irásu   arési   u   iïsu   atu   itu   intu   utu   ïtu   auu   eraui   u   ieuu   ineuu   areuu   ireuu   àreuu   íreuu   asseuu   esseuu   eresseui   u   àsseuu   ésseuu   igueuu   ïgueuu   àveuu   áveuu   itzeuu   ìeuu   irìeui   u   íeuu   aríeui   u   iríeuu   assiuu   issiuu   àssiuu   èssiuu   éssiuu   ïuu   ixu   eixi	  u   ïxu   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   au   eu   iu   ïnu   ou   su   isu   osu   ïsu   euu   iuu   iquiA   i   i   iQ   c         C   s*  |  j  |  _ |  j  |  _ |  j } y |  j t j d d  sH t    n  |  j d 7_ |  j t j d d  s{ t    n  |  j d 7_ |  j |  _ |  j t j d d  s t    n  |  j d 7_ |  j t j d d  s t    n  |  j d 7_ |  j |  _ Wn t k
 rn X| |  _ t	 S(   Nia   i   i   (
   t   limitt   I_p1t   I_p2t   cursort   go_out_groupingR   t   g_vt   lab0t   go_in_groupingt   True(   t   selft   v_1(    (    s>   lib/python2.7/site-packages/snowballstemmer/catalan_stemmer.pyt   __r_mark_regionsN  s,    	 	c         C   s  xt  r|  j } yQ|  j |  _ |  j t j  } | d k rK t    n  |  j |  _ | d k ry |  j d  s_t	 Sn | d k r |  j d  s_t	 Sn | d k r |  j d  s_t	 Sn | d k r |  j d	  s_t	 Sn | d
 k r|  j d  s_t	 Sn^ | d k r#|  j d  s_t	 Sn< | d k r_|  j |  j
 k rMt    n  |  j d 7_ n  w Wn t k
 rvn X| |  _ Pq Wt  S(   Ni    i   u   ai   u   ei   u   ii   u   oi   u   ui   u   .i   (   R   R   t   brat
   find_amongR   t   a_0R	   t   kett
   slice_fromt   FalseR   (   R   R   t	   among_var(    (    s>   lib/python2.7/site-packages/snowballstemmer/catalan_stemmer.pyt   __r_cleaningn  sH    		 	c         C   s   |  j  |  j k s t St S(   N(   R   R   R   R   (   R   (    (    s>   lib/python2.7/site-packages/snowballstemmer/catalan_stemmer.pyt   __r_R1  s    c         C   s   |  j  |  j k s t St S(   N(   R   R   R   R   (   R   (    (    s>   lib/python2.7/site-packages/snowballstemmer/catalan_stemmer.pyt   __r_R2  s    c         C   sX   |  j  |  _ |  j t j  d k r( t S|  j  |  _ |  j   sD t S|  j   sT t St	 S(   Ni    (
   R   R   t   find_among_bR   t   a_1R   R   t   _CatalanStemmer__r_R1t	   slice_delR   (   R   (    (    s>   lib/python2.7/site-packages/snowballstemmer/catalan_stemmer.pyt   __r_attached_pronoun  s    c         C   s2  |  j  |  _ |  j t j  } | d k r. t S|  j  |  _ | d k ri |  j   sV t S|  j   s.t Sn | d k r |  j	   s t S|  j   s.t Sn | d k r |  j	   s t S|  j
 d  s.t Snd | d k r |  j	   s t S|  j
 d  s.t Sn2 | d k r.|  j   st S|  j
 d	  s.t Sn  t S(
   Ni    i   i   i   u   logi   u   ici   u   c(   R   R   R   R   t   a_2R   R   R   R   t   _CatalanStemmer__r_R2R   R   (   R   R   (    (    s>   lib/python2.7/site-packages/snowballstemmer/catalan_stemmer.pyt   __r_standard_suffix  s>    c         C   s   |  j  |  _ |  j t j  } | d k r. t S|  j  |  _ | d k ri |  j   sV t S|  j   s t Sn/ | d k r |  j	   s t S|  j   s t Sn  t
 S(   Ni    i   i   (   R   R   R   R   t   a_3R   R   R   R   R   R   (   R   R   (    (    s>   lib/python2.7/site-packages/snowballstemmer/catalan_stemmer.pyt   __r_verb_suffix  s     c         C   s   |  j  |  _ |  j t j  } | d k r. t S|  j  |  _ | d k ri |  j   sV t S|  j   s t Sn2 | d k r |  j   s t S|  j	 d  s t Sn  t
 S(   Ni    i   i   u   ic(   R   R   R   R   t   a_4R   R   R   R   R   R   (   R   R   (    (    s>   lib/python2.7/site-packages/snowballstemmer/catalan_stemmer.pyt   __r_residual_suffix  s     c         C   sc  |  j    |  j |  _ |  j |  _ |  j |  j } |  j   |  j | |  _ |  j |  j } y yu |  j |  j } y% |  j   s t    n  t    Wn t k
 r n X|  j | |  _ |  j   s t	    n  Wn t k
 r n XWn t	 k
 r n X|  j | |  _ |  j |  j } |  j
   |  j | |  _ |  j |  _ |  j } |  j   | |  _ t S(   N(   t   _CatalanStemmer__r_mark_regionsR   t   limit_backwardR   t#   _CatalanStemmer__r_attached_pronount"   _CatalanStemmer__r_standard_suffixt   lab2t   lab1t   _CatalanStemmer__r_verb_suffixR	   t"   _CatalanStemmer__r_residual_suffixt   _CatalanStemmer__r_cleaningR   (   R   t   v_2t   v_3t   v_4t   v_5t   v_6(    (    s>   lib/python2.7/site-packages/snowballstemmer/catalan_stemmer.pyt   _stem4  s@    

   
	
	(   t   __name__t
   __module__t   __doc__R   R   R   R   R!   R#   R   R   R   R%   R-   R   R   R'   R(   R+   R,   R3   (    (    (    s>   lib/python2.7/site-packages/snowballstemmer/catalan_stemmer.pyR      st  B	 	8				6		R	   c           B   s   e  Z RS(    (   R4   R5   (    (    (    s>   lib/python2.7/site-packages/snowballstemmer/catalan_stemmer.pyR	   d  s    R*   c           B   s   e  Z RS(    (   R4   R5   (    (    (    s>   lib/python2.7/site-packages/snowballstemmer/catalan_stemmer.pyR*   g  s    R)   c           B   s   e  Z RS(    (   R4   R5   (    (    (    s>   lib/python2.7/site-packages/snowballstemmer/catalan_stemmer.pyR)   j  s    N(	   t   basestemmerR    t   amongR   R   t   BaseExceptionR	   R*   R)   (    (    (    s>   lib/python2.7/site-packages/snowballstemmer/catalan_stemmer.pyt   <module>   s      `