§
    �Štj@@  ã            $       ó¦  — d dl mZ d dlZd dlmZ ddlmZmZmZmZm	Z	m
Z
mZmZmZmZmZmZmZmZmZ ddgZ G d„ de¦  «        Zd	e› d
e	› de› de› de› d�e_        dee         dee         dee         dee         dee         dee         dedededededededededdf d„Zdee         dee         dee         dee         dee         dee         dedededededededededdf d„Z ee¬¦  «        	 	 	 	 	 d#dee         dee         dee         dee         dee         dee         d!edz  dedededededededededdf"d"„¦   «         ZdS )$é    )ÚcastN)ÚTensoré   )Ú_capturable_docÚ_default_to_fused_or_foreachÚ_differentiable_docÚ_disable_dynamo_if_unsupportedÚ_foreach_docÚ!_get_capturable_supported_devicesÚ_get_scalar_dtypeÚ
_get_valueÚ_maximize_docÚ_params_docÚ
_to_scalarÚ_use_grad_for_differentiableÚ_view_as_realÚ	OptimizerÚParamsTÚASGDÚasgdc                   ó”   ‡ — e Zd Z	 	 	 	 	 	 	 	 	 dded	eez  d
edededededz  dedededdfˆ fd„Zˆ fd„Zd„ Z	e
dd„¦   «         Zˆ xZS )r   ç{®Gáz„?ç-Cëâ6?ç      è?ç    €„.Ar   NFÚparamsÚlrÚlambdÚalphaÚt0Úweight_decayÚforeachÚmaximizeÚdifferentiableÚ
capturableÚreturnc           
      ó<  •— t          |t          ¦  «        r'|                     ¦   «         dk    rt          d¦  «        ‚d|k    st          d|› �¦  «        ‚d|k    st          d|› �¦  «        ‚||||||||	|
dœ	}t	          ¦   «                              ||¦  «         d S )Nr   zTensor lr must be 1-elementg        zInvalid learning rate: zInvalid weight_decay value: )	r   r   r   r    r!   r"   r#   r$   r%   )Ú
isinstancer   ÚnumelÚ
ValueErrorÚsuperÚ__init__)Úselfr   r   r   r   r    r!   r"   r#   r$   r%   ÚdefaultsÚ	__class__s               €úN/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/torch/optim/asgd.pyr,   zASGD.__init__   sÃ   ø€ õ �b�&Ñ!Ô!ð 	< b§h¢h¡j¤j°A¢o oÝÐ:Ñ;Ô;Ð;Ø�bŠyˆyÝÐ;°rÐ;Ð;Ñ<Ô<Ð<Ø�lÒ"Ð"ÝÐJ¸LÐJÐJÑKÔKÐKð ØØØØ(ØØ Ø,Ø$ð

ð 

ˆõ 	‰Œ×Ò˜ Ñ*Ô*Ð*Ð*Ð*ó    c                 óh  •— t          ¦   «                              |¦  «         | j        D �]†}|                     dd ¦  «         |                     dd¦  «         |                     dd¦  «         |                     dd¦  «         |d         D �]!}| j                             |g ¦  «        }t          |¦  «        dk    rðt          j        |d         ¦  «        s@t          |d         ¦  «        }t          j
        |t          ¦   «         |j        ¬	¦  «        |d<   t          j        |d
         ¦  «        s1t          j
        |d
         t          ¦   «         |j        ¬	¦  «        |d
<   t          j        |d         ¦  «        s1t          j
        |d         t          ¦   «         |j        ¬	¦  «        |d<   �Œ#�Œˆd S )Nr"   r#   Fr$   r%   r   r   Ústep)ÚdtypeÚdeviceÚetaÚmu)r+   Ú__setstate__Úparam_groupsÚ
setdefaultÚstateÚgetÚlenÚtorchÚ	is_tensorÚfloatÚtensorr   r5   )r-   r;   ÚgroupÚpÚp_stateÚstep_valr/   s         €r0   r8   zASGD.__setstate__?   s¬  ø€ Ý‰Œ×Ò˜UÑ#Ô#Ð#ØÔ&ð 	ñ 	ˆEØ×Ò˜Y¨Ñ-Ô-Ð-Ø×Ò˜Z¨Ñ/Ô/Ð/Ø×ÒÐ-¨uÑ5Ô5Ð5Ø×Ò˜\¨5Ñ1Ô1Ð1Ø˜8”_ð ñ �Øœ*Ÿ.š.¨¨BÑ/Ô/�Ý�w‘<”< 1Ò$Ð$Ý œ?¨7°6¬?Ñ;Ô;ð Ý#(¨°¬Ñ#9Ô#9˜Ý*/¬,Ø$Õ,=Ñ,?Ô,?ÈÌð+ñ +ô +˜ ™õ !œ?¨7°5¬>Ñ:Ô:ð Ý).¬Ø# EœNÕ2CÑ2EÔ2EÈaÌhð*ñ *ô *˜ ™õ !œ?¨7°4¬=Ñ9Ô9ð Ý(-¬Ø# DœMÕ1BÑ1DÔ1DÈQÌXð)ñ )ô )˜ ™ùñð	ð 	r1   c                 óÄ  — d}|d         D �]Ó}	|	j         ��È|t          j        |	¦  «        z  }|                     |	¦  «         |	j         j        rt          d¦  «        ‚|                     |	j         ¦  «         | j        |	         }
t          |
¦  «        dk    rÛt          j        d|	j	        t          ¦   «         ¬¦  «        |
d<   t          j        t          |d         ¦  «        |	j	        t          ¦   «         ¬¦  «                             ¦   «                              ¦   «         |
d	<   t          j        d|	j	        t          ¦   «         ¬¦  «        |
d
<   t          j        |	t          j        ¬¦  «        |
d<   |                     |
d
         ¦  «         |                     |
d         ¦  «         |                     |
d	         ¦  «         |                     |
d         ¦  «         �ŒÕ|S )NFr   z&ASGD does not support sparse gradientsr   © )r5   r4   r3   r   r6   r7   )Úmemory_formatÚax)Úgradr>   Ú
is_complexÚappendÚ	is_sparseÚRuntimeErrorr;   r=   Úzerosr5   r   Ú	as_tensorr   ÚcloneÚdetachÚonesÚ
zeros_likeÚpreserve_format)r-   rB   Úparams_with_gradÚgradsÚmusÚaxsÚetasÚstate_stepsÚhas_complexrC   r;   s              r0   Ú_init_groupzASGD._init_groupW   sÄ  € ØˆØ�x”ð !	2ñ !	2ˆAØŒvÑ!Ø�uÔ/°Ñ2Ô2Ñ2�Ø ×'Ò'¨Ñ*Ô*Ð*Ø”6Ô#ð QÝ&Ð'OÑPÔPÐPØ—’˜QœVÑ$Ô$Ð$àœ
 1œ�å�u‘:”: ’?�?Ý$)¤KØ 1¤8Õ3DÑ3FÔ3Fð%ñ %ô %�E˜&‘Mõ œÝ& u¨T¤{Ñ3Ô3Ø#$¤8Ý"3Ñ"5Ô"5ðñ ô ÷
 š™œßš™œð ˜%‘Lõ #(¤*Ø 1¤8Õ3DÑ3FÔ3Fð#ñ #ô #�E˜$‘Kõ #(Ô"2Ø­Ô)>ð#ñ #ô #�E˜$‘Kð —
’
˜5 œ;Ñ'Ô'Ð'Ø—
’
˜5 œ;Ñ'Ô'Ð'Ø—’˜E %œLÑ)Ô)Ð)Ø×"Ò" 5¨¤=Ñ1Ô1Ð1ùØÐr1   c                 ó¬  — |                       ¦   «          d}|�5t          j        ¦   «         5   |¦   «         }ddd¦  «         n# 1 swxY w Y   | j        D ]~}g }g }g }g }g }g }	|                      |||||||	¦  «        }
t          ||||||	|d         |d         |d         |d         |d         |d         |d         |d	         |d
         |
¬¦  «         Œ|S )z°Perform a single optimization step.

        Args:
            closure (Callable, optional): A closure that reevaluates the model
                and returns the loss.
        Nr   r   r    r   r!   r"   r#   r$   r%   )
r   r   r    r   r!   r"   r#   r$   r%   r\   )Ú'_accelerator_graph_capture_health_checkr>   Úenable_gradr9   r]   r   )r-   ÚclosureÚlossrB   rV   rW   rX   rY   rZ   r[   r\   s              r0   r3   z	ASGD.step}   sg  € ð 	×4Ò4Ñ6Ô6Ð6àˆØÐÝÔ"Ñ$Ô$ð !ð !Ø�w‘y”y�ð!ð !ð !ñ !ô !ð !ð !ð !ð !ð !ð !øøøð !ð !ð !ð !ð Ô&ð 	ð 	ˆEØ-/ÐØ"$ˆEØ "ˆCØ "ˆCØ!#ˆDØ(*ˆKà×*Ò*ØÐ'¨°°S¸$Àñô ˆKõ Ø ØØØØØØ˜G”nØ˜”;Ø˜”;Ø˜G”nØ" >Ô2Ø˜iÔ(Ø˜zÔ*Ø$Ð%5Ô6Ø  Ô.Ø'ð!ñ ô ð ð ð& ˆs   ¬AÁAÁ
A)	r   r   r   r   r   NFFF©N)Ú__name__Ú
__module__Ú__qualname__r   r@   r   Úboolr,   r8   r]   r   r3   Ú__classcell__)r/   s   @r0   r   r      s  ø€ € € € € ð "ØØØØØ#ØØ$Ø ð+ð +àð+ð �F‰Nð+ð ð	+ð
 ð+ð ð+ð ð+ð ˜‘ð+ð ð+ð ð+ð ð+ð 
ð+ð +ð +ð +ð +ð +ðBð ð ð ð ð0$ð $ð $ðL "ð-ð -ð -ñ "Ô!ð-ð -ð -ð -ð -r1   zŸImplements Averaged Stochastic Gradient Descent.

    It has been proposed in `Acceleration of stochastic approximation by
    averaging`_.

    Args:
        am  
        lr (float, Tensor, optional): learning rate (default: 1e-2)
        lambd (float, optional): decay term (default: 1e-4)
        alpha (float, optional): power for eta update (default: 0.75)
        t0 (float, optional): point at which to start averaging (default: 1e6)
        weight_decay (float, optional): weight decay (L2 penalty) (default: 0)
        z	
        z¿

    .. _Acceleration of stochastic approximation by averaging:
        https://meyn.ece.ufl.edu/wp-content/uploads/sites/77/archive/spm_files/Courses/ECE555-2011/555media/poljud92.pdf

    r   rW   rY   rX   rZ   r[   r   r   r    r   r!   r#   r$   r%   r\   r&   c       	   
      óŠ  — t           j                             ¦   «         st          |¦  «        }t	          | ¦  «        D �]\  }}||         }|s|n| }||         }||         }||         }||         }t           j                             ¦   «         sp|rnt          ¦   «         }|j        j	        |j        j	        cxk    r!|j        j	        cxk    r|j        j	        k    rn n|j        j	        |v st          d|› d�¦  «        ‚t          j        |¦  «        r<t          j        |¦  «        }t          j        |¦  «        }t          j        |¦  «        }|dz  }|
dk    r|                     ||
¬¦  «        }|r4|                     d||z  z
  ¦  «         |                     ||d¬¦  «         nBt!          |¦  «        }|                     d||z  z
  ¦  «         |                     || ¬¦  «         |s|                     ¦   «         dk    r<|                     |                     |¦  «                             |¦  «        ¦  «         n|                     |¦  «         |rf|                     |d||z  |z  z   |	z  z  ¦  «         |                     dt          j        ||z
  t          j        |¦  «        ¦  «        z  ¦  «         �Œ€t!          |¦  «        }t          j        |d||z  |z  z   |	z  z  ¦  «        }|                     |¦  «         t          j        dt1          d||z
  ¦  «        z  ¦  «        }|                     |¦  «         �Œd S )NúUIf capturable=True, params, mus, etas, and state_steps must be on supported devices: ú.r   r   ©r   éÿÿÿÿ©Úvalue)r>   ÚjitÚis_scriptingr   Ú	enumerateÚcompilerÚis_compilingr   r5   ÚtypeÚAssertionErrorrK   Úview_as_realÚaddÚmul_Úaddcmul_r   Úadd_ÚitemÚsubÚcopy_ÚmaximumÚ	ones_likerP   Úmax)r   rW   rY   rX   rZ   r[   r   r   r    r   r!   r#   r$   r%   r\   ÚiÚparamrJ   r7   rI   r6   Ústep_tÚcapturable_supported_devicesÚ	eta_valuer3   Únew_etaÚnew_mus                              r0   Ú_single_tensor_asgdr‰   Å   sy  € õ$ Œ9×!Ò!Ñ#Ô#ð Ý˜‰^Œ^ˆå˜fÑ%Ô%ð 8ñ 8‰ˆˆ5Ø�QŒxˆØ#Ð.ˆtˆt¨$¨ˆØ�ŒVˆØ�ŒVˆØ�1ŒgˆØ˜Q”ˆõ Œ~×*Ò*Ñ,Ô,ð 	°ð 	Ý+LÑ+NÔ+NÐ(à”Ô!Ø”9”>ð&ð &ò &ð &à”:”?ð&ð &ò &ð &ð ”=Ô%ò&ð &ð &ð &ð &ð ”LÔ%Ð)EÐEÐEå$ðMØ-IðMð Mð Mñô ð õ
 Ô˜EÑ"Ô"ð 	(ÝÔ% dÑ+Ô+ˆDÝÔ& uÑ-Ô-ˆEÝÔ# BÑ'Ô'ˆBð 	�!‰ˆà˜1ÒÐØ—8’8˜E¨�8Ñ6Ô6ˆDàð 	/Ø�JŠJ�q˜5 3™;‘Ñ'Ô'Ð'Ø�NŠN˜4 ¨BˆNÑ/Ô/Ð/Ð/å" 3™œˆIØ�JŠJ�q˜5 9Ñ,Ñ,Ñ-Ô-Ð-Ø�JŠJ�t I :ˆJÑ.Ô.Ð.ð ð 	˜Ÿš™œ aš˜Ø�GŠG�E—I’I˜b‘M”M×&Ò& rÑ*Ô*Ñ+Ô+Ð+Ð+à�HŠH�U‰OŒOˆOàð 	Ø�IŠI�b˜Q ¨¡¨fÑ!4Ñ4¸Ñ>Ñ?Ñ@Ô@Ð@Ø�HŠH�Q�œ v°¡{µE´OÀFÑ4KÔ4KÑLÔLÑLÑMÔMÐMÑMå˜fÑ%Ô%ˆDÝ”o b¨Q°¸±¸dÑ1BÑ-BÀuÑ,LÑ&MÑNÔNˆGØ�IŠI�gÑÔÐÝ”_ Q­¨Q°°r±	Ñ):Ô):Ñ%:Ñ;Ô;ˆFØ�HŠH�VÑÔÐÑðq8ð 8r1   c       	   
      óN  ‡‡‡‡	‡ ‡!— t          | ¦  «        dk    rd S |rt          d¦  «        ‚t          j                             ¦   «         sR|rPt          d¬¦  «        Š t          ˆ fd„t          | |||d¬¦  «        D ¦   «         ¦  «        st          d‰ › d	�¦  «        ‚t          ‰¦  «        Št          j
        | |||||g¦  «        }|                     ¦   «         D �]I\  \  Š!}\  \  }}}}}}}t          t          t                   |¦  «        }t          t          t                   |¦  «        }t          t          t                   |¦  «        }t          t          t                   |¦  «        }t          t          t                   |¦  «        }t          t          t                   |¦  «        }|rt          |||¦  «         |rt          j        |¦  «        }t          j                             ¦   «         s9|d         j        r,t          j        |t          j        d
d¬¦  «        d
¬¦  «         nt          j        |d¦  «         |
dk    rK|rt          j        |||
¬¦  «         |}nt          j        |||
¬¦  «        }t          j        ||‰¬¦  «         nt          j        ||‰¬¦  «        }t          j        |||d¬¦  «         ~t          j        ||¦  «        }t          j        |||¦  «         ~|rèt          j        |‰¦  «        }t          j        |d
¦  «         t          j        |¦  «         t          j        ||¦  «         ~t          j        |‰¦  «        }t          j        |‰¦  «         t          j        |d¦  «         t          j        |‰	¦  «         t          j        |¦  «         t          j        |‰¦  «         t          j        ||¦  «         �Œÿˆ	ˆ!ˆˆfd„|D ¦   «         }ˆ!ˆfd„|D ¦   «         }t          j        ||¦  «         t          j        ||¦  «         �ŒKd S )Nr   z#_foreach ops don't support autogradF)Úsupports_xlac              3   ó¼   •K  — | ]V\  }}}}|j         j        |j         j        cxk    o |j         j        cxk    o|j         j        k    nc o|j         j        ‰v V — ŒWd S rc   )r5   ru   )Ú.0rC   r7   r6   r3   r…   s        €r0   ú	<genexpr>z%_multi_tensor_asgd.<locals>.<genexpr>2  sŽ   øè è € ð 
ð 
ñ !��2�s˜Dð ŒHŒM˜RœYœ^ÐRÐRÒRÐR¨s¬z¬ÐRÐRÒRÐRÀ$Ä+ÔBRÒRÐRÐRÐRð >Ø””Ð!=Ð=ð
ð 
ð 
ð 
ð 
ð 
r1   T)Ústrictrj   rk   g      ð?Úcpu©r5   rl   r   rm   rn   c                 óZ   •— g | ]'}t          j        ‰d ‰‰z  |z  z   ‰z  z  ‰¬¦  «        ‘Œ(S ©r   r‘   )r>   rP   )r�   r3   r   r5   r   r   s     €€€€r0   ú
<listcomp>z&_multi_tensor_asgd.<locals>.<listcomp>›  sQ   ø€ ð ð ð àõ ”  q¨5°2©:¸Ñ+<Ñ'<ÀÑ&FÑ GÐPVÐWÑWÔWðð ð r1   c                 ó~   •— g | ]9}t          j        d t          d t          |¦  «        ‰z
  ¦  «        z  ‰¬¦  «        ‘Œ:S r“   )r>   rP   r�   r   )r�   r3   r5   r    s     €€r0   r”   z&_multi_tensor_asgd.<locals>.<listcomp>Ÿ  sT   ø€ ð ð ð àõ ” ¥C¨­:°dÑ+;Ô+;¸bÑ+@Ñ$AÔ$AÑ AÈ&ÐQÑQÔQðð ð r1   )r=   rv   r>   rs   rt   r   ÚallÚzipr   r   Ú"_group_tensors_by_device_and_dtypeÚitemsr   Úlistr   r   Ú_foreach_negÚis_cpuÚ_foreach_add_rA   Ú_foreach_addÚ_foreach_addcmul_Ú_foreach_subÚ_foreach_maximum_Ú_foreach_reciprocal_Ú_foreach_copy_Ú_foreach_mulÚ_foreach_mul_Ú_foreach_pow_)"r   rW   rY   rX   rZ   r[   r   r   r    r   r!   r#   r$   r%   r\   Úgrouped_tensorsÚ_Úgrouped_params_Úgrouped_grads_Úgrouped_axs_Úgrouped_mus_Úgrouped_etas_Úgrouped_state_steps_Úgrouped_paramsÚgrouped_gradsÚgrouped_axsÚgrouped_musÚgrouped_etasÚgrouped_state_stepsÚintermediateÚnew_musÚnew_etasr…   r5   s"         ````                      @@r0   Ú_multi_tensor_asgdr¸     sÑ  øøøøøø€ õ$ ˆ6�{„{�aÒÐØˆàð DÝÐBÑCÔCÐCõ Œ>×&Ò&Ñ(Ô(ð ¨Zð Ý'HØð(
ñ (
ô (
Ð$õ ð 
ð 
ð 
ð 
õ %(¨°°T¸;ÈtÐ$TÑ$TÔ$Tð
ñ 
ô 
ñ 
ô 
ð 	õ
 !ðFØ&BðFð Fð Fñô ð õ
 
�B‰Œ€BåÔBØ	�˜˜S $¨Ð4ñô €Oð 
×	Ò	Ñ	 Ô	 ðc7ñ c7ñ 
	‰ˆ�ñ 
ñ	
ØØØØØØ à	å�d¥6œl¨OÑ<Ô<ˆÝ�T¥&œ\¨>Ñ:Ô:ˆÝ�4¥œ<¨Ñ6Ô6ˆÝ�4¥œ<¨Ñ6Ô6ˆÝ�D¥œL¨-Ñ8Ô8ˆÝ"¥4­¤<Ð1EÑFÔFÐàð 	FÝ˜.¨-¸ÑEÔEÐEàð 	>Ý!Ô.¨}Ñ=Ô=ˆMõ Œ~×*Ò*Ñ,Ô,ð 	8Ð1DÀQÔ1GÔ1Nð 	8ÝÔØ#¥U¤\°#¸eÐ%DÑ%DÔ%DÈCðñ ô ð ð õ ÔÐ 3°QÑ7Ô7Ð7ð ˜1ÒÐØð ÝÔ# M°>ÈÐVÑVÔVÐVØ,��å$Ô1Ø! >¸ð ñ  ô  �õ Ô ¨nÀEÐJÑJÔJÐJÐJå Ô-Ø˜~°Uðñ ô ˆLõ 	Ô °¸lÐRTÐUÑUÔUÐUØõ Ô)¨.¸+ÑFÔFˆÝÔ ¨\¸;ÑGÔGÐGØð ð 	7åÔ(Ð)<¸bÑAÔAˆGÝÔ# G¨SÑ1Ô1Ð1ÝÔ& wÑ/Ô/Ð/ÝÔ  ¨gÑ6Ô6Ð6Øõ Ô)Ð*=¸uÑEÔEˆHÝÔ ¨"Ñ-Ô-Ð-ÝÔ ¨!Ñ,Ô,Ð,ÝÔ ¨%Ñ0Ô0Ð0ÝÔ& xÑ0Ô0Ð0ÝÔ ¨"Ñ-Ô-Ð-ÝÔ  ¨xÑ8Ô8Ð8Ñ8ðð ð ð ð ð ð à/ðñ ô ˆHðð ð ð ð à/ðñ ô ˆGõ Ô  ¨xÑ8Ô8Ð8ÝÔ  ¨gÑ6Ô6Ð6Ñ6ðGc7ð c7r1   )Úsingle_tensor_fnFr"   c                ó$  — |€t          | |d¬¦  «        \  }}|r-t          j                             ¦   «         rt	          d¦  «        ‚|r&t          j                             ¦   «         st
          }nt          } || |||||||||||||	|
¬¦  «         dS )znFunctional API that performs asgd algorithm computation.

    See :class:`~torch.optim.ASGD` for details.
    NF)Ú	use_fusedz6torch.jit.script not supported with foreach optimizers)	r   r   r    r   r!   r#   r$   r%   r\   )r   r>   rp   rq   rN   r¸   r‰   )r   rW   rY   rX   rZ   r[   r"   r#   r$   r%   r\   r   r   r    r   r!   r¨   Úfuncs                     r0   r   r   §  sÑ   € ð4 €Ý1Ø�N¨eð
ñ 
ô 
‰
ˆˆ7ð ð U•5”9×)Ò)Ñ+Ô+ð UÝÐSÑTÔTÐTàð #•u”y×-Ò-Ñ/Ô/ð #Ý!ˆˆå"ˆà€DØØØØØØØØØØØ!ØØ%ØØðñ ô ð ð ð r1   )NFFFF)Útypingr   r>   r   Ú	optimizerr   r   r   r	   r
   r   r   r   r   r   r   r   r   r   r   Ú__all__r   Ú__doc__rš   r@   rg   r‰   r¸   r   rG   r1   r0   ú<module>rÁ      sA  ðà Ð Ð Ð Ð Ð à €€€Ø Ð Ð Ð Ð Ð ðð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð& �6Ð
€ðNð Nð Nð Nð Nˆ9ñ Nô Nð Nðbð 
ðð ð 
ðð ð 
ðð ð 
ðð ð 
ðð ð €„ð.MØ�ŒLðMà�Œ<ðMð 
ˆfŒðMð 
ˆfŒð	Mð
 ˆvŒ,ðMð �f”ðMð ðMð 	ðMð 	ðMð ðMð ðMð ðMð ðMð ðMð  ð!Mð" 
ð#Mð Mð Mð Mð`O7Ø�ŒLðO7à�Œ<ðO7ð 
ˆfŒðO7ð 
ˆfŒð	O7ð
 ˆvŒ,ðO7ð �f”ðO7ð ðO7ð 	ðO7ð 	ðO7ð ðO7ð ðO7ð ðO7ð ðO7ð ðO7ð  ð!O7ð" 
ð#O7ð O7ð O7ð O7ðd  ÐÐ1DÐEÑEÔEð  ØØ ØØð6ð 6Ø�ŒLð6à�Œ<ð6ð 
ˆfŒð6ð 
ˆfŒð	6ð
 ˆvŒ,ð6ð �f”ð6ð �D‰[ð6ð ð6ð ð6ð ð6ð ð6ð ð6ð  	ð!6ð" 	ð#6ð$ ð%6ð& ð'6ð( 
ð)6ð 6ð 6ñ FÔEð6ð 6ð 6r1   