U
    bK                    @   s  d dl mZmZmZmZmZ d dl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defd	d
ddddgfddeegfdeegfgZdZedZdZededdeddeddeddeddeddeddeddeddeddeddedd ed d!ed!d"ed"d#ed#d$ed$d%ed%d&ed&d'ed'd(ed)d*ed*d+ed+d,ed,d-ed-d.ed.d/ed/d0ed0d1ed1d2ed2d3ed3d4ed4d5ed5d6ed6d7ed7d8ed8d9ed9d:ed:d;ed;d<ed<d=ed=d>ed>d?ed?d@ed@dAedAdBedBdCedCdDedDdEedEdFedFdGedGdHedHdIedIdJedJdKedKdLedLdMedMdNedNdOedOdPedPdQedQdRedRdSedSdTedUdVedVdWedWdXedXdYedYdZedZd[ed[d\ed\d]ed]d^ed^d_ed_d`ed`daedadbedbdcedcddedddeededfedfdgedgdhedhdiedidjedjdkedkdledldmedmdnedndoedodpedpdqedqdredrdsedsdtedtduedudvedvdwedwdxedxdyedydzedzd{ed{d|ed|d}ed}d~eddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddÃeddăeddŃeddƃeddǃeddȃeddʃedd˃edd̃edd̓edd΃eddσeddуeddӃeddԃeddՃeddփedd؃eddكeddڃedd܃edd݃eddރedd߃eddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddedd ed deddeddeddedded	d
eddeddeddeddeddeddeddeddeddeddeddeddedded d!ed!d"ed"d#ed$d%ed%d&ed'd(ed)d*ed*d+ed,d-ed-d.ed.d/ed0d1ed1d2ed3d4ed4d5ed6d7ed8d9ed:d;ed<d=ed>d?ed?d@ed@dAedAdBedBdCedCdDedDdEedEdFedFdGedGdHedHdIedIdJedJdKedLdMedNdOedOdPedPdQedQdRedSdTedUdVedWdXdYZdZd[d\d]d^d_d`dadbdcdddedfdgdhgZedieZeedjdk e e!e	" Z#e$e#Z%dldmdndogdpdmdndogdqgdpdldndogdrgdsdtgdudvdwgdxgdudvdwgdygdpdldmdogdzd{d|d}d~ddgdpdldmdngddd{dgdzd{dgddzddgdd}d~ddgdd|d~ddgdd|d}ddgdd|d}d~dgddzdd{d|d}d~dgdgdduddvdwgdgdgddudddvdwgdddddddvdwgddudrddvdwgdddgdduddvdwgddrdvdwgdgdddddduddddwg
ddtgdddddduddddvg
ddgddgddgddsgdgd(Z&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'dddddddddddddÐdĐdhZ(dƐdǐdhZ)dɐdʐdːdhZ*ed̓Z+e$eZ,dZ-dS (      )BOM_UTF8BOM_UTF16_BEBOM_UTF16_LEBOM_UTF32_BEBOM_UTF32_LE)OrderedDict)aliases)
IGNORECASEcompile)DictListSetUnion   )FREQUENCIESutf_8utf_7s   +/v8s   +/v9s   +/v+s   +/v/s   +/v8-)gb18030s   13utf_32utf_16    g    cAi        i  iP  i  i   ip  i   i   i0  i  i   i   iP  i  i  i   i@  i`  ip  i  i 	  i	  i 
  i
  i   i  i   i  i   i  i   i  i   i   i  i   i   i  i  i   i  i  i   i   i@  i`  i  i   i  i   iP  i  i  i   i   i  i   i  i  i   iP  i  i  i  i  i   i  i  i   i   i    ip   i   i   i !  iP!  i!  i "  i #  i $  i@$  i`$  i %  i%  i%  i &  i '  i'  i'  i (  i )  i)  i *  i +  i ,  i`,  i,  i -  i0-  i-  i-  i .  i.  i /  i/  i/  i 0  i@0  i0  i 1  i01  i1  i1  i1  i1  i 2  i 3  i 4  iM  i N  i   i  iФ  i   i@  i  i   i   i   i0  i@  i  i  i   i0  i`  i  i  i   i`  i  i  i   i0  ip  i  i   i  i   i  i   i   i   i   iP  i   i  i   i0  iP  ip  i   i  i   i  i  i@ i i i  i i i i  i0 iP i i i i  iP i i i  i0 ip i  i i  i@ i` i i i i 	 i 	 i@	 i	 i	 i 
 i`
 i
 i
 i
 i  i@ i` i i i  iP i i  i` i i  i i i  iP i i i  iP i i i  i i  i i i i  i` i i i  i@ i i  i  iP i i i  i  ip i i  i` i   i $ i$ iP% i 0 i04 i D iF i h i@j ipj ij i k ik i o io io i p i  i  i  i  i0 ip i  i  i i i  i  i  iP i  i` i i  i  i i  i0 i  i i  i` i  i  i  i0 i i  i  i  i  iP i i  i i  i  i  i   i i  i@ i  i i i  i  i   i  i  i (  zControl characterzBasic LatinzLatin-1 SupplementzLatin Extended-AzLatin Extended-BzIPA ExtensionszSpacing Modifier LetterszCombining Diacritical MarkszGreek and CopticCyrilliczCyrillic SupplementZArmenianHebrewArabicZSyriaczArabic SupplementZThaanaZNKoZ	SamaritanZMandaiczSyriac SupplementzArabic Extended-A
DevanagariZBengaliZGurmukhiZGujaratiZOriyaZTamilZTeluguZKannadaZ	MalayalamZSinhalaThaiZLaoZTibetanZMyanmarZGeorgianzHangul JamoZEthiopiczEthiopic SupplementZCherokeez%Unified Canadian Aboriginal SyllabicsZOghamZRunicZTagalogZHanunooZBuhidZTagbanwaZKhmerZ	Mongolianz.Unified Canadian Aboriginal Syllabics ExtendedZLimbuzTai LezNew Tai LuezKhmer SymbolsZBuginesezTai Thamz$Combining Diacritical Marks ExtendedZBalineseZ	SundaneseZBatakZLepchazOl ChikizCyrillic Extended CzSundanese SupplementzVedic ExtensionszPhonetic ExtensionszPhonetic Extensions Supplementz&Combining Diacritical Marks SupplementzLatin Extended AdditionalzGreek ExtendedzGeneral PunctuationzSuperscripts and SubscriptszCurrency Symbolsz'Combining Diacritical Marks for SymbolszLetterlike SymbolszNumber FormsZArrowszMathematical OperatorszMiscellaneous TechnicalzControl PictureszOptical Character RecognitionzEnclosed AlphanumericszBox DrawingzBlock ElementszGeometric ShapeszMiscellaneous SymbolsZDingbatsz$Miscellaneous Mathematical Symbols-AzSupplemental Arrows-AzBraille PatternszSupplemental Arrows-Bz$Miscellaneous Mathematical Symbols-Bz#Supplemental Mathematical Operatorsz Miscellaneous Symbols and ArrowsZ
GlagoliticzLatin Extended-CZCopticzGeorgian SupplementZTifinaghzEthiopic ExtendedzCyrillic Extended-AzSupplemental PunctuationzCJK Radicals SupplementzKangxi Radicalsz"Ideographic Description CharacterszCJK Symbols and PunctuationHiraganaKatakanaZBopomofozHangul Compatibility JamoZKanbunzBopomofo ExtendedzCJK StrokeszKatakana Phonetic ExtensionszEnclosed CJK Letters and MonthszCJK Compatibilityz"CJK Unified Ideographs Extension AzYijing Hexagram SymbolszCJK Unified IdeographszYi SyllableszYi RadicalsZLisuZVaizCyrillic Extended-BZBamumzModifier Tone LetterszLatin Extended-DzSyloti NagrizCommon Indic Number FormszPhags-paZ
SaurashtrazDevanagari ExtendedzKayah LiZRejangzHangul Jamo Extended-AZJavanesezMyanmar Extended-BZChamzMyanmar Extended-AzTai VietzMeetei Mayek ExtensionszEthiopic Extended-AzLatin Extended-EzCherokee SupplementzMeetei MayekzHangul SyllableszHangul Jamo Extended-BzHigh SurrogateszHigh Private Use SurrogateszLow SurrogateszPrivate Use AreazCJK Compatibility IdeographszAlphabetic Presentation FormszArabic Presentation Forms-AzVariation SelectorszVertical FormszCombining Half MarkszCJK Compatibility FormszSmall Form VariantszArabic Presentation Forms-BzHalfwidth and Fullwidth FormsZSpecialszLinear B SyllabaryzLinear B IdeogramszAegean NumberszAncient Greek NumberszAncient SymbolszPhaistos DiscZLycianZCarianzCoptic Epact Numbersz
Old ItalicZGothicz
Old PermicZUgariticzOld PersianZDeseretZShavianZOsmanyaZOsageZElbasanzCaucasian AlbanianzLinear AzCypriot SyllabaryzImperial AramaicZ	PalmyreneZ	NabataeanZHatranZ
PhoenicianZLydianzMeroitic HieroglyphszMeroitic CursiveZ
KharoshthizOld South ArabianzOld North ArabianZ
ManichaeanZAvestanzInscriptional ParthianzInscriptional PahlavizPsalter Pahlaviz
Old TurkiczOld HungarianzRumi Numeral SymbolsZBrahmiZKaithizSora SompengZChakmaZMahajaniZSharadazSinhala Archaic NumbersZKhojkiZMultaniZ	KhudawadiZGranthaZNewaZTirhutaZSiddhamZModizMongolian SupplementZTakriZAhomzWarang CitizZanabazar SquareZSoyombozPau Cin HauZ	BhaiksukiZMarchenzMasaram GondiZ	Cuneiformz!Cuneiform Numbers and PunctuationzEarly Dynastic CuneiformzEgyptian HieroglyphszAnatolian HieroglyphszBamum SupplementZMroz	Bassa VahzPahawh HmongZMiaoz#Ideographic Symbols and PunctuationZTangutzTangut ComponentszKana SupplementzKana Extended-AZNushuZDuployanzShorthand Format ControlszByzantine Musical SymbolszMusical SymbolszAncient Greek Musical NotationzTai Xuan Jing SymbolszCounting Rod Numeralsz!Mathematical Alphanumeric SymbolszSutton SignWritingzGlagolitic SupplementzMende KikakuiZAdlamz&Arabic Mathematical Alphabetic SymbolszMahjong TileszDomino TileszPlaying Cardsz Enclosed Alphanumeric SupplementzEnclosed Ideographic Supplementz%Miscellaneous Symbols and PictographszEmoticons range(Emoji)zOrnamental DingbatszTransport and Map SymbolszAlchemical SymbolszGeometric Shapes ExtendedzSupplemental Arrows-Cz$Supplemental Symbols and Pictographsz"CJK Unified Ideographs Extension Bz"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 SupplementZ
SupplementZExtendedZ
ExtensionsZModifierZMarksZPunctuationZSymbolsZFormsZ	OperatorsZMiscellaneousZDrawingZBlockZShapesZSupplementalr    z^(?:(?:encoding)|(?:charset)|(?:coding))(?:[\:= ]{1,10})(?:[\"\']?)([a-zA-Z0-9\-_]+)(?:[\"\']?)c                 C   s   |  ddko| dkS )NZ_codecF>   mbcstactisrot_13)endswith)x r&   ?/tmp/pip-unpacked-wheel-2ta4nrol/charset_normalizer/constant.py<lambda>V  s   r(   cp1026cp1140cp273cp500cp037cp866	iso8859_2kz1048ptcp154
iso8859_15	iso8859_9latin_1	iso8859_7
iso8859_13cp850cp858cp860cp861cp862cp863cp865cp437cp857cp1125
iso8859_14	iso8859_4tis_620cp1257
iso8859_10
iso8859_16	iso8859_3cp1252cp1254cp1250cp1253cp1258cp1251	mac_romanmac_turkishmac_iceland
iso8859_11)(r-   r)   r@   r*   rJ   rM   rH   rK   rI   rD   r+   r>   r,   r7   r?   r8   r9   r:   r;   r<   r=   r.   rE   rQ   r6   rA   r2   rF   r/   rG   rB   r5   r3   r0   r4   rP   rN   rO   r1   rC   zISO-2022-KRzISO-2022-JPzEUC-KRzTIS-620zUTF-32zEUC-JPzKOI8-Rz
ISO-8859-1z
ISO-8859-2z
ISO-8859-5z
ISO-8859-6z
ISO-8859-7z
ISO-8859-8zUTF-16IBM855MacCyrillicGB2312ZGB18030CP932IBM866zutf-8z	UTF-8-SIG	SHIFT_JISBig5zwindows-1250zwindows-1251zWindows-1252zwindows-1253zwindows-1255zwindows-1256zWindows-1254CP949) 
iso2022_kr
iso2022_jpeuc_krrC   r   euc_jpkoi8_r	iso8859_1r/   	iso8859_5	iso8859_6r5   	iso8859_8r   cp855mac_cyrillicgb2312r   cp932r.   r   Z	utf_8_sig	shift_jisbig5rJ   rM   rH   rK   cp1255cp1256rI   cp949<>=:/&;{}[],|"-johabrk   r\   rh   cp950	big5hkscshzz[0-9\W\n\r\t]+   N).codecsr   r   r   r   r   collectionsr   Zencodings.aliasesr   rer	   r
   Z
re_compiletypingr   r   r   r   Zassetsr   ZENCODING_MARKSZTOO_SMALL_SEQUENCEintZTOO_BIG_SEQUENCEZUTF8_MAXIMAL_ALLOCATIONrangeZUNICODE_RANGES_COMBINEDZUNICODE_SECONDARY_RANGE_KEYWORDZRE_POSSIBLE_ENCODING_INDICATIONsortedfilterlistsetvaluesZIANA_SUPPORTEDlenZIANA_SUPPORTED_COUNTZIANA_SUPPORTED_SIMILARZCHARDET_CORRESPONDENCEZCOMMON_SAFE_ASCII_CHARACTERSZKO_NAMESZZH_NAMESZNOT_PRINTABLE_PATTERNZLANGUAGE_SUPPORTED_COUNTTRACEr&   r&   r&   r'   <module>   s  



  
  

"	




Z%
