U <_9Y¾ã@s`ddlmZddlmZddlmZddlmZddlm Z ddl m Z m Z Gdd„deƒZ d S) é)ÚMultiByteCharSetProber)ÚCodingStateMachine)ÚSJISDistributionAnalysis)ÚSJISContextAnalysis)Ú SJIS_SM_MODEL)Ú ProbingStateÚ MachineStatecsPeZdZ‡fdd„Z‡fdd„Zedd„ƒZedd„ƒZd d „Zd d „Z ‡Z S) Ú SJISProbercs4tt|ƒ ¡ttƒ|_tƒ|_tƒ|_ |  ¡dS©N) Úsuperr Ú__init__rrÚ coding_smrÚdistribution_analyzerrÚcontext_analyzerÚreset©Úself©Ú __class__©úC/opt/alt/python38/lib/python3.8/site-packages/chardet/sjisprober.pyr %s  zSJISProber.__init__cstt|ƒ ¡|j ¡dSr )r r rrrrrrr,szSJISProber.resetcCs|jjSr )rÚ charset_namerrrrr0szSJISProber.charset_namecCsdS)NZJapaneserrrrrÚlanguage4szSJISProber.languagecCsNtt|ƒƒD]ú}|j ||¡}|tjkrP|j d|j|j |¡t j |_ qq |tj krjt j|_ qq |tjkr |j ¡}|dkrÂ|d|jd<|j |jd|d…|¡|j |j|¡q |j ||d||d|…|¡|j ||d|d…|¡q |d|jd<|jt jkrH|j ¡rH| ¡|jkrHt j|_ |jS)Nz!%s %s prober hit error at byte %séréééÿÿÿÿ)ÚrangeÚlenr Z next_staterÚERRORÚloggerÚdebugrrrZNOT_MEÚ_stateZITS_MEZFOUND_ITZSTARTZget_current_charlenZ _last_charrÚfeedrÚstateZ DETECTINGZgot_enough_dataÚget_confidenceZSHORTCUT_THRESHOLD)rZbyte_strÚiZ coding_stateZchar_lenrrrr#8sH ÿ   ÿÿÿÿ  ÿzSJISProber.feedcCs|j ¡}|j ¡}t||ƒSr )rr%rÚmax)rZ context_confZ distrib_confrrrr%Ys  zSJISProber.get_confidence) Ú__name__Ú __module__Ú __qualname__r rÚpropertyrrr#r%Ú __classcell__rrrrr $s    !r N)ZmbcharsetproberrZcodingstatemachinerZchardistributionrZjpcntxrZmbcssmrZenumsrrr rrrrÚs