hyb
2025-11-07 cadac0a99d87c53805a07f3b4ca7fd11e524fe4a
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
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
Ë
Añúh“‚ãób—ddlZddlZddlZddlZddlmZddlmZmZddl    Z    ddl
m Z ddl m Z mZmZddlmZmZddlmZdd    lmZdd
lmZmZGd „d e e«Zdd „Z    dd„Zej:dd„«Zd„ZGd„d«Z Gd„d«Z!Gd„d«Z"ejFZ$Gd„d«Z%y)éN)ÚPath)ÚMockÚpatch)ÚInvalidRequirement)Ú ConfigHandlerÚTargetÚread_configuration)Ú DistributionÚ _Distribution)ÚSetuptoolsDeprecationWarningé)ÚDALS)ÚDistutilsFileErrorÚDistutilsOptionErrorcó—eZdZdZdZy)ÚErrConfigHandlerz7Erroneous handler. Fails to implement required methods.z**err**N)Ú__name__Ú
__module__Ú __qualname__Ú__doc__Úsection_prefix©óúXH:\Change_password\venv_build\Lib\site-packages\setuptools/tests/config/test_setupcfg.pyrrs
„ÙAàNrrcó¨—|}|jd«D]}|j|«}Œd}|s"|jd«}|jd«||fS)Nú/ú __init__.pyÚ)ÚsplitÚmkdirÚjoinÚwrite)ÚnameÚbase_dirÚnsÚ dir_packageÚdir_nameÚ    init_files      rÚmake_package_dirr)s]€Ø€KØ—J‘J˜s“Oò2ˆØ!×'Ñ'¨Ó1‰ ð2à€IÙ Ø×$Ñ$ ]Ó3ˆ    Ø‰˜ÔØ ˜    Ð !Ð!rcóø—|€d}|jd«j|«|jd«}|j|j|«d¬«t||«\}}|jd«||fS)Nz%from setuptools import setup
setup()
úsetup.pyú    setup.cfgÚwb)ÚmodezWVERSION = (1, 2, 3)
 
VERSION_MAJOR = 1
def get_version():
    return [3, 4, 5, "dev"]
 
)r!r"Úencoder))ÚtmpdirÚ    setup_cfgÚsetup_pyÚencodingÚ package_pathÚconfigÚ package_dirr(s        rÚfake_envr7%s~€ðÐØ<ˆà
‡KK
Ó×!Ñ! (Ô+Ø [‰[˜Ó %€FØ
‡LL×!Ñ! (Ó+°$€LÔ7ä-¨l¸FÓCÑ€Kà ‡OOð     ôð ˜Ð Ðrc#ó¶K—|xsi}|j«5t|«}d|_|xr|j«|–—ddd«y#1swYyxYw­w)Nr+)Úas_cwdr
Ú script_nameÚparse_config_files)r0Úkwargs_initialÚparseÚdists    rÚget_distr?>sVèø€à#Ò) r€Nà    ‰‹ñܘNÓ+ˆØ%ˆÔØ Ò+$×)Ñ)Ó+øàŠ
÷ ÷ñüs‚A™+A Á    AÁ AÁAcó¤—tjt«5tdidt    ««}|j
ddd«y#1swYyxYw)NF)ÚpytestÚraisesÚNotImplementedErrorrrÚparsers)Úhandlers rÚtest_parsers_implementedrFJs=€Ü    ‰Ô*Ó    +ñÜ" 4¨¨U´D³FÓ;ˆØŠ÷÷ñús š#AÁAcó—eZdZd„Zd„Zd„Zy)ÚTestConfigurationReadercó —t|d«\}}tt|««}|dddk(sJ‚|ddddgk(sJ‚|dd    d
d gk(sJ‚y) NzX[metadata]
version = 10.1.1
keywords = one, two
 
[options]
scripts = bin/a.py, bin/b.py
ÚmetadataÚversionú10.1.1ÚkeywordsÚoneÚtwoÚoptionsÚscriptszbin/a.pyzbin/b.py)r7r    Ústr©Úselfr0Ú_r5Ú config_dicts     rÚ
test_basicz"TestConfigurationReader.test_basicQsy€ÜØ ð -ó
‰    ˆˆ6ô)¬¨V«Ó5ˆ ؘ:Ñ& yÑ1°XÒ=Ð=Ð=ؘ:Ñ& zÑ2°u¸e°nÒDÐDÐDؘ9Ñ% iÑ0°ZÀÐ4LÒLÐLÑLrcó¦—tjt«5tt    |j d«««ddd«y#1swYyxYw)Nr,)rArBrr    rRr!©rTr0s  rÚtest_no_configz&TestConfigurationReader.test_no_config`s:€Ü ]‰]Ô-Ó .ñ    >Ü œs 6§;¡;¨{Ó#;Ó<Ô =÷    >÷    >ñ    >ús š$AÁAcó"—t|d«\}}tjt«5t    t |««ddd«t    t |«d¬«}|ddddgk(sJ‚d|dvsJ‚|j «y#1swYŒHxYw)    Nz<[metadata]
version = attr: none.VERSION
keywords = one, two
T)Úignore_option_errorsrJrMrNrOrK)r7rArBÚ ImportErrorr    rRÚremoverSs     rÚtest_ignore_errorsz*TestConfigurationReader.test_ignore_errorsds€ÜØ Ø Mó
‰    ˆˆ6ô]‰]œ;Ó 'ñ    ,Ü œs 6›{Ô +÷    ,ô)¬¨V«È4ÔPˆ à˜:Ñ& zÑ2°u¸e°nÒDÐDÐDØ  ¨JÑ 7Ñ7Ð7Ð7à ‰ ÷    ,ð    ,ús ©BÂBN)rrrrWrZr_rrrrHrHPs„ò Mò>ó rrHcóø—eZdZd„Zd„Zd„Zd„Zd„Zd„Zd„Z    d„Z
d    „Z d
„Z d „Z d „Zd „Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zej0j3dded«ddifded«ddifg«d„«Zy) Ú TestMetadatacó—t|d«|jd«jd«ddi}t||«5}|j}|j
dk(sJ‚|j dk(sJ‚|jdk(sJ‚|jdk(sJ‚|jd    d
gk(sJ‚|jdk(sJ‚|jd k(sJ‚|jd d gk(sJ‚|jdk(sJ‚|jdk(sJ‚    ddd«y#1swYyxYw)Na-[metadata]
version = 10.1.1
description = Some description
long_description_content_type = text/something
long_description = file: README
name = fake_name
keywords = one, two
provides = package, package.sub
license = otherlic
download_url = http://test.test.com/test/
maintainer_email = test@test.com
ÚREADMEúreadme contents
line2ÚlicensezBSD 3-Clause LicenserLzSome descriptionútext/somethingÚpackagez package.subÚ    fake_namerNrOúhttp://test.test.com/test/ú test@test.com)r7r!r"r?rJrKÚ descriptionÚlong_description_content_typeÚlong_descriptionÚprovidesrer#rMÚ download_urlÚmaintainer_email)rTr0Ú meta_initialr>rJs     rrWzTestMetadata.test_basicus?€ÜØ ð
1ô     
ð     ‰ HÓ×#Ñ#Ð$<Ô=ð Ð-ð
ˆ ô
f˜lÓ +ð     @¨tØ—}‘}ˆHà×#Ñ# xÒ/Ð /Ð/Ø×'Ñ'Ð+=Ò=Ð =Ð=Ø×9Ñ9Ð=MÒMÐ MÐMØ×,Ñ,Ð0HÒHÐ HÐHØ×$Ñ$¨°MÐ(BÒBÐ BÐBØ×#Ñ#Ð'=Ò=Ð =Ð=Ø—=‘= KÒ/Ð /Ð/Ø×$Ñ$¨°¨Ò6Ð 6Ð6Ø×(Ñ(Ð,HÒHÐ HÐHØ×,Ñ,°Ò?Ð ?Ñ?÷     @÷     @ñ     @ús ½B;DÄD cóî—t|td««t|«5}|j}|jdk(sJ‚|j
dk(sJ‚|j dk(sJ‚    ddd«y#1swYyxYw)Nzr
            [metadata]
            name=foo
            version=0.0.1
            license=Apache 2.0
            Úfooz0.0.1z
Apache 2.0)r7rr?rJr#rKre©rTr0r>rJs    rÚtest_license_cfgzTestMetadata.test_license_cfgšs~€ÜØ Ü ðó ô
    
ôfÓ ð    4 Ø—}‘}ˆHà—=‘= EÒ)Ð )Ð)Ø×#Ñ# wÒ.Ð .Ð.Ø×#Ñ# |Ò3Ð 3Ñ3÷     4÷    4ñ    4ús ¡AA+Á+A4có—t|d«|jd«jd«|jd«jd«t|«5}|jj
dk(sJ‚    ddd«y#1swYyxYw)Nz=[metadata]
long_description = file: README.rst, CHANGES.rst
 
z
README.rstrdz CHANGES.rstzchangelog contents
and stuffz2readme contents
line2
changelog contents
and stuff)r7r!r"r?rJrm©rTr0r>s   rÚtest_file_mixedzTestMetadata.test_file_mixed®s€€ÜØ Ø Nô    
ð
     ‰ LÓ!×'Ñ'Ð(@ÔA؏ ‰ MÓ"×(Ñ(Ð)HÔIä fÓ ð     Ø—=‘=×1Ñ1ØGòð ñ÷    ÷    ñ    ús ÁA>Á>BcóF—|jd«|jdd«}|jd¬«t|d«t|d¬«5}t    j
t «5|j«ddd«ddd«y#1swYŒxYw#1swYyxYw)    NrcÚdepth1Údepth2T)Údirz1[metadata]
long_description = file: ../../README
F©r=)Úensurer!r7r?rArBrr;)rTr0Úprojectr>s    rÚtest_file_sandboxedz TestMetadata.test_file_sandboxed¼s‹€Ø ‰ hÔØ—+‘+˜h¨Ó1ˆØ‰˜4ˆÔ ÜÐOÔPä g UÔ +ð    *¨tÜ—‘Ô3Ó4ñ *Ø×'Ñ'Ô)÷ *÷    *ð    *÷ *ð *ú÷    *ð    *ús$ÁBÁ)B Á:B B    ÂBÂB có(—t|d«t|«5}|j}|jdk(sJ‚|jdk(sJ‚|j
dk(sJ‚|j ddgk(sJ‚|jddgk(sJ‚    ddd«y#1swYyxYw)    NzÂ[metadata]
author_email = test@test.com
home_page = http://test.test.com/test/
summary = Short summary
platform = a, b
classifier =
  Framework :: Django
  Programming Language :: Python :: 3.5
rjriz Short summaryÚaÚbúFramework :: Djangoú%Programming Language :: Python :: 3.5)r7r?rJÚ author_emailÚurlrkÚ    platformsÚ classifiersrts    rÚ test_aliaseszTestMetadata.test_aliasesÆs²€ÜØ ð 8ô
    
ôfÓ ð         Ø—}‘}ˆHØ×(Ñ(¨OÒ;Ð ;Ð;Ø—<‘<Ð#?Ò?Ð ?Ð?Ø×'Ñ'¨?Ò:Ð :Ð:Ø×%Ñ%¨#¨s¨Ò3Ð 3Ð3Ø×'Ñ'Ø%Ø7ð,òð ñ÷         ÷        ñ        ús ˜A&BÂBcó—t|d«t|«5}|j}|jddgk(sJ‚|jddgk(sJ‚    ddd«y#1swYyxYw)Nz[metadata]
name = fake_name
keywords =
  one
  two
classifiers =
  Framework :: Django
  Programming Language :: Python :: 3.5
rNrOr„r…)r7r?rJrMr‰rts    rÚtest_multilinezTestMetadata.test_multilineÞsw€ÜØ ð 8ô
    
ôfÓ ð     Ø—}‘}ˆHØ×$Ñ$¨°¨Ò6Ð 6Ð6Ø×'Ñ'Ø%Ø7ð,òð ñ÷    ÷    ñ    ús ˜3AÁAcóž—t|d«t|«5}|j}|jdddœk(sJ‚    ddd«y#1swYyxYw)Nzf[metadata]
project_urls =
  Link One = https://example.com/one/
  Link Two = https://example.com/two/
úhttps://example.com/one/úhttps://example.com/two/©zLink OnezLink Two)r7r?rJÚ project_urlsrts    rÚ    test_dictzTestMetadata.test_dictòs_€ÜØ ð 6ô    
ôfÓ ð     Ø—}‘}ˆHØ×(Ñ(Ø6Ø6ñ-òð ñ÷    ÷    ñ    ús ˜!AÁA cóH—t|d«\}}|jd«}|jd«jd«|jd«jd«|jd«}|jd«jd«|jd«jd«t    |«5}|j
j d    k(sJ‚    ddd«|jd
«t    |«5}|j
j d k(sJ‚    ddd«|jd «t    |«5}|j
j d k(sJ‚    ddd«|jd«t    |«5}|j
j dk(sJ‚    ddd«|jd«t    |«5}|j
j dk(sJ‚    ddd«y#1swYŒxYw#1swYŒÚxYw#1swYŒ¥xYw#1swYŒpxYw#1swYyxYw)Nz0[metadata]
version = attr: fake_package.VERSION
Úsubpkg_arrzmod.pyzVERSION = (2016, 11, 26)Úsubpkg_bz2import third_party_module
VERSION = (2016, 11, 26)ú1.2.3z4[metadata]
version = attr: fake_package.get_version
z    3.4.5.devz6[metadata]
version = attr: fake_package.VERSION_MAJOR
Ú1z=[metadata]
version = attr: fake_package.subpkg_a.mod.VERSION
z
2016.11.26z=[metadata]
version = attr: fake_package.subpkg_b.mod.VERSION
)r7r r!r"r?rJrK)rTr0r6r5Úsub_aÚsub_br>s       rÚ test_versionzTestMetadata.test_versionsï€Ü&Ø ÐHó
ш Vð×!Ñ! *Ó-ˆØ 
‰
=Ó!×'Ñ'¨Ô+Ø 
‰
8Ó×"Ñ"Ð#=Ô>à×!Ñ! *Ó-ˆØ 
‰
=Ó!×'Ñ'¨Ô+Ø 
‰
8Ó×"Ñ"Ø Aô    
ôfÓ ð    4 Ø—=‘=×(Ñ(¨GÒ3Ð 3Ñ3÷    4ð     ‰ ÐMÔNÜ fÓ ð    8 Ø—=‘=×(Ñ(¨KÒ7Ð 7Ñ7÷    8ð     ‰ ÐOÔPÜ fÓ ð    0 Ø—=‘=×(Ñ(¨CÒ/Ð /Ñ/÷    0ð     ‰ ÐVÔWÜ fÓ ð    9 Ø—=‘=×(Ñ(¨LÒ8Ð 8Ñ8÷    9ð     ‰ ÐVÔWÜ fÓ ð    9 Ø—=‘=×(Ñ(¨LÒ8Ð 8Ñ8÷    9ð    9÷!    4ñ    4ú÷    8ð    8ú÷    0ð    0ú÷    9ð    9ú÷    9ð    9ús<Â=G'Ã>G4Ä?HÆH ÇHÇ'G1Ç4G=ÈH    È HÈH!cóà—t|d«|jdd«jd«t|«5}|jj
dk(sJ‚    ddd«|jdd«jd«t jt«5t|«5}|jj
ddd«ddd«y#1swYŒwxYw#1swYŒxYw#1swYyxYw)Nz4[metadata]
version = file: fake_package/version.txt
Ú fake_packagez version.txtz1.2.3
r–z 1.2.3
4.5.6
)    r7r!r"r?rJrKrArBrrws   rÚtest_version_filezTestMetadata.test_version_file#s̀ܐÐQÔR؏ ‰ N MÓ2×8Ñ8¸ÔCä fÓ ð    4 Ø—=‘=×(Ñ(¨GÒ3Ð 3Ñ3÷    4ð     ‰ N MÓ2×8Ñ8Ð9IÔJÜ ]‰]Ô/Ó 0ñ    &ܘ&Ó!ð & TØ— ‘ ×%Ò%÷ &÷    &ð    &÷        4ð    4ú÷
 &ð &ú÷    &ð    &ús/¹C  C$Â$CÂ;C$à CÃC!    ÃC$Ã$C-có˜—t|dd¬«t|«5}|jjdk(sJ‚    ddd«y#1swYyxYw)NzY[metadata]
version = attr: fake_package_simple.VERSION
[options]
package_dir =
    = src
zsrc/fake_package_simple©r4r–©r7r?rJrKrws   rÚ$test_version_with_package_dir_simplez1TestMetadata.test_version_with_package_dir_simple/sP€ÜØ ð ð
3õ    
ôfÓ ð    4 Ø—=‘=×(Ñ(¨GÒ3Ð 3Ñ3÷    4÷    4ñ    4úó šAÁA    có˜—t|dd¬«t|«5}|jjdk(sJ‚    ddd«y#1swYyxYw)Nzr[metadata]
version = attr: fake_package_rename.VERSION
[options]
package_dir =
    fake_package_rename = fake_dir
Úfake_dirrŸr–r rws   rÚ$test_version_with_package_dir_renamez1TestMetadata.test_version_with_package_dir_rename=sP€ÜØ ð 3ð
$õ    
ôfÓ ð    4 Ø—=‘=×(Ñ(¨GÒ3Ð 3Ñ3÷    4÷    4ñ    4úr¢có˜—t|dd¬«t|«5}|jjdk(sJ‚    ddd«y#1swYyxYw)Nzx[metadata]
version = attr: fake_package_complex.VERSION
[options]
package_dir =
    fake_package_complex = src/fake_dir
z src/fake_dirrŸr–r rws   rÚ%test_version_with_package_dir_complexz2TestMetadata.test_version_with_package_dir_complexKsP€ÜØ ð 8ð
(õ    
ôfÓ ð    4 Ø—=‘=×(Ñ(¨GÒ3Ð 3Ñ3÷    4÷    4ñ    4úr¢có€—t|d«t|d¬«5}|j«ddd«y#1swYyxYw)Nz+[metadata]
name = fake_name
unknown = some
Fr})r7r?r;rws   rÚtest_unknown_meta_itemz#TestMetadata.test_unknown_meta_itemYs:€ÜÐIÔJÜ f EÔ *ð    &¨dØ × #Ñ #Ô %÷    &÷    &ñ    &úsš4´=cóܗt|d«t|d¬«5}tjt«5|j «ddd«ddd«y#1swYŒxYw#1swYyxYw)Nz[metadata.some]
key = val
Fr}©r7r?rArBrr;rws   rÚtest_usupported_sectionz$TestMetadata.test_usupported_section^sa€ÜÐ7Ô8Ü f EÔ *ð    *¨dÜ—‘Ô3Ó4ñ *Ø×'Ñ'Ô)÷ *÷    *ð    *÷ *ð *ú÷    *ð    *úó"šA"´AÁA"ÁA    ÁA"Á"A+có²—tgd¢«}t|d«\}}|jd«jd«t    |«5}t|j
j «|k(sJ‚    ddd«|jd«t    |«5}t|j
j «|k(sJ‚    ddd«y#1swYŒTxYw#1swYyxYw)N)r„z#Programming Language :: Python :: 3r…z+[metadata]
classifiers = file: classifiers
r‰z^Framework :: Django
Programming Language :: Python :: 3
Programming Language :: Python :: 3.5
zƒ[metadata]
classifiers =
    Framework :: Django
    Programming Language :: Python :: 3
    Programming Language :: Python :: 3.5
)Úsetr7r!r"r?rJr‰)rTr0ÚexpectedrUr5r>s      rÚtest_classifierszTestMetadata.test_classifiersdsԀÜò
ó ˆô˜VÐ%TÓU‰    ˆˆ6à ‰ MÓ"×(Ñ(ð 6ô    
ô fÓ ð    > Üt—}‘}×0Ñ0Ó1°XÒ=Ð =Ñ=÷    >ð     ‰ ð :ô    
ôfÓ ð    > Üt—}‘}×0Ñ0Ó1°XÒ=Ð =Ñ=÷    >ð    >÷    >ð    >ú÷    >ð    >úsÁ%CÂ%C ÃC
à CcóΗt|d«tjtj«5t |«5    ddd«ddd«y#1swYŒxYw#1swYyxYw)Nz%[metadata]
description = %(message)s
)r7rArBÚ configparserÚInterpolationMissingOptionErrorr?rYs  rÚtest_interpolationzTestMetadata.test_interpolation‚sY€ÜÐBÔCÜ ]‰]œ<×GÑGÓ Hñ    Ü˜&Ó!ñ Ø÷ ÷    ð    ÷ ð ú÷    ð    ús!° A¼A¾AÁA    ÁAÁA$cób—t|dd¬«t|«5    ddd«y#1swYyxYw)Nu$[metadata]
description = Ã©Ã Ã¯Ã´Ã±
úutf-8©r3©r7r?rYs  rÚtest_non_ascii_1zTestMetadata.test_non_ascii_1ˆs/€ÜÐAÈGÕTÜ fÓ ñ    Ø ÷    ÷    ñ    úsš%¥.có^—t|d«t|«5    ddd«y#1swYyxYw)Nz
# -*- coding: invalid
r¹rYs  rÚtest_non_ascii_3zTestMetadata.test_non_ascii_3s-€ÜÐ4Ô5Ü fÓ ñ    Ø ÷    ÷    ñ    ús˜#£,có˜—t|dd¬«t|«5}|jjdk(sJ‚    ddd«y#1swYyxYw)Nu8# -*- coding: utf-8
[metadata]
description = Ã©Ã Ã¯Ã´Ã±
r·r¸u
éàïôñ)r7r?rJrkrws   rÚtest_non_ascii_4zTestMetadata.test_non_ascii_4’sL€ÜØ Ø IØõ    
ô
fÓ ð    = Ø—=‘=×,Ñ,° Ò<Ð <Ñ<÷    =÷    =ñ    =úr¢có¾—t|dd¬«tjt«5t    |«5    ddd«ddd«y#1swYŒxYw#1swYyxYw)z=
        Config files encoded not in UTF-8 will fail
        uJ# vim: set fileencoding=iso-8859-15 :
[metadata]
description = Ã©Ã Ã¯Ã´Ã±
z iso-8859-15r¸N)r7rArBÚUnicodeDecodeErrorr?rYs  rÚ test_not_utf8zTestMetadata.test_not_utf8›s^€ô    Ø Ø [Ø"õ    
ô
]‰]Ô-Ó .ñ    Ü˜&Ó!ñ Ø÷ ÷    ð    ÷ ð ú÷    ð    ús!¨ A´A¶AÁA    Á AÁA)Ú    error_msgr5ÚinvalidzCInvalid dash-separated key 'author-email' in 'metadata' (setup.cfg)z˜
                    [metadata]
                    author-email = test@test.com
                    maintainer_email = foo@foo.com
                    z author-emailrjz6Invalid uppercase key 'Name' in 'metadata' (setup.cfg)z†
                    [metadata]
                    Name = foo
                    description = Some description
                    ÚNamerscó¸—t||«tjtt    j
|«¬«5t |«j«}ddd«|jd«j«|j«D]@\}}|jdd«j«}tj|«|k(rŒ@J‚y#1swYŒ|xYw)N©Úmatchr,ú-rU)r7rAÚwarnsr ÚreÚescaper?Ú    __enter__r!r^ÚitemsÚreplaceÚlowerÚgetattrrJ)    rTr0rÂr5rÃr>ÚfieldÚvalueÚattrs             rÚ*test_invalid_options_previously_deprecatedz7TestMetadata.test_invalid_options_previously_deprecated¨s±€ôB    ˜Ô Ü \‰\Ô6¼b¿i¹iÈ    Ó>RÔ Sñ    0ܘFÓ#×-Ñ-Ó/ˆD÷    0ð     ‰ KÓ ×'Ñ'Ô)à#ŸM™M›Oò    9‰LˆE5Ø—=‘=  cÓ*×0Ñ0Ó2ˆDܘ4Ÿ=™=¨$Ó/°5Ó8Ð 8Ð8ñ    9÷     0ð    0ús »CÃCN)rrrrWrurxr€rŠrŒr’ršrr¡r¥r§r©r¬r±rµrºr¼r¾rÁrAÚmarkÚ parametrizerrÔrrrraratsׄò#@òJ4ò( ò*òò0ò( ò 9òD
&ò 4ò 4ò 4ò&ò
*ò >ò<ò ò
ò
=ò ð ‡[[×ÑØ*ðVÙðóð  Ð1ð
ðIÙðóð˜ð
ð    
óñ69ó7ñ69rracóŒ—eZdZd„Zd„Zd„Zd„Zd„Zd„Zd„Z    d„Z
e jjd    gd
¢«d „«Ze jjd    gd ¢«d „«Ze jjd    gd¢«e jj!d«d„««Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zy)Ú TestOptionscóN—t|d«tjtd¬«}|5t    |«5}|j
sJ‚|j sJ‚|jdddœk(sJ‚|jddgk(sJ‚|jd    d
gk(sJ‚|jd d gk(sJ‚|jd dgk(sJ‚|jgd¢k(sJ‚|jgd¢k(sJ‚|jdk(sJ‚|jddgk(sJ‚    ddd«ddd«y#1swYŒxYw#1swYyxYw)NaÎ[options]
zip_safe = True
include_package_data = yes
package_dir = b=c, =src
packages = pack_a, pack_b.subpack
namespace_packages = pack1, pack2
scripts = bin/one.py, bin/two.py
eager_resources = bin/one.py, bin/two.py
install_requires = docutils>=0.3; pack ==1.1, ==1.3; hey
setup_requires = docutils>=0.3; spack ==1.1, ==1.3; there
dependency_links = http://some.com/here/1, http://some.com/there/2
python_requires = >=1.0, !=2.8
py_modules = module1, module2
Únamespace_packagesrÆÚsrcÚc©rrƒÚpack_aúpack_b.subpackÚpack1Úpack2ú
bin/one.pyú
bin/two.pyúhttp://some.com/here/1úhttp://some.com/there/2©ú docutils>=0.3úpack==1.1,==1.3Úhey©rçzspack ==1.1, ==1.3Útherez >=1.0, !=2.8Úmodule1Úmodule2)r7rArÉr r?Úzip_safeÚinclude_package_datar6ÚpackagesrÚrQÚdependency_linksÚinstall_requiresÚsetup_requiresÚpython_requiresÚ
py_modules©rTr0Údeprecr>s    rrWzTestOptions.test_basicÕsf€ÜØ ð .ô    
ô"—‘Ô:ÐBVÔWˆØ ñ    =”X˜fÓ%ð    =¨Ø—=’=Ð  =Ø×,Ò,Ð ,Ð,Ø×#Ñ#¨E¸Ñ'<Ò<Ð <Ð<Ø—=‘= XÐ/?Ð$@Ò@Ð @Ð@Ø×*Ñ*¨w¸Ð.@Ò@Ð @Ð@Ø—<‘< L°,Ð#?Ò?Ð ?Ð?Ø×(Ñ(Ø(Ø)ð.òð ðð×(Ñ(ò.òð ðð
×&Ñ&ò,òð ðð
×'Ñ'¨>Ò9Ð 9Ð9Ø—?‘? y°)Ð&<Ò<Ð <Ñ<÷-    =÷    =÷    =ñ    =ú÷    =ð    =ús#ª D¶CDÃ>DÄD    ÄDÄD$cóΗt|d«tjtd¬«}|5t    |«5}|j
dddœk(sJ‚|j ddgk(sJ‚|jd    d
gk(sJ‚|jd d gk(sJ‚|jd dgk(sJ‚|jgd¢k(sJ‚|jgd¢k(sJ‚    ddd«ddd«y#1swYŒxYw#1swYyxYw)Naˆ[options]
package_dir = 
  b=c
  =src
packages = 
  pack_a
  pack_b.subpack
namespace_packages = 
  pack1
  pack2
scripts = 
  bin/one.py
  bin/two.py
eager_resources = 
  bin/one.py
  bin/two.py
install_requires = 
  docutils>=0.3
  pack ==1.1, ==1.3
  hey
setup_requires = 
  docutils>=0.3
  spack ==1.1, ==1.3
  there
dependency_links = 
  http://some.com/here/1
  http://some.com/there/2
rÚrÆrÛrÜrÝrÞrßràrárârãrärårærê) r7rArÉr r?r6rðrÚrQrñròrórös    rrŒzTestOptions.test_multilines€ÜØ ð *ô    
ô<—‘Ô:ÐBVÔWˆØ ñ    ”X˜fÓ%ð    ¨Ø×#Ñ#¨E¸Ñ'<Ò<Ð <Ð<Ø—=‘= XÐ/?Ð$@Ò@Ð @Ð@Ø×*Ñ*¨w¸Ð.@Ò@Ð @Ð@Ø—<‘< L°,Ð#?Ò?Ð ?Ð?Ø×(Ñ(Ø(Ø)ð.òð ðð×(Ñ(ò.òð ðð
×&Ñ&ò,òð ñ÷    ÷    ÷    ñ    ú÷    ð    ús#ª C¶BCÂ>CÃC    ÃCÃC$cóܗt|d«t|d¬«5}tjt«5|j «ddd«ddd«y#1swYŒxYw#1swYyxYw)Nz[options]
package_dir = a b
Fr}r«rws   rÚtest_package_dir_failz!TestOptions.test_package_dir_fail4sa€ÜÐ9Ô:Ü f EÔ *ð    *¨dÜ—‘Ô3Ó4ñ *Ø×'Ñ'Ô)÷ *÷    *ð    *÷ *ð *ú÷    *ð    *úr­cóº—t|d«t|«5}|jddgdgdœk(sJ‚|jddgdgdœk(sJ‚    ddd«y#1swYyxYw)    Nz}[options.package_data]
* = *.txt, *.rst
hello = *.msg
 
[options.exclude_package_data]
* = fake1.txt, fake2.txt
hello = *.dat
z*.txtz*.rstz*.msg)rÚhelloz    fake1.txtz    fake2.txtz*.dat)r7r?Ú package_dataÚexclude_package_datarws   rÚtest_package_datazTestOptions.test_package_data:s‰€ÜØ ð ô        
ôfÓ ð     Ø×$Ñ$ؘgÐ&Ø!˜ñ)òð ðð×,Ñ,Ø  +Ð.Ø!˜ñ1òð ñ÷     ÷    ñ    ús ˜/AÁAcó‚—t|d«t|«5}|jdgk(sJ‚    ddd«y#1swYyxYw)Núptions]
packages = find:
rœ)r7r?rðrws   rÚ test_packageszTestOptions.test_packagesPsA€ÜÐ8Ô9ä fÓ ð    5 Ø—=‘= ^Ð$4Ò4Ð 4Ñ4÷    5÷    5ñ    5ús˜5µ>có—t|d«\}}td|«td|«t|«5}t|j«tgd¢«k(sJ‚    ddd«|j d«t|«5}|jdgk(sJ‚    ddd«|j d«t|«5}t|j«tdd    g«k(sJ‚    ddd«y#1swYŒxYw#1swYŒaxYw#1swYyxYw)
NrÚsub_oneÚsub_two)rœúfake_package.sub_twoúfake_package.sub_onezi[options]
packages = find:
 
[options.packages.find]
where = .
include =
    fake_package.sub_one
    two
rzW[options]
packages = find:
 
[options.packages.find]
exclude =
    fake_package.sub_one
rœr©r7r)r?r¯rðr"©rTr0r&r5r>s     rÚtest_find_directivezTestOptions.test_find_directiveVs€Ü& vÐ/NÓOш V䘠KÔ0ܘ KÔ0ä fÓ ð     Üt—}‘}Ó%¬ò.ó*òð ñ÷    ð     ‰ ð ô        
ôfÓ ð    = Ø—=‘=Ð%;Ð$<Ò<Ð <Ñ<÷    =ð     ‰ ð )ô    
ôfÓ ð    W Üt—}‘}Ó%¬¨nÐ>TÐ-UÓ)VÒVÐ VÑV÷    Wð    W÷9    ð    ú÷"    =ð    =ú÷    Wð    Wús#³&C&Á>C2Â6&C>Ã&C/Ã2C;Ã>Dcóô—t|d«\}}td|«td|d¬«t|«5}t|j«hd£k(sJ‚    ddd«|j d«t|«5}|jdgk(sJ‚    ddd«|j d    «t|«5}t|j«d
d hk(sJ‚    ddd«y#1swYŒ„xYw#1swYŒXxYw#1swYyxYw) Nz%[options]
packages = find_namespace:
rrT)r%>rœrrzs[options]
packages = find_namespace:
 
[options.packages.find]
where = .
include =
    fake_package.sub_one
    two
rza[options]
packages = find_namespace:
 
[options.packages.find]
exclude =
    fake_package.sub_one
rœrrr    s     rÚtest_find_namespace_directivez)TestOptions.test_find_namespace_directive{s€Ü&Ø Ð=ó
ш Vô    ˜ KÔ0ܘ K°DÕ9ä fÓ ð     Üt—}‘}Ó%ò*òð ñ÷    ð     ‰ ð ô        
ôfÓ ð    = Ø—=‘=Ð%;Ð$<Ò<Ð <Ñ<÷    =ð     ‰ ð )ô    
ôfÓ ð    R Üt—}‘}Ó%¨.Ð:PÐ)QÒQÐ QÑQ÷    Rð    R÷9    ð    ú÷"    =ð    =ú÷    Rð    Rús#µCÁ7C"Â/C.ÃCÃ"C+Ã.C7cóڗt|d«t|«5}|jddgddgdœk(sJ‚t|jj
«ddhk(sJ‚    ddd«y#1swYyxYw)    Nz_[options.extras_require]
pdf = ReportLab>=1.2; RXP
rest = 
  docutils>=0.3
  pack ==1.1, ==1.3
zReportLab>=1.2ÚRXPrçrè)ÚpdfÚrestrr)r7r?Úextras_requirer¯rJÚprovides_extrasrws   rÚtest_extras_requirezTestOptions.test_extras_require¢sˆ€ÜØ ð $ô    
ôfÓ ð    I Ø×&Ñ&Ø(¨%Ð0Ø(Ð*;Ð<ñ+òð ðôt—}‘}×4Ñ4Ó5¸%À¸ÒHÐ HÑH÷     I÷    Iñ    Iús ˜?A!Á!A*r5)z5[options.extras_require]
foo = bar;python_version<'3'z3[options.extras_require]
foo = bar;os_name=='linux'z6[options.extras_require]
foo = bar;python_version<'3'
z4[options.extras_require]
foo = bar;os_name=='linux'
z3[options]
install_requires = bar;python_version<'3'z1[options]
install_requires = bar;os_name=='linux'z4[options]
install_requires = bar;python_version<'3'
z2[options]
install_requires = bar;os_name=='linux'
có—t||«d}tjt|¬«5t    |«5}    ddd«ddd«y#1swYŒxYw#1swYyxYw©NzoOne of the parsed requirements in `(install_requires|extras_require.+)` looks like a valid environment marker.*rÆ)r7rArBrr?©rTr5r0rÇrUs     rÚ+test_raises_accidental_env_marker_misconfigz7TestOptions.test_raises_accidental_env_marker_misconfig³se€ô    ˜Ô ð 6ð    ô]‰]Ô-°UÔ ;ñ    Ü˜&Ó!ð  QØ÷ ÷    ð    ÷ ð ú÷    ð    úó!ª A¶A    ¸AÁ    A    ÁAÁA)z3[options.extras_require]
foo = bar;python_version<3z4[options.extras_require]
foo = bar;python_version<3
z1[options]
install_requires = bar;python_version<3z2[options]
install_requires = bar;python_version<3
có—t||«d}tjt|¬«5t    |«5}    ddd«ddd«y#1swYŒxYw#1swYyxYwr)r7rArÉr r?rs     rÚ)test_warn_accidental_env_marker_misconfigz5TestOptions.test_warn_accidental_env_marker_misconfigÊse€ô    ˜Ô ð 6ð    ô\‰\Ô6¸eÔ Dñ    Ü˜&Ó!ð  QØ÷ ÷    ð    ÷ ð ú÷    ð    úr)
z9[options.extras_require]
foo =
    bar;python_version<'3'z4[options.extras_require]
foo = bar;baz
boo = xxx;yyyz:[options.extras_require]
foo =
    bar;python_version<'3'
z5[options.extras_require]
foo = bar;baz
boo = xxx;yyy
z<[options.extras_require]
foo =
    bar
    python_version<3
z7[options]
install_requires =
    bar;python_version<'3'z2[options]
install_requires = bar;baz
boo = xxx;yyyz8[options]
install_requires =
    bar;python_version<'3'
z3[options]
install_requires = bar;baz
boo = xxx;yyy
z:[options]
install_requires =
    bar
    python_version<3
z.error::setuptools.SetuptoolsDeprecationWarningcó”—t||«t|«}t|«5}    ddd«t|«|k(sJ‚y#1swYŒxYw)N)r7Úlenr?)rTr5r0ÚrecwarnÚ num_warningsrUs      rÚ+test_nowarn_accidental_env_marker_misconfigz7TestOptions.test_nowarn_accidental_env_marker_misconfigÝsM€ô"    ˜Ô Ü˜7“|ˆ Ü fÓ ð     Ø ÷    ô7‹|˜|Ò+Ð+Ñ+÷    ð    ús    £>¾AcóŠ—t|d«t|«5}|jdgdgdœk(sJ‚    ddd«y#1swYyxYw)Nz2[options.extras_require]
foo-a = foo
foo_b = test
rsÚtest)zfoo-aÚfoo_b)r7r?rrws   rÚ"test_dash_preserved_extras_requirez.TestOptions.test_dash_preserved_extras_requireõsM€ÜÐPÔQä fÓ ð    P Ø×&Ñ&°U°GÀvÀhÑ*OÒOÐ OÑO÷    P÷    Pñ    Pús    ˜9¹Acó\—t|d«\}}t|«5}|jddgdgdœk(sJ‚    ddd«d}|jd«j    |«|j    d«t|«5}|j|k(sJ‚    ddd«y#1swYŒcxYw#1swYyxYw)    Nz‡[options.entry_points]
group1 = point1 = pack.module:func, .point2 = pack.module2:func_rest [rest]
group2 = point3 = pack.module:func2
úpoint1 = pack.module:funcú'.point2 = pack.module2:func_rest [rest]úpoint3 = pack.module:func2)Úgroup1Úgroup2zN[blogtool.parsers]
.rst = some.nested.module:SomeClass.some_classmethod[reST]
Ú entry_pointsz,[options]
entry_points = file: entry_points
)r7r?r*r!r")rTr0rUr5r>r°s      rÚtest_entry_pointszTestOptions.test_entry_pointsûsԀÜØ ð 4ó
‰    ˆˆ6ôfÓ ð     Ø×$Ñ$à/Ø=ðð8Ð8ñ )òð ñ÷    ð Kð    ð
     ‰ NÓ#×)Ñ)¨(Ô3ð     ‰ ÐEÔFä fÓ ð    1 Ø×$Ñ$¨Ò0Ð 0Ñ0÷    1ð    1÷'    ð    ú÷&    1ð    1ús›BÁ:B"ÂBÂ"B+cóŒ—t|d«t|«5}|jddgdgdœk(sJ‚    ddd«y#1swYyxYw)Nz‡[options.entry_points]
GROUP1 = point1 = pack.module:func, .point2 = pack.module2:func_rest [rest]
group2 = point3 = pack.module:func2
r%r&r')ÚGROUP1r))r7r?r*rws   rÚ test_case_sensitive_entry_pointsz,TestOptions.test_case_sensitive_entry_pointssc€ÜØ ð 4ô    
ôfÓ ð     Ø×$Ñ$à/Ø=ðð8Ð8ñ )òð ñ÷    ÷    ñ    ús    ˜:ºAcó¼—t|d«t|«5}dddgfdddgfg}t|j«t|«k(sJ‚    ddd«y#1swYyxYw)NzQ[options.data_files]
cfg =
      a/b.conf
      c/d.conf
data = e/f.dat, g/h.dat
Úcfgúa/b.confúc/d.confÚdataze/f.datzg/h.dat)r7r?ÚsortedÚ
data_files©rTr0r>r°s    rÚtest_data_fileszTestOptions.test_data_files,sr€ÜØ ð (ô    
ôfÓ ð    ? à˜ ZÐ0Ð1ؘ) YÐ/Ð0ðˆHô˜$Ÿ/™/Ó*¬f°XÓ.>Ò>Ð >Ñ>÷     ?÷    ?ñ    ?ús ˜0AÁAcó—t|d«|jd«jd«|jd«jd«|jd«jd«|jd«jd«|jd«jd«|jd«jd«|jd    «jd«|jd
«jd«|jd «jd«t|«5}d d dgfdgd¢fdgd¢fdgd¢fg}t    |j
«t    |«k(sJ‚    ddd«y#1swYyxYw)Nz€[options.data_files]
cfg =
      a/b.conf
      c/d.conf
data = *.dat
icons = 
      *.ico
audio = 
      *.wav
      sounds.db
úa.datrúb.datúc.datúa.icoúb.icoúc.icoúbeep.wavúboop.wavú    sounds.dbr0r1r2r3)r9r:r;Úicons)r<r=r>Úaudio)r?r@rA)r7r!r"r?r4r5r6s    rÚtest_data_files_globbyz"TestOptions.test_data_files_globby=sO€ÜØ ð      ô     
ð     ‰ GÓ×"Ñ" 2Ô&؏ ‰ GÓ×"Ñ" 2Ô&؏ ‰ GÓ×"Ñ" 2Ô&؏ ‰ GÓ×"Ñ" 2Ô&؏ ‰ GÓ×"Ñ" 2Ô&؏ ‰ GÓ×"Ñ" 2Ô&؏ ‰ JÓ×%Ñ% bÔ)؏ ‰ JÓ×%Ñ% bÔ)؏ ‰ KÓ ×&Ñ& rÔ*ä fÓ ð    ? à˜ ZÐ0Ð1ØÒ4Ð5ØÒ5Ð6ØÒ?Ð@ð    ˆHô ˜$Ÿ/™/Ó*¬f°XÓ.>Ò>Ð >Ñ>÷    ?÷    ?ñ    ?ús Ä8:E<Å<FcóŽ—t|td««t|«5}|j«ddd«y#1swYyxYw)NzE
            [options]
            python_requires=>=2.7
            ©r7rr?r;rws   rÚtest_python_requires_simplez'TestOptions.test_python_requires_simple`óG€ÜØ Ü ðó ô    
ôfÓ ð    & Ø × #Ñ #Ô %÷    &÷    &ñ    &úó    ¡;»AcóŽ—t|td««t|«5}|j«ddd«y#1swYyxYw)NzM
            [options]
            python_requires=>=2.7,!=3.0.*
            rFrws   rÚtest_python_requires_compoundz)TestOptions.test_python_requires_compoundmrHrIcóê—t|td««tjt«5t |«5}|j «ddd«ddd«y#1swYŒxYw#1swYyxYw)NzG
            [options]
            python_requires=invalid
            )r7rrArBÚ    Exceptionr?r;rws   rÚtest_python_requires_invalidz(TestOptions.test_python_requires_invalidzsm€ÜØ Ü ðó ô    
ô]‰]œ9Ó %ñ    *ܘ&Ó!ð * TØ×'Ñ'Ô)÷ *÷    *ð    *÷ *ð *ú÷    *ð    *ús"¯ A)»AÁ A)ÁA&    Á"A)Á)A2có®—t|d«}|jjdd¬«|jdd¬«d}t    |t j |««t|«5}|jd}|jd    k(sJ‚|jd
k(sJ‚|jt j|««sJ‚    ddd«y#1swYyxYw) Nzsrc/custom_build.pyT)ÚparentsÚexist_okzBfrom distutils.core import Command
class CustomCmd(Command): pass
r·r¸zi
            [options]
            cmdclass =
                customcmd = custom_build.CustomCmd
        Ú    customcmdÚ    CustomCmdÚ custom_build) rÚparentr Ú
write_textr7ÚinspectÚcleandocr?ÚcmdclassrrÚsamefileÚgetfile)rTr0Ú module_pathr1r>rYs      rÚ test_cmdclasszTestOptions.test_cmdclassˆsՀܘ6Ð#8Ó9ˆ Ø×Ñ× Ñ ¨¸Ð Ô=Ø×ÑØ RØð    ô    
ð
 ˆ    ô
    œ×)Ñ)¨)Ó4Ô5ä fÓ ð    C Ø—}‘} [Ñ1ˆHØ×$Ñ$¨ Ò3Ð 3Ð3Ø×&Ñ&¨.Ò8Ð 8Ð8Ø×'Ñ'¬¯©¸Ó(AÔBÐ BÑB÷        C÷    Cñ    Cús Á)AC à Ccó<—t|td««|jd«jd«|jd«jd«t    |«5}|j
dgk(sJ‚|j ddgik(sJ‚    ddd«y#1swYyxYw)Nz®
            [options]
            install_requires = file:requirements.txt
            [options.extras_require]
            colors = file:requirements-extra.txt
            zrequirements.txtz
docutils>=0.3
 
zrequirements-extra.txtÚcoloramarçÚcolors)r7rr!r"r?ròrrws   rÚtest_requirements_filez"TestOptions.test_requirements_files¢€ÜØ Ü ðó ô
    
ð     ‰ Ð&Ó'×-Ñ-Ð.CÔD؏ ‰ Ð,Ó-×3Ñ3°JÔ?ä fÓ ð    C Ø×(Ñ(¨_Ð,=Ò=Ð =Ð=Ø×&Ñ&¨8°j°\Ð*BÒBÐ BÑB÷    C÷    Cñ    Cús Á!'BÂBN)rrrrWrŒrúrÿrr
r rrArÕrÖrrÚfilterwarningsrr#r+r.r7rDrGrKrNr]rarrrrØrØÔs„ò)=òV2òh*ò ò,5ò #WòJ%RòNIð" ‡[[×ÑØò        
ó ñó ðð ‡[[×ÑØò    
óñóðð ‡[[×ÑØò     
óð ‡[[×ÑРPÓQñ,óRóð ,òPò 1ò>ò$?ò"!?òF &ò &ò *òCó*CrrØcóH—eZdZd„Zej
edd¬«d„«Zy)ÚTestExternalSetterscóf—t||«d|j_dddœ|j_y)NrfrŽrr)Úsaved_dist_initrJrlr‘)rTr>Úattrss   rÚ_fake_distribution_initz+TestExternalSetters._fake_distribution_initÀs.€Ü˜˜eÔ$à6Fˆ ‰ Ô3ð3Ø2ñ&
ˆ ‰ Õ"rÚ__init__T)Úautospeccó¸—|j|_tdddii¬«}|jjdk(sJ‚|jj
dddœk(sJ‚y)    Nr‘Úwill_beÚignored)rgrfrŽrr)rhÚ side_effectr
rJrlr‘)rTÚmock_parent_initr0r>s    rÚtest_external_settersz)TestExternalSetters.test_external_settersÊse€à'+×'CÑ'CÐÔ$ä >°I¸yÐ3IÐ"JÔKˆà}‰}×:Ñ:Ð>NÒNÐNÐN؏}‰}×)Ñ)Ø2Ø2ñ.
ò
ð    
ñ
rN)rrrrhrÚobjectr rprrrrdrdµs*„ò
ð€U‡\\- °dÔ;ñ    
ó<ñ    
rrd)F)NÚasciirœ)NT)&r³Ú
contextlibrWrÊÚpathlibrÚ unittest.mockrrrAÚpackaging.requirementsrÚsetuptools.config.setupcfgrrr    Úsetuptools.distr
r Úsetuptools.warningsr ÚtextwraprÚdistutils.errorsrrrr)r7Úcontextmanagerr?rFrHrarØrirfrdrrrú<module>r}s®ðÛÛÛÛ    Ýß%ã Ý5çPÑPß7Ý<åçEô} VÑ,ôó "ðFTóð2 ×Ñòóðò÷ !ñ!÷H]9ñ]9÷@ [Cñ[Cð| ×(Ñ(€÷
ò
r