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
Ë
¸^i¾ãó$—ddlZddlZddlZddlZddlZddlZddlZddlmZm    Z    m
Z
ddl m Z ddl mZddlmZmZmZddlmZddlmZddlmZmZmZmZmZmZmZmZm Z m!Z!m"Z"m#Z#m$Z$m%Z%m&Z&m'Z'm(Z(ddl)Z)dd    l)m*Z*m+Z+d
d l,m-Z-m.Z.d
d l/m0Z0m1Z1d
d l2m3Z3m4Z4m5Z5m6Z6m7Z7m8Z8m9Z9m:Z:m;Z;m<Z<m=Z=d
dl>m?Z?d
dl@mAZAmBZBmCZCd
dl.mDZDmEZEmFZFmGZGmHZHmIZImJZJd
dlKmLZLd
dlMmNZNejždk\rddlPmQZQn    e'eReSddfZQerddlTZTeTjªZUn    ddlTZTeTjªZUeXdh«ZYeXddh«ZZeXddh«Z[eZeYzZ\e\e[zZ]dejžcxkxrdkncxsejždkZ^dZ_erd
d l`maZad
d!l@mbZbd
d"lcmdZdGd#„d$«Zed%e eeWd&dfd'„ZfGd(„d)«ZgGd*„d+eg«ZhGd,„d-«ZiGd.„d/«ZjGd0„d1«Zkd2eld&eUfd3„Zmemd4«Znemd5«ZoGd6„d7ej«ZpGd8„d9ej«ZqGd:„d;ej«Zry#eV$rdZTeWZUYŒøwxYw)<éN)Ú OrderedDictÚ defaultdictÚdeque)Úsuppress)Ú
HTTPStatus)ÚchainÚcycleÚislice)Ú    monotonic)Ú TracebackType)Ú TYPE_CHECKINGÚAnyÚ    AwaitableÚCallableÚ DefaultDictÚDequeÚDictÚIteratorÚListÚLiteralÚOptionalÚSequenceÚSetÚTupleÚTypeÚUnionÚcast)Ú AddrInfoTypeÚSocketFactoryTypeé)ÚhdrsÚhelpers)ÚAbstractResolverÚ ResolveResult) ÚClientConnectionErrorÚClientConnectorCertificateErrorÚClientConnectorDNSErrorÚClientConnectorErrorÚClientConnectorSSLErrorÚClientHttpProxyErrorÚClientProxyConnectionErrorÚServerFingerprintMismatchÚUnixClientConnectorErrorÚ cert_errorsÚ
ssl_errors)ÚResponseHandler)Ú ClientRequestÚ FingerprintÚ_merge_ssl_params)Ú    _SENTINELÚ ceil_timeoutÚ is_ip_addressÚnoopÚsentinelÚ set_exceptionÚ
set_result)Ú client_logger)ÚDefaultResolver©éé )ÚBufferzmemoryview[int]zmemoryview[bytes]ÚÚhttpÚhttpsÚwsÚwss)r>é r)r>rFr )r>r?é)Ú BaseConnectorÚ TCPConnectorÚ UnixConnectorÚNamedPipeConnectorrr)Ú ClientTimeout)Ú ConnectionKey)ÚTracecó:—eZdZdZdeeddfd„Zdefd„Zdd„Zy)    Ú_DeprecationWaiter©Ú
_awaitableÚ_awaitedÚ    awaitableÚreturnNcó —||_d|_y©NFrQ)ÚselfrTs  õdH:\项目\archive\测试组\脚本\Change_password\venv_build\Lib\site-packages\aiohttp/connector.pyÚ__init__z_DeprecationWaiter.__init__ws€Ø#ˆŒØˆ ócóD—d|_|jj«S)NT)rSrRÚ    __await__©rXs rYr]z_DeprecationWaiter.__await__{s€ØˆŒ ؏‰×(Ñ(Ó*Ð*r[cóR—|jstjdt«yy)NzDConnector.close() is a coroutine, please use await connector.close())rSÚwarningsÚwarnÚDeprecationWarningr^s rYÚ__del__z_DeprecationWaiter.__del__s"€Ø}Š}Ü M‰Mð5ä"õ ðr[©rUN)    Ú__name__Ú
__module__Ú __qualname__Ú    __slots__rrrZr]rc©r[rYrPrPts/„Ø*€Ið )¨C¡.ð°Tóð+˜3ó+ôr[rPÚwaitersrUcƒó¦K—tj|ddiŽƒd{–—†}|D])}t|t«sŒt    j
d|«Œ+y7Œ3­w)z'Wait for all waiters to finish closing.Úreturn_exceptionsTNz!Error while closing connector: %r)ÚasyncioÚgatherÚ
isinstanceÚ    Exceptionr;Údebug)rjÚresultsÚress   rYÚ_wait_for_closertˆsNèø€ä—N‘N GÐD¸tÑD×D€GØòJˆÜ cœ9Õ %Ü × Ñ РCÀSÕ IñJðEús‚A›AœA¶Ac
ó0—eZdZdZdddddedej ddf
d    „Zdefd
„Z    e
fd e ddfd „Z de d fd„Zedej fd„«Zedeej$fd„«Zedeefd„«Zdegdfddfd„Zdd„Zdd„Zdd„Zedefd„«Zy)Ú
ConnectionNÚ    connectorrHÚkeyrMÚprotocolÚlooprUcóƗ||_||_||_||_g|_|j «r.t jtjd««|_
yy)Nr ) Ú_keyÚ
_connectorÚ_loopÚ    _protocolÚ
_callbacksÚ    get_debugÚ    tracebackÚ extract_stackÚsysÚ    _getframeÚ_source_traceback)rXrwrxryrzs     rYrZzConnection.__init__”sR€ðˆŒ    Ø#ˆŒØˆŒ
Ø4<ˆŒØ46ˆŒà >‰>Ô Ü%.×%<Ñ%<¼S¿]¹]È1Ó=MÓ%NˆDÕ "ð r[có"—d|j›dS)Nz Connection<ú>)r|r^s rYÚ__repr__zConnection.__repr__¤s€Ø˜TŸY™Y˜K qÐ)Ð)r[Ú    _warningscól—|j¨d|i}|jd|›tfi|¤Ž|jj    «ry|j
j |j|jd¬«|ddœ}|j|j|d<|jj|«yy)NÚsourcezUnclosed connection T©Ú should_closezUnclosed connection)Úclient_connectionÚmessageÚsource_traceback)
rraÚResourceWarningr~Ú    is_closedr}Ú_releaser|r†Úcall_exception_handler)rXrŠÚkwargsÚcontexts    rYrczConnection.__del__§s¦€Ø >‰>Ð %Ø Ð%ˆFØ ˆIN‰NÐ1°$°Ð:¼OÑ VÈvÒ V؏z‰z×#Ñ#Ô%Øà O‰O× $Ñ $ T§Y¡Y°·±ÈTÐ $Ô Rà,0Ð=RÑSˆGØ×%Ñ%Ð1Ø.2×.DÑ.DÐ*Ñ+Ø J‰J× -Ñ -¨gÕ 6ð &r[Tcó—y)z9Force subclasses to not be falsy, to make checks simpler.Trir^s rYÚ__bool__zConnection.__bool__µs€àr[cóR—tjdtd¬«|jS)Nz%connector.loop property is deprecatedé©Ú
stacklevel)r`rarbr~r^s rYrzzConnection.loop¹s#€ä ‰ Ø 3Ô5GÐTUõ    
ðz‰zÐr[cóH—|j€y|jjS©N)rÚ    transportr^s rYr zConnection.transportÀs€à >‰>Ð !ØØ~‰~×'Ñ'Ð'r[có—|jSrŸ)rr^s rYryzConnection.protocolÆs €à~‰~Ðr[Úcallbackcó@—||jj|«yyrŸ)r€Úappend)rXr¢s  rYÚ add_callbackzConnection.add_callbackÊs€Ø Ð Ø O‰O× "Ñ " 8Õ ,ð  r[có–—|jddgc}|_|D]!}tt«5|«ddd«Œ#y#1swYŒ.xYwrŸ)r€rrp)rXÚ    callbacksÚcbs   rYÚ_notify_releasezConnection._notify_releaseÎsO€Ø%)§_¡_±QÐ%7¸Ð"ˆ    4”?àò    ˆBÜœ)Ó$ñ Ù”÷ ð ñ    ÷ ð ús    ¬?¿A    có°—|j«|j:|jj|j|jd¬«d|_yy)NTr©r©rr}r”r|r^s rYÚclosezConnection.closeÕsE€Ø ×ÑÔà >‰>Ð %Ø O‰O× $Ñ $ T§Y¡Y°·±ÈTÐ $Ô RØ!ˆDNð &r[có¬—|j«|j8|jj|j|j«d|_yyrŸr«r^s rYÚreleasezConnection.releaseÜs@€Ø ×ÑÔà >‰>Ð %Ø O‰O× $Ñ $ T§Y¡Y°·±Ô ?Ø!ˆDNð &r[cóX—|jduxs|jj« SrŸ)rÚ is_connectedr^s rYÚclosedzConnection.closedãs&€à~‰~ Ð%ÒJ¨T¯^©^×-HÑ-HÓ-JÐ)JÐJr[rd)rerfrgr†r0rmÚAbstractEventLooprZÚstrr‰r`rrcrr™ÚpropertyrzrÚ    Transportr ryrr¥r©r¬r®Úboolr±rir[rYrvrvs-„àÐðOà"ðOððOð"ð    Oð
×'Ñ'ð Oð
ó Oð *˜#ó*ð(0ñ 7 ð 7°Dó 7ð˜' $™-óððg×/Ñ/òóðð ð(˜8 G×$5Ñ$5Ñ6ò(óð(ð
ð˜( ?Ñ3òóðð- X¨b°$¨hÑ%7ð-¸Dó-óó"ó"ððK˜òKóñKr[rvcó—eZdZdZdd„Zy)Ú_ConnectTunnelConnectiona¨Special connection wrapper for CONNECT tunnels that must never be pooled.
 
    This connection wraps the proxy connection that will be upgraded with TLS.
    It must never be released to the pool because:
    1. Its 'closed' future will never complete, causing session.close() to hang
    2. It represents an intermediate state, not a reusable connection
    3. The real connection (with TLS) will be created separately
    Ncó—y)aaDo nothing - don't pool or close the connection.
 
        These connections are an intermediate state during the CONNECT tunnel
        setup and will be cleaned up naturally after the TLS upgrade. If they
        were to be pooled, they would never be properly closed, causing
        session.close() to wait forever for their 'closed' future.
        Nrir^s rYr®z _ConnectTunnelConnection.releaseòór[rd)rerfrgÚ__doc__r®rir[rYr¸r¸ès „ñô r[r¸cóT—eZdZdZdZdej eeddfd„Z    d    d„Z
d    d„Z y)
Ú_TransportPlaceholderz.placeholder for BaseConnector.connect function©r±r Ú closed_futurerUNcó —||_d|_y)z)Initialize a placeholder for a transport.Nr¾)rXr¿s  rYrZz_TransportPlaceholder.__init__s€à#ˆŒ ؈r[có—y)zClose the placeholder.Nrir^s rYr¬z_TransportPlaceholder.closerºr[có—y)z%Abort the placeholder (does nothing).Nrir^s rYÚabortz_TransportPlaceholder.abort    rºr[rd) rerfrgr»rhrmÚFuturerrprZr¬rÃrir[rYr½r½üs5„Ù8à'€Ið g§n¡n°X¸iÑ5HÑ&IðÈdóó
%ô4r[r½cób—eZdZdZdZdZdZeZe    ddddddd    œd
e
e de fd e d ed ede deej"de ddfd„Zefdeddfd„Zd;d„Zdeddfd„Zd;d„Z            d<deeedeedeeddfd„Zede fd„«Zedefd„«Zedefd„«Z d=d „Z!d=d!„Z"dd"œd#e de#dfd$„Z$dd"œd#e de%e#e fd%„Z&ede fd&„«Z'd'd(defd)„Z(d*e)de)fd+„Z*d*e)d,e%d-d.d/de+fd0„Z,d'd(d,e%d-ddfd1„Z-d'd(d,e%d-dee+fd2„Z.d=d3„Z/d'd(d4e0ddfd5„Z1dd6œd'd(d7e0d8e ddfd9„Z2d*e)d,e%d-d.d/de0fd:„Z3y)>rHa\Base connector class.
 
    keepalive_timeout - (optional) Keep-alive timeout.
    force_close - Set to True to force close and do reconnect
        after each request (and between redirects).
    limit - The total number of simultaneous connections.
    limit_per_host - Number of simultaneous connections to one host.
    enable_cleanup_closed - Enables clean-up closed ssl transports.
                            Disabled by default.
    timeout_ceil_threshold - Trigger ceiling of timeout values when
                             it's above timeout_ceil_threshold.
    loop - Optional event loop.
    TNg@Fédré©Úkeepalive_timeoutÚ force_closeÚlimitÚlimit_per_hostÚenable_cleanup_closedrzÚtimeout_ceil_thresholdrÉrÊrËrÌrÍrzrÎrUcól—|r||turtd«‚|turd}|xstj«}||_d|_|j «r-tjtjd««|_ tt«|_||_||_t#«|_tt"«|_t)t*|«|_||_tt0«|_||_t7j8t:|¬«|_d|_d|_ |r5tBs/tEjFdtjH›tJd¬«d}| |_&g|_'|jQ«|_)|jRjUd«|jW«y)    Nz6keepalive_timeout cannot be set if force_close is Trueg.@Fr ©rzzoenable_cleanup_closed ignored because https://github.com/python/cpython/pull/118960 is fixed in Python version r›rœ),r8Ú
ValueErrorrmÚget_running_loopÚ_timeout_ceil_thresholdÚ_closedrr‚rƒr„r…r†rrÚ_connsÚ_limitÚ_limit_per_hostÚsetÚ    _acquiredÚ_acquired_per_hostrÚfloatÚ_keepalive_timeoutÚ _force_closerÚ_waitersr~Ú    functoolsÚpartialr0Ú_factoryÚ_cleanup_handleÚ_cleanup_closed_handleÚNEEDS_CLEANUP_CLOSEDr`raÚ version_inforbÚ_cleanup_closed_disabledÚ_cleanup_closed_transportsÚ create_futureÚ_placeholder_futurer:Ú_cleanup_closed)rXrÉrÊrËrÌrÍrzrÎs        rYrZzBaseConnector.__init__$s˜€ñ Ø Ð,Ð1BÌ(Ñ1RÜ ØLóðð!¤HÑ,Ø$(Ð!àÒ1”w×/Ñ/Ó1ˆØ'=ˆÔ$àˆŒ Ø >‰>Ô Ü%.×%<Ñ%<¼S¿]¹]È1Ó=MÓ%NˆDÔ "ô œÓ ð     Œ ðˆŒ Ø-ˆÔÜ/2«uˆŒä œÓ ð     Ôô#'¤uÐ.?Ó"@ˆÔØ'ˆÔô œ Ó $ð     Œ ðˆŒ
Ü!×)Ñ)¬/ÀÔEˆŒ ð?CˆÔðFJˆÔ#á  Õ)=Ü M‰Mð%ä%(×%5Ñ%5Ð$6ð8ô#Øõ  ð%*Ð !à,AÐ(AˆÔ%ØMOˆÔ'à × Ñ Ó  ð     Ô ð     × Ñ ×+Ñ+¨DÔ1Ø ×ÑÕr[rŠcóx—|jry|jsy|jj«Dcgc] }t|«‘Œ}}|j    «d|i}|j
d|›t fi|¤Ž||ddœ}|j|j|d<|jj|«ycc}w)NrŒzUnclosed connector zUnclosed connector)rwÚ connectionsrr‘)
rÔrÕÚvaluesÚreprÚ_closerar’r†r~r•)rXrŠÚcÚconnsr–r—s      rYrczBaseConnector.__del__qs°€Ø <Š<Ø Ø{Š{Ø à"&§+¡+×"4Ñ"4Ó"6Ö7˜Q”a•Ð7ˆÐ7à  ‰ Œ à˜DÐ!ˆØˆ    ‰Ð,¨T¨HÐ5´ÑQÈ&ÒQàØ Ø+ñ
ˆð
× !Ñ !Ð -Ø*.×*@Ñ*@ˆGÐ&Ñ 'Ø 
‰
×)Ñ)¨'Õ2ùò8s·B7có:—tjdt«|S)NzH"with Connector():" is deprecated, use "async with Connector():" instead)r`rarbr^s rYÚ    __enter__zBaseConnector.__enter__†s€Ü ‰ ð 4ä ô    
ð
ˆ r[Úexccó$—|j«yrŸ)rï)rXrôs  rYÚ__exit__zBaseConnector.__exit__Žs €Ø  ‰  r[cƒóK—|S­wrŸrir^s rYÚ
__aenter__zBaseConnector.__aenter__‘s èø€Øˆ ùs‚Úexc_typeÚ    exc_valueÚ exc_tracebackcƒó@K—|j«ƒd{–—†y7Œ­wrŸ)r¬)rXrùrúrûs    rYÚ    __aexit__zBaseConnector.__aexit__”sèø€ð j‰j‹l×Òús ‚–—có—|jS)z1Ultimately close connection on releasing if True.)rÝr^s rYrÊzBaseConnector.force_closeœs€ðנѠРr[có—|jS)z‘The total number for simultaneous connections.
 
        If limit is 0 the connector has no limit.
        The default limit size is 100.
        )rÖr^s rYrËzBaseConnector.limit¡s€ð{‰{Ðr[có—|jS)z¡The limit for simultaneous connections to the same endpoint.
 
        Endpoints are the same if they are have equal
        (host, port, is_ssl) triple.
        )r×r^s rYrÌzBaseConnector.limit_per_hostªs€ð×#Ñ#Ð#r[cóΗ|jr!|jj«d|_t«}|j}|jrÖt t «}||z
}|jj«D]ž\}}t «}|D]‚\}}    |j«r|    |z
dk\r|j||    f«Œ2|j}
|j«|jrŒ[|jsŒh|jj|
«Œ„|sŒš|||<Œ ||_|jr4tj |d||j"|j$¬«|_yy)zCleanup unused transports.NrÚ_cleanup©rÎ)râÚcancelr rÜrÕrrÚitemsr°r¤r r¬ræÚis_sslrçr"Úweakref_handler~rÓ) rXÚnowÚtimeoutrìÚdeadlinerxrñÚaliveÚprotoÚuse_timer s            rYrzBaseConnector._cleanup³s@€à × Ò Ø ×  Ñ  × 'Ñ 'Ô )ð$(ˆDÔ  ä‹kˆØ×)Ñ)ˆà ;Š;Ü%¤eÓ,ˆKؘW‘}ˆHØ"Ÿk™k×/Ñ/Ó1ò -‘
UÜ>C»gØ',òJ‘OE˜8Ø×)Ñ)Ô+°¸8Ñ0CÀqÒ0HØŸ ™  e¨XÐ%6Ô7ؠؠ%§¡IØ—K‘K”MØ×8Ó8¸S¿Z»ZØ×7Ñ7×>Ñ>¸yÕIðJòØ',K Ò$ð -ð&ˆDŒKà ;Š;Ü#*×#9Ñ#9ØØØØ—
‘
Ø'+×'CÑ'Cô $ˆDÕ  ð r[có:—|jr|jj«|jD]}|€Œ|j«Œg|_|js>t j |d|j|j|j¬«|_yy)z~Double confirmation for transport close.
 
        Some broken ssl servers may leave socket open without proper close.
        Nrêr)
rãrrçrÃrær"rÚ_cleanup_closed_periodr~rÓ)rXr s  rYrêzBaseConnector._cleanup_closedÚsŽ€ð
× &Ò &Ø × 'Ñ '× .Ñ .Ô 0à×8Ñ8ò    "ˆIØÑ$Ø—‘Õ!ð    "ð+-ˆÔ'à×,Ò,Ü*1×*@Ñ*@ØØ!Ø×+Ñ+Ø—
‘
Ø'+×'CÑ'Cô +ˆDÕ 'ð-r[©Ú    abort_sslrcó2—|j|¬«x}stt««St|«}tj
dk\r-t j||jd¬«}t|«S|jj|«}t|«S)aClose all opened transports.
 
        :param abort_ssl: If True, SSL connections will be aborted immediately
                         without performing the shutdown handshake. This provides
                         faster cleanup at the cost of less graceful disconnection.
        rr=T©rzÚ eager_start)
rïrPr7rtr„rårmÚTaskr~Ú create_task)rXrrjÚcoroÚtasks     rYr¬zBaseConnector.closeñs‡€ð Ÿ;™;°˜;Ó;Ð;Ð;ô&¤d£fÓ-Ð -ܘwÓ'ˆÜ × Ñ ˜wÒ &ô—<‘< ¨4¯:©:À4ÔHˆDô" $Ó'Ð'ð—:‘:×)Ñ)¨$Ó/ˆDÜ! $Ó'Ð'r[có|—g}|jr|Sd|_    |jj«r®||jj    «|j
j    «|j j«D]}|D]}|j«ŒŒ|j j    «d|_    |jj    «d|_ S|jr|jj«|jr|jj«|jj«D]v}|D]o\}}|r8|jr,|jjd«|j«n|j«|j x}sŒ_|j#|«ŒqŒx|j
D]l}|r8|jr,|jjd«|j«n|j«|j x}sŒ\|j#|«Œn|jD]}    |    €Œ|    j«Œ||jj    «|j
j    «|j j«D]}|D]}|j«ŒŒ|j j    «d|_    |jj    «d|_ S#|jj    «|j
j    «|j j«D]}|D]}|j«ŒŒ|j j    «d|_    |jj    «d|_ wxYw)NTÚ
sslcontext)rÔr~r“rÕÚclearrÙrÞrírrârçrãr Úget_extra_inforÃr¬r±r¤)
rXrrjÚ keyed_waitersÚ keyed_waiterÚdatar Ú_r±r s
          rYrïzBaseConnector._closes€Ø+-ˆà <Š<؈NàˆŒ ð4    /؏z‰z×#Ñ#Ô%ØðT K‰K× Ñ Ô Ø N‰N×  Ñ  Ô "Ø!%§¡×!5Ñ!5Ó!7ò * Ø$1ò*LØ ×'Ñ'Õ)ñ*ð *ð M‰M× Ñ Ô !Ø#'ˆDÔ  Ø × +Ñ +× 1Ñ 1Ô 3Ø*.ˆDÕ 'ð_×#Ò#Ø×$Ñ$×+Ñ+Ô-ð×*Ò*Ø×+Ñ+×2Ñ2Ô4àŸ ™ ×*Ñ*Ó,ò /Ø $ò
/‘HE˜1á!Ø!ŸOšOØ!ŸO™O×:Ñ:¸<ÓHÐTàŸ ™  àŸ ™ œ Ø!&§¡Ð-vÑ-ØŸ™ vÕ.ñ
/ð /ðŸ™ò
+áØŸšØŸ™×6Ñ6°|ÓDÐPà—K‘K•Mà—K‘K”MØ"Ÿ\™\Ð)6Ñ)Ø—N‘N 6Õ*ð
+ð"×<Ñ<ò &    ØÑ(Ø—O‘OÕ%ð &ðð K‰K× Ñ Ô Ø N‰N×  Ñ  Ô "Ø!%§¡×!5Ñ!5Ó!7ò * Ø$1ò*LØ ×'Ñ'Õ)ñ*ð *ð M‰M× Ñ Ô !Ø#'ˆDÔ  Ø × +Ñ +× 1Ñ 1Ô 3Ø*.ˆDÕ 'øð K‰K× Ñ Ô Ø N‰N×  Ñ  Ô "Ø!%§¡×!5Ñ!5Ó!7ò * Ø$1ò*LØ ×'Ñ'Õ)ñ*ð *ð M‰M× Ñ Ô !Ø#'ˆDÔ  Ø × +Ñ +× 1Ñ 1Ô 3Ø*.ˆDÕ 'ús&™L Ã!C    L Æ+A<L È($L É L Ì B.N;có—|jS)z;Is connector closed.
 
        A readonly property.
        )rÔr^s rYr±zBaseConnector.closedCs€ð |‰|Ðr[rxrMcóô—d}|jr)|jt|j«z
x}dkr|S|jx}r2|jj |«x}r|t|«z}||kDr|S|S)zå
        Return number of available connections.
 
        The limit, limit_per_host and the connection key are taken into account.
 
        If it returns less than 1 means that there are no connections
        available.
        r r)rÖÚlenrÙr×rÚÚget)rXrxÚ total_remainÚ host_remainÚacquireds     rYÚ_available_connectionsz$BaseConnector._available_connectionsKs†€ðˆ à ;Š;¨D¯K©K¼#¸d¿n¹nÓ:MÑ,MÐM˜LÐRSÒSØÐ ð×.Ñ.Ð .ˆ;Ð .Ø×2Ñ2×6Ñ6°sÓ;Ð;ˆxÐ;Øœs 8›}Ñ, ؘkÒ)Ø"Ð"àÐr[Úreqcó —|j}|€J‚i}|j |j}|jtj|tj<t tj |||j|j|j¬«}|jjtjd«}|L|j«s||jtj<|S||jtj<|S)znSet Proxy-Authorization header for non-SSL proxy requests and builds the proxy request for SSL proxy requests.N)ÚheadersÚauthrzÚssl)ÚproxyÚ proxy_headersr+r!ÚHOSTr1ÚMETH_GETÚ
proxy_authr~r-ÚpopÚ AUTHORIZATIONrÚPROXY_AUTHORIZATION)rXr)Úurlr+Ú    proxy_reqr,s      rYÚ-_update_proxy_auth_header_and_build_proxy_reqz;BaseConnector._update_proxy_auth_header_and_build_proxy_reqdsä€ði‰iˆØˆÐˆØ"$ˆØ × Ñ Ð (Ø×'Ñ'ˆGØ Ÿ[™[¬¯©Ñ3ˆ”—    ‘    ÑÜ!Ü M‰MØ ØØ—‘Ø—‘Ø—‘ô 
ˆ    ð× Ñ ×$Ñ$¤T×%7Ñ%7¸Ó>ˆØ Ð Ø—:‘:”<Ø8<— ‘ œD×4Ñ4Ñ5ðÐð?C    ×!Ñ!¤$×":Ñ":Ñ;ØÐr[ÚtracesrNr    rLcƒóˆK—|j}|j||«ƒd{–—†x}|jr|j|«|St    |j
|j «4ƒd{–—†|j|«dkrf|j||«ƒd{–—†|j||«ƒd{–—†x}0|jr|j|«|cddd«ƒd{–—†Sttt|j««}|jj|«|jr|j |j|«    |r|D]}|j#«ƒd{–—†Œ|j%|||«ƒd{–—†}|r|D]}|j'«ƒd{–—†Œ|j(r|j+«t-d«‚ddd«ƒd{–—†|jj3«|jj«|jr1|j |}    |    j3|«|    j|«t5||||j6«S7ŒQ7Œ
7Œß7ŒÈ7Œš7Œ7Œù7ŒÜ#t.$r|j1||«‚wxYw7ŒÅ#1ƒd{–—†7swYŒÕxYw­w)z'Get from pool or create new connection.NrzConnector is closed.)Úconnection_keyÚ_getr.r8r5ÚconnectÚceil_thresholdr(Ú_wait_for_available_connectionrr0r½rérÙÚaddr×rÚÚsend_connection_create_startÚ_create_connectionÚsend_connection_create_endrÔr¬r%Ú BaseExceptionÚ_release_acquiredÚremovervr~)
rXr)r9r    rxÚconnÚ placeholderÚtracer Úacquired_per_hosts
          rYr=zBaseConnector.connect~s˜èø€ð× Ñ ˆØŸ)™) C¨Ó0×0Ð 0ˆDÐ =ðyŠyØ×BÑBÀ3ÔG؈Kä §¡°×1GÑ1GÓH÷     Hñ     HØ×*Ñ*¨3Ó/°1Ò4Ø×9Ñ9¸#¸vÓF×FÐFØ"&§)¡)¨C°Ó"8×8Ð8DÐEØ—y’yØ×JÑJÈ3ÔOØ÷      H÷     Hñ     HôÜÔ!6°t×7OÑ7OÓ!PóˆKð N‰N× Ñ ˜{Ô +Ø×#Ò#Ø×'Ñ'¨Ñ,×0Ñ0°Ô=ð HñØ!'òC˜Ø#×@Ñ@ÓB×BÑBðCà"×5Ñ5°c¸6À7ÓK×KÙØ!'òA˜Ø#×>Ñ>Ó@×@Ñ@ðAð —<’<Ø—K‘K”MÜ/Ð0FÓGÐG÷A     H÷     HðN     ‰×јkÔ*Ø ‰×ј5Ô!Ø × Ò Ø $× 7Ñ 7¸Ñ <Ð Ø × $Ñ $ [Ô 1Ø × !Ñ ! %Ô (ܘ$  U¨D¯J©JÓ7Ð7ði1ùð     HùàFùØ8ùð     Hùð*CùØKøðAùÜ ò Ø×&Ñ& s¨KÔ8Øð úð5     Hø÷     H÷     Hñ     Hüsê‚"K¤I5¥A    KÁ.I8Á/KÁ2*J-ÂI;ÂJ-Â6I>Â7$J-à KÃ'JÃ(KÃ-A(J-ÅJ Å0JÅ1J Æ JÆJ Æ,J    Æ-J Æ3'J-Ç KÇ%J+Ç&BKÉ8KÉ;J-É>J-ÊKÊJ ÊJ Ê    J Ê J(Ê(J-Ê+KÊ-J?Ê3J6 Ê4J?Ê;KcƒólK—d}    |jj«}|j|}d||<|r|j|d¬«    |r|D]}|j    «ƒd{–—†Œ|ƒd{–—†|r|D]}|j «ƒd{–—†Œ|j |d«|jj|d«s|j|=    |j|«dkDry|dz }Œç7Œˆ7Œ~7Œa#|j |d«|jj|d«s|j|=wwxYw­w)z&Wait for an available connection slot.rTNF©Úlastr )    r~rèrÞÚ move_to_endÚsend_connection_queued_startÚsend_connection_queued_endr3r$r()rXrxr9ÚattemptsÚfutrrIs       rYr?z,BaseConnector._wait_for_available_connection¹sKèø€ðˆØØ(,¯
©
×(@Ñ(@Ó(BˆCØ ŸM™M¨#Ñ.ˆMØ!%ˆM˜#Ñ Ùð×)Ñ)¨#°EÐ)Ô:ð +ñØ!'òC˜Ø#×@Ñ@ÓB×BÑBðCà—        ÙØ!'òA˜Ø#×>Ñ>Ó@×@Ñ@ðAð
×!Ñ! # tÔ,Ø—}‘}×(Ñ(¨¨dÔ3ØŸ ™  cÑ*à×*Ñ*¨3Ó/°!Ò3ØØ ˜‰MˆHð;ðCøØøðAùð×!Ñ! # tÔ,Ø—}‘}×(Ñ(¨¨dÔ3ØŸ ™  cÑ*ð4üsU‚AD4Á
C3Á$C-Á% C3Á0C/Á1C3ÂC1ÂC3ÂAD4Ã-C3Ã/C3Ã1C3Ã3>D1Ä1D4cƒóìK—|jj|«x}€yt«}|r|j«\}}|j    «r ||z
|j
krŽ|s |j|=|j j|«|jr|j|j|«|r |D]}    |j«ƒd{–—†Œt||||j«S|j}|j!«|j"s'|j$r|j&j)|«|rŒ|j|=y7Œ#t$r|j||«‚wxYw­w)znGet next reusable connection for the key or None.
 
        The connection will be marked as acquired.
        N)rÕr$r Úpopleftr°rÜrÙr@r×rÚÚsend_connection_reuseconnrDrErvr~r r¬rærrçr¤)    rXrxr9rñÚt1r Út0rIr s             rYr<zBaseConnector._getãsRèø€ð—[‘[—_‘_ SÓ)Ð )ˆEÐ 2Øä ‹[ˆÚØŸ ™ ›‰IˆE2ð×!Ñ!Ô#¨¨R©°4×3JÑ3JÒ(JÙàŸ ™  CÐ(Ø—‘×"Ñ" 5Ô)Ø×'Ò'Ø×+Ñ+¨CÑ0×4Ñ4°UÔ;ÙØ!'ò"˜ð"Ø"'×"AÑ"AÓ"C×CÑCð"ô " $¨¨U°D·J±JÓ?Ð?🙈IØ K‰KŒMà×0Ò0°S·Z²ZØ×/Ñ/×6Ñ6°yÔAó3ð8 K‰K˜Ð ØðDùÜ,ò"Ø ×2Ñ2°3¸Ô>Ø!ð"üs7‚B<E4Â?EÃEÃEÃA+E4ÅE4ÅEÅE1Å1E4cóD—|jsyt|j«}tj|«|D]d}|j    |«dkrŒ|j|}|sŒ*|j d¬«\}}|j «s|jd«y|rŒ;Œfy)z¼
        Iterates over all waiters until one to be released is found.
 
        The one to be released is not finished and
        belongs to a host that has available connections.
        Nr FrL)rÞÚlistÚrandomÚshuffler(ÚpopitemÚdoner:)rXÚqueuesrxrjÚwaiterr s      rYÚ_release_waiterzBaseConnector._release_waiter s“€ð}Š}Ø ôd—m‘mÓ$ˆÜ‰vÔàò        ˆCØ×*Ñ*¨3Ó/°!Ò3Øà—m‘m CÑ(ˆGÚØ#ŸO™O°˜OÓ7‘    ˜Ø—{‘{”}Ø×%Ñ% dÔ+Ùó    ñ         r[r có—|jry|jj|«|jr=|jj |«x}r |j|«|s |j|=|j «y)zRelease acquired connection.N)rÔrÙÚdiscardr×rÚr$r`)rXrxr rñs    rYrEzBaseConnector._release_acquired'sk€à <Š<à à ‰×јuÔ%Ø × Ò ¨d×.EÑ.E×.IÑ.IÈ#Ó.NÐ%N UÐ%NØ M‰M˜%Ô  ÙØ×+Ñ+¨CÐ0Ø ×ÑÕr[rryrŽcóú—|jry|j||«|js|s |jrP|j}|j «|j r'|js|jj|«y|j|j|t«f«|j€>tj|d|j|j |j"¬«|_ yy)Nrr)rÔrErÝrŽr r¬rrærçr¤rÕr râr"rrÜr~rÓ)rXrxryrŽr s     rYr”zBaseConnector._release4s̀ð <Š<à à ×јs HÔ-à × Ò ¡ °×0EÒ0EØ ×*Ñ*ˆIØ N‰NÔ àzŠz $×"?Ò"?Ø×/Ñ/×6Ñ6°yÔAØ à  ‰ CÑ×Ñ ¬9«;Р7Ô8à × Ñ Ð 'Ü#*×#9Ñ#9ØØØ×'Ñ'Ø—
‘
Ø'+×'CÑ'Cô $ˆDÕ  ð (r[cƒóK—t«‚­wrŸ)ÚNotImplementedError)rXr)r9r    s    rYrBz BaseConnector._create_connectionTsèø€ô"Ó#Ð#ùs‚ )rUrH)NNNrd)4rerfrgr»rÔr†rÚHIGH_LEVEL_SCHEMA_SETÚallowed_protocol_schema_setr8rÚobjectrÛr¶Úintrrmr²rZr`rrcrórörørrDr rýr´rÊrËrÌrrêrr¬rrïr±r(r1r8rvr=r?r<r`r0rEr”rBrir[rYrHrH sú„ñ ð€GØÐð!Ðà"7Ðð
9AØ!ØØØ&+Ø48Ø()òKð! ¨¨uÐ!4Ñ5ðKðð    Kð
ð Kð ð Kð $ðKðw×0Ñ0Ñ1ðKð!&ðKð
óKðZ(0ñ3 ð3°Dó3ó*ð˜Sð Tóóð
37Ø-1Ø15ñ    à˜4  Ñ.Ñ/ðð˜MÑ*ðð   Ñ.ð    ð
 
ó ðð!˜Tò!óð!ððsòóððð$ ò$óð$ó%óNð.*/ò( $ð(°9¸T±?ó(ð(+0ò</ 4ð</°D¸À6Ñ9JÑ4Kó</ð|ð˜òóðð¨/ð¸cóð2Ø ðà    óð498Ø ð98Ø*.¨w©-ð98ØBQð98à    ó98ðv(Ø"ð(Ø,0°©Mð(à     ó(ðT(Ø"ð(Ø,0°©Mð(à    *Ñ    ó(óTð4  _ð ¸_ð ÐQUó ð$#ò à ðð"ðð
ð ð
ó ð@$Ø ð$Ø*.¨w©-ð$ØBQð$à    ô$r[rHcó´—eZdZddeeddfd„Zdedefd„Zde    e
e fde e ddfd    „Zde    e
e fddfd
„Zdd „Zde    e
e fde e fd „Zde    e
e fdefd „Zy)Ú_DNSCacheTableNÚttlrUcó.—i|_i|_||_yrŸ)Ú    _addrs_rrÚ _timestampsÚ_ttl)rXrls  rYrZz_DNSCacheTable.__init__[s€ØUWˆŒØ9;ˆÔ؈    r[Úhostcó—||jvSrŸ)rn)rXrqs  rYÚ __contains__z_DNSCacheTable.__contains__`s€Øt—~‘~Ð%Ð%r[rxÚaddrscó’—t|«t|«f|j|<|jt    «|j
|<yyrŸ)r    r#rnrpr ro)rXrxrts   rYr@z_DNSCacheTable.addcs>€Ü$ U›|¬S°«ZÐ8ˆ‰sÑà 9‰9Ð  Ü$-£KˆD× Ñ ˜SÒ !ð !r[cóŽ—|jj|d«|j|jj|d«yyrŸ)rnr3rpro©rXrxs  rYrFz_DNSCacheTable.removeis;€Ø ‰×ј3 Ô%à 9‰9Ð  Ø × Ñ ×  Ñ    dÕ +ð !r[cól—|jj«|jj«yrŸ)rnrror^s rYrz_DNSCacheTable.clearos$€Ø ‰×ÑÔØ ×Ñ×ÑÕ r[cój—|j|\}}tt||««}t|«|SrŸ)rnrYr
Únext)rXrxrzÚlengthrts     rYÚ
next_addrsz_DNSCacheTable.next_addrsss1€Ø—~‘~ cÑ*‰ ˆˆfÜ”V˜D &Ó)Ó*ˆä ˆTŒ
؈ r[cój—|j€y|j||jzt«kSrW)rpror rws  rYÚexpiredz_DNSCacheTable.expiredzs0€Ø 9‰9Ð Øà×Ñ Ñ$ t§y¡yÑ0´9³;Ñ>Ð>r[rŸrd)rerfrgrrÛrZrhr¶rsrr³rirr$r@rFrr|r~rir[rYrkrkZs®„ñ˜H U™Oð°tóð
& ð&¨Dó&ð0u˜S #˜X‘ð0¨t°MÑ/Bð0Àtó0ð ,˜%  S ™/ð,¨dó,ó !ð˜e C¨ H™oð°$°}Ñ2Eóð?˜5  c ™?ð?¨tô?r[rkÚverifiedcóÔ—t€y|rtj«}n¸tjtj«}|xjtj
zc_|xjtj zc_d|_tj|_    |xjtjzc_|j«|jd«|S)z­Create SSL context.
 
    This method is not async-friendly and should be called from a thread
    because it will load certificates from disk and do other blocking I/O.
    NF)zhttp/1.1) r-Úcreate_default_contextÚ
SSLContextÚPROTOCOL_TLS_CLIENTÚoptionsÚ OP_NO_SSLv2Ú OP_NO_SSLv3Úcheck_hostnameÚ    CERT_NONEÚ verify_modeÚOP_NO_COMPRESSIONÚset_default_verify_pathsÚset_alpn_protocols)rrs  rYÚ_make_ssl_contextrs¦€ô  €{àÙÜ×/Ñ/Ó1‰
ä—^‘^¤C×$;Ñ$;Ó<ˆ
Ø×ÒœcŸo™oÑ-ÕØ×ÒœcŸo™oÑ-ÕØ$)ˆ
Ô!Ü!$§¡ˆ
ÔØ×Òœc×3Ñ3Ñ3ÕØ×+Ñ+Ô-Ø×!Ñ! -Ô0Ø Ðr[TFc,󔇗eZdZdZeedh«zZddddejjdddde
dddddd    d
dde
d œd e d e e de de edejde edee eefde eeefde ededeefde dedede de ej0dede ede ede edeedeff(ˆfd „Zdd!œd"e d#eeefˆfd$„Zdd!œd"e d#dfˆfd%„Ze d#efd&„«Z!e d#e fd'„«Z"    dJd(e ed)e ed#dfd*„Z#    dKd(ed)ed+e e$d,d#ee%fd-„Z&d.eeefd(ed)ed/e'd0d+e e$d,d#ee%f d1„Z(d2e)d+ed,d3d4d#e*fd5„Z+d2e)d#e efd6„Z,d2e)d#e d7fd8„Z-e.d9œd:e/d;ee0d2e)d3d4d<e1e2d=e/d#eejfe*ffd>„Z4e.d9œd:e/d2e)d3d4d<e1e2d=e/d#eejfe*ff d?„Z5dLd@„Z6dMdA„Z7d#e fdB„Z8dCejfd2e)d#dfdD„Z9e.fdCejfd2e)d3d4d<e1e2d#eejte*ff
dE„Z;dFee%d#ee0fdG„Z<e.d9œd2e)d+ed,d3d4d<e1e2d#eejfe*ff
dH„Z=d2e)d+ed,d3d4d#eejte*ffdI„Z>ˆxZ?S)NrIuæTCP connector.
 
    verify_ssl - Set to True to check ssl certifications.
    fingerprint - Pass the binary sha256
        digest of the expected certificate in DER format to verify
        that the certificate the server presents matches. See also
        https://en.wikipedia.org/wiki/HTTP_Public_Key_Pinning
    resolver - Enable DNS lookups and use this
        resolver
    use_dns_cache - Use memory cache for DNS lookups.
    ttl_dns_cache - Max seconds having cached a DNS entry, None forever.
    family - socket address family
    local_addr - local tuple of (host, port) to bind socket to
 
    keepalive_timeout - (optional) Keep-alive timeout.
    force_close - Set to True to force close and do reconnect
        after each request (and between redirects).
    limit - The total number of simultaneous connections.
    limit_per_host - Number of simultaneous connections to one host.
    enable_cleanup_closed - Enables clean-up closed ssl transports.
                            Disabled by default.
    happy_eyeballs_delay - This is the â€œConnection Attempt Delay”
                           as defined in RFC 8305. To disable
                           the happy eyeballs algorithm, set to None.
    interleave - â€œFirst Address Family Count” as defined in RFC 8305
    loop - Optional event loop.
    socket_factory - A SocketFactoryType function that, if supplied,
                     will be used to create sockets given an
                     AddrInfoType.
    ssl_shutdown_timeout - DEPRECATED. Will be removed in aiohttp 4.0.
                           Grace period for SSL shutdown handshake on TLS
                           connections. Default is 0 seconds (immediate abort).
                           This parameter allowed for a clean SSL shutdown by
                           notifying the remote peer of connection closure,
                           while avoiding excessive delays during connector cleanup.
                           Note: Only takes effect on Python 3.11+.
    ÚtcpTNé
FrÆrrÇgÐ?)Ú
verify_sslÚ fingerprintÚ use_dns_cacheÚ ttl_dns_cacheÚfamilyÚ ssl_contextr-Ú
local_addrÚresolverrÉrÊrËrÌrÍrzrÎÚhappy_eyeballs_delayÚ
interleaveÚsocket_factoryÚssl_shutdown_timeoutr‘r’r“r”r•r–r-r—r˜rÉrÊrËrÌrÍrzrÎr™ršr›rœc    óh•—t‰||
| | | |||¬«t||||«|_||    €#t    |j
¬«|_d|_n|    |_d|_||_t|¬«|_
i|_ ||_ tj|«|_||_||_t%«|_||_||t*urd|_yt/j0dt2d¬    «t4j6d
kr'|%|dk7r t/j0d |›d t8d¬    «||_y) NrÈrÐTF)rlrzSThe ssl_shutdown_timeout parameter is deprecated and will be removed in aiohttp 4.0r›rœ©r>é zssl_shutdown_timeout=zd is ignored on Python < 3.11; only ssl_shutdown_timeout=0 is supported. The timeout will be ignored.)ÚsuperrZr3Ú_sslr<r~Ú    _resolverÚ_resolver_ownerÚ_use_dns_cacherkÚ _cached_hostsÚ_throttle_dns_futuresÚ_familyÚaiohappyeyeballsÚaddr_to_addr_infosÚ_local_addr_infosÚ_happy_eyeballs_delayÚ _interleaverØÚ_resolve_host_tasksÚ_socket_factoryr8Ú_ssl_shutdown_timeoutr`rarbr„råÚRuntimeWarning)rXr‘r’r“r”r•r–r-r—r˜rÉrÊrËrÌrÍrzrÎr™ršr›rœÚ    __class__s                     €rYrZzTCPConnector.__init__ÉsJø€ô0    ‰ÑØ/Ø#ØØ)Ø"7ØØ#9ð    ô    
ô& c¨:°{ÀKÓPˆŒ    á Ø Ð Ü,°$·*±*Ô=ˆDŒNØ#'ˆDÕ  à%ˆDŒNØ#(ˆDÔ  à+ˆÔÜ+° Ô>ˆÔð ð     Ô"ðˆŒ Ü!1×!DÑ!DÀZÓ!PˆÔØ%9ˆÔ"Ø%ˆÔÜMPËUˆÔ Ø-ˆÔÙ à ¤8Ñ +Ø)*ˆDÕ &ô M‰MØeÜ"Øõ ô × Ñ  7Ò*Ø(Ð4Ø(¨AÒ-ä— ‘ Ø+Ð,@Ð+AðB]ð]ä"Ø õ    ð *>ˆDÕ &r[rrrUcó•—tj|jj««D]}|j    «Œt
‰||¬«}|jD]#}|j    «|j|«Œ%|S)zClose all ongoing DNS calls.r)    rÚ from_iterabler¦rírr rïr­r¤)rXrrRrjÚtr±s     €rYrïzTCPConnector._closesxø€ä×&Ñ& t×'AÑ'A×'HÑ'HÓ'JÓKò    ˆCØ J‰JLð    ô‘'‘.¨9.Ó5ˆà×)Ñ)ò    ˆAØ H‰HŒJØ N‰N˜1Õ ð    ðˆr[cƒóĕK—|jr"|jj«ƒd{–—†t‰|    |xs|jdk(¬«ƒd{–—†y7Œ.7Œ­w)aÆ
        Close all opened transports.
 
        :param abort_ssl: If True, SSL connections will be aborted immediately
                         without performing the shutdown handshake. If False (default),
                         the behavior is determined by ssl_shutdown_timeout:
                         - If ssl_shutdown_timeout=0: connections are aborted
                         - If ssl_shutdown_timeout>0: graceful shutdown is performed
        Nrr)r£r¢r¬r r¯)rXrr±s  €rYr¬zTCPConnector.close%sVøèø€ð × Ò Ø—.‘.×&Ñ&Ó(× (Ð (ä‰g‰m iÒ&R°4×3MÑ3MÐQRÑ3RˆmÓS×SÑSð )øàSús!ƒ*A ­A®(A ÁAÁA ÁA có—|jS)zSocket family like AF_INET.)r§r^s rYr•zTCPConnector.family4s€ð|‰|Ðr[có—|jS)z%True if local DNS caching is enabled.)r¤r^s rYr“zTCPConnector.use_dns_cache9s€ð×"Ñ"Ð"r[rqÚportcóš—| ||jj||f«y|€| td«‚|jj«y)z8Remove specified host/port or clear all dns local cache.Nz5either both host and port or none of them are allowed)r¥rFrÑr)rXrqr¸s   rYÚclear_dns_cachezTCPConnector.clear_dns_cache>sP€ð Ð  Р0Ø × Ñ × %Ñ % t¨T lÕ 3Ø Ð  Ð!1ÜÐTÓUÐ Uà × Ñ × $Ñ $Õ &r[r9rNcƒóîK—t|«r||||jdddœgS|jsv|r |D]}|j|«ƒd{–—†Œ|jj |||j¬«ƒd{–—†}|r |D]}|j |«ƒd{–—†Œ|S||f}||jvrZ|jj|«s?|jj|«}|r |D]}|j|«ƒd{–—†Œ|S||jvr“|j|}|jj«}    |j|    «|r |D]}|j|«ƒd{–—†Œ    |    ƒd{–—†|j|    «|jj|«St!«x|j|<}|j#|||||«}
t%j&«} t(j*dk\rt%j,|
| d¬«} n| j/|
«} | j1«s@|j2j| «| j5|j2j«    t%j6| «ƒd{–—†S7ŒU7Œ&7Œ    7Œ 7Œ77Œ-#|j|    «wxYw7Œ,#t$j8$rd    d„} | j5| «‚wxYw­w)
z*Resolve host and return list of addresses.r)Úhostnamerqr¸r•r ÚflagsN©r•r=TrcóŠ—tttj«5|j    «ddd«y#1swYyxYwrŸ)rrprmÚCancelledErrorÚresult)rRs rYÚdrop_exceptionz2TCPConnector._resolve_host.<locals>.drop_exceptions0€Üœi¬×)?Ñ)?Ó@ñ!Ø—J‘J”L÷!÷!ñ!ús    Ÿ9¹A)rRz#asyncio.Future[List[ResolveResult]]rUN)r6r§r¤Úsend_dns_resolvehost_startr¢ÚresolveÚsend_dns_resolvehost_endr¥r~r|Úsend_dns_cache_hitr¦r~rèr@rbrØÚ_resolve_host_with_throttlermrÒr„rårrr]r­Úadd_done_callbackÚshieldrÀ)rXrqr¸r9rIrsrxrÁÚfuturesÚfuturerrzÚresolved_host_taskrÂs              rYÚ _resolve_hostzTCPConnector._resolve_hostIsßèø€ô ˜Ô ð!%ؠؠØ"Ÿl™lØØñ ð    ð     ð×"Ò"áØ#òAEØ×:Ñ:¸4Ó@×@Ñ@ðAðŸ™×.Ñ.¨t°TÀ$Ç,Á,Ð.ÓO×OˆCáØ#ò?EØ×8Ñ8¸Ó>×>Ñ>ð?ðˆJàTˆlˆØ $×$Ñ$Ñ $¨T×-?Ñ-?×-GÑ-GÈÔ-Là×'Ñ'×2Ñ2°3Ó7ˆFáØ#ò9EØ×2Ñ2°4Ó8×8Ñ8ð9àˆMð $×,Ñ,Ñ ,à×0Ñ0°Ñ5ˆGØ+/¯:©:×+CÑ+CÓ+EˆFØ K‰K˜Ô ÙØ#ò9EØ×2Ñ2°4Ó8×8Ñ8ð9ð (Ø—  à—‘ Ô'Ø×%Ñ%×0Ñ0°Ó5Ð 5ô58³EÐ9ˆ×"Ñ" 3Ñ'¨'ð ×/Ñ/°°T¸4ÀÈ&ÓQˆÜ×'Ñ'Ó)ˆÜ × Ñ ˜wÒ &ä!(§¡¨d¸È4Ô!PÑ à!%×!1Ñ!1°$Ó!7Ð à!×&Ñ&Ô(Ø × $Ñ $× (Ñ (Ð);Ô <Ø × 0Ñ 0°×1IÑ1I×1QÑ1QÔ Rð        Ü Ÿ™Ð(:Ó;×;Ð ;ð{AùàOùð?ùð9ùð"9ùàúà—‘ Õ'úð.<ùÜ×%Ñ%ò    ó !ð × 0Ñ 0°Ô @Ø ð    üs±‚AK5Á    JÁ
1K5Á;J!Á<K5ÂJ$ÂA+K5ÄJ'ÄA+K5Å3J*Å4K5Å;J0ÆJ-ÆJ0ÆC;K5ÊKÊKÊKÊK5Ê!K5Ê$K5Ê'K5Ê*K5Ê-J0Ê0KËK5ËKË*K2Ë2K5rxrÊzasyncio.Future[None]cƒóšK—    |r@|D]}|j|«ƒd{–—†Œ|D]}|j|«ƒd{–—†Œ|jj|||j¬«ƒd{–—†}|r |D]}|j |«ƒd{–—†Œ|j j||«|D]}t|d«Œ    |jj|«|j j|«S7ŒÞ7ŒÀ7Œ7Œr#t$r}    |D]}t||    «Œ‚d}    ~    wwxYw#|jj|«wxYw­w)z²Resolve host and set result for all waiters.
 
        This method must be run in a task and shielded from cancellation
        to avoid cancelling the underlying lookup.
        Nr¾)Úsend_dns_cache_missrÃr¢rÄr§rÅr¥r@r:rDr9r¦r3r|)
rXrxrqr¸rÊr9rIrtrRÚes
          rYrÇz(TCPConnector._resolve_host_with_throttle¤s\èø€ð    0ÙØ#ò:EØ×3Ñ3°DÓ9×9Ñ9ð:ð$òAEØ×:Ñ:¸4Ó@×@Ñ@ðAðŸ.™.×0Ñ0°°tÀDÇLÁLÐ0ÓQ×QˆEÙØ#ò?EØ×8Ñ8¸Ó>×>Ñ>ð?ð × Ñ × "Ñ " 3¨Ô .Øò &Ü˜3 Õ%ñ &ð × &Ñ &× *Ñ *¨3Ô /à×!Ñ!×,Ñ,¨SÓ1Ð1ð/:øðAøàQøð?ùô
ò    ðò &Ü˜c 1Õ%ð &à ûð     ûð × &Ñ &× *Ñ *¨3Õ /üsy‚E „DŸC> D¿DÁ1DÁ1DÁ2DÂDÂ5DÃ6E Ã>DÄDÄDÄDÄ    D(ÄD#Ä#D(Ä(D+Ä+EÅE r)r    rLcƒóªK—|jr |j|||«ƒd{–—†\}}|S|j|||«ƒd{–—†\}}|S7Œ)7Œ ­w)zcCreate connection.
 
        Has same keyword arguments as BaseEventLoop.create_connection.
        N)r.Ú_create_proxy_connectionÚ_create_direct_connection)rXr)r9r    r r s      rYrBzTCPConnector._create_connectionÍs]èø€ð 9Š9Ø!×:Ñ:¸3ÀÈÓP×P‰HˆAˆuðˆ ð"×;Ñ;¸CÀÈÓQ×Q‰HˆAˆuàˆ ð    QøàQús!‚#A¥A¦AÁAÁ
AÁAcó—|j«syt€ td«‚|j}t|tj«r|S|durt
S|j }t|tj«r|S|durt
StS)a*Logic to get the correct SSL context
 
        0. if req.ssl is false, return None
 
        1. if ssl_context is specified in req, use it
        2. if _ssl_context is specified in self, use it
        3. otherwise:
            1. if verify_ssl is not specified in req, use self.ssl_context
               (will generate a default context according to self.verify_ssl)
            2. if verify_ssl is True in req, generate a default SSL context
            3. if verify_ssl is False in req, generate a SSL context that
               won't verify
        NzSSL is not supported.T)rr-Ú RuntimeErrorror‚Ú_SSL_CONTEXT_UNVERIFIEDr¡Ú_SSL_CONTEXT_VERIFIED)rXr)rs   rYÚ_get_ssl_contextzTCPConnector._get_ssl_contextÛs}€ðz‰zŒ|Øä ˆ;ÜÐ6Ó7Ð 7Ø—W‘Wˆ
Ü j¤#§.¡.Ô 1ØÐ Ø ˜TÑ !ä*Ð *Ø—Y‘Yˆ
Ü j¤#§.¡.Ô 1ØÐ Ø ˜TÑ !ä*Ð *Ü$Ð$r[r2có|—|j}t|t«r|S|j}t|t«r|SyrŸ)r-ror2r¡)rXr)Úrets   rYÚ_get_fingerprintzTCPConnector._get_fingerprintüs5€Øg‰gˆÜ cœ;Ô '؈J؏i‰iˆÜ cœ;Ô '؈JØr[©Ú client_errorÚargsÚ
addr_infosrÝr–c    óXK—    t|j|j¬«4ƒd{–—†tj||j
|j |j|j|j¬«ƒd{–—†}|jd«r.|jr"tjdk\r|j|d<|jj|i|¤d|i¤Žƒd{–—†cddd«ƒd{–—†S7ŒÑ7Œ~7Œ7Œ #1ƒd{–—†7swYyxYw#t$r}t!|j"|«|‚d}~wt$$r}t'|j"|«|‚d}~wt($r@}|j*€t-|t.j0«r‚||j"|«|‚d}~wwxYw­w)N©r>)rßÚlocal_addr_infosr™ršrzr›r-ržrœÚsock)r5Ú sock_connectr>r¨Ústart_connectionrªr«r¬r~r®r$r¯r„råÚcreate_connectionr.r&r;r/r)ÚOSErrorÚerrnorormÚ TimeoutError)    rXrßr)r    rÝrÞr–rãrôs             rYÚ_wrap_create_connectionz$TCPConnector._wrap_create_connectionsŠèø€ð    AÜ#Ø×$Ñ$°W×5KÑ5Kô÷ Vñ Vô.×>Ñ>Ø)Ø%)×%;Ñ%;Ø)-×)CÑ)CØ#×/Ñ/ØŸ™Ø#'×#7Ñ#7ô ÷ð—J‘J˜uÔ%Ø×2Ò2Ü×(Ñ(¨GÒ3à59×5OÑ5OFÐ1Ñ2Ø9˜TŸZ™Z×9Ñ9¸4ÐUÀ6ÑUÐPTÒU×U÷% V÷ Vò VøðøðVøð% Vø÷ V÷ Vñ Vûô&ò    TÜ1°#×2DÑ2DÀcÓJÐPSÐ SûÜò    LÜ)¨#×*<Ñ*<¸cÓBÈÐ KûÜò    A؏y‰yР¤Z°´W×5IÑ5IÔ%JØÙ˜s×1Ñ1°3Ó7¸SÐ @ûð    Aüs·‚F*„%D©C;ªD­ADÁ>C=Á?A&DÃ%C?Ã&DÃ) DÃ5DÃ6DÃ:F*Ã;DÃ=DÃ?DÄDÄDÄ    D Ä
DÄDÄF*ÄDÄ    F'Ä!D8Ä8 F'ÅEÅ F'Å';F"Æ"F'Æ'F*có$K—    t|j|j¬«4ƒd{–—†|jj|i|¤Žƒd{–—†cddd«ƒd{–—†S7Œ97Œ7Œ    #1ƒd{–—†7swYyxYw#t
$r}t |j|«|‚d}~wt$r}t|j|«|‚d}~wt$r@}|j€t|tj«r‚||j|«|‚d}~wwxYw­w©Nrá)r5rär>r~rær.r&r;r/r)rçrèrormré)rXr)r    rÝrÞr–rôs       rYÚ_wrap_existing_connectionz&TCPConnector._wrap_existing_connection+sèø€ð     AÜ#Ø×$Ñ$°W×5KÑ5Kô÷ Kñ Kð:˜TŸZ™Z×9Ñ9¸4ÐJÀ6ÑJ×J÷ K÷ Kò KøðKøð Kø÷ K÷ Kñ Kûôò    TÜ1°#×2DÑ2DÀcÓJÐPSÐ SûÜò    LÜ)¨#×*<Ñ*<¸cÓBÈÐ KûÜò    A؏y‰yР¤Z°´W×5IÑ5IÔ%JØÙ˜s×1Ñ1°3Ó7¸SÐ @ûð    Aüs£‚D„%A>©A#ªA>­ A)Á A%ÁA)Á A>ÁA'ÁA>Á"DÁ#A>Á%A)Á'A>Á)A;Á/A2 Á0A;Á7A>Á:DÁ;A>Á>    D ÂB D Â*Cà D à ;DÄD Ä Dcó†—|j«sy|j}|€J‚|jdk7ry|j«y)zóRaise a :py:exc:`RuntimeError` on missing ``start_tls()``.
 
        It is necessary for TLS-in-TLS so that it is possible to
        send HTTPS queries through HTTPS proxies.
 
        This doesn't affect regular HTTP requests, though.
        NrC)rr.ÚschemeÚ_check_loop_for_start_tls)rXr)Ú    proxy_urls   rYÚ_fail_on_no_start_tlsz"TCPConnector._fail_on_no_start_tlsAsB€ðz‰zŒ|Ø à—I‘Iˆ    ØÐ$Ð$Ð$Ø × Ñ ˜wÒ &Ø à ×&Ñ&Õ(r[cól—    |jjy#t$r}td«|‚d}~wwxYw)Na¶An HTTPS request is being sent through an HTTPS proxy. This needs support for TLS in TLS but it is not implemented in your runtime for the stdlib asyncio.
 
Please upgrade to Python 3.11 or higher. For more details, please see:
* https://bugs.python.org/issue37179
* https://github.com/python/cpython/pull/28073
* https://docs.aiohttp.org/en/stable/client_advanced.html#proxy-support
* https://github.com/aio-libs/aiohttp/discussions/6044
)r~Ú    start_tlsÚAttributeErrorrÕ)rXÚattr_excs  rYrðz&TCPConnector._check_loop_for_start_tlsSs<€ð    Ø J‰J×  Ó  øÜò     Üð    Kó ðð ûð     ús‚™    3¢ .®3cóD—    |j«y#t$rYywxYw)NTF)rðrÕr^s rYÚ_loop_supports_start_tlsz%TCPConnector._loop_supports_start_tlsds,€ð    Ø × *Ñ *Ô ,ðøôò    Ùð    ús ‚“    žÚunderlying_transportcó—|jjjdk7ryt|«jj d«ryt jdk\xs t|dd«}|rytjdt|d¬    «y)
z6Issue a warning if the requested URL has HTTPS scheme.rCNÚuvloopržÚ_start_tls_compatibleFaAn HTTPS request is being sent through an HTTPS proxy. This support for TLS in TLS is known to be disabled in the stdlib asyncio (Python <3.11). This is why you'll probably see an error in the log below.
 
It is possible to enable it via monkeypatching. For more details, see:
* https://bugs.python.org/issue37179
* https://github.com/python/cpython/pull/28073
 
You can temporarily patch this as follows:
* https://docs.aiohttp.org/en/stable/client_advanced.html#proxy-support
* https://github.com/aio-libs/aiohttp/discussions/6044
r>)rŒr) Ú request_infor6rïÚtyperfÚ
startswithr„råÚgetattrr`rar°)rXrùr)Úasyncio_supports_tls_in_tlss    rYÚ_warn_about_tls_in_tlsz#TCPConnector._warn_about_tls_in_tlsls€ð × Ñ × Ñ × &Ñ &¨'Ò 1Ø ô Ð$Ó %× 0Ñ 0× ;Ñ ;¸HÔ EØ ô'*×&6Ñ&6¸'Ñ&Aò'
ÄWØ  Ø #Ø óF
Ð#ñ 'Ø ä ‰ ð
Gô Øðö!    
r[cƒóNK—|j«}|j|«}tr|€J‚    t|j|j
¬«4ƒd{–—†    t jdk\rb|jrV|jj||||jxs |j|j|j¬«ƒd{–—†}nJ|jj||||jxs |j|j¬«ƒd{–—†}t#|t$j&«r%|j)|«}|r    |j+|«ddd«ƒd{–—†€d}    ||j4t7|    ««‚|j9|«||fS7ŒI7ŒÖ7Œ#t$r2|jdk(r|j«‚|j!«‚wxYw#t,$r9|j!«|j.s|j0j3|«‚wxYw7ŒÃ#1ƒd{–—†7swYŒÓxYw#t:$r}
t=|j4|
«|
‚d}
~
wt>$r}
tA|j4|
«|
‚d}
~
wt6$r@}
|
jB€t#|
t$jD«r‚||j4|
«|
‚d}
~
wtF$rN} tId|j›d    |jJd
›d |jL›d |jNxsd ›d| ›d «| ‚d} ~ wwxYw­w)z$Wrap the raw TCP transport with TLS.Nrárž)Úserver_hostnameÚssl_handshake_timeoutrœ)rrrz:Failed to start TLS (possibly caused by closing transport)z2Cannot initialize a TLS-in-TLS connection to host ú:Údz4 through an underlying connection to an HTTPS proxy z ssl:Údefaultz [ú])(rárØr r5rär>r„rår¯r~rôrrqÚtotalrDrÃr¬rormrµrÛÚcheckr,rærçr¤r;rçÚconnection_mader.r&r/r)rèréÚ    TypeErrorr%r¸r.r-) rXrùr)r    rÝÚ    tls_protorÚ tls_transportr’ÚmsgrôÚtype_errs             rYÚ_start_tls_connectionz"TCPConnector._start_tls_connection—sèø€ð—M‘M“Oˆ    Ø×*Ñ*¨3Ó/ˆ
Ý ðÐ)Ð )Ð)ðC    Ü#Ø×$Ñ$°W×5KÑ5Kô÷( "ñ( "ðä×'Ñ'¨7Ò2°t×7QÒ7QØ.2¯j©j×.BÑ.BØ0Ø%Ø&Ø,/×,?Ñ,?Ò,KÀ3Ç8Á8Ø29·-±-Ø15×1KÑ1Kð /Có/÷)™ ð/3¯j©j×.BÑ.BØ0Ø%Ø&Ø,/×,?Ñ,?Ò,KÀ3Ç8Á8Ø29·-±-ð /Có/÷)˜ ô ˜m¬W×->Ñ->Ô?Ø"&×"7Ñ"7¸Ó"<KÙ"ð"Ø'×-Ñ-¨mÔ<÷G( "÷( "ðzÐ$ØRÙ" 3×#5Ñ#5´w¸s³|ÓDÐDØ × %Ñ %Øô ð˜iÐ'Ð'ðI( "ùð )øð)ùô%òð×1Ñ1°QÒ6Ø,×2Ñ2Ô4ðð-×2Ñ2Ô4Øðûô 9ò"Ø)×/Ñ/Ô1Ø#'×#@Ò#@Ø $× ?Ñ ?× FÑ FÀ}Ô UØ!ð    "úðI( "ø÷( "÷( "ñ( "ûôRò    TÜ1°#×2DÑ2DÀcÓJÐPSÐ SûÜò    LÜ)¨#×*<Ñ*<¸cÓBÈÐ KûÜò    A؏y‰yР¤Z°´W×5IÑ5IÔ%JØÙ˜s×1Ñ1°3Ó7¸SÐ @ûÜò
    ô
(ØDØ—8‘8,˜a §¡¨˜|ð,%Ø%(§Y¡Y M°°s·w±wÒ7KÀ)Ð6LðMؐ<˜qð"óð
ð  ûð
    üsæ‚,L%¯%H>ÁFÁH>ÁH)ÁA/F$à   F Ã
A
F$ÄF"ÄF$Ä-H)ÅG"Å H>Å#H'Å$H>Å(5L%ÆH>Æ F$Æ"F$Æ$;GÇH)Ç"AH$È$H)È'H>È)H;È/H2 È0H;È7H>È>    L"ÉIÉ L"É*JÊ L"Ê ;KË L"ËA    LÌL"Ì"L%Úhostscó.—g}|D]}|d}d|v}|rtjntj}|jr|j|k7rŒJ|r    ||dddfn||df}|j    |tj
tj d|f«Œ|S)zÈConverts the list of hosts to a list of addr_infos.
 
        The list of hosts is the result of a DNS lookup. The list of
        addr_infos is the result of a call to `socket.getaddrinfo()`.
        rqrr¸rrA)ÚsocketÚAF_INET6ÚAF_INETr§r¤Ú SOCK_STREAMÚ IPPROTO_TCP)rXrrßÚhinforqÚis_ipv6r•Úaddrs        rYÚ_convert_hosts_to_addr_infosz)TCPConnector._convert_hosts_to_addr_infosísŸ€ð*,ˆ
Øò        ˆEؘ‘=ˆDؘTkˆGÙ(/”V—_’_´V·^±^ˆF؏|Š| § ¡ °Ò 6ØÙ29D˜% ™-¨¨AÑ.ÀÀeÈFÁmÐ?TˆDØ × Ñ Øœ×+Ñ+¬V×-?Ñ-?ÀÀTÐJõ ð        ðÐr[c    ƒóœK—|j|«}|j|«}|jj}|€J‚|j    d«r|j d«dz}|j }|€J‚    |j|||¬«ƒd{–—†}    d} |j|    «} | r}|r|j xs|j d«nd}     |j#|j$||| | ||¬«ƒd{–—†\}}|j/«r|r    |j1|«||fS||fS| €J‚| ‚7Œœ#t$rC}
|
j€t|
tj«r‚t|j|
«|
‚d}
~
wwxYw7ŒŠ#t&tjf$r-}
|
} t)j*| |j,«Yd}
~
Œd}
~
wwxYw#t2$r{}
|j5«|j6s|j8j;|«|
} |j=d«}|j?«}t)j@| |«Yd}
~
Œ d}
~
wwxYw­w)Nz..ú.)r9)r    r-rßrr)rÝr)!rØrÛr6Úraw_hostÚendswithÚrstripr¸rÍrçrèrormrér'r;rrrêrár(r¨Úpop_addr_infos_interleaver¬rr r,r¬rærçr¤rÚ getpeernameÚremove_addr_infos)rXr)r9r    rÝrr’rqr¸rrôÚlast_excrßrÚtranspr rãÚbad_peers                  rYrÓz&TCPConnector._create_direct_connectionsUèø€ð×*Ñ*¨3Ó/ˆ
Ø×+Ñ+¨CÓ0ˆ àw‰w×шØÐÐÐð =‰=˜Ô Ø—;‘;˜sÓ# cÑ)ˆD؏x‰xˆØÐÐÐð
    Lð×,Ñ,¨T°4ÀÐ,ÓG×GˆEð)-ˆØ×6Ñ6°uÓ=ˆ
Ùñ>H×$Ñ$Ò,¨×4Ñ4°SÔ9ÈTð ð Ø&*×&BÑ&BØ—M‘MØ#Ø"Ø)Ø$3ØØ!-ð'Có'÷!‘ ˜ðz‰zŒ|¡ ð Ø×%Ñ% fÔ-ð˜5=Ð  6˜5=Ð  àÐ'Ð 'Ð'؈NðcHùÜò    L؏y‰yР¤Z°´W×5IÑ5IÔ%JØô*¨#×*<Ñ*<¸cÓBÈÐ Kûð     Lúð"!ùô)¬'×*>Ñ*>Ð?ò ؐܠ×:Ñ:¸:Àt×GWÑGWÔXÝûð ûô1ò    Ø—L‘L”NØ×8Ò8Ø×7Ñ7×>Ñ>¸vÔFØ"Hà*0×*?Ñ*?ÀÓ*IDØ#×/Ñ/Ó1HÜ$×6Ñ6°zÀ8ÔLÝûð    üs£‚A2I Á5D+ D) D+Â8I Ã
%E<Ã/E:Ã0E<Ã7I Ä
GÄI Ä)D+Ä+    E7Ä4>E2Å2E7Å7I Å:E<Å<GÆ"F=Æ7I Æ=GÇI Ç    I    ÇA0IÈ>I ÉI    É    I cƒóK—|j|«|j«}|j|«}|j|g|t¬«ƒd{–—†\}}|j «r|r|j ||«tj|_    |j|_
|jjddd¬«}t||||j«}    |j|    «ƒd{–—†}
    |    j } | €J‚| j#||j$¬«|
j'|    «ƒd{–—†} d|    _    | j(dk7re| j*} | €t-| j(«j.} t1|
j2| j4| j(| | j6¬«‚|s0|j9dd¬«}|€ t;d«‚|j=«}|s|jA«    |sT|jC|«}|jE|jF|||jH|¬    «ƒd{–—†|
jA«S|jK|||¬
«ƒd{–—†|
jA«S||fS7Œ07Œ–7ŒR#t>$r|jA«‚wxYw#|s|jA«wwxYw7Œƒ7ŒY#t>$r"|
jA«|    jA«‚wxYw#|
jA«wxYw­w) NrÜ)r.r2Úproxy_headers_hash)Úread_until_eofrÎéÈ)Ústatusrr+r)rz)Transport does not expose socket instance)r    r-rãrr))r)r    )&ròrør8rÓr+rrr!Ú METH_CONNECTÚmethodr6r;Ú_replacer¸r~ÚsendrÚset_response_paramsrÓÚstartr-ÚreasonrÚphraser*rýÚhistoryr+rrÕÚduprDr¬rØrírárqr)rXr)r9r    Úruntime_has_start_tlsr7r r rxrGÚ
proxy_respryÚresprÚrawsockrs                rYrÒz%TCPConnector._create_proxy_connectionMsèø€ð     ×"Ñ" 3Ô'Ø $× =Ñ =Ó ?ÐØ×FÑFÀsÓKˆ    ð"&×!?Ñ!?Ø r˜7Ô1Kð"@ó"
÷
ш    5ð :‰:<Ù$Ø×+Ñ+¨I°sÔ;ô $×0Ñ0ˆIÔ ØŸG™GˆIŒMØ×$Ñ$×-Ñ-Ø tÀð.óˆCô,¨D°#°u¸d¿j¹jÓIˆDØ(Ÿ~™~¨dÓ3×3ˆJðD #ØŸ>™>ØÐ+Ð+Ð+ð
×,Ñ,Ø#8Ø+/×+GÑ+Gð-ôð(×-Ñ-¨dÓ3×3ð "&”ð*Ø—{‘{ cÒ)Ø"&§+¡+˜Ø"˜?Ü&0°·±Ó&=×&DÑ&D˜GÜ2Ø&×3Ñ3Ø ŸL™LØ#'§;¡;Ø$+Ø$(§L¡Lô ðñ1Ø"+×":Ñ":¸8ÈTÐ":Ó"R˜Ø"˜?Ü".Ø Kó#ðð#*§+¡+£-˜ñ1Ø!Ÿ™Õ)á,à!%×!6Ñ!6°sÓ!;JØ!%×!?Ñ!?ØŸ ™ Ø 'Ø&Ø$Ø(+¯©Øð "@ó"÷ð"× Ñ Õ"ð"×7Ñ7ðØØ#ð 8ó÷ð× Ñ Õ"à˜%ÐÐð}
ùð.4ùð4úô6%òð—O‘OÔ%Øð ûñ1Ø!Ÿ™Õ)ð1úð øðùôa!ò Ø× Ñ Ô"Ø—
‘
” Øð ûðp× Ñ Õ"üs²‚ALÁJÁBLÃ.JÃ/LÃ4AKÄ5JÄ6KÄ:K2ÅB&J
Ç(AK2È<KÈ=K2ÉLÉK2É(KÉ)K2É,LÊLÊKÊ
J%Ê%J(Ê(J=Ê=K2ËK2Ë+K/Ë/K2Ë2LÌL)NNrŸ)r)r1rUNrd)@rerfrgr»rfÚ    frozensetrgrÚ AddressFamilyÚ    AF_UNSPECr8r¶rÚbytesrir‚rr2rr³r#rÛrhrmr²rr4rZrrrïr¬r´r•r“rºrr$rÍrrÇr1r0rBrØrÛr(rrrrprµrêríròrðrørÚ BaseTransportrrrÓrÒÚ __classcell__©r±s@rYrIrI sbø„ñ$ðL#8¹)ÀUÀGÓ:LÑ"LÐð
 Ø'+Ø"Ø')Ø'-×';Ñ';×'EÑ'EØ,0Ø48Ø04Ø/3Ø8@Ø!ØØØ&+Ø48Ø()Ø04Ø$(Ø6:Ø>Fò-M>ððM>ð˜e‘_ð    M>ð
ð M>ð   ‘}ð M>ð×$Ñ$ðM>ð˜jÑ)ðM>ð4˜ jÐ0Ñ 1ðM>ð˜U 3¨ 8™_Ñ-ðM>ðÐ+Ñ,ðM>ð!  u¨fÐ!4Ñ5ðM>ððM>ððM>ððM>ð  $ð!M>ð"w×0Ñ0Ñ1ð#M>ð$!&ð%M>ð&' u™oð'M>ð(˜S‘Mð)M>ð*!Ð!2Ñ3ð+M>ð,$ I¨t°UÐ$:Ñ;õ-M>ð^+0ò  4ð °D¸À6Ñ9JÑ4Kõ ð05ò T¨ð T¸õ Tðð˜òóððð#˜tò#óð#ð
AEñ    'ؘS‘Mð    'Ø08¸± ð    'à     ó    'ðKOñYØðYØ"ðYØ,4°X¸gÑ5FÑ,GðYà     ˆmÑ    óYðv'2à 3˜8‰_ð'2ðð'2ðð    '2ð
Ð+Ñ,ð '2ð ˜ 'Ñ*Ñ+ð '2ð
ˆmÑ    ó'2ðR Ø ð Ø*.¨w©-ð ØBQð à    ó ð% Mð%°h¸zÑ6Jó%ðB Mð°h¸}Ñ6Móð)=ò $Aàð$Að˜Ñ&ð$Aðð    $Að
!ð $Að ˜9‘oð $Aðð$Að
ˆw× Ñ  /Ð1Ñ    2ó$AðV)=ò AàðAððAð!ð    Að
˜9‘oð Að ð Að
ˆw× Ñ  /Ð1Ñ    2óAó,)ó$ð"¨$óð)
à%×/Ñ/ð)
ðð)
ð
ó    )
ð`)=ñ T(à%×/Ñ/ðT(ððT(ð!ð    T(ð
˜9‘oð T(ð
ˆw×$Ñ$ oÐ5Ñ    6ó T(ðlؘ-Ñ(ðà     ˆlÑ    óð6)=ò Ià ðIðW‘ ðIð!ð    Ið ˜9‘oð Ið
ˆw× Ñ  /Ð1Ñ    2óIðVf Ø ðf Ø*.¨w©-ðf ØBQðf à    ˆw×$Ñ$ oÐ5Ñ    6÷f r[rIc󾇗eZdZdZeedh«zZdedddfdede    d    e
e e dfd
e d e d eej d dfˆfd„ Zed efd„«Zdededddd efd„ZˆxZS)rJaUnix socket connector.
 
    path - Unix socket path.
    keepalive_timeout - (optional) Keep-alive timeout.
    force_close - Set to True to force close and do reconnect
        after each request (and between redirects).
    limit - The total number of simultaneous connections.
    limit_per_host - Number of simultaneous connections to one host.
    loop - Optional event loop.
    ÚunixFrÆrNÚpathrÊrÉrËrÌrzrUcó<•—t‰||||||¬«||_y)N©rÊrÉrËrÌrz)r rZÚ_path©rXrErÊrÉrËrÌrzr±s       €rYrZzUnixConnector.__init__Äs/ø€ô    ‰ÑØ#Ø/ØØ)Øð     ô    
ðˆ
r[có—|jS)zPath to unix socket.©rHr^s rYrEzUnixConnector.pathÖó€ðz‰zÐr[r)r9rNr    rLcƒóæK—    t|j|j¬«4ƒd{–—†|jj    |j
|j «ƒd{–—†\}}ddd«ƒd{–—†|S7ŒQ7Œ7Œ
#1ƒd{–—†7swYSxYw#t$rN}|j€t|tj«r‚t|j|j|«|‚d}~wwxYw­wrì)r5rär>r~Úcreate_unix_connectionrárHrçrèrormrér-rEr;©rXr)r9r    r r rôs       rYrBz UnixConnector._create_connectionÛsßèø€ð
    XÜ#Ø×$Ñ$°W×5KÑ5Kô÷ ñ ð"&§¡×!BÑ!BØ—M‘M 4§:¡:ó"÷‘5÷ ÷ ðˆ ð øðøð ø÷ ÷ ð ðˆ ûô ò    X؏y‰yР¤Z°´W×5IÑ5IÔ%JØÜ*¨4¯9©9°c×6HÑ6HÈ#ÓNÐTWÐ Wûð    XüsŒ‚C1„%B©A;ªB­4BÁ!A=Á"BÁ) BÁ4A?Á5BÁ9C1Á;BÁ=BÁ?BÂBÂB
ÂBÂBÂC1ÂB    C. A    C)Ã)C.Ã.C1©rerfrgr»rfr<rgr8r³r¶rrhrÛrirrmr²rZr´rEr1rr0rBrArBs@rYrJrJ¶sÑø„ñ    ð#8¹)ÀVÀHÓ:MÑ"MÐð
"Ø8@ØØØ48ñàðððð! ¨°Ð!4Ñ5ð    ð
ð ð ð ðw×0Ñ0Ñ1ðð
õð$ðcòóððØ ðØ*.¨w©-ðØBQðà    ÷r[rJc󾇗eZdZdZeedh«zZdedddfdede    d    e
e e dfd
e d e d eej d dfˆfd„ Zed efd„«Zdededddd efd„ZˆxZS)rKaþNamed pipe connector.
 
    Only supported by the proactor event loop.
    See also: https://docs.python.org/3/library/asyncio-eventloop.html
 
    path - Windows named pipe path.
    keepalive_timeout - (optional) Keep-alive timeout.
    force_close - Set to True to force close and do reconnect
        after each request (and between redirects).
    limit - The total number of simultaneous connections.
    limit_per_host - Number of simultaneous connections to one host.
    loop - Optional event loop.
    ÚnpipeFrÆrNrErÊrÉrËrÌrzrUcóš•—t‰||||||¬«t|jtj
«s t d«‚||_y)NrGz9Named Pipes only available in proactor loop under windows)r rZror~rmÚProactorEventLooprÕrHrIs       €rYrZzNamedPipeConnector.__init__þs[ø€ô    ‰ÑØ#Ø/ØØ)Øð     ô    
ôØ J‰JÜ × %Ñ %ô
ôØKóð ðˆ
r[có—|jS)zPath to the named pipe.rKr^s rYrEzNamedPipeConnector.pathrLr[r)r9rNr    rLcƒó(K—    t|j|j¬«4ƒd{–—†|jj    |j
|j «ƒd{–—†\}}tjd«ƒd{–—†ddd«ƒd{–—†tt «S7Œ|7ŒF7Œ(7Œ#1ƒd{–—†7swYŒ*xYw#t$rC}|j€t|tj«r‚t|j|«|‚d}~wwxYw­w)Nrár)r5rär>r~Úcreate_pipe_connectionrárHrmÚsleeprçrèrorér(r;rr0rOs       rYrBz%NamedPipeConnector._create_connectionsóèø€ð    IÜ#Ø×$Ñ$°W×5KÑ5Kô÷
'ð"&§¡×!BÑ!BØ—M‘M 4§:¡:ó"÷‘5ô—m‘m AÓ&×&Ð&÷
'ô$”O UÓ+Ð+ð%
'øðøð'øð
'ø÷
'ûôò    I؏y‰yР¤Z°´W×5IÑ5IÔ%JØÜ& s×'9Ñ'9¸3Ó?ÀSÐ Hûð    Iüs‘‚D„%C©B&ªC­4B.Á!B(Á"B.ÂB*ÂB. CÂB,ÂCÂDÂ&CÂ(B.Â*B.Â,CÂ.CÂ4B7 Â5CÂ<Cà   Dà >D
DÄDrPrBs@rYrKrKísÑø„ñ ð#8¹)ÀWÀIÓ:NÑ"NÐð
"Ø8@ØØØ48ñàðððð! ¨°Ð!4Ñ5ð    ð
ð ð ð ðw×0Ñ0Ñ1ðð
õð2ðcòóðð,Ø ð,Ø*.¨w©-ð,ØBQð,à    ÷,r[rK)srmrßrZrr„r‚r`Ú collectionsrrrÚ
contextlibrrBrÚ    itertoolsrr    r
Útimer Útypesr Útypingr rrrrrrrrrrrrrrrrr¨rrrAr!r"Úabcr#r$Úclient_exceptionsr%r&r'r(r)r*r+r,r-r.r/Ú client_protor0Ú client_reqrepr1r2r3r4r5r6r7r8r9r:Úlogr;r˜r<råÚcollections.abcr@r?Ú    bytearrayr-r‚Ú ImportErrorrhr<ÚEMPTY_SCHEMA_SETÚHTTP_SCHEMA_SETÚ WS_SCHEMA_SETÚHTTP_AND_EMPTY_SCHEMA_SETrfräÚ__all__ÚclientrLrMÚtracingrNrPrtrvr¸r½rHrkr¶rr×rÖrIrJrKrir[rYú<module>rns8ðÛÛÛ Û Û
ÛÛß7Ñ7ÝÝß*Ñ*ÝÝ÷÷÷÷õó(ß<çß0÷ ÷ ÷ ñ õ*ßHÑH÷÷ñõÝ%à×ѐwÒÞ&à 5˜)Ð%6Ð8KÐKÑ L€FáÛà—‘JðÛà—^‘^ˆ
ñ
˜b˜T“?ÐÙ˜V WÐ-Ó.€Ù˜4 ˜-Ó(€ à+Ð.>Ñ>ÐØ1°MÑAÐà! S×%5Ñ%5öð9ôò#ð    ×ј
Ñ"ð    ð €ñÝ%Ý,Ý÷ñð(J 4¨    °&Ñ(9Ñ#:ðJ¸tóJ÷UKñUKôp ˜zô ÷(4ñ4÷"J    $ñJ    $÷Z$?ñ$?ðN ð¨óñ6*¨$Ó/ÐÙ+¨EÓ2ÐôS  =ôS  ôl4Mô4ônE,˜õE,øð{4 ò؈؊
ðúsÄHÈ    HÈH