Ë
    ômxi64  ã                   ó¼  — d dl Zd dlZd dlmZ d dlmZ d dlmZm	Z	m
Z
mZmZ d dlmZ d dlmZ ej$                  j&                  gZ ej*                  d«      Zej/                  ej$                  j1                   eej2                  «       ed«      k(  xr  e«       dej2                  › �¬	«      «       d
„ Zd„ Zej$                  j9                  d«      ej$                  j;                  dddg«      ej$                  j;                  dddg«      ej$                  j;                  dddg«      d„ «       «       «       «       Zej$                  j9                  d«      ej$                  j;                  dddg«      ej$                  j;                  dddg«      d„ «       «       «       Zd„ Z ej$                  j;                  ddddgiddidddgddœid e
dd¬«      ig«      d „ «       Z!ej$                  j;                  d!dd"„ idf ejD                  dd#„ d$„ giddgej$                  jG                  d%¬	«      ¬&«      g«      d'„ «       Z$ej$                  j;                  ddddgiddiddd(œg«      d)„ «       Z%ej$                  j&                  ej$                  j;                  d* eg d+¢«      dddgif eg d+¢«      ddif eg d+¢g d,¢dœdd-g¬.«      dddgif eg d+¢g d,¢dœdd-g¬.«      ddif eg d+¢g d,¢dœdd-g¬.«      dddgddœif eg d+¢g d,¢dœdd-g¬.«      d/ e
dd¬«      ifg«      d0„ «       «       Z&d1„ Z'd2„ Z(d3„ Z)ej$                  j9                  d«      d4„ «       Z*d5„ Z+d6„ Z,d7„ Z-y)8é    N)Úis_platform_arm)ÚNumbaUtilError)Ú	DataFrameÚIndexÚNamedAggÚSeriesÚoption_context)ÚVersionÚnumbaz0.61z&Segfaults on ARM platforms with numba )Úreasonc                  ó®  — t        j                  d«       d„ } t        g d¢g d¢dœddg¬«      }t        j                  t        d	¬
«      5  |j                  d«      j                  | d¬«       d d d «       t        j                  t        d	¬
«      5  |j                  d«      d   j                  | d¬«       d d d «       y # 1 sw Y   ŒSxY w# 1 sw Y   y xY w)Nr   c                 ó   — t        | «      dz  S ©Ngš™™™™™@©Úsum©Úxs    ú`/home/htdocs/ttos/venv/lib/python3.12/site-packages/pandas/tests/groupby/aggregate/test_numba.pyÚincorrect_functionz;test_correct_function_signature.<locals>.incorrect_function   s   € Ü�1‹v˜‰|Ðó    ©Úar   Úbr   r   ©ç      ð?ç       @g      @g      @g      @©ÚkeyÚdatar   r   ©ÚcolumnszThe first 2©Úmatch©Úengine©ÚpytestÚimportorskipr   Úraisesr   ÚgroupbyÚagg©r   r   s     r   Útest_correct_function_signaturer-      sÈ   € Ü
×Ñ˜Ô òô Ú)Ò3LÑMØ˜�ô€Dô 
�‰”~¨]Ô	;ñ DØ�‰�UÓ×ÑÐ 2¸7ÐÔC÷Dô 
�‰”~¨]Ô	;ñ LØ�‰�UÓ˜FÑ#×'Ñ'Ð(:À7Ð'ÔK÷Lð L÷Dð Dú÷Lð Lús   Á
#B?Â&CÂ?CÃCc                  ó²  — t        j                  d«       d„ } t        g d¢g d¢dœddg¬«      }t        j                  t        d	¬
«      5  |j                  d«      j                  | dd¬«       d d d «       t        j                  t        d	¬
«      5  |j                  d«      d   j                  | dd¬«       d d d «       y # 1 sw Y   ŒTxY w# 1 sw Y   y xY w)Nr   c                 ó   — t        | «      dz  S r   r   ©ÚvaluesÚindexs     r   r   z6test_check_nopython_kwargs.<locals>.incorrect_function0   s   € Ü�6‹{˜SÑ Ð r   r   r   r   r   r   r    znumba does not supportr"   é   )r%   r   r&   r,   s     r   Útest_check_nopython_kwargsr4   -   sÎ   € Ü
×Ñ˜Ô ò!ô Ú)Ò3LÑMØ˜�ô€Dô 
�‰”~Ð-EÔ	Fñ IØ�‰�UÓ×ÑÐ 2¸7ÀaÐÔH÷Iô 
�‰”~Ð-EÔ	Fñ QØ�‰�UÓ˜FÑ#×'Ñ'Ð(:À7ÈaÐ'ÔP÷Qð Q÷Ið Iú÷Qð Qús   Á
$CÂ'CÃC
ÃCÚignoreÚjitTFÚ
pandas_objr   r   Úas_indexc                 óP  — t        j                  d«       d„ }| rdd l}|j                  |«      }t	        g d¢g d¢dœddg¬«      }|||d	œ}	|j                  d|¬
«      }
|dk(  r|
d   }
|
j                  |d|	¬«      }|
j                  d„ d¬«      }t        j                  ||«       y )Nr   c                 ó2   — t        j                  | «      dz  S r   ©ÚnpÚmeanr0   s     r   Ú
func_numbaz(test_numba_vs_cython.<locals>.func_numbaF   ó   € Ü�w‰w�v‹ Ñ$Ð$r   r   r   r   ©r   r3   r3   r    ©ÚnogilÚparallelÚnopython)r8   r   ©r%   Úengine_kwargsc                 ó2   — t        j                  | «      dz  S r   r;   r   s    r   ú<lambda>z&test_numba_vs_cython.<locals>.<lambda>X   ó   € ¤R§W¡W¨Q£Z°#Ñ%5€ r   Úcythonr$   ©	r'   r(   r   r6   r   r*   r+   ÚtmÚassert_equal)r6   r7   rB   rC   rD   r8   r>   r   r   rF   ÚgroupedÚresultÚexpecteds                r   Útest_numba_vs_cythonrQ   >   s­   € ô ×Ñ˜Ô ò%ñ ãà—Y‘Y˜zÓ*ˆ
äÚ%Ò*CÑDÈqÐRSÈfô€Dð $°ÀxÑP€MØ�l‰l˜1 xˆlÓ0€GØ�XÒØ˜!‘*ˆà�[‰[˜¨GÀ=ˆ[ÓQ€FØ�{‰{Ñ5¸hˆ{ÓG€Hä‡O�O�F˜HÕ%r   c                 ól  — t        j                  d«       d„ }d„ }| r&dd l}|j                  |«      }|j                  |«      }t	        g d¢g d¢dœddg¬	«      }|||d
œ}	|j                  d«      }
|dk(  r|
d   }
|
j                  |d|	¬«      }|
j                  d„ d¬«      }t        j                  ||«       |
j                  |d|	¬«      }|
j                  d„ d¬«      }t        j                  ||«       |
j                  |d|	¬«      }|
j                  d„ d¬«      }t        j                  ||«       y )Nr   c                 ó2   — t        j                  | «      dz
  S ©Ng333333@r;   r0   s     r   Úfunc_1ztest_cache.<locals>.func_1e   r?   r   c                 ó2   — t        j                  | «      dz  S r   r;   r0   s     r   Úfunc_2ztest_cache.<locals>.func_2h   r?   r   r   r   r   r@   r3   r    rA   r   rE   c                 ó2   — t        j                  | «      dz
  S rT   r;   r   s    r   rH   ztest_cache.<locals>.<lambda>z   rI   r   rJ   r$   c                 ó2   — t        j                  | «      dz  S r   r;   r   s    r   rH   ztest_cache.<locals>.<lambda>   rI   r   c                 ó2   — t        j                  | «      dz
  S rT   r;   r   s    r   rH   ztest_cache.<locals>.<lambda>„   rI   r   rK   )r6   r7   rB   rC   rD   rU   rW   r   r   rF   rN   rO   rP   s                r   Ú
test_cacher[   ]   s)  € ô ×Ñ˜Ô ò%ò%ñ Ûà—‘˜6Ó"ˆØ—‘˜6Ó"ˆäÚ%Ò*CÑDÈqÐRSÈfô€Dð $°ÀxÑP€MØ�l‰l˜1‹o€GØ�XÒØ˜!‘*ˆà�[‰[˜¨¸}ˆ[ÓM€FØ�{‰{Ñ5¸hˆ{ÓG€HÜ‡O�O�F˜HÔ%ð �[‰[˜¨¸}ˆ[ÓM€FØ�{‰{Ñ5¸hˆ{ÓG€HÜ‡O�O�F˜HÔ%ð �[‰[˜¨¸}ˆ[ÓM€FØ�{‰{Ñ5¸hˆ{ÓG€HÜ‡O�O�F˜HÕ%r   c                  ó<  — t        j                  d«       d„ } t        g d¢g d¢dœddg¬«      }|j                  d«      }|j	                  | d¬	«      }t        d
d«      5  |j	                  | d ¬	«      }d d d «       t        j                  |«       y # 1 sw Y   Œ xY w)Nr   c                 ó2   — t        j                  | «      dz
  S rT   r;   r0   s     r   rU   z&test_use_global_config.<locals>.func_1‹   r?   r   r   r   r@   r   r3   r    r$   zcompute.use_numbaT)r'   r(   r   r*   r+   r	   rL   Úassert_frame_equal)rU   r   rN   rP   rO   s        r   Útest_use_global_configr_   ˆ   s”   € Ü
×Ñ˜Ô ò%ô Ú%Ò*CÑDÈqÐRSÈfô€Dð �l‰l˜1‹o€GØ�{‰{˜6¨'ˆ{Ó2€HÜ	Ð+¨TÓ	2ñ 2Ø—‘˜V¨D�Ó1ˆ÷2ä×Ñ˜( FÕ+÷2ð 2ús   ÁBÂBÚ
agg_kwargsÚfuncÚminÚmaxr   )r3   é   Úbminr3   )ÚcolumnÚaggfuncc                 ó  — t        j                  d«       t        g d¢g d¢g d¢dœg d¢¬«      }|j                  d«      } |j                  d
i | ¤ddi¤Ž} |j                  d
i | ¤dd	i¤Ž}t        j                  ||«       y )Nr   r   r   ©r3   rd   é   é   é   ©r   r3   rd   r    r   r%   rJ   © ©r'   r(   r   r*   r+   rL   r^   )r`   r   rN   rO   rP   s        r   Ú$test_multifunc_numba_vs_cython_framerp   ˜   s~   € ô ×Ñ˜Ô Üâ(Ú(Úñ	
ò
 ô€Dð �l‰l˜1‹o€GØˆW�[‰[Ñ6˜:Ñ6¨gÒ6€FØˆw�{‰{Ñ9˜ZÑ9°Ò9€HÜ×Ñ˜& (Õ+r   zagg_kwargs,expected_funcc                 ó"   — | j                  «       S ©Nr   r0   s     r   rH   rH   ´   s   € ¨¯
©
«€ r   c                 ó"   — | j                  «       S rr   r   r0   s     r   rH   rH   ¹   ó   € ¨&¯*©*«,€ r   c                 ó"   — | j                  «       S rr   ©rb   r0   s     r   rH   rH   º   rt   r   z2This doesn't work yet! Fails in nopython pipeline!)Úmarksc                 ó  — t        j                  d«       t        g d¢g d¢g d¢dœg d¢¬«      }|j                  d«      } |j                  di | ¤ddi¤Ž}|j	                  |d	¬
«      }t        j                  ||d¬«       y )Nr   r   r   ri   rm   r    r   r%   rJ   r$   F)Úcheck_dtypern   ro   )r`   Úexpected_funcr   rN   rO   rP   s         r   Útest_multifunc_numba_udf_framer{   ±   s|   € ô( ×Ñ˜Ô Üâ(Ú(Úñ	
ò
 ô€Dð �l‰l˜1‹o€GØˆW�[‰[Ñ6˜:Ñ6¨gÒ6€FØ�{‰{˜=°ˆ{Ó:€Hô ×Ñ˜& (¸Ö>r   )Úmin_valÚmax_valc                 óH  — t        j                  d«       g d¢}t        g d¢«      }|j                  |«      }d| d<    |j                  di | ¤Ž}d| d<    |j                  di | ¤Ž}t        |t        «      rt        j                  ||«       y t        j                  ||«       y )Nr   r   r   r%   rJ   rn   )
r'   r(   r   r*   r+   Ú
isinstancer   rL   r^   Úassert_series_equal)r`   Úlabelsr   rN   rO   rP   s         r   Ú%test_multifunc_numba_vs_cython_seriesr‚   Ö   s”   € ô
 ×Ñ˜Ô Ú&€FÜÒ+Ó,€DØ�l‰l˜6Ó"€GØ"€JˆxÑØˆW�[‰[Ñ&˜:Ñ&€FØ#€JˆxÑØˆw�{‰{Ñ(˜ZÑ(€HÜ�(œIÔ&Ü
×Ñ˜f hÕ/ä
×Ñ˜v xÕ0r   zdata,agg_kwargsr   ri   rd   r    Úmin_colc                 ó0  — t        j                  d«       g d¢}| j                  |«      } |j                  di |¤dddidœ¤Ž} |j                  di |¤ddi¤Ž}t	        |t
        «      rt        j                  ||«       y t        j                  ||«       y )Nr   r   rC   TrE   r%   rn   )	r'   r(   r*   r+   r   r   rL   r^   r€   )r   r`   r�   rN   rO   rP   s         r   Ú&test_multifunc_numba_kwarg_propagationr…   é   sˆ   € ôB ×Ñ˜Ô Ú&€FØ�l‰l˜6Ó"€GØˆW�[‰[ÑX˜:ÐX¨gÀjÐRVÐEWÓX€FØˆw�{‰{Ñ8˜ZÑ8°Ò8€HÜ�(œIÔ&Ü
×Ñ˜f hÕ/ä
×Ñ˜v xÕ0r   c                  ó¤  — t        j                  d«       d„ } t        g d¢g d¢dœ«      }|j                  d«      d   }|j	                  | dd¬	«      }t        d
gdz  dt        ddgd¬«      ¬«      }t        j                  ||«       |j	                  | dd¬	«      }t        dgdz  dt        ddgd¬«      ¬«      }t        j                  ||«       y )Nr   c                 ó*   — | | d  j                  «       S rr   r   )r1   r2   Úns      r   Úsum_lastz&test_args_not_cached.<locals>.sum_last  s   € Ø�q�b�cˆ{�‰Ó Ð r   )r   r   r3   r3   )r3   r3   r3   r3   )Úidr   rŠ   r   r3   r$   r   rd   r   ©Úname)rŒ   r2   r   )	r'   r(   r   r*   r+   r   r   rL   r€   )r‰   ÚdfÚ	grouped_xrO   rP   s        r   Útest_args_not_cachedr�     s¿   € ä
×Ñ˜Ô ò!ô 
š,ª\Ñ:Ó	;€BØ—
‘
˜4Ó  Ñ%€IØ�]‰]˜8 Q¨wˆ]Ó7€FÜ�s�e˜a‘i c´¸¸1°vÀDÔ1IÔJ€HÜ×Ñ˜6 8Ô,à�]‰]˜8 Q¨wˆ]Ó7€FÜ�s�e˜a‘i c´¸¸1°vÀDÔ1IÔJ€HÜ×Ñ˜6 8Õ,r   c                  ó  — t        j                  d«       d„ } t        g d¢g d¢dœg d¢¬«      }|j                  d«      j	                  | d¬	«      }t        d
dgdgt        ddgd¬«      ¬«      }t        j                  ||«       y )Nr   c                 ó,   — t        j                  |«      S rr   r;   r0   s     r   Úfz+test_index_data_correctly_passed.<locals>.f+  s   € Ü�w‰w�u‹~Ðr   )ÚAr“   ÚB)rk   rl   é   )ÚgroupÚv)éÿÿÿÿéþÿÿÿéýÿÿÿ)r2   r–   r$   g      ø¿g      Àr—   r“   r”   r‹   )r!   r2   )r'   r(   r   r*   Ú	aggregater   rL   r^   )r’   r�   rO   rP   s       r   Ú test_index_data_correctly_passedrœ   '  sz   € ä
×Ñ˜Ô òô 
š_²9Ñ=Â\Ô	R€BØ�Z‰Z˜Ó ×*Ñ*¨1°WÐ*Ó=€FÜØ	ˆtˆ˜s˜e¬5°#°s°À'Ô+Jô€Hô ×Ñ˜& (Õ+r   c                  ó¬  ‡‡‡— t        j                  d«       dŠdŠdŠˆˆˆfd„} ‰‰‰dœ}t        dg d¢i«      }|j                  d¬	«      j	                  | d|¬
«      }t        dg d¢i«      }t        j                  ||«       dŠ‰‰‰dœ}|j                  d¬	«      j	                  | d|¬
«      }t        dg d¢i«      }t        j                  ||«       y )Nr   TFc                 ó   •— ‰‰z   ‰z   S rr   rn   )r1   r2   rB   rD   rC   s     €€€r   Úfunc_kwargsz2test_engine_kwargs_not_cached.<locals>.func_kwargs>  s   ø€ Ø�xÑ (Ñ*Ð*r   ©rD   rB   rC   Úvalue)r   r   r   r   )ÚlevelrE   )r   r   r   )r   r   r   )r'   r(   r   r*   r›   rL   r^   )rŸ   rF   r�   rO   rP   rB   rD   rC   s        @@@r   Útest_engine_kwargs_not_cachedr£   6  så   ú€ ô ×Ñ˜Ô Ø€EØ€HØ€Hö+ð "*°EÀxÑP€MÜ	�GšYÐ'Ó	(€BØ�Z‰Z˜aˆZÓ ×*Ñ*Ø˜G°=ð +ó €Fô ˜'¢?Ð3Ó4€HÜ×Ñ˜& (Ô+à€EØ!)°EÀxÑP€MØ�Z‰Z˜aˆZÓ ×*Ñ*Ø˜G°=ð +ó €Fô ˜'¢?Ð3Ó4€HÜ×Ñ˜& (Õ+r   c                 ó,  — t        j                  d«       d„ }t        ddddœg«      j                  ddg«      }|| |d	œ}|j	                  d«      j                  |d|¬
«      }t        dgt        dgd¬«      dg¬«      }t        j                  ||«       y )Nr   c                  ó   — y©Nr3   rn   r0   s     r   Ú
numba_funcz+test_multiindex_one_key.<locals>.numba_funcV  ó   € Ør   r3   rd   rj   ©r“   r”   ÚCr“   r”   r    rE   r   r‹   rª   )r2   r!   )	r'   r(   r   Ú	set_indexr*   r+   r   rL   r^   )rB   rC   rD   r§   r�   rF   rO   rP   s           r   Útest_multiindex_one_keyr¬   R  s—   € ä
×Ñ˜Ô òô 
˜! !¨!Ñ,Ð-Ó	.×	8Ñ	8¸#¸s¸Ó	D€BØ!)°EÀxÑP€MØ�Z‰Z˜‹_× Ñ Ø˜7°-ð !ó €Fô ˜#˜¤e¨Q¨C°cÔ&:ÀSÀEÔJ€HÜ×Ñ˜& (Õ+r   c                 ó,  — t        j                  d«       d„ }t        ddddœg«      j                  ddg«      }|| |d	œ}t        j                  t
        d
¬«      5  |j                  ddg«      j                  |d|¬«       d d d «       y # 1 sw Y   y xY w)Nr   c                  ó   — yr¦   rn   r0   s     r   r§   z;test_multiindex_multi_key_not_supported.<locals>.numba_funce  r¨   r   r3   rd   rj   r©   r“   r”   r    zmore than 1 grouping labelsr"   rE   )r'   r(   r   r«   r)   ÚNotImplementedErrorr*   r+   )rB   rC   rD   r§   r�   rF   s         r   Ú'test_multiindex_multi_key_not_supportedr°   b  s’   € Ü
×Ñ˜Ô òô 
˜! !¨!Ñ,Ð-Ó	.×	8Ñ	8¸#¸s¸Ó	D€BØ!)°EÀxÑP€MÜ	�‰Ô*Ð2OÔ	Pñ 
Ø
�
‰
�C˜�:Ó×"Ñ"Ø˜w°mð 	#ô 	
÷
÷ 
ñ 
ús   Á&B
Â
Bc                 ó2  — t        j                  d«       | \  }}t        g d¢g d¢t        j                  j                  d«      j                  d«      t        j                  j                  d«      j                  d«      dœ«      }|j                  ddg«      } |j                  |fd	di|¤Ž} |j                  |fd	d
i|¤Ž}t        j                  ||«        t        ||«      dd	di|¤Ž} t        ||«      dd	d
i|¤Ž}t        j                  ||«       y )Nr   ©ÚfooÚbarr³   r´   r³   r´   r³   r³   ©Úoner¶   ÚtwoÚthreer·   r·   r¶   r¸   rd   é   ©r“   r”   rª   ÚDr“   r”   r%   rJ   rn   )r'   r(   r   r<   ÚrandomÚdefault_rngÚstandard_normalr*   r+   rL   r^   Úgetattr)	Únumba_supported_reductionsÚ	reductionÚkwargsr�   ÚgbÚres_aggÚexpected_aggÚ
direct_resÚdirect_expecteds	            r   Útest_multilabel_numba_vs_cythonrÈ   p  s  € Ü
×Ñ˜Ô Ø2Ñ€IˆvÜ	âIÚMÜ—‘×&Ñ& qÓ)×9Ñ9¸!Ó<Ü—‘×&Ñ& qÓ)×9Ñ9¸!Ó<ñ		
ó
€Bð 
�‰�S˜#�JÓ	€BØˆb�f‰f�YÑ9 wÐ9°&Ñ9€GØ�2—6‘6˜)Ñ?¨HÐ?¸Ñ?€LÜ×Ñ˜' <Ô0à'”˜˜YÓ'ÑA¨wÐA¸&ÑA€JØ,”g˜b )Ó,ÑG°HÐGÀÑG€OÜ×Ñ˜* oÕ6r   c                  ó¨  — t        j                  d«       t        g d¢g d¢t        j                  j                  d«      j                  d«      t        j                  j                  d«      j                  d«      dœ«      } | j                  ddg«      }|j                  d	„ d¬
«      }|j                  d„ d¬
«      }t        j                  ||«       y )Nr   r²   rµ   rd   r¹   rº   r“   r”   c                 ó"   — | j                  «       S rr   rv   r0   s     r   rH   z5test_multilabel_udf_numba_vs_cython.<locals>.<lambda>�  rt   r   r$   c                 ó"   — | j                  «       S rr   rv   r   s    r   rH   z5test_multilabel_udf_numba_vs_cython.<locals>.<lambda>‘  s   €  §¡£€ r   rJ   )r'   r(   r   r<   r¼   r½   r¾   r*   r+   rL   r^   )r�   rÃ   rO   rP   s       r   Ú#test_multilabel_udf_numba_vs_cythonrÌ   …  s©   € Ü
×Ñ˜Ô Ü	âIÚMÜ—‘×&Ñ& qÓ)×9Ñ9¸!Ó<Ü—‘×&Ñ& qÓ)×9Ñ9¸!Ó<ñ		
ó
€Bð 
�‰�S˜#�JÓ	€BØ�V‰VÑ6¸wˆVÓG€FØ�v‰vÑ'°ˆvÓ9€HÜ×Ñ˜& (Õ+r   ).Únumpyr<   r'   Úpandas.compatr   Úpandas.errorsr   Úpandasr   r   r   r   r	   Úpandas._testingÚ_testingrL   Úpandas.util.versionr
   ÚmarkÚ
single_cpuÚ
pytestmarkr(   r   ÚappendÚskipifÚ__version__r-   r4   ÚfilterwarningsÚparametrizerQ   r[   r_   rp   ÚparamÚxfailr{   r‚   r…   r�   rœ   r£   r¬   r°   rÈ   rÌ   rn   r   r   ú<module>rÞ      sÿ  ðÛ Û å )Ý (÷õ õ Ý 'à�k‰k×$Ñ$Ð%€
àˆ×Ñ˜GÓ$€Ø 
× Ñ Ø
‡K�K×ÑÙ�×!Ñ!Ó"¡g¨f£oÑ5ÒK¹/Ó:KØ7¸×8IÑ8IÐ7JÐKð ó ôòLò"Qð" ‡�×Ñ˜HÓ%à‡�×Ñ˜  u Ó.Ø‡�×Ñ˜¨°+Ð'>Ó?Ø‡�×Ñ˜ d¨E ]Ó3ñ&ó 4ó @ó /ó &ð
&ð4 ‡�×Ñ˜HÓ%à‡�×Ñ˜  u Ó.Ø‡�×Ñ˜¨°+Ð'>Ó?ñ$&ó @ó /ó &ð$&òN,ð  ‡�×ÑØà	�%˜�Ð Ø	�ˆØ	�e˜U�^¨Ñ.Ð/Ø	‘ ¨EÔ2Ð3ð	óñ,óð,ð  ‡�×ÑØà
Ñ4Ð	5°uÐ=àˆ�‰àÙ6Ù6ððð �EˆNØ—+‘+×#Ñ#ØKð $ó ô	
ðóñ&?ó'ð&?ð$ ‡�×ÑØØˆu�eˆnÐ ¨˜¸EÈeÑ0TÐUóñ1ó	ð1ð ‡�×ÑØ‡�×ÑØá	Ò)Ó	*¨V°e¸U°^Ð,DÐEÙ	Ò)Ó	*¨V°U¨OÐ<áÚ-²/ÑBÈQÐPQÈFôð �e˜U�^Ð$ð		
ñ Ú-²/ÑBÈQÐPQÈFôð �UˆOð		
ñ Ú-²/ÑBÈQÐPQÈFôð ˜% ˜¨EÑ2Ð3ð		
ñ Ú-²/ÑBÈQÐPQÈFôð ™¨°5Ô9Ð:ð		
ð+óñ>	1ó?ó ð@	1ò-ò$,ò,ð8 ‡�×Ñ˜HÓ%ñ,ó &ð,ò
ò7ó*,r   