§
    ù²Åj>A  ã                   ó¦  — d dl mZ d dlmZmZmZmZmZ d dlZd dlm	Z	m
Z
 ddlmZmZ ddlmZ ddlmZ d	d
lmZmZmZ d	dlmZ d	dlmZmZmZ g d¢Z G d„ d¦  «        Z G d„ de	j        ¦  «        Z  G d„ de	j        ¦  «        Z!	 d.de"de#de$de$def
d„Z%dee         de&dee         de$ded e!fd!„Z'd"ed#œZ( G d$„ d%e¦  «        Z) G d&„ d'e¦  «        Z* e¦   «          ed(e)j+        f¬)¦  «        dd*d+œdee)         de$ded e!fd,„¦   «         ¦   «         Z, e¦   «          ed(e*j+        f¬)¦  «        dd*d+œdee*         de$ded e!fd-„¦   «         ¦   «         Z-dS )/é    )Úpartial)ÚAnyÚCallableÚListÚOptionalÚSequenceN)ÚnnÚTensoré   )ÚConv2dNormActivationÚSqueezeExcitation)ÚImageClassification)Ú_log_api_usage_onceé   )Úregister_modelÚWeightsÚWeightsEnum)Ú_IMAGENET_CATEGORIES)Ú_make_divisibleÚ_ovewrite_named_paramÚhandle_legacy_interface)ÚMobileNetV3ÚMobileNet_V3_Large_WeightsÚMobileNet_V3_Small_WeightsÚmobilenet_v3_largeÚmobilenet_v3_smallc                   óZ   — e Zd Zdedededededededed	efd
„Zeded	efd„¦   «         Z	dS )ÚInvertedResidualConfigÚinput_channelsÚkernelÚexpanded_channelsÚout_channelsÚuse_seÚ
activationÚstrideÚdilationÚ
width_multc
                 óö   — |                       ||	¦  «        | _        || _        |                       ||	¦  «        | _        |                       ||	¦  «        | _        || _        |dk    | _        || _        || _        d S )NÚHS)	Úadjust_channelsr   r    r!   r"   r#   Úuse_hsr%   r&   )
Úselfr   r    r!   r"   r#   r$   r%   r&   r'   s
             úOC:\Projects\Historical\venv\Lib\site-packages\torchvision/models/mobilenetv3.pyÚ__init__zInvertedResidualConfig.__init__   sy   € ð #×2Ò2°>À:ÑNÔNˆÔØˆŒØ!%×!5Ò!5Ð6GÈÑ!TÔ!TˆÔØ ×0Ò0°¸zÑJÔJˆÔØˆŒØ  DÒ(ˆŒØˆŒØ ˆŒˆˆó    Úchannelsc                 ó(   — t          | |z  d¦  «        S )Né   )r   )r0   r'   s     r-   r*   z&InvertedResidualConfig.adjust_channels/   s   € å˜x¨*Ñ4°aÑ8Ô8Ð8r/   N)
Ú__name__Ú
__module__Ú__qualname__ÚintÚboolÚstrÚfloatr.   Ústaticmethodr*   © r/   r-   r   r      s®   € € € € € ð!àð!ð ð!ð ð	!ð
 ð!ð ð!ð ð!ð ð!ð ð!ð ð!ð !ð !ð !ð* ð9 #ð 9°5ð 9ð 9ð 9ñ „\ð9ð 9ð 9r/   r   c            	       ó”   ‡ — e Zd Z eeej        ¬¦  «        fdededej	        f         dedej	        f         fˆ fd„Z
dedefd	„Zˆ xZS )
ÚInvertedResidual)Úscale_activationÚcnfÚ
norm_layer.Úse_layerc                 ó†  •— t          ¦   «                              ¦   «          d|j        cxk    rdk    sn t          d¦  «        ‚|j        dk    o|j        |j        k    | _        g }|j        rt          j	        nt          j
        }|j        |j        k    r1|                     t          |j        |j        d||¬¦  «        ¦  «         |j        dk    rdn|j        }|                     t          |j        |j        |j        ||j        |j        ||¬¦  «        ¦  «         |j        r<t#          |j        dz  d¦  «        }|                      ||j        |¦  «        ¦  «         |                     t          |j        |j        d|d ¬¦  «        ¦  «         t          j        |Ž | _        |j        | _        |j        dk    | _        d S )Nr   r   zillegal stride value©Úkernel_sizer@   Úactivation_layer)rD   r%   r&   Úgroupsr@   rE   é   r2   )Úsuperr.   r%   Ú
ValueErrorr   r"   Úuse_res_connectr+   r	   Ú	HardswishÚReLUr!   Úappendr   r&   r    r#   r   Ú
SequentialÚblockÚ_is_cn)	r,   r?   r@   rA   ÚlayersrE   r%   Úsqueeze_channelsÚ	__class__s	           €r-   r.   zInvertedResidual.__init__6   sé  ø€ õ 	‰Œ×ÒÑÔÐØ�S”ZÐ$Ð$Ò$Ð$ 1Ò$Ð$Ð$Ð$ÝÐ3Ñ4Ô4Ð4à"œz¨QšÐY°3Ô3EÈÔIYÒ3YˆÔà"$ˆØ+.¬:ÐB�2œ<˜<½2¼7Ðð Ô  CÔ$6Ò6Ð6Ø�MŠMÝ$ØÔ&ØÔ)Ø !Ø)Ø%5ðñ ô ñô ð ð ”l QÒ&Ð&��¨C¬JˆØ�ŠÝ ØÔ%ØÔ%ØœJØØœØÔ,Ø%Ø!1ð	ñ 	ô 	ñ	
ô 	
ð 	
ð Œ:ð 	MÝ.¨sÔ/DÈÑ/IÈ1ÑMÔMÐØ�MŠM˜(˜( 3Ô#8Ð:JÑKÔKÑLÔLÐLð 	�ŠÝ ØÔ% sÔ'7ÀQÐS]Ðptðñ ô ñ	
ô 	
ð 	
õ ”] FÐ+ˆŒ
ØÔ,ˆÔØ”j 1’nˆŒˆˆr/   ÚinputÚreturnc                 óH   — |                       |¦  «        }| j        r||z  }|S ©N)rO   rJ   )r,   rT   Úresults      r-   ÚforwardzInvertedResidual.forwardn   s,   € Ø—’˜EÑ"Ô"ˆØÔð 	Ø�e‰OˆFØˆr/   )r3   r4   r5   r   ÚSElayerr	   ÚHardsigmoidr   r   ÚModuler.   r
   rY   Ú__classcell__©rS   s   @r-   r=   r=   4   s­   ø€ € € € € ð .5¨W°WÈrÌ~Ð-^Ñ-^Ô-^ð	6%ð 6%à#ð6%ð ˜S "¤)˜^Ô,ð6%ð ˜3 ¤	˜>Ô*ð	6%ð 6%ð 6%ð 6%ð 6%ð 6%ðp˜Vð ¨ð ð ð ð ð ð ð ð r/   r=   c                   óÂ   ‡ — e Zd Z	 	 	 	 ddee         dededeedej	        f                  d	eedej	        f                  d
e
deddfˆ fd„Zdedefd„Zdedefd„Zˆ xZS )r   éè  Nçš™™™™™É?Úinverted_residual_settingÚlast_channelÚnum_classesrO   .r@   ÚdropoutÚkwargsrU   c           
      óz  •— t          ¦   «                              ¦   «          t          | ¦  «         |st          d¦  «        ‚t	          |t
          ¦  «        rt          d„ |D ¦   «         ¦  «        st          d¦  «        ‚|€t          }|€t          t          j        dd¬¦  «        }g }|d         j        }	|                     t          d	|	d	d
|t          j        ¬¦  «        ¦  «         |D ]!}
|                      ||
|¦  «        ¦  «         Œ"|d         j        }d|z  }|                     t          ||d|t          j        ¬¦  «        ¦  «         t          j        |Ž | _        t          j        d¦  «        | _        t          j        t          j        ||¦  «        t          j        d¬¦  «        t          j        |d¬¦  «        t          j        ||¦  «        ¦  «        | _        |                      ¦   «         D �]B}t	          |t          j        ¦  «        rRt          j                             |j        d¬¦  «         |j        �$t          j                             |j        ¦  «         Œot	          |t          j        t          j        f¦  «        rIt          j                              |j        ¦  «         t          j                             |j        ¦  «         ŒÞt	          |t          j        ¦  «        rJt          j         !                    |j        dd¦  «         t          j                             |j        ¦  «         �ŒDdS )a.  
        MobileNet V3 main class

        Args:
            inverted_residual_setting (List[InvertedResidualConfig]): Network structure
            last_channel (int): The number of channels on the penultimate layer
            num_classes (int): Number of classes
            block (Optional[Callable[..., nn.Module]]): Module specifying inverted residual building block for mobilenet
            norm_layer (Optional[Callable[..., nn.Module]]): Module specifying the normalization layer to use
            dropout (float): The droupout probability
        z1The inverted_residual_setting should not be emptyc                 ó8   — g | ]}t          |t          ¦  «        ‘ŒS r;   )Ú
isinstancer   )Ú.0Úss     r-   ú
<listcomp>z(MobileNetV3.__init__.<locals>.<listcomp>’   s#   € Ð^Ð^Ð^¸q•Z Õ#9Ñ:Ô:Ð^Ð^Ð^r/   zDThe inverted_residual_setting should be List[InvertedResidualConfig]Ngü©ñÒMbP?g{®Gáz„?)ÚepsÚmomentumr   é   r   )rD   r%   r@   rE   éÿÿÿÿé   r   rC   T)Úinplace)Úprr   Úfan_out)Úmode)"rH   r.   r   rI   ri   r   ÚallÚ	TypeErrorr=   r   r	   ÚBatchNorm2dr   rM   r   rK   r"   rN   ÚfeaturesÚAdaptiveAvgPool2dÚavgpoolÚLinearÚDropoutÚ
classifierÚmodulesÚConv2dÚinitÚkaiming_normal_ÚweightÚbiasÚzeros_Ú	GroupNormÚones_Únormal_)r,   rb   rc   rd   rO   r@   re   rf   rQ   Úfirstconv_output_channelsr?   Úlastconv_input_channelsÚlastconv_output_channelsÚmrS   s                 €r-   r.   zMobileNetV3.__init__v   sý  ø€ õ* 	‰Œ×ÒÑÔÐÝ˜DÑ!Ô!Ð!à(ð 	dÝÐPÑQÔQÐQåÐ0µ(Ñ;Ô;ð	dåÐ^Ð^ÐD]Ð^Ñ^Ô^Ñ_Ô_ð	dõ ÐbÑcÔcÐcàˆ=Ý$ˆEàÐÝ ¥¤°UÀTÐJÑJÔJˆJà"$ˆð %>¸aÔ$@Ô$OÐ!Ø�ŠÝ ØØ)ØØØ%Ý!#¤ðñ ô ñ		
ô 		
ð 		
ð -ð 	2ð 	2ˆCØ�MŠM˜%˜%  ZÑ0Ô0Ñ1Ô1Ð1Ð1ð #<¸BÔ"?Ô"LÐØ#$Ð'>Ñ#>Ð Ø�ŠÝ Ø'Ø(ØØ%Ý!#¤ðñ ô ñ	
ô 	
ð 	
õ œ vÐ.ˆŒÝÔ+¨AÑ.Ô.ˆŒÝœ-ÝŒIÐ.°Ñ=Ô=ÝŒL Ð&Ñ&Ô&ÝŒJ˜¨$Ð/Ñ/Ô/ÝŒI�l KÑ0Ô0ñ	
ô 
ˆŒð —’‘”ð 
	'ñ 
	'ˆAÝ˜!�RœYÑ'Ô'ð 	'Ý”×'Ò'¨¬°yÐ'ÑAÔAÐAØ”6Ð%Ý”G—N’N 1¤6Ñ*Ô*Ð*øÝ˜A¥¤µ´Ð=Ñ>Ô>ð 'Ý”—’˜aœhÑ'Ô'Ð'Ý”—’˜qœvÑ&Ô&Ð&Ð&Ý˜A�rœyÑ)Ô)ð 'Ý”—’ ¤¨!¨TÑ2Ô2Ð2Ý”—’˜qœvÑ&Ô&Ð&ùð
	'ð 
	'r/   Úxc                 ó®   — |                       |¦  «        }|                      |¦  «        }t          j        |d¦  «        }|                      |¦  «        }|S )Nr   )ry   r{   ÚtorchÚflattenr~   ©r,   r�   s     r-   Ú_forward_implzMobileNetV3._forward_implÑ   sI   € Ø�MŠM˜!ÑÔˆà�LŠL˜‰OŒOˆÝŒM˜!˜QÑÔˆà�OŠO˜AÑÔˆàˆr/   c                 ó,   — |                       |¦  «        S rW   )r’   r‘   s     r-   rY   zMobileNetV3.forwardÛ   s   € Ø×!Ò! !Ñ$Ô$Ð$r/   )r`   NNra   )r3   r4   r5   r   r   r6   r   r   r	   r\   r9   r   r.   r
   r’   rY   r]   r^   s   @r-   r   r   u   s  ø€ € € € € ð
  Ø48Ø9=ØðY'ð Y'à#'Ð(>Ô#?ðY'ð ðY'ð ð	Y'ð
 ˜  b¤i Ô0Ô1ðY'ð ˜X c¨2¬9 nÔ5Ô6ðY'ð ðY'ð ðY'ð 
ðY'ð Y'ð Y'ð Y'ð Y'ð Y'ðv˜vð ¨&ð ð ð ð ð%˜ð % Fð %ð %ð %ð %ð %ð %ð %ð %r/   r   ç      ð?FÚarchr'   Úreduced_tailÚdilatedrf   c                 óÎ  — |rdnd}|rdnd}t          t          |¬¦  «        }t          t          j        |¬¦  «        }| dk    �r% |dddddddd¦  «         |ddd	d
dddd¦  «         |d
ddd
dddd¦  «         |d
ddddddd¦  «         |dddddddd¦  «         |dddddddd¦  «         |dddddddd¦  «         |dddddddd¦  «         |dddddddd¦  «         |dddddddd¦  «         |dddddddd¦  «         |dddddddd¦  «         |dddd|z  ddd|¦  «         |d|z  dd|z  d|z  ddd|¦  «         |d|z  dd|z  d|z  ddd|¦  «        g}	 |d|z  ¦  «        }
nù| dk    rá |dddddddd¦  «         |dddd
dddd¦  «         |d
ddd
dddd¦  «         |d
ddddddd¦  «         |dddddddd¦  «         |dddddddd¦  «         |dddddddd¦  «         |dddddddd¦  «         |ddd d|z  ddd|¦  «         |d|z  dd!|z  d|z  ddd|¦  «         |d|z  dd!|z  d|z  ddd|¦  «        g}	 |d"|z  ¦  «        }
nt          d#| › �¦  «        ‚|	|
fS )$Nr   r   )r'   r   é   ro   FÚREé@   é   éH   é   é(   Téx   éð   éP   r)   éÈ   é¸   ià  ép   i   é    iÀ  i   r   éX   é`   é0   é�   i   i@  i   zUnsupported model type )r   r   r*   rI   )r•   r'   r–   r—   rf   Úreduce_dividerr&   Ú
bneck_confr*   rb   rc   s              r-   Ú_mobilenet_v3_confr­   ß   sØ  € ð 'Ð-�Q�Q¨A€NØÐ"ˆqˆq €HåÕ/¸JÐGÑGÔG€JÝÕ4ÔDÐQ[Ð\Ñ\Ô\€OàÐ#Ò#Ñ#àˆJ�r˜1˜b " e¨T°1°aÑ8Ô8ØˆJ�r˜1˜b " e¨T°1°aÑ8Ô8ØˆJ�r˜1˜b " e¨T°1°aÑ8Ô8ØˆJ�r˜1˜b " d¨D°!°QÑ7Ô7ØˆJ�r˜1˜c 2 t¨T°1°aÑ8Ô8ØˆJ�r˜1˜c 2 t¨T°1°aÑ8Ô8ØˆJ�r˜1˜c 2 u¨d°A°qÑ9Ô9ØˆJ�r˜1˜c 2 u¨d°A°qÑ9Ô9ØˆJ�r˜1˜c 2 u¨d°A°qÑ9Ô9ØˆJ�r˜1˜c 2 u¨d°A°qÑ9Ô9ØˆJ�r˜1˜c 3¨¨d°A°qÑ9Ô9ØˆJ�s˜A˜s C¨¨t°Q¸Ñ:Ô:ØˆJ�s˜A˜s C¨>Ñ$9¸4ÀÀqÈ(ÑSÔSØˆJ�s˜nÑ,¨a°¸Ñ1FÈÈ~ÑH]Ð_cÐeiÐklÐnvÑwÔwØˆJ�s˜nÑ,¨a°¸Ñ1FÈÈ~ÑH]Ð_cÐeiÐklÐnvÑwÔwð%
Ð!ð" '� t¨~Ñ'=Ñ>Ô>ˆˆØ	Ð%Ò	%Ð	%àˆJ�r˜1˜b " d¨D°!°QÑ7Ô7ØˆJ�r˜1˜b " e¨T°1°aÑ8Ô8ØˆJ�r˜1˜b " e¨T°1°aÑ8Ô8ØˆJ�r˜1˜b " d¨D°!°QÑ7Ô7ØˆJ�r˜1˜c 2 t¨T°1°aÑ8Ô8ØˆJ�r˜1˜c 2 t¨T°1°aÑ8Ô8ØˆJ�r˜1˜c 2 t¨T°1°aÑ8Ô8ØˆJ�r˜1˜c 2 t¨T°1°aÑ8Ô8ØˆJ�r˜1˜c 2¨Ñ#7¸¸tÀQÈÑQÔQØˆJ�r˜^Ñ+¨Q°°~Ñ0EÀrÈ^ÑG[Ð]aÐcgÐijÐltÑuÔuØˆJ�r˜^Ñ+¨Q°°~Ñ0EÀrÈ^ÑG[Ð]aÐcgÐijÐltÑuÔuð%
Ð!ð '� t¨~Ñ'=Ñ>Ô>ˆˆåÐ9°4Ð9Ð9Ñ:Ô:Ð:à$ lÐ2Ð2r/   rb   rc   ÚweightsÚprogressrU   c                 óÐ   — |�)t          |dt          |j        d         ¦  «        ¦  «         t          | |fi |¤Ž}|�*|                     |                     |d¬¦  «        ¦  «         |S )Nrd   Ú
categoriesT)r¯   Ú
check_hash)r   ÚlenÚmetar   Úload_state_dictÚget_state_dict)rb   rc   r®   r¯   rf   Úmodels         r-   Ú_mobilenet_v3r¸     sv   € ð ÐÝ˜f mµS¸¼ÀlÔ9SÑ5TÔ5TÑUÔUÐUåÐ1°<ÐJÐJÀ6ÐJÐJ€EàÐØ×Ò˜g×4Ò4¸hÐSWÐ4ÑXÔXÑYÔYÐYà€Lr/   )r   r   )Úmin_sizer±   c                   ó¸   — e Zd Z ed eed¬¦  «        i e¥dddddd	œid
dddœ¥¬¦  «        Z ed eedd¬¦  «        i e¥dddddd	œid
dddœ¥¬¦  «        ZeZ	dS )r   zChttps://download.pytorch.org/models/mobilenet_v3_large-8738ca79.pthéà   ©Ú	crop_sizeiªS ú^https://github.com/pytorch/vision/tree/main/references/classification#mobilenetv3-large--smallúImageNet-1Kg¦›Ä °‚R@gö(\�ÂÕV@©zacc@1zacc@5g-²�ï§ÆË?gw¾Ÿ/5@zJThese weights were trained from scratch by using a simple training recipe.©Ú
num_paramsÚrecipeÚ_metricsÚ_opsÚ
_file_sizeÚ_docs©ÚurlÚ
transformsr´   zChttps://download.pytorch.org/models/mobilenet_v3_large-5c1a4163.pthéè   )r½   Úresize_sizezHhttps://github.com/pytorch/vision/issues/3995#new-recipe-with-reg-tuningg¨ÆK7‰ÑR@gNbX9$W@g¬Zd5@a/  
                These weights improve marginally upon the results of the original paper by using a modified version of
                TorchVision's `new training recipe
                <https://pytorch.org/blog/how-to-train-state-of-the-art-models-using-torchvision-latest-primitives/>`_.
            N)
r3   r4   r5   r   r   r   Ú_COMMON_METAÚIMAGENET1K_V1ÚIMAGENET1K_V2ÚDEFAULTr;   r/   r-   r   r   (  sý   € € € € € Ø�GØQØ�7Ð.¸#Ð>Ñ>Ô>ð
Øð
à!ØvàØ#Ø#ð ð  ðð Ø Øeð
ð 
ð 
ðñ ô €Mð$ �GØQØ�7Ð.¸#È3ÐOÑOÔOð
Øð
à!Ø`àØ#Ø#ð ð  ðð Ø ðð
ð 
ð 
ðñ ô €Mð, €G€G€Gr/   r   c                   ód   — e Zd Z ed eed¬¦  «        i e¥dddddd	œid
dddœ¥¬¦  «        ZeZdS )r   zChttps://download.pytorch.org/models/mobilenet_v3_small-047dcff4.pthr»   r¼   iÍ& r¾   r¿   g˜nƒÀêP@g}?5^ºÙU@rÀ   gÉv¾Ÿ/­?gœÄ °r¨#@z}
                These weights improve upon the results of the original paper by using a simple training recipe.
            rÁ   rÈ   N)	r3   r4   r5   r   r   r   rÍ   rÎ   rÐ   r;   r/   r-   r   r   T  sˆ   € € € € € Ø�GØQØ�7Ð.¸#Ð>Ñ>Ô>ð
Øð
à!ØvàØ#Ø#ð ð  ðð Øðð
ð 
ð 
ðñ ô €Mð( €G€G€Gr/   r   Ú
pretrained)r®   T)r®   r¯   c                 ót   — t                                | ¦  «        } t          di |¤Ž\  }}t          ||| |fi |¤ŽS )a³  
    Constructs a large MobileNetV3 architecture from
    `Searching for MobileNetV3 <https://arxiv.org/abs/1905.02244>`__.

    Args:
        weights (:class:`~torchvision.models.MobileNet_V3_Large_Weights`, optional): The
            pretrained weights to use. See
            :class:`~torchvision.models.MobileNet_V3_Large_Weights` below for
            more details, and possible values. By default, no pre-trained
            weights are used.
        progress (bool, optional): If True, displays a progress bar of the
            download to stderr. Default is True.
        **kwargs: parameters passed to the ``torchvision.models.mobilenet.MobileNetV3``
            base class. Please refer to the `source code
            <https://github.com/pytorch/vision/blob/main/torchvision/models/mobilenetv3.py>`_
            for more details about this class.

    .. autoclass:: torchvision.models.MobileNet_V3_Large_Weights
        :members:
    r   )r   )r   Úverifyr­   r¸   ©r®   r¯   rf   rb   rc   s        r-   r   r   l  óO   € õ2 )×/Ò/°Ñ8Ô8€Gå.@Ð.`Ð.`ÐY_Ð.`Ð.`Ñ+Ð˜|ÝÐ2°LÀ'È8Ð^Ð^ÐW]Ð^Ð^Ð^r/   c                 ót   — t                                | ¦  «        } t          di |¤Ž\  }}t          ||| |fi |¤ŽS )a³  
    Constructs a small MobileNetV3 architecture from
    `Searching for MobileNetV3 <https://arxiv.org/abs/1905.02244>`__.

    Args:
        weights (:class:`~torchvision.models.MobileNet_V3_Small_Weights`, optional): The
            pretrained weights to use. See
            :class:`~torchvision.models.MobileNet_V3_Small_Weights` below for
            more details, and possible values. By default, no pre-trained
            weights are used.
        progress (bool, optional): If True, displays a progress bar of the
            download to stderr. Default is True.
        **kwargs: parameters passed to the ``torchvision.models.mobilenet.MobileNetV3``
            base class. Please refer to the `source code
            <https://github.com/pytorch/vision/blob/main/torchvision/models/mobilenetv3.py>`_
            for more details about this class.

    .. autoclass:: torchvision.models.MobileNet_V3_Small_Weights
        :members:
    r   )r   )r   rÔ   r­   r¸   rÕ   s        r-   r   r   ‹  rÖ   r/   )r”   FF).Ú	functoolsr   Útypingr   r   r   r   r   r�   r	   r
   Úops.miscr   r   rZ   Útransforms._presetsr   Úutilsr   Ú_apir   r   r   Ú_metar   Ú_utilsr   r   r   Ú__all__r   r\   r=   r   r8   r9   r7   r­   r6   r¸   rÍ   r   r   rÎ   r   r   r;   r/   r-   ú<module>rá      s²  ðØ Ð Ð Ð Ð Ð Ø :Ð :Ð :Ð :Ð :Ð :Ð :Ð :Ð :Ð :Ð :Ð :Ð :Ð :à €€€Ø Ð Ð Ð Ð Ð Ð Ð à IÐ IÐ IÐ IÐ IÐ IÐ IÐ IØ 5Ð 5Ð 5Ð 5Ð 5Ð 5Ø 'Ð 'Ð 'Ð 'Ð 'Ð 'Ø 6Ð 6Ð 6Ð 6Ð 6Ð 6Ð 6Ð 6Ð 6Ð 6Ø 'Ð 'Ð 'Ð 'Ð 'Ð 'Ø SÐ SÐ SÐ SÐ SÐ SÐ SÐ SÐ SÐ Sðð ð €ð9ð 9ð 9ð 9ð 9ñ 9ô 9ð 9ð8>ð >ð >ð >ð >�r”yñ >ô >ð >ðBg%ð g%ð g%ð g%ð g%�"”)ñ g%ô g%ð g%ðV UZð.3ð .3Ø
ð.3Ø ð.3Ø6:ð.3ØMQð.3Øehð.3ð .3ð .3ð .3ðbØ#Ð$:Ô;ðàðð �kÔ"ðð ð	ð
 ðð ðð ð ð ð& Ø&ðð €ð)ð )ð )ð )ð ) ñ )ô )ð )ðXð ð ð ð  ñ ô ð ð0 €ÑÔØÐ ,Ð0JÔ0XÐ!YÐZÑZÔZà7;Èdð_ð _ð _ØÐ3Ô4ð_ØGKð_Ø^að_àð_ð _ð _ñ [ÔZñ Ôð_ð: €ÑÔØÐ ,Ð0JÔ0XÐ!YÐZÑZÔZà7;Èdð_ð _ð _ØÐ3Ô4ð_ØGKð_Ø^að_àð_ð _ð _ñ [ÔZñ Ôð_ð _ð _r/   