§
    dŠtj#  ã                   ó.  — d dl Z d dlZd dlZd dlZddlmZ ddlmZ  G d„ d¦  «        Z	 G d„ d¦  «        Z
 G d	„ d
¦  «        Z G d„ de	eej        ej        ¦  «        Z G d„ de
eej        ej        ¦  «        Z G d„ de	eej        ej        ¦  «        ZdS )é    Né   )Úutil)Úwarnings_helperc                   ó   — e Zd ZdZdZdS )ÚStringAnchorMixinÚdata01Údata02N)Ú__name__Ú
__module__Ú__qualname__Úanchor01Úanchor02© ó    úg/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/importlib_resources/tests/test_functional.pyr   r      s   € € € € € Ø€HØ€H€H€Hr   r   c                   ó:   — e Zd Zed„ ¦   «         Zed„ ¦   «         ZdS )ÚModuleAnchorMixinc                 ó*   — t          j        d¦  «        S )Nr   ©Ú	importlibÚimport_module©Úselfs    r   r   zModuleAnchorMixin.anchor01   ó   € åÔ& xÑ0Ô0Ð0r   c                 ó*   — t          j        d¦  «        S ©Nr	   r   r   s    r   r   zModuleAnchorMixin.anchor02   r   r   N)r
   r   r   Úpropertyr   r   r   r   r   r   r      sH   € € € € € Øð1ð 1ñ „Xð1ð ð1ð 1ñ „Xð1ð 1ð 1r   r   c                   óž   ‡ — e Zd Zˆ fd„Zd„ Zed„ ¦   «         Zd„ Zd„ Zd„ Z	d„ Z
d„ Zd	„ Zd
„ Z ej        e¬¦  «        d„ ¦   «         Zd„ Zˆ xZS )ÚFunctionalAPIBasec                 ór   •— t          ¦   «                              ¦   «          |                      d¦  «         d S r   )ÚsuperÚsetUpÚload_fixture)r   Ú	__class__s    €r   r"   zFunctionalAPIBase.setUp   s.   ø€ Ý‰Œ�Š‰ŒˆØ×Ò˜(Ñ#Ô#Ð#Ð#Ð#r   c              #   óx   K  — dD ]4}|                       |¬¦  «        5  |V — ddd¦  «         n# 1 swxY w Y   Œ5dS )zAYield various names of a text file in anchor02, each in a subTest))ÚsubdirectoryÚ	subsubdirúresource.txt)z#subdirectory/subsubdir/resource.txt)zsubdirectory/subsubdirr(   )Ú
path_partsN)ÚsubTest©r   r)   s     r   Ú_gen_resourcetxt_path_partsz-FunctionalAPIBase._gen_resourcetxt_path_parts   s™   è è € ð
ð 	!ð 	!ˆJð
 —’¨�Ñ4Ô4ð !ð !Ø Ð Ð Ð ð!ð !ð !ñ !ô !ð !ð !ð !ð !ð !ð !øøøð !ð !ð !ð !øð	!ð 	!s   �.®2	µ2	c                 ól   — dD ]0}|                       |¦  «        r| t          |¦  «        d…         c S Œ1| S )a&  Remove an architecture-specific UTF-16 BOM prefix when present.

        Some platforms surface UTF-16 BOM bytes as escaped text when the
        fixture is intentionally decoded as UTF-8 with ``errors='backslashreplace'``.
        Strip that prefix so assertions validate content consistently.)z\xff\xfez\xfe\xffu   ï»¿N)Ú
startswithÚlen)ÚstringÚboms     r   Úremove_utf16_bomz"FunctionalAPIBase.remove_utf16_bom)   sN   € ð :ð 	*ð 	*ˆCØ× Ò  Ñ%Ô%ð *Ø�c #™hœh˜j˜jÔ)Ð)Ð)Ð)ð*àˆr   c                 óà  — t          j        | j        d¦  «        dk    sJ ‚t          j        | j        dddd¬¦  «        dk    sJ ‚|                      ¦   «         D ]"}t          j        | j        g|¢R d	diŽdk    sJ ‚Œ#|                      t          ¦  «        5  t          j        | j        ¦  «         d d d ¦  «         n# 1 swxY w Y   |                      t          t           j        j        f¦  «        5  t          j        | j        d
¦  «         d d d ¦  «         n# 1 swxY w Y   |                      t          ¦  «        5  t          j        | j        d¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        | j        dd¬¦  «        dk    sJ ‚|  
                    t          j        | j        dd¬¦  «        ¦  «        d                     d¦  «                             d¬¦  «        k    sJ ‚d S )Nú
utf-8.fileúHello, UTF-8 world!
r&   r'   r(   úutf-8©Úencodingú
a resourcer8   úno-such-fileúutf-16.fileúbinary.fileÚlatin1ú Úbackslashreplace©ÚerrorsúHello, UTF-16 world!
ú	utf-16-le)Ú	resourcesÚ	read_textr   r   r,   ÚassertRaisesÚOSErrorÚabcÚTraversalErrorÚUnicodeDecodeErrorr2   ÚencodeÚdecoder+   s     r   Útest_read_textz FunctionalAPIBase.test_read_text5   s  € åÔ ¤¨|Ñ<Ô<Ð@WÒWÐWÐWÐWõ ÔØ”ØØØØ ðñ ô ð òð ð ð ð ×:Ò:Ñ<Ô<ð 	ð 	ˆJåÔ#Ø”Mðàðð ð ð %ðð ð
  ò ð  ð  ð  ð  ð ×Ò�wÑ'Ô'ð 	/ð 	/ÝÔ ¤Ñ.Ô.Ð.ð	/ð 	/ð 	/ñ 	/ô 	/ð 	/ð 	/ð 	/ð 	/ð 	/ð 	/øøøð 	/ð 	/ð 	/ð 	/à×Ò¥­¬Ô)EÐFÑGÔGð 	?ð 	?ÝÔ ¤¨~Ñ>Ô>Ð>ð	?ð 	?ð 	?ñ 	?ô 	?ð 	?ð 	?ð 	?ð 	?ð 	?ð 	?øøøð 	?ð 	?ð 	?ð 	?à×ÒÕ1Ñ2Ô2ð 	>ð 	>ÝÔ ¤¨}Ñ=Ô=Ð=ð	>ð 	>ð 	>ñ 	>ô 	>ð 	>ð 	>ð 	>ð 	>ð 	>ð 	>øøøð 	>ð 	>ð 	>ð 	>õ ÔØ”ØØ!ðñ ô ð
 "ò"ð "ð "ð "ð ×$Ò$ÝÔØ”ØØ)ðñ ô ñ
ô 
ð &×,Ò,¨[Ñ9Ô9×@Ò@Ø%ð Añ 
ô 
ò
ð 
ð 
ð 
ð 
ð 
s6   ÂB<Â<C ÃC Ã2DÄDÄ DÄ>E%Å%E)Å,E)c                 ó®   — t          j        | j        d¦  «        dk    sJ ‚|                      ¦   «         D ]}t          j        | j        g|¢R Ž dk    sJ ‚Œ d S ©Nr4   s   Hello, UTF-8 world!
s
   a resource)rD   Úread_binaryr   r,   r   r+   s     r   Útest_read_binaryz"FunctionalAPIBase.test_read_binaryf   s   € åÔ! $¤-°Ñ>Ô>Ø'ò(ð (ð (ð (ð ×:Ò:Ñ<Ô<ð 	Vð 	VˆJÝÔ(¨¬ÐD¸ÐDÐDÐDÈÒUÐUÐUÐUÐUð	Vð 	Vr   c                 óZ  — t          j        | j        d¦  «        5 }|                     ¦   «         dk    sJ ‚	 d d d ¦  «         n# 1 swxY w Y   |                      ¦   «         D ]O}t          j        | j        g|¢R ddiŽ5 }|                     ¦   «         dk    sJ ‚	 d d d ¦  «         n# 1 swxY w Y   ŒP|                      t          ¦  «        5  t          j        | j        ¦  «         d d d ¦  «         n# 1 swxY w Y   |                      t          t           j        j	        f¦  «        5  t          j        | j        d¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        | j        d¦  «        5 }|                      t          ¦  «        5  |                     ¦   «          d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         n# 1 swxY w Y   t          j        | j        dd	¬
¦  «        5 }|                     ¦   «         dk    sJ ‚	 d d d ¦  «         n# 1 swxY w Y   t          j        | j        dd¬¦  «        5 }|                      |                     ¦   «         ¦  «        d                     d¦  «                             d¬¦  «        k    sJ ‚	 d d d ¦  «         d S # 1 swxY w Y   d S )Nr4   r5   r8   r6   r9   r:   r;   r<   r=   r7   r>   r?   r@   rB   rC   )rD   Ú	open_textr   Úreadr,   r   rF   rG   rH   rI   rJ   r2   rK   rL   ©r   Úfr)   s      r   Útest_open_textz FunctionalAPIBase.test_open_textn   sª  € ÝÔ  ¤°Ñ=Ô=ð 	7ÀØ—6’6‘8”8Ð6Ò6Ð6Ð6Ð6Ð6ð	7ð 	7ð 	7ñ 	7ô 	7ð 	7ð 	7ð 	7ð 	7ð 	7ð 	7øøøð 	7ð 	7ð 	7ð 	7à×:Ò:Ñ<Ô<ð 	0ð 	0ˆJÝÔ$Ø”ðàðð ð ð !ðð ð 0ð Ø—v’v‘x”x <Ò/Ð/Ð/Ð/Ð/ð0ð 0ð 0ñ 0ô 0ð 0ð 0ð 0ð 0ð 0ð 0øøøð 0ð 0ð 0ð 0øð ×Ò�wÑ'Ô'ð 	/ð 	/ÝÔ ¤Ñ.Ô.Ð.ð	/ð 	/ð 	/ñ 	/ô 	/ð 	/ð 	/ð 	/ð 	/ð 	/ð 	/øøøð 	/ð 	/ð 	/ð 	/à×Ò¥­¬Ô)EÐFÑGÔGð 	?ð 	?ÝÔ ¤¨~Ñ>Ô>Ð>ð	?ð 	?ð 	?ñ 	?ô 	?ð 	?ð 	?ð 	?ð 	?ð 	?ð 	?øøøð 	?ð 	?ð 	?ð 	?åÔ  ¤°Ñ>Ô>ð 	À!Ø×"Ò"Õ#5Ñ6Ô6ð ð Ø—’‘”�ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð ð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	õ Ô ØŒMØØð
ñ 
ô 
ð 	2ð Ø—6’6‘8”8Ð1Ò1Ð1Ð1Ð1Ð1ð	2ð 	2ð 	2ñ 	2ô 	2ð 	2ð 	2ð 	2ð 	2ð 	2ð 	2øøøð 	2ð 	2ð 	2ð 	2õ Ô ØŒMØØ%ð
ñ 
ô 
ð 		ð Ø×(Ò(¨¯ª©¬Ñ2Ô2Ð6N×6UÒ6UØñ7ô 7çŠfØ)ð ñ ô òð ð ð ð ð		ð 		ð 		ñ 		ô 		ð 		ð 		ð 		ð 		ð 		ð 		ð 		øøøð 		ð 		ð 		ð 		ð 		ð 		s¢   ›AÁAÁ
AÁ>B&Â&B*	Â-B*	ÃC2Ã2C6Ã9C6Ä(EÅEÅEÅ4GÆF0Æ$GÆ0F4	Æ4GÆ7F4	Æ8GÇGÇGÇ.HÈHÈHÈ=AJ Ê J$Ê'J$c                 ób  — t          j        | j        d¦  «        5 }|                     ¦   «         dk    sJ ‚	 d d d ¦  «         n# 1 swxY w Y   |                      ¦   «         D ]L}t          j        | j        g|¢R Ž 5 }|                     ¦   «         dk    sJ ‚	 d d d ¦  «         n# 1 swxY w Y   ŒMd S rO   )rD   Úopen_binaryr   rT   r,   r   rU   s      r   Útest_open_binaryz"FunctionalAPIBase.test_open_binary’   sB  € ÝÔ" 4¤=°,Ñ?Ô?ð 	8À1Ø—6’6‘8”8Ð7Ò7Ð7Ð7Ð7Ð7ð	8ð 	8ð 	8ñ 	8ô 	8ð 	8ð 	8ð 	8ð 	8ð 	8ð 	8øøøð 	8ð 	8ð 	8ð 	8à×:Ò:Ñ<Ô<ð 	1ð 	1ˆJÝÔ&Ø”ðàðð ð ð 1ð Ø—v’v‘x”x =Ò0Ð0Ð0Ð0Ð0ð	1ð 1ð 1ñ 1ô 1ð 1ð 1ð 1ð 1ð 1ð 1øøøð 1ð 1ð 1ð 1øð	1ð 	1s#   ›AÁAÁ
AÁ;B#Â#B'	Â*B'	c                 ó4  — t          j        | j        d¦  «        5 }t          t	          |¦  «        d¬¦  «        5 }|                     ¦   «         dk    sJ ‚	 d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         n# 1 swxY w Y   t          j        | j        ¦  «        5 }t          t          j                             |d¦  «        d¬¦  «        5 }|                     ¦   «         dk    sJ ‚	 d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         d S # 1 swxY w Y   d S )Nr4   r6   r7   r5   )rD   Úpathr   ÚopenÚstrrT   ÚosÚjoin)r   r\   rV   s      r   Ú	test_pathzFunctionalAPIBase.test_pathœ   s÷  € ÝŒ^˜DœM¨<Ñ8Ô8ð 	;¸DÝ•c˜$‘i”i¨'Ð2Ñ2Ô2ð ;°aØ—v’v‘x”xÐ#:Ò:Ð:Ð:Ð:Ð:ð;ð ;ð ;ñ ;ô ;ð ;ð ;ð ;ð ;ð ;ð ;øøøð ;ð ;ð ;ð ;ð	;ð 	;ð 	;ñ 	;ô 	;ð 	;ð 	;ð 	;ð 	;ð 	;ð 	;øøøð 	;ð 	;ð 	;ð 	;õ Œ^˜DœMÑ*Ô*ð 	;¨dÝ•b”g—l’l 4¨Ñ6Ô6ÀÐIÑIÔIð ;ÈQØ—v’v‘x”xÐ#:Ò:Ð:Ð:Ð:Ð:ð;ð ;ð ;ñ ;ô ;ð ;ð ;ð ;ð ;ð ;ð ;øøøð ;ð ;ð ;ð ;ð	;ð 	;ð 	;ñ 	;ô 	;ð 	;ð 	;ð 	;ð 	;ð 	;ð 	;ð 	;øøøð 	;ð 	;ð 	;ð 	;ð 	;ð 	;sj   ›A9ºA"ÁA9Á"A&	Á&A9Á)A&	Á*A9Á9A=Â A=Â0DÃC5Ã)DÃ5C9	Ã9DÃ<C9	Ã=DÄDÄDc                 ó  — t           j        } || j        d¦  «        sJ ‚ || j        d¦  «        rJ ‚ || j        ¦  «        rJ ‚ || j        d¦  «        rJ ‚|                      ¦   «         D ]} || j        g|¢R Ž sJ ‚Œd S )Nr4   Úno_such_filer&   )rD   Úis_resourcer   r,   r   )r   rd   r)   s      r   Útest_is_resourcez"FunctionalAPIBase.test_is_resource¤   s¸   € ÝÔ+ˆØˆ{˜4œ=¨,Ñ7Ô7Ð7Ð7Ð7Ø�;˜tœ}¨nÑ=Ô=Ð=Ð=Ð=Ø�;˜tœ}Ñ-Ô-Ð-Ð-Ð-Ø�;˜tœ}¨nÑ=Ô=Ð=Ð=Ð=Ø×:Ò:Ñ<Ô<ð 	;ð 	;ˆJØ�;˜tœ}Ð:¨zÐ:Ð:Ð:Ð:Ð:Ð:Ð:ð	;ð 	;r   c           	      ó  — t          j        dt          f¦  «        5  t          j        | j        ¦  «        }d d d ¦  «         n# 1 swxY w Y   t          |¦  «        h d£k    sJ ‚|                      t          ¦  «        5  t          j        dt          f¦  «        5  t          t          j        | j        d¦  «        ¦  «         d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         n# 1 swxY w Y   |  
                    ¦   «         D ]œ}|                      t          t          j        j        f¦  «        5  t          j        dt          f¦  «        5  t          t          j        | j        g|¢R Ž ¦  «         d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         n# 1 swxY w Y   Œ�t          j        dt          f¦  «        5  t          j        | j        d¦  «        }d d d ¦  «         n# 1 swxY w Y   t          |¦  «        dhk    sJ ‚d S )Nz.*contents.*>   r&   r4   r<   r;   r4   r&   r<   )r   Úcheck_warningsÚDeprecationWarningrD   Úcontentsr   ÚsetrF   rG   Úlistr,   rH   rI   )r   Úcr)   s      r   Útest_contentszFunctionalAPIBase.test_contents­   sº  € ÝÔ+¨^Õ=OÐ,PÑQÔQð 	2ð 	2ÝÔ" 4¤=Ñ1Ô1ˆAð	2ð 	2ð 	2ñ 	2ô 	2ð 	2ð 	2ð 	2ð 	2ð 	2ð 	2øøøð 	2ð 	2ð 	2ð 	2å�1‰vŒvÐUÐUÐUÒUÐUÐUÐUà×Ò�gÑ&Ô&ð	Bð 	BåÔ*ØÝ"ð,ñ ô ð	Bð 	Bõ •Ô# D¤M°<Ñ@Ô@ÑAÔAÐAð	Bð 	Bð 	Bñ 	Bô 	Bð 	Bð 	Bð 	Bð 	Bð 	Bð 	Bøøøð 	Bð 	Bð 	Bð 	Bð 	Bð 	Bð 	Bñ 	Bô 	Bð 	Bð 	Bð 	Bð 	Bð 	Bð 	Bøøøð 	Bð 	Bð 	Bð 	Bð ×:Ò:Ñ<Ô<ð 	Eð 	EˆJà×!Ò!¥7­I¬MÔ,HÐ"IÑJÔJðEð EåÔ.Ø"Ý&ð0ñ ô ðEð Eõ •YÔ'¨¬ÐC¸
ÐCÐCÐCÑDÔDÐDðEð Eð Eñ Eô Eð Eð Eð Eð Eð Eð Eøøøð Eð Eð Eð Eð Eð Eð Eñ Eô Eð Eð Eð Eð Eð Eð Eøøøð Eð Eð Eð Eøõ Ô+¨^Õ=OÐ,PÑQÔQð 	Bð 	BÝÔ" 4¤=°.ÑAÔAˆAð	Bð 	Bð 	Bñ 	Bô 	Bð 	Bð 	Bð 	Bð 	Bð 	Bð 	Bøøøð 	Bð 	Bð 	Bð 	Bå�1‰vŒv˜-˜Ò(Ð(Ð(Ð(Ð(Ð(s�   œAÁAÁ	AÁ>C%Â(CÃC%ÃC	ÃC%ÃC	ÃC%Ã%C)Ã,C)Ä1FÅ%E>Å2FÅ>FÆFÆFÆFÆF	ÆF	Æ<G#Ç#G'Ç*G')Úcategoryc                 ó‚  — t           j        t           j        t           j        t           j        t           j        t           j        t           j        fD ]î}|                      |¬¦  «        5  |  	                    t          ¦  «        5   |d ¦  «         d d d ¦  «         n# 1 swxY w Y   |  	                    t          t          f¦  «        5   |d¦  «         d d d ¦  «         n# 1 swxY w Y   |  	                    t          ¦  «        5   |d¦  «         d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         n# 1 swxY w Y   Œïd S )N©ÚfunciÒ  z$missing module$)rD   rE   rP   rS   rY   r\   rd   ri   r*   rF   Ú	TypeErrorÚAttributeErrorÚModuleNotFoundError©r   rq   s     r   Útest_common_errorsz$FunctionalAPIBase.test_common_errorsÇ   s$  € õ ÔÝÔ!ÝÔÝÔ!ÝŒNÝÔ!ÝÔð
ð 	-ð 	-ˆDð —’ 4�Ñ(Ô(ð 	-ð 	-à×&Ò&¥yÑ1Ô1ð ð Ø�D˜‘J”J�Jðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð ð ×&Ò&­	µ>Ð'BÑCÔCð ð Ø�D˜‘J”J�Jðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð ð ×&Ò&Õ':Ñ;Ô;ð -ð -Ø�DÐ+Ñ,Ô,Ð,ð-ð -ð -ñ -ô -ð -ð -ð -ð -ð -ð -øøøð -ð -ð -ð -ð	-ð 	-ð 	-ñ 	-ô 	-ð 	-ð 	-ð 	-ð 	-ð 	-ð 	-øøøð 	-ð 	-ð 	-ð 	-øð	-ð 	-s~   Á(D3ÂBÂD3ÂBÂD3Â"BÂ#$D3ÃCÃD3ÃC#Ã#D3Ã&C#Ã'D3ÄDÄD3ÄD Ä D3Ä#D Ä$D3Ä3D7	Ä:D7	c           	      ó"  — t           j        t           j        fD ]u}|                      |¬¦  «        5  |                      t
          ¦  «        5   || j        ddd¦  «         d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         n# 1 swxY w Y   Œvd S )Nrp   r&   r'   r(   )rD   rE   rS   r*   rF   rr   r   ru   s     r   Útest_text_errorsz"FunctionalAPIBase.test_text_errorsÝ   s   € åÔÝÔð
ð 	ð 	ˆDð —’ 4�Ñ(Ô(ð ð à×&Ò&¥yÑ1Ô1ð ð Ø�DØœØ&Ø#Ø&ñ	ô ð ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð øð		ð 	s5   ±BÁA,Á BÁ,A0Á0BÁ3A0Á4BÂB	Â
B	)r
   r   r   r"   r,   Ústaticmethodr2   rM   rQ   rW   rZ   ra   re   rm   r   Úignore_warningsrh   rv   rx   Ú__classcell__)r$   s   @r   r   r      s  ø€ € € € € ð$ð $ð $ð $ð $ð!ð !ð !ð ð	ð 	ñ „\ð	ð/
ð /
ð /
ðbVð Vð Vð"ð "ð "ðH1ð 1ð 1ð;ð ;ð ;ð;ð ;ð ;ð)ð )ð )ð4 %€_Ô$Ð.@ÐAÑAÔAð-ð -ñ BÔAð-ð*ð ð ð ð ð ð r   r   c                   ó   — e Zd ZdS )Ú#FunctionalAPITest_StringAnchor_DiskN©r
   r   r   r   r   r   r}   r}   í   ó   € € € € € ð 	€Dr   r}   c                   ó   — e Zd ZdS )Ú#FunctionalAPITest_ModuleAnchor_DiskNr~   r   r   r   r�   r�   ö   r   r   r�   c                   ó   — e Zd ZdS )Ú%FunctionalAPITest_StringAnchor_MemoryNr~   r   r   r   rƒ   rƒ   ÿ   r   r   rƒ   )r   r_   ÚunittestÚimportlib_resourcesrD   Ú r   Úcompat.py39r   r   r   r   Ú	DiskSetupÚTestCaser}   r�   ÚMemorySetuprƒ   r   r   r   ú<module>r‹      sŠ  ðØ Ð Ð Ð Ø 	€	€	€	Ø €€€à 'Ð 'Ð 'Ð 'à Ð Ð Ð Ð Ð Ø (Ð (Ð (Ð (Ð (Ð (ðð ð ð ð ñ ô ð ð
1ð 1ð 1ð 1ð 1ñ 1ô 1ð 1ðPð Pð Pð Pð Pñ Pô Pð Pðf	ð 	ð 	ð 	ð 	ØØØ„NØÔñ		ô 	ð 	ð	ð 	ð 	ð 	ð 	ØØØ„NØÔñ		ô 	ð 	ð	ð 	ð 	ð 	ð 	ØØØÔØÔñ		ô 	ð 	ð 	ð 	r   