ó
    Û°›j?^  ã                   óh  • % S SK r S SKrS SKrS SKrS SKJrJr  S SKJrJ	r	J
r
  SSKJr  SSKJrJrJrJrJrJr  SSKJr  SSKJr  S	r\
" S
5      r " S S\5      r " S S\	\   5      r " S S5      r " S S5      r " S S\5      r\" 5       r \\   \!S'    " S S\	\   5      r" " S S\"\   5      r#g)é    N)Ú	AwaitableÚCallable)ÚFinalÚGenericÚTypeVaré   )ÚBaseProtocol)Ú_EXC_SENTINELÚDEFAULT_CHUNK_SIZEÚBaseTimerContextÚ	TimerNoopÚset_exceptionÚ
set_result)ÚLineTooLong)Úinternal_logger)ÚEMPTY_PAYLOADÚ	EofStreamÚStreamReaderÚ	DataQueueÚ_Tc                   ó   • \ rS rSrSrSrg)r   é   zeof stream indication.© N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__Ú__static_attributes__r   ó    ÚL/home/mande/repo/quber/.venv/lib/python3.13/site-packages/aiohttp/streams.pyr   r      s   † Ü r    r   c                   óR   • \ rS rSrSrS\/ \\   4   SS4S jrS	S jr	S\4S jr
Srg)
ÚAsyncStreamIteratoré"   ©Ú	read_funcr&   ÚreturnNc                 ó   • Xl         g ©Nr%   )Úselfr&   s     r!   Ú__init__ÚAsyncStreamIterator.__init__&   s   € Ø"�r    c                 ó   • U $ r)   r   ©r*   s    r!   Ú	__aiter__ÚAsyncStreamIterator.__aiter__)   ó   € Øˆr    c              ƒ   ó„   #   •  U R                  5       I S h  v•N nUS:X  a  [        eU$  N! [         a    [        ef = f7f©Nr    )r&   r   ÚStopAsyncIteration©r*   Úrvs     r!   Ú	__anext__ÚAsyncStreamIterator.__anext__,   sF   é € ð	%Ø—~‘~Ó'×'ˆBð �‹9Ü$Ð$Øˆ	ñ (øÜó 	%Ü$Ð$ð	%üs#   ‚A „, —*˜, œA ª, ¬=½A )r'   zAsyncStreamIterator[_T])r   r   r   r   Ú	__slots__r   r   r   r+   r/   r7   r   r   r    r!   r#   r#   "   s9   † à€Ið# (¨2¨y¸©}Ð+<Ñ"=ð #À$ô #ôð ÷ r    r#   c                   óD   • \ rS rSrSrSS jrS	S jrS\\\	4   4S jr
Srg)
ÚChunkTupleAsyncStreamIteratoré6   ©Ú_streamr'   Nc                 ó   • Xl         g r)   r=   )r*   Ústreams     r!   r+   Ú&ChunkTupleAsyncStreamIterator.__init__:   s   € Ø�r    c                 ó   • U $ r)   r   r.   s    r!   r/   Ú'ChunkTupleAsyncStreamIterator.__aiter__=   r1   r    c              ƒ   ón   #   • U R                   R                  5       I S h  v•N nUS:X  a  [        eU$  N7f)N©r    F)r>   Ú	readchunkr4   r5   s     r!   r7   Ú'ChunkTupleAsyncStreamIterator.__anext__@   s2   é € Ø—<‘<×)Ñ)Ó+×+ˆØ�ÓÜ$Ð$Øˆ	ñ ,ùs   ‚5 3¡5)r@   r   r'   N)r'   r;   )r   r   r   r   r9   r+   r/   ÚtupleÚbytesÚboolr7   r   r   r    r!   r;   r;   6   s&   † à€Iôôð  u¨d {Ñ!3÷ r    r;   c                   ó¢  • \ rS rSrSrSrSSS.S\S\S\S-  S	\	R                  S-  S
S4
S jjrS
\4S jrS
\\   4S jrS\S
\\   4S jrS
\\   4S jrS
\4S jrS
\\\4   4S jrS\S
S4S jrS
\S-  4S jr\4S\S\S
S4S jjrS\/ S4   S
S4S jrS6S jrS
\4S jr S
\4S jr!S6S jr"\#S
\4S j5       r$S\S
S4S  jr%S7S\S!\S
\4S" jjr&S6S# jr'S6S$ jr(S%\S
S4S& jr)SS'.S(\S-  S
\4S) jjr* S8SS*.S+\S,\S-  S
\4S- jjjr+S9S\S
\4S. jjr,S
\4S/ jr-S
\\\4   4S0 jr.S\S
\4S1 jr/S9S\S
\4S2 jjr0S\S
\4S3 jr1S\S
\4S4 jr2S5r3g):r   éG   a
  An enhancement of asyncio.StreamReader.

Supports asynchronous iteration by line, chunk or as available::

    async for line in reader:
        ...
    async for chunk in reader.iter_chunked(1024):
        ...
    async for slice in reader.iter_any():
        ...

)Ú	_protocolÚ
_low_waterÚ_high_waterÚ_low_water_chunksÚ_high_water_chunksÚ_loopÚ_sizeÚ_cursorÚ_http_chunk_splitsÚ_bufferÚ_buffer_offsetÚ_eofÚ_waiterÚ_eof_waiterÚ
_exceptionÚ_timerÚ_eof_callbacksÚ_eof_counterÚtotal_bytesÚtotal_compressed_bytesN)ÚtimerÚloopÚprotocolÚlimitra   rb   r'   c                óÀ  • Xl         X l        US-  U l        Uc  [        R                  " 5       n[        SUS-  5      U l        U R                  S-  U l        X@l        SU l	        SU l
        S U l        [        R                  " 5       U l        SU l        SU l        S U l        S U l        S U l        Uc
  [)        5       OUU l        / U l        SU l        SU l        S U l        g )Né   é   é   r   F)rM   rN   rO   ÚasyncioÚget_event_loopÚmaxrQ   rP   rR   rS   rT   rU   ÚcollectionsÚdequerV   rW   rX   rY   rZ   r[   r   r\   r]   r^   r_   r`   )r*   rc   rd   ra   rb   s        r!   r+   ÚStreamReader.__init__l   sÔ   € ð "ŒØŒØ  1™9ˆÔØ‰<Ü×)Ò)Ó+ˆDô #& a¨°"©Ó"5ˆÔØ!%×!8Ñ!8¸AÑ!=ˆÔØŒ
ØˆŒ
ØˆŒØAEˆÔÜ1<×1BÒ1BÓ1DˆŒØˆÔØˆŒ	Ø48ˆŒØ8<ˆÔØ04ˆŒØ%*¡]”i”k¸ˆŒØ8:ˆÔØˆÔØˆÔØ26ˆÕ#r    c                 ó2  • U R                   R                  /nU R                  (       a  UR                  SU R                  -  5        U R                  (       a  UR                  S5        U R
                  [        :w  a*  UR                  SU R
                  U R                  4-  5        U R                  (       a  UR                  SU R                  -  5        U R                  (       a  UR                  SU R                  -  5        SSR                  U5      -  $ )Nz%d bytesÚeofzlow=%d high=%dzw=%rze=%rú<%s>Ú )Ú	__class__r   rS   ÚappendrX   rN   r   rO   rY   r[   Újoin)r*   Úinfos     r!   Ú__repr__ÚStreamReader.__repr__Ž   s¼   € Ø—‘×'Ñ'Ð(ˆØ�:�:Ø�K‰K˜
 T§Z¡ZÑ/Ô0Ø�9�9Ø�K‰K˜ÔØ�?‰?Ô0Ó0Ø�K‰KÐ(¨D¯O©O¸T×=MÑ=MÐ+NÑNÔOØ�<�<Ø�K‰K˜ §¡Ñ-Ô.Ø�?�?Ø�K‰K˜ §¡Ñ0Ô1Ø˜Ÿ™ ›Ñ&Ð&r    c                 ó,   • [        U R                  5      $ r)   )r#   Úreadliner.   s    r!   r/   ÚStreamReader.__aiter__œ   s   € Ü" 4§=¡=Ó1Ð1r    Únc                 óH   ^ ^• T R                  T5        [        UU 4S j5      $ )z>Returns an asynchronous iterator that yields chunks of size n.c                  ó&   >• TR                  T 5      $ r)   )Úread)r|   r*   s   €€r!   Ú<lambda>Ú+StreamReader.iter_chunked.<locals>.<lambda>¢   s   ø€ ¨4¯9©9°Q¬<r    )Úset_read_chunk_sizer#   ©r*   r|   s   ``r!   Úiter_chunkedÚStreamReader.iter_chunkedŸ   s   ù€ à× Ñ  Ô#Ü"Õ#7Ó8Ð8r    c                 ó,   • [        U R                  5      $ )z3Yield all available data as soon as it is received.)r#   Úreadanyr.   s    r!   Úiter_anyÚStreamReader.iter_any¤   s   € ä" 4§<¡<Ó0Ð0r    c                 ó   • [        U 5      $ )zœYield chunks of data as they are received by the server.

The yielded objects are tuples
of (bytes, bool) as returned by the StreamReader.readchunk method.
)r;   r.   s    r!   Úiter_chunksÚStreamReader.iter_chunks¨   s   € ô -¨TÓ2Ð2r    c                 ó2   • U R                   U R                  4$ r)   ©rN   rO   r.   s    r!   Úget_read_buffer_limitsÚ#StreamReader.get_read_buffer_limits°   s   € Ø—‘ ×!1Ñ!1Ð2Ð2r    c                 óD   • XR                   :”  a  Xl         US-  U l        gg)z7Raise buffer limits to match the consumer's chunk size.rf   NrŽ   rƒ   s     r!   r‚   Ú StreamReader.set_read_chunk_size³   s"   € à�‰ÓØŒOØ  1™uˆDÕð r    c                 ó   • U R                   $ r)   ©r[   r.   s    r!   Ú	exceptionÚStreamReader.exception¹   ó   € Ø�‰Ðr    ÚexcÚ	exc_causec                 óÎ   • Xl         U R                  R                  5         U R                  nUb  S U l        [	        X1U5        U R
                  nUb  S U l        [	        X1U5        g g r)   )r[   r]   ÚclearrY   r   rZ   ©r*   r˜   r™   Úwaiters       r!   r   ÚStreamReader.set_exception¼   sc   € ð
 ŒØ×Ñ×!Ñ!Ô#à—‘ˆØÑØˆDŒLÜ˜& yÔ1à×!Ñ!ˆØÑØ#ˆDÔÜ˜& yÕ1ð r    Úcallbackc                 óº   • U R                   (       a	   U" 5         g U R                  R                  U5        g ! [         a    [        R                  " S5         g f = f©NúException in eof callback)rX   Ú	Exceptionr   r•   r]   rt   ©r*   rŸ   s     r!   Úon_eofÚStreamReader.on_eofÎ   sL   € Ø�9�9ðGÙ•
ð ×Ñ×&Ñ& xÕ0øô ó GÜ×)Ò)Ð*EÖFðGús   “7 · AÁAc                 ó„  • SU l         U R                  nUb  S U l        [        US 5        U R                  nUb  S U l        [        US 5        U R                  R                  SS9  U R                   H  n U" 5         M     U R                  R                  5         g ! [         a    [        R                  " S5         MM  f = f)NTF)Úresume_parserr¢   )rX   rY   r   rZ   rM   Úresume_readingr]   r£   r   r•   r›   )r*   r�   Úcbs      r!   Úfeed_eofÚStreamReader.feed_eof×   s´   € ØˆŒ	à—‘ˆØÑØˆDŒLÜ�v˜tÔ$à×!Ñ!ˆØÑØ#ˆDÔÜ�v˜tÔ$ð 	�‰×%Ñ%°EÐ%Ñ:à×%Ô%ˆBðGÙ–ñ &ð 	×Ñ×!Ñ!Õ#øô ó GÜ×)Ò)Ð*E×FðGús   Á5BÂ B?Â>B?c                 ó   • U R                   $ )z&Return True if  'feed_eof' was called.©rX   r.   s    r!   Úis_eofÚStreamReader.is_eofï   s   € à�y‰yÐr    c                 óJ   • U R                   =(       a    U R                  (       + $ )z=Return True if the buffer is empty and 'feed_eof' was called.©rX   rV   r.   s    r!   Úat_eofÚStreamReader.at_eofó   s   € à�y‰y×- §¡Ô-Ð-r    c              ƒ   óà   #   • U R                   (       a  g U R                  b   eU R                  R                  5       U l         U R                  I S h  v•N   S U l        g  N! S U l        f = f7fr)   )rX   rZ   rR   Úcreate_futurer.   s    r!   Úwait_eofÚStreamReader.wait_eof÷   s`   é € Ø�9�9Øà×ÑÑ'Ð'Ð'ØŸ:™:×3Ñ3Ó5ˆÔð	$Ø×"Ñ"×"Ð"à#ˆDÕñ #øà#ˆDÕüs0   ‚AA.ÁA" ÁA ÁA" ÁA.Á A" Á"	A+Á+A.c                 óL   • U R                   c  U R                  $ U R                   $ r)   )r`   r_   r.   s    r!   Útotal_raw_bytesÚStreamReader.total_raw_bytes  s&   € à×&Ñ&Ñ.Ø×#Ñ#Ð#Ø×*Ñ*Ð*r    Údatac                 ó†  • [         R                  " S[        SS9  U(       d  gU R                  (       a0  U R                  S   U R                  S U R                  S'   SU l        U =R
                  [        U5      -  sl        U =R                  [        U5      -  sl        U R                  R                  U5        SU l	        g)zDrollback reading some data from stream, inserting it to buffer head.zJunread_data() is deprecated and will be removed in future releases (#3260)rf   )Ú
stacklevelNr   )
ÚwarningsÚwarnÚDeprecationWarningrW   rV   rS   ÚlenrT   Ú
appendleftr^   )r*   r¼   s     r!   Úunread_dataÚStreamReader.unread_data  s“   € ä�Šð=äØò		
ö Øà××Ø"Ÿl™l¨1™o¨d×.AÑ.AÐ.CÐDˆD�L‰L˜‰OØ"#ˆDÔØ�
Š
”c˜$“iÑ�
Ø�Šœ˜D›	Ñ!�Ø�‰×Ñ Ô%ØˆÕr    Úsizec                 ó�  • U R                   (       a   S5       eU(       d  g[        U5      nU =R                  U-  sl        U R                  R	                  U5        U =R
                  U-  sl        U R                  nUb  S U l        [        US 5        U R                  U R                  :”  a  U R                  R                  5         g)Nzfeed_data after feed_eofF)rX   rÂ   rS   rV   rt   r_   rY   r   rO   rM   Úpause_reading)r*   r¼   rÆ   Údata_lenr�   s        r!   Ú	feed_dataÚStreamReader.feed_data  s™   € Ø—9—9Ð8Ð8Ó8ˆ}æØä�t“9ˆØ�
Š
�hÑ�
Ø�‰×Ñ˜DÔ!Ø×Ò˜HÑ$Õà—‘ˆØÑØˆDŒLÜ�v˜tÔ$à�:‰:˜×(Ñ(Ó(Ø�N‰N×(Ñ(Ô*Ør    c                 óŒ   • U R                   c7  U R                  (       a  [        S5      e[        R                  " 5       U l         g g )Nz@Called begin_http_chunk_receiving when some data was already fed)rU   r_   ÚRuntimeErrorrl   rm   r.   s    r!   Úbegin_http_chunk_receivingÚ'StreamReader.begin_http_chunk_receiving0  s?   € Ø×"Ñ"Ñ*Ø××Ü"ØVóð ô '2×&7Ò&7Ó&9ˆDÕ#ð +r    c                 ó¤  • U R                   c  [        S5      eU R                   (       a  U R                   S   OSnU R                  U:X  a  g U R                   R                  U R                  5        [	        U R                   5      U R
                  :”  a  U R                  R                  5         U R                  nUb  S U l        [        US 5        g g )NzFCalled end_chunk_receiving without calling begin_chunk_receiving firstéÿÿÿÿr   )
rU   rÍ   r_   rt   rÂ   rQ   rM   rÈ   rY   r   )r*   Úposr�   s      r!   Úend_http_chunk_receivingÚ%StreamReader.end_http_chunk_receiving8  s»   € Ø×"Ñ"Ñ*Üð.óð ð .2×-D×-Dˆd×%Ñ% bÒ)È!ˆà×Ñ˜sÓ"ð à×Ñ×&Ñ& t×'7Ñ'7Ô8ô
 ˆt×&Ñ&Ó'¨$×*AÑ*AÓAØ�N‰N×(Ñ(Ô*ð —‘ˆØÑØˆDŒLÜ�v˜tÕ$ð r    Ú	func_namec              ƒ   óZ  #   • U R                   R                  (       d  [        S5      eU R                  b  [        SU-  5      eU R                  R                  5       =o l         U R                     UI S h  v•N   S S S 5        S U l        g  N! , (       d  f       N= f! S U l        f = f7f)NzConnection closed.zH%s() called while another coroutine is already waiting for incoming data)rM   Ú	connectedrÍ   rY   rR   r¶   r\   )r*   rÕ   r�   s      r!   Ú_waitÚStreamReader._wait\  s•   é € Ø�~‰~×'×'ÜÐ3Ó4Ð4ð �<‰<Ñ#Üð4Ø6?ñ@óð ð
 !%§
¡
× 8Ñ 8Ó :Ð:ˆ”ð	 Ø—“Ø—�÷ ð  ˆD�Lñ ÷ •ûð  ˆD�LüsH   ‚A"B+Á%B Á1BÁ7BÁ8BÁ<B ÂB+ÂBÂ
BÂB Â	B(Â(B+©Úmax_line_lengthrÛ   c             ƒ   ó<   #   • U R                  US9I S h  v•N $  N7f)N©Úmax_size)Ú	readuntil©r*   rÛ   s     r!   rz   ÚStreamReader.readlineq  s   é € Ø—^‘^¨_�^Ð=×=Ð=Ñ=ùs   ‚•–rÝ   Ú	separatorrÞ   c             ƒ   ó   #   • [        U5      nUS:X  a  [        S5      eU R                  b  U R                  eSnSnSnU=(       d    U R                  nU(       að  U R                  (       a¢  U(       a›  U R
                  nU R                  S   R                  X5      S-   nU R                  U(       a
  X‡-
  U-   S-
  OS5      n	XI-  nU[        U	5      -  nU(       a  SnXR:”  a  [        US S S	-   U5      eU R                  (       a	  U(       a  M›  U R                  (       a   U$ U(       a  U R                  S
5      I S h  v•N   U(       a  Mð  U$  N7f)Nr   z,Separator should be at least one-byte stringr    Tr   rÑ   Féd   s   ...rß   )rÂ   Ú
ValueErrorr[   rO   rV   rW   ÚfindÚ_read_nowait_chunkr   rX   rØ   )
r*   râ   rÞ   ÚseplenÚchunkÚ
chunk_sizeÚ
not_enoughÚoffsetÚicharr¼   s
             r!   rß   ÚStreamReader.readuntilt  s4  é € ô �Y“ˆØ�Q‹;ÜÐKÓLÐLà�?‰?Ñ&Ø—/‘/Ð!àˆØˆ
Øˆ
Ø×/˜t×/Ñ/ˆæØ—,—,¦:Ø×,Ñ,�ØŸ™ Q™×,Ñ,¨YÓ?À!ÑC�à×.Ñ.Þ38�E‘N VÑ+¨aÒ/¸bó�ð ‘�Øœc $›iÑ'�
ÞØ!&�JàÓ(Ü% e¨D¨S k°FÑ&:¸HÓEÐEð —,—,§: :ð �y�yØð
 ˆö Ø—j‘j Ó-×-Ð-÷) ˆjð, ˆñ .ùs   ‚D	EÄ/EÄ<EÄ=EÅ
Ec              ƒ   óè  #   • U R                   b  U R                   e U R                  (       aK  U R                  (       d:  [        U SS5      S-   U l        U R                  S:”  a  [
        R                  " SSS9  U(       d  gUS:  af  U R                  [        R                  5        / n U R                  5       I S h  v•N nU(       d  OUR                  U5        M3  SR                  U5      $ U R                  U5        U R                  (       dN  U R                  (       d=  U R                  S	5      I S h  v•N   U R                  (       d  U R                  (       d  M=  U R                  U5      $  N± N;7f)
NTr^   r   r   é   zEMultiple access to StreamReader in eof state, might be infinite loop.)Ú
stack_infor    r   )r[   rX   rV   Úgetattrr^   r   Úwarningr‚   ÚsysÚmaxsizer‡   rt   ru   rØ   Ú_read_nowait)r*   r|   ÚblocksÚblocks       r!   r   ÚStreamReader.read›  s!  é € Ø�?‰?Ñ&Ø—/‘/Ð!ð Ø�y�y §§Ü$+¨D°.À!Ó$DÀqÑ$H�Ô!Ø×$Ñ$ qÓ(Ü#×+Ò+ð2à#'òö Øàˆq‹5à×$Ñ$¤S§[¡[Ô1ØˆFØØ"Ÿl™l›n×,�ÞØØ—‘˜eÔ$ñ	 ð
 —8‘8˜FÓ#Ð#à× Ñ  Ô#ð —,—, t§y§yØ—*‘*˜VÓ$×$Ð$ð —,—, t§y§y¡yð × Ñ  Ó#Ð#ñ -ñ %ùs+   ‚B:E2Â<E.Â=A7E2Ä4E0Ä5&E2ÅE2Å0E2c              ƒ   ó   #   • U R                   b  U R                   eU R                  (       dN  U R                  (       d=  U R                  S5      I S h  v•N   U R                  (       d  U R                  (       d  M=  U R	                  S5      $  N97f)Nr‡   rÑ   )r[   rV   rX   rØ   rö   r.   s    r!   r‡   ÚStreamReader.readanyÄ  sc   é € Ø�?‰?Ñ&Ø—/‘/Ð!ð
 —,—, t§y§yØ—*‘*˜YÓ'×'Ð'ð —,—, t§y§y¡yð × Ñ  Ó$Ð$ñ (ùs   ‚ABÁBÁ&BÁ;Bc              ƒ   ó  #   •  U R                   b  U R                   eU R                  (       a�  U R                  R                  5       nXR                  :X  a  gXR                  :”  a  U R	                  XR                  -
  5      S4$ [
        R                  " S5        U R                  (       a  M�  U R                  (       a  U R                  S5      S4$ U R                  (       a  gU R                  S5      I Sh  v•N   Mü   N7f)	zßReturns a tuple of (data, end_of_http_chunk).

When chunked transfer
encoding is used, end_of_http_chunk is a boolean indicating if the end
of the data corresponds to the end of a HTTP chunk , otherwise it is
always False.
TN©r    TzESkipping HTTP chunk end due to data consumption beyond chunk boundaryrÑ   FrE   rF   )r[   rU   ÚpopleftrT   rö   r   ró   rV   rç   rX   rØ   )r*   rÒ   s     r!   rF   ÚStreamReader.readchunkÐ  sÙ   é € ð Ø�‰Ñ*Ø—o‘oÐ%à×)×)Ø×-Ñ-×5Ñ5Ó7�ØŸ,™,Ó&Ø&ØŸ™Ó%Ø ×-Ñ-¨c·L±LÑ.@ÓAÀ4ÐHÐHÜ×'Ò'ð8ôð ×)×)Ñ)ð �|�|Ø×/Ñ/°Ó3°UÐ;Ð;ð �y�yð $à—*‘*˜[Ó)×)Ð)ñ1 ñ0 *ùs   ‚B+DÂ/A
DÃ9D Ã:Dc              ƒ   óh  #   • U R                   b  U R                   e/ nUS:”  a{  U R                  U5      I S h  v•N nU(       d4  SR                  U5      n[        R                  " U[        U5      U-   5      eUR                  U5        U[        U5      -  nUS:”  a  M{  SR                  U5      $  Nw7f)Nr   r    )r[   r   ru   ri   ÚIncompleteReadErrorrÂ   rt   )r*   r|   r÷   rø   Úpartials        r!   ÚreadexactlyÚStreamReader.readexactlyò  sš   é € Ø�?‰?Ñ&Ø—/‘/Ð!à ˆØ�!‹eØŸ)™) A›,×&ˆEÞØŸ(™( 6Ó*�Ü×1Ò1°'¼3¸w»<È!Ñ;KÓLÐLØ�M‰M˜%Ô Ø”�U“‰OˆAð �!�eð �x‰x˜ÓÐñ 'ùs   ‚6B2¸B0¹A$B2ÂB2c                 óÌ   • U R                   b  U R                   eU R                  (       a*  U R                  R                  5       (       d  [        S5      eU R	                  U5      $ )Nz9Called while some coroutine is waiting for incoming data.)r[   rY   ÚdonerÍ   rö   rƒ   s     r!   Úread_nowaitÚStreamReader.read_nowait  sT   € ð
 �?‰?Ñ&Ø—/‘/Ð!à�<�< §¡× 1Ñ 1× 3Ñ 3ÜØKóð ð × Ñ  Ó#Ð#r    c                 ó  • U R                   S   nU R                  nUS:w  a.  [        U5      U-
  U:”  a  X#X1-    nU =R                  U-  sl        OGU(       a&  U R                   R                  5         X#S  nSU l        OU R                   R                  5       n[        U5      nU =R                  U-  sl        U =R
                  U-  sl        U R                  nU(       a?  US   U R
                  :  a,  UR                  5         U(       a  US   U R
                  :  a  M,  U R                  U R                  :  aJ  U R                  b#  [        U R                  5      U R                  :  a  U R                  R                  5         U$ )Nr   rÑ   )rV   rW   rÂ   rþ   rS   rT   rU   rN   rP   rM   r©   )r*   r|   Úfirst_bufferrì   r¼   rÉ   Úchunk_splitss          r!   rç   ÚStreamReader._read_nowait_chunk  s6  € Ø—|‘| A‘ˆØ×$Ñ$ˆØ�‹7”s˜<Ó(¨6Ñ1°AÓ5Ø¨©Ð4ˆDØ×Ò 1Ñ$ÖæØ�L‰L× Ñ Ô"Ø Ð(ˆDØ"#ˆDÕð —<‘<×'Ñ'Ó)ˆDä�t“9ˆØ�
Š
�hÑ�
Ø�Š˜Ñ �à×.Ñ.ˆæ˜|¨A™°·±Ó=Ø× Ñ Ô"ö ˜|¨A™°·±Õ=ð �:‰:˜Ÿ™Ó'Ø×#Ñ#Ñ+Ü�4×*Ñ*Ó+¨d×.DÑ.DÓDà�N‰N×)Ñ)Ô+Øˆr    c                 ó  • U R                   R                  5         US:X  ae  [        U R                  5      nUS:X  a  U R	                  S5      $ SR                  [        U5       Vs/ s H  o0R	                  S5      PM     sn5      $ / nU R                  (       aJ  U R	                  U5      nUR                  U5        U[        U5      -  nUS:X  a  OU R                  (       a  MJ  U(       a  SR                  U5      $ S$ s  snf )z6Read not more than n bytes, or whole buffer if n == -1rÑ   r   r    r   )r\   Úassert_timeoutrÂ   rV   rç   ru   Úrangert   )r*   r|   ÚcountÚ_Úchunksré   s         r!   rö   ÚStreamReader._read_nowait/  sÔ   € à�‰×"Ñ"Ô$à�‹7ô ˜Ÿ™Ó%ˆEØ˜‹zØ×.Ñ.¨rÓ2Ð2Ø—8‘8Ä%ÈÄ,ÓOÂ,¸Q×4Ñ4°RÖ8Á,ÑOÓPÐPà ˆØ�l�lØ×+Ñ+¨AÓ.ˆEØ�M‰M˜%Ô Ø”�U“‰OˆAØ�A‹vØð �l�l‰lö $*ˆs�x‰x˜ÓÐ2¨sÐ2ùò Ps   Á%C=)rV   rW   rT   rX   r]   r^   rZ   r[   rO   rQ   rU   rR   rN   rP   rM   rS   r\   rY   r_   r`   ©r'   N©r   )ó   
©rÑ   )4r   r   r   r   r   r9   r	   Úintr   ri   ÚAbstractEventLoopr+   Ústrrw   r#   rI   r/   r„   rˆ   r;   r‹   rH   r�   r‚   ÚBaseExceptionr•   r
   r   r   r¥   r«   rJ   r¯   r³   r·   Úpropertyrº   rÄ   rÊ   rÎ   rÓ   rØ   rz   rß   r   r‡   rF   r  r  rç   rö   r   r   r    r!   r   r   G   s‚  † ñð€Ið8 *.Ø15ò 7àð 7ð ð 7ð
   $Ñ&ð 7ð ×'Ñ'¨$Ñ.ð 7ð 
õ 7ðD'˜#ô 'ð2Ð.¨uÑ5ô 2ð9˜cð 9Ð&9¸%Ñ&@ô 9ð
1Ð-¨eÑ4ô 1ð3Ð:ô 3ð3¨¨c°3¨h©ô 3ð% Sð %¨Tô %ð˜=¨4Ñ/ô ð $1ñ2àð2ð !ð2ð 
õ	2ð$1˜x¨¨D¨Ñ1ð 1°dô 1ô$ð0˜ô ð.˜ô .ô	$ð ð+ ó +ó ð+ð
 ð ¨$ô ñ(˜eð ¨3ð °tõ ô(:ô"%ðH  Sð  ¨Tô  ð* ?Cò >°°t±ð >Àuõ >ð "'ð%ØBFò%Øð%Ø58¸4±Zð%à	ö%ñN'$˜Cð '$¨õ '$ðR
%˜uô 
%ð *  u¨d {Ñ!3ô  *ðD  3ð  ¨5ô  ñ$˜Sð $¨%õ $ð Cð ¨Eô ð>3˜cð 3 e÷ 3r    r   c                   ó\  • \ rS rSrSrSS jrS\4S jrS\S-  4S jr	\
4S\S	\SS4S
 jjrS\/ S4   SS4S jrSS jrS\4S jrS\4S jrSS jrSS\S\S\4S jjrS\SS4S jrSS.S\S-  S\4S jjrS S\S\4S jjrS\4S jrS\\\4   4S jrS\S\4S jrS S\S\4S jjrSrg)!ÚEmptyStreamReaderiF  ©Ú_read_eof_chunkr'   Nc                 ó    • SU l         SU l        g )NFr   ©r   r_   r.   s    r!   r+   ÚEmptyStreamReader.__init__J  s   € Ø$ˆÔØˆÕr    c                 ó4   • SU R                   R                  -  $ )Nrq   )rs   r   r.   s    r!   rw   ÚEmptyStreamReader.__repr__N  s   € Ø˜Ÿ™×/Ñ/Ñ/Ð/r    c                 ó   • g r)   r   r.   s    r!   r•   ÚEmptyStreamReader.exceptionQ  ó   € Ør    r˜   r™   c                 ó   • g r)   r   )r*   r˜   r™   s      r!   r   ÚEmptyStreamReader.set_exceptionT  s   € ð
 	r    rŸ   c                 ó`   •  U" 5         g ! [          a    [        R                  " S5         g f = fr¡   )r£   r   r•   r¤   s     r!   r¥   ÚEmptyStreamReader.on_eof[  s-   € ð	CÙ�JøÜó 	CÜ×%Ò%Ð&AÖBð	Cús   ‚
 Š -¬-c                 ó   • g r)   r   r.   s    r!   r«   ÚEmptyStreamReader.feed_eofa  s   € Ør    c                 ó   • g©NTr   r.   s    r!   r¯   ÚEmptyStreamReader.is_eofd  r(  r    c                 ó   • gr0  r   r.   s    r!   r³   ÚEmptyStreamReader.at_eofg  r(  r    c              ƒ   ó   #   • g 7fr)   r   r.   s    r!   r·   ÚEmptyStreamReader.wait_eofj  s   é € Øùó   ‚r¼   r|   c                 ó   • g©NFr   )r*   r¼   r|   s      r!   rÊ   ÚEmptyStreamReader.feed_datam  s   € Ør    c                 ó   • g r)   r   rƒ   s     r!   r‚   Ú%EmptyStreamReader.set_read_chunk_sizep  s   € Ør    rÚ   rÛ   c             ƒ   ó   #   • g7fr3   r   rà   s     r!   rz   ÚEmptyStreamReader.readlines  ó   é € Øùr6  c              ƒ   ó   #   • g7fr3   r   rƒ   s     r!   r   ÚEmptyStreamReader.readv  r>  r6  c              ƒ   ó   #   • g7fr3   r   r.   s    r!   r‡   ÚEmptyStreamReader.readany{  r>  r6  c              ƒ   ó>   #   • U R                   (       d  SU l         gg7f)NTrE   rý   r  r.   s    r!   rF   ÚEmptyStreamReader.readchunk~  s   é € Ø×#×#Ø#'ˆDÔ Øàùs   ‚c              ƒ   ó8   #   • [         R                  " SU5      e7fr3   )ri   r  rƒ   s     r!   r  ÚEmptyStreamReader.readexactly…  s   é € Ü×)Ò)¨#¨qÓ1Ð1ùs   ‚c                 ó   • gr3   r   rƒ   s     r!   r  ÚEmptyStreamReader.read_nowaitˆ  s   € Ør    r"  r  r  r  )r   r   r   r   r9   r+   r  rw   r  r•   r
   r   r   r¥   r«   rJ   r¯   r³   r·   rI   r  rÊ   r‚   rz   r   r‡   rH   rF   r  r  r   r   r    r!   r  r  F  s9  † à$€Iôð0˜#ô 0ð˜=¨4Ñ/ô ð $1ñàðð !ðð 
õ	ðC˜x¨¨D¨Ñ1ð C°dô Côð˜ô ð˜ô ôñ˜eð ¨ð °Dõ ð Sð ¨Tô ð ?Cò °°t±ð Àuõ ñ˜Cð ¨õ ð
˜uô ð  u¨d {Ñ!3ô ð2 3ð 2¨5ô 2ñ˜Sð ¨%÷ ð r    r  r   c                   óÞ   • \ rS rSrSrS\R                  SS4S jrS\4S jr	S\
4S jrS\
4S	 jrS\S-  4S
 jr\4S\S\SS4S jjrSS\S\SS4S jjrSS jrS\4S jrS\\   4S jrSrg)r   i�  z>DataQueue is a general-purpose blocking queue with one reader.rb   r'   Nc                 ón   • Xl         SU l        S U l        S U l        [        R
                  " 5       U l        g r8  )rR   rX   rY   r[   rl   rm   rV   )r*   rb   s     r!   r+   ÚDataQueue.__init__’  s,   € ØŒ
ØˆŒ	Ø48ˆŒØ04ˆŒÜ:E×:KÒ:KÓ:Mˆ�r    c                 ó,   • [        U R                  5      $ r)   )rÂ   rV   r.   s    r!   Ú__len__ÚDataQueue.__len__™  s   € Ü�4—<‘<Ó Ð r    c                 ó   • U R                   $ r)   r®   r.   s    r!   r¯   ÚDataQueue.is_eofœ  s   € Ø�y‰yÐr    c                 óJ   • U R                   =(       a    U R                  (       + $ r)   r²   r.   s    r!   r³   ÚDataQueue.at_eofŸ  s   € Ø�y‰y×- §¡Ô-Ð-r    c                 ó   • U R                   $ r)   r”   r.   s    r!   r•   ÚDataQueue.exception¢  r—   r    r˜   r™   c                 ód   • SU l         Xl        U R                  =nb  S U l        [        X1U5        g g r0  )rX   r[   rY   r   rœ   s       r!   r   ÚDataQueue.set_exception¥  s5   € ð
 ˆŒ	ØŒØ—l‘lÐ"ˆFÑ/ØˆDŒLÜ˜& yÕ1ð 0r    r¼   rÆ   c                 ó‚   • U R                   R                  X45        U R                  =nb  S U l        [        US 5        g g r)   )rV   rt   rY   r   )r*   r¼   rÆ   r�   s       r!   rÊ   ÚDataQueue.feed_data°  s;   € Ø�‰×Ñ˜T˜LÔ)Ø—l‘lÐ"ˆFÑ/ØˆDŒLÜ�v˜tÕ$ð 0r    c                 óX   • SU l         U R                  =nb  S U l        [        US 5        g g r0  )rX   rY   r   )r*   r�   s     r!   r«   ÚDataQueue.feed_eof¶  s.   € ØˆŒ	Ø—l‘lÐ"ˆFÑ/ØˆDŒLÜ�v˜tÕ$ð 0r    c              ƒ   óÜ  #   • U R                   (       dX  U R                  (       dG  U R                  (       a   eU R                  R	                  5       U l         U R                  I S h  v•N   U R                   (       a  U R                   R                  5       u  pU$ U R                  b  U R                  e[        e NR! [
        R                  [
        R                  4 a	    S U l        e f = f7fr)   )rV   rX   rY   rR   r¶   ri   ÚCancelledErrorÚTimeoutErrorrþ   r[   r   )r*   r¼   r  s      r!   r   ÚDataQueue.read¼  s®   é € Ø�|�| D§I§IØ—|—|Ð#Ð#ØŸ:™:×3Ñ3Ó5ˆDŒLðØ—l‘l×"Ð"ð �<�<Ø—l‘l×*Ñ*Ó,‰GˆDØˆKØ�?‰?Ñ&Ø—/‘/Ð!Üˆñ #øÜ×*Ñ*¬G×,@Ñ,@ÐAó Ø#�”Øðüs1   ‚AC,ÁB< Á'B:Á(B< Á,AC,Â:B< Â<-C)Ã)C,c                 ó,   • [        U R                  5      $ r)   )r#   r   r.   s    r!   r/   ÚDataQueue.__aiter__Ì  s   € Ü" 4§9¡9Ó-Ð-r    )rV   rX   r[   rR   rY   r  r  )r   r   r   r   r   ri   r  r+   r  rM  rJ   r¯   r³   r  r•   r
   r   r   rÊ   r«   r   r#   r/   r   r   r    r!   r   r   �  s¹   † ÙHðN˜W×6Ñ6ð N¸4ô Nð!˜ô !ð˜ô ð.˜ô .ð˜=¨4Ñ/ô ð $1ñ	2àð	2ð !ð	2ð 
õ		2ñ%˜bð %¨ð %°Dõ %ô%ð˜Bô ð .Ð.¨rÑ2÷ .r    r   c                   ó‚   ^ • \ rS rSrSrS\S\S\R                  SS4U 4S jjr	SS	\
S
\SS4U 4S jjjrS\
4S jrSrU =r$ )ÚFlowControlDataQueueiÐ  z¢FlowControlDataQueue resumes and pauses an underlying stream.

It is a destination for parsed data.

This class is deprecated and will be removed in version 4.0.
rc   rd   rb   r'   Nc                óN   >• [         TU ]  US9  SU l        Xl        US-  U l        g )N)rb   r   rf   )Úsuperr+   rS   rM   Ú_limit)r*   rc   rd   rb   rs   s       €r!   r+   ÚFlowControlDataQueue.__init__Ø  s,   ø€ ô 	‰Ñ˜dÐÑ#ØˆŒ
Ø!ŒØ˜a‘iˆ�r    r¼   rÆ   c                 óð   >• [         TU ]  X5        U =R                  U-  sl        U R                  U R                  :”  a7  U R                  R
                  (       d  U R                  R                  5         g g g r)   )rd  rÊ   rS   re  rM   Ú_reading_pausedrÈ   )r*   r¼   rÆ   rs   s      €r!   rÊ   ÚFlowControlDataQueue.feed_dataà  sS   ø€ Ü‰Ñ˜$Ô%Ø�
Š
�dÑ�
à�:‰:˜Ÿ™Ó#¨D¯N©N×,J×,JØ�N‰N×(Ñ(Õ*ð -KÐ#r    c              ƒ   ó¤  #   • U R                   (       dX  U R                  (       dG  U R                  (       a   eU R                  R	                  5       U l         U R                  I S h  v•N   U R                   (       a‚  U R                   R                  5       u  pU =R                  U-  sl	        U R                  U R                  :  a5  U R                  R                  (       a  U R                  R                  5         U$ U R                  b  U R                  e[        e N¶! [
        R                  [
        R                  4 a	    S U l        e f = f7fr)   )rV   rX   rY   rR   r¶   ri   r\  r]  rþ   rS   re  rM   rh  r©   r[   r   )r*   r¼   rÆ   s      r!   r   ÚFlowControlDataQueue.readç  sè   é € Ø�|�| D§I§IØ—|—|Ð#Ð#ØŸ:™:×3Ñ3Ó5ˆDŒLðØ—l‘l×"Ð"ð �<�<ØŸ™×-Ñ-Ó/‰JˆDØ�JŠJ˜$Ñ�JØ�z‰z˜DŸK™KÓ'¨D¯N©N×,J×,JØ—‘×-Ñ-Ô/ØˆKØ�?‰?Ñ&Ø—/‘/Ð!Üˆñ #øÜ×*Ñ*¬G×,@Ñ,@ÐAó Ø#�”Øðüs1   ‚AEÁD  Á'DÁ(D  Á,B2EÄD  Ä -EÅE)re  rM   rS   rY   r  )r   r   r   r   r   r	   r  ri   r  r+   r   rÊ   r   r   Ú__classcell__)rs   s   @r!   rb  rb  Ð  sc   ø† ñð Ø$ð Ø-0ð Ø;B×;TÑ;Tð à	÷ ñ+˜bð +¨ð +°D÷ +ð +ð˜B÷ ò r    rb  )$ri   rl   rô   r¿   Úcollections.abcr   r   Útypingr   r   r   Úbase_protocolr	   Úhelpersr
   r   r   r   r   r   Úhttp_exceptionsr   Úlogr   Ú__all__r   r£   r   r#   r;   r   r  r   Ú__annotations__r   rb  r   r    r!   Ú<module>ru     s¸   ðÜ Û Û 
Û ß /ß *Ñ *å '÷÷ õ )Ý  ð€ñ ˆTƒ]€ô!�	ô !ô˜' "™+ô ÷(ñ ÷"|3ñ |3ô~C˜ô CñL &7Ó%8€ˆu�\Ñ"Ó 8ô>.�˜‘ô >.ôB(˜9 R™=õ (r    