hyb
2026-01-30 7657e1b2fa251a2ea372710ad75cb395a3c0e374
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
Ë
ê^i(1ãó¸—ddlmZddlZddlZddlZddlmZddlmZddl    m
Z
ddl m Z ddl mZddlmZd    d
lmZmZmZmZmZmZmZe
e¬ «d+d „«Ze
e¬ «d,d „«Ze
e¬ «d-d„«Ze
e¬ «d+d„«Ze
e¬ «d+d„«Ze
e¬ «d+d„«Ze
e¬ «d+d„«Ze
e¬ «d+d„«Z e
e¬ «d+d„«Z!e
e¬ «d+d„«Z"e
e¬ «d+d„«Z#e
e¬ «d+d„«Z$e
e¬ «d+d„«Z%e
e¬ «d+d„«Z&e
e¬ «d+d„«Z'e
e¬ «d+d„«Z(e
e¬ «d+d„«Z)e
e*e«¬ «d.d„«Z+e
e¬ «d+d„«Z,d/d0d„Z-e
d ¬ «d1d!„«Z.d2d"„Z/d3d#„Z0d4d5d$„Z1d6d%„Z2d7d&„Z3d'ejhd(f                            d8d)„Z5    d9                                                                            d:d*„Z6y);é)Ú annotationsN)ÚIncrementalDecoder)Úaliases)Ú    lru_cache)Úfindall)Ú    Generator)ÚMultibyteIncrementalDecoderé)ÚENCODING_MARKSÚIANA_SUPPORTED_SIMILARÚRE_POSSIBLE_ENCODING_INDICATIONÚUNICODE_RANGES_COMBINEDÚUNICODE_SECONDARY_RANGE_KEYWORDÚUTF8_MAXIMAL_ALLOCATIONÚCOMMON_CJK_CHARACTERS)Úmaxsizec󨗠   tj|«}d|vxs(d|vxs"d|vxsd|vxsd|vxsd|vxs
d|vxsd    |vS#t$rYywxYw)
NFz
WITH GRAVEz
WITH ACUTEz WITH CEDILLAzWITH DIAERESISzWITH CIRCUMFLEXz
WITH TILDEz WITH MACRONzWITH RING ABOVE©Ú unicodedataÚnameÚ
ValueError©Ú    characterÚ descriptions  õkH:\项目\archive\测试组\脚本\Change_password\venv_build\Lib\site-packages\charset_normalizer/utils.pyÚis_accentuatedrsŸ€ðÜ&×+Ñ+¨IÓ6ˆ ð    ˜ Ð#ò    ,Ø ˜;Ð &ò    ,à ˜[Ð (ò    ,ð ˜{Ð *ò    ,ð   Ð +ò        ,ð
˜;Ð &ò     ,ð ˜KÐ 'ò     ,ð   Ð +ð    øô òÙðús‚AÁ    AÁAcó†—tj|«}|s|S|jd«}tt    |dd««S)Nú ré)rÚ decompositionÚsplitÚchrÚint)rÚ
decomposedÚcodess   rÚ remove_accentr&-sA€ä!×/Ñ/°    Ó:€JÙ ØÐà!×'Ñ'¨Ó,€Eä Œs5˜‘8˜RÓ Ó !Ð!ócób—t|«}tj«D] \}}||vsŒ |cSy)zK
    Retrieve the Unicode range official name from a single character.
    N)ÚordrÚitems)rÚ character_ordÚ
range_nameÚ    ord_ranges    rÚ unicode_ranger.8s=€ô
˜Y›€Mä!8×!>Ñ!>Ó!@òш
IØ ˜IÒ %ØÒ ðð r'cóT—    tj|«}d|vS#t$rYywxYw)NFÚLATINrrs  rÚis_latinr1Fs8€ðÜ&×+Ñ+¨IÓ6ˆ ð kÐ !Ð!øô òÙðúó ‚›    '¦'cóZ—tj|«}d|vryt|«}|€yd|vS)NÚPTFÚ Punctuation©rÚcategoryr.©rÚcharacter_categoryÚcharacter_ranges   rÚis_punctuationr;Os=€ä)×2Ñ2°9Ó=Ðà
РѠØä"/°    Ó":€OàÐØà ˜OÐ +Ð+r'cóp—tj|«}d|vsd|vryt|«}|€yd|vxr|dk7S)NÚSÚNTFÚFormsÚLor6r8s   rÚ    is_symbolrA^sP€ä)×2Ñ2°9Ó=Ðà
РѠ CÐ+=Ñ$=Øä"/°    Ó":€OàÐØà oÐ %Ò DÐ*<ÀÑ*DÐDr'có2—t|«}|€yd|vxsd|vS)NFÚ    EmoticonsÚ Pictographs)r.)rr:s  rÚ is_emoticonrEms*€ä"/°    Ó":€OàÐØà ˜/Ð )Ò M¨]¸oÐ-MÐMr'cój—|j«s|dvrytj|«}d|vxs|dvS)N>õ|ú+ú<ú>TÚZ>ÚPcÚPdÚPo)Úisspacerr7)rr9s  rÚ is_separatorrPwsB€à×ÑÔ˜iÐ+AÑAØä)×2Ñ2°9Ó=Ðà Ð$Ð $Ò PÐ(:Ð>PÐ(PÐPr'cóD—|j«|j«k7S©N)ÚislowerÚisupper©rs rÚis_case_variablerVs€à × Ñ Ó  )×"3Ñ"3Ó"5Ñ 5Ð5r'cóT—    tj|«}d|vS#t$rYywxYw)NFÚCJKr©rÚcharacter_names  rÚis_cjkr[†s8€ðÜ$×)Ñ)¨)Ó4ˆð NÐ "Ð"øô òÙðúr2cóT—    tj|«}d|vS#t$rYywxYw)NFÚHIRAGANArrYs  rÚ is_hiraganar^ó8€ðÜ$×)Ñ)¨)Ó4ˆð ˜Ð 'Ð'øô òÙðúr2cóT—    tj|«}d|vS#t$rYywxYw)NFÚKATAKANArrYs  rÚ is_katakanarbšr_r2cóT—    tj|«}d|vS#t$rYywxYw)NFÚHANGULrrYs  rÚ    is_hangulre¤ó8€ðÜ$×)Ñ)¨)Ó4ˆð ~Ð %Ð%øô òÙðúr2cóT—    tj|«}d|vS#t$rYywxYw)NFÚTHAIrrYs  rÚis_thairi®s8€ðÜ$×)Ñ)¨)Ó4ˆð ^Ð #Ð#øô òÙðúr2cóT—    tj|«}d|vS#t$rYywxYw)NFÚARABICrrYs  rÚ    is_arabicrl¸rfr2có`—    tj|«}d|vxrd|vS#t$rYywxYw)NFrkz ISOLATED FORMrrYs  rÚis_arabic_isolated_formrnÂsB€ðÜ$×)Ñ)¨)Ó4ˆð ~Ð %Ò K¨/¸^Ð*KÐKøô òÙðús ‚!¡    -¬-có—|tvSrR)rrUs rÚis_cjk_uncommonrpÌs€à Ô1Ð 1Ð1r'có4‡—tˆfd„tD««S)Nc3ó&•K—|]}|‰v–—Œ
y­wrR©)Ú.0Úkeywordr,s  €rú    <genexpr>z-is_unicode_range_secondary.<locals>.<genexpr>Ósøèø€ÒT¨ˆw˜*Ô$ÑTùsƒ)Úanyr)r,s`rÚis_unicode_range_secondaryrxÑsø€ä ÓTÔ4SÔTÓ TÐTr'cój—|j«duxr |j«duxr |dk7xr|dk7S)NFúu)rOÚ isprintablerUs rÚis_unprintabler|ÖsL€ð    ×ÑÓ˜uÐ$ò    "Ø × !Ñ !Ó # uÐ ,ò    "à ˜Ñ ò    "ð ˜Ñ !ð    r'c    ór—t|t«st‚t|«}t    t
|dt ||«jdd¬««}t|«dk(ry|D]T}|j«jdd«}tj«D]\}}||k(r|ccS||k(sŒ|ccSŒVy)zW
    Extract using ASCII-only decoder any specified encoding in the first n-bytes.
    NÚasciiÚignore©Úerrorsrú-Ú_) Ú
isinstanceÚbytesÚ    TypeErrorÚlenrr ÚminÚdecodeÚlowerÚreplacerr*)ÚsequenceÚ search_zoneÚseq_lenÚresultsÚspecified_encodingÚencoding_aliasÚ encoding_ianas       rÚany_specified_encodingr“ásǀô h¤Ô &܈äx“=€Gä Ü'ØÐ,”3w  Ó,Ð-×4Ñ4°WÀXÐ4ÓNó€Gô
 ˆ7ƒ|qÒØà%ò
%ÐØ/×5Ñ5Ó7×?Ñ?ÀÀSÓIÐô
.5¯]©]«_ò    %Ñ )ˆN˜MØÐ!3Ò3Ø$Ô$ØР2Ó2Ø$Ô$ñ        %ð
%ð r'é€cón—|dvxs0ttjd|›«jt«S)zQ
    Verify is a specific encoding is a multi byte one based on it IANA name
    >    Úutf_7Úutf_8Úutf_16Úutf_32Ú    utf_16_beÚ    utf_16_leÚ    utf_32_beÚ    utf_32_leÚ    utf_8_sigú
encodings.)Ú
issubclassÚ    importlibÚ import_modulerr    )rs rÚis_multi_byte_encodingr£sC€ð
ð
ò ô
Ü×Ñ *¨T¨FР3Ó4×GÑGÜ#ó
ð r'có’—tD]>}t|}t|t«r|g}|D]}|j|«sŒ||fccSŒ@y)z9
    Identify and extract SIG/BOM in given sequence.
    )Nr')r r„r…Ú
startswith)rŒÚ iana_encodingÚmarksÚmarks    rÚidentify_sig_or_bomr©s[€ô
(ò+ˆ Ü%3°MÑ%Bˆä eœUÔ #ؐGˆEàò    +ˆDØ×"Ñ" 4Õ(Ø$ dÐ*Ô*ñ    +ð +ð r'có
—|dvS)N>r˜r™rs)r¦s rÚshould_strip_sig_or_bomr«(s€Ø Р4Ð 4Ð4r'có´—|j«jdd«}tj«D]\}}|||fvsŒ |cS|rt    d|›d«‚|S)zIReturns the Python normalized encoding name (Not the IANA official name).r‚rƒzUnable to retrieve IANA for 'ú')rŠr‹rr*r)Úcp_nameÚstrictr‘r’s    rÚ    iana_namer°,sh€àm‰m‹o×%Ñ% c¨3Ó/€Gô
*1¯©«ò!Ñ%ˆ˜ Ø ~ }Ð5Ò 5Ø Ò  ð!ñÜÐ8¸¸    ÀÐCÓDÐDà €Nr'cót—t|«s t|«rytjd|›«j}tjd|›«j}|d¬«}|d¬«}d}t    d«D]7}t |g«}|j |«|j |«k(sŒ3|dz }Œ9|dz S)    NgrŸrr€réÿr
éþ)r£r¡r¢rÚranger…r‰)    Ú iana_name_aÚ iana_name_bÚ    decoder_aÚ    decoder_bÚid_aÚid_bÚcharacter_match_countÚiÚ to_be_decodeds             rÚ cp_similarityr¾=s¹€Ü˜kÔ*Ô.DÀ[Ô.QØä×'Ñ'¨*°[°MÐ(BÓC×VÑV€IÜ×'Ñ'¨*°[°MÐ(BÓC×VÑV€Iá(°Ô9€DÙ(°Ô9€Dà!"Ðä 3‹Zò'ˆÜ$ a S›zˆ Ø ;‰;}Ó %¨¯©°]Ó)CÓ CØ ! QÑ &Ñ !ð'ð
! 3Ñ &Ð&r'có,—|tvxr |t|vS)zŽ
    Determine if two code page are at least 80% similar. IANA_SUPPORTED_SIMILAR dict was generated using
    the function cp_similarity.
    )r )rµr¶s  rÚ is_cp_similarrÀQs%€ð     Ô-Ð-ò    ?Ø Ô1°+Ñ>Ð >ðr'Úcharset_normalizerz)%(asctime)s | %(levelname)s | %(message)scóâ—tj|«}|j|«tj«}|j    tj
|««|j |«yrR)ÚloggingÚ    getLoggerÚsetLevelÚ StreamHandlerÚ setFormatterÚ    FormatterÚ
addHandler)rÚlevelÚ format_stringÚloggerÚhandlers     rÚset_logging_handlerrÎ\sU€ô
× Ñ ˜tÓ $€FØ
‡OOEÔä×#Ñ#Ó%€GØ ×Ñœ×*Ñ*¨=Ó9Ô:Ø
×ѐgÕr'c    #óšK—|r|dur|D]}    ||    |    |z}
|
sy|
–—Œy|D]¤}    |    |z} | t|«dzkDrŒ||    |    |z} |r    |dur|| z} | j||rdnd¬«}
|r[|    dkDrVt|d«} |rH|
d| |vrAt|    |    dz
d    «D].}||| } |r    |dur|| z} | j|d¬«}
|
d| |vsŒ.n|
–—Œ¦y­w)
NFérr¯r€rrééÿÿÿÿ)r‡r‰rˆr´)Ú    sequencesr’ÚoffsetsÚ
chunk_sizeÚbom_or_sig_availableÚstrip_sig_or_bomÚ sig_payloadÚis_multi_byte_decoderÚdecoded_payloadr¼ÚchunkÚ    chunk_endÚ cut_sequenceÚchunk_partial_size_chkÚjs               rÚcut_sequence_chunksràisKèø€ñÐ0°EÑ9Øò    ˆAØ# A¨¨J©Ð7ˆEÙÙØ‹Kñ        ð ò#    ˆAؘJ™ˆIØœ3˜y›>¨AÑ-Ò-Øà$ Q¨¨Z©Ð8ˆLá#Ð(8¸EÑ(AØ*¨\Ñ9 à ×'Ñ'ØÙ#8‘x¸hð(óˆEñ%¨¨QªÜ.1°*¸bÓ.AÐ&ñ$ØÐ5Ð5Ð6¸oÑMä" 1 a¨!¡e¨RÓ0ò    "˜Ø'0°°9Ð'=˜ á/Ð4DÈÑ4MØ+6¸Ñ+E˜Là ,× 3Ñ 3°MÈ(Р3Ó S˜à Ð!8Ð"8Ð9¸_ÒLÙ!ð    "ð‹KñG#    ùs ‚B>C Ã
C )rÚstrÚreturnÚbool)rrárârá)rrárâú
str | None)r,rárârã)i )rŒr…rr#rârä)rrárârã)rŒr…râztuple[str | None, bytes])r¦rárârã)T)r®rár¯rãrârá)rµrár¶rárâÚfloat)rµrár¶rárârã)rrárÊr#rËrárâÚNonerR)rÓr…r’rárÔr´rÕr#rÖrãr×rãrØr…rÙrãrÚrärâzGenerator[str, None, None])7Ú
__future__rr¡rÃrÚcodecsrÚencodings.aliasesrÚ    functoolsrÚrerÚtypingrÚ_multibytecodecr    Úconstantr r r rrrrrr&r.r1r;rArErPrVr[r^rbrerirlrnrpr‡rxr|r“r£r©r«r°r¾rÀÚINFOrÎràrsr'rú<module>rðs ðÝ"ãÛÛÝ%Ý%ÝÝÝõ÷÷ññ Ð*Ô+òó,ðñ" Ð*Ô+ò"ó,ð"ñ Ð*Ô+ò
ó,ð
ñ Ð*Ô+ò"ó,ð"ñ Ð*Ô+ò ,ó,ð ,ñ Ð*Ô+ò Eó,ð Eñ Ð*Ô+òNó,ðNñ Ð*Ô+òQó,ðQñ Ð*Ô+ò6ó,ð6ñ Ð*Ô+ò#ó,ð#ñ Ð*Ô+ò(ó,ð(ñ Ð*Ô+ò(ó,ð(ñ Ð*Ô+ò&ó,ð&ñ Ð*Ô+ò$ó,ð$ñ Ð*Ô+ò&ó,ð&ñ Ð*Ô+òLó,ðLñ Ð*Ô+ò2ó,ð2ñ ‘3Ð.Ó/Ô0òUó1ðUñ Ð*Ô+òó,ðôñ@ 3Ôòóðó(ó$5ôó"'ó(ð%Ø—‘ØDð
Ø
ð
à ð
ðð
ð
ó    
ð,#'ð5Øð5àð5ðð5ðð    5ð
ð 5ð ð 5ðð5ð ð5ð ð5ð ô5r'