§
    JY³jý#  ã                   óh  — d Z ddlZddlZddlZddlZddlZej                             ej                             ej         	                    e
¦  «        ¦  «        ¦  «        Zej                             edd¦  «        Zej                             edd¦  «        Zej                             edd¦  «        Zej                             d¦  «        ZdZd	Zdad
„ Zd'd„Zd„ Zd„ Zd„ Z G d„ de¦  «        Z G d„ de¦  «        Zd(d„Zd„ Zd„ Z e!dk    rŸdej"        v Z# ee#¬¦  «        Z$ e% ej&        d„ e$ '                    ¦   «         D ¦   «         dd¬¦  «        ¦  «         e$ (                    d¦  «        pg dd…         D ]4Z) e%de)d          d!›d"e)d#         ›d$e)d%         ›de)d&         ›�¦  «         Œ3dS dS ))u†  
é¡ºä¸°ç‰©æµ�ã€ŒæŒ‰éœ€åˆ·æ–°ã€�æœ�åŠ¡ â€”â€” ä¾›è®¢å�•ç®¡ç�†é¡µã€ŒðŸ”„ åˆ·æ–°ç‰©æµ�ã€�æŒ‰é’® + è¿›é¡µè‡ªåŠ¨åˆ·æ–°è°ƒç”¨ã€‚

è®¾è®¡è¦�ç‚¹
--------
1. å�ªæŸ¥æœªç­¾æ”¶è¿�å�•ï¼ˆå½“å‰� ~74 æ�¡ï¼‰ï¼Œ**é€�æ�¡**æŸ¥è¯¢ï¼ˆé¡ºä¸°æŽ¥å�£æ‰¹é‡�ä¼ å¤šå�·æ—¶å�ªæ ¡éªŒç¬¬ä¸€ä¸ªï¼Œç¦�æ­¢æ‰¹é‡�ï¼‰
   â†’ å®žæµ‹ 12 ç§’è·‘å®Œã€‚
2. **ç›´æŽ¥è¿”å›žåˆ·æ–°ç»“æžœç»™å‰�ç«¯å�ˆå¹¶**ï¼šå·¥ä½œå�°èµ° CDN æ—¶è¯»çš„æ˜¯ CDN ä¸Šé‚£ä»½ shipment_status.jsonï¼Œ
   å…‰å†™æœ¬åœ°æ–‡ä»¶å‰�ç«¯æ˜¯çœ‹ä¸�åˆ°çš„ â†’ è¿”å›žä½“é‡Œå¸¦ orders[]ï¼Œå‰�ç«¯æŒ‰ trackingNo å�ˆå¹¶è¿›å†…å­˜å�Žé‡�æ¸²æŸ“ã€‚
3. å�Œæ—¶å†™å›žæœ¬åœ° `æ•°æ�®/shipment_status.json`ï¼ˆåŽŸå­�æ›¿æ�¢ï¼‰ï¼Œè®© 2 å°�æ—¶ä¸€æ¬¡çš„ cb_sync.sh
   æŠŠæœ€æ–°çŠ¶æ€�å¸¦ä¸Š CDNï¼Œæƒ å�Šå…¶å®ƒæ¶ˆè´¹è€…ï¼ˆæ—¥æŠ¥ç­‰ï¼‰ã€‚
4. å¹¶å�‘ä¿�æŠ¤ï¼šæ–‡ä»¶é”�ï¼ˆä¸¤ä¸ªé”€å”®å�Œæ—¶ç‚¹å�ªè·‘ä¸€æ¬¡ï¼‰+ å†·å�´ï¼ˆé»˜è®¤ 120s å†…å¤�ç”¨ä¸Šæ¬¡ç»“æžœï¼Œforce=1 è·³è¿‡ï¼‰ã€‚
5. âš ï¸� æ•…æ„�**ä¸�å†™** `~/.hermes/scripts/sf_watchdog_state.json`ï¼šé‚£æ˜¯æœ‰çŠ¶æ€�æŽ¨é€�çš„è®°å¿†æ–‡ä»¶ï¼Œ
   ç”± cron çš„ watchdog è´Ÿè´£ã€‚è‹¥è¿™é‡Œå…ˆå†™äº†çŠ¶æ€�ï¼Œwatchdog ä¼šè®¤ä¸º"å·²æŽ¨è¿‡"è€Œå�žæŽ‰
   ã€Œå·²ç­¾æ”¶ / æ´¾é€�ä¸­ã€�çš„é£žä¹¦é€šçŸ¥ â€”â€” é”€å”®å°±æ”¶ä¸�åˆ°æ��é†’äº†ã€‚
é    Nu   æ•°æ�®zshipment_status.jsonz.shipment_refresh.lockz.shipment_refresh_last.jsonz)~/.hermes/scripts/sf_delivery_watchdog.pyéx   g{®Gáz”?c                  óÞ   — t           €`t          j                             dt          ¦  «        } t          j                             | ¦  «        }| j                             |¦  «         |a t           S )ut   å¤�ç”¨ watchdog çš„é¡ºä¸°æŸ¥è¯¢ä¸ŽçŠ¶æ€�åˆ¤å®šï¼ˆopCode ä¼˜å…ˆ + å·²æ´¾é€�æˆ�åŠŸâ‰ æ´¾é€�ä¸­çš„é“�å¾‹éƒ½åœ¨é‚£è¾¹ï¼‰NÚsf_watchdog)Ú_wdÚ	importlibÚutilÚspec_from_file_locationÚWATCHDOGÚmodule_from_specÚloaderÚexec_module)ÚspecÚms     õG   /Users/liuxinyuan/Desktop/Hermesè¾“å‡º-å·¥ä½œç±»/è„šæœ¬/shipment_api.pyÚ	_watchdogr   %   sU   € õ €{ÝŒ~×5Ò5°mÅXÑNÔNˆÝŒN×+Ò+¨DÑ1Ô1ˆØŒ×Ò Ñ"Ô"Ð"ØˆÝ€Jó    c                 ó¦   — 	 t          | d¬¦  «        5 }t          j        |¦  «        cd d d ¦  «         S # 1 swxY w Y   d S # t          $ r |cY S w xY w)Núutf-8©Úencoding)ÚopenÚjsonÚloadÚ	Exception)ÚpathÚdefaultÚfs      r   Ú
_read_jsonr   0   sª   € ðÝ�$ Ð)Ñ)Ô)ð 	 ¨QÝ”9˜Q‘<”<ð	 ð 	 ð 	 ð 	 ñ 	 ô 	 ð 	 ð 	 ð 	 ð 	 ð 	 ð 	 øøøð 	 ð 	 ð 	 ð 	 ð 	 ð 	 øåð ð ð Øˆˆˆðøøøs,   ‚A “4§A ´8¸A »8¼A ÁAÁAc                 ó¼   — | dz   }t          |dd¬¦  «        5 }t          j        ||d¬¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        || ¦  «         d S )Nz.tmpÚwr   r   F)Úensure_ascii)r   r   ÚdumpÚosÚreplace)r   ÚobjÚtmpr   s       r   Ú_write_json_atomicr'   8   s¡   € Ø
�‰-€CÝ	ˆc�3 Ð	)Ñ	)Ô	)ð .¨QÝŒ	�#�q uÐ-Ñ-Ô-Ð-ð.ð .ð .ñ .ô .ð .ð .ð .ð .ð .ð .øøøð .ð .ð .ð .å„Jˆs�DÑÔÐÐÐs   ˜<¼A ÁA c                  ó`   — t          t          ¦  «        pi } t          | t          ¦  «        r| ni S ©N)r   ÚLASTÚ
isinstanceÚdict)Úds    r   Ú
_load_lastr.   ?   s-   € Ý•4ÑÔÐ˜B€AÝ˜1�dÑ#Ô#Ð+ˆ1ˆ1¨Ð+r   c                  óP  — t          t          ¦  «        pi } |                      d¦  «        pg }d„ |D ¦   «         }t          ¦   «         }d|                      d¦  «        pdt	          |¦  «        t	          |¦  «        |                     d¦  «        pd|                     d¦  «        dœS )	u3   å½“å‰�ç‰©æµ�æ•°æ�®çš„æ–°é²œåº¦ï¼ˆä¸�è§¦å�‘æŸ¥è¯¢ï¼‰Úordersc                 óÀ   — g | ][}|                      d ¦  «        pd                     ¦   «         r0|                      d¦  «        pi                       d¦  «        dk    ¯Y|‘Œ\S ©Ú
trackingNoÚ ÚshipmentÚstatusÚ	delivered©ÚgetÚstrip©Ú.0Úos     r   ú
<listcomp>zsummary.<locals>.<listcomp>H   ss   € ð Hð Hð H�! !§%¢%¨Ñ"5Ô"5Ð";¸×!BÒ!BÑ!DÔ!Dð HØ—’�zÑ"Ô"Ð( b×-Ò-¨hÑ7Ô7¸;ÒFÐFð ØFÐFÐFr   TÚ
updated_atr4   ÚatÚelapsed)Úokr?   ÚtotalÚpendingÚlast_refresh_atÚlast_elapsed)r   ÚSHIPr9   r.   Úlen)Úshipr0   ÚpendÚlasts       r   ÚsummaryrL   D   s®   € å•dÑÔÐ!˜r€DØ�XŠX�hÑÔÐ% 2€FðHð H�vð Hñ Hô H€Då‰<Œ<€DàØ—h’h˜|Ñ,Ô,Ð2°Ý�V‘”Ý�t‘9”9ØŸ8š8 D™>œ>Ð/¨RØŸš Ñ+Ô+ðð ð r   c                   ó   — e Zd ZdS )Ú_BusyN)Ú__name__Ú
__module__Ú__qualname__© r   r   rN   rN   U   s   € € € € € Ø€Dr   rN   c                   ó    — e Zd Zd„ Zd„ Zd„ ZdS )Ú	_FileLockc                 ó"   — || _         d | _        d S r)   )r   Úfh)Úselfr   s     r   Ú__init__z_FileLock.__init__Z   s   € ØˆŒ	ØˆŒˆˆr   c                 ó  — t          | j        d¦  «        | _        	 dd l}|                     | j        |j        |j        z  ¦  «         n<# t          $ r/ | j                             ¦   «          d | _        t          ¦   «         ‚w xY w| S )Nr    r   )
r   r   rV   ÚfcntlÚflockÚLOCK_EXÚLOCK_NBr   ÚcloserN   )rW   rZ   s     r   Ú	__enter__z_FileLock.__enter__^   s†   € Ý�t”y #Ñ&Ô&ˆŒð	ØˆLˆLˆLØ�KŠK˜œ ¤°´Ñ!>Ñ?Ô?Ð?Ð?øÝð 	ð 	ð 	ØŒG�MŠM‰OŒOˆOØˆDŒGÝ‘'”'ˆMð	øøøð ˆs   œ,A	 Á	9Bc                 óè   — 	 dd l }| j        r |                     | j        |j        ¦  «         n# t          $ r Y nw xY w	 | j        r| j                             ¦   «          d S d S # t          $ r Y d S w xY w)Nr   )rZ   rV   r[   ÚLOCK_UNr   r^   )rW   ÚarZ   s      r   Ú__exit__z_FileLock.__exit__i   s¡   € ð	ØˆLˆLˆLØŒwð 4Ø—’˜DœG U¤]Ñ3Ô3Ð3øøÝð 	ð 	ð 	ØˆDð	øøøð	ØŒwð  Ø”—’‘”���ð ð  øåð 	ð 	ð 	ØˆDˆDð	øøøs   ‚+. ®
;º;¿ A# Á#
A1Á0A1N)rO   rP   rQ   rX   r_   rc   rR   r   r   rT   rT   Y   sA   € € € € € ðð ð ð	ð 	ð 	ðð ð ð ð r   rT   Fc                 óŽ  — t          ¦   «         }t          j        ¦   «         }| s˜|                     d¦  «        rƒ|t          |                     d¦  «        pd¦  «        z
  t          k     rSt          |¦  «        }d|d<   d|d<   t          |t          |                     d¦  «        pd¦  «        z
  d¦  «        |d<   |S 	 t          t          ¦  «        5  t          | ¦  «        cd	d	d	¦  «         S # 1 swxY w Y   d	S # t          $ r@ |                     d¦  «        r"t          |¦  «        }d|d<   d|d
<   d|d<   |cY S ddddœcY S w xY w)u`   åˆ·æ–°æœªç­¾æ”¶è¿�å�•çš„é¡ºä¸°è½¨è¿¹ã€‚è¿”å›ž {ok, checked, ok_count, changed, orders[...], ...}r0   Útsr   TrB   Úcooldowné   ÚageNÚbusyFu!   æ­£åœ¨åˆ·æ–°ä¸­ï¼Œè¯·ç¨�å€™é‡�è¯•)rB   ri   Úerror)r.   Útimer9   ÚfloatÚCOOLDOWN_SECr,   ÚroundrT   ÚLOCKÚ_refresh_lockedrN   )ÚforcerK   ÚnowÚouts       r   Úrefreshrt   w   s¥  € å‰<Œ<€DÝ
Œ)‰+Œ+€Cð ð �T—X’X˜hÑ'Ô'ð ¨Sµ5¸¿ºÀ$¹¼Ð9LÈ1Ñ3MÔ3MÑ-MÕQ]Ò,]Ð,]Ý�4‰jŒjˆØˆˆD‰	ØˆˆJ‰Ý˜3¥ t§x¢x°¡~¤~Ð':¸Ñ!;Ô!;Ñ;¸QÑ?Ô?ˆˆE‰
Øˆ
ðYÝ•t‰_Œ_ð 	*ð 	*Ý" 5Ñ)Ô)ð	*ð 	*ð 	*ð 	*ñ 	*ô 	*ð 	*ð 	*ð 	*ð 	*ð 	*ð 	*øøøð 	*ð 	*ð 	*ð 	*ð 	*ð 	*øåð Yð Yð Yà�8Š8�HÑÔð 	Ý�t‘*”*ˆCØˆC�‰IØˆC�‰KØ"ˆC�
‰OØˆJˆJˆJØ TÐ4WÐXÐXÐXÐXÐXðYøøøs<   Â=C: ÃC-Ã C: Ã-C1Ã1C: Ã4C1Ã5C: Ã:?EÄ;EÅEc                 óP  — 	 ddl }ddl}|j                             |j                             t
          ¦  «        ¦  «        }||j        vr|j                             d|¦  «         ddl}|                     | ¦  «         dS # t          $ r}t          d|¦  «         Y d}~dS d}~ww xY w)uN  å…œåº•ï¼šä»»ä½•å†™å›ž shipment_status.json çš„è·¯å¾„éƒ½ä¿�è¯� ERP é¢„è®¡å�‘è´§æ—¥æœŸå­—æ®µåœ¨ã€‚

    æ•™è®­ï¼ˆ2026-09-23ï¼‰ï¼šé¡ºä¸° 12 ç‚¹ cron çš„ç®¡é�“å­�è¿›ç¨‹åœ¨æˆ‘æ”¹ç �å‰�å�¯åŠ¨ï¼Œå†™å‡ºæ—  planShipDate çš„ç‰ˆæœ¬ï¼Œ
    watchdog å�ˆæŠŠå®ƒå†™å›ž â†’ é¡µé�¢ã€Œé¢„è®¡å�‘è´§ã€�åˆ—å…¨ç©ºã€‚æ‰€æœ‰å†™å›žè·¯å¾„éƒ½è¦�å…œä¸€å±‚ã€‚
    r   Nu%   âš ï¸� è¡¥æŒ‚ ERP å�‘è´§æ—¥æœŸå¤±è´¥:)Úsysr#   r   ÚdirnameÚabspathÚ__file__ÚinsertÚshipment_pipelineÚattach_erp_ship_datesr   Úprint)r0   Ú_sÚ_oÚ_dÚ_spÚ_es         r   Ú_ensure_plan_datesrƒ   ’   sË   € ð;Ø"Ð"Ð"Ð"Ð"Ð"Ð"Ð"ØŒW�_Š_˜RœWŸ_š_­XÑ6Ô6Ñ7Ô7ˆØ�R”WÐÐØŒG�NŠN˜1˜bÑ!Ô!Ð!Ø'Ð'Ð'Ð'Ø×!Ò! &Ñ)Ô)Ð)Ð)Ð)øÝð ;ð ;ð ;ÝÐ5°rÑ:Ô:Ð:Ð:Ð:Ð:Ð:Ð:Ð:øøøøð;øøøs   ‚A<B  Â 
B%Â
B Â B%c                 óð  — t          ¦   «         }t          t          ¦  «        pi }|                     d¦  «        pg }d„ |D ¦   «         }t	          j        ¦   «         }|                     ¦   «         }|sdddœS i }d}|D �]4}	|	                     d¦  «        pd                     ¦   «         }
	 |                     |
g||                     |	¦  «        ¦  «        }|                     d	¦  «        r3|                     d
i ¦  «                             dg ¦  «        pi gd         ni }| 	                    |                     dg ¦  «        |                     dd¦  «        ¦  «        \  }}|dvr#|||                     dg ¦  «        pg f||
<   |dz  }n# t          $ r Y nw xY wt	          j        t          ¦  «         �Œ6g }g }d„ |D ¦   «         }|                     ¦   «         D �]š\  }
\  }}}|j                             |d¦  «        \  }}|sŒ+|                     |
¦  «        }	|	sŒC|	                     d¦  «        pi                      d¦  «        pd}|	                     d¦  «        pi }|
|d<   ||d<   ||d<   |r||d<   |r||d<   t          |¦  «        |d<   ||d<   ||	d<   ||k    r{|                     |
||||	                     d¦  «        pd|	                     d¦  «        pd|	                     d¦  «        pd|pi                      dd¦  «        d d…         dœ¦  «         |                     |
|||||                     d¦  «        pd|	                     d¦  «        pdt	          j        d ¦  «        d!œ¦  «         �Œœ|r;t%          |¦  «         t	          j        d ¦  «        |d"<   t'          t          |¦  «         d#|                     d"¦  «        pdt          |¦  «        |t          |¦  «        |z
  t          |¦  «        ||t)          t	          j        ¦   «         |z
  d¦  «        t+          | ¦  «        t	          j        d ¦  «        t	          j        ¦   «         d$œ}	 t'          t,          |¦  «         n# t          $ r Y nw xY w|S )%Nr0   c                 óÀ   — g | ][}|                      d ¦  «        pd                     ¦   «         r0|                      d¦  «        pi                       d¦  «        dk    ¯Y|‘Œ\S r2   r8   r;   s     r   r>   z#_refresh_locked.<locals>.<listcomp>§   st   € ð Kð Kð K�QØ—5’5˜Ñ&Ô&Ð,¨"×3Ò3Ñ5Ô5ðKà—E’E˜*Ñ%Ô%Ð+¨×0Ò0°Ñ:Ô:¸kÒIÐIð àIÐIÐIr   Fu   é¡ºä¸° token èŽ·å�–å¤±è´¥)rB   rj   r   r3   r4   ÚsuccessÚmsgDataÚ
routeRespsÚroutesÚreasonRemark)Úno_dataÚunknownrg   c                 ób   — i | ],}|                      d ¦  «        pd                     ¦   «         |“Œ-S )r3   r4   r8   r;   s     r   ú
<dictcomp>z#_refresh_locked.<locals>.<dictcomp>Á   s7   € ÐJÐJÐJ¸Q�1—5’5˜Ñ&Ô&Ð,¨"×3Ò3Ñ5Ô5°qÐJÐJÐJr   )NNr5   r6   ÚnoneÚmailNoÚstatusLabelÚ	lastRouteÚ
routeCountÚfineÚorderIdÚcustomerÚcreatorÚremarké<   )r3   ÚfromÚtoÚlabelr•   r–   r—   r˜   z%Y-%m-%d %H:%M:%S)r3   r6   r‘   r”   r’   r“   r•   Ú	updatedAtr?   T)rB   r?   ÚcheckedÚok_countÚno_routeÚchanged_countÚchangedr0   rA   rq   r@   re   )r   r   rG   r9   rk   Úsf_get_tokenr:   Úsf_query_routesÚphone4Úfine_statusr   ÚsleepÚ	QUERY_GAPÚitemsÚCOARSErH   ÚappendÚstrftimerƒ   r'   rn   Úboolr*   )rq   ÚwdrI   r0   rD   Út0ÚtokenÚresultsÚn_okr=   ÚtnÚrawÚrespr”   Úlastrr¢   Ú
out_ordersÚ
tn2pendingr‰   Úcoarserœ   ÚoldÚshÚpayloads                           r   rp   rp   £   sú  € Ý	‰Œ€BÝ•dÑÔÐ!˜r€DØ�XŠX�hÑÔÐ% 2€FðKð K˜&ð Kñ Kô K€Gõ 
Œ‰Œ€BØ�OŠOÑÔ€EØð CØÐ&AÐBÐBÐBà€GØ€DØð ñ ˆØ�eŠe�LÑ!Ô!Ð' R×.Ò.Ñ0Ô0ˆð	Ø×$Ò$ b T¨5°"·)²)¸A±,´,Ñ?Ô?ˆCØPS×PWÒPWÐXaÑPbÔPbÐj�C—G’G˜I rÑ*Ô*×.Ò.¨|¸RÑ@Ô@ÐHÀRÀDÈ!ÔLÐLÐhjˆDØŸ.š.¨¯ª°(¸BÑ)?Ô)?ÀÇÂÈ.ÐZ\ÑA]ÔA]Ñ^Ô^‰KˆD�%ØÐ1Ð1Ð1Ø# U¨D¯HªH°X¸rÑ,BÔ,BÐ,HÀbÐI�˜‘Ø˜‘	�øøÝð 	ð 	ð 	ØˆDð	øøøåŒ
•9ÑÔÐÑà€GØ€JØJÐJÀ'ÐJÑJÔJ€JØ%,§]¢]¡_¤_ð Mñ MÑ!ˆÑ!ˆT�5˜&Øœ	Ÿš d¨LÑ9Ô9‰ˆ�Øð 	ØØ�NŠN˜2ÑÔˆØð 	ØØ�uŠu�ZÑ Ô Ð& B×+Ò+¨HÑ5Ô5Ð?¸ˆØ�UŠU�:ÑÔÐ$ "ˆØˆˆ8‰Øˆˆ8‰Ø!ˆˆ=ÑØð 	$Ø#ˆBˆ{‰OØð 	+Ø!ˆBˆx‰LÝ" 6™{œ{ˆBˆ|ÑØˆˆ6‰
Øˆˆ*‰Ø�SŠ=ˆ=Ø�NŠN¨"°cÀÐRWØ'(§u¢u¨YÑ'7Ô'7Ð'=¸2È1Ï5Ê5ÐQ[ÑK\ÔK\ÐKbÐ`bØ'(§u¢u¨YÑ'7Ô'7Ð'=¸2Ø', {°×&7Ò&7¸À"Ñ&EÔ&EÀcÀrÀcÔ&JðLð Lñ Mô Mð Mð 	×Ò¨°vÈeØ#'°eØ)+¯ª°Ñ)=Ô)=Ð)BÀØ&'§e¢e¨IÑ&6Ô&6Ð&<¸"Ý(,¬Ð6IÑ(JÔ(Jð	Lð Lñ 	Mô 	Mð 	Mñ 	Mð ð 'Ý˜6Ñ"Ô"Ð"Ý!œ]Ð+>Ñ?Ô?ˆˆ\ÑÝ�4 Ñ&Ô&Ð&ð Ø—h’h˜|Ñ,Ô,Ð2°Ý�w‘<”<ØÝ˜‘L”L 4Ñ'Ý˜W™œØØÝ�œ™œ rÑ)¨1Ñ-Ô-Ý�e‘”ÝŒmÐ/Ñ0Ô0ÝŒi‰kŒkðð €GðÝ�4 Ñ)Ô)Ð)Ð)øÝð ð ð Øˆðøøøà€Ns%   Â)CFÆ
FÆFÑQ& Ñ&
Q3Ñ2Q3Ú__main__z--force)rq   c                 ó"   — i | ]\  }}|d v¯	||“ŒS ))r0   r¢   rR   )r<   ÚkÚvs      r   rŽ   rŽ   ý   s)   € ÐSÐSÐS™t˜q !°AÐ=RÐ4RÐ4R�a˜Ð4RÐ4RÐ4Rr   é   )r!   Úindentr¢   é   z  r3   Ú16Ú rš   u    â†’ r›   r˜   r)   )F)*Ú__doc__r#   rv   r   rk   Úimportlib.utilr   r   rw   rx   ry   ÚBASEÚjoinrG   ro   r*   Ú
expanduserr
   rm   r¨   r   r   r   r'   r.   rL   r   rN   ÚobjectrT   rt   rƒ   rp   rO   Úargvrq   Úrr}   Údumpsr©   r9   ÚcrR   r   r   ú<module>rÐ      s«  ððð ð  
€	€	€	Ø 
€
€
€
Ø €€€Ø €€€Ø Ð Ð Ð à	„w‡‚�r”w—’ r¤w§¢°xÑ'@Ô'@ÑAÔAÑBÔB€Ø	„w‡|‚|�D˜(Ð$:Ñ;Ô;€Ø	„w‡|‚|�D˜(Ð$<Ñ=Ô=€Ø	„w‡|‚|�D˜(Ð$AÑBÔB€ØŒ7×ÒÐIÑJÔJ€à€Ø€	à
€ðð ð ðð ð ð ðð ð ð,ð ,ð ,ð
ð ð ð"	ð 	ð 	ð 	ð 	ˆIñ 	ô 	ð 	ðð ð ð ð �ñ ô ð ð<Yð Yð Yð Yð6;ð ;ð ;ð"Tð Tð Tðn ˆzÒÐØ˜œÐ!€EØˆ�eÐÑÔ€AØ	€Eˆ*ˆ$Œ*ÐSÐS q§w¢w¡y¤yÐSÑSÔSØ"'°ð3ñ 3ô 3ñ 4ô 4ð 4à�eŠe�IÑÔÐ$ " c r cÔ*ð \ð \ˆØˆˆ¨¨<¬¨¨¨¸!¸F¼)¸)¸)ÀQÀtÄWÀWÀWÈaÐPXÌkÈkÐZÑ[Ô[Ð[Ð[ð Ðð
\ð \r   