
    Ofc                     n    d dl mZmZ d dlmZ d dlmZ d dlmZ d dl	m
Z
 d dlmZ  G d de          Zd	S )
   )ProbingStateMachineState)MultiByteCharSetProber)CodingStateMachine)EUCJPDistributionAnalysis)EUCJPContextAnalysis)EUCJP_SM_MODELc                   `     e Zd Z fdZ fdZed             Zed             Zd Zd Z	 xZ
S )EUCJPProberc                     t          t          |                                            t          t                    | _        t                      | _        t                      | _	        | 
                                 d S N)superr   __init__r   r	   	coding_smr   distribution_analyzerr   context_analyzerresetself	__class__s    3lib/python3.11/site-packages/chardet/eucjpprober.pyr   zEUCJPProber.__init__%   s[    k4  ))++++N;;%>%@%@" 4 6 6

    c                     t          t          |                                            | j                                         d S r   )r   r   r   r   r   s    r   r   zEUCJPProber.reset,   s:    k4  &&(((##%%%%%r   c                     dS )NzEUC-JP r   s    r   charset_namezEUCJPProber.charset_name0   s    xr   c                     dS )NJapaneser   r   s    r   languagezEUCJPProber.language4   s    zr   c                    t          t          |                    D ]c}| j                            ||                   }|t          j        k    r:| j                            d| j        | j	        |           t          j        | _         n|t          j        k    rt          j        | _         n|t          j        k    r| j                                        }|dk    rR|d         | j        d<   | j                            | j        |           | j                            | j        |           | j                            ||dz
  |dz            |           | j                            ||dz
  |dz            |           e|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 %s    r   )rangelenr   
next_stater   ERRORloggerdebugr   r    r   NOT_ME_stateITS_MEFOUND_ITSTARTget_current_charlen
_last_charr   feedr   state	DETECTINGgot_enough_dataget_confidenceSHORTCUT_THRESHOLD)r   byte_stricoding_statechar_lens        r   r1   zEUCJPProber.feed8   s   s8}}%% 	? 	?A>44Xa[AAL|11 ?!!"E"&"3T]AG G G*1!44 ?*3!33 
?>==??6 ?)1!DOA&)..tIII.33DOXNNNN)..xAa!e/D08: : :.33HQU1q5[4I5=? ? ? &b\:// 	4%5577 4##%%(??4*3zr   c                     | j                                         }| j                                        }t          ||          S r   )r   r5   r   max)r   context_confdistrib_confs      r   r5   zEUCJPProber.get_confidenceY   s:    ,;;==1@@BB<...r   )__name__
__module____qualname__r   r   propertyr   r    r1   r5   __classcell__)r   s   @r   r   r   $   s            & & & & &   X   X  B/ / / / / / /r   r   N)enumsr   r   mbcharsetproberr   codingstatemachiner   chardistributionr   jpcntxr   mbcssmr	   r   r   r   r   <module>rJ      s   8 . - - - - - - - 3 3 3 3 3 3 2 2 2 2 2 2 7 7 7 7 7 7 ( ( ( ( ( ( " " " " " "8/ 8/ 8/ 8/ 8/( 8/ 8/ 8/ 8/ 8/r   