
    Kxh
                     b    d dl mZ ddlmZ ddlmZ ddlmZmZ ddl	m
Z
  G d de          Zd	S )
    )Union   )CharSetProber)CodingStateMachine)MachineStateProbingState)UTF8_SM_MODELc                        e Zd ZdZd fdZd fdZedefd            Zedefd            Z	de
eef         defd	Zdefd
Z xZS )
UTF8Proberg      ?returnNc                     t                                                       t          t                    | _        d| _        |                                  d S Nr   )super__init__r   r	   	coding_sm_num_mb_charsresetself	__class__s    Q/var/www/html/what/lib/python3.11/site-packages/pip/_vendor/chardet/utf8prober.pyr   zUTF8Prober.__init__'   sA    +M::

    c                     t                                                       | j                                         d| _        d S r   )r   r   r   r   r   s    r   r   zUTF8Prober.reset-   s6    r   c                     dS )Nzutf-8 r   s    r   charset_namezUTF8Prober.charset_name2   s    wr   c                     dS )N r   r   s    r   languagezUTF8Prober.language6   s    rr   byte_strc                    |D ]}| j                             |          }|t          j        k    rt          j        | _         na|t          j        k    rt          j        | _         n>|t          j	        k    r-| j         
                                dk    r| xj        dz  c_        | j        t          j        k    r.|                                 | j        k    rt          j        | _        | j        S )N   r   )r   
next_stater   ERRORr   NOT_ME_stateITS_MEFOUND_ITSTARTget_current_charlenr   state	DETECTINGget_confidenceSHORTCUT_THRESHOLD)r   r!   ccoding_states       r   feedzUTF8Prober.feed:   s     
	, 
	,A>44Q77L|111*1|222*3|111>55771<<&&!+&&:///""$$t'>>>*3zr   c                 N    d}| j         dk     r|| j        | j         z  z  }d|z
  S |S )NgGz?   g      ?)r   ONE_CHAR_PROB)r   unlikes     r   r.   zUTF8Prober.get_confidenceM   s9    !!d($*<<<F<r   )r   N)__name__
__module____qualname__r5   r   r   propertystrr   r    r   bytes	bytearrayr   r2   floatr.   __classcell__)r   s   @r   r   r   $   s        M          
 c    X #    XU5)#34     &        r   r   N)typingr   charsetproberr   codingstatemachiner   enumsr   r   mbcssmr	   r   r   r   r   <module>rE      s   8       ( ( ( ( ( ( 2 2 2 2 2 2 - - - - - - - - ! ! ! ! ! !. . . . . . . . . .r   