hyb
2025-11-10 e0a856b5072c5a09f3f6de6da85abf90e00ee704
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
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
Ë
Jñúh³‡ãó¦—ddlmZddlZddlZddlZddlZddlZddlZddl    Z    ddl
Z
ddl
m Z m Z m Z mZmZmZddlmZmZmZmZddlmZddlmZe
j2d«Ze    j6d    k\reZn Gd
„d e«ZGd „d e«ZGd„ded¬«Z hd£Z!hd£Z"dhZ#dFd„Z$dGd„Z%dHd„Z&idd“dd“dd“dd“dd“d d!“d"d"“d#d$“d%d%“d&d&“d'd(“d)d*“d+d+“d,d-“d.d/“d0d0“d1d1“d2d3dd4d5d6d7d8d9d:d;d<d=d>œ ¥Z'e'jQ«Dcic]\}}||“Œ
c}}Z)dId?„Z*e+«Z,gd@¢Z-ed@Z.e/gdA¢«Z0GdB„dCe e«Z1GdD„dE«Z2ycc}}w)Jé)Ú annotationsN)ÚAnyÚCallableÚGenericÚLiteralÚ    TypedDictÚcasté)ÚlicensesÚ requirementsÚ
specifiersÚutils)Úversion)ÚNormalizedLicenseExpressionÚT)éé có6—eZdZUdZded<ded<d    d„Zd
d„Zy) ÚExceptionGroupzËA minimal implementation of :external:exc:`ExceptionGroup` from Python 3.11.
 
        If :external:exc:`ExceptionGroup` is already defined by Python itself,
        that version is used instead.
        ÚstrÚmessageúlist[Exception]Ú
exceptionscó —||_||_y©N)rr)Úselfrrs   úEH:\Change_password\venv_build\Lib\site-packages\packaging/metadata.pyÚ__init__zExceptionGroup.__init__)s€Ø"ˆDŒLØ(ˆDOócóh—|jj›d|j›d|j›dS)Nú(z, ú))Ú    __class__Ú__name__rr)rs rÚ__repr__zExceptionGroup.__repr__-s1€Ø—n‘n×-Ñ-Ð.¨a°· ± Ð/?¸rÀ$Ç/Á/ÐATÐTUÐVÐ VrN)rrrrÚreturnÚNone)r&r)r$Ú
__module__Ú __qualname__Ú__doc__Ú__annotations__rr%©rrrrs…ñ     ð ‹ Ø#Ó#ó    )ô    Wrrcó2‡—eZdZUdZded<    dˆfd„ ZˆxZS)ÚInvalidMetadataz'A metadata field contains invalid data.rÚfieldcó2•—||_t‰|    |«yr)r/Úsuperr)rr/rr#s   €rrzInvalidMetadata.__init__7sø€ØˆŒ
Ü ‰Ñ˜Õ!r)r/rrrr&r')r$r(r)r*r+rÚ __classcell__)r#s@rr.r.1sø…Ù1à ƒJØ;÷"ñ"rr.có>—eZdZUdZded<ded<ded<ded<ded<ded    <ded
<ded <ded <ded <ded<ded<ded<ded<ded<ded<ded<ded<ded<ded<ded<ded<ded<ded<ded<ded<ded<ded <ded!<ded"<y#)$Ú RawMetadataa¿A dictionary of raw core metadata.
 
    Each field in core metadata maps to a key of this dictionary (when data is
    provided). The key is lower-case and underscores are used instead of dashes
    compared to the equivalent core metadata field. Any core metadata field that
    can be specified multiple times or can hold multiple values in a single
    field have a key with a plural name. See :class:`Metadata` whose attributes
    match the keys of this dictionary.
 
    Core metadata fields that can be specified multiple times are stored as a
    list or dict depending on which is appropriate for the field. Any fields
    which hold multiple values in a single field are stored as a list.
 
    rÚmetadata_versionÚnamerú    list[str]Ú    platformsÚsummaryÚ descriptionÚkeywordsÚ    home_pageÚauthorÚ author_emailÚlicenseÚsupported_platformsÚ download_urlÚ classifiersÚrequiresÚprovidesÚ    obsoletesÚ
maintainerÚmaintainer_emailÚ requires_distÚ provides_distÚobsoletes_distÚrequires_pythonÚrequires_externalúdict[str, str]Ú project_urlsÚdescription_content_typeÚprovides_extraÚdynamicÚlicense_expressionÚ license_filesN)r$r(r)r*r+r,rrr4r4@sÀ…ñ ð ÓØ
ƒIØ ƒLØÓØ ƒLØÓØÓ؃NØ ƒKØÓØ ƒLð#Ó"ØÓØÓØÓØÓØÓðƒOØÓØÓØÓØÓØÓØ Ó Ø Ó ð"Ó!ØÓðÓðÓØÔrr4F)Útotal>r6r=r?r9rr<rFr:r>rArKrGr5rRrO> rQrDrCrEr8rBrSrIrHrJrPrLr@rNcóf—|jd«Dcgc]}|j«‘Œc}Scc}w)zCSplit a string of comma-separated keywords into a list of keywords.ú,)ÚsplitÚstrip)ÚdataÚks  rÚ_parse_keywordsr[¯s$€à#Ÿz™z¨#›Ö /˜!ˆAG‰GIÒ /Ð/ùÒ /s”.c ó—i}|D]s}|jdd«Dcgc]}|j«‘Œ}}|jdgtddt    |«z
«z«|\}}||vr t d«‚|||<Œu|Scc}w)z?Parse a list of label/URL string pairings separated by a comma.rVr
Úréz duplicate labels in project urls)rWrXÚextendÚmaxÚlenÚKeyError)rYÚurlsÚpairÚpÚpartsÚlabelÚurls       rÚ_parse_project_urlsri´s•€à €DØò ˆð$%)§J¡J¨s°AÓ$6Ö7˜q—‘•Ð7ˆÐ7Ø  ‰ bTœS  A¬¨E«
¡NÓ3Ñ4Ô5ð‰
ˆˆsØ D‰=ôÐ=Ó>Ð >؈ˆUŠ ðA ðD €Kùò!8sœA=có—t|t«r$|j«}t|t«sJ‚|S|jd¬«}t|t«sJ‚    |j    dd«S#t
$r}t d«|‚d}~wwxYw)zGet the body of the message.T©ÚdecodeÚutf8Ústrictzpayload in an invalid encodingN)Ú
isinstancerÚ get_payloadÚbytesrlÚUnicodeDecodeErrorÚ
ValueError)ÚmsgÚsourceÚpayloadÚbpayloadÚexcs     rÚ _get_payloadryÜsˆ€ô&œ#ÔØ—/‘/Ó#ˆÜ˜'¤3Ô'Ð'Ð'؈ð—?‘?¨$?Ó/ˆÜ˜(¤EÔ*Ð*Ð*ð    HØ—?‘? 6¨8Ó4Ð 4øÜ!ò    HÜÐ=Ó>ÀCÐ Gûð    HúsÁA,Á,    BÁ5 BÂBr=z author-emailr>Ú
classifierrBr:zdescription-content-typerOz download-urlrArQz    home-pager<r;r?zlicense-expressionrRz license-filerSrFzmaintainer-emailrGúmetadata-versionr5r6rErJr8rDrIrPrCrHrLrKr9r@r) zobsoletes-distÚplatformz project-urlrDz provides-distzprovides-extrarCz requires-distzrequires-externalzrequires-pythonr9zsupported-platformrc    óæ—i}i}t|t«rHtjj    tj
j ¬«j|«}nGtjjtj
j ¬«j|«}t|j««D]´}|j«}|j|«xsg}g}d}|D]ì}t|tjjtf«sJ‚t|tjj«r‰g}    tjj!|«D]-\}
}     |
j#dd«d} |    j'|
| f«Œ/|j'ttjj)|    «««ŒÜ|j'|«Œî|s|||<Œ't*j-|«} | €|||<ŒE| t.vrt1|«dk(r
|d|| <Œe| t2vr||| <Œt| d    k(r!t1|«dk(rt5|d«|| <Œš| d
k(r    t7|«|| <Œ°|||<Œ·    t;||«} | rfd |vrCt=t|j?d ««}|jAd g«jC|| g«nd |vr|d j'| «n| |d <    t=tJ|«|fS#t$$rd} d}YŒ‘wxYw#t8$r    |||<YŒdwxYw#tD$rB|jAd g«j'|jGt|tH«¬ ««YŒ…wxYw) a
Parse a distribution's metadata stored as email headers (e.g. from ``METADATA``).
 
    This function returns a two-item tuple of dicts. The first dict is of
    recognized fields from the core metadata specification. Fields that can be
    parsed and translated into Python's built-in types are converted
    appropriately. All other fields are left as-is. Fields that are allowed to
    appear multiple times are stored as lists.
 
    The second dict contains all other fields from the metadata. This includes
    any unrecognized fields. It also includes any fields which are expected to
    be parsed into a built-in type but were not formatted appropriately. Finally,
    any fields that are expected to appear only once but are repeated are
    included in this dict.
 
    )ÚpolicyTrmrnÚlatin1Fr
rr;rNr:rk)&rorÚemailÚparserÚParserr~Úcompat32ÚparsestrÚ BytesParserÚ
parsebytesÚ    frozensetÚkeysÚlowerÚget_allÚheaderÚHeaderÚ decode_headerrlrrÚappendÚ make_headerÚ_EMAIL_TO_RAW_MAPPINGÚgetÚ_STRING_FIELDSraÚ _LIST_FIELDSr[rirbryr    ÚpopÚ
setdefaultr_rsrprqr4)rYÚrawÚunparsedÚparsedr6ÚheadersÚvalueÚvalid_encodingÚhÚchunksÚbinÚencodingÚraw_namervÚdescription_headers               rÚ parse_emailr¢sO€ð 8:€CØ%'€Hä$œÔÜ—‘×$Ñ$¬E¯L©L×,AÑ,AÐ$ÓB×KÑKÈDÓQ‰ä—‘×)Ñ)´·±×1FÑ1FÐ)ÓG×RÑRÐSWÓXˆô
˜&Ÿ+™+›-Ó(ót#ˆðz‰z‹|ˆð
—.‘. Ó&Ò,¨"ˆðˆðˆØò#     ˆAô˜a¤%§,¡,×"5Ñ"5´sÐ!;Ô<Ð <Ð<ô˜!œUŸ\™\×0Ñ0Ô1ð:<Ü%*§\¡\×%?Ñ%?ÀÓ%Bò    3‘MC˜ð*ØŸ
™
 6¨8Ô4ð $*˜Ø—M‘M 3¨ /Õ2ð    3ð— ‘ œS¤§¡×!9Ñ!9¸&Ó!AÓBÕCð— ‘ ˜Q•ðG#     ñPØ"ˆHT‰NÙ ä(×,Ñ,¨TÓ2ˆØ Ð ð#ˆHT‰NÙ ð ”~Ñ %¬#¨e«*¸ª/Ø! !™HˆC‹MðœÑ %Ø!ˆC‹Mð ˜Ò #¬¨E«
°aªÜ+¨E°!©HÓ5ˆC‹Mð˜Ò 'ð 'Ü 3°EÓ :H“ ð #ˆHT‹Nðit#ðt-ܘv tÓ,ˆñ ð Ñ#Ü%)¬#¨s¯w©w°}Ó/EÓ%FÐ"Ø×#Ñ# M°2Ó6×=Ñ=Ø'¨Ð1õð (Ñ*ؘÑ'×.Ñ.¨wÕ7à%,MÒ"ô ” ˜SÓ ! 8Ð +Ð+øôQ.ò/à#+˜Ø).›ð/ûôJò 'Ø!&˜”ð 'ûô ò
Ø×јM¨2Ó.×5Ñ5Ø × Ñ ¤j°´uÓ&=Ð Ó >ö    
ð
ús7Å'K<ÉLÉ6 L%Ë< L     Ì L     ÌL"Ì!L"Ì%AM0Í/M0)ú1.0ú1.1ú1.2ú2.1ú2.2z2.3ú2.4)r5r6rcóڗeZdZUdZded<ded<ded<ddœ            dd    „Zdd
„Zdd „Z    d                    dd „Zdd„Z    dd„Z
d d„Z dd„Z dd„Z d!d„Z                d"d„Zd#d„Z                d$d„Z                d%d„Zd!d„Zy )&Ú
_ValidatoravValidate a metadata field.
 
    All _process_*() methods correspond to a core metadata field. The method is
    called with the field's raw value. If the raw value is valid it is returned
    in its "enriched" form (e.g. ``version.Version`` for the ``Version`` field).
    If the raw value is invalid, :exc:`InvalidMetadata` is raised (with a cause
    as appropriate).
    rr6r Ú_MetadataVersionÚaddedr£©r¬có—||_yrr­)rr¬s  rrz_Validator.__init__æs €ð
ˆ
rcó.—||_t||_yr)r6Ú_RAW_TO_EMAIL_MAPPINGr )rÚ_ownerr6s   rÚ __set_name__z_Validator.__set_name__ís€ØˆŒ    Ü-¨dÑ3ˆ rcóz—|j}|jj|j«}|jtvs|"    t |d|j›«}||«}|||j<    |j|j=tt|«S#t $rYŒBwxYw#t$rYŒ*wxYw)NÚ    _process_)
Ú__dict__Ú_rawr‘r6Ú_REQUIRED_ATTRSÚgetattrÚAttributeErrorrbr    r)rÚinstancer±ÚcacheršÚ    converters      rÚ__get__z_Validator.__get__ñsº€ð×!Ñ!ˆØ— ‘ ×!Ñ! $§)¡)Ó,ˆð 9‰9œÑ '¨5Ð+<ð )Ü07¸À    È$Ï)É)ÈÐ>UÓ0V    ñ" %Ó(à ˆˆdi‰iÑð    Ø— ‘ ˜dŸi™iÐ(ô”Au‹~Ðøô"ò Ùð ûôò    Ù ð    ús$ÁBÁ8B.    B+Â*B+Â.    B:Â9B:Nc    óˆ—t|j|jdt|j«i««}||_|S)Nr/)r.r Ú
format_mapÚreprÚ    __cause__)rrtÚcauserxs    rÚ_invalid_metadataz_Validator._invalid_metadata s<€ôØ M‰M˜3Ÿ>™>¨7´D¸¿¹Ó4GÐ*HÓIó
ˆðˆŒ ؈
rcóZ—|tvr|j|›d«‚tt|«S)Nz  is not a valid metadata version)Ú_VALID_METADATA_VERSIONSrÃr    r«©rršs  rÚ_process_metadata_versionz$_Validator._process_metadata_versions2€à Ô0Ñ 0Ø×(Ñ(¨E¨9Ð4TÐ)UÓVÐ VÜÔ$ eÓ,Ð,rcóÀ—|s|jd«‚    tj|d¬«|S#tj$r}|j|›d|¬«|‚d}~wwxYw)Nú{field} is a required fieldT©Úvalidateú is invalid for {field}©rÂ)rÃrÚcanonicalize_nameÚ InvalidName©rršrxs   rÚ _process_namez_Validator._process_namess€ÙØ×(Ñ(Ð)FÓGÐ Gð    Ü × #Ñ # E°DÕ 9ð ˆLøô × Ñ ò    Ø×(Ñ(ؐ)Ð4Ð5¸Sð)óàð ûð    ús•.®AÁAÁAcó¸—|s|jd«‚    tj|«S#tj$r}|j|›d|¬«|‚d}~wwxYw)NrÉrÌrÍ)rÃÚversion_moduleÚparseÚInvalidVersionrÐs   rÚ_process_versionz_Validator._process_version(sk€ÙØ×(Ñ(Ð)FÓGÐ Gð    Ü!×'Ñ'¨Ó.Ð .øÜ×,Ñ,ò    Ø×(Ñ(ؐ)Ð4Ð5¸Sð)óàð ûð    ús•*ªA½AÁAcó0—d|vr|jd«‚|S)z%Check the field contains no newlines.ú
z{field} must be a single line)rÃrÆs  rÚ_process_summaryz_Validator._process_summary2s €à 5‰=Ø×(Ñ(Ð)HÓIÐ I؈ rcó—hd£}tjj«}||d<|j«j    «|dj
}}||vs||j    «vr |j dt|«›d|›«‚|jdd«}|dk7r|j dt|«›«‚dd    h}|jd
d«}|d k(r$||vr |j d t|«›d|›«‚|S) N>ú
text/plainú
text/x-rstú text/markdownz content-typez{field} must be one of ú, not ÚcharsetzUTF-8z0{field} can only specify the UTF-8 charset, not ÚGFMÚ
CommonMarkÚvariantrÝz(valid Markdown variants for {field} are )    r€rÚ EmailMessageÚget_content_typer‰ÚparamsrÃÚlistr‘)    rršÚ content_typesrÚ content_typeÚ
parametersrßÚmarkdown_variantsrâs             rÚ!_process_description_content_typez,_Validator._process_description_content_type8s/€ÚEˆ Ü—-‘-×,Ñ,Ó.ˆØ"'ˆÑð × $Ñ $Ó &× ,Ñ ,Ó .Ø NÑ #× *Ñ *ð!ˆ ð ˜}Ñ ,° ÀEÇKÁKÃMÑ0QØ×(Ñ(Ø+¬D°Ó,?Ð+@ÀÀuÀiÐPóð ð—.‘. ¨GÓ4ˆØ gÒ Ø×(Ñ(ØDÄTÈ'Ã]ÀOÐTóð ð# LÐ1ÐØ—.‘. ¨EÓ2ˆØ ˜?Ò *¨wÐ>OÑ/OØ×(Ñ(Ø<¼TÐBSÓ=TÐ<UðVؐkð#óð ðˆ rcóî—ttj|«D]6}|dvr|j|›d«‚|tvsŒ$|j|›d«‚t ttj|««S)N>r6rr{z" is not allowed as a dynamic fieldz is not a valid dynamic field)Úmaprr‰rÃrræ)rršÚ dynamic_fields   rÚ_process_dynamicz_Validator._process_dynamicXs†€Ü ¤§¡¨EÓ2ò    ˆMØРGÑGØ×,Ñ,Ø$Ð'Ð'IÐJóððÔ&;Ò;Ø×,Ñ,Ø$Ð'Ð'DÐEóðð     ô”CœŸ    ™     5Ó)Ó*Ð*rcó̗g}    |D](}|jtj|d¬««Œ*    |S#tj$r}|j    ›d|¬«|‚d}~wwxYw)NTrÊrÌrÍ)rŽrrÎrÏrÃ)rršÚnormalized_namesr6rxs     rÚ_process_provides_extraz"_Validator._process_provides_extradsƒ€ðÐð    $Øò VØ ×'Ñ'¬×(?Ñ(?ÀÈtÔ(TÕUñ Vð$Ð #øô × Ñ ò    Ø×(Ñ(ؐ(Ð3Ð4¸Cð)óàð ûð    ús„-4´A#ÁAÁA#c󒗠   tj|«S#tj$r}|j|›d|¬«|‚d}~wwxYw©NrÌrÍ)r Ú SpecifierSetÚInvalidSpecifierrÃrÐs   rÚ_process_requires_pythonz#_Validator._process_requires_pythonssV€ð    Ü×*Ñ*¨5Ó1Ð 1øÜ×*Ñ*ò    Ø×(Ñ(ؐ)Ð4Ð5¸Sð)óàð ûð    ús‚—AªAÁAcóȗg}    |D]&}|jtj|««Œ(    |S#tj$r}|j    ›d|¬«|‚d}~wwxYwrô)rŽr Ú RequirementÚInvalidRequirementrÃ)rršÚreqsÚreqrxs     rÚ_process_requires_distz!_Validator._process_requires_dist{s{€ðˆð    Øò ;Ø— ‘ œL×4Ñ4°SÓ9Õ:ñ ;ðˆKøô ×.Ñ.ò    Ø×(Ñ(ؐ'Ð2Ð3¸3ð)óàð ûð    ús„+2²A!ÁAÁA!có~—    tj|«S#t$r}|j|›d|¬«|‚d}~wwxYwrô)r Úcanonicalize_license_expressionrsrÃrÐs   rÚ_process_license_expressionz&_Validator._process_license_expressionŠsP€ð    Ü×;Ñ;¸EÓBÐ BøÜò    Ø×(Ñ(ؐ)Ð4Ð5¸Sð)óàð ûð    ús‚—    < 7·<có—g}|D]×}d|vr|j|›d«‚d|vr|j|›d«‚tj|«j«s#tj|«j«r|j|›d«‚tj|«j «|k7r|j|›d«‚|j |«ŒÙ|S)Nz..zD is invalid for {field}, parent directory indicators are not allowedÚ*z/ is invalid for {field}, paths must be resolvedz/ is invalid for {field}, paths must be relativez5 is invalid for {field}, paths must use '/' delimiter)rÃÚpathlibÚ PurePosixPathÚ is_absoluteÚPureWindowsPathÚas_posixrŽ)rršÚpathsÚpaths    rÚ_process_license_filesz!_Validator._process_license_files”s€ØˆØò    ˆDؐt‰|Ø×,Ñ,ؐhðBðBóððd‰{Ø×,Ñ,ؐhÐOÐPóðô×%Ñ% dÓ+×7Ñ7Ô9Ü×*Ñ*¨4Ó0×<Ñ<Ô>à×,Ñ,ؐhÐOÐPóðô×&Ñ& tÓ,×5Ñ5Ó7¸4Ò?Ø×,Ñ,ؐhÐUÐVóðð L‰L˜Õ ð+    ð,ˆ r)r¬r«r&r')r±ÚMetadatar6rr&r')rºr r±ztype[Metadata]r&rr)rtrrÂzException | Noner&r.)ršrr&r«)ršrr&r)ršrr&zversion_module.Version)ršr7r&r7)ršr7r&zlist[utils.NormalizedName])ršrr&zspecifiers.SpecifierSet)ršr7r&zlist[requirements.Requirement])ršrr&z"NormalizedLicenseExpression | None)r$r(r)r*r+rr²r½rÃrÇrÑrÖrÙrërïròr÷rýrr
r,rrrªrªØsυñð ƒI؃MØ Óð
#(ñð ðð
ó    ó4óð837ðØðØ/ðà    óó-ó óóó ó@
+ð $àð $ð
$ó $óð àð ð
(ó ðØðà    +óôrrªcó¢—eZdZUdZded<eddœd7d„«Zeddœd8d„«Ze«Z    ded    <    e«Z
d
ed <    e«Z d ed <    ed¬«Z ded<    e«Z ded<    ed¬«Zded<    e«Zded<    e«Zded<    ed¬«Zded<    e«Zded<    e«Zded<    ed¬«Zded<    e«Zded<    e«Zded<    ed¬«Zded <    ed¬«Zded!<    e«Zded"<    ed#¬«Zd$ed%<    ed#¬«Zded&<    ed¬«Zded'<    ed¬«Zd(ed)<    ed¬«Zd*ed+<    ed¬«Zded,<    ed¬«Z d-ed.<    ed¬«Z!d/ed0<    ed¬«Z"ded1<    ed¬«Z#ded2<    ed¬«Z$ded3<    ed¬«Z%ded4<    ed¬«Z&ded5<y6)9r aJRepresentation of distribution metadata.
 
    Compared to :class:`RawMetadata`, this class provides objects representing
    metadata fields instead of only using built-in types. Any invalid metadata
    will cause :exc:`InvalidMetadata` to be raised (with a
    :py:attr:`~BaseException.__cause__` attribute as appropriate).
    r4r¶TrÊc    óÚ—|«}|j«|_|rÍg}    |j}tj    |«}t|j«tz}|dhz}|D]t}        |rc    |j|    j}
tj    |
«} | kDr/t|    } t | | ›d|
›d|›«} |j | «Œit||    «Œv|r td|«‚|S#t
$r}|j |«d}Yd}~ŒÌd}~wwxYw#t$r#t |    d|    ›«} |j | «YŒÛwxYw#t
$r} |j | «Yd} ~ Œþd} ~ wwxYw)zÞCreate an instance from :class:`RawMetadata`.
 
        If *validate* is true, all metadata will be validated. All exceptions
        related to validation will be gathered and raised as an :class:`ExceptionGroup`.
        Nr5úunrecognized field: z  introduced in metadata version rÞzinvalid metadata)Úcopyr¶r5rÅÚindexr.rŽr‡r·rµr¬rbr°r¸r)ÚclsrYrËÚinsrr5Ú metadata_ageÚmetadata_version_excÚfields_to_checkÚkeyÚfield_metadata_versionrxÚ    field_ager/s              rÚfrom_rawzMetadata.from_rawºsœ€ñ‹eˆØ—9‘9“;ˆŒá Ø*,ˆJð (Ø#&×#7Ñ#7РÜ7×=Ñ=Ð>NÓO ô(¨¯©Ó1´OÑCˆOà Р2Ð3Ñ 3ˆOà&ò +ð+Ù'ð%Ø58·\±\À#Ñ5F×5LÑ5LÐ2ô
%=×$BÑ$BØ2ó%˜    ð% |Ò3Ü$9¸#Ñ$>˜EÜ"1Ø %Ø#( 'Ð)IØ#9Ð":¸&ÐAQÐ@Rð!Tó#˜Cð
'×-Ñ-¨cÔ2Ø$ܘC Õ%ð/ +ñ6Ü$Ð%7¸ÓDÐDàˆ
øôQ#ò (Ø×!Ñ!Ð"6Ô7Ø#'Õ ûð (ûô" (ò%Ü"1°#Ð9MÈcÈWÐ7UÓ"V˜CØ&×-Ñ-¨cÔ2Ù$ð%ûô"'ò+Ø×%Ñ% c×*Ñ*ûð+úsZ¢!C.Á+EÁ.DÂAEà EÃ.    DÃ7DÄDÄ)EÅEÅEÅEÅ    E*ÅE%Å%E*có$—t|«\}}|rEg}|D]0}|tvr|›d}nd|›}|jt||««Œ2|r t    d|«‚    |j ||¬«S#t$r}t    d|j «d‚d}~wwxYw)zÓParse metadata from email headers.
 
        If *validate* is true, the metadata will be validated. All exceptions
        related to validation will be gathered and raised as an :class:`ExceptionGroup`.
        z has invalid datarr—rÊzinvalid or unparsed metadataN)r¢rrŽr.rrr)    rrYrËr–r—rÚ unparsed_keyrÚ    exc_groups             rÚ
from_emailzMetadata.from_emailós¹€ô$ DÓ)‰ ˆˆXá Ø*,ˆJØ (ò J ØÔ#8Ñ8Ø!-Р0Ð0AÐB‘Gà 4°\Ð4DÐEGØ×!Ñ!¤/°,ÀÓ"HÕIð  JñÜ$ Z°Ó<Ð<ð    Ø—<‘< ¨h<Ó7Ð 7øÜò    Ü Ø.°    ×0DÑ0Dóàð ûð    úsÁA*Á*    BÁ3B
Bz_Validator[_MetadataVersion]r5z_Validator[str]r6z"_Validator[version_module.Version]rr§r­z_Validator[list[str] | None]rQr8r¤r@z_Validator[str | None]r9r:r¦rOr;r<rAr=r>r¥rFrGr?r¨z._Validator[NormalizedLicenseExpression | None]rRrSrBz1_Validator[list[requirements.Requirement] | None]rHz*_Validator[specifiers.SpecifierSet | None]rKrLz!_Validator[dict[str, str] | None]rNz-_Validator[list[utils.NormalizedName] | None]rPrIrJrCrDrEN)rYr4rËÚboolr&r )rYú bytes | strrËrr&r )'r$r(r)r*r+Ú classmethodrrrªr5r6rrQr8r@r9r:rOr;r<rAr=r>rFrGr?rRrSrBrHrKrLrNrPrIrJrCrDrEr,rrr r ¯s”…ñð ÓàØ=Aô6óð6ðpØ?Côóðñ66@³\ÐÐ2ÓAð<ñ'›L€Dˆ/Ó(ðñ3=³,€GÐ /Ó>Ø:Ù,6Øô-€GÐ )óðDá.8«l€IÐ+Ó:Ø0Ù8BÈÔ8OÐÐ5ÓOØ:Ù&0£l€GÐ #Ó2ØRÙ*4«,€KÐ'Ó6Ø3Ù7AÈÔ7NÐÐ4ÓNØLÙ-7«\€HÐ*Ó9Ø0Ù(2« €IÐ%Ó4Ø1Ù+5¸EÔ+B€LÐ(ÓBØ4Ù%/£\€FÐ "Ó1Ø.Ù+5«<€LÐ(Ó7Ø4Ù)3¸%Ô)@€JÐ&Ó@Ø2Ù/9ÀÔ/FÐÐ,ÓFØ8Ù&0£l€GÐ #Ó2Ø/ÙISØôJÐÐFóð;Ù2<À5Ô2I€MÐ/ÓIØ4Ù0:ÀÔ0G€KÐ-ÓGØ2ÙGQØôH€MÐDóð6ÙBLØôC€OÐ?óð8ñ7AÀuÔ6MÐÐ3ÓMØ9Ù6@ÀuÔ6M€LÐ3ÓMØ3ñEOØôE€NÐAóð7Ù2<À5Ô2I€MÐ/ÓIØ5Ù3=ÀEÔ3J€NÐ0ÓJØ6Ù-7¸eÔ-D€HÐ*ÓDØ#Ù-7¸eÔ-D€HÐ*ÓDØ#Ù.8¸uÔ.E€IÐ+ÓEØ$rr )rYrr&r7)rYr7r&rM)rtzemail.message.Messagerurr&r)rYrr&z(tuple[RawMetadata, dict[str, list[str]]])3Ú
__future__rÚemail.feedparserr€Ú email.headerÚ email.messageÚ email.parserÚ email.policyrÚsysÚtypingrrrrrr    r]r r r rrrÓrÚTypeVarrÚ version_inforÚ    Exceptionrsr.r4r’r“Ú _DICT_FIELDSr[riryrÚitemsr°r¢ÚobjectÚ
_NOT_FOUNDrÅr«r‡r·rªr )r€r–s00rú<module>r0s1ðÝ"ãÛÛÛÛÛÛ
Û ÷÷÷8Ó7Ý'Ý1à€F‡NN3Ó€ð×ѐwÒØ#NôW˜ôWô$"jô"ôE) 5õEòP€ò$€ ð"ð€ ó
0ó
%óPHð>Ø ˆhðàNðð-ðð=ð    ð
Р:ð ð Nð ðˆyðððð
ððˆyððÐ.ððOðð,ððÐ*ððÐ*ðð  ˆFð!ð"ð#ð$'ØØ!ØØ$Ø&ØØ$Ø,Ø(ØØ/Øò=Ðð@7L×6QÑ6QÓ6S×T©
¨¨s˜˜e™ÓTÐóm,ñ`‹X€
òMÐØÐJÑKÐáÒCÓD€ôT˜‘ôT÷no%òo%ùói UsÄ E