
    @[h                     n    d dl mZ d dlmZ d dlmZmZ d dlmZ d dl	m
Z
 d dlmZ  G d de
          Zd	S )
   )SJISDistributionAnalysis)CodingStateMachine)MachineStateProbingState)SJISContextAnalysis)MultiByteCharSetProber)SJIS_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 )
SJISProberc                     t                                                       t          t                    | _        t                      | _        t                      | _        | 	                                 d S N)
super__init__r   r	   	coding_smr   distribution_analyzerr   context_analyzerresetself	__class__s    m/var/www/api.easyaligner.net/htdocs/venv_linux/lib/python3.11/site-packages/pip/_vendor/chardet/sjisprober.pyr   zSJISProber.__init__%   sU    +M::%=%?%?" 3 5 5

    c                 z    t                                                       | j                                         d S r   )r   r   r   r   s    r   r   zSJISProber.reset,   s/    ##%%%%%r   c                     | j         j        S r   )r   charset_namer   s    r   r   zSJISProber.charset_name0   s    $11r   c                     dS )NJapanese r   s    r   languagezSJISProber.language4   s    zr   c                    t          |          D ]l\  }}| 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    rW|| j        d<   | j                            | j        d|z
  d          |           | j                            | j        |           | j                            ||dz   |z
  |dz   |z
           |           | j                            ||dz
  |dz            |           n|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         )	enumerater   
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bytecoding_statechar_lens         r   r2   zSJISProber.feed8   s    ** 	W 	WGAt>44T::L|111!!7%M	   +1|222*3|111>==??66)-DOA&)..H7   .33DOXNNNN).. Q!1AEH4D!DEx   .33HQUQU]4KXVVV%b\:///$4466 4##%%(???*3zr   c                     | j                                         }| j                                        }t          ||          S r   )r   r6   r   max)r   context_confdistrib_confs      r   r6   zSJISProber.get_confidence_   s:    ,;;==1@@BB<...r   )__name__
__module____qualname__r   r   propertyr   r    r2   r6   __classcell__)r   s   @r   r   r   $   s            & & & & & 2 2 X2   X% % %N/ / / / / / /r   r   N)chardistributionr   codingstatemachiner   enumsr   r   jpcntxr   mbcharsetproberr   mbcssmr	   r   r   r   r   <module>rL      s   8 7 6 6 6 6 6 2 2 2 2 2 2 - - - - - - - - ' ' ' ' ' ' 3 3 3 3 3 3 ! ! ! ! ! !>/ >/ >/ >/ >/' >/ >/ >/ >/ >/r   