← back to Atmos Game

assets/gen/.venv/lib/python3.12/site-packages/httpcore/_async/__pycache__/http2.cpython-312.pyc

154 lines

�

c�bj�]��@�ddlmZddlZddlZddlZddlZddlZddlZddl	Zddl
ZddlZddlZddl
mZddlmZmZmZddlmZmZmZddlmZmZmZddlmZd	d
lmZej>d�Z dd�Z!Gd
�dejD�Z#Gd�de�Z$Gd�d�Z%y)�)�annotationsN�)�AsyncNetworkStream)�ConnectionNotAvailable�LocalProtocolError�RemoteProtocolError)�Origin�Request�Response)�	AsyncLock�AsyncSemaphore�AsyncShieldCancellation)�Trace�)�AsyncConnectionInterfacezhttpcore.http2c�:�td�|jD��S)Nc3�rK�|]/\}}|j�dk(xs|j�dk(���1y�w)scontent-length�transfer-encodingN)�lower)�.0�k�vs   �l/Users/macstudio3/Projects/atmos-game/assets/gen/.venv/lib/python3.12/site-packages/httpcore/_async/http2.py�	<genexpr>z#has_body_headers.<locals>.<genexpr>s<�����#�D�A�q�	
���	�&�&�K�!�'�'�)�7K�*K�K�#�s�57)�any�headers)�requests r�has_body_headersrs �����O�O����c��eZdZdZdZdZy)�HTTPConnectionStaterr�N)�__name__�
__module__�__qualname__�ACTIVE�IDLE�CLOSED�rrr!r!$s��
�F��D�
�Frr!c��eZdZdZej
j
d��Z	d					d d�Zd!d�Z	d"d�Z
d#d�Zd#d	�Z								d$d
�Z
d#d�Z						d%d�Z						d&d
�Z						d'd�Z	d					d(d�Z				d)d�Zd*d�Zd+d�Zd,d�Zd"d�Zd-d�Zd.d�Zd/d�Zd/d�Zd/d�Zd/d�Zd0d�Zd0d�Zd1d�Z 			d2							d3d�Z!y)4�AsyncHTTP2Connection�F)�validate_inbound_headersNc��||_||_||_tjj|j��|_tj|_
d|_d|_t�|_t�|_t�|_t�|_d|_d|_d|_i|_d|_d|_d|_y)N)�configrF)�_origin�_network_stream�_keepalive_expiry�h2�
connection�H2Connection�CONFIG�	_h2_stater!r'�_state�
_expire_at�_request_countr�
_init_lock�_state_lock�
_read_lock�_write_lock�_sent_connection_init�_used_all_stream_ids�_connection_error�_events�_connection_terminated�_read_exception�_write_exception)�self�origin�stream�keepalive_expirys    r�__init__zAsyncHTTP2Connection.__init__.s������%���/?������3�3�4�;�;�3�G���)�.�.���(,������#�+���$�;���#�+���$�;���%*��"�$)��!�!&���
�	
��NR��#�15���26��rc	���
K�|j|jj�s/td|jj�d|j����|j
4�d{���|jtjtjfvr2|xjdz
c_
d|_tj|_n
t��ddd��d{���|j4�d{���|js�	d|i}tdt ||�4�d{���|j"di|���d{���ddd��d{���d|_d|_|j,j.j0}t3|�|_t7||j*z
�D]$}|j4j9��d{����&ddd��d{���|j4j9��d{���	|j,j;�}g|j<|<	||d�}tdt ||�4�d{���|jG||���d{���ddd��d{���td	t ||�4�d{���|jI||���d{���ddd��d{���td
t ||�4�d{���}|jK||���d{���\}	}
|	|
f|_&ddd��d{���tO	
tQ|||��d|jR|d
���S7���7��Y#1�d{���7swY��jxYw7��]7��47��7��#1�d{���7swY��!xYw#t$$r@}t'�5|j)��d{���7ddd�|�#1swY|�xYwd}~wwxYw7���7���#1�d{���7swY���xYw7���#t>j@jB$r'd|_"|xjdzc_
t��wxYw7���7���7���#1�d{���7swY���xYw7���7���7���#1�d{���7swY���xYw7���7��{7��b#1�d{���7swY��sxYw#t$$r�}t'�5d|i}tdt ||�4�d{���7|jU|���d{���7ddd��d{���7n#1�d{���7swYnxYwddd�n#1swYnxYwtW|t>j@jX�r,|jZrt]|jZ��t_|��|�d}~wwxYw�w)NzAttempted to send request to z on connection to rr�send_connection_initT�r�	stream_id�send_request_headers�send_request_body�receive_response_headers�rNsHTTP/2)�http_version�network_streamrN)�statusr�content�
extensionsrN�response_closedr))0�can_handle_request�urlrG�RuntimeErrorr0r<r8r!r&r'r:r9rr;r?r�logger�_send_connection_init�
BaseExceptionr�aclose�_max_streamsr7�local_settings�max_concurrent_streamsr
�_max_streams_semaphore�range�acquire�get_next_available_stream_idrBr3�
exceptions�NoAvailableStreamIDErrorr@�_send_request_headers�_send_request_body�_receive_response�return_valuer�HTTP2ConnectionByteStreamr1�_response_closed�
isinstance�
ProtocolErrorrCrr)rFr�
sci_kwargs�exc�local_settings_max_streams�_rN�kwargs�tracerUrs           r�handle_async_requestz)AsyncHTTP2Connection.handle_async_requestUs������&�&�w�{�{�'9�'9�:�
�/����0B�0B�/C�D��l�l�^�%��
�
�#�#�#��{�{�2�9�9�;N�;S�;S�T�T��#�#�q�(�#�"&���1�8�8���,�.�.�
$�#��?�?�?��-�-�	�"+�W�!5�J�$�.���� � �9�d�8�8�F�:�F�F�F� � �.2��*�%&��!��N�N�1�1�H�H�+�/=�=W�.X��+��9�D�<M�<M�M�N�A��5�5�=�=�?�?�?�O�1#�?�6�)�)�1�1�3�3�3�	+����C�C�E�I�&(�D�L�L��#�.	�!(�y�A�F��3�V�W�f�M�M��0�0��I�0�V�V�V�N�M��0�&�'�6�J�J��-�-�g��-�S�S�S�K�J��*�F�G�V����(,�(>�(>�#�y�)?�)�#����'-�g�%6��"�
�����1�$��9�U�$-�&*�&:�&:�!*��		�	
�w$��#��#�#�#��#�� ��G�� �� � � ��%��0�2�"�k�k�m�+�+�3��I�3��I����"@��3#��?�?�?��6	4��
�}�}�5�5�	+�(,�D�%����1�$��(�*�*�	+��N��V��N��M�M�M��J��S��K��J�J�J����#��������$�	�(�*�%�y�1�� �!2�F�G�V�L�L��/�/�)�/�D�D�D�M�L�L�L�L��+�*�*��
�#�r�}�}�:�:�;��.�.�-�d�.I�.I�J�J�)��-�-��I��-	�s��A%U'�'L5�(U'�+A)L;�U'�L8� U'�4M�5U'�8
O�M3� M�!M3�$M�:M�;M�?M3�
M�M3�A6O�N?�O�U'�O�!U'�9O�:U'�?)O�)R�P%�R�P.�P(� P.�$R�/P+�0R�
Q�R�Q
�%Q�&Q
�*R�5Q
�6R�Q#�R�Q,�+Q&�,Q,�<R�Q)�,R�4U'�8U'�;M�M�M�		U'�M3�M�M3�M0	�#M&�$M0	�+M3�3	N<�<
N7�N*�N
�N*� 
N7�*N4�/N7�7N<�<O�U'�O�O�O�	U'�AP"�"U'�%R�(P.�+R�.Q�4P7�5Q�<	R�Q
�
R�
Q �Q�Q �	R�&Q,�)R�,Q?�2Q5�3Q?�:R�	U$�
U�T�0R3
�1T�5S#�S
�S#�T�S�T�#S5�)S,�*S5�1T�8	U�T
	�AU�U$�$U'c	��VK�tjjdtjjjdtjjj
dtjjjdi��|j_|jjtjjj=|jj�|jjd�|j|��d{���y7��w)z�
        The HTTP/2 connection requires some initial setup before we can start
        using individual request/response streams on it.
        Tr�dr,)�client�initial_values�N)
r3�settings�Settings�SettingCodes�ENABLE_PUSH�MAX_CONCURRENT_STREAMS�MAX_HEADER_LIST_SIZEr7ra�ENABLE_CONNECT_PROTOCOL�initiate_connection�increment_flow_control_window�_write_outgoing_data)rFrs  rr]z*AsyncHTTP2Connection._send_connection_init�s�����)+���(<�(<�����(�(�4�4�a����(�(�?�?�����(�(�=�=�u�
�)=�
)
����%�
�N�N�)�)��K�K�$�$�<�<�
�	
���*�*�,����4�4�U�;��'�'��0�0�0�s�DD)�!D'�"D)c��XK�t|�}|jD��cgc]\}}|j�dk(s�|��c}}d}d|jfd|fd|jj
fd|jjfg|jD��cgc])\}}|j�dvr|j�|f��+c}}z}|jj|||��|jjd	|�
�|j|��d{���ycc}}wcc}}w7��w)z@
        Send the request headers to a given stream ID.
        �hostrs:methods
:authoritys:schemes:path)r�r)�
end_streamr|rRN)rrr�methodrZ�scheme�targetr7�send_headersr�r�)rFrrNr�rr�	authorityrs        rriz*AsyncHTTP2Connection._send_request_headers�s#����*�'�2�2�
�$+�?�?�K�?�4�1�a�a�g�g�i�7�6J�Q�?�K�A�N�	�����(�
�I�&�
����+�+�,�
�w�{�{�)�)�*�	
� ���
�'���1��w�w�y����W�W�Y��N�'�
�

��	
���#�#�I�w�:�#�N����4�4�U�i�4�P��'�'��0�0�0��'L��
�	1�s.�D*�D�D�AD*�.D"�AD*�D(�D*c��K�t|�syt|jtj�sJ�|j23d{���}|j|||��d{����%7� 7�6|j
||��d{���7y�w)zP
        Iterate over the request body sending it to a given stream ID.
        N)rrorH�typing�
AsyncIterable�_send_stream_data�_send_end_stream)rFrrN�datas    rrjz'AsyncHTTP2Connection._send_request_body�sz���� ��(���'�.�.�&�*>�*>�?�?�?�!�.�.�	C�$��(�(��)�T�B�B�B�	C��B��)��#�#�G�Y�7�7�7�sG�?B�A*�A&�A*�	B� A(�!B�&A*�(B�*B�B�Bc���K�|rr|j||��d{���}tt|�|�}|d|||d}}|jj	||�|j|��d{���|r�qyy7�]7��w)zI
        Send a single chunk of data in one or more data frames.
        N)�_wait_for_outgoing_flow�min�lenr7�	send_datar�)rFrrNr��max_flow�
chunk_size�chunks       rr�z&AsyncHTTP2Connection._send_stream_data	s}�����!�9�9�'�9�M�M�H��S��Y��1�J��{�
�+�T�*�+�->�4�E��N�N�$�$�Y��6��+�+�G�4�4�4��M��
5�s(�A<�A8�AA<�.A:�/A<�6A<�:A<c��xK�|jj|�|j|��d{���y7��w)z`
        Send an empty data frame on on a given stream ID with the END_STREAM flag set.
        N)r7r�r�)rFrrNs   rr�z%AsyncHTTP2Connection._send_end_streams.����	
���!�!�)�,��'�'��0�0�0�s�0:�8�:c��rK�	|j||��d{���}t|tjj�rn�@d}g}|j
�J�|j
D]L\}}|dk(rt
|jdd���}�(|jd�r�:|j||f��N||fS7���w)zT
        Return the response status code and headers for a given stream ID.
        N��s:status�ascii�ignore)�errors�:)
�_receive_stream_eventror3�events�ResponseReceivedr�int�decode�
startswith�append)rFrrN�event�status_coderrrs        rrkz&AsyncHTTP2Connection._receive_responses�������4�4�W�i�H�H�E��%����!;�!;�<���
�����}�}�(�(�(��M�M�D�A�q��J��!�!�(�(�7�8�(�"D�E���\�\�$�'�����1�v�&�	"��W�%�%�I�s�B7�B5�BB7�B7c�K�	|j||��d{���}t|tjj�rm|j
�J�|j�J�|j
}|jj||�|j|��d{���|j���n%t|tjj�ry��7��7�<�w)z]
        Iterator that returns the bytes of the response body for a given stream ID.
        N)r�ror3r��DataReceived�flow_controlled_lengthr�r7�acknowledge_received_datar��StreamEnded)rFrrNr��amounts     r�_receive_response_bodyz+AsyncHTTP2Connection._receive_response_body5s�������4�4�W�i�H�H�E��%����!7�!7�8��3�3�?�?�?��z�z�-�-�-��5�5�����8�8���K��/�/��8�8�8��j�j� ��E�2�9�9�#8�#8�9���H��9�s"�C�C�BC�C�;C�Cc��NK�|jj|�s6|j||��d{���|jj|�s�6|j|jd�}t	|t
jj�rt|��|S7�o�w)z�
        Return the next available event for a given stream ID.

        Will read more data from the network if required.
        Nr)	rB�get�_receive_events�popror3r��StreamResetr)rFrrNr�s    rr�z*AsyncHTTP2Connection._receive_stream_eventGs������,�,�"�"�9�-��&�&�w�	�:�:�:��,�,�"�"�9�-����Y�'�+�+�A�.���e�R�Y�Y�2�2�3�%�e�,�,���	
;�s�1B%�B#�B%�AB%c	���K�|j4�d{���|j�S|jj}|r&|r$||kDr|xjdzc_t	��t|j��|�|jj|��sq|j|��d{���}|D�]R}t|tjj�rKtdt|�4�d{���}|j|��d{���||_ddd��d{����st|tjj"tjj$tjj&tjj(f�rC|j*|jvs��|j|j*j-|���&t|tjj.�s��L||_��Uddd��d{���|j1|��d{���y7��7���7��I7��37��#1�d{���7swY���xYw7�C#1�d{���7swY�SxYw7�A�w)zp
        Read some data from the network until we see one or more events
        for a given stream ID.
        Nr�receive_remote_settings)r=rC�last_stream_idr:rrrBr��_read_incoming_dataror3r��RemoteSettingsChangedrr\�_receive_remote_settings_changerlr�r�r�r�rNr��ConnectionTerminatedr�)rFrrNr�r�r�rvs       rr�z$AsyncHTTP2Connection._receive_eventsVs������?�?�?��*�*�6�!%�!<�!<�!K�!K����I��4N��'�'�1�,�'�0�2�2�)�$�*E�*E�F�F�� ����(8�(8��(C�#�7�7��@�@��#�E�!�%����)H�)H�I�#(�5�v�w�$�$�"�"&�"F�"F�u�"M�M�M�16�E�.�	$�$�$�$���I�I�6�6��I�I�2�2��I�I�1�1��I�I�1�1�	��!�?�?�d�l�l�:� �L�L����9�@�@��G�#�E�2�9�9�+I�+I�J�6;��3�+$�!#�?�N�'�'��0�0�0�O#��A��$��N��$��$�$�$��%#��?�?�?��N	1�s��I.�H0�I.�BI�)H3�*AI�-H6
�.I�1H?�H9
�H?�I�H<�B
I�,AI�<
I�I.�I�I.�*I,�+I.�3I�6I�9H?�<I�?I�I�I�
I�I.�I)�I �I)�%I.c��|K�|jjtjjj
�}|r�t
|j|jjj�}|r�||jk7r�||jkDrG|jj��d{���|xjdz
c_||jkDr�G||jkrH|jj��d{���|xjdzc_||jkr�Gyyyyy7��7�0�w)Nr)�changed_settingsr�r3r}rr�r��	new_valuer7rarbr`rc�releasere)rFr�rb�new_max_streamss    rr�z4AsyncHTTP2Connection._receive_remote_settings_change�s����"'�!7�!7�!;�!;��K�K�$�$�;�;�"
��"�!�&�0�0����-�-�D�D��O��?�d�6G�6G�#G�%��(9�(9�9��5�5�=�=�?�?�?��%�%��*�%�&��(9�(9�9�&��(9�(9�9��5�5�=�=�?�?�?��%�%��*�%�&��(9�(9�9�	$H��"�@��@�s0�B1D<�3D8�4(D<�,D<�	D:�
(D<�3D<�:D<c��K�|jj��d{���|j|=|j4�d{���|jr%|js|j��d{���n�|jtjk(ry|jsmtj|_|j�(tj�}||jz|_
|jr|j��d{���ddd��d{���y7��7��7��7�7�
#1�d{���7swYyxYw�w�N)rcr�rBr<rCr_r8r!r&r'r2�time�	monotonicr9r@)rFrN�nows   rrnz%AsyncHTTP2Connection._response_closed�s������)�)�1�1�3�3�3��L�L��#��#�#�#��*�*�4�<�<��k�k�m�#�#���� 3� :� :�:�4�<�<�1�6�6����)�)�5��.�.�*�C�&)�D�,B�,B�&B�D�O��,�,��+�+�-�'�'�$�#�#�	4��#��#��(��$��#�#�#�s|�D>�D�!D>�D!�D>�,D)�2D#�3BD)�	D%�
D)�D>�D'�D>�!D>�#D)�%D)�'D>�)D;�/D2�0D;�7D>c��K�|jj�tj|_|j
j
��d{���y7��wr�)r7�close_connectionr!r(r8r1r_�rFs rr_zAsyncHTTP2Connection.aclose�s=����	
���'�'�)�)�0�0����"�"�)�)�+�+�+�s�A
A�A�Ac��K�|jjdi�}|jdd�}|j�|j�	|jj	|j
|��d{���}|dk(rt
d��	|jj|�}|S7�2#t$r}||_d|_|�d}~wwxYw�w)N�timeout�readrzServer disconnectedT)rWr�rDr1r��READ_NUM_BYTESr�	ExceptionrAr7�receive_data)rFr�timeoutsr�r�rrr�s       rr�z(AsyncHTTP2Connection._read_incoming_data�s������%�%�)�)�)�R�8���,�,�v�t�,�����+��&�&�&�	��-�-�2�2�4�3F�3F��P�P�D��s�{�)�*?�@�@��)-���(C�(C�D�(I���
�%Q���	�$'�D� �%)�D�"��I��	�s<�AC	�
)B(�3B&�4B(�C	�&B(�(	C�1C�C�C	c���K�|jjdi�}|jdd�}|j4�d{���|jj	�}|j
�|j
�	|jj||��d{���ddd��d{���y7�l7�#t$r}||_d|_	|�d}~wwxYw7�*#1�d{���7swYyxYw�w)Nr��writeT)
rWr�r>r7�data_to_sendrEr1r�r�rA)rFrr�r�r�rrs      rr�z)AsyncHTTP2Connection._write_outgoing_data�s������%�%�)�)�)�R�8���,�,�w��-���#�#�#��>�>�6�6�8�L��$�$�0��+�+�+�

��*�*�0�0��w�G�G�G�$�#�#��H���
�),��%�)-��&��	��
��$��#�#�#�sw�?C*�B.�C*�3C�9B2�B0�B2�C*�(C�)C*�0B2�2	C�;C�C�C�C*�C'�C�C'�#C*c��NK�|jj|�}|jj}t||�}|dk(r\|j	|��d{���|jj|�}|jj}t||�}|dk(r�\|S7�I�w)a
        Returns the maximum allowable outgoing flow for a given stream.

        If the allowable flow is zero, then waits on the network until
        WindowUpdated frames have increased the flow rate.
        https://tools.ietf.org/html/rfc7540#section-6.9
        rN)r7�local_flow_control_window�max_outbound_frame_sizer�r�)rFrrN�
local_flow�max_frame_size�flows      rr�z,AsyncHTTP2Connection._wait_for_outgoing_flow�s������.�.�B�B�9�M�
�"�n�n�D�D���:�~�.���a�i��&�&�w�/�/�/����A�A�)�L�J�!�^�^�C�C�N��z�>�2�D�	�a�i�
��	
0�s�AB%�B#�AB%�!B%c� �||jk(Sr�)r0�rFrGs  rrYz'AsyncHTTP2Connection.can_handle_request�s������%�%rc��|jtjk7xrd|jxrU|jxrF|j
jjtjjjk(Sr�)r8r!r(rAr@r7�
state_machine�stater3r4�ConnectionStater�s r�is_availablez!AsyncHTTP2Connection.is_available�ss���K�K�.�5�5�5�
��*�*�*�
��-�-�-�
����,�,�2�2��=�=�0�0�7�7�8��		
rc�h�tj�}|jduxr||jkDSr�)r�r�r9)rFr�s  r�has_expiredz AsyncHTTP2Connection.has_expired
s+���n�n������d�*�D�s�T�_�_�/D�Drc�<�|jtjk(Sr�)r8r!r'r�s r�is_idlezAsyncHTTP2Connection.is_idles���{�{�1�6�6�6�6rc�<�|jtjk(Sr�)r8r!r(r�s r�	is_closedzAsyncHTTP2Connection.is_closeds���{�{�1�8�8�8�8rc�|�t|j�}|�d|jj�d|j��S)Nz
, HTTP/2, �, Request Count: )�strr0r8�namer:r�s  r�infozAsyncHTTP2Connection.infosA���T�\�\�"���j�
�4�;�;�#3�#3�"4�5�"�1�1�2�
4�	
rc	��|jj}t|j�}d|�d|�d|jj
�d|j�d�	S)N�<z [z, r�z]>)�	__class__r#r�r0r8r�r:)rF�
class_namerGs   r�__repr__zAsyncHTTP2Connection.__repr__sZ���^�^�,�,�
��T�\�\�"���
�|�2�f�Z�r�$�+�+�*:�*:�);�<�"�1�1�2�"�
6�	
rc��K�|S�wr�r)r�s r�
__aenter__zAsyncHTTP2Connection.__aenter__&s������s�c��@K�|j��d{���y7��wr�)r_)rF�exc_type�	exc_value�	tracebacks    r�	__aexit__zAsyncHTTP2Connection.__aexit__)s�����k�k�m���s���r�)rGr	rHrrIzfloat | None)rr
�returnr)rr
r��None)rr
rNr�r�r�)rr
rNr�r��bytesr�r�)rr
rNr�r�z%tuple[int, list[tuple[bytes, bytes]]])rr
rNr�r��typing.AsyncIterator[bytes])rr
rNr�r�zKh2.events.ResponseReceived | h2.events.DataReceived | h2.events.StreamEnded)rr
rNz
int | Noner�r�)r�zh2.events.RemoteSettingsChangedr�r�)rNr�r�r��r�r�)rr
r�zlist[h2.events.Event])rr
rNr�r�r�)rGr	r��bool)r�r)r�r�)r�r+)NNN)r�ztype[BaseException] | Noner�zBaseException | Noner�ztypes.TracebackType | Noner�r�)"r#r$r%r�r3r/�H2Configurationr6rJrwr]rirjr�r�rkr�r�r�r�rnr_r�r�r�rYr�r�r�r�r�r�r�r�r)rrr+r+*s����N�
�Y�Y�
&�
&��
&�
F�F�*.�	%7��%7�#�%7�'�	%7�Nf�P1�B1�>
8�5��5�+.�5�6;�5�	
�5�1�&��&�+.�&�	.�&�,���+.��	$��$
��
�+.�
�	T�
� 9=�.1��.1�+5�.1�	
�.1�`+�4�+�	
�+�&
(�,��8�6�(&�	
�E�7�9�
�
��
04�*.�04�	�,��(��.�	�

�rr+c�4�eZdZ								dd�Zdd�Zdd�Zy)rmc�<�||_||_||_d|_y)NF)�_connection�_request�
_stream_id�_closed)rFr4rrNs    rrJz"HTTP2ConnectionByteStream.__init__3s!��&�����
�#�����rc��K�|j|jd�}	tdt|j|�4�d{���|jj|j|j��23d{���}|����7�D7�6ddd��d{���7y#1�d{���7swYyxYw#t$r@}t�5|j��d{���7ddd�|�#1swY|�xYwd}~wwxYw�w)NrM�receive_response_body)	rrrr\rr�r^rr_)rFrur�rrs    r�	__aiter__z#HTTP2ConnectionByteStream.__aiter__;s�����!�]�]����I��	��4�f�d�m�m�V�T�T�#'�#3�#3�#J�#J� �M�M�T�_�_�$K�$� �%� �K�	U�� ��$�U�T�T�T�T��
�	�)�*��k�k�m�#�#�+��I�+��I��
	�s��C:� B.�B�B.�2B�3B�7B�8B�;B�B.�B�B�B.�B�B.�C:�B+�B"� B+�'B.�*C:�+B.�.	C7�7
C2�C%�C�C%�
C2�%C/	�*C2�2C7�7C:c��LK�|jsyd|_d|ji}tdt|j|�4�d{���|j
j
|j���d{���ddd��d{���yy7�D7�7�
#1�d{���7swYyxYw�w)NTrNrXrR)rrrr\rrrn)rFrus  rr_z HTTP2ConnectionByteStream.acloseKs������|�|��D�L�!�4�?�?�3�F��.���
�
�v�N�N��&�&�7�7�$�/�/�7�R�R�R�O�N�N��O��R��O��N�N�N�sZ�AB$�B	�B$�*B�2B�3B�7B$�B
�B$�B�
B$�B!�B�B!�B$N)r4r+rr
rNr�r�r�)r�r�r�)r#r$r%rJr
r_r)rrrmrm2s2���.��9@��MP��	
��� Srrm)rr
r�r)&�
__future__r�enum�loggingr��typesr��	h2.configr3�
h2.connection�	h2.events�
h2.exceptions�h2.settings�_backends.baser�_exceptionsrrr�_modelsr	r
r�_synchronizationrr
r�_tracer�
interfacesr�	getLoggerr\r�IntEnumr!r+rmr)rr�<module>rs���"�����
������/���
0�/�Q�Q��0�	��	�	�+�	,����$�,�,��E�3�E�PS�Sr