
    iN              	      Z   U d Z ddlmZ ddlZddlZddlmZ ddlmZ dZ	g e	dZ
dZd	Zd
ZdZdZ ej                   dd       G d d             Zi Zded<    ej(                         ZddZg  eddej.                  ddd       eddej.                  ddd       eddej.                  ddd       eddej.                  ddd       edd ej.                  ddd       ed!d"ej.                  dd!d       ed#d$ej.                  dd#d       ed%d&ej.                  dd%d       ed'd(ej.                  dd'd       ed)d*ej0                  dd)d       ed+d,ej.                  dd+d-       ed.d/ej.                  dd.d0       ed1d2ej.                  dd1d3       ed4d5ej.                  dd6d0       ed7d8ej.                  dd7d3       ed9d:ej.                  dd9d-       ed;d<ej0                  dd=d-       ed>d?ej.                  dd@d0       edAdBej.                  ddCd0       edDdej.                  ddEd0       edFdGej0                  ddHd3       edIdJej.                  ddId0       edKdLej.                  ddKdM       edNdOej.                  ddPe       edQdRej.                  ddSe       edTdUej.                  ddVe	       edWdXej.                  ddYdZ       ed[d\ej.                  dd]d^       ed_d`ej.                  ddadb       edcddej.                  ddee       edfdgej.                  ddhe       edidjej.                  ddkdl       edmdnej.                  ddmdo       edpdqej.                  ddpdr       edsdtej.                  ddsdM       edudvej2                  ddue	       edwdxej2                  ddwe       edydzej2                  ddyd{       ed|d}ej2                  dd|e       ed~dej2                  dd~e       eddej2                  dde       eddej2                  dddZ       eddej2                  dddb       eddej2                  ddd^       eddej2                  ddd       eddej2                  dde       eddej2                  ddd       eddej2                  dde	       eddej2                  ddd       eddej2                  ddd3       eddej4                  dde       eddej4                  dddZ       eddej4                  ddd       eddej4                  dde       eddej4                  dde	       eddej4                  ddd^       eddej0                  dde       eddej0                  ddd       eddej0                  dddr       eddej0                  ddd       eddej0                  ddd       eddej0                  ddd       eddej0                  dde	       eddej6                  ddd       eddej6                  dddZ       eddej6                  dde       eddej6                  dde	       eddej6                  dde       eddej6                  dde       eddej6                  dddb       eddej6                  ddd^       eddej6                  dde	       eddej6                  ddd       eddej6                  ddd       eddej6                  dddb       eddej6                  ddd       eddej6                  ddd¬       eddej6                  dddĬ       eddej6                  dde       eddej6                  dddZ       eddej8                  dde
       eddej8                  dddb       eddej8                  dde	       eddej8                  dddZ       eddej8                  ddd^       eddej8                  dddά      Z eeD  ci c]  } | j<                  |  c}       Zded<   yc c} w )z<Encoding registry with metadata for all supported encodings.    )annotationsN)MappingProxyType)EncodingEra)enfrdeesptitnldasvnofiisidmstr)rubguksrmkbe)plcshuhrrosksl)r   r   r   r   r    r!   )etltlv)arfaT)frozenslotsc                  N    e Zd ZU dZded<   ded<   ded<   ded	<   ded
<   ded<   y)EncodingInfozMetadata for a single encoding.strnameztuple[str, ...]aliasesr   eraboolis_multibytepython_codec	languagesN)__name__
__module____qualname____doc____annotations__     `/Users/bowang/.openclaw/workspace/ChatDev/.venv/lib/python3.12/site-packages/chardet/registry.pyr*   r*   $   s(    )
I	r9   r*   z#dict[int, tuple[EncodingInfo, ...]]_CANDIDATES_CACHEc                *    t               }t        j                  |      }||S t        5  t        j                  |      }||cddd       S t	         fdt
        j                         D              }|t        |<   |cddd       S # 1 sw Y   yxY w)zReturn registry entries matching the given era filter.

    :param era: Bit flags specifying which encoding eras to include.
    :returns: A tuple of matching :class:`EncodingInfo` entries.
    Nc              3  B   K   | ]  }|j                   z  s|  y w)N)r.   ).0encr.   s     r:   	<genexpr>z!get_candidates.<locals>.<genexpr>B   s     I&7s377S=s&7s   )intr;   get_CANDIDATES_CACHE_LOCKtupleREGISTRYvalues)r.   keyresults   `  r:   get_candidatesrI   4   s     c(C""3'F	"&&s+ 
 	 Ihoo&7II!'# 
 		s   B	0B		Bascii)zus-asciiFr8   )r,   r-   r.   r0   r1   r2   zutf-8)utf8z	utf-8-sig)z	utf-8-bomzutf-16)utf16z	utf-16-be)zutf-16bez	utf-16-le)zutf-16lezutf-32)utf32z	utf-32-be)zutf-32bez	utf-32-le)zutf-32lezutf-7)utf7	big5hkscs)big5zbig5-twcsbig5cp950)zhcp932)ms932mskanjizms-kanji)jacp949)ms949uhc)kozeuc-jis-2004)zeuc-jpeucjpujiszu-jiszeuc-jisx0213euc_jis_2004zeuc-kr)euckrgb18030)zgb-18030gb2312gbkz
hz-gb-2312)hzrc   ziso2022-jp-2)ziso-2022-jpcsiso2022jpziso2022-jp-1iso2022_jp_2ziso2022-jp-2004)ziso2022-jp-3iso2022_jp_2004ziso2022-jp-extiso2022_jp_extziso-2022-kr)csiso2022krz
iso2022-krshift_jis_2004)	shift_jissjisshiftjiss_jiszshift-jisx0213cp874)zwindows-874)thzwindows-1250)cp1250rp   zwindows-1251)cp1251rq   zwindows-1252)cp1252rr   zwindows-1253)cp1253rs   )elzwindows-1254)cp1254ru   )r   zwindows-1255)cp1255rv   )hezwindows-1256)cp1256rx   zwindows-1257)cp1257ry   zwindows-1258)cp1258rz   )vizkoi8-r)koi8r)r   zkoi8-u)koi8u)r   ztis-620)tis620ziso-8859-11z
iso-8859-1)zlatin-1latin1z	iso8859-1z
iso-8859-2)zlatin-2latin2z	iso8859-2z
iso-8859-3)zlatin-3latin3z	iso8859-3)eomtr   z
iso-8859-4)zlatin-4latin4z	iso8859-4z
iso-8859-5)z	iso8859-5cyrillicz
iso-8859-6)z	iso8859-6arabicz
iso-8859-7)z	iso8859-7greekz
iso-8859-8)z	iso8859-8hebrewz
iso-8859-9)zlatin-5latin5z	iso8859-9ziso-8859-10)zlatin-6latin6z
iso8859-10)r   r   ziso-8859-13)zlatin-7latin7z
iso8859-13ziso-8859-14)zlatin-8latin8z
iso8859-14)cygabrgdziso-8859-15)zlatin-9latin9z
iso8859-15ziso-8859-16)zlatin-10latin10z
iso8859-16)r   r   r   r   r    r!   johabzmac-cyrillic)maccyrillicz	mac-greek)macgreekzmac-iceland)
maciceland)r   z
mac-latin2)	maclatin2maccentraleuropez	mac-roman)macroman	macintoshzmac-turkish)
macturkishcp720cp1006)urcp1125zkoi8-t)tgzkz-1048)kz1048zstrk1048-2002rk1048r   )kkptcp154)pt154cp154z	hp-roman8)roman8r8
csHPRoman8cp437)
r   r   r   r	   r
   r   r   r   r   r   cp737cp775cp850cp852cp855cp856cp857cp858cp860)r
   cp861cp862cp863)r   cp864)r%   cp865)r   r   cp866cp869cp1140)cp037cp424cp500cp875cp1026cp273)r   z#MappingProxyType[str, EncodingInfo]rE   )r.   r   returnztuple[EncodingInfo, ...]) r6   
__future__r   dataclasses	threadingtypesr   chardet.enumsr   _WESTERN_WESTERN_TR	_CYRILLIC_CENTRAL_EU_CENTRAL_EU_NO_RO_BALTIC_ARABIC	dataclassr*   r;   r7   LockrC   rI   
MODERN_WEBLEGACY_REGIONAL
LEGACY_ISO
LEGACY_MACDOS	MAINFRAME_REGISTRY_ENTRIESr,   rE   )es   0r:   <module>r      s   B "   " %   $0	88 

 d$/  0 :< 6 ;') ,|
""|
 ""|
$ "" %|
4 ""5|
D "" E|
T "" U|
d ""e|
t "" u|
D "" E|
T ''U|
f 6"" g|
v 0""w|
F  ""G|
V D""#W|
f ""g|
v -""w|
F ''G|
V >""#W|
f !""&g|
v ""%w|
F  ''!G|
V L""%W|
h  ""i|
x ""y|
H ""I|
X ""Y|
h ""i|
x ""y|
H ""I|
X ""Y|
h ""i|
x ""y|
J ""K|
Z ""[|
l )""m|
~ 2""!|
N	 2""!O	|
^	 2""!$_	|
n	 2""!o	|
~	 )""!	|
N
 '""!O
|
^
 &""!_
|
n
 '""!o
|
~
 2""!
|
N 3"""O|
^ 3"""_|
n 3"""*o|
~ 3"""|
N 5"""6O|
` ""a|
r  ""#s|
B "" C|
R """S|
b 1""!#c|
r )"" s|
B """C|
T ''U|
d ''e|
t ''u|
D ''E|
T 5''U|
d "''e|
t .'' u|
F OONG|
V OOW|
f OOg|
v OOw|
F OO#G|
V OOW|
f OOg|
v OOw|
F OOG|
V OOW|
f OOg|
v OOw|
F OOG|
V OOW|
f OOg|
v OOw|
F OOG|
X !!Y|
h !!i|
x !!y|
H !!I|
X !!Y|
h !!i|
 | 1A)*)1QVVQY)*1
- *s   b(