ó
©i:Ec           @   sp   d  d l  Z  d  d l Z d  d l m Z d Z d Z d Z d Z d Z d Z	 e	 d	 Z
 d
 e f d „  ƒ  YZ d S(   iÿÿÿÿN(   t   CharSetProberi@   i   gffffffî?gš™™™™™©?iú   i   i   t   SingleByteCharSetProberc           B   s>   e  Z e j d d  „ Z d „  Z d „  Z d „  Z d „  Z	 RS(   c         C   s6   t  j |  ƒ | |  _ | |  _ | |  _ |  j ƒ  d  S(   N(   R    t   __init__t   _mModelt
   _mReversedt   _mNameProbert   reset(   t   selft   modelt   reversedt
   nameProber(    (    s;   /usr/lib/python2.7/dist-packages/chardet/sbcharsetprober.pyR   *   s
    			c         C   sE   t  j |  ƒ d |  _ d g t |  _ d |  _ d |  _ d |  _ d  S(   Niÿ   i    (   R    R   t   _mLastOrdert   NUMBER_OF_SEQ_CATt   _mSeqCounterst   _mTotalSeqst   _mTotalChart
   _mFreqChar(   R   (    (    s;   /usr/lib/python2.7/dist-packages/chardet/sbcharsetprober.pyR   1   s    			c         C   s%   |  j  r |  j  j ƒ  S|  j d Sd  S(   Nt   charsetName(   R   t   get_charset_nameR   (   R   (    (    s;   /usr/lib/python2.7/dist-packages/chardet/sbcharsetprober.pyR   9   s    	c         C   sú  |  j  d s |  j | ƒ } n  t | ƒ } | s; |  j ƒ  Sxé | D]á } |  j  d t | ƒ } | t k  r} |  j d 7_ n  | t k  r|  j d 7_ |  j	 t k  r|  j
 d 7_
 |  j së |  j |  j  d |  j	 t | c d 7<q|  j |  j  d | t |  j	 c d 7<qn  | |  _	 qB W|  j ƒ  t j k rð|  j
 t k rð|  j ƒ  } | t k rŸt j rt j j d |  j  d | f ƒ n  t j |  _ qí| t k  rít j rÛt j j d |  j  d | t f ƒ n  t j |  _ qíqðn  |  j ƒ  S(   Nt   keepEnglishLettert   charToOrderMapi   t   precedenceMatrixs%   %s confidence = %s, we have a winner
R   s:   %s confidence = %s, below negative shortcut threshhold %s
(   R   t   filter_without_english_letterst   lent	   get_statet   ordt   SYMBOL_CAT_ORDERR   t   SAMPLE_SIZER   R   R   R   R   t	   constantst
   eDetectingt   SB_ENOUGH_REL_THRESHOLDt   get_confidencet   POSITIVE_SHORTCUT_THRESHOLDt   _debugt   syst   stderrt   writet   eFoundItt   _mStatet   NEGATIVE_SHORTCUT_THRESHOLDt   eNotMe(   R   t   aBuft   aLent   ct   ordert   cf(    (    s;   /usr/lib/python2.7/dist-packages/chardet/sbcharsetprober.pyt   feed?   s:    
	,/	$	'c         C   sh   d } |  j  d k rd d |  j t |  j  |  j d } | |  j |  j } | d k rd d } qd n  | S(   Ng{®Gáz„?i    g      ð?t   mTypicalPositiveRatiog®Gáz®ï?(   R   R   t   POSITIVE_CATR   R   R   (   R   t   r(    (    s;   /usr/lib/python2.7/dist-packages/chardet/sbcharsetprober.pyR   a   s    #N(
   t   __name__t
   __module__R   t   Falset   NoneR   R   R   R.   R   (    (    (    s;   /usr/lib/python2.7/dist-packages/chardet/sbcharsetprober.pyR   )   s
   			"(   R   R"   t   charsetproberR    R   R   R    R'   R   R   R0   R   (    (    (    s;   /usr/lib/python2.7/dist-packages/chardet/sbcharsetprober.pyt   <module>   s   
