§
    
Á³g0'  ã                   ód  — d dl mZmZ ddlmZmZmZ ddlmZm	Z	m
Z
 ddlmZmZmZ ddlmZmZmZ ddlmZmZmZ ddlmZ  G d	„ d
¦  «        Z G d„ de¦  «        Z G d„ de¦  «        Z G d„ de¦  «        Z G d„ de¦  «        Z G d„ de¦  «        Z G d„ de¦  «        Z G d„ de¦  «        Z dS )é    )ÚTupleÚUnioné   )ÚBIG5_CHAR_TO_FREQ_ORDERÚBIG5_TABLE_SIZEÚBIG5_TYPICAL_DISTRIBUTION_RATIO)ÚEUCKR_CHAR_TO_FREQ_ORDERÚEUCKR_TABLE_SIZEÚ EUCKR_TYPICAL_DISTRIBUTION_RATIO)ÚEUCTW_CHAR_TO_FREQ_ORDERÚEUCTW_TABLE_SIZEÚ EUCTW_TYPICAL_DISTRIBUTION_RATIO)ÚGB2312_CHAR_TO_FREQ_ORDERÚGB2312_TABLE_SIZEÚ!GB2312_TYPICAL_DISTRIBUTION_RATIO)ÚJIS_CHAR_TO_FREQ_ORDERÚJIS_TABLE_SIZEÚJIS_TYPICAL_DISTRIBUTION_RATIO)ÚJOHAB_TO_EUCKR_ORDER_TABLEc                   óŠ   — e Zd ZdZdZdZdZdd„Zdd„Zd	e	e
ef         d
eddfd„Zdefd„Zdefd„Zde	e
ef         defd„ZdS )ÚCharDistributionAnalysisi   g®Gáz®ï?g{®Gáz„?é   ÚreturnNc                 óš   — t          ¦   «         | _        d| _        d| _        d| _        d| _        d| _        |                      ¦   «          d S )Nr   g        F)ÚtupleÚ_char_to_freq_orderÚ_table_sizeÚtypical_distribution_ratioÚ_doneÚ_total_charsÚ_freq_charsÚreset©Úselfs    úb/var/www/html/mpstechhub/venv/lib/python3.11/site-packages/pip/_vendor/chardet/chardistribution.pyÚ__init__z!CharDistributionAnalysis.__init__@   sJ   € õ 5:±G´GˆÔ ØˆÔð
 +.ˆÔ'ØˆŒ
ØˆÔØˆÔØ�
Š
‰Œˆˆˆó    c                 ó0   — d| _         d| _        d| _        dS )zreset analyser, clear any stateFr   N)r   r    r!   r#   s    r%   r"   zCharDistributionAnalysis.resetO   s!   € ð ˆŒ
ØˆÔàˆÔÐÐr'   ÚcharÚchar_lenc                 óÒ   — |dk    r|                       |¦  «        }nd}|dk    r>| xj        dz  c_        || j        k     r%d| j        |         k    r| xj        dz  c_        dS dS dS dS )z"feed a character with known lengthé   éÿÿÿÿr   r   i   N)Ú	get_orderr    r   r   r!   )r$   r)   r*   Úorders       r%   ÚfeedzCharDistributionAnalysis.feedX   s�   € à�qŠ=ˆ=à—N’N 4Ñ(Ô(ˆEˆEàˆEØ�AŠ:ˆ:ØÐÔ Ñ"ÐÔà�tÔ'Ò'Ð'Ø˜Ô1°%Ô8Ò8Ð8ØÐ$Ô$¨Ñ)Ð$Ô$Ð$Ð$ð ˆ:ð (Ð'Ø8Ð8r'   c                 óÌ   — | j         dk    s| j        | j        k    r| j        S | j         | j        k    r,| j        | j         | j        z
  | j        z  z  }|| j        k     r|S | j        S )z(return confidence based on existing datar   )r    r!   ÚMINIMUM_DATA_THRESHOLDÚSURE_NOr   ÚSURE_YES)r$   Úrs     r%   Úget_confidencez'CharDistributionAnalysis.get_confidencef   s|   € ð Ô Ò!Ð! TÔ%5¸Ô9TÒ%TÐ%TØ”<ÐàÔ Ô 0Ò0Ð0ØÔ ØÔ" TÔ%5Ñ5¸Ô9XÑXñˆAð �4”=Ò Ð Ø�ð Œ}Ðr'   c                 ó"   — | j         | j        k    S ©N)r    ÚENOUGH_DATA_THRESHOLDr#   s    r%   Úgot_enough_dataz(CharDistributionAnalysis.got_enough_dataw   s   € ð Ô  4Ô#=Ò=Ð=r'   Ú_c                 ó   — dS )Nr-   © )r$   r;   s     r%   r.   z"CharDistributionAnalysis.get_order|   s	   € ð
 ˆrr'   ©r   N)Ú__name__Ú
__module__Ú__qualname__r9   r4   r3   r2   r&   r"   r   ÚbytesÚ	bytearrayÚintr0   Úfloatr6   Úboolr:   r.   r=   r'   r%   r   r   :   sç   € € € € € Ø ÐØ€HØ€GØÐðð ð ð ðð ð ð ð*˜˜u iÐ/Ô0ð *¸Cð *ÀDð *ð *ð *ð *ð ð ð ð ð ð"> ð >ð >ð >ð >ð
˜5 ¨	Ð!1Ô2ð °sð ð ð ð ð ð r'   r   c                   ó@   ‡ — e Zd Zdˆ fd„Zdeeef         defd„Zˆ xZ	S )ÚEUCTWDistributionAnalysisr   Nc                 ó�   •— t          ¦   «                              ¦   «          t          | _        t          | _        t          | _        d S r8   )Úsuperr&   r   r   r   r   r   r   ©r$   Ú	__class__s    €r%   r&   z"EUCTWDistributionAnalysis.__init__…   ó7   ø€ Ý‰Œ×ÒÑÔÐÝ#;ˆÔ Ý+ˆÔÝ*JˆÔ'Ð'Ð'r'   Úbyte_strc                 óJ   — |d         }|dk    rd|dz
  z  |d         z   dz
  S dS )Nr   éÄ   é^   r   é¡   r-   r=   ©r$   rN   Ú
first_chars      r%   r.   z#EUCTWDistributionAnalysis.get_order‹   ó;   € ð
 ˜a”[ˆ
Ø˜ÒÐØ˜ dÑ*Ñ+¨h°q¬kÑ9¸DÑ@Ð@Øˆrr'   r>   ©
r?   r@   rA   r&   r   rB   rC   rD   r.   Ú__classcell__©rL   s   @r%   rH   rH   „   óo   ø€ € € € € ðKð Kð Kð Kð Kð Kð %¨¨yÐ(8Ô"9ð ¸cð ð ð ð ð ð ð ð r'   rH   c                   ó@   ‡ — e Zd Zdˆ fd„Zdeeef         defd„Zˆ xZ	S )ÚEUCKRDistributionAnalysisr   Nc                 ó�   •— t          ¦   «                              ¦   «          t          | _        t          | _        t          | _        d S r8   ©rJ   r&   r	   r   r
   r   r   r   rK   s    €r%   r&   z"EUCKRDistributionAnalysis.__init__—   rM   r'   rN   c                 óJ   — |d         }|dk    rd|dz
  z  |d         z   dz
  S dS )Nr   é°   rQ   r   rR   r-   r=   rS   s      r%   r.   z#EUCKRDistributionAnalysis.get_order�   rU   r'   r>   rV   rX   s   @r%   r[   r[   –   rY   r'   r[   c                   ó@   ‡ — e Zd Zdˆ fd„Zdeeef         defd„Zˆ xZ	S )ÚJOHABDistributionAnalysisr   Nc                 ó�   •— t          ¦   «                              ¦   «          t          | _        t          | _        t          | _        d S r8   r]   rK   s    €r%   r&   z"JOHABDistributionAnalysis.__init__©   rM   r'   rN   c                 ó|   — |d         }d|cxk    rdk     r&n n#|dz  |d         z   }t          j        |d¦  «        S dS )Nr   éˆ   éÔ   é   r   r-   )r   Úget)r$   rN   rT   Úcodes       r%   r.   z#JOHABDistributionAnalysis.get_order¯   sX   € Ø˜a”[ˆ
Ø�:Ð$Ð$Ò$Ð$ Ò$Ð$Ð$Ð$Ð$Ø Ñ# h¨q¤kÑ1ˆDÝ-Ô1°$¸Ñ;Ô;Ð;Øˆrr'   r>   rV   rX   s   @r%   ra   ra   ¨   so   ø€ € € € € ðKð Kð Kð Kð Kð Kð %¨¨yÐ(8Ô"9ð ¸cð ð ð ð ð ð ð ð r'   ra   c                   ó@   ‡ — e Zd Zdˆ fd„Zdeeef         defd„Zˆ xZ	S )ÚGB2312DistributionAnalysisr   Nc                 ó�   •— t          ¦   «                              ¦   «          t          | _        t          | _        t          | _        d S r8   )rJ   r&   r   r   r   r   r   r   rK   s    €r%   r&   z#GB2312DistributionAnalysis.__init__¸   s7   ø€ Ý‰Œ×ÒÑÔÐÝ#<ˆÔ Ý,ˆÔÝ*KˆÔ'Ð'Ð'r'   rN   c                 óZ   — |d         |d         }}|dk    r|dk    rd|dz
  z  |z   dz
  S dS )Nr   r   r_   rR   rQ   r-   r=   ©r$   rN   rT   Úsecond_chars       r%   r.   z$GB2312DistributionAnalysis.get_order¾   sI   € ð
 #+¨1¤+¨x¸¬{�Kˆ
Ø˜$ÒÐ [°DÒ%8Ð%8Ø˜ dÑ*Ñ+¨kÑ9¸DÑ@Ð@Øˆrr'   r>   rV   rX   s   @r%   rj   rj   ·   so   ø€ € € € € ðLð Lð Lð Lð Lð Lð %¨¨yÐ(8Ô"9ð ¸cð ð ð ð ð ð ð ð r'   rj   c                   ó@   ‡ — e Zd Zdˆ fd„Zdeeef         defd„Zˆ xZ	S )ÚBig5DistributionAnalysisr   Nc                 ó�   •— t          ¦   «                              ¦   «          t          | _        t          | _        t          | _        d S r8   )rJ   r&   r   r   r   r   r   r   rK   s    €r%   r&   z!Big5DistributionAnalysis.__init__Ê   s7   ø€ Ý‰Œ×ÒÑÔÐÝ#:ˆÔ Ý*ˆÔÝ*IˆÔ'Ð'Ð'r'   rN   c                 ó|   — |d         |d         }}|dk    r%|dk    rd|dz
  z  |z   dz
  dz   S d|dz
  z  |z   dz
  S dS )	Nr   r   é¤   rR   é�   é?   é@   r-   r=   rm   s       r%   r.   z"Big5DistributionAnalysis.get_orderÐ   si   € ð
 #+¨1¤+¨x¸¬{�Kˆ
Ø˜ÒÐØ˜dÒ"Ð"Ø˜j¨4Ñ/Ñ0°;Ñ>ÀÑEÈÑJÐJØ˜* tÑ+Ñ,¨{Ñ:¸TÑAÐAØˆrr'   r>   rV   rX   s   @r%   rp   rp   É   so   ø€ € € € € ðJð Jð Jð Jð Jð Jð
 %¨¨yÐ(8Ô"9ð 
¸cð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
r'   rp   c                   ó@   ‡ — e Zd Zdˆ fd„Zdeeef         defd„Zˆ xZ	S )ÚSJISDistributionAnalysisr   Nc                 ó�   •— t          ¦   «                              ¦   «          t          | _        t          | _        t          | _        d S r8   ©rJ   r&   r   r   r   r   r   r   rK   s    €r%   r&   z!SJISDistributionAnalysis.__init__Þ   ó7   ø€ Ý‰Œ×ÒÑÔÐÝ#9ˆÔ Ý)ˆÔÝ*HˆÔ'Ð'Ð'r'   rN   c                 ó´   — |d         |d         }}d|cxk    rdk    rn n	d|dz
  z  }nd|cxk    rdk    rn nd|dz
  dz   z  }nd	S ||z   d
z
  }|dk    rd	}|S )Nr   r   é�   éŸ   é¼   éà   éï   é   r-   rv   é   r=   )r$   rN   rT   rn   r/   s        r%   r.   z"SJISDistributionAnalysis.get_orderä   s©   € ð
 #+¨1¤+¨x¸¬{�Kˆ
Ø�:Ð%Ð%Ò%Ð% Ò%Ð%Ð%Ð%Ð%Ø˜:¨Ñ,Ñ-ˆEˆEØ�ZÐ'Ð'Ò'Ð' 4Ò'Ð'Ð'Ð'Ð'Ø˜:¨Ñ,¨rÑ1Ñ2ˆEˆEà�2Ø˜Ñ# dÑ*ˆØ˜ÒÐØˆEØˆr'   r>   rV   rX   s   @r%   rx   rx   Ý   so   ø€ € € € € ðIð Ið Ið Ið Ið Ið %¨¨yÐ(8Ô"9ð ¸cð ð ð ð ð ð ð ð r'   rx   c                   ó@   ‡ — e Zd Zdˆ fd„Zdeeef         defd„Zˆ xZ	S )ÚEUCJPDistributionAnalysisr   Nc                 ó�   •— t          ¦   «                              ¦   «          t          | _        t          | _        t          | _        d S r8   rz   rK   s    €r%   r&   z"EUCJPDistributionAnalysis.__init__÷   r{   r'   rN   c                 óJ   — |d         }|dk    rd|dz
  z  |d         z   dz
  S dS )Nr   é    rQ   rR   r   r-   r=   )r$   rN   r)   s      r%   r.   z#EUCJPDistributionAnalysis.get_orderý   s8   € ð
 ˜Œ{ˆØ�4Š<ˆ<Ø˜ ™Ñ%¨°¬Ñ3°dÑ:Ð:Øˆrr'   r>   rV   rX   s   @r%   r…   r…   ö   so   ø€ € € € € ðIð Ið Ið Ið Ið Ið %¨¨yÐ(8Ô"9ð ¸cð ð ð ð ð ð ð ð r'   r…   N)!Útypingr   r   Úbig5freqr   r   r   Ú	euckrfreqr	   r
   r   Ú	euctwfreqr   r   r   Ú
gb2312freqr   r   r   Újisfreqr   r   r   Ú	johabfreqr   r   rH   r[   ra   rj   rp   rx   r…   r=   r'   r%   ú<module>r�      s•  ðð8  Ð Ð Ð Ð Ð Ð Ð ðð ð ð ð ð ð ð ð ð ð
ð ð ð ð ð ð ð ð ð ð
ð ð ð ð ð ð ð ð ð ð
ð ð ð ð ð ð ð ð ð ð
ð ð ð ð ð ð ð ð ð ð
 2Ð 1Ð 1Ð 1Ð 1Ð 1ðGð Gð Gð Gð Gñ Gô Gð GðTð ð ð ð Ð 8ñ ô ð ð$ð ð ð ð Ð 8ñ ô ð ð$ð ð ð ð Ð 8ñ ô ð ðð ð ð ð Ð!9ñ ô ð ð$ð ð ð ð Ð7ñ ô ð ð(ð ð ð ð Ð7ñ ô ð ð2ð ð ð ð Ð 8ñ ô ð ð ð r'   