Your IP : 13.58.53.112


Current Path : /opt/alt/python311/lib64/python3.11/asyncio/__pycache__/
Upload File :
Current File : //opt/alt/python311/lib64/python3.11/asyncio/__pycache__/tasks.cpython-311.opt-2.pyc

�

c��f�����	dZddlZddlZddlZddlZddlZddlZddlZddl	Z	ddlm
Z
ddlmZddlm
Z
ddlmZddlmZdd	lmZdd
l
mZejd��jZd,d�Zd,d�Zd
�ZGd�dej��ZeZ	ddlZejxZZn#e$rYnwxYwddd�d�ZejjZejj Z ejj!Z!de!d�d�Z"d�Z#d�Z$d�Z%d�Z&dd�d�Z'ej(d���Z)d,d�Z*dd�d�Z+dd�d�Z,ej(d���Z-ee-_Gd �d!ej.��Z/d"d#�d$�Z0d%�Z1d&�Z2e	j3��Z4iZ5d'�Z6d(�Z7d)�Z8d*�Z9e6Z:e9Z;e7Z<e8Z=	dd+lm6Z6m9Z9m7Z7m8Z8m4Z4m5Z5e6Z>e9Z?e7Z@e8ZAdS#e$rYdSwxYw)-)�Task�create_task�FIRST_COMPLETED�FIRST_EXCEPTION�
ALL_COMPLETED�wait�wait_for�as_completed�sleep�gather�shield�
ensure_future�run_coroutine_threadsafe�current_task�	all_tasks�_register_task�_unregister_task�_enter_task�_leave_task�N)�GenericAlias�)�
base_tasks)�
coroutines)�events)�
exceptions)�futures)�
_is_coroutinec�V�	|�tj��}tj|��S�N)r�get_running_loop�_current_tasks�get��loops �4/opt/alt/python311/lib64/python3.11/asyncio/tasks.pyrr#s)��+��|��&�(�(����d�#�#�#�c���	��tj���d}		tt��}n#t$r|dz
}|dkr�YnwxYw�3�fd�|D��S)NrTri�c�h��h|].}tj|���u�|����,|��/S�)r�	_get_loop�done)�.0�tr$s  �r%�	<setcomp>zall_tasks.<locals>.<setcomp>=sE���>�>�>�!�� ��#�#�t�+�+�A�F�F�H�H�+�
�+�+�+r&)rr �list�
_all_tasks�RuntimeError)r$�i�taskss`  r%rr*s����1��|��&�(�(��	
�A��	���$�$�E�
���	�	�	�
��F�A��D�y�y���y�	�����>�>�>�>�u�>�>�>�>s�1�A
�	A
c��|�B	|j}||��dS#t$r tjdtd���YdSwxYwdS)Nz~Task.set_name() was added in Python 3.8, the method support will be mandatory for third-party task implementations since 3.13.���
stacklevel)�set_name�AttributeError�warnings�warn�DeprecationWarning)�task�namer8s   r%�_set_task_namer?As�����	��}�H�
�H�T�N�N�N�N�N��
�	8�	8�	8��M�9�)�Q�
8�
8�
8�
8�
8�
8�
8�	8�����s��&A�Ac���eZdZ	dZdddd��fd�
Z�fd�Zee��Zd�Z	d�Z
d�Zd	�Zd
�Z
d�Zdd�d
�Zddd�d�Zdd�Zd�Zd�Zd�fd�	Zd�Z�xZS)rTN)r$r>�contextc���t���|���|jr|jd=tj|��sd|_t
d|�����|�dt����|_nt|��|_d|_
d|_d|_||_
|�tj��|_n||_|j�|j|j���t)|��dS)Nr#���Fza coroutine was expected, got zTask-r�rA)�super�__init__�_source_tracebackr�iscoroutine�_log_destroy_pending�	TypeError�_task_name_counter�_name�str�_num_cancels_requested�_must_cancel�_fut_waiter�_coro�contextvars�copy_context�_context�_loop�	call_soon�_Task__stepr)�self�coror$r>rA�	__class__s     �r%rFz
Task.__init__js���
�����d��#�#�#��!�	+��&�r�*��%�d�+�+�	G�).�D�%��E�T�E�E�F�F�F��<�7�!3�!5�!5�7�7�D�J�J��T���D�J�&'��#�!��������
��?�'�4�6�6�D�M�M�#�D�M��
���T�[�$�-��@�@�@��t�����r&c����|jtjkr7|jr0|dd�}|jr
|j|d<|j�|��t�����dS)Nz%Task was destroyed but it is pending!)r=�message�source_traceback)	�_stater�_PENDINGrIrGrU�call_exception_handlerrE�__del__)rXrArZs  �r%razTask.__del__�sy����;�'�*�*�*�t�/H�*��B���G��%�
E�.2�.D��*�+��J�-�-�g�6�6�6�
���������r&c�*�tj|��Sr)r�
_task_repr�rXs r%�__repr__z
Task.__repr__�s���$�T�*�*�*r&c��|jSr)rQrds r%�get_coroz
Task.get_coro��
���z�r&c��|jSr)rLrds r%�get_namez
Task.get_name�rhr&c�.�t|��|_dSr)rMrL)rX�values  r%r8z
Task.set_name�s����Z�Z��
�
�
r&c� �td���)Nz*Task does not support set_result operation�r1)rX�results  r%�
set_resultzTask.set_result�s���G�H�H�Hr&c� �td���)Nz-Task does not support set_exception operationrn)rX�	exceptions  r%�
set_exceptionzTask.set_exception�s���J�K�K�Kr&)�limitc�.�	tj||��Sr)r�_task_get_stack)rXrts  r%�	get_stackzTask.get_stack�s��	�(�)�$��6�6�6r&)rt�filec�0�	tj|||��Sr)r�_task_print_stack)rXrtrxs   r%�print_stackzTask.print_stack�s��	��+�D�%��>�>�>r&c���	d|_|���rdS|xjdz
c_|j�|j�|���rdSd|_||_dS)NFr��msgT)�_log_tracebackr+rNrP�cancelrO�_cancel_message)rXr~s  r%r�zTask.cancel�s}��	�*$����9�9�;�;�	��5��#�#�q�(�#�#���'���&�&�3�&�/�/�
��t� ���"����tr&c��	|jSr�rNrds r%�
cancellingzTask.cancelling�s��	�
�*�*r&c�H�	|jdkr|xjdzc_|jS)Nrrr�rds r%�uncancelz
Task.uncancel�s4��	��&��*�*��'�'�1�,�'�'��*�*r&c���|���rtjd|�d|�����|jr5t	|tj��s|���}d|_|j}d|_t|j
|��	|�|�d��}n|�|��}t|dd��}|��8tj|��|j
ur?t!d|�d|�d���}|j
�|j||j����n�|r�||ur;t!d	|����}|j
�|j||j����nnd|_|�|j|j���||_|jr'|j�|j�
��rd|_�nt!d|�d|����}|j
�|j||j����n�|�(|j
�|j|j����n�t3j|��r>t!d
|�d|����}|j
�|j||j����nUt!d|����}|j
�|j||j����n#t6$rf}|jr/d|_t9���|j�
��n&t9���|j��Yd}~n�d}~wtj$r1}||_t9�����Yd}~nqd}~wt@tBf$r'}t9���"|���d}~wtF$r+}t9���"|��Yd}~nd}~wwxYwtI|j
|��d}dS#tI|j
|��d}wxYw)Nz_step(): already done: z, F�_asyncio_future_blockingzTask z got Future z attached to a different looprDzTask cannot await on itself: r}z-yield was used instead of yield from in task z with z;yield was used instead of yield from for generator in task zTask got bad yield: )%r+r�InvalidStateErrorrO�
isinstance�CancelledError�_make_cancelled_errorrQrPrrU�send�throw�getattrrr*r1rVrWrTr��add_done_callback�
_Task__wakeupr�r��inspect�isgenerator�
StopIterationrErprl�_cancelled_exc�KeyboardInterrupt�
SystemExitrs�
BaseExceptionr)rX�excrYro�blocking�new_excrZs      �r%�__stepzTask.__steps�����9�9�;�;�	=��.�;�$�;�;�C�;�;�=�=�
=���	&��c�:�#<�=�=�
3��0�0�2�2�� %�D���z������D�J��%�%�%�H	��{����4��������C����$�v�'A�4�H�H�H��#��$�V�,�,�D�J�>�>�*�C��C�C�!�C�C�C�D�D�G��J�(�(���W�d�m�)�E�E�E�E��E���~�~�".�D�D�D�D�#F�#F���
�,�,� �K��$�-�-�I�I�I�I�;@��7��0�0� �M�4�=�1�B�B�B�+1��(��,�:�#�/�6�6�(,�(<� 7� >� >�:�49�� 1��*�<�#'�<�<�17�<�<�=�=�G��J�(�(���W�d�m�)�E�E�E�E����
�$�$�T�[�$�-�$�H�H�H�H��$�V�,�,�
A�&�B�)-�B�B�7=�B�B�C�C���
�$�$��K��$�-�%�A�A�A�A�'�'H�f�'H�'H�I�I���
�$�$��K��$�-�%�A�A�A�A��{�	.�	.�	.�� �
.�$)��!������4�#7��8�8�8�8����"�"�3�9�-�-�-�����������(�	�	�	�"%�D���G�G�N�N�������������!�:�.�	�	�	��G�G�!�!�#�&�&�&�������	'�	'�	'��G�G�!�!�#�&�&�&�&�&�&�&�&�����	'����d
��
�D�)�)�)��D�D�D��
��
�D�)�)�)��D�K�K�K�Ksb�-K�=HO3�
O�
AL+�&O3�+O�='M)�$O3�)O�="N�
O�,!O�
O3�O�O3�3Pc��	|���|���n,#t$r}|�|��Yd}~nd}~wwxYwd}dSr)rorWr�)rX�futurer�s   r%�__wakeupz
Task.__wakeup[sr��	��M�M�O�O�O�
�K�K�M�M�M�M���	�	�	��K�K��������������	�������s�+�
A�A�Ar)�__name__�
__module__�__qualname__rIrFra�classmethodr�__class_getitem__rergrjr8rprsrwr{r�r�r�rWr��
__classcell__�rZs@r%rrNs��������+�. ��%)��d��������6	�	�	�	�	�$��L�1�1��+�+�+������� � � �I�I�I�L�L�L�"&�7�7�7�7�7�.$(�d�	?�	?�	?�	?�	?�(�(�(�(�T+�+�+�
+�
+�
+�U�U�U�U�U�U�n������r&r)r>rAc��	tj��}|�|�|��}n|�||���}t||��|S)NrD)rr rr?)rYr>rAr$r=s     r%rrxs^����"�$�$�D�������%�%�������g��6�6���4������Kr&)�timeout�return_whenc���K�	tj|��stj|��r$t	dt|��j�����|std���|tttfvrtd|�����t|��}td�|D����rt	d���tj��}t||||���d{V��S)Nzexpect a list of futures, not zSet of Tasks/Futures is empty.zInvalid return_when value: c3�>K�|]}tj|��V��dSr)rrH)r,�fs  r%�	<genexpr>zwait.<locals>.<genexpr>�s-����
1�
1��:�!�!�$�$�
1�
1�
1�
1�
1�
1r&z6Passing coroutines is forbidden, use tasks explicitly.)r�isfuturerrHrJ�typer��
ValueErrorrrr�set�anyrr �_wait)�fsr�r�r$s    r%rr�s����������N�z�5�b�9�9�N��L��b���9J�L�L�M�M�M�
�;��9�:�:�:��?�O�]�K�K�K��D�{�D�D�E�E�E�	�R���B�
�
1�
1�b�
1�
1�
1�1�1�R��P�Q�Q�Q��"�$�$�D��r�7�K��6�6�6�6�6�6�6�6�6r&c�\�|���s|�d��dSdSr)r+rp)�waiter�argss  r%�_release_waiterr��s6���;�;�=�=� ����$������ � r&c��
K�	tj��}|�|�d{V��S|dkr�t||���}|���r|���St||����d{V��	|���S#tj$r}t
j��|�d}~wwxYw|�	��}|�
|t|��}tj
t|��}t||���}|�|��		|�d{V��n~#tj$rl|���r*|���cY|���S|�|��t||����d{V���wxYw|���r(|���|���S|�|��t||����d{V��	|���|���S#tj$r}t
j��|�d}~wwxYw#|���wxYw)Nrr#)rr r
r+ro�_cancel_and_waitrr��TimeoutError�
create_future�
call_laterr��	functools�partialr�r��remove_done_callback)�futr�r$r�r��timeout_handle�cbs       r%rr�s�������"�$�$�D����y�y�y�y�y�y���!�|�|��C�d�+�+�+���8�8�:�:�	 ��:�:�<�<���s��.�.�.�.�.�.�.�.�.�.�	5��:�:�<�<����(�	5�	5�	5��)�+�+��4�����	5�����
�
�
!�
!�F��_�_�W�o�v�F�F�N�	�	�?�F�	3�	3�B�
��$�
'�
'�
'�C����"���� �	��L�L�L�L�L�L�L�L���(�		�		�		��x�x�z�z�
��z�z�|�|�#�#�2	�������/�(�(��,�,�,�'�s��6�6�6�6�6�6�6�6�6�6��		�����8�8�:�:�	9��:�:�<�<�	�������
�$�$�R�(�(�(�#�3�T�2�2�2�2�2�2�2�2�2�2�
9��z�z�|�|�	���������,�
9�
9�
9� �-�/�/�S�8�����
9�����	���������sf�8B�B4�B/�/B4�)D2�1I,�27F-�)I,�?.F-�-*I,�,,I,�I�I)�I$�$I)�)I,�,Jc�����	�
K�	|����
d�	|�|�|t�
���	t|������	�
fd�}|D]}|�|���	�
�d{V���	��	���|D]}|�|���n5#�	��	���|D]}|�|���wxYwt��t��}}|D]A}|���r|�	|���,|�	|���B||fS)Nc�(���dz��dks>�tks3�tkri|���sW|����E����������s��d��dSdSdSdSdS)Nrr)rr�	cancelledrrr�r+rp)r��counterr�r�r�s ����r%�_on_completionz_wait.<locals>._on_completions�����1����q�L�L��?�*�*��?�*�*�A�K�K�M�M�*�01���
�
�0I��)��%�%�'�'�'��;�;�=�=�
(��!�!�$�'�'�'�'�'�
+�*�*�*�0I�0I�
(�
(r&)
r�r�r��lenr�r�r�r�r+�add)r�r�r�r$r�r�r+�pendingr�r�r�s  `     @@@r%r�r��s����������
�
�
�
!�
!�F��N�������/�6�J�J���"�g�g�G�
(�
(�
(�
(�
(�
(�
(�
(��,�,��	���N�+�+�+�+�3����������%��!�!�#�#�#��	3�	3�A�
�"�"�>�2�2�2�2�	3���%��!�!�#�#�#��	3�	3�A�
�"�"�>�2�2�2�2�	3�����E�E�3�5�5�'�D�
�����6�6�8�8�	��H�H�Q�K�K�K�K��K�K��N�N�N�N���=�s�.B'�'2Cc��*K�	|���}tjt|��}|�|��	|���|�d{V��|�|��dS#|�|��wxYwr)r�r�r�r�r�r�r�)r�r$r�r�s    r%r�r�'s�����F�
�
�
�
!�
!�F�	�	�?�F�	3�	3�B����"����%��
�
������������� � ��$�$�$�$�$��� � ��$�$�$�$���s�A;�;B)r�c#����	�
�K�	tj|��stj|��r$t	dt|��j�����ddlm}|���tj
���	�	fd�t|��D���d�
���fd�}��
�fd���fd�}�D]}|������r|��	�
||���
tt�����D]}|��V��dS)Nz#expect an iterable of futures, not r)�Queuec�2��h|]}t|������S)r#)r
)r,r�r$s  �r%r.zas_completed.<locals>.<setcomp>Qs&���9�9�9�A�M�!�$�'�'�'�9�9�9r&c����D],}|������d���-����dSr)r��
put_nowait�clear)r�r�r+�todos ���r%�_on_timeoutz!as_completed.<locals>._on_timeoutTsL����	"�	"�A�
�"�"�>�2�2�2��O�O�D�!�!�!�!��
�
�����r&c����sdS��|����|���s������dSdSdSr)�remover�r�)r�r+r�r�s ���r%r�z$as_completed.<locals>._on_completionZsf����	��F����A������������	$��2��!�!�#�#�#�#�#�	$�	$�2�2r&c���K������d{V��}|�tj�|���Sr)r"rr�ro)r�r+s �r%�
_wait_for_onez#as_completed.<locals>._wait_for_onebsB������(�(�*�*���������9��)�)��x�x�z�z�r&)rr�rrHrJr�r��queuesr�r�_get_event_loopr�r�r��ranger�)r�r�r�r�r�r��_r�r+r$r�r�s       @@@@@r%r	r	8s�����������"�����S�z�5�b�9�9�S��Q�d�2�h�h�>O�Q�Q�R�R�R��������5�7�7�D��!�#�#�D�9�9�9�9��R���9�9�9�D��N��������$�$�$�$�$�$�$�������,�,��	���N�+�+�+�+��?��#�����+�>�>��
�3�t�9�9�
�
�����m�o�o������r&c#�K�	dV�dSrr)r)r&r%�__sleep0r�qs�����
�E�E�E�E�Er&c��@K�	|dkrt���d{V��|Stj��}|���}|�|t
j||��}	|�d{V��	|���S#|���wxYw)Nr)r�rr r�r�r�_set_result_unless_cancelledr�)�delayror$r��hs     r%r
r
}s�����C���z�z��j�j���������
��"�$�$�D�
�
�
�
!�
!�F������<���	(�	(�A���|�|�|�|�|�|��	���
�
�
�
�����
�
�
�
���s�*B�Br#c�&�	t||���S�Nr#)�_ensure_future)�coro_or_futurer$s  r%r
r
�s����.�t�4�4�4�4r&c��tj|��r)|�%|tj|��urtd���|Sd}t	j|��s5t
j|��rt|��}d}ntd���|�tjd���}	|�|��S#t$r|s|����wxYw)NzRThe future belongs to a different loop than the one specified as the loop argumentFTz:An asyncio.Future, a coroutine or an awaitable is required�r6)rr�r*r�rrHr��isawaitable�_wrap_awaitablerJrr�rr1�close)r�r$�called_wrap_awaitables   r%r�r��s�����'�'�����G�,=�n�,M�,M� M� M��E�F�F�
F���!���!�.�1�1�+���~�.�.�	+�,�^�<�<�N�$(�!�!��*�+�+�
+��|��%��3�3�3�������/�/�/������$�	#�� � �"�"�"�
����s�!B6�6"Cc#�<K�	|���Ed{V��Sr)�	__await__)�	awaitables r%r�r��s1�����
!�*�*�,�,�,�,�,�,�,�,�-r&c�(��eZdZ	�fd�Zdd�Z�xZS)�_GatheringFuturec�h��t���|���||_d|_dS)Nr#F)rErF�	_children�_cancel_requested)rX�childrenr$rZs   �r%rFz_GatheringFuture.__init__�s3���
�����d��#�#�#�!���!&����r&Nc��|���rdSd}|jD]}|�|���rd}�|rd|_|S)NFr}T)r+r�r�r�)rXr~�ret�childs    r%r�z_GatheringFuture.cancel�s`���9�9�;�;�	��5����^�	�	�E��|�|��|�$�$�
�����	*�&*�D�"��
r&r)r�r�r�rFr�r�r�s@r%r�r��sQ��������'�'�'�'�'��������r&r�F)�return_exceptionsc������	�
�	|s>tj��}|����
�
�g���
S���	�
�fd�}i}g�d�	d�d}d�
|D]u}||vrRt	||���}|�tj|��}||urd|_�	dz
�	|||<|�|��n||}��	|���vt�|����
�
S)Nc����dz
�������r*|���s|���dS�sl|���r+|���}��|��dS|���}|���|��dS��kr�g}�D]x}|���r#tj|j�dn|j��}n*|���}|�|���}|�	|���y�j
r+|���}��|��dS��|��dSdS)Nr�)r+r�rrr�rsrr�r�ro�appendr�rp)	r�r��results�resr��	nfinished�nfuts�outerr�s	    �����r%�_done_callbackzgather.<locals>._done_callback�s�����Q��	��=�E�J�J�L�L�=��=�=�?�?�
 ��
�
�����F� �	��}�}���
��/�/�1�1���#�#�C�(�(�(����m�m�o�o���?��'�'��,�,�,��F������G��
$�
$���=�=�?�?�
+�%�3�!�1�9����+�-�-�C�C��-�-�/�/�C��{�!�j�j�l�l�����s�#�#�#�#��&�
*��/�/�1�1���#�#�C�(�(�(�(�(�� � ��)�)�)�)�)�;�r&rr#Fr)rr�r�rpr�rr*rIr�r�r�)r��coros_or_futuresr$r�
arg_to_fut�argr�r�rrrs`      @@@@r%rr�sP��������:���%�'�'���"�"�$�$��
���������5*�5*�5*�5*�5*�5*�5*�5*�5*�n�J��H�
�E��I��D��E������j� � � ��4�0�0�0�C��|��(��-�-���#�~�~�
,1��(��Q�J�E�!�J�s�O��!�!�.�1�1�1�1��S�/�C����������X�D�1�1�1�E��Lr&c�����	t|�������r�Stj���}|�����fd����fd�}�������|���S)Nc�������r*|���s|���dS|���r����dS|���}|���|��dS��|�����dSr)r�rrr�rsrpro)�innerr�rs  �r%�_inner_done_callbackz$shield.<locals>._inner_done_callback{s�����?�?���	��?�?�$�$�
"����!�!�!��F��?�?���	1��L�L�N�N�N�N�N��/�/�#�#�C����#�#�C�(�(�(�(�(�� � ������0�0�0�0�0r&c�^������s�����dSdSr)r+r�)rr
r	s ��r%�_outer_done_callbackz$shield.<locals>._outer_done_callback�s8����z�z�|�|�	=��&�&�';�<�<�<�<�<�	=�	=r&)r�r+rr*r�r�)rr$rr
r	rs   @@@r%rrSs�������@
�3���E��z�z�|�|������U�#�#�D���� � �E�1�1�1�1�1�"=�=�=�=�=�=�
���0�1�1�1�	���0�1�1�1��Lr&c������	tj���std���tj�������fd�}��|���S)NzA coroutine object is requiredc����	tjt��������dS#ttf$r�t
$r/}����r��|���d}~wwxYwr�)r�
_chain_futurer
r�r�r��set_running_or_notify_cancelrs)r�rYr�r$s ���r%�callbackz*run_coroutine_threadsafe.<locals>.callback�s����	��!�-��4�"@�"@�"@�&�I�I�I�I�I���-�.�	�	�	���	�	�	��2�2�4�4�
*��$�$�S�)�)�)������	���s�$)�A3�*A.�.A3)rrHrJ�
concurrentr�Future�call_soon_threadsafe)rYr$rr�s`` @r%rr�s��������!�$�'�'�:��8�9�9�9�
�
�
&�
&�
(�
(�F��������	���h�'�'�'��Mr&c�0�	tj|��dSr)r0r��r=s r%rr�s��=��N�4�����r&c�r�tj|��}|�td|�d|�d����|t|<dS)NzCannot enter into task z while another task z is being executed.�r!r"r1�r$r=rs   r%rr�sf��!�%�d�+�+�L����G�T�G�G�#/�G�G�G�H�H�	H��N�4���r&c�r�tj|��}||urtd|�d|�d����t|=dS)Nz
Leaving task z! does not match the current task �.rrs   r%rr�si��!�%�d�+�+�L��4����A�4�A�A�/;�A�A�A�B�B�	B��t���r&c�0�	tj|��dSr)r0�discardrs r%rr�s�����t�����r&)rrrrr0r!r)B�__all__�concurrent.futuresrrRr�r��	itertools�typesr:�weakrefrr�rrrrrr�count�__next__rKrrr?�	_PyFuturer�_PyTask�_asyncio�_CTask�ImportErrorrrrrrr�rr�r�r	�	coroutiner�r
r
r�r�rr�rrr�WeakSetr0r!rrrr�_py_register_task�_py_unregister_task�_py_enter_task�_py_leave_task�_c_register_task�_c_unregister_task�
_c_enter_task�
_c_leave_taskr)r&r%�<module>r4sv��6�����������������������������������������������������������������������%�%�%�%�%�%�
%�Y�_�Q�'�'�0��$�$�$�$�>�>�>�>�.
�
�
�[�[�[�[�[�7��[�[�[�|��"��O�O�O�
�M�!�D�6�6��	�	�	�	��D�	����#�D�
�
�
�
�
�$�$�4���$�4���"�0�
�#�
�7�7�7�7�7�@ � � �
D �D �D �N)�)�)�X
%�
%�
%�"!%�6�6�6�6�6�r��
�
���
�����"+/�5�5�5�5�5�,0������2��.�.���.�!.��������w�~����:16�x�x�x�x�x�v?�?�?�D���0�W�_�
�
�
������
 � � �������
#��&������
 �6�6�6�6�6�6�6�6�6�6�6�6�6�6�6�6�&��)���M��M�M�M��
�	�	�	��D�D�	���s$�B�B�B�E7�7F�?F

?>