add-determinism 0.7.3

RPM buildroot helper to strip nondeterministic bits in files
Documentation

��gAocs��OoOOFoOOFoOOFoOOFoOOFoXXO1%^XO*
oOOFEoOOFE	o	OOFE
o
OO	FEoOO
FEoOOF
EoOOFEoO
oOOX,OggoOOX,OggoXXO1%^OOX,OggoOOX,OggoOOXM,1oOOXXM,1oOO1oOO1od))�StreamReader�StreamWriter�StreamReaderProtocol�open_connection�start_server�NZAF_UNIX)�open_unix_connection�start_unix_server�)�
coroutines)�events)�
exceptions)�format_helpers)�	protocols)�logger)�sleepi�limitc�s�[	 �WM1kWT$O5kWTTO5j	QMQ	0OgT0,Q@2DOes�I
rmgWQP	TT1kTX0!I3c)a�A wrapper for create_connection() returning a (reader, writer) pair.

The reader returned is a StreamReader instance; the writer is a
StreamWriter instance.

The arguments are all the usual arguments to create_connection()
except protocol_factory; most common are positional host and port,
with various optional keyword arguments following.

Additional optional keyword arguments are loop (to set the event loop
instance to use) and limit (to set the buffer limit passed to the
StreamReader).

(If you want to customize the StreamReader and/or
StreamReaderProtocol classes, just copy the code -- there's
really nothing special here except some convenience.)
�r�loop�rc�:�P!�N���protocol���(/usr/lib64/python3.14/asyncio/streams.py�<lambda>Z!open_connection.<locals>.<lambda>1s����N)r
�get_running_looprrZcreate_connectionr)
�host�portr�kwdsr�reader�	transport�_�writerrs
         @rrrsi����&�"�"�$�D�
��
1�F�#�F�6�H��/�/��$�.�(,�.�.�L�I�
�)�X�v�
<�F��>��.���A	A%�A#�
A%c�s�[[[ �WM1jQQQ0OgkPMTQQ0,Q@2DOes�I
!I3c)aVStart a socket server, call back for each client connected.

The first parameter, `client_connected_cb`, takes two parameters:
client_reader, client_writer.  client_reader is a StreamReader
object, while client_writer is a StreamWriter object.  This
parameter can either be a plain callback function or a coroutine;
if it is a coroutine, it will be automatically converted into a
Task.

The rest of the arguments are all the usual arguments to
loop.create_server() except protocol_factory; most common are
positional host and port, with various optional keyword arguments
following.  The return value is the same as loop.create_server().

Additional optional keyword argument is limit (to set the buffer
limit passed to the StreamReader).

The return value is the same as loop.create_server(), i.e. a
Server object which can be used to stop the service.
c�>:�WPPO5kWQPPO5kQ!�Nrr�rr�r!r�client_connected_cbrr�  ���r�factoryZstart_server.<locals>.factoryNs&����E��5��'��0C�-1�3���rN)r
rZ
create_server)r*rrrr r,rs`  `  @rrr6s;����,�"�"�$�D���#�#�G�4�@�4�@�@�@�@�s�5A�?�Ac�s�[ �WM1kWTO5kWTCO5jQMQ0OgQ0,Q@2DOes�I
rmVWQPTC1kTG0!I3c)z@Similar to `open_connection` but works with UNIX Domain Sockets.rrcrrrrrrrZ&open_unix_connection.<locals>.<lambda>bs���HrN)r
rrrZcreate_unix_connectionr)	�pathrr rr!r"r#r$rs	        @rrrZsi�����&�&�(���E�5��'��:��!�8�8��d�,�&*�,�,��	��i��6�@���~��,�r%c�s�[[[ �WM1jQQQ0OgkPMTA0,Q@2DOes�I
!I3c)z=Similar to `start_server` but works with UNIX Domain Sockets.cr&r'r(r)r+rr,Z"start_unix_server.<locals>.factoryks&���!��D�9�F�+�F�4G�15�7�H��OrN)r
rZcreate_unix_server)r*r-rr r,rs` `  @rrrfs9�����&�&�(��	��,�,�W�C�d�C�C�C�C�s�4A�>�AcsJ[�XoOoOojOoOOgoOoOoOoOo	O	o
O
oQod)�FlowControlMixinitaReusable flow control logic for StreamWriter.drain().

This implements the protocol methods pause_writing(),
resume_writing() and connection_lost().  If the subclass overrides
these it must call the super methods.

StreamWriter.drain() must wait for _drain_helper() coroutine.
Ncs��Q`WM1QiJTiOQiWM
1QiOQid�NF)r
�get_event_loop�_loop�_paused�collectionsZdeque�_drain_waiters�_connection_lost)�selfr�  r�__init__ZFlowControlMixin.__init__~s<���<��.�.�0�D�J��J����)�/�/�1��� %��rcs��OQiQMM1%^WMOQ1dd)NTz%r pauses writing)r2r1�	get_debugr�debug�r6� r�
pause_writingZFlowControlMixin.pause_writing�s0������:�:���!�!��L�L�,�d�3�"rcs��OQiQMM1%^WMOQ1QM
C+kQM
1%^HQMO1H-	d)NFz%r resumes writing)r2r1r9rr:r4�done�
set_result�r6�waiterr7r�resume_writingZFlowControlMixin.resume_writing�sT������:�:���!�!��L�L�-�t�4��)�)�F��;�;�=�=��!�!�$�'�*rcs��OQiQM%adQMCAkQM1%^HQ`QM	O1H0QMQ1HC	d�NT)r5r2r4r>r?�
set_exception�r6�excrA�   r�connection_lostZ FlowControlMixin.connection_lost�sP�� $����|�|���)�)�F��;�;�=�=��;��%�%�d�+��(�(��-�*rc�sb �QM%^WO1bQM%adQMM	1kQM
M
Q1QDOes�I
QM
MQ1dI QM
MQ1c9c3c)NzConnection lost)r5ZConnectionResetErrorr2r1�
create_futurer4�appendZremover@r7r�
_drain_helperZFlowControlMixin._drain_helper�s����� � �&�'8�9�9��|�|�����)�)�+�����"�"�6�*�	/��L�L����&�&�v�.�
�����&�&�v�.�s0�A$B/�'B�,B
�-B�1B/�
B�B,�,B/cs�Wbr)�NotImplementedError�r6Zstreamr7r�_get_close_waiterZ"FlowControlMixin._get_close_waiter�s��!�!r)r5r4r1r2r)
�__name__�
__module__�__qualname__�__firstlineno__�__doc__r8r=rBrHrKrN�__static_attributes__�__classdictcell__��
__classdict__�@rr.r.ts(�����&�4�(�.�
/�"rr.cs~[[�XoOoOojOoOoOQ0OggoXO1oOo	Oo
Q0OgoO	oO
o
OoOoO
oQoQ9o!)ri�a)Helper class to adapt between Protocol and StreamReader.

(This is a helper class instead of making StreamReader itself a
Protocol subclass, because the StreamReader has other potential
uses, and to prevent the user of the StreamReader to accidentally
call inappropriate methods of the protocol.)
Ncs(:�WPQZQO5Q_-WMQ1QiQM
QiJOQiQ_TiOQiOQiOQi	T i
OQiQMM1Qid)NrF)�superr8�weakrefZref�_stream_reader_wr�_source_traceback�_strong_reader�_reject_connection�_task�
_transport�_client_connected_cb�	_over_sslr1rI�_closed)r6Z
stream_readerr*r�	__class__s    �rr8ZStreamReaderProtocol.__init__�s����
���d��#��$�%,�[�[��%?�D�"�%2�%D�%D�D�"�%)�D�"��*�#0��"'�����
����$7�!�����z�z�/�/�1��rcs>�QM`dQM1!r)r[r;r<r�_stream_readerZ#StreamReaderProtocol._stream_reader�s ���!�!�)���%�%�'�'rcsX�QMkTiQMO1OGQid)N�
sslcontext)r1r`�get_extra_inforb)r6r"rrGr�_replace_transportZ'StreamReaderProtocol._replace_transport�s'���z�z��#��"�1�1�,�?�t�K��rcs~[[�PM%^POO,kPM%^PMQO$PMMQ1PM	1dPPiPMkQ_QMP1PMO1OGPi	PM_�WPPQPM1kPMT41kWMQ1%^BQQ0OgkPMMQ1PiPMM!Q1OPidd)N�messagezpAn open stream was garbage collected prior to establishing network connection; call "stream.close()" explicitly.Zsource_tracebackrfcs�:�QM1%^PM1dQM1kQ_2PMM	OOOQOP,1PM1dd)Nriz*Unhandled exception in client_connected_cb�	exceptionr")�	cancelled�closerjr1�call_exception_handler)ZtaskrFr6r"s  ��r�callbackZ6StreamReaderProtocol.connection_made.<locals>.callback�sf����~�~�'�'�!���)���.�.�*�C����
�
�9�9�%�'S�'��'��;��
"���)�
'r)r^r\r1rmZabortr`re�
set_transportrgrbrarr	ZiscoroutineZcreate_taskr_Zadd_done_callbackr])r6r"Zcontextr!r$Zresrns``     r�connection_madeZ$StreamReaderProtocol.connection_made�s����"�"��@��G�
�%�%�.2�.D�.D��*�+��J�J�-�-�g�6��O�O���#����$�$����� � ��+�"�1�1�,�?�t�K����$�$�0�!�)�T�6�4�:�:�F�F��+�+�F�;�C��%�%�c�*�*�*�"�Z�Z�3�3�C�8��
��
�
�,�,�X�6�"&�D��)1rcsv:�QMkQ_%Q`QM1JQMQ1QMM	1%a:Q`QMMO1JQMMQ1WPQZQ1OQiOQi	OQi
OQidr)re�feed_eofrDrcr>r?rYrHr[�_stream_writerr_r`)r6rFr!rds   �rrHZ$StreamReaderProtocol.connection_losts�����$�$�����{����!��$�$�S�)��|�|� � �"�"��{����'�'��-����*�*�3�/�
����$�!%���"�����
���rcsF�QMkQ_QMQ1ddr)re�	feed_data)r6�datar!rGr�
data_receivedZ"StreamReaderProtocol.data_receiveds&���$�$�������T�"�rcsf�QMkQ_QM1QM%^dd)NFT)rerqrb)r6r!r7r�eof_receivedZ!StreamReaderProtocol.eof_receiveds,���$�$�����O�O���>�>��rc��QM!r)rcrMr7rrNZ&StreamReaderProtocol._get_close_waiter&s���|�|�rcs��QMkQM1%^'QM1%aQM1dddW^dc9cr)rcr>rkrjZAttributeError)r6Zclosedr7r�__del__ZStreamReaderProtocol.__del__)sR��	#��\�\�F��{�{�}�}�V�%5�%5�%7�%7�� � �"�&8�}���	��	�s�A�
A�A)
rarcrbr^r\r[rrr]r_r`�NN)rOrPrQrRrSr\r8�propertyrerhrprHrurvrNrxrTrUZ
__classcell__)rdrWs@@rrr�sU�������2�&�(��(�
L�
%'�N�$#�
	��	#�	#rrcs�[�XoOoOojOoOoOoXO1oOo	Oo
OoO	oO
o
OoOoOOgoOoOO
OO
OO
,OgoX0OgoOoQod
)ri5aWraps a Transport.

This exposes write(), writelines(), [can_]write_eof(),
get_extra_info() and close().  It adds drain() which returns an
optional Future on which you can wait for flow control.  It also
adds a transport property which references the Transport
directly.
cs��TiT iT0iT@iQMM	1QiQM
M
O1dr)r`�	_protocol�_readerr1rI�
_complete_futr?)r6r"rr!r�     rr8ZStreamWriter.__init__?sA��#��!�����
�!�Z�Z�5�5�7������%�%�d�+rcs��QMMOQM8/+kQM_QM	OQM8/1OMOM
Q11!)N�
transport=zreader=�<{}>� )rdrOr`r|rJ�format�join�r6Zinfor7r�__repr__ZStreamWriter.__repr__Is[�����'�'�:�d�o�o�5H�)I�J���<�<�#��K�K�'�$�,�,�!1�2�3��}�}�S�X�X�d�^�,�,rcrwr�r`r;r<rr"ZStreamWriter.transportOs�����rc�:�QMMQ1dr)r`�write�r6rtr7rr�ZStreamWriter.writeSs�������d�#rcr�r)r`�
writelinesr�r7rr�ZStreamWriter.writelinesVs�����"�"�4�(rc�6�QMM1!r)r`�	write_eofr;r<rr�ZStreamWriter.write_eofYs�����(�(�*�*rcr�r)r`�
can_write_eofr;r<rr�ZStreamWriter.can_write_eof\s�����,�,�.�.rcr�r)r`rlr;r<rrlZStreamWriter.close_s�����$�$�&�&rcr�r)r`�
is_closingr;r<rr�ZStreamWriter.is_closingbs�����)�)�+�+rc�sV �QMMQ1DOes�I
dI3cr)r{rNr;r<r�wait_closedZStreamWriter.wait_closedes����n�n�.�.�t�4�4�4�s�)�'�)Ncs8�QMMT1!r)r`rg)r6ZnameZdefaultrGrrgZStreamWriter.get_extra_infohs�����-�-�d�<�<rc�s �QM_QMM1kQ_QbQMM1%^W	O1DOes�I
QM
M
1DOes�I
dI'I3c)zYFlush the write buffer.

The intended use is to write

  w.write(data)
  await w.drain()
Nr)r|rjr`r�rr{rK)r6rFr7r�drainZStreamWriter.drainksk����<�<�#��,�,�(�(�*�C����	��?�?�%�%�'�'���(�N�N��n�n�*�*�,�,�,�
�,�s$�AB�B�!B�>B�?B�B�server_hostname�ssl_handshake_timeout�ssl_shutdown_timeoutc
�s �QMMOGkQMkQM1DOes�I
QMM	QM
TaTRQQO5DOes�I
kTpiQM
Q1dINI3c)z3Upgrade an existing stream-based connection to TLS.N)�server_sider�r�r�)r{rar�r1�	start_tlsr`rh)r6rfr�r�r�r�rZ
new_transports        rr�ZStreamWriter.start_tls�s����
�n�n�9�9��E���>�>���j�j�l���"�j�j�2�2��O�O�X�#�"7�!5�	3�7�7�
�
(���#�#�M�2�	�7�s!�8B
�B	�1B
�,B�-B
�B
cs�QMM1%acQMM1%^QMOW
1dQM
1QMOQ8/W
1dd)Nzloop is closedz	unclosed )r`r�r1Z	is_closedZwarnZResourceWarningrl)r6�warningsr7rrxZStreamWriter.__del__�sZ�����)�)�+�+��z�z�#�#�%�%��
�
�.��@��
�
���
�
�	�$��2�O�D�,r)r}r1r{r|r`r)rOrPrQrRrSr8r�rzr"r�r�r�r�rlr�r�rgr�r�r�rxrTrUrVrXrrr5s������,�-�����$�)�+�/�'�,�5�=�-�23�(,�3�.2�3�.2�3�  (�E�Errcs�[�XoOoOojOoXO0OgoOoOoOo	Oo
OoO	oO
o
OoOoO
oOoOOgoOOgoOoOoOoOoQod)ri�Ncs|�QO6:^WO1bTiQ`WM1QiJT iW1QiOQiOQiOQi	OQi
OQiQMM1%^0WMWM O11Qidd)NrzLimit cannot be <= 0Fr)�
ValueError�_limitr
r0r1Z	bytearray�_buffer�_eof�_waiter�
_exceptionr`r2r9rZ
extract_stack�sysZ	_getframer\)r6rrrGrr8ZStreamReader.__init__�s����A�:��3�4�4����<��.�.�0�D�J��J� �{�����	��������������:�:���!�!�%3�%A�%A��
�
�a� �&"�D�"�"rcs��O+kQM%^'QMWQM1O/1QM%^QMO1QMW
6w^QMOQM/1QM%^QMOQM8/1QM%^QMOQM8/1QM%^QMOQM8/1QM%^QMO1O	MO
MQ11!)Nrz bytesZeofzlimit=zwaiter=z
exception=rZpausedr�r�)r�rJ�lenr�r��_DEFAULT_LIMITr�r�r`r2r�r�r�r7rr�ZStreamReader.__repr__�s�������<�<��K�K�3�t�|�|�,�-�V�4�5��9�9��K�K����;�;�.�(��K�K�&����
�.�/��<�<��K�K�'�$�,�,�!1�2�3��?�?��K�K�*�T�_�_�$7�8�9��?�?��K�K�*�T�_�_�$7�8�9��<�<��K�K��!��}�}�S�X�X�d�^�,�,rcrwr)r�r;r<rrjZStreamReader.exception�s�����rcs��TiQMkQ_/OQiQM1%aQMQ1dddr)r�r�rkrDrErGrrDZStreamReader.set_exception�sD�����������D�L��#�#�%�%��$�$�S�)�&�rcs��QMkQ_/OQiQM1%aQMO1ddd)z1Wakeup read*() functions waiting for data or EOF.N)r�rkr?r@r7r�_wakeup_waiterZStreamReader._wakeup_waiter�s?���������D�L��#�#�%�%��!�!�$�'�&�rcs�Tidrr�)r6r"r7rroZStreamReader.set_transport�s��#�rcs��QM%^FWQM1QM6:^"OQiQMM1dddr/)r2r�r�r�r`�resume_readingr;r<r�_maybe_resume_transportZ$StreamReader._maybe_resume_transport�s;���<�<�C����-����<� �D�L��O�O�*�*�,�=�<rcs2�OQiQM1drC)r�r�r;r<rrqZStreamReader.feed_eof�s����	����rcsJ�QM9%^QM%(!)z=Return True if the buffer is empty and 'feed_eof' was called.)r�r�r;r<r�at_eofZStreamReader.at_eof�s���y�y�-����-�-rcsj�Q%adQMMQ1QM1QM_\QM%aJWQM1OQM*6�^#QMM1OQiddddW^
OQidc9c)NiT)	r�Zextendr�r`r2r�r�Z
pause_readingrLr�r7rrsZStreamReader.feed_data�s����������D�!������O�O�'��L�L��D�L�L�!�A����O�3�
$����-�-�/� $���4�!�
(��
'�
'�#'���	
'�s�9B�B2�1B2c�s8 �QM_WQO/1bQM%^!OQiQMM	1QM
M
1QiQMDOes�I
OQidIOQic9c3c)z`Wait until feed_data() or feed_eof() is called.

If stream was paused, automatically resume it.
NzF() called while another coroutine is already waiting for incoming dataF)r�ZRuntimeErrorr2r`r�r1rI)r6Z	func_namer7r�_wait_for_dataZStreamReader._wait_for_datas�����<�<�#���+�4�5�6�
6��<�<� �D�L��O�O�*�*�,��z�z�/�/�1���	 ��,�,����D�L�
���D�L�s0�A-B�0B�?B�B�B�B�	B�Bc�s� �OkWQ1kQMQ1DOes�I
kQ!IWM^kQMpOk=!Ok=cWM
^�kQMMTM1%^QMOQMQ*.JQMM1QM1WQMO1bOk=cc9c3c)a�Read chunk of data from the stream until newline (b'
') is found.

        On success, return chunk that ends with newline. If only partial
        line can be read due to EOF, return incomplete line without
        terminating newline. When EOF was reached while no bytes read, empty
        bytes object is returned.

        If limit is reached, ValueError will be raised. In that case, if
        newline was found, complete line including newline will be removed
        from internal buffer. Else, internal buffer will be cleared. Limit is
        compared against part of the line without newline.

        If stream was paused, this function will automatically resume it if
        needed.
        �
Nr)
r��	readuntilr�IncompleteReadErrorZpartial�LimitOverrunErrorr�Z
startswithZconsumed�clearr�r�Zargs)r6�sepZseplenZlineZer~r�readlineZStreamReader.readlines���� ���S���
	(�����,�,�D���-���-�-�	��9�9����+�+�	(��|�|�&�&�s�J�J�7�7��L�L�!5�!�*�*�v�"5�!5�6����"�"�$��(�(�*��Q�V�V�A�Y�'�'��
	(�sJ�C;�.�,�.�C;�.�C8�A�
C8�C;�C8�*B	C3�3C8�8C;c�s �WQW1%^WQWO5kJQ+kQ%aW	O1bWQO1kWQO1kQO6X^W	O1bQM
_QM
bOkWQM1kTT*
Q6�^�OkOkQCBkQMMT�1k	Q	O6waH&Q	WQ1*k
Q_T�6aH>Q
kQ	kHD	Q_J�WOQO*Q*
1kT@M6�^WMOQ1bQM%^FWQM1kQMM1WMQO1bQM!O	1DOes�I
BHT`M6�^WMO
Q1bQMOQkQMOQ.QM#1WQ1!If3c)a�Read data from the stream until ``separator`` is found.

On success, the data and separator will be removed from the
internal buffer (consumed). Returned data will include the
separator at the end.

Configured stream limit is used to check result. Limit sets the
maximal length of data that can be returned, not counting the
separator.

If an EOF occurs and the complete separator is still not found,
an IncompleteReadError exception will be raised, and the internal
buffer will be reset.  The IncompleteReadError.partial attribute
may contain the separator partially.

If the data cannot be read because of over limit, a
LimitOverrunError exception  will be raised, and the data
will be left in the internal buffer, so it can be read again.

The ``separator`` may also be a tuple of separators. In this
case the return value will be the shortest possible that has any
separator as the suffix. For the purposes of LimitOverrunError,
the shortest possible separator is considered to be the one that
matched.
)Zkeyz-Separator should contain at least one elementr�����z,Separator should be at least one-byte stringNrz2Separator is not found, and chunk exceed the limitr�z2Separator is found, but chunk is longer than limit)Z
isinstanceZtupleZsortedr�r�r�r�ZfindZmaxr�rr�r��bytesr�r�r�r�)r6Z	separatorZ
min_seplenZ
max_seplenZoffsetZbuflenZmatch_startZ	match_endr�ZisepZendZchunks            rr�ZStreamReader.readuntil>s����4�i��'�'��y�c�2�I�"��I���L�M�M���1��&�
���2��'�
���?��K�L�L��?�?�&��/�/�!�*�������&�F���*�,�"�� �	�$�C��<�<�,�,�S�9�D��r�z�#�S��X�o��$�,���(+�I�*.�K�%��(���Q���
�Z� 7�8���K�K�'�$�6�6�L�� � ��y�y��d�l�l�+�����"�"�$� �4�4�U�D�A�A��%�%�k�2�2�2����$��.�.�D�k�S�
S����Z�i�(���L�L��)��$��$�$�&��U�|��
3�s �CH�H�)B/H�G?�A'Hc�s� �QM_QMbQO6X^dQO6^R+kQMQM1DOes�I
kQ%aJQMQ1H?OM	Q1!QM
%a*QM%aQMO1DOes�I
WWQM
1OQ1kQM
OQ.QM1Q!I�IH3c)a]Read up to `n` bytes from the stream.

If `n` is not provided or set to -1,
read until EOF, then return all read bytes.
If EOF was received and the internal buffer is empty,
return an empty bytes object.

If `n` is 0, return an empty bytes object immediately.

If `n` is positive, return at most `n` available bytes
as soon as at least 1 byte is available in the internal buffer.
If EOF is received before any byte is read, return an empty
bytes object.

Returned value is not limited with limit, configured at stream
creation.

If stream was paused, this function will automatically resume it if
needed.
Nrr�read)r�r�r�rJr�r�r�r�r��
memoryviewr�)r6�nZblocksZblockrtr~rr�ZStreamReader.read�s����,�?�?�&��/�/�!���6���q�5�
�F��"�i�i����4�4�����
�
�e�$��8�8�F�#�#��|�|�D�I�I��%�%�f�-�-�-��Z����-�b�q�1�2���L�L��!����$�$�&���5�
.�s&�AC<�
C8�A&C<�1C:�2AC<�:C<c�s� �QO6^WO1bQM_QMbQO6X^dWQM1Q6^qQM%^EWQM1kQMM
1WMT!1bQMO1DOes�I
H�WQM1Q6X^0WQM1kQMM
1J0WWQM1OQ1kQMOQ.QM1Q!I�3c)a�Read exactly `n` bytes.

Raise an IncompleteReadError if EOF is reached before `n` bytes can be
read. The IncompleteReadError.partial attribute of the exception will
contain the partial read bytes.

if n is zero, return empty bytes object.

Returned value is not limited with limit, configured at stream
creation.

If stream was paused, this function will automatically resume it if
needed.
rz*readexactly size can not be less than zeroNr�readexactly)r�r�r�r�r�r�r�rr�r�r�r�)r6r�Z
incompleterts    rr�ZStreamReader.readexactly�s���
�q�5��I�J�J��?�?�&��/�/�!���6���$�,�,��!�#��y�y�"�4�<�<�0�
����"�"�$� �4�4�Z�C�C��%�%�m�4�4�4��t�|�|���!�����&�D��L�L��� ���D�L�L�1�"�1�5�6�D����R�a�R� ��$�$�&���
5�s�B5E�7E	�8BEcs�Q!rrr;r<r�	__aiter__ZStreamReader.__aiter__s���rc�sZ �QM1DOes�I
kQO6X^WbQ!I3c)Nr)r�ZStopAsyncIteration)r6Zvalr7r�	__anext__ZStreamReader.__anext__s*����M�M�O�#���#�:�$�$��
�$�s�+�)�+)	r�r�r�r�r1r2r\r`r�)r�)r�)rOrPrQrRr\r�r8r�rjrDr�ror�rqr�rsr�r�r�r�r�r�r�rTrUrVrXrrr�si������+�$�"�,-�$�*�(�$�-�
�.�$�, �8�>p�d1�f'�R�rrryr)Z__all__r3Zsocketr�r�rZZhasattrZr	r
rrr
ZlogrZtasksrr�rrrrZProtocolr.rrrrrr�<module>r�s���'���
�
���
�6�9����<�<�G����������� .��8A�+�A�B�6�9���
�)7�
�D�&4�D�="�y�)�)�="�@~#�+�Y�-?�-?�~#�BeE�eE�Nw�wr