
    @[h'                     >    d dl mZ d dlmZmZ  G d de          ZdS )   )CharSetProber)MachineStateProbingStatec                   f     e Zd ZdZd	 fd	Z fdZed             Zed             Zd Z	d Z
 xZS )
MultiByteCharSetProberz 
    MultiByteCharSetProber
    Nc                 z    t                                          |           d | _        d | _        ddg| _        d S )N)lang_filter    )super__init__distribution_analyzer	coding_sm
_last_char)selfr	   	__class__s     r/var/www/api.easyaligner.net/htdocs/venv_linux/lib/python3.11/site-packages/pip/_vendor/chardet/mbcharsetprober.pyr   zMultiByteCharSetProber.__init__'   s<    [111%)"a&    c                     t                                                       | j        r| j                                         | j        r| j                                         ddg| _        d S )Nr
   )r   resetr   r   r   )r   r   s    r   r   zMultiByteCharSetProber.reset-   sa    > 	#N  """% 	/&,,...a&r   c                     t           NNotImplementedErrorr   s    r   charset_namez#MultiByteCharSetProber.charset_name5       !!r   c                     t           r   r   r   s    r   languagezMultiByteCharSetProber.language9   r   r   c                 *   t          |          D ]\  }}| j                            |          }|t          j        k    r:| j                            d| j        | j        |           t          j
        | _         n|t          j        k    rt          j        | _         n|t          j        k    rs| j                                        }|dk    r+|| j        d<   | j                            | j        |           | j                            ||dz
  |dz            |           |d         | j        d<   | j        t          j        k    rG| j                                        r.|                                 | j        k    rt          j        | _        | j        S )Nz!%s %s prober hit error at byte %sr
   r   )	enumerater   
next_stater   ERRORloggerdebugr   r   r   NOT_ME_stateITS_MEFOUND_ITSTARTget_current_charlenr   r   feedstate	DETECTINGgot_enough_dataget_confidenceSHORTCUT_THRESHOLD)r   byte_stribytecoding_statechar_lens         r   r,   zMultiByteCharSetProber.feed=   s}    ** 	W 	WGAt>44T::L|111!!7%M	   +1|222*3|111>==??66)-DOA&.33DOXNNNN.33HQUQU]4KXVVV%b\:///)99;; 4##%%(???*3zr   c                 4    | j                                         S r   )r   r0   r   s    r   r0   z%MultiByteCharSetProber.get_confidence^   s    )88:::r   r   )__name__
__module____qualname____doc__r   r   propertyr   r   r,   r0   __classcell__)r   s   @r   r   r   "   s         ! ! ! ! ! !! ! ! ! ! " " X" " " X"  B; ; ; ; ; ; ;r   r   N)charsetproberr   enumsr   r   r    r   r   <module>rA      se   < ) ( ( ( ( ( - - - - - - - -=; =; =; =; =;] =; =; =; =; =;r   