§
    ©öÉg�X  ã                   óš  — d Z ddlZddlZddl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mZmZmZ ddlmZ ddlmZ dd	lmZ d
dlmZmZmZ ddlZddlmZ  G d„ de¦  «        Z G d„ de¦  «        Z  G d„ de¦  «        Z! G d„ de¦  «        Z" G d„ de¦  «        Z# G d„ de¦  «        Z$ G d„ de¦  «        Z% G d„ de¦  «        Z&dS )z#Tests of Beautiful Soup as a whole.é    N)ÚIterable)ÚBeautifulSoupÚGuessedAtParserWarningÚdammit)ÚTreeBuilder)ÚAttributeValueListÚXMLAttributeDictÚCommentÚPYTHON_SPECIFIC_ENCODINGSÚTagÚNavigableString)ÚSoupStrainer©ÚParserRejectedMarkup)ÚMarkupResemblesLocatorWarningé   )Údefault_builderÚLXML_PRESENTÚSoupTest)ÚTypec                   óŽ   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
ej                             d	d
dd„ g¦  «        d„ ¦   «         ZdS )ÚTestConstructorc                 óX   — d}|                       |¦  «        }d|j        j        k    sJ ‚d S )Nu   <h1>Ã©Ã©</h1>u   Ã©Ã©©ÚsoupÚh1Ústring©ÚselfÚdatar   s      ú_/var/www/html/nodeJS/PythonScripts/venv3.11/lib/python3.11/site-packages/bs4/tests/test_soup.pyÚtest_short_unicode_inputz(TestConstructor.test_short_unicode_input,   s1   € ØˆØ�yŠy˜‰ŒˆØ˜œœÒ'Ð'Ð'Ð'Ð'Ð'ó    c                 óX   — d}|                       |¦  «        }d|j        j        k    sJ ‚d S )Nz<h1>foo bar</h1>zfoo barr   r   s      r!   Útest_embedded_nullz"TestConstructor.test_embedded_null1   s1   € Ø"ˆØ�yŠy˜‰ŒˆØ˜TœWœ^Ò+Ð+Ð+Ð+Ð+Ð+r#   c                 óz   — d                      d¦  «        }|                      |dg¬¦  «        }d|j        k    sJ ‚d S )Nu   RÃ¤ksmÃ¶rgÃ¥súutf-8)Úexclude_encodingszwindows-1252)Úencoder   Úoriginal_encoding)r   Ú	utf8_datar   s      r!   Útest_exclude_encodingsz&TestConstructor.test_exclude_encodings6   sF   € Ø#×*Ò*¨7Ñ3Ô3ˆ	Ø�yŠy˜°w°iˆyÑ@Ô@ˆØ Ô!7Ò7Ð7Ð7Ð7Ð7Ð7r#   c                 óz  —  G d„ dt           ¦  «        }t          dd¬¦  «        }t          j        d¬¦  «        5  t	          dd|i|¤Ž}d d d ¦  «         n# 1 swxY w Y   t          |j        |¦  «        sJ ‚t          d¬	¦  «        |j        j        k    sJ ‚d
|j        j        k    sJ ‚ |di |¤Ž}t          j        d¬¦  «        5 }t	          d|d¬¦  «        }d d d ¦  «         n# 1 swxY w Y   t          |d         j
        ¦  «        }|                     d¦  «        sJ ‚||j        k    sJ ‚||j        k    sJ ‚d S )Nc                   ó:   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ ZexZZ	d„ Z
dS )ú7TestConstructor.test_custom_builder_class.<locals>.Mockc                 óŠ   — || _         d| _        d| _        g | _        g | _        i | _        t          | _        t          | _	        d S )NTF)
Úcalled_withÚis_xmlÚstore_line_numbersÚcdata_list_attributesÚpreserve_whitespace_tagsÚstring_containersr	   Úattribute_dict_classr   Úattribute_value_list_class)r   Úkwargss     r!   Ú__init__z@TestConstructor.test_custom_builder_class.<locals>.Mock.__init__?   sG   € Ø#)�Ô Ø"�”Ø*/�Ô'Ø-/�Ô*Ø02�Ô-Ø)+�Ô&Ý,<�Ô)Ý2D�Ô/Ð/Ð/r#   c                 ó   — d S ©N© ©r   r   s     r!   Úinitialize_soupzGTestConstructor.test_custom_builder_class.<locals>.Mock.initialize_soupI   ó   € Ø�r#   c                 ó   — || _         d S r<   )Úfed)r   Úmarkups     r!   Úfeedz<TestConstructor.test_custom_builder_class.<locals>.Mock.feedL   s   € Ø!�”��r#   c                 ó   — d S r<   r=   ©r   s    r!   Úresetz=TestConstructor.test_custom_builder_class.<locals>.Mock.resetO   r@   r#   c                 ó   — d S r<   r=   )r   Úignores     r!   rI   z>TestConstructor.test_custom_builder_class.<locals>.Mock.ignoreR   r@   r#   c              ?   ó   K  — dV — d S )N)úprepared markupzoriginal encodingzdeclared encodingzcontains replacement charactersr=   ©r   Úargsr9   s      r!   Úprepare_markupzFTestConstructor.test_custom_builder_class.<locals>.Mock.prepare_markupW   s$   è è € ðð ð ð ð ð r#   N)Ú__name__Ú
__module__Ú__qualname__r:   r?   rD   rG   rI   Úset_up_substitutionsÚcan_be_empty_elementrN   r=   r#   r!   ÚMockr/   >   s€   € € € € € ðEð Eð Eðð ð ð"ð "ð "ðð ð ðð ð ð ;AÐ@Ð Ð#7ðð ð ð ð r#   rT   ÚvalueT)ÚvarÚconvertEntities©ÚrecordÚ Úbuilder)rV   rK   )r[   Úignored_valuer   zCKeyword arguments to the BeautifulSoup constructor will be ignored.)rZ   r=   )ÚobjectÚdictÚwarningsÚcatch_warningsr   Ú
isinstancer[   r1   rB   ÚstrÚmessageÚ
startswith)r   rT   r9   r   r[   ÚwÚmsgs          r!   Útest_custom_builder_classz)TestConstructor.test_custom_builder_class;   s  € ð	ð 	ð 	ð 	ð 	•6ñ 	ô 	ð 	õB Øð !ð	
ñ 
ô 
ˆõ Ô$¨DÐ1Ñ1Ô1ð 	=ð 	=Ý Ð<Ð<¨TÐ<°VÐ<Ð<ˆDð	=ð 	=ð 	=ñ 	=ô 	=ð 	=ð 	=ð 	=ð 	=ð 	=ð 	=øøøð 	=ð 	=ð 	=ð 	=å˜$œ,¨Ñ-Ô-Ð-Ð-Ð-Ý˜Ð Ñ Ô  D¤LÔ$<Ò<Ð<Ð<Ð<Ø  D¤LÔ$4Ò4Ð4Ð4Ð4ð
 �$�.�.˜�.�.ˆÝÔ$¨DÐ1Ñ1Ô1ð 	°QÝ ØØØ"ðñ ô ˆDð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	õ �!�A”$”,ÑÔˆØ�~Š~ØQñ
ô 
ð 	
ð 	
ð 	
ð ˜$œ,Ò&Ð&Ð&Ð&Ø˜Ô,Ò,Ð,Ð,Ð,Ð,Ð,s#   ºAÁAÁAÃC%Ã%C)Ã,C)c                 óæ   —  G d„ dt           ¦  «        }d„ }t          j        t          ¦  «        5 }t	          d|¬¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚d S )Nc                   ó   — e Zd Zd„ ZdS )ú:TestConstructor.test_parser_markup_rejection.<locals>.Mockc                 ó    — t          d¦  «        ‚)NzNope.r   rL   s      r!   rD   z?TestConstructor.test_parser_markup_rejection.<locals>.Mock.feed€   s   € Ý*¨7Ñ3Ô3Ð3r#   N)rO   rP   rQ   rD   r=   r#   r!   rT   rj      s#   € € € € € ð4ð 4ð 4ð 4ð 4r#   rT   c              ?   ó*   K  — |d d dfV — |d d dfV — d S ©NFr=   )r   rC   rM   r9   s       r!   rN   zDTestConstructor.test_parser_markup_rejection.<locals>.prepare_markupƒ   s8   è è € ð ˜$  eÐ+Ð+Ð+Ð+Ø˜$  eÐ+Ð+Ð+Ð+Ð+Ð+r#   rZ   )r[   zoThe markup you provided was rejected by the parser. Trying a different parser or a different encoding may help.)r   ÚpytestÚraisesr   r   rb   rU   )r   rT   rN   Úexc_infos       r!   Útest_parser_markup_rejectionz,TestConstructor.test_parser_markup_rejection|   sä   € ð	4ð 	4ð 	4ð 	4ð 	4•;ñ 	4ô 	4ð 	4ð	,ð 	,ð 	,õ Œ]Õ/Ñ0Ô0ð 	,°HÝ˜" dÐ+Ñ+Ô+Ð+ð	,ð 	,ð 	,ñ 	,ô 	,ð 	,ð 	,ð 	,ð 	,ð 	,ð 	,øøøð 	,ð 	,ð 	,ð 	,ð ~Ý�8”>Ñ"Ô"ð#ð #ð #ð #ð #ð #s   °AÁAÁAc                 óÈ  — d}|                       |¦  «        }|j        }d|d         k    sJ ‚ddg|d         k    sJ ‚|                       |t          d ¬¦  «        }d|j        d         k    sJ ‚ddiddifD ]l}t          j        d	¬
¦  «        5  |                       |d |¬¦  «        }d d d ¦  «         n# 1 swxY w Y   |j        }ddg|d         k    sJ ‚d|d         k    sJ ‚Œmd S )Nz&<a id=" an id " class=" a class "></a>z an id ÚidÚaÚclass)r[   Úmulti_valued_attributesz	 a class Ú*TrX   Úan)r   rt   r   r_   r`   )r   rC   r   rt   Ú
switcheroos        r!   Útest_cdata_list_attributesz*TestConstructor.test_cdata_list_attributes‘   sn  € ð :ˆØ�yŠy˜Ñ Ô ˆð ŒFˆØ˜A˜dœGÒ#Ð#Ð#Ð#Ø�Wˆ~  7¤Ò+Ð+Ð+Ð+ð
 �yŠy˜­ÐRVˆyÑWÔWˆØ˜dœf WœoÒ-Ð-Ð-Ð-ð   ˜;¨¨d¨Ð4ð 		-ð 		-ˆJÝÔ(°Ð5Ñ5Ô5ð ð ð —y’yØ DÀ*ð !ñ ô �ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð ð ”ˆAØ˜$�< 1 T¤7Ò*Ð*Ð*Ð*Ø ! G¤*Ò,Ð,Ð,Ð,Ð,ð		-ð 		-s   ÂB1Â1B5	Â8B5	c           	      ó  ‡‡‡—  G d„ dt           ¦  «        Š G d„ dt          ¦  «        Š G d„ dt          ¦  «        Š|                      dt           ‰t          ‰t          ‰i¬¦  «        }t	          ˆˆˆfd	„|j        D ¦   «         ¦  «        sJ ‚d S )
Nc                   ó   — e Zd ZdS )ú9TestConstructor.test_replacement_classes.<locals>.TagPlusN©rO   rP   rQ   r=   r#   r!   ÚTagPlusr}   ³   ó   € € € € € ØˆDr#   r   c                   ó   — e Zd ZdS )ú<TestConstructor.test_replacement_classes.<locals>.StringPlusNr~   r=   r#   r!   Ú
StringPlusr‚   ¶   r€   r#   rƒ   c                   ó   — e Zd ZdS )ú=TestConstructor.test_replacement_classes.<locals>.CommentPlusNr~   r=   r#   r!   ÚCommentPlusr…   ¹   r€   r#   r†   z<a><b>foo</b>bar</a><!--whee-->)Úelement_classesc              3   ó>   •K  — | ]}t          |‰‰‰f¦  «        V — Œd S r<   )ra   )Ú.0Úxr†   rƒ   r   s     €€€r!   ú	<genexpr>z;TestConstructor.test_replacement_classes.<locals>.<genexpr>Ç   sE   øè è € ð 
ð 
ØBC�J�q˜7 J°Ð<Ñ=Ô=ð
ð 
ð 
ð 
ð 
ð 
r#   )r   r   r
   r   ÚallÚdescendants)r   r   r†   rƒ   r   s     @@@r!   Útest_replacement_classesz(TestConstructor.test_replacement_classes°   s  øøø€ ð	ð 	ð 	ð 	ð 	•cñ 	ô 	ð 	ð	ð 	ð 	ð 	ð 	�ñ 	ô 	ð 	ð	ð 	ð 	ð 	ð 	�'ñ 	ô 	ð 	ð �yŠyØ-å�WÝ Ý˜ðð ñ 
ô 
ˆõ ð 
ð 
ð 
ð 
ð 
ð 
ØGKÔGWð
ñ 
ô 
ñ 
ô 
ð 	
ð 	
ð 	
ð 	
ð 	
r#   c                 ót  —  G d„ dt           ¦  «        } G d„ dt           ¦  «        }|                      d||dœ¬¦  «        }t          |j        j        d         t           ¦  «        sJ ‚t          |j        j        d         |¦  «        sJ ‚|j        j        D ]}t          ||¦  «        sJ ‚Œg |j        k    sJ ‚d S )	Nc                   ó   — e Zd ZdS )úATestConstructor.test_alternate_string_containers.<locals>.PStringNr~   r=   r#   r!   ÚPStringr‘   Î   r€   r#   r’   c                   ó   — e Zd ZdS )úATestConstructor.test_alternate_string_containers.<locals>.BStringNr~   r=   r#   r!   ÚBStringr”   Ñ   r€   r#   r•   z4<div>Hello.<p>Here is <b>some <i>bolded</i></b> text)ÚbÚp)r6   r   )	r   r   ra   ÚdivÚcontentsr—   r–   ÚstringsÚstring_container_stack)r   r’   r•   r   Úss        r!   Ú test_alternate_string_containersz0TestConstructor.test_alternate_string_containersË   s  € ð	ð 	ð 	ð 	ð 	•oñ 	ô 	ð 	ð	ð 	ð 	ð 	ð 	•oñ 	ô 	ð 	ð �yŠyØBàØðð ð ñ 
ô 
ˆõ ˜$œ(Ô+¨AÔ.µÑ@Ô@Ð@Ð@Ð@õ ˜$œ&œ/¨!Ô,¨gÑ6Ô6Ð6Ð6Ð6ð ””ð 	*ð 	*ˆAÝ˜a Ñ)Ô)Ð)Ð)Ð)Ð)ð �TÔ0Ò0Ð0Ð0Ð0Ð0Ð0r#   Ú
bad_markupr   Fc                 ó   — dS rm   r=   )rŠ   s    r!   ú<lambda>zTestConstructor.<lambda>ì   s   € À€ r#   c                 óÀ   — t          j        t          ¦  «        5 }t          |d¦  «         d d d ¦  «         n# 1 swxY w Y   d|›d�t	          |j        ¦  «        v sJ ‚d S )Núhtml.parserz'Incoming markup is of an invalid type: z?. Markup must be a string, a bytestring, or an open filehandle.)rn   ro   Ú	TypeErrorr   rb   rU   )r   rž   rp   s      r!   Útest_invalid_markup_typez(TestConstructor.test_invalid_markup_typeì   s¹   € åŒ]�9Ñ%Ô%ð 	5¨Ý˜* mÑ4Ô4Ð4ð	5ð 	5ð 	5ñ 	5ô 	5ð 	5ð 	5ð 	5ð 	5ð 	5ð 	5øøøð 	5ð 	5ð 	5ð 	5ð D°jð  Dð  Dð  DÝ�8”>Ñ"Ô"ð#ð #ð #ð #ð #ð #s   š7·;¾;N)rO   rP   rQ   r"   r%   r,   rg   rq   rz   rŽ   r�   rn   ÚmarkÚparametrizer¤   r=   r#   r!   r   r   +   sÆ   € € € € € ð(ð (ð (ð
,ð ,ð ,ð
8ð 8ð 8ð
?-ð ?-ð ?-ðB
ð 
ð 
ð*-ð -ð -ð>
ð 
ð 
ð61ð 1ð 1ðB „[×Ò˜\¨A¨u°o°oÐ+FÑGÔGð
ð 
ñ HÔGð
ð 
ð 
r#   r   c                   óÄ   — e Zd Zej                             dddg¦  «        d„ ¦   «         Zej                             dd„ eD ¦   «         dgz   ¦  «        d„ ¦   «         Zd	„ Z	dS )
Ú
TestOutputz!eventual_encoding,actual_encoding)r'   r'   )úutf-16r©   c                 ó~   — |                       d¦  «        }d|_        d|› d�|                     |¬¦  «        k    sJ ‚d S )Nú<tag></tag>Tz<?xml version="1.0" encoding="z"?>
<tag></tag>©Úeventual_encoding)r   r2   Údecode)r   r­   Úactual_encodingr   s       r!   Útest_decode_xml_declarationz&TestOutput.test_decode_xml_declaration÷   s`   € ð �yŠy˜Ñ'Ô'ˆØˆŒàN¨_ÐNÐNÐNØ�{Š{Ð->ˆ{Ñ?Ô?ò@ð @ð @ð @ð @ð @r#   r­   c                 ó   — g | ]}|‘ŒS r=   r=   )r‰   rŠ   s     r!   ú
<listcomp>zTestOutput.<listcomp>  s   € ÐCÐCÐC A˜aÐCÐCÐCr#   Nc                 ól   — t          dd¦  «        }d|_        d|                     |¬¦  «        k    sJ ‚d S )Nr«   r¢   Tz!<?xml version="1.0"?>
<tag></tag>r¬   )r   r2   r®   )r   r­   r   s      r!   ÚMtest_decode_xml_declaration_with_missing_or_python_internal_eventual_encodingzXTestOutput.test_decode_xml_declaration_with_missing_or_python_internal_eventual_encoding
  sT   € õ ˜]¨MÑ:Ô:ˆØˆŒØ3°t·{²{Ø/ð 8Cñ 8
ô 8
ò 
ð 
ð 
ð 
ð 
ð 
r#   c                 ó  — |                       d¦  «        }d|                     d¬¦  «        k    sJ ‚d|                     d¬¦  «        k    sJ ‚d|                     ¦   «         k    sJ ‚d|                     ¦   «         k    sJ ‚d S )Nr«   s   <tag></tag>r'   )Úencodingz<tag>
</tag>
)r   r)   Úencode_contentsÚdecode_contentsÚprettifyr>   s     r!   ÚtestzTestOutput.test  s’   € ð �yŠy˜Ñ'Ô'ˆØ §¢°g Ñ!>Ô!>Ò>Ð>Ð>Ð>Ø ×!5Ò!5¸wÐ!5Ñ!GÔ!GÒGÐGÐGÐGØ × 4Ò 4Ñ 6Ô 6Ò6Ð6Ð6Ð6Ø  D§M¢M¡O¤OÒ3Ð3Ð3Ð3Ð3Ð3r#   )
rO   rP   rQ   rn   r¥   r¦   r°   r   r´   rº   r=   r#   r!   r¨   r¨   ö   s«   € € € € € Ø„[×ÒØ+àØ ð	
ñô ð

ð 

ñô ð

ð „[×ÒØÐCÐCÐ)BÐCÑCÔCÀtÀfÑLñô ð

ð 

ñô ð

ð4ð 4ð 4ð 4ð 4r#   r¨   c                   óN  — e Zd Zdeej                 dee         dej        fd„Zdeej                 ddfd„Z	d„ Z
d	„ Zd
„ Zd„ Zd„ Zd„ Zd„ Zej                             dg d¢¦  «        d„ ¦   «         Zej                             dg d¢¦  «        d„ ¦   «         Zd„ Zd„ Zd„ Zd„ ZdS )ÚTestWarningsr_   ÚclsÚreturnc                 óŠ   — |D ]-}t          |j        |¦  «        r|j        t          k    sJ ‚|c S Œ.t	          |›d|›�¦  «        ‚)Nz warning not found in )ra   rc   ÚfilenameÚ__file__Ú	Exception)r   r_   r½   re   s       r!   Ú_assert_warningzTestWarnings._assert_warning,  sc   € ð ð 	ð 	ˆAÝ˜!œ) SÑ)Ô)ð Ø”z¥XÒ-Ð-Ð-Ð-Ø���ðõ ¸¸¸¸X¸XÐFÑGÔGÐGr#   re   Nc                 ó¶   — |                       |t          ¦  «        }t          |j        ¦  «        }|                     t          j        d d…         ¦  «        sJ ‚d S )Né<   )rÃ   r   rb   rc   rd   ÚMESSAGE)r   re   Úwarningrc   s       r!   Ú_assert_no_parser_specifiedz(TestWarnings._assert_no_parser_specified5  sT   € Ø×&Ò& qÕ*@ÑAÔAˆÝ�g”oÑ&Ô&ˆØ×!Ò!Õ"8Ô"@ÀÀ"ÀÔ"EÑFÔFÐFÐFÐFÐFÐFr#   c                 ó¨   — t          j        d¬¦  «        5 }t          d¦  «         d d d ¦  «         n# 1 swxY w Y   |                      |¦  «         d S ©NTrX   ú<a><b></b></a>©r_   r`   r   rÈ   ©r   re   s     r!   Ú#test_warning_if_no_parser_specifiedz0TestWarnings.test_warning_if_no_parser_specified:  s‘   € ÝÔ$¨DÐ1Ñ1Ô1ð 	,°QÝÐ*Ñ+Ô+Ð+ð	,ð 	,ð 	,ñ 	,ô 	,ð 	,ð 	,ð 	,ð 	,ð 	,ð 	,øøøð 	,ð 	,ð 	,ð 	,à×(Ò(¨Ñ+Ô+Ð+Ð+Ð+s   –2²6¹6c                 óª   — t          j        d¬¦  «        5 }t          dd¦  «         d d d ¦  «         n# 1 swxY w Y   |                      |¦  «         d S )NTrX   rË   ÚhtmlrÌ   rÍ   s     r!   Ú*test_warning_if_parser_specified_too_vaguez7TestWarnings.test_warning_if_parser_specified_too_vague?  s“   € ÝÔ$¨DÐ1Ñ1Ô1ð 	4°QÝÐ*¨FÑ3Ô3Ð3ð	4ð 	4ð 	4ñ 	4ô 	4ð 	4ð 	4ð 	4ð 	4ð 	4ð 	4øøøð 	4ð 	4ð 	4ð 	4à×(Ò(¨Ñ+Ô+Ð+Ð+Ð+s   –3³7º7c                 óš   — t          j        d¬¦  «        5 }|                      d¦  «         d d d ¦  «         n# 1 swxY w Y   g |k    sJ ‚d S rÊ   ©r_   r`   r   rÍ   s     r!   Ú,test_no_warning_if_explicit_parser_specifiedz9TestWarnings.test_no_warning_if_explicit_parser_specifiedD  sŒ   € ÝÔ$¨DÐ1Ñ1Ô1ð 	(°QØ�IŠIÐ&Ñ'Ô'Ð'ð	(ð 	(ð 	(ñ 	(ô 	(ð 	(ð 	(ð 	(ð 	(ð 	(ð 	(øøøð 	(ð 	(ð 	(ð 	(à�QŠwˆwˆwˆwˆwˆwó   –8¸<¿<c                 ó<  — t          dd¬¦  «        }t          j        d¬¦  «        5 }|                      d|¬¦  «         d d d ¦  «         n# 1 swxY w Y   |                      |t
          ¦  «        }t          |j        ¦  «        }|                     d¦  «        sJ ‚d S )	Nrt   r–   )Únamer   TrX   rË   ©Ú
parse_onlyz7The given value for parse_only will exclude everything:)	r   r_   r`   r   rÃ   ÚUserWarningrb   rc   rd   )r   Ústrainerre   rÇ   rf   s        r!   Ú+test_warning_if_strainer_filters_everythingz8TestWarnings.test_warning_if_strainer_filters_everythingI  sÔ   € Ý S°Ð5Ñ5Ô5ˆÝÔ$¨DÐ1Ñ1Ô1ð 	=°QØ�IŠIÐ&°8ˆIÑ<Ô<Ð<ð	=ð 	=ð 	=ñ 	=ô 	=ð 	=ð 	=ð 	=ð 	=ð 	=ð 	=øøøð 	=ð 	=ð 	=ð 	=à×&Ò& q­+Ñ6Ô6ˆÝ�'”/Ñ"Ô"ˆØ�~Š~ÐWÑXÔXÐXÐXÐXÐXÐXs   §AÁAÁAc                 óH  — t          j        d¬¦  «        5 }t          ddt          d¦  «        ¬¦  «        }d d d ¦  «         n# 1 swxY w Y   |                      |t
          ¦  «        }t          |j        ¦  «        }d|v sJ ‚d|v sJ ‚d	|                     ¦   «         k    sJ ‚d S )
NTrX   rË   r¢   r–   )ÚparseOnlyTheserÞ   rÙ   s   <b></b>)	r_   r`   r   r   rÃ   ÚDeprecationWarningrb   rc   r)   )r   re   r   rÇ   rf   s        r!   Ú)test_parseOnlyThese_renamed_to_parse_onlyz6TestWarnings.test_parseOnlyThese_renamed_to_parse_onlyQ  sõ   € ÝÔ$¨DÐ1Ñ1Ô1ð 	°QÝ Ø ØÝ+¨CÑ0Ô0ðñ ô ˆDð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð ×&Ò& qÕ*<Ñ=Ô=ˆÝ�'”/Ñ"Ô"ˆØ 3Ð&Ð&Ð&Ð&Ø˜sÐ"Ð"Ð"Ð"Ø˜TŸ[š[™]œ]Ò*Ð*Ð*Ð*Ð*Ð*s   – AÁAÁ	Ac                 ó  — t          j        d¬¦  «        5 }d}t          |dd¬¦  «        }d d d ¦  «         n# 1 swxY w Y   |                      |t          ¦  «        }t          |j        ¦  «        }d|v sJ ‚d|v sJ ‚d|j        k    sJ ‚d S )	NTrX   s   Ã©r¢   Úutf8)ÚfromEncodingrã   Úfrom_encoding)r_   r`   r   rÃ   rß   rb   rc   r*   )r   re   râ   r   rÇ   rf   s         r!   Ú*test_fromEncoding_renamed_to_from_encodingz7TestWarnings.test_fromEncoding_renamed_to_from_encoding^  sô   € ÝÔ$¨DÐ1Ñ1Ô1ð 	K°QØˆDÝ   }À6ÐJÑJÔJˆDð	Kð 	Kð 	Kñ 	Kô 	Kð 	Kð 	Kð 	Kð 	Kð 	Kð 	Køøøð 	Kð 	Kð 	Kð 	Kð ×&Ò& qÕ*<Ñ=Ô=ˆÝ�'”/Ñ"Ô"ˆØ Ð$Ð$Ð$Ð$Ø #Ð%Ð%Ð%Ð%Ø˜Ô/Ò/Ð/Ð/Ð/Ð/Ð/s   –7·;¾;c                 ó˜   — t          j        t          ¦  «        5  |                      dd¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nz<a>T)Úno_such_argument)rn   ro   r£   r   rF   s    r!   Ú"test_unrecognized_keyword_argumentz/TestWarnings.test_unrecognized_keyword_argumenth  sŒ   € ÝŒ]�9Ñ%Ô%ð 	4ð 	4Ø�IŠI�e¨dˆIÑ3Ô3Ð3ð	4ð 	4ð 	4ñ 	4ô 	4ð 	4ð 	4ð 	4ð 	4ð 	4ð 	4ð 	4øøøð 	4ð 	4ð 	4ð 	4ð 	4ð 	4s   š?¿AÁArC   )zmarkup.htmlz
markup.htmzmarkup.HTMLz
markup.txtzmarkup.xhtmlz
markup.xmlz/home/user/file.txtz/c:\user\file.html\\server\share\path\file.XhTmlc                 óê   — t          j        d¬¦  «        5 }t          |d¦  «         |                      |t          ¦  «        }dt          |j        ¦  «        v sJ ‚	 d d d ¦  «         d S # 1 swxY w Y   d S )NTrX   r¢   zlooks more like a filename©r_   r`   r   rÃ   r   rb   rc   )r   rC   re   rÇ   s       r!   Útest_resembles_filename_warningz,TestWarnings.test_resembles_filename_warningl  sÐ   € õ  Ô$¨DÐ1Ñ1Ô1ð 	H°QÝ˜& -Ñ0Ô0Ð0Ø×*Ò*¨1Õ.KÑLÔLˆGØ/µ3°w´Ñ3GÔ3GÐGÐGÐGÐGÐGð	Hð 	Hð 	Hñ 	Hô 	Hð 	Hð 	Hð 	Hð 	Hð 	Hð 	Hð 	Høøøð 	Hð 	Hð 	Hð 	Hð 	Hð 	Hs   –AA(Á(A,Á/A,)rÀ   Ú
markuphtmlz
markup.comrZ   z	markup.jsz
markup.jpgzmarkup.markupz/home/user/filez)c:\user\file.html\\server\share\path\filezAlog message containing a url http://www.url.com/ right there.htmlztwo  consecutive  spaces.htmlztwo//consecutive//slashes.htmlz4looks/like/a/filename/but/oops/theres/a#comment.htmlztwo
lines.htmlzcontains?.htmlzcontains*.htmlzcontains#.htmlzcontains&.htmlzcontains;.htmlzcontains>.htmlzcontains<.htmlzcontains$.htmlzcontains|.htmlzcontains:.htmlz:-at-the-front.htmlc                 óš   — t          j        d¬¦  «        5 }|                      |¦  «         d d d ¦  «         n# 1 swxY w Y   g |k    sJ ‚d S )NTrX   rÓ   )r   rC   re   s      r!   Ú"test_resembles_filename_no_warningz/TestWarnings.test_resembles_filename_no_warning�  sŽ   € õP Ô$¨DÐ1Ñ1Ô1ð 	°QØ�IŠI�fÑÔÐð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	à�QŠwˆwˆwˆwˆwˆwrÕ   c                 ó@  — d}t          j        d¬¦  «        5 }t          |d¦  «         d d d ¦  «         n# 1 swxY w Y   |                      |t          ¦  «        }dt          |j        ¦  «        v sJ ‚|t          |j        ¦  «                             d¦  «        vsJ ‚d S )Ns   http://www.crummybytes.com/TrX   r¢   úlooks more like a URLrâ   )r_   r`   r   rÃ   r   rb   rc   r)   ©r   ÚurlÚwarning_listrÇ   s       r!   Útest_url_warning_with_bytes_urlz,TestWarnings.test_url_warning_with_bytes_url­  sÝ   € Ø,ˆÝÔ$¨DÐ1Ñ1Ô1ð 	.°\Ý˜#˜}Ñ-Ô-Ð-ð	.ð 	.ð 	.ñ 	.ô 	.ð 	.ð 	.ð 	.ð 	.ð 	.ð 	.øøøð 	.ð 	.ð 	.ð 	.à×&Ò& |Õ5RÑSÔSˆØ&­#¨g¬oÑ*>Ô*>Ð>Ð>Ð>Ð>Ø�#˜gœoÑ.Ô.×5Ò5°fÑ=Ô=Ð=Ð=Ð=Ð=Ð=Ð=ó   ˜5µ9¼9c                 ó  — d}t          j        d¬¦  «        5 }t          |d¦  «         d d d ¦  «         n# 1 swxY w Y   |                      |t          ¦  «        }dt          |j        ¦  «        v sJ ‚|t          |j        ¦  «        vsJ ‚d S )Nzhttp://www.crummyunicode.com/TrX   r¢   rð   rê   rñ   s       r!   Ú!test_url_warning_with_unicode_urlz.TestWarnings.test_url_warning_with_unicode_urlµ  sÓ   € Ø-ˆÝÔ$¨DÐ1Ñ1Ô1ð 	.°\õ ˜#˜}Ñ-Ô-Ð-ð	.ð 	.ð 	.ñ 	.ô 	.ð 	.ð 	.ð 	.ð 	.ð 	.ð 	.øøøð 	.ð 	.ð 	.ð 	.ð ×&Ò& |Õ5RÑSÔSˆØ&­#¨g¬oÑ*>Ô*>Ð>Ð>Ð>Ð>Ø�#˜gœoÑ.Ô.Ð.Ð.Ð.Ð.Ð.Ð.rõ   c                 óÀ   — t          j        d¬¦  «        5 }|                      d¦  «         d d d ¦  «         n# 1 swxY w Y   t          d„ |D ¦   «         ¦  «        rJ ‚d S )NTrX   s$   http://www.crummybytes.com/ is greatc              3   óB   K  — | ]}d t          |j        ¦  «        v V — ŒdS ©rð   N©rb   rc   ©r‰   re   s     r!   r‹   zETestWarnings.test_url_warning_with_bytes_and_space.<locals>.<genexpr>Ä  ó0   è è € ÐWÐWÀQÐ.µ#°a´i±.´.Ð@ÐWÐWÐWÐWÐWÐWr#   ©r_   r`   r   Úany©r   ró   s     r!   Ú%test_url_warning_with_bytes_and_spacez2TestWarnings.test_url_warning_with_bytes_and_space¿  s¦   € õ Ô$¨DÐ1Ñ1Ô1ð 	?°\Ø�IŠIÐ=Ñ>Ô>Ð>ð	?ð 	?ð 	?ñ 	?ô 	?ð 	?ð 	?ð 	?ð 	?ð 	?ð 	?øøøð 	?ð 	?ð 	?ð 	?åÐWÐWÈ,ÐWÑWÔWÑWÔWÐWÐWÐWÐWÐWrÕ   c                 óÀ   — t          j        d¬¦  «        5 }|                      d¦  «         d d d ¦  «         n# 1 swxY w Y   t          d„ |D ¦   «         ¦  «        rJ ‚d S )NTrX   z&http://www.crummyunicode.com/ is greatc              3   óB   K  — | ]}d t          |j        ¦  «        v V — ŒdS rú   rû   rü   s     r!   r‹   zGTestWarnings.test_url_warning_with_unicode_and_space.<locals>.<genexpr>É  rý   r#   rþ   r   s     r!   Ú'test_url_warning_with_unicode_and_spacez4TestWarnings.test_url_warning_with_unicode_and_spaceÆ  s´   € ÝÔ$¨DÐ1Ñ1Ô1ð 	@°\Ø�IŠIÐ>Ñ?Ô?Ð?ð	@ð 	@ð 	@ñ 	@ô 	@ð 	@ð 	@ð 	@ð 	@ð 	@ð 	@øøøð 	@ð 	@ð 	@ð 	@åÐWÐWÈ,ÐWÑWÔWÑWÔWÐWÐWÐWÐWÐWrÕ   )rO   rP   rQ   r   r_   ÚWarningMessager   ÚWarningrÃ   rÈ   rÎ   rÑ   rÔ   rÜ   rà   rå   rè   rn   r¥   r¦   rë   rî   rô   r÷   r  r  r=   r#   r!   r¼   r¼   $  sÁ  € € € € € ðHØ  Ô!8Ô9ðHØ@DÀWÄðHà	Ô	 ðHð Hð Hð HðG¨X°hÔ6MÔ-Nð GÐSWð Gð Gð Gð Gð
,ð ,ð ,ð
,ð ,ð ,ð
ð ð ð
Yð Yð Yð+ð +ð +ð0ð 0ð 0ð4ð 4ð 4ð „[×ÒØð		
ð 		
ð 		
ñô ðHð Hñô ðHð „[×ÒØð 	
ð  	
ð  	
ñ#ô #ðHð ñI#ô #ðHð>ð >ð >ð/ð /ð /ðXð Xð XðXð Xð Xð Xð Xr#   r¼   c                   ó   — e Zd Zd„ ZdS )ÚTestSelectiveParsingc                 óŠ   — d}t          d¦  «        }|                      ||¬¦  «        }|                     ¦   «         dk    sJ ‚d S )Nz&No<b>Yes</b><a>No<b>Yes <c>Yes</c></b>r–   rØ   s   <b>Yes</b><b>Yes <c>Yes</c></b>)r   r   r)   )r   rC   rÛ   r   s       r!   Útest_parse_with_soupstrainerz1TestSelectiveParsing.test_parse_with_soupstrainerÍ  sI   € Ø9ˆÝ Ñ$Ô$ˆØ�yŠy˜¨HˆyÑ5Ô5ˆØ�{Š{‰}Œ}Ð BÒBÐBÐBÐBÐBÐBr#   N)rO   rP   rQ   r
  r=   r#   r!   r  r  Ì  s(   € € € € € ðCð Cð Cð Cð Cr#   r  c                   ój   — e Zd ZdZd„ Zej                             e d¬¦  «        d„ ¦   «         Z	d„ Z
dS )Ú
TestNewTagz(Test the BeautifulSoup.new_tag() method.c                 óâ  — |                       d¦  «        }|                     dddddi¬¦  «        }t          |t          ¦  «        sJ ‚d|j        k    sJ ‚|j        dk    sJ ‚t          dd¬¦  «        |j        k    sJ ‚d |j        u sJ ‚|                     d¦  «        }d |j        u sJ ‚|                     dd ¬	¦  «        }d |j        u sJ ‚|                     dd¬	¦  «        }d|j        k    sJ ‚d S )
NrZ   ÚfooÚtxtÚbazr×   za name)r   ÚbarÚattrs)r  r×   )r   )	r   Únew_tagra   r   r×   r   r^   r  Úparent)r   r   r  s      r!   Útest_new_tagzTestNewTag.test_new_tag×  s  € Ø�yŠy˜‰}Œ}ˆØ—,’,˜u¨U¸ÀfÈhÐEW�,ÑXÔXˆÝ˜'¥3Ñ'Ô'Ð'Ð'Ð'Ø˜œÒ$Ð$Ð$Ð$ØŒ~ Ò&Ð&Ð&Ð&Ý˜ HÐ-Ñ-Ô-°´Ò>Ð>Ð>Ð>Ø�w”~Ð%Ð%Ð%Ð%ð —,’,˜uÑ%Ô%ˆØ�w”~Ð%Ð%Ð%Ð%Ø—,’,˜u¨T�,Ñ2Ô2ˆØ�w”~Ð%Ð%Ð%Ð%ð —,’,˜u¨R�,Ñ0Ô0ˆØ�W”^Ò#Ð#Ð#Ð#Ð#Ð#r#   z-lxml not installed, cannot parse XML document)Úreasonc                 óâ   — t          dd¦  «        }|                     d¦  «        }|                     d¦  «        }d|                     ¦   «         k    sJ ‚d|                     ¦   «         k    sJ ‚d S )NrZ   ÚxmlÚbrr—   ó   <br/>s   <p/>©r   r  r)   )r   Úxml_soupÚxml_brÚxml_ps       r!   Ú5test_xml_tag_inherits_self_closing_rules_from_builderz@TestNewTag.test_xml_tag_inherits_self_closing_rules_from_builderê  ss   € õ !  UÑ+Ô+ˆØ×!Ò! $Ñ'Ô'ˆØ× Ò  Ñ%Ô%ˆð ˜6Ÿ=š=™?œ?Ò*Ð*Ð*Ð*Ø˜%Ÿ,š,™.œ.Ò(Ð(Ð(Ð(Ð(Ð(r#   c                 óâ   — t          dd¦  «        }|                     d¦  «        }|                     d¦  «        }d|                     ¦   «         k    sJ ‚d|                     ¦   «         k    sJ ‚d S )NrZ   r¢   r  r—   r  s   <p></p>r  )r   Ú	html_soupÚhtml_brÚhtml_ps       r!   Ú1test_tag_inherits_self_closing_rules_from_builderz<TestNewTag.test_tag_inherits_self_closing_rules_from_builder÷  ss   € Ý! " mÑ4Ô4ˆ	Ø×#Ò# DÑ)Ô)ˆØ×"Ò" 3Ñ'Ô'ˆð ˜7Ÿ>š>Ñ+Ô+Ò+Ð+Ð+Ð+Ø˜VŸ]š]™_œ_Ò,Ð,Ð,Ð,Ð,Ð,r#   N)rO   rP   rQ   Ú__doc__r  rn   r¥   Úskipifr   r  r$  r=   r#   r!   r  r  Ô  sv   € € € € € Ø2Ð2ð$ð $ð $ð& „[×ÒØÐÐ!Pð ñ ô ð)ð )ñô ð)ð-ð -ð -ð -ð -r#   r  c                   ó   — e Zd ZdZd„ Zd„ ZdS )ÚTestNewStringz+Test the BeautifulSoup.new_string() method.c                 ó˜   — |                       d¦  «        }|                     d¦  «        }d|k    sJ ‚t          |t          ¦  «        sJ ‚d S ©NrZ   r  )r   Ú
new_stringra   r   ©r   r   rœ   s      r!   Ú'test_new_string_creates_navigablestringz5TestNewString.test_new_string_creates_navigablestring  sK   € Ø�yŠy˜‰}Œ}ˆØ�OŠO˜EÑ"Ô"ˆØ˜ŠzˆzˆzˆzÝ˜!�_Ñ-Ô-Ð-Ð-Ð-Ð-Ð-r#   c                 ó¤   — |                       d¦  «        }|                     dt          ¦  «        }d|k    sJ ‚t          |t          ¦  «        sJ ‚d S r*  )r   r+  r
   ra   r,  s      r!   Ú3test_new_string_can_create_navigablestring_subclasszATestNewString.test_new_string_can_create_navigablestring_subclass  sM   € Ø�yŠy˜‰}Œ}ˆØ�OŠO˜E¥7Ñ+Ô+ˆØ˜ŠzˆzˆzˆzÝ˜!�WÑ%Ô%Ð%Ð%Ð%Ð%Ð%r#   N)rO   rP   rQ   r%  r-  r/  r=   r#   r!   r(  r(    s8   € € € € € Ø5Ð5ð.ð .ð .ð&ð &ð &ð &ð &r#   r(  c                   ó   — e Zd Zd„ Zd„ ZdS )Ú
TestPicklec                 ó¤   — |                       d¦  «        }t          j        |¦  «        }t          j        |¦  «        }d|j        j        k    sJ ‚d S )Nz<a>some markup</a>úsome markup)r   ÚpickleÚdumpsÚloadsrt   r   ©r   r   ÚpickledÚ	unpickleds       r!   Útest_normal_picklezTestPickle.test_normal_pickle  sN   € Ø�yŠyÐ-Ñ.Ô.ˆÝ”,˜tÑ$Ô$ˆÝ”L Ñ)Ô)ˆ	Ø 	¤Ô 2Ò2Ð2Ð2Ð2Ð2Ð2r#   c                 ó¨   — |                       d¦  «        }d |_        t          j        |¦  «        }t          j        |¦  «        }d|j        k    sJ ‚d S )Nr3  )r   r[   r4  r5  r6  r   r7  s       r!   Útest_pickle_with_no_builderz&TestPickle.test_pickle_with_no_builder  sT   € ð �yŠy˜Ñ'Ô'ˆØˆŒÝ”,˜tÑ$Ô$ˆÝ”L Ñ)Ô)ˆ	Ø 	Ô 0Ò0Ð0Ð0Ð0Ð0Ð0r#   N)rO   rP   rQ   r:  r<  r=   r#   r!   r1  r1    s2   € € € € € ð3ð 3ð 3ð1ð 1ð 1ð 1ð 1r#   r1  c                   ó,   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ ZdS )ÚTestEncodingConversionc                 ól   — d| _         | j                              d¦  «        | _        | j        dk    sJ ‚d S )NuU   <html><head><meta charset="utf-8"/></head><body><foo>SacrÃ© bleu!</foo></body></html>r'   sU   <html><head><meta charset="utf-8"/></head><body><foo>SacrÃ© bleu!</foo></body></html>)Úunicode_datar)   r+   rF   s    r!   Úsetup_methodz#TestEncodingConversion.setup_method)  sS   € ð UˆÔØÔ*×1Ò1°'Ñ:Ô:ˆŒð ŒNØmònð nð nð nð nð nr#   c                 óJ  — t           j        }t          j        t          j        ¦  «         	 d„ }|t           _        d}|                      |¦  «        }|                     ¦   «         }t          |t          ¦  «        sJ ‚||  	                    |                     ¦   «         ¦  «        k    sJ ‚|j
                             ¦   «         dk    sJ ‚	 t          j        t          j        ¦  «         |t           _        d S # t          j        t          j        ¦  «         |t           _        w xY w)Nc                 ó   — d S r<   r=   )rb   s    r!   Únoopz>TestEncodingConversion.test_ascii_in_unicode_out.<locals>.noop9  s   € Ø�tr#   s   <foo>a</foo>r'   )r   Ú_chardet_dammitÚloggingÚdisableÚWARNINGr   r®   ra   rb   Údocument_forr*   ÚlowerÚNOTSET)r   ÚchardetrD  ÚasciiÚsoup_from_asciiÚunicode_outputs         r!   Útest_ascii_in_unicode_outz0TestEncodingConversion.test_ascii_in_unicode_out2  s  € õ Ô(ˆÝŒ�œÑ(Ô(Ð(ð	-ðð ð ð &*�FÔ"Ø#ˆEØ"Ÿiši¨Ñ.Ô.ˆOØ,×3Ò3Ñ5Ô5ˆNÝ˜n­cÑ2Ô2Ð2Ð2Ð2Ø! T×%6Ò%6°u·|²|±~´~Ñ%FÔ%FÒFÐFÐFÐFØ"Ô4×:Ò:Ñ<Ô<ÀÒGÐGÐGÐGÐGåŒO�GœNÑ+Ô+Ð+Ø%,�FÔ"Ð"Ð"øõ ŒO�GœNÑ+Ô+Ð+Ø%,�FÔ"Ð,Ð,Ð,Ð,s   ¬BC6 Ã6,D"c                 ó®   — |                       | j        ¦  «        }|                     ¦   «         | j        k    sJ ‚|j        j        dk    sJ ‚|j        �J ‚d S ©Nu   SacrÃ© bleu!)r   r@  r®   r  r   r*   ©r   Úsoup_from_unicodes     r!   Útest_unicode_in_unicode_outz2TestEncodingConversion.test_unicode_in_unicode_outH  sf   € ð !ŸIšI dÔ&7Ñ8Ô8ÐØ ×'Ò'Ñ)Ô)¨TÔ->Ò>Ð>Ð>Ð>Ø Ô$Ô+Ð/?Ò?Ð?Ð?Ð?Ø Ô2Ð:Ð:Ð:Ð:Ð:r#   c                 óœ   — |                       | j        ¦  «        }|                     ¦   «         | j        k    sJ ‚|j        j        dk    sJ ‚d S rR  )r   r+   r®   r@  r  r   )r   Úsoup_from_utf8s     r!   Útest_utf8_in_unicode_outz/TestEncodingConversion.test_utf8_in_unicode_outP  sU   € ð Ÿš 4¤>Ñ2Ô2ˆØ×$Ò$Ñ&Ô&¨$Ô*;Ò;Ð;Ð;Ð;ØÔ!Ô(Ð,<Ò<Ð<Ð<Ð<Ð<Ð<r#   c                 óz   — |                       | j        ¦  «        }|                     d¦  «        | j        k    sJ ‚d S )Nr'   )r   r@  r)   r+   rS  s     r!   Útest_utf8_outz$TestEncodingConversion.test_utf8_outW  s>   € à ŸIšI dÔ&7Ñ8Ô8ÐØ ×'Ò'¨Ñ0Ô0°D´NÒBÐBÐBÐBÐBÐBr#   N)rO   rP   rQ   rA  rP  rU  rX  rZ  r=   r#   r!   r>  r>  %  sd   € € € € € ð
ð 
ð 
ð-ð -ð -ð,;ð ;ð ;ð=ð =ð =ðCð Cð Cð Cð Cr#   r>  )'r%  rF  r4  rn   Útypingr   Úbs4r   r   r   Úbs4.builderr   Úbs4.elementr   r	   r
   r   r   r   Ú
bs4.filterr   Úbs4.exceptionsr   Úbs4._warningsr   rZ   r   r   r   r_   r   r   r¨   r¼   r  r  r(  r1  r>  r=   r#   r!   ú<module>rb     sÿ  ðà )Ð )à €€€Ø €€€Ø €€€Ø Ð Ð Ð Ð Ð ðð ð ð ð ð ð ð ð ð ð
ð ð ð ð ð ðð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð $Ð #Ð #Ð #Ð #Ð #ðð ð ð ð ð ðð ð ð ð ð ð
ð ð ð ð ð ð ð ð ð ð
 €€€Ø Ð Ð Ð Ð Ð ðH
ð H
ð H
ð H
ð H
�hñ H
ô H
ð H
ðV+4ð +4ð +4ð +4ð +4�ñ +4ô +4ð +4ð\eXð eXð eXð eXð eX�8ñ eXô eXð eXðPCð Cð Cð Cð C˜8ñ Cô Cð Cð+-ð +-ð +-ð +-ð +-�ñ +-ô +-ð +-ð\&ð &ð &ð &ð &�Hñ &ô &ð &ð 1ð 1ð 1ð 1ð 1�ñ 1ô 1ð 1ð&5Cð 5Cð 5Cð 5Cð 5C˜Xñ 5Cô 5Cð 5Cð 5Cð 5Cr#   