a
    |fL                    @   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< 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+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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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d{d|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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/d0ed0d1ed2d3ed4d5ed6d7ed8d9ed:d;ed;d<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dHdIedJdKedKdLedLdMedMdNedOdPedQdRedSdTdUZeeef edV< g dWZee edX< edYe	Zee dZd[ e!e"e# Z$ee ed\< e%e$Z&eed]< g d^g d_d`gg dadbgdcddgg dedfgg dedggg dhg dig djg dkg dlg dmg dng dog dpg dqg drdsgg dtdugdvgg dwg dxg dyg dzg d{g d|d}gg d~dddgg dddgddgddgddcgdgd(Z'eeee f e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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%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_ALLOCATION      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 CopticZCyrilliczCyrillic SupplementZArmenianHebrewZArabicZSyriaczArabic SupplementZThaanaZNKoZ	SamaritanZMandaiczSyriac SupplementzArabic Extended-AZ
DevanagariZBengaliZGurmukhiZGujaratiZOriyaZTamilZTeluguZKannadaZ	MalayalamZSinhalaZ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 SupplementUNICODE_RANGES_COMBINED)Z
SupplementZExtendedZ
ExtensionsZModifierZMarks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>   rot_13mbcstactis)endswith)x r(   UD:\Projects\storyit_web\backend\venv\Lib\site-packages\charset_normalizer/constant.py<lambda>P  s   r*   IANA_SUPPORTEDIANA_SUPPORTED_COUNT)cp1026cp1140cp273cp500)cp037r.   r/   r0   cp866)r1   r-   r/   r0   	iso8859_2kz1048ptcp154)
iso8859_15	iso8859_9latin_1	iso8859_7
iso8859_13)r1   r-   r.   r0   )cp850cp858cp860cp861cp862cp863cp865)r1   r-   r.   r/   )cp437cp857r<   rA   )r;   r<   rA   )rB   r;   rC   rA   )rB   r>   r?   r@   rA   )rB   r=   r?   r@   rA   )rB   r=   r>   r@   rA   )rB   r=   r>   r?   rA   )rB   r;   rC   r<   r=   r>   r?   r@   cp1125)
iso8859_14r6   	iso8859_4r7   r8   tis_620cp1257)
iso8859_10r6   
iso8859_16	iso8859_3r7   r8   )cp1252cp1254rI   rE   rJ   rK   r7   r8   )rE   r6   r3   rK   r7   r8   )cp1250rJ   rF   )rE   r6   rJ   r7   r8   )rI   r3   r7   r8   cp1253)
rL   rM   cp1258rI   rE   r6   rJ   rK   rF   r8   cp1251)
rL   rM   rP   rI   rE   r6   rJ   rK   rF   r7   	mac_romanmac_turkishmac_iceland
iso8859_11)(r1   r-   rD   r.   rN   rQ   rL   rO   rM   rH   r/   rB   r0   r;   rC   r<   r=   r>   r?   r@   rA   r2   rI   rU   r:   rE   r6   rJ   r3   rK   rF   r9   r7   r4   r8   rT   rR   rS   r5   rG   IANA_SUPPORTED_SIMILARz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-16ZIBM855ZMacCyrillicZ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) 
iso2022_kr
iso2022_jpeuc_krrG   r   euc_jpkoi8_r	iso8859_1r3   	iso8859_5	iso8859_6r9   	iso8859_8r   cp855mac_cyrillicgb2312r   cp932r2   r   Z	utf_8_sig	shift_jisbig5rN   rQ   rL   rO   cp1255cp1256rM   cp949CHARDET_CORRESPONDENCE>   }[|&/",]{-:=<>;COMMON_SAFE_ASCII_CHARACTERS>   rh   johabrY   KO_NAMES>   	big5hkscsre   hzcp950ZH_NAMES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,   rV   ri   ry   r{   r   r   r   r(   r(   r(   r)   <module>   s  "    







Z$