� ��^i���n�ddlmZddlmZddlmZddlmZddlm Z ddl m Z m Z Gd�de��Z d S) �)�MultiByteCharSetProber)�CodingStateMachine)�SJISDistributionAnalysis)�SJISContextAnalysis)� SJIS_SM_MODEL)� ProbingState� MachineStatec�`��eZdZ�fd�Z�fd�Zed���Zed���Zd�Zd�Z �xZ S)� SJISProberc����tt|�����tt��|_t ��|_t��|_ |� ��dS�N) �superr �__init__rr� coding_smr�distribution_analyzerr�context_analyzer�reset��self� __class__s ���/builddir/build/BUILDROOT/alt-python311-pip-21.3.1-4.el8.x86_64/opt/alt/python311/lib/python3.11/site-packages/pip/_vendor/chardet/sjisprober.pyrzSJISProber.__init__%s[��� �j�$���(�(�*�*�*�+�M�:�:���%=�%?�%?��"� 3� 5� 5��� � � � � � � � �c���tt|�����|j���dSr )rr rrrs �rrzSJISProber.reset,s:��� �j�$���%�%�'�'�'� ��#�#�%�%�%�%�%rc��|jjSr )r� charset_name�rs rrzSJISProber.charset_name0s���$�1�1rc��dS)N�Japanese�rs r�languagezSJISProber.language4s���zrc��tt|����D�]u}|j�||��}|tjkr;|j�d|j|j |��tj |_ �n |tj krtj|_ n�|tjkr�|j���}|dkr]|d|jd<|j�|jd|z d�|��|j�|j|����|j�||dz|z |dz|z �|��|j�||dz |dz�|����w|d|jd<|jtjkrG|j���r.|���|jkrtj|_ |jS)Nz!%s %s prober hit error at byte %s�r�������)�range�lenr� next_stater �ERROR�logger�debugrr 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 rr3zSJISProber.feed8s���s�8�}�}�%�%� >� >�A��>�4�4�X�a�[�A�A�L��|�1�1�1�� �!�!�"E�"&�"3�T�]�A�G�G�G�*�1�� �����!4�4�4�*�3�� �����!3�3�3��>�=�=�?�?����6�6�)1�!��D�O�A�&��)�.�.�t��q�8�|�}�}�/M�/7�9�9�9��.�3�3�D�O�X�N�N�N�N��)�.�.�x��A���8H��Q��:B�JC�9C�0D�EM�O�O�O��.�3�3�H�Q��U�1�q�5�[�4I�4<�>�>�>��&�b�\����� �:��/� /� /��%�5�5�7�7� 4��#�#�%�%��(?�?�?�*�3�� ��z�rc��|j���}|j���}t||��Sr )rr7r�max)r� context_conf� distrib_confs rr7zSJISProber.get_confidenceYs:���,�;�;�=�=� ��1�@�@�B�B� ��<��.�.�.r) �__name__� __module__� __qualname__rr�propertyrr r3r7� __classcell__)rs@rr r $s�������������&�&�&�&�&��2�2��X�2�����X�����B/�/�/�/�/�/�/rr N)�mbcharsetproberr�codingstatemachiner�chardistributionr�jpcntxr�mbcssmr�enumsrr r rrr�rLs���84�3�3�3�3�3�2�2�2�2�2�2�6�6�6�6�6�6�'�'�'�'�'�'�!�!�!�!�!�!�-�-�-�-�-�-�-�-�8/�8/�8/�8/�8/�'�8/�8/�8/�8/�8/r