
    =wg                      2    d dl mZ ddlmZ  G d de      Zy)   )_StandardStemmer    )uc            	          e Zd ZdZ ed      Zg ddddddd	 ed
       ed       ed      ddddd ed      d ed       ed       ed       ed      dddddd ed       ed      d d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/Zg  ed0       ed1       ed2       ed3       ed4       ed5       ed6       ed7       ed8       ed9       ed:       ed;       ed<       ed=       ed>       ed?      d@dAdBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdQdRdSdTdUdVdW edX      dY edZ      d[ ed\      d] ed^       ed_      d`dadbdcdddedfdgdhdidjdkdldmdndodpdqdrdsdtdudvdwdxdydz ed{      d| ed}      d~ ed      dddd ed      dd ed      dddd'dd ed      d ed      d ed      dddddddd/dddddddddddddZdddd ed       ed       ed      fZd Z	y)PortugueseStemmerav  
    The Portuguese Snowball stemmer.

    :cvar __vowels: The Portuguese vowels.
    :type __vowels: unicode
    :cvar __step1_suffixes: Suffixes to be deleted in step 1 of the algorithm.
    :type __step1_suffixes: tuple
    :cvar __step2_suffixes: Suffixes to be deleted in step 2 of the algorithm.
    :type __step2_suffixes: tuple
    :cvar __step4_suffixes: Suffixes to be deleted in step 4 of the algorithm.
    :type __step4_suffixes: tuple
    :note: A detailed description of the Portuguese
           stemming algorithm can be found under
           http://snowball.tartarus.org/algorithms/portuguese/stemmer.html

    u   aeiouáéíóúâêôamentosimentosucionesamentoimentoadorasadoresu   aço~es   logías   ênciasamenteidadesismosistasadorau   aça~oantesu   ância   logía   ución   ênciamenteidadeezasicosicasismou   ável   ívelistaosososasadoranteivasivosirasezaicoicaosoosaivaivoirau   aríamosu   eríamosu   iríamosu   ássemosu   êssemosu   íssemosu   aríeisu   eríeisu   iríeisu   ásseisu   ésseisu   ísseisu   áramosu   éramosu   íramosu   ávamosaremoseremosiremosariameriamiriamassemessemissemzara~ozera~ozira~oariaseriasiriasardeserdesirdesassesessesissesastesestesistesu   áreisareisu   éreisereisu   íreisireisu   áveisu   íamosarmosermosirmosariaeriairiaasseesseisseasteesteisteareiereiireiarameramiramavamaremeremiremandoendoindoadasidasu   arásarasu   eráserasu   irásavasareseresiresu   íeisadosidosu   ámosamosemosimosadaidau   aráarau   eráerau   iráavaiamadoidoiasaiseisiaeiamemarerirasesiseuiuouosaio   á   í   óc                 T
   |j                         }d}d}|j                  t        d      d      j                  t        d      d      }| j                  || j                        \  }}| j                  || j                        }| j                  D ]  }|j                  |      s|dk(  r~|j                  |      rmd}|dd	 }|dd	 }|dd	 }|j                  d
      r-|dd }|dd }|dd }|j                  d      r|dd }|dd }n|j                  d      rw|dd }|dd }nk|dv rt|j                  |      rc|t        |       dz
  t        |        dk(  rDd}dj                  |dt        |        df      }dj                  |dt        |        df      }n|j                  |      rd}|t        d      t        d      fv r|dd }|dd }n|t        d      dfv rBdj                  |dt        |        df      }dj                  |dt        |        df      }nj|t        d      t        d      fv rBdj                  |dt        |        df      }dj                  |dt        |        df      }n|dk(  r7|dd }|dd }|dd }|j                  ddt        d      f      r|dd  }|dd  }n|d!v re|dt        |        }|dt        |        }|dt        |        }|j                  d"      r|dd }|dd }n|j                  d#      rv|dd  }|dd  }nk|d$v rI|dt        |        }|dt        |        }|dt        |        }|j                  d      r)|dd }|dd }n|dt        |        }|dt        |        } n |sD| j                  D ]5  }|j                  |      sd}|dt        |        }|dt        |        } n |s|r#|j                  d%      r|d   d&k(  r
|dd' }|dd' }|sD|sB| j                  D ]3  }|j                  |      s|dt        |        }|dt        |        } n |j                  dt        d(      t        d)      f      rT|dd' }|dd' }|j                  d*      r|j                  d      s"|j                  d+      rG|j                  d%      r6|dd' }n0|j                  t        d,            rdj                  |dd' d&f      }|j                  dt        d            j                  dt        d            }|S )-z
        Stem a Portuguese word and return the stemmed form.

        :param word: The word that is stemmed.
        :type word: str or unicode
        :return: The stemmed form.
        :rtype: unicode

        F   ãza~   õzo~r   TNiivat)r   icad)r0   r(   r   e r   r   r   r   r
   r   r   r   enter   r%   avelr    )r   r   )r   r   abil)r.   r/   r&   r'   r   c   é   êguci   ç)lowerreplacer   _r1r2_standard_PortugueseStemmer__vowels_rv_standard"_PortugueseStemmer__step1_suffixesendswithlenjoin"_PortugueseStemmer__step2_suffixes"_PortugueseStemmer__step4_suffixes)selfwordstep1_successstep2_successr1r2rvsuffixs           U/var/www/horilla/myenv/lib/python3.12/site-packages/whoosh/lang/snowball/portugese.pystemzPortugueseStemmer.stemC   s    zz|QvY-WQvY- 	 $$T4==9BtT]]3 ++ M	F}}V$X%"++f*=$(M9DCRBCRB{{4(#CRyWW;;t,#'9D!#CRB%78#CRyW/BKK4GCK<!+S[L9S@$(M77D3v;,$7#>?D"]s6{l"3T!:;B[[($(M!J-;!@@#CRyWAjM9#==!ww]s6{l(;S'ABWWb3v;,&7%=>AjM1[>#BB!ww]s6{l(;V'DEWWb3v;,&7%@A7*#CRyWW;;)'EF#'9D!#CRB#66#Mc&k\2#f+.#f+.;;|4#'9D!#CRB[[0#'9D!#CRB#AA#Mc&k\2#f+.#f+.;;t,#'9D!#CRB#Mc&k\2#f+.[M	` // ;;v&$(M#f+.DMc&k\*B M{{3DHOCRyW ]// ;;v&#f+.DMc&k\*B	 ;;QvY&	239DCRBt$S)9t$S)9CRy]]1V9%77D"Is+,D||D!F),44T1V9E    N)
__name__
__module____qualname____doc__r   r   r   r   r   r    r   r   r   r      s>   " 89H
;	 
;9 
;i 
; 
; 
;"*
;,4
;67n
;+
;()+
;8@
; !
; #*
; ,3
; 5<
; *	
; (/	
; 12*	
;
 *
;
 ()}
;
 78
m
;  
; ")
; +1
; 39
; ;A
; 
; !")
; /0	l
; =C
; 
; !'
; )/
; 17
; 9?
; 
; !'
; ).
; 05
; 7<
; 
;  %
; ',
; .3
; 5:
;6, 6< 6!L/ 6,6)*<6:;L/6+6()+689+6 +6 )*+6 9:+6 +	6 )*+	6 9:+	6
 +6
 )16
 3;6
 =E6  6 ")6 +26 4;6 =D6  6 ")6 +26 4;6 =D6  6 ")6 +26 4;6 =D6  6 ")6 +26 4;6 =D6  6 "#:6 186 :;:6  6 "#:6 186 :;:6 *6 (/6 186 :A6 6 !'6 )/6 176 9?6 6 !'6 )/6 176 9?6 6 !'6 )/6 176 9?6  !6  !'!6  )/!6  17!6" #6" !'#6" )/#6" 17#6" 9?#6$ )%6$ '-%6$ /0	l%6$ =C%6& )'6& '-'6& /5'6& 7='6& ?E'6( ))6( '-)6( /5)6( 78	l)6* +6* !'+6* )/+6* 17+6* 9>+6* @E+6, (-6, &+-6, -.hK-6, :?-6. (/6. &+/6. -2/6. 49/6. ;@/60 160  %160 ',160 .3160 59160 ;?160 AE162 362 #362 %)362 +/362 15364 564 #564 %)564 +/564 15566 c3QvY&	1V9.Jr   r   N)basesr   whoosh.compatr   r   r   r   r   <module>r      s    # G( Gr   