o
    ~#g6  ã                   @   s,   d dl mZ d dlmZ G dd„ deƒZdS )é   )ÚCharSetProber)ÚProbingStatec                       s    e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZdZdZdZ‡ fdd„Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zedd„ ƒZedd„ ƒZedd „ ƒZ‡  ZS )!ÚHebrewProberéê   éë   éí   éî   éï   éð   éó   éô   éõ   éö   é   g{®Gáz„?z
ISO-8859-8zwindows-1255c                    s>   t t| ƒ ¡  d | _d | _d | _d | _d | _d | _|  	¡  d S ©N)
Úsuperr   Ú__init__Ú_final_char_logical_scoreÚ_final_char_visual_scoreÚ_prevÚ_before_prevÚ_logical_proberÚ_visual_proberÚreset©Úself©Ú	__class__© ú…/var/www/static.ux5.de/https/Moving-Object-Detection-with-OpenCV/env/lib/python3.10/site-packages/pip/_vendor/chardet/hebrewprober.pyr   š   s   zHebrewProber.__init__c                 C   s   d| _ d| _d| _d| _d S )Né    ú )r   r   r   r   r   r   r   r   r   ¤   s   
zHebrewProber.resetc                 C   s   || _ || _d S r   )r   r   )r   ÚlogicalProberÚvisualProberr   r   r   Úset_model_probers®   s   
zHebrewProber.set_model_probersc                 C   s   || j | j| j| j| jfv S r   )Ú	FINAL_KAFÚ	FINAL_MEMÚ	FINAL_NUNÚFINAL_PEÚFINAL_TSADI©r   Úcr   r   r   Úis_final²   s   ÿzHebrewProber.is_finalc                 C   s   || j | j| j| jfv S r   )Ú
NORMAL_KAFÚ
NORMAL_MEMÚ
NORMAL_NUNÚ	NORMAL_PEr*   r   r   r   Úis_non_final¶   s   
ÿzHebrewProber.is_non_finalc                 C   s°   | j tjkr	tjS |  |¡}|D ]D}|dkr7| jdkr6|  | j¡r)|  jd7  _n$|  | j¡r6|  j	d7  _	n| jdkrM|  | j¡rM|dkrM|  j	d7  _	| j| _|| _qtj
S )Nr!   r   )Ústater   ÚNOT_MEÚfilter_high_byte_onlyr   r,   r   r   r1   r   Ú	DETECTING)r   Úbyte_strÚcurr   r   r   ÚfeedÄ   s&   

€

ÿzHebrewProber.feedc                 C   sx   | j | j }|| jkr| jS || j kr| jS | j ¡ | j ¡  }|| jkr)| jS || j k r2| jS |dk r9| jS | jS )Ng        )	r   r   ÚMIN_FINAL_CHAR_DISTANCEÚLOGICAL_HEBREW_NAMEÚVISUAL_HEBREW_NAMEr   Úget_confidencer   ÚMIN_MODEL_DISTANCE)r   ÚfinalsubÚmodelsubr   r   r   Úcharset_nameÿ   s   
ÿ
zHebrewProber.charset_namec                 C   s   dS )NÚHebrewr   r   r   r   r   Úlanguage  s   zHebrewProber.languagec                 C   s(   | j jtjkr| jjtjkrtjS tjS r   )r   r2   r   r3   r   r5   r   r   r   r   r2     s   zHebrewProber.state)Ú__name__Ú
__module__Ú__qualname__r%   r-   r&   r.   r'   r/   r(   r0   r)   ÚNORMAL_TSADIr9   r=   r;   r:   r   r   r$   r,   r1   r8   Úpropertyr@   rB   r2   Ú__classcell__r   r   r   r   r   €   s6    

;

r   N)Úcharsetproberr   Úenumsr   r   r   r   r   r   Ú<module>   s   c