o
    욌h48                     @   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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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gZ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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gZ	ed%dded&dded'dded(ddgZ
g d)Zg d*Zg d+ZdZdZ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dAS )BDutchStemmerz
    This class implements the stemming algorithm defined by a snowball script.
    Generated by Snowball 2.2.0 - https://snowballstem.org/
           á    r      ä   é      ë   í      ï   ó      ö   ú      üIYddkktteneseenhedensendiginglijkbaarbaraaeeoouu)   A      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+   C   r-   r   r	   r	   r	   r	   r	   r	   r	   r	   r	   r	   r	   r	   r.   Fc                 C   s  | j }	 | j }zh| j | _| tj}|dkrt | j | _|dkr*| ds)W dS nD|dkr7| ds6W dS n7|dkrD| d	sCW dS n*|d
krQ| dsPW dS n|dkr^| ds]W dS n| j | jkrgt |  j d7  _ W q tyx   Y nw || _ 	 || _ | j }z| j | _| 	ds|| _ t
 | j | _| dsW dS W n	 t
y   Y nw 	 | j }zz	 | j }zq| tjddst | j | _zQ| j }z&| 	d	st | j | _| tjddst | dsW W W W W dS t  ty   Y nw || _ | 	dst | j | _| dsW W W W dS W n
 ty   Y nw || _ t  ty/   Y nw || _ | j | jkr=t |  j d7  _ q tyN   Y nw W q tyZ   Y nw || _ 	 dS )NTr	   r   aFr   er   ir   or   uyr   a      r   )cursorbra
find_amongr   a_0lab0ket
slice_fromlimiteq_slab1in_groupingg_vlab4lab6lab5lab3lab2)selfv_1v_2	among_varv_3v_4v_5v_6 rQ   Z/var/www/Befach/backend/venv/lib/python3.10/site-packages/snowballstemmer/dutch_stemmer.py__r_preludeI   s   








 zDutchStemmer.__r_preludec                 C   s   | j | _| j | _| tjddsdS |  jd7  _| tjdds#dS |  jd7  _| j| _z| jdk s7t d| _W n	 tyD   Y nw | tjddsOdS |  jd7  _| tjdds`dS |  jd7  _| j| _dS )Nr6   r7   Fr   r   T)	r?   I_p1I_p2go_out_groupingr   rC   r8   go_in_groupingr<   rI   rQ   rQ   rR   __r_mark_regions   s,   

zDutchStemmer.__r_mark_regionsc                 C   s   	 | j }zA| j | _| tj}|dkrt | j | _|dkr'| ds&W dS n|dkr4| ds3W dS n| j | jkr=t |  j d7  _ W q  tyN   Y nw || _ 	 dS )NTr	   r   r5   Fr   r2   )	r8   r9   r:   r   a_1r<   r=   r>   r?   )rI   rJ   rL   rQ   rQ   rR   __r_postlude   s0   

zDutchStemmer.__r_postludec                 C      | j | jksdS dS NFT)rT   r8   rX   rQ   rQ   rR   __r_R1      zDutchStemmer.__r_R1c                 C   r\   r]   )rU   r8   rX   rQ   rQ   rR   __r_R2   r_   zDutchStemmer.__r_R2c                 C   sj   | j | j }| tjdkrdS | j | | _| j| _| j| jkr"dS |  jd8  _| j| _|  s3dS dS )Nr	   Fr   T)	r?   r8   find_among_br   a_2r=   limit_backwardr9   	slice_delrI   rJ   rQ   rQ   rR   __r_undouble   s   zDutchStemmer.__r_undoublec                 C   s~   d| _ | j| _| dsdS | j| _|  sdS | j| j }| tj	dds(dS | j| | _| 
 s4dS d| _ |  s=dS dS )NFr1   r6   r7   T)	B_e_foundr8   r=   eq_s_br9   _DutchStemmer__r_R1r?   out_grouping_br   rC   rd   _DutchStemmer__r_undoublere   rQ   rQ   rR   __r_e_ending   s"   
zDutchStemmer.__r_e_endingc                 C   s   |   sdS | j| j }| tjddsdS | j| | _| j| j }z| ds+t W dS  ty6   Y nw | j| | _|  sCdS | 	 sIdS dS )NFr6   r7   gemT)
ri   r?   r8   rj   r   rC   rh   r<   rd   rk   )rI   rJ   rK   rQ   rQ   rR   __r_en_ending   s$   
zDutchStemmer.__r_en_endingc                 C   s  | j | j }zP| j| _| tj}|dkrt | j| _|dkr0|  s't | 	ds/W dS n%|dkr<| 
 s;t n|  sCt | tjddsNt |  sUW dS W n	 ty_   Y nw | j | | _| j | j }|   | j | | _| j | j }zX| j| _| dst | j| _|  st | j | j }z| dst t  ty   Y nw | j | | _|  sW dS | j| _| d	st | j| _| 
 st W n	 ty   Y nw | j | | _| j | j }z%| j| _| tj}|dkrt | j| _|dkr|  st |  sW dS zj| j | j }zI| j| _| d
s+t | j| _|  s7t | j | j }z| dsGt t  tyS   Y nw | j | | _|  sdW W W dS t  typ   Y nw | j | | _|  st W n ty   Y nw |dkr|  st | j | j }	z| dst t  ty   Y nw | j |	 | _|  sW dS nK|dkr|  st |  sW dS |  st n-|dkr|  st |  sW dS n|  s t | jst |  sW dS W n
 ty   Y nw | j | | _| j | j }
zS| tjdds4t | j | j }| tjdkrFt | tjddsRt | j | | _| j| _| j| jkrft |  jd8  _| j| _|  syW dS W n
 ty   Y nw | j |
 | _dS )Nr	   r   heidFr   r6   r7   cr   r"   r1   r   r   I   T) r?   r8   r=   ra   r   a_3r<   r9   ri   r>   _DutchStemmer__r_en_endingrj   g_v_jrd   _DutchStemmer__r_e_endingrh   rA   _DutchStemmer__r_R2rH   a_4rG   rF   rE   rD   rk   lab7rg   g_v_Ilab8a_5rC   rc   )rI   rJ   rL   rK   rM   rN   rO   rP   v_7v_8v_9v_10rQ   rQ   rR   __r_standard_suffix  s*  























z DutchStemmer.__r_standard_suffixc                 C   s`   | j }|   || _ | j }|   || _ | j | _| j| _ |   | j| _ | j }|   || _ dS )NT)r8   _DutchStemmer__r_prelude_DutchStemmer__r_mark_regionsrc   r?    _DutchStemmer__r_standard_suffix_DutchStemmer__r_postlude)rI   rJ   rK   rN   rQ   rQ   rR   _stem  s   zDutchStemmer._stemN)__name__
__module____qualname____doc__r   r;   rZ   rb   rr   rw   r{   rC   ry   rt   rU   rT   rg   r   r   r   ri   rv   rk   ru   rs   r   r   rQ   rQ   rQ   rR   r      sr    






















	









W r   c                   @      e Zd ZdS )r<   Nr   r   r   rQ   rQ   rQ   rR   r<         r<   c                   @   r   )rA   Nr   rQ   rQ   rQ   rR   rA     r   rA   c                   @   r   )rH   Nr   rQ   rQ   rQ   rR   rH     r   rH   c                   @   r   )rG   Nr   rQ   rQ   rQ   rR   rG     r   rG   c                   @   r   )rD   Nr   rQ   rQ   rQ   rR   rD     r   rD   c                   @   r   )rF   Nr   rQ   rQ   rQ   rR   rF     r   rF   c                   @   r   )rE   Nr   rQ   rQ   rQ   rR   rE     r   rE   c                   @   r   )rx   Nr   rQ   rQ   rQ   rR   rx     r   rx   c                   @   r   )rz   Nr   rQ   rQ   rQ   rR   rz     r   rz   N)basestemmerr   amongr   r   BaseExceptionr<   rA   rH   rG   rD   rF   rE   rx   rz   rQ   rQ   rQ   rR   <module>   s      8