U
    ƒIÀd½  ã                   @   sr  d dl mZmZ ddlmZ ddlmZ dZd ZdZ	dZ
dZdZdZd	Zd
ZdZdZe	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e	e
e
e
e
e
e
e
e
e
e
e
e
e
e
e
e
e
e
e
e
e
e
e
e
e
e
e	e	e	e	e	e	eeeeeeeeeeeeeeeeeeeeeeeeeee	e	e	e	e	eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee	e	e	e	e	e	e	ee	e	eee	e	eee	e	e	e	e	e	e	e	e	e	e	e	e	e	eee	e	ee	ee	e	e	e	e	e	eeeeee	e	e	e	e	e	e	eeeee	e	e	e	e	e	e	e	e	e	eeeeeeeeeeeeeeeeeeeeeeeeeee�f ZdZG dd„ deƒZdS )é    )ÚListÚUnioné   )ÚCharSetProber)ÚProbingStateé   é   é   é   é   é   é   é	   )Qr   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	   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                       s~   e Zd Zddœ‡ fdd„Zddœ‡ fdd„Zeedœdd„ƒZeedœd	d
„ƒZe	e
ef edœdd„Zedœdd„Z‡  ZS )ÚMacRomanProberN)Úreturnc                    s"   t ƒ  ¡  t| _g | _|  ¡  d S )N)ÚsuperÚ__init__ÚOTHÚ_last_char_classÚ_freq_counterÚreset©Úself©Ú	__class__© ú[/home/sam/Atlas/atlas_env/lib/python3.8/site-packages/pip/_vendor/chardet/macromanprober.pyr   n   s    
zMacRomanProber.__init__c                    s*   t | _dgt | _d| jd< tƒ  ¡  d S )Nr   é
   r   )r   r   ÚFREQ_CAT_NUMr   r   r   r   r   r   r   r   t   s    
zMacRomanProber.resetc                 C   s   dS )NÚMacRomanr   r   r   r   r   Úcharset_name   s    zMacRomanProber.charset_namec                 C   s   dS )NÚ r   r   r   r   r   Úlanguageƒ   s    zMacRomanProber.language)Úbyte_strr   c                 C   s`   |   |¡}|D ]J}t| }t| jt |  }|dkr@tj| _ qZ| j|  d7  < || _q| j	S )Nr   r   )
Úremove_xml_tagsÚMacRoman_CharToClassÚMacRomanClassModelr   Ú	CLASS_NUMr   ÚNOT_MEÚ_stater   Ústate)r   r#   ÚcÚ
char_classÚfreqr   r   r   Úfeed‡   s    
zMacRomanProber.feedc                 C   sX   | j tjkrdS t| jƒ}|dk r&dn| jd | jd d  | }t|dƒ}|d9 }|S )Ng{®Gáz„?g        r	   r   g      4@g\�Âõ(\ç?)r*   r   r(   Úsumr   Úmax)r   ÚtotalÚ
confidencer   r   r   Úget_confidence”   s    
ÿý
zMacRomanProber.get_confidence)Ú__name__Ú
__module__Ú__qualname__r   r   ÚpropertyÚstrr    r"   r   ÚbytesÚ	bytearrayr   r.   Úfloatr3   Ú__classcell__r   r   r   r   r   m   s   r   N)Útypingr   r   Úcharsetproberr   Úenumsr   r   ÚUDFr   ÚASCÚASSÚACVÚACOÚASVÚASOÚODDr'   r%   r&   r   r   r   r   r   Ú<module>   s   	                                                                                                                                                                                                                                à'