+
    ¿ù3i,  ã                   ón   € ^ RI t ^ RIt^ RIHtHt ^RIHtHt ]P                  ! R4      t	 ! R R4      t
R# )é    N)ÚOptionalÚUnion)ÚLanguageFilterÚProbingStates%   [a-zA-Z]*[€-ÿ]+[a-zA-Z]*[^a-zA-Z€-ÿ]?c                   ó.  a € ] tR t^(t o Rt]P                  3V 3R lR lltV 3R lR lt]	V 3R lR l4       t
]	V 3R lR	 l4       tV 3R
 lR lt]	V 3R lR l4       tV 3R lR lt]V 3R lR l4       t]V 3R lR l4       t]V 3R lR l4       tRtV tR# )ÚCharSetProbergffffffî?c                ó$   <€ V ^8„  d   QhRS[ RR/# )é   Úlang_filterÚreturnN)r   )ÚformatÚ__classdict__s   "€Ú7/usr/lib/python3/dist-packages/chardet/charsetprober.pyÚ__annotate__ÚCharSetProber.__annotate__,   s   ø€ ÷ 2ñ 2¡Nð 2ÈTñ 2ó    c                óˆ   € \         P                  V n        R V n        Wn        \
        P                  ! \        4      V n        R# )TN)	r   Ú	DETECTINGÚ_stateÚactiver   ÚloggingÚ	getLoggerÚ__name__Úlogger)Úselfr   s   &&r   Ú__init__ÚCharSetProber.__init__,   s.   € Ü"×,Ñ,ˆŒØˆŒØ&ÔÜ×'Ò'¬Ó1ˆŽr   c                ó   <€ V ^8„  d   QhRR/# )r
   r   N© )r   r   s   "€r   r   r   2   s   ø€ ÷ -ñ -�tñ -r   c                ó0   € \         P                  V n        R # ©N)r   r   r   ©r   s   &r   ÚresetÚCharSetProber.reset2   s   € Ü"×,Ñ,ˆŽr   c                ó0   <€ V ^8„  d   QhRS[ S[,          /# ©r
   r   ©r   Ústr)r   r   s   "€r   r   r   6   s   ø€ ÷ ñ ™h¡s�mñ r   c                ó   € R # r!   r   r"   s   &r   Úcharset_nameÚCharSetProber.charset_name5   s   € ár   c                ó0   <€ V ^8„  d   QhRS[ S[,          /# r&   r'   )r   r   s   "€r   r   r   :   s   ø€ ÷ "ñ "™(¡3�-ñ "r   c                ó   € \         hr!   ©ÚNotImplementedErrorr"   s   &r   ÚlanguageÚCharSetProber.language9   s   € ä!Ð!r   c                ó<   <€ V ^8„  d   QhRS[ S[S[3,          RS[/# )r
   Úbyte_strr   )r   ÚbytesÚ	bytearrayr   )r   r   s   "€r   r   r   =   s%   ø€ ÷ "ñ "™U¡5©)Ð#3Õ4ð "¹ñ "r   c                ó   € \         hr!   r.   )r   r3   s   &&r   ÚfeedÚCharSetProber.feed=   s   € Ü!Ð!r   c                ó    <€ V ^8„  d   QhRS[ /# r&   )r   )r   r   s   "€r   r   r   A   s   ø€ ÷ ñ ‘|ñ r   c                ó   € V P                   # r!   )r   r"   s   &r   ÚstateÚCharSetProber.state@   s   € à�{‰{Ðr   c                ó    <€ V ^8„  d   QhRS[ /# r&   )Úfloat)r   r   s   "€r   r   r   D   s   ø€ ÷ ñ ¡ñ r   c                ó   € R # )g        r   r"   s   &r   Úget_confidenceÚCharSetProber.get_confidenceD   s   € Ùr   c                ó<   <€ V ^8„  d   QhRS[ S[S[3,          RS[/# ©r
   Úbufr   ©r   r4   r5   )r   r   s   "€r   r   r   H   s%   ø€ ÷ ñ ¡5©±	Ð)9Õ#:ð ¹uñ r   c                ó6   € \         P                  ! R RV 4      p V # )s   ([ -])+ó    )ÚreÚsub)rD   s   &r   Úfilter_high_byte_onlyÚ#CharSetProber.filter_high_byte_onlyG   s   € ä�fŠfÐ&¨¨cÓ2ˆØˆ
r   c                ó<   <€ V ^8„  d   QhRS[ S[S[3,          RS[/# rC   rE   )r   r   s   "€r   r   r   M   s%   ø€ ÷ ñ ©©e±YÐ.>Õ(?ð ÁIñ r   c                óè   € \        4       p\        P                  V 4      pV FL  pVP                  VRR 4       VRR pVP	                  4       '       g
   VR8  d   RpVP                  V4       KN  	  V# )uç  
We define three types of bytes:
alphabet: english alphabets [a-zA-Z]
international: international characters [Â€-Ã¿]
marker: everything else [^a-zA-ZÂ€-Ã¿]
The input buffer can be thought to contain a series of words delimited
by markers. This function works to filter all words that contain at
least one international character. All contiguous sequences of markers
are replaced by a single space ascii character.
This filter applies to all scripts which do not use English characters.
Nó   €rG   éÿÿÿÿ)r5   ÚINTERNATIONAL_WORDS_PATTERNÚfindallÚextendÚisalpha)rD   ÚfilteredÚwordsÚwordÚ	last_chars   &    r   Úfilter_international_wordsÚ(CharSetProber.filter_international_wordsL   st   € ô “;ˆô
 ,×3Ñ3°CÓ8ˆãˆDØ�O‰O˜D  "˜IÔ&ð ˜R˜S˜	ˆIØ×$Ñ$×&Ò&¨9°wÔ+>Ø �	Ø�O‰O˜IÖ&ñ ð ˆr   c                ó<   <€ V ^8„  d   QhRS[ S[S[3,          RS[/# rC   rE   )r   r   s   "€r   r   r   o   s%   ø€ ÷ $ñ $™U¡5©)Ð#3Õ4ð $¹ñ $r   c                óV  € \        4       pRp^ p\        V 4      P                  R4      p \        V 4       FV  w  rEVR8X  d   V^,           pRpK  VR8X  g   K"  WC8”  d-   V'       g%   VP	                  WV 4       VP	                  R4       RpKX  	  V'       g   VP	                  WR 4       V# )a+  
Returns a copy of ``buf`` that retains only the sequences of English
alphabet and high byte characters that are not between <> characters.
This filter can be applied to all scripts which contain both English
characters and extended ASCII characters, but is currently only used by
``Latin1Prober``.
FÚcó   >ó   <rG   TN)r5   Ú
memoryviewÚcastÚ	enumeraterR   )rD   rT   Úin_tagÚprevÚcurrÚbuf_chars   &     r   Úremove_xml_tagsÚCharSetProber.remove_xml_tagsn   sŸ   € ô “;ˆØˆØˆÜ˜‹o×"Ñ" 3Ó'ˆä'¨žn‰NˆDð ˜4ÔØ˜a•x�Ø’à˜TÖ!Ø”;§vð —O‘O C¨T NÔ3à—O‘O DÔ)Ø’ñ -÷$ ð �O‰O˜C ˜JÔ'àˆr   )r   r   r   r   N)r   Ú
__module__Ú__qualname__Ú__firstlineno__ÚSHORTCUT_THRESHOLDr   ÚNONEr   r#   Úpropertyr*   r0   r7   r;   r@   ÚstaticmethodrJ   rX   rf   Ú__static_attributes__Ú__classdictcell__)r   s   @r   r   r   (   sµ   ø‡ € àÐà5C×5HÑ5H÷ 2ò 2÷-ð -ð ÷ó ðð ÷"ó ð"÷"ð "ð ÷ó ð÷ð ð ÷ó ðð ÷ó ððB ÷$ó ö$r   r   )r   rH   Útypingr   r   Úenumsr   r   ÚcompilerP   r   r   r   r   Ú<module>rt      s1   ðó: Û 	ß "ç /à ŸjšjØ8óÐ ÷
kó kr   