a =b@s`ddlmZddlmZddlmZddlmZddlm Z ddl m Z m Z GdddeZ d S) )MultiByteCharSetProber)CodingStateMachine)SJISDistributionAnalysis)SJISContextAnalysis) SJIS_SM_MODEL) ProbingState MachineStatecsPeZdZfddZfddZeddZeddZd d Zd d Z Z S) SJISProbercs4tt|tt|_t|_t|_ | dSN) superr __init__rr coding_smrdistribution_analyzerrcontext_analyzerresetself __class__6/usr/lib/python3.9/site-packages/chardet/sjisprober.pyr %s  zSJISProber.__init__cstt||jdSr )r r rrrrrrr,szSJISProber.resetcCs|jjSr )r charset_namerrrrr0szSJISProber.charset_namecCsdS)NZJapaneserrrrrlanguage4szSJISProber.languagecCsNtt|D]}|j||}|tjkrP|jd|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|jrH||jkrHt j|_ |jS)Nz!%s %s prober hit error at byte %sr)rangelenr Z next_staterZERRORloggerdebugrrrZNOT_ME_stateZITS_MEZFOUND_ITZSTARTZget_current_charlenZ _last_charrfeedrstateZ DETECTINGZgot_enough_dataget_confidenceZSHORTCUT_THRESHOLD)rZbyte_striZ coding_stateZchar_lenrrrr"8sD       zSJISProber.feedcCs|j}|j}t||Sr )rr$rmax)rZ context_confZ distrib_confrrrr$Ys  zSJISProber.get_confidence) __name__ __module__ __qualname__r rpropertyrrr"r$ __classcell__rrrrr $s    !r N)ZmbcharsetproberrZcodingstatemachinerZchardistributionrZjpcntxrZmbcssmrZenumsrrr rrrrs