Ë
    ¨ehÈ2  ã                   óÊ  — d dl Z d dlZd dlZd dlZd dlZd dlmZmZ d dlmZ d dl	Z	d dl
Z
d dl
mZ d dlmZ d dl
mZ 	 d dlmZ d dlmZ d d	lmZ dZe	j4                  d„ «       Ze	j,                  j9                  dd¬«      d„ «       Ze	j,                  j=                  dddgdfdg dfddgdfddgdfdg dfddgdfddgdfdg d ¢d!fd"g dfd#g d$fd#dgd%fgg d&¢¬'«      e	j,                  j=                  d( e	j>                  d)e	j,                  j9                  d)d¬«      ¬*«       e	j>                  de	j,                  j9                  dd¬«      ¬*«      g«      d+„ «       «       Z e	j,                  j9                  dd¬«      d,„ «       Z!e	j,                  j9                  dd¬«      d-„ «       Z"e	j,                  j9                  dd¬«      d.„ «       Z#e	j,                  j9                  dd¬«      d/„ «       Z$e	j,                  j9                  dd¬«      d0„ «       Z%e	j,                  j9                  dd¬«      d1„ «       Z&e	j,                  j9                  dd¬«      d2„ «       Z'e	j,                  j9                  d)d¬«      d3„ «       Z(d4„ Z)e	j,                  j9                  dd¬«      d5„ «       Z*e	j,                  j9                  dd¬«      d6„ «       Z+y# e$ r e	j,                  j/                  d
«      ZY �Œ‘w xY w)7é    N)ÚdateÚdatetime)Úmock)Úpyplot)ÚGcf)Ú_c_internal_utils)ÚQtGui)Ú	QtWidgets)Ú_formlayoutzNo usable Qt bindingsé<   c                 ó   — ddl m} |S )Nr   )ÚQtCore)Úmatplotlib.backends.qt_compatr   )Úrequestr   s     ú^/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/matplotlib/tests/test_backend_qt.pyÚqt_corer      s
   € å4Ø€Mó    ÚQtAggT)Úskip_on_importerrorc                  óø   — t        j                   t        j                  «      } t        j                  «       }|j
                  j                  j                  j                  «        | t        j                  k(  sJ ‚y ©N)	Úcopyr   ÚfigsÚpltÚfigureÚcanvasÚmanagerÚwindowÚclose)Ú	init_figsÚfigs     r   Útest_fig_closer"   "   sU   € ô —	‘	œ#Ÿ(™(Ó#€Iô �*‰*‹,€Cð ‡J�J×Ñ×Ñ×#Ñ#Ô%ð œŸ™Ò Ð Ñ r   zqt_key, qt_mods, answerÚKey_AÚShiftModifierÚAÚaÚControlModifierzctrl+aÚ
Key_Aacuteõ   Ã�õ   Ã¡ÚKey_ControlÚAltModifierzalt+controlÚKey_Altzctrl+alt)r'   r,   ÚMetaModifieru   ctrl+alt+meta+Ã¡ÚKey_PlayÚKey_BackspaceÚ	backspacezctrl+backspace)ÚshiftÚlowerÚcontrolÚunicode_upperÚunicode_lowerÚalt_controlÚcontrol_altÚmodifier_orderÚnon_unicode_keyr1   Úbackspace_mod)ÚidsÚbackendÚQt5Agg)Úmarksc                 óT  ‡‡
‡‡‡— ddl mŠmŠ
 t        j                  dk(  r8|�6|j                  dd«      }|j                  dd«      }|j                  dd«      }dŠ‰
j                  j                  j                  Š|D ]%  }‰t        ‰
j                  j                  |«      z  ŠŒ'  G ˆ
ˆˆfd	„d
«      }|j                  t        j                  dˆfd„«       ˆfd„}t        j                  «       j                  }	|	j!                  d|«       |	j#                   |«       «       ‰|k(  sJ ‚y)zª
    Make a figure.
    Send a key_press_event event (using non-public, qtX backend specific api).
    Catch the event.
    Assert sent and caught keys are the same.
    r   )Ú_to_intr   ÚdarwinNÚctrlÚcmdr4   Úmetac                   ó"   •— e Zd Zd„ Zˆ ˆˆfd„Zy)ú test_correct_key.<locals>._Eventc                  ó   — y)NF© )Úselfs    r   ÚisAutoRepeatz-test_correct_key.<locals>._Event.isAutoRepeat{   s   €  ur   c                 óP   •—  ‰t        ‰j                  j                  ‰«      «      S r   )ÚgetattrÚQtÚKey)rJ   r   rA   Úqt_keys    €€€r   Úkeyz$test_correct_key.<locals>._Event.key|   s   ø€ ™g¤g¨f¯i©i¯m©m¸VÓ&DÓEÐEr   N)Ú__name__Ú
__module__Ú__qualname__rK   rQ   )r   rA   rP   s   €€€r   Ú_EventrG   z   s	   ø„ Ú,ßEr   rU   ÚkeyboardModifiersc                 ó   •— ‰S r   rI   )rJ   Úqt_mods    €r   ú<lambda>z"test_correct_key.<locals>.<lambda>   s   ø€  V€ r   c                 ó   •— | j                   Šy r   )rQ   )ÚeventÚresults    €r   Úon_key_pressz&test_correct_key.<locals>.on_key_press�   s   ø€ à—‘‰r   Úkey_press_event)r   rA   r   ÚsysÚplatformÚreplacerN   ÚKeyboardModifierÚ
NoModifierrM   Úsetattrr
   ÚQApplicationr   r   r   Úmpl_connectÚkeyPressEvent)r=   r   rP   Úqt_modsÚanswerÚmonkeypatchÚmodrU   r]   Ú	qt_canvasr   rA   rX   r\   s     `       @@@@r   Útest_correct_keyrm   4   sÿ   ü€ ÷v >ä
‡|�|�xÒ FÐ$6Ø—‘ ¨Ó.ˆØ—‘ 	¨5Ó1ˆØ—‘ ¨Ó/ˆØ€FØ�Y‰Y×'Ñ'×2Ñ2€FØò ;ˆØ”'˜&Ÿ)™)×4Ñ4°cÓ:Ñ:‰ð;÷Fõ Fð ×Ñœ	×.Ñ.Ð0CÛ+ô-ôô —
‘
“×#Ñ#€IØ×ÑÐ+¨\Ô:Ø×Ñ™F›HÔ%Ø�VÒÐÑr   c                  ó¸  ‡‡‡— d} t        j                  | «      5 Šd‰_        t        j                  dd¬«      }|j
                  Š‰j                  «        ˆˆˆfd„}‰j                  j                  «        ‰j                  «       }‰j                  «       j                  «       j                  «       Š |d«       |j                  dk(  sJ ‚‰j                  j                  dk(  sJ ‚‰j                  j                  d	k(  sJ ‚|j                  «       d
k(  sJ ‚|j                  «       dk(  sJ ‚‰j!                  «       dk(  sJ ‚|j#                  «       dk(  j%                  «       sJ ‚ |d«       |j                  dk(  sJ ‚‰j                  j                  dk(  sJ ‚‰j                  j                  dk(  sJ ‚|j                  «       d
k(  sJ ‚|j                  «       dk(  sJ ‚‰j!                  «       dk(  sJ ‚|j#                  «       dk(  j%                  «       sJ ‚ |d«       |j                  dk(  sJ ‚‰j                  j                  dk(  sJ ‚‰j                  j                  dk(  sJ ‚|j                  «       d
k(  sJ ‚|j                  «       dk(  sJ ‚‰j!                  «       dk(  sJ ‚|j#                  «       dk(  j%                  «       sJ ‚	 ddd«       y# 1 sw Y   yxY w)z}
    Make sure that if the pixel ratio changes, the figure dpi changes but the
    widget remains the same logical size.
    z?matplotlib.backends.backend_qt.FigureCanvasQT.devicePixelRatioFé   )é   é   éx   )ÚfigsizeÚdpic                 ó¬   •— | ‰_         ‰j                  j                  d«       ‰j                  «        ‰j	                  «        ‰j
                  | k(  sJ ‚y )Né`   )Úreturn_valueÚlogicalDotsPerInchChangedÚemitÚdrawÚflush_eventsÚdevice_pixel_ratio)ÚratioÚprl   Úscreens    €€€r   Úset_device_pixel_ratioz>test_device_pixel_ratio_change.<locals>.set_device_pixel_ratioš   sL   ø€ Ø"ˆAŒNð ×,Ñ,×1Ñ1°"Ô5à�N‰NÔØ×"Ñ"Ô$ð ×/Ñ/°5Ò8Ð8Ñ8r   ih  i  iÐ  éX  éð   )r�   r‚   rq   i°  ià  g      ø?é´   i„  N)r   Úpatchrw   r   r   r   Úshowr   Úsizer   ÚwindowHandler   rt   ÚrendererÚwidthÚheightÚget_width_heightÚget_size_inchesÚall)Úpropr!   r€   r†   r~   rl   r   s       @@@r   Útest_device_pixel_ratio_changer�   ‹   s«  ú€ ð M€DÜ	�‰�DÓ	ð >7˜QØˆŒä�j‰j ¨SÔ1ˆØ—J‘Jˆ	Ø�‰Ôö	9ð 	×Ñ×ÑÔ Ø�~‰~ÓˆØ×!Ñ!Ó#×0Ñ0Ó2×9Ñ9Ó;ˆÙ˜qÔ!ð �w‰w˜#Š~Ðˆ~Ø×!Ñ!×'Ñ'¨4Ò/Ð/Ð/Ø×!Ñ!×(Ñ(¨CÒ/Ð/Ð/ð �z‰z‹|˜sÒ"Ð"Ð"Ø�{‰{‹} Ò#Ð#Ð#Ø×)Ñ)Ó+¨zÒ9Ð9Ð9Ø×#Ñ#Ó%¨Ñ/×4Ñ4Ô6Ð6Ð6á˜qÔ!ð �w‰w˜#Š~Ðˆ~Ø×!Ñ!×'Ñ'¨4Ò/Ð/Ð/Ø×!Ñ!×(Ñ(¨CÒ/Ð/Ð/ð �z‰z‹|˜sÒ"Ð"Ð"Ø�{‰{‹} Ò#Ð#Ð#Ø×)Ñ)Ó+¨zÒ9Ð9Ð9Ø×#Ñ#Ó%¨Ñ/×4Ñ4Ô6Ð6Ð6á˜sÔ#ð �w‰w˜#Š~Ðˆ~Ø×!Ñ!×'Ñ'¨3Ò.Ð.Ð.Ø×!Ñ!×(Ñ(¨CÒ/Ð/Ð/ð �z‰z‹|˜sÒ"Ð"Ð"Ø�{‰{‹} Ò#Ð#Ð#Ø×)Ñ)Ó+¨zÒ9Ð9Ð9Ø×#Ñ#Ó%¨Ñ/×4Ñ4Ô6Ð6Ñ6÷}>7÷ >7ñ >7ús   ›J+KËKc                  óæ   — t        j                  «       \  } }t        j                  dd„ «      5  | j                  j
                  j                  j                  «        d d d «       y # 1 sw Y   y xY w)Nú#matplotlib.backends.qt_compat._execc                  ó   — y r   rI   ©Úobjs    r   rY   z"test_subplottool.<locals>.<lambda>×   ó   � r   )r   Úsubplotsr   r„   r   r   ÚtoolbarÚconfigure_subplots©r!   Úaxs     r   Útest_subplottoolr›   Ô   sR   € ä�l‰l‹n�G€CˆÜ	�‰Ð9Ñ;KÓ	Lñ 8Ø�
‰
×Ñ×"Ñ"×5Ñ5Ô7÷8÷ 8ñ 8ús   ¯/A'Á'A0c                  ó�  — t        j                  «       \  } }|j                  ddg«       |j                  dgg«       |j	                  t        d«      t        d«      t        d«      ¬«       t        j                  dd„ «      5  | j                  j                  j                  j                  «        d d d «       y # 1 sw Y   y xY w)Né   rq   ro   )Úcr‘   c                  ó   — y r   rI   r“   s    r   rY   z$test_figureoptions.<locals>.<lambda>á   r•   r   )r   r–   ÚplotÚimshowÚscatterÚranger   r„   r   r   r—   Úedit_parametersr™   s     r   Útest_figureoptionsr¥   Û   s�   € ä�l‰l‹n�G€CˆØ‡G�GˆQ�ˆF„OØ‡I�I�ˆsˆeÔØ‡J�JŒu�Q‹xœ˜q›¤U¨1£X€JÔ.Ü	�‰Ð9Ñ;KÓ	Lñ 5Ø�
‰
×Ñ×"Ñ"×2Ñ2Ô4÷5÷ 5ñ 5ús   Â/B<Â<Cc                  ó  — t        j                  «       \  } }|j                  dgg«       d}t        j                  |d¬«      5  | j
                  j                  j                  j                  «       }t        j                  d«       |dk(  sJ ‚	 d d d «       t        j                  |d¬«      5  | j
                  j                  j                  j                  «       }|�J ‚	 d d d «       y # 1 sw Y   Œ]xY w# 1 sw Y   y xY w)Nr�   zCmatplotlib.backends.qt_compat.QtWidgets.QFileDialog.getSaveFileName)ú
foobar.pngN)rw   r§   )NN)r   r–   r¡   r   r„   r   r   r—   Úsave_figureÚosÚremove)r!   rš   rŽ   Úfnames       r   Útest_save_figure_returnr¬   å   sÔ   € ä�l‰l‹n�G€CˆØ‡I�I�ˆsˆeÔØP€DÜ	�‰�DÐ';Ô	<ñ %Ø—
‘
×"Ñ"×*Ñ*×6Ñ6Ó8ˆÜ
�	‰	�,ÔØ˜Ò$Ð$Ñ$÷%ô 
�‰�D |Ô	4ñ Ø—
‘
×"Ñ"×*Ñ*×6Ñ6Ó8ˆØˆ}Ð‰}÷ð ÷	%ð %ú÷ð ús   ÁAC,Â/3C8Ã,C5Ã8Dc                  óB  — t        j                  «       \  } }t        ddd¬«      t        ddd¬«      g}|j                  ||«       t	        j
                  dd„ «      5  | j                  j                  j                  j                  «        d d d «       y # 1 sw Y   y xY w)Néå  r�   ©ÚyearÚmonthÚdayrq   r‘   c                  ó   — y r   rI   r“   s    r   rY   z7test_figureoptions_with_datetime_axes.<locals>.<lambda>û   r•   r   )
r   r–   r   r    r   r„   r   r   r—   r¤   )r!   rš   Úxydatas      r   Ú%test_figureoptions_with_datetime_axesrµ   ó   s�   € ä�l‰l‹n�G€Cˆä�d !¨Ô+Ü�d !¨Ô+ð€Fð ‡G�GˆF�FÔÜ	�‰Ð9Ñ;KÓ	Lñ 5Ø�
‰
×Ñ×"Ñ"×2Ñ2Ô4÷5÷ 5ñ 5ús   Á/BÂBc                  óX  — t        j                  «       \  } }| j                  j                  «        | j                  j                  j
                  }d\  }}| j                  ||«       | j                  j                  «       |t        j                  d   z  k(  sJ ‚| j                  j                  «       |t        j                  d   z  k(  sJ ‚|j                  «       }|j                  «       }| j                  ||«       |j                  «       |k(  sJ ‚|j                  «       |k(  sJ ‚y )N)ro   rq   z
figure.dpi)r   r–   r   rz   r   r   Úset_size_inchesr‰   Ú
matplotlibÚrcParamsrŠ   )r!   rš   r   ÚwÚhÚ	old_widthÚ
old_heights          r   Útest_double_resizer¾   ÿ   só   € ô �l‰l‹n�G€CˆØ‡J�J‡O�OÔØ�Z‰Z×Ñ×&Ñ&€Fà�D€A€qØ×Ñ˜˜1ÔØ�:‰:×ÑÓ ¤Z×%8Ñ%8¸Ñ%FÑ!FÒFÐFÐFØ�:‰:×ÑÓ !¤j×&9Ñ&9¸,Ñ&GÑ"GÒGÐGÐGà—‘“€IØ—‘“€Jà×Ñ˜˜1ÔØ�<‰<‹>˜YÒ&Ð&Ð&Ø�=‰=‹?˜jÒ(Ð(Ñ(r   c                  ó‚   ‡— ddl m}  dŠˆfd„}t        j                  «       \  }}||_         | |«      }d|_        ‰sJ ‚y )Nr   )ÚFigureCanvasQTAggFc                 ó>   •— | j                   j                  «        dŠy )NT)r   Ú	draw_idle)r!   ÚstaleÚcalleds     €r   Úcrashing_callbackz-test_canvas_reinit.<locals>.crashing_callback  s   ø€ à�
‰
×ÑÔØ‰r   T)Ú!matplotlib.backends.backend_qtaggrÀ   r   r–   Ústale_callbackrÃ   )rÀ   rÅ   r!   rš   r   rÄ   s        @r   Útest_canvas_reinitrÈ     sA   ø€ åCà€Fôô
 �l‰l‹n�G€CˆØ*€CÔá˜sÓ#€FØ€C„IÙ€M‰6r   c                  ó
  — ddl m}   | «        dt        ddd¬«      fdt        ddd¬«      fg}t	        j
                  |«      }|j                  «        |j                  «       }|t        ddd¬«      t        ddd¬«      gk(  sJ ‚y )	Nr   )Ú_create_qAppzDatetime fieldr®   ro   é   r¯   z
Date field)Úmatplotlib.backends.backend_qtrÊ   r   r   r   Ú
FormWidgetÚsetupÚget)rÊ   ÚformÚwidgetÚvaluess       r   Ú2test_form_widget_get_with_datetime_and_date_fieldsrÓ   &  sŠ   € å;Ù„Nð 
œ8¨°Q¸BÔ?Ð@Ø	”t ¨Q°BÔ7Ð8ð€Dô ×#Ñ# DÓ)€FØ
‡L�L„NØ�Z‰Z‹\€FØÜ�d !¨Ô,Ü�$˜a RÔ(ðò ð ñ r   c            
      ó~  — g } dD �cg c]
  }|gd|dœf‘Œ c}D �]  \  }}d }|D �cg c]$  }t         j                  j                  |«      rŒ#|‘Œ& }}t        j                  dk(  rt        j                  «       sd}nL|r!dj                  dj                  |«      «      }n)|d   d	k(  r!t        j                  j                  d
«      rd}g }|r5|j                  t        j                  j                  d|› d|› �¬«      «       | j                  t        j                   ||t#        |«      ¬«      «       �Œ | S c c}w c c}w )N)ÚPyQt6ÚPySide6ÚPyQt5ÚPySide2Úqtagg)Ú
MPLBACKENDÚQT_APIÚlinuxz'$DISPLAY and $WAYLAND_DISPLAY are unsetz{} cannot be importedz, rÚ   ÚmacosxÚTF_BUILDzmacosx backend fails on Azurez	Skipping z	 because )Úreason)r?   Úid)Ú	importlibÚutilÚ	find_specr_   r`   r   Údisplay_is_validÚformatÚjoinr©   ÚenvironrÏ   ÚappendÚpytestÚmarkÚskipÚparamÚstr)ÚenvsÚqt_apiÚdepsÚenvrß   ÚdepÚmissingr?   s           r   Ú_get_testable_qt_backendsrô   8  s,  € Ø€Dð Cöàð ˆX g¸Ñ@ÒAòó A‰	ˆˆcð ˆØ"&ÖL˜3¬i¯n©n×.FÑ.FÀsÕ.K’3ÐLˆÐLÜ�L‰L˜GÒ#Ü%×6Ñ6Ô8Ø>‰FÙØ,×3Ñ3°D·I±I¸gÓ4FÓG‰FØ�Ñ (Ò*¬r¯z©z¯~©~¸jÔ/IØ4ˆFØˆÙØ�L‰LœŸ™×)Ñ)Ø" 3 % y°°Ð9ð *ó ;ô <à�‰”F—L‘L ¨E´c¸#³hÔ?Ö@ð#Að$ €Kùò%ùò
 Ms   ‡D5¦$D:ÁD:c                 óÀ  ‡ ‡— ddl m} t        j                  «        d Šˆˆ fd„}‰ j                  j                  d|«       t        j                  t        j                  «      }d„ }t        j                  t        j                  |«       	 t        j                  j                  j                  j                  «        ‰|k7  sJ ‚t        j                  t        j                  «      |k(  sJ ‚t        j                  t        j                  fD ]�  }‰ j                  j                  d|«       t        j                  t        j                  |«       |j                  «        ‰|k(  sJ ‚t        j                  t        j                  «      |k(  rŒ�J ‚ 	 t        j                  t        j                  |«       y # t        j                  t        j                  |«       w xY w)Nr   )Ú_BackendQT5c                  ó€   •— t        j                  t         j                  «      Š ‰j                  j	                  «        y r   )ÚsignalÚ	getsignalÚSIGINTÚQCoreApplicationÚexit)Úevent_loop_handlerr   s   €€r   Úfire_signal_and_quitz6test_fig_sigint_override.<locals>.fire_signal_and_quitY  s.   ø€ ô $×-Ñ-¬f¯m©mÓ<Ðð 	× Ñ ×%Ñ%Õ'r   c                  ó   — y r   rI   )ÚsignumÚframes     r   Úcustom_handlerz0test_fig_sigint_override.<locals>.custom_handlerh  s   € Ør   )Úmatplotlib.backends.backend_qt5rö   r   r   ÚQTimerÚ
singleShotrø   rù   rú   r¸   ÚbackendsÚ
backend_qtÚ
_BackendQTÚmainloopÚSIG_DFLÚSIG_IGN)r   rö   rþ   Úoriginal_handlerr  rý   s   `    @r   Útest_fig_sigint_overrider  O  s^  ù€ å;ä‡J�J„Lð Ðõ(ð ‡N�N×Ñ˜aÐ!5Ô6ô ×'Ñ'¬¯©Ó6Ðòô ‡M�M”&—-‘- Ô0ð7ô 	×Ñ×&Ñ&×1Ñ1×:Ñ:Ô<ð " ^Ò3Ð3Ð3ô ×Ñ¤§¡Ó.°.Ò@Ð@Ð@ô  &Ÿ~™~¬v¯~©~Ð>ò 	EˆNØ�N‰N×%Ñ% aÐ)=Ô>Ü�M‰Mœ&Ÿ-™-¨Ô8à× Ñ Ô"à%¨Ò7Ð7Ð7Ü×#Ñ#¤F§M¡MÓ2°nÓDÐDÐDñ	Eô 	�‰”f—m‘mÐ%5Õ6øŒ�‰”f—m‘mÐ%5Õ6ús   ÂDF7 ÆF7 Æ7&Gc                  ó*   — ddl m}   | dddddœ«       y )Nr   ©Úipython_in_subprocessÚqtrÙ   r   r>   ))é   é   )r  é   )é   r   )Úmatplotlib.testingr  r  s    r   Útest_ipythonr  ˆ  s   € å8Ù˜$¨'¸GÈXÑ VÕWr   ),r   rá   r©   rø   r_   r   r   Úunittestr   ré   r¸   r   r   Úmatplotlib._pylab_helpersr   r   r   r	   r
   Úmatplotlib.backends.qt_editorr   ÚImportErrorrê   rë   Ú
pytestmarkÚ_test_timeoutÚfixturer   r=   r"   Úparametrizerì   rm   r�   r›   r¥   r¬   rµ   r¾   rÈ   rÓ   rô   r  r  rI   r   r   ú<module>r      s  ðÛ Û Û 	Û Û 
ç #Ý ã ã Ý $Ý )Ý (ð;Ý3Ý7Ý9ð
 €ð ‡�ñó ðð
 ‡�×Ñ�W°$ÐÓ7ñ!ó 8ð!ð" ‡�×ÑØà	�?Ð# SÐ)Ø	�"�cÐØ	Ð$Ð%¨Ð2àØÐØ3ð	
ð
 
�rÐ@ÐAØ	˜˜¨-Ð9Ø	Ð&Ð'¨Ð4àÚ>Ø@ð	
ð 
�R˜ÐØ	˜"˜kÐ*àØÐØð	
ð+ò6	ð; ó *ðV ‡�×Ñ˜à€F‡L�LØØ�k‰k×!Ñ! (ÀÐ!ÓEôGð €F‡L�LØØ�k‰k×!Ñ! '¸tÐ!ÓDôFð%ó ñ óóW*ðh ðF ‡�×Ñ�W°$ÐÓ7ñE7ó 8ðE7ðP ‡�×Ñ�W°$ÐÓ7ñ8ó 8ð8ð ‡�×Ñ�W°$ÐÓ7ñ5ó 8ð5ð ‡�×Ñ�W°$ÐÓ7ñ
ó 8ð
ð ‡�×Ñ�W°$ÐÓ7ñ5ó 8ð5ð ‡�×Ñ�W°$ÐÓ7ñ)ó 8ð)ð& ‡�×Ñ�W°$ÐÓ7ñó 8ðð$ ‡�×Ñ�X°4ÐÓ8ñó 9ðò"ð. ‡�×Ñ�W°$ÐÓ7ñ57ó 8ð57ðp ‡�×Ñ�W°$ÐÓ7ñXó 8ñXøði ò ;Ø—‘×!Ñ!Ð"9Ó:ƒJð;ús   ¾J> Ê> K"Ë!K"