o
     cJ                     @   s  U d dl mZmZmZmZmZ d dlmZ d dlm	Z	m
Z d dlmZmZmZmZ ddlmZ eg ddeegeegd	Zeeeeee f f ed
< dZeed< edZeed< dZeed< i deddedddedddedddedddedddedddeddd edd!d"ed!d#d$ed#d%d&ed%d'd(ed'd)d*ed)d+d,ed+d-d.ed-d/d0ed/d1i d2ed1d3d4ed3d5d6ed5d7d8ed7d9d:ed;d<d=ed<d>d?ed>d@dAed@dBdCedBdDdEedDdFdGedFdHdIedHdJdKedJdLdMedLdNdOedNdPdQedPdRdSedRdTi dUedTdVdWedVdXdYedXdZd[edZd\d]ed\d^d_ed^d`daed`dbdcedbdddeedddfdgedfdhdiedhdjdkedjdldmedldndoedndpdqedpdrdsedrdtduedtdvi dwedvdxdyedxdzd{edzd|d}ed|d~ded~ddedddedddedddedddedddedddedddedddedddedddedddeddi dedddedddedddedddedddedddedddedddedddedddedddedddedddedddedddedddeddi dedddedddedddeddÃdeddŃdeddǃdeddɃdedd˃dedd̓deddσdeddуdeddӃdeddՃdedd׃deddكdeddۃdedd݃i dedd߃dedddedddedddedddedddedddedddedddedddedddedddedddedddedddedddedd i ded ddedddedddeddd	edd
ded
ddedddedddedddedddedddedddedddedddedddedd d!ed d"i d#ed"d$d%ed$d&d'ed&d(d)ed(d*d+ed*d,d-ed,d.d/ed.d0d1ed0d2d3ed2d4d5ed4d6d7ed6d8d9ed8d:d;ed:d<d=ed<d>d?ed>d@dAed@dBdCedBdDi dEedDdFdGedFdHdIedHdJdKedJdLdMedLdNdOedNdPdQedPdRdSedRdTdUedTdVdWedVdXdYedXdZd[edZd\d]ed\d^d_ed^d`daed`dbdcedbdddeedfdgi dhedgdidjedidkdledkdmdnedmdodpedodqdredqdsdtedsdudvedwdxdyedxdzd{edzd|d}ed|d~ded~ddedddedddedddedddeddi dedddedddedddedddedddedddedddedddedddedddedddedddedddedddedddedddeddi dedddedddedddedddedddedddeddÃdedÐdŃdedǐdȃdedȐdʃdedʐd̃dedΐdσdedϐdуdedӐdԃdedԐdփded֐d؃dedؐdڃi dedܐd݃dedߐddedddedddedddedddedddedddedddedddedddedddedddedd ded ddedddeddi ded	d
dedddedddedddedddedddedddedddeddded d!d"ed!d#d$ed#d%d&ed'd(d)ed(d*d+ed,d-d.ed-d/d0ed1d2i d3ed4d5d6ed7d8d9ed:d;d<ed=d>d?ed>d@dAed@dBdCedBdDdEedDdFdGedFdHdIedHdJdKedJdLdMedLdNdOedNdPdQedPdRdSedRdTdUedTdVdWedXdYedZd[ed[d\ed\d]ed]d^ed_d`edadbedcdddeZeeef edf< g dgZee edh< edie	Zee djdk e!e"e# Z$ee edl< e%e$Z&eedm< i dng dodpg dqdrdsgdtg dudvdwgdxdydzgd{g d|d}d~gdg d|ddgdg ddg ddg ddg ddg ddg ddg di dg ddg ddg ddg ddsdrgdg dddgddgdg ddg ddg ddwg ddg ddg dd~d}gdg ddydxdzgg dddgddgddgdxdygdgdZ'eeee f ed< i dddddddddddddddddwdddddd~dÓdĐdœdƐdǓdȐdɓdʐd˓d̐d͓dΐdϐdАdѐdҐdӐdԐdՐd֐dאdؐdِdڐdېdܐdݜZ(eeef ed< h dߣZ)ee ed< h dZ*ee ed< h dZ+ee ed< edZ,e%eZ-eed< dZ.eed< dS (      )BOM_UTF8BOM_UTF16_BEBOM_UTF16_LEBOM_UTF32_BEBOM_UTF32_LE)aliases)
IGNORECASEcompile)DictListSetUnion   )FREQUENCIES)s   +/v8s   +/v9s   +/v+s   +/v/s   +/v8-s   13)utf_8utf_7gb18030utf_32utf_16ENCODING_MARKS    TOO_SMALL_SEQUENCEg    cATOO_BIG_SEQUENCEi  UTF8_MAXIMAL_ALLOCATIONzControl characterzBasic Latin   zLatin-1 Supplement   zLatin Extended-Ai  zLatin Extended-BiP  zIPA Extensionsi  zSpacing Modifier Lettersi   zCombining Diacritical Marksip  zGreek and Coptici   Cyrillici   zCyrillic Supplementi0  ZArmeniani  Hebrewi   Arabici   ZSyriaciP  zArabic Supplementi  ZThaanai  ZNKoi   Z	Samaritani@  ZMandaici`  zSyriac Supplementip  zArabic Extended-Ai  i 	  
Devanagarii	  ZBengalii 
  ZGurmukhii
  ZGujaratii   ZOriyai  ZTamili   ZTelugui  ZKannadai   Z	Malayalami  ZSinhalai   Thaii  ZLaoi   ZTibetani   ZMyanmari  ZGeorgiani   zHangul Jamoi   ZEthiopici  zEthiopic Supplementi  ZCherokeei   z%Unified Canadian Aboriginal Syllabicsi  ZOghami  ZRunici   ZTagalogi   ZHanunooi@  ZBuhidi`  ZTagbanwai  ZKhmeri   Z	Mongoliani  z.Unified Canadian Aboriginal Syllabics Extendedi   ZLimbuiP  zTai Lei  zNew Tai Luei  zKhmer Symbolsi   ZBuginesei   zTai Thami  z$Combining Diacritical Marks Extendedi   ZBalinesei  Z	Sundanesei  ZBataki   ZLepchaiP  zOl Chikii  zCyrillic Extended Ci  zSundanese Supplementi  i  zVedic Extensionsi   zPhonetic Extensionsi  zPhonetic Extensions Supplementi  z&Combining Diacritical Marks Supplementi   zLatin Extended Additionali   zGreek Extendedi    zGeneral Punctuationip   zSuperscripts and Subscriptsi   zCurrency Symbolsi   z'Combining Diacritical Marks for Symbolsi !  zLetterlike SymbolsiP!  zNumber Formsi!  ZArrowsi "  zMathematical Operatorsi #  zMiscellaneous Technicali $  zControl Picturesi@$  zOptical Character Recognitioni`$  zEnclosed Alphanumericsi %  zBox Drawingi%  zBlock Elementsi%  zGeometric Shapesi &  zMiscellaneous Symbolsi '  ZDingbatsi'  z$Miscellaneous Mathematical Symbols-Ai'  zSupplemental Arrows-Ai (  zBraille Patternsi )  zSupplemental Arrows-Bi)  z$Miscellaneous Mathematical Symbols-Bi *  z#Supplemental Mathematical Operatorsi +  z Miscellaneous Symbols and Arrowsi ,  Z
Glagolitici`,  zLatin Extended-Ci,  ZCoptici -  zGeorgian Supplementi0-  ZTifinaghi-  zEthiopic Extendedi-  zCyrillic Extended-Ai .  zSupplemental Punctuationi.  zCJK Radicals Supplementi /  zKangxi Radicalsi/  z"Ideographic Description Charactersi/  i 0  zCJK Symbols and Punctuationi@0  Hiraganai0  Katakanai 1  ZBopomofoi01  zHangul Compatibility Jamoi1  ZKanbuni1  zBopomofo Extendedi1  zCJK Strokesi1  zKatakana Phonetic Extensionsi 2  zEnclosed CJK Letters and Monthsi 3  zCJK Compatibilityi 4  z"CJK Unified Ideographs Extension AiM  zYijing Hexagram Symbolsi N  zCJK Unified Ideographsi   zYi Syllablesi  zYi RadicalsiФ  ZLisui   ZVaii@  zCyrillic Extended-Bi  ZBamumi   zModifier Tone Lettersi   zLatin Extended-Di   zSyloti Nagrii0  zCommon Indic Number Formsi@  zPhags-pai  Z
Saurashtrai  zDevanagari Extendedi   zKayah Lii0  ZRejangi`  zHangul Jamo Extended-Ai  ZJavanesei  zMyanmar Extended-Bi   ZChami`  zMyanmar Extended-Ai  zTai Vieti  zMeetei Mayek Extensionsi   zEthiopic Extended-Ai0  zLatin Extended-Eip  zCherokee Supplementi  zMeetei Mayeki   zHangul Syllablesi  zHangul Jamo Extended-Bi   zHigh Surrogatesi  zHigh Private Use Surrogatesi   zLow Surrogatesi   zPrivate Use Areai   zCJK Compatibility Ideographsi   zAlphabetic Presentation FormsiP  zArabic Presentation Forms-Ai   zVariation Selectorsi  zVertical Formsi   zCombining Half Marksi0  zCJK Compatibility FormsiP  zSmall Form Variantsip  zArabic Presentation Forms-Bi   zHalfwidth and Fullwidth Formsi  ZSpecialsi   zLinear B Syllabaryi  zLinear B Ideogramsi  zAegean Numbersi@ zAncient Greek Numbersi zAncient Symbolsi zPhaistos Disci  ZLyciani i ZCariani zCoptic Epact Numbersi  z
Old Italici0 ZGothiciP z
Old Permici ZUgaritici zOld Persiani ZDesereti  iP ZShaviani ZOsmanyai ZOsagei  ZElbasani0 zCaucasian Albanianip zLinear Ai  i zCypriot Syllabaryi  i@ zImperial Aramaici` Z	Palmyrenei Z	Nabataeani ZHatrani i 	 Z
Phoeniciani 	 ZLydiani@	 zMeroitic Hieroglyphsi	 i	 zMeroitic Cursivei 
 Z
Kharoshthii`
 zOld South Arabiani
 zOld North Arabiani
 Z
Manichaeani
 i  ZAvestani@ zInscriptional Parthiani` zInscriptional Pahlavii zPsalter Pahlavii z
Old Turkici  iP zOld Hungariani i  zRumi Numeral Symbolsi` i ZBrahmii  i ZKaithii zSora Sompengi  ZChakmaiP ZMahajanii ZSharadai zSinhala Archaic Numbersi  ZKhojkiiP ZMultanii i Z	Khudawadii  ZGranthai ZNewai  i ZTirhutai ZSiddhami i  ZModii` zMongolian Supplementi ZTakrii ZAhomi  i@ zWarang Citii i  zZanabazar Squarei  iP ZSoyomboi zPau Cin Haui i  Z	Bhaiksukii  ip ZMarcheni zMasaram Gondii  i` Z	Cuneiformi   i $ z!Cuneiform Numbers and Punctuationi$ zEarly Dynastic CuneiformiP% zEgyptian Hieroglyphsi 0 i04 zAnatolian Hieroglyphsi D iF zBamum Supplementi h i@j ZMroipj z	Bassa Vahij i k zPahawh Hmongik ZMiaoi o io z#Ideographic Symbols and Punctuationio i p ZTanguti  zTangut Componentsi  zKana Supplementi  i  zKana Extended-Ai0 ZNushuip i  ZDuployani  i zShorthand Format Controlsi zByzantine Musical Symbolsi  i  zMusical Symbolsi  zAncient Greek Musical NotationiP zTai Xuan Jing Symbolsi  i` zCounting Rod Numeralsi z!Mathematical Alphanumeric Symbolsi  i  zSutton SignWritingi zGlagolitic Supplementi  i0 zMende Kikakuii  i ZAdlami  i` z&Arabic Mathematical Alphabetic Symbolsi  i  zMahjong Tilesi  i0 zDomino Tilesi zPlaying Cardsi  z Enclosed Alphanumeric Supplementi  zEnclosed Ideographic Supplementi  z%Miscellaneous Symbols and Pictographsi  zEmoticons range(Emoji)iP zOrnamental Dingbatsi zTransport and Map Symbolsi  zAlchemical Symbolsi zGeometric Shapes Extendedi  zSupplemental Arrows-Ci  z$Supplemental Symbols and Pictographsi  z"CJK Unified Ideographs Extension Bi   i i  i@ i  i i i  i  i   i  i  i )z"CJK Unified Ideographs Extension Cz"CJK Unified Ideographs Extension Dz"CJK Unified Ideographs Extension Ez"CJK Unified Ideographs Extension Fz'CJK Compatibility Ideographs SupplementTagszVariation Selectors SupplementUNICODE_RANGES_COMBINED)Z
SupplementZExtendedZ
ExtensionsZModifierZMarksZPunctuationZSymbolsZFormsZ	OperatorsZMiscellaneousZDrawingZBlockZShapesZSupplementalr#   UNICODE_SECONDARY_RANGE_KEYWORDz^(?:(?:encoding)|(?:charset)|(?:coding))(?:[\:= ]{1,10})(?:[\"\']?)([a-zA-Z0-9\-_]+)(?:[\"\']?)c                 C   s   |  ddu o
| dvS )NZ_codecF>   mbcstactisrot_13)endswith)x r+   ?usr/lib/python3.10/site-packages/charset_normalizer/constant.py<lambda>P  s    r-   IANA_SUPPORTEDIANA_SUPPORTED_COUNTcp037)cp1026cp1140cp273cp500r1   )r0   r2   r3   r4   cp1125cp866r2   )r0   r1   r3   r4   cp1250	iso8859_2cp1251kz1048ptcp154cp1252)
iso8859_15	iso8859_9latin_1cp1253	iso8859_7cp1254cp1257
iso8859_13r3   )r0   r1   r2   r4   cp437)cp850cp858cp860cp861cp862cp863cp865r4   )r0   r1   r2   r3   rF   )rE   cp857rG   rL   rM   )rF   rG   rL   rG   )rE   rF   rM   rL   rH   )rE   rI   rJ   rK   rL   rI   )rE   rH   rJ   rK   rL   rJ   )rE   rH   rI   rK   rL   rK   )rE   rH   rI   rJ   rL   rL   )rE   rF   rM   rG   rH   rI   rJ   rK   
iso8859_10)
iso8859_14r=   	iso8859_4r>   r?   
iso8859_11tis_620rO   )rN   r=   
iso8859_16	iso8859_3r>   r?   r=   )r<   rB   rN   rO   rS   rT   r>   r?   rS   )rO   r=   r8   rT   r>   r?   )r7   rS   rP   rT   )rO   r=   rS   r>   r?   rP   )rN   r8   r>   r?   r>   )
r<   rB   cp1258rN   rO   r=   rS   rT   rP   r?   )
r<   rB   rU   rN   rO   r=   rS   rT   rP   r>   	mac_romanmac_turkishmac_iceland)r?   rX   rV   rW   r;   rR   IANA_SUPPORTED_SIMILAR
iso2022_krzISO-2022-KR
iso2022_jpzISO-2022-JPeuc_krzEUC-KRzTIS-620r   zUTF-32euc_jpzEUC-JPkoi8_rzKOI8-R	iso8859_1z
ISO-8859-1z
ISO-8859-2	iso8859_5z
ISO-8859-5	iso8859_6z
ISO-8859-6z
ISO-8859-7	iso8859_8z
ISO-8859-8r   zUTF-16cp855ZIBM855mac_cyrillicZMacCyrillicgb2312ZGB2312ZGB18030ZCP932ZIBM866zutf-8z	UTF-8-SIGZ	SHIFT_JISZBig5zwindows-1250zwindows-1251zWindows-1252zwindows-1253zwindows-1255zwindows-1256zWindows-1254ZCP949)r   cp932r6   r   Z	utf_8_sig	shift_jisbig5r7   r9   r<   r@   cp1255cp1256rB   cp949CHARDET_CORRESPONDENCE>   {;/[|"=,-<:&>]}COMMON_SAFE_ASCII_CHARACTERS>   rk   r\   johabKO_NAMES>   rh   cp950	big5hkscshzZH_NAMESz[0-9\W\n\r\t]+LANGUAGE_SUPPORTED_COUNT   TRACEN)/codecsr   r   r   r   r   Zencodings.aliasesr   rer   r	   Z
re_compiletypingr
   r   r   r   Zassetsr   r   strbytes__annotations__r   intr   r   ranger$   r%   ZRE_POSSIBLE_ENCODING_INDICATIONsortedfilterlistsetvaluesr.   lenr/   rY   rl   r|   r~   r   ZNOT_PRINTABLE_PATTERNr   r   r+   r+   r+   r,   <module>   s(   "







	























 
!
"
#
$
%
&
'
(
)
*
+
,
-
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
@
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
[
\
]
^
_
`
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
vwxyz{|}~                 	  
                                               !  "  #  $  %  &  '  (  )  *  +  ,  -  .  /  0  1  2  3  4  5  6  7  8  9  :  ;  <  =  >  ?  @  A  B  C  D  E  F  G  H  I  J  K  L  M  N  O  P  Q  R  S  T  U  V  W  X  Y  Z  [  \  ]  ^  _  `  a  b  c  d  e  f  g  h  i  j  k  l  m  n  o  p  q  r  s  t  u  v  w  x  y  z  {  |  }  ~                                     	    
                                        



	




",456
78DE



 Y	
$
