§
    OŠtjô>  ã                   óˆ  — d 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
mZmZmZ ddlmZmZmZmZmZmZ ddlmZmZ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#m$Z$ ddl%m&Z& ddl'm(Z( ddl)m*Z*m+Z+ ddl,m-Z- d„ Z.d„ Z/d„ Z0d„ Z1d„ Z2d„ Z3d„ Z4d„ Z5d„ Z6d„ Z7d„ Z8d„ Z9d„ Z:d„ Z;d„ Z<d„ Z=d„ Z>d „ Z?d!„ Z@d"„ ZAd#„ ZBd$„ ZCd%„ ZDd&„ ZEd'„ ZFd(S ))z1For more tests on satisfiability, see test_dimacsé    )ÚQ)Úsymbols)Ú
Unequality)ÚAndÚOrÚImpliesÚ
EquivalentÚtrueÚfalse)Úliteral_symbolÚpl_trueÚsatisfiableÚvalidÚentailsÚPropKB)ÚdpllÚdpll_satisfiableÚfind_pure_symbolÚfind_unit_clauseÚunit_propagateÚfind_pure_symbol_int_reprÚfind_unit_clause_int_reprÚunit_propagate_int_repr)r   )Úz3_satisfiable)ÚCNFÚ
EncodedCNF)Úmake_random_problem)Úrandint)ÚraisesÚskip)Úimport_modulec                  óÄ   — t          d¦  «        \  } }t          d¦  «        du sJ ‚t          d¦  «        du sJ ‚t          | ¦  «        | u sJ ‚t          |  ¦  «        | u sJ ‚d S )NzA,BTF)r   r   ©ÚAÚBs     ú^/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/sympy/logic/tests/test_inference.pyÚtest_literalr'      s}   € Ý�5‰>Œ>�D€A€qÝ˜$ÑÔ 4Ð'Ð'Ð'Ð'Ý˜%Ñ Ô  EÐ)Ð)Ð)Ð)Ý˜!ÑÔ Ð!Ð!Ð!Ð!Ý˜1˜"ÑÔ Ð"Ð"Ð"Ð"Ð"Ð"ó    c                  óð  — t          d¦  «        \  } }}t          | g| g¦  «        | dfk    sJ ‚t          | |g|  |z  | | z  g¦  «        dk    sJ ‚t          | ||g| | z  | | z  || z  g¦  «        | dfk    sJ ‚t          | ||g|  |z  || z  || z  g¦  «        |dfk    sJ ‚t          | ||g|  | z  | | z  || z  g¦  «        |dfk    sJ ‚t          | ||g|  |z  | | z  || z  g¦  «        dk    sJ ‚d S )NúA,B,CT©NNF)r   r   ©r$   r%   ÚCs      r&   Útest_find_pure_symbolr.       st  € Ý�gÑÔ�G€A€qˆ!Ý˜Q˜C ! Ñ%Ô%¨!¨T¨Ò2Ð2Ð2Ð2Ý˜Q ˜F a R¨!¡V¨a¨R°!©VÐ$4Ñ5Ô5¸ÒEÐEÐEÐEÝ˜Q  1˜I¨¨a¨R©°!°°q°b±¸!¸a¹%Ð'@ÑAÔAÀaÈÀYÒNÐNÐNÐNÝ˜Q  1˜I¨¨¨Q©°°Q°B±¸¸A¹Ð'>Ñ?Ô?ÀAÀtÀ9ÒLÐLÐLÐLÝ˜Q  1˜I¨¨¨a¨R©°!°°q°b±¸!¸a¹%Ð'@ÑAÔAÀaÈÀZÒOÐOÐOÐOÝØ	
ˆAˆqˆ	�Q�B˜‘F˜Q˜B ! ™G Q¨¡UÐ+ñ-ô -Ø0<ò=ð =ð =ð =ð =ð =r(   c                  ó|  — t          dgdhg¦  «        dk    sJ ‚t          ddgddhddhg¦  «        dk    sJ ‚t          g d¢ddhddhd	dhg¦  «        dk    sJ ‚t          g d¢ddhddhd	dhg¦  «        d
k    sJ ‚t          g d¢ddhddhd	dhg¦  «        dk    sJ ‚t          g d¢ddhddhd	dhg¦  «        dk    sJ ‚d S )Né   ©r0   Té   éÿÿÿÿéþÿÿÿr+   ©r0   r2   é   éýÿÿÿr6   ©r2   T©r2   F)r   © r(   r&   Útest_find_pure_symbol_int_reprr;   +   sg  € Ý$ a S¨A¨3¨%Ñ0Ô0°IÒ=Ð=Ð=Ð=Ý$ a¨ VØ�a�˜2˜q˜'Ð"ñ$ô $Ø'3ò4ð 4ð 4ð 4å$ Y Y YØ�R�˜2˜r˜( Q¨ FÐ+ñ-ô -Ø09ò:ð :ð :ð :å$ Y Y YØ�a�˜1˜b˜' A q 6Ð*ñ,ô ,Ø/8ò9ð 9ð 9ð 9å$ Y Y YØ�b�˜B ˜8 a¨ VÐ,ñ.ô .Ø1;ò<ð <ð <ð <å$ Y Y YØ�a�˜2˜r˜( Q¨ FÐ+ñ-ô -Ø0<ò=ð =ð =ð =ð =ð =r(   c                  ó   — t          d¦  «        \  } }}t          | gi ¦  «        | dfk    sJ ‚t          | |  gi ¦  «        | dfk    sJ ‚t          | |z  g| di¦  «        |dfk    sJ ‚t          | |z  g|di¦  «        | dfk    sJ ‚t          | |z  |z  || z  | | z  g| di¦  «        |dfk    sJ ‚t          | |z  |z  || z  | |z  g| di¦  «        |dfk    sJ ‚t          | |z  |z  || z  | gi ¦  «        | dfk    sJ ‚d S ©Nr*   TF)r   r   r,   s      r&   Útest_unit_clauser>   9   so  € Ý�gÑÔ�G€A€qˆ!Ý˜Q˜C Ñ$Ô$¨¨D¨	Ò1Ð1Ð1Ð1Ý˜Q  ˜G RÑ(Ô(¨Q°¨IÒ5Ð5Ð5Ð5Ý˜Q ™U˜G a¨ YÑ/Ô/°A°t°9Ò<Ð<Ð<Ð<Ý˜Q ™U˜G a¨ YÑ/Ô/°A°t°9Ò<Ð<Ð<Ð<ÝØ	
ˆQ‰�‰�A˜˜‘F˜A  ™FÐ# a¨ Yñ0ô 0Ø45°u°:ò>ð >ð >ð >å˜Q ™U Q™Y¨¨Q¨B©°°A±Ð6¸¸D¸	ÑBÔBÀqÈ$ÀiÒOÐOÐOÐOÝ˜Q ™U Q™Y¨¨Q¨B©°Ð3°RÑ8Ô8¸QÀ¸IÒEÐEÐEÐEÐEÐEr(   c            	      ób  — t          t          t          dgg¦  «        i ¦  «        dk    sJ ‚t          t          t          dgdgg¦  «        i ¦  «        dk    sJ ‚t          ddhgddi¦  «        dk    sJ ‚t          ddhgddi¦  «        dk    sJ ‚t          t          t          g d¢ddgdd	gg¦  «        ddi¦  «        d
k    sJ ‚t          t          t          g d¢ddgddgg¦  «        ddi¦  «        dk    sJ ‚t          d¦  «        \  } }}t	          | |z  |z  || z  | gi ¦  «        | dfk    sJ ‚d S )Nr0   r1   r3   r2   Tr8   r5   r7   r4   r9   r6   r*   )r   ÚmapÚsetr   r   r,   s      r&   Útest_unit_clause_int_reprrB   E   s‘  € Ý$¥S­°¨s¨e¡_¤_°bÑ9Ô9¸YÒFÐFÐFÐFÝ$¥S­°¨s°R°D¨kÑ%:Ô%:¸BÑ?Ô?À9ÒLÐLÐLÐLÝ$ q¨! f X°°4¨yÑ9Ô9¸YÒFÐFÐFÐFÝ$ q¨! f X°°4¨yÑ9Ô9¸YÒFÐFÐFÐFÝ$¥S­Ø	ˆˆ�Q˜�G˜a ˜WÐ%ñ&'ô &'Ø)*¨D¨	ñ3ô 3Ø6@òAð Að Að Aå$¥S­Ø	ˆˆ�Q˜�G˜a ˜VÐ$ñ&&ô &&Ø()¨4 yñ2ô 2Ø5>ò?ð ?ð ?ð ?õ �gÑÔ�G€A€qˆ!Ý˜Q ™U Q™Y¨¨Q¨B©°Ð3°RÑ8Ô8¸QÀ¸IÒEÐEÐEÐEÐEÐEr(   c                  ó¸   — t          d¦  «        \  } }}t          | |z  g| ¦  «        g k    sJ ‚t          | |z  |  |z  | |z  | g| ¦  «        || |z  | gk    sJ ‚d S )Nr*   )r   r   r,   s      r&   Útest_unit_propagaterD   S   s|   € Ý�gÑÔ�G€A€qˆ!Ý˜1˜q™5˜' 1Ñ%Ô%¨Ò+Ð+Ð+Ð+Ý˜1˜q™5 1 " q¡&¨1¨"¨q©&°!Ð4°aÑ8Ô8¸QÀÀÀQÁÈ¸NÒJÐJÐJÐJÐJÐJr(   c            	      óª   — t          ddhgd¦  «        g k    sJ ‚t          t          t          ddgddgddgdgg¦  «        d¦  «        dhddhgk    sJ ‚d S )Nr0   r2   r3   r6   r7   )r   r@   rA   r:   r(   r&   Útest_unit_propagate_int_reprrF   Y   s†   € Ý" Q¨ F 8¨QÑ/Ô/°2Ò5Ð5Ð5Ð5Ý"¥3¥sØ
ˆQˆ�"�a�˜2˜q˜' A 3Ð'ñ$)ô $)Ø*+ñ-ô -Ø23°°r¸1°g°ò?ð ?ð ?ð ?ð ?ð ?r(   c                  óv   — t          d¦  «        \  } }}t          | |z  g| |g| d|di¦  «        | d|dik    sJ ‚dS )z"This is also tested in test_dimacsr*   TN)r   r   r,   s      r&   Ú	test_dpllrH   _   sT   € å�gÑÔ�G€A€qˆ!Ý��Q‘�˜!˜Q˜ ! T¨1¨dÐ!3Ñ4Ô4¸¸DÀ!ÀTÐ8JÒJÐJÐJÐJÐJÐJr(   c                  óª  — t          d¦  «        \  } }}t          | |  z  ¦  «        du sJ ‚t          | | z  ¦  «        | d|dik    sJ ‚t          | |z  ¦  «        | di|di| d|difv sJ ‚t          |  |z  | | z  z  ¦  «        | d|di| d|difv sJ ‚t          | |z  | |z  z  ¦  «        | d|di| d|di|d|difv sJ ‚t          | |z  |z  ¦  «        | d|d|dik    sJ ‚t          | |z  | |z	  z  ¦  «        |dik    sJ ‚t          t          | |¦  «        | z  ¦  «        | d|dik    sJ ‚t          t          | |¦  «        |  z  ¦  «        | d|dik    sJ ‚d S ©Nr*   FT)r   r   r	   r,   s      r&   Útest_dpll_satisfiablerK   e   s	  € Ý�gÑÔ�G€A€qˆ!Ý˜Q ! ™VÑ%Ô%¨Ð.Ð.Ð.Ð.Ý˜Q ! ™VÑ%Ô%¨!¨T°1°eÐ)<Ò<Ð<Ð<Ð<ÝØ	ˆA‰ñô Ø˜�I  4˜y¨1¨d°A°tÐ*<Ð=ð>ð >ð >ð >åØ
ˆˆa‰�Q�B˜‘FÑñô Ø#$ d¨A¨tÐ"4°q¸%ÀÀEÐ6JÐ!KðLð Lð Lð Lå˜a !™e¨¨¨Q©Ñ/Ñ1Ô1°q¸$ÀÀ5Ð6IØ��a˜Ð  D¨!¨TÐ 2ð64ð 4ð 4ð 4ð 4å˜Q ™U Q™YÑ)Ô)¨a°°q¸$ÀÀ4Ð-HÒHÐHÐHÐHÝ˜a !™e¨¨Q©Ñ/Ñ1Ô1°a¸°YÒ>Ð>Ð>Ð>Ý�Z¨¨1Ñ-Ô-°Ñ1Ñ3Ô3¸¸4ÀÀDÐ7IÒIÐIÐIÐIÝ�Z¨¨1Ñ-Ô-°°Ñ2Ñ4Ô4¸¸EÀ1ÀeÐ8LÒLÐLÐLÐLÐLÐLr(   c                  ó´  — t          d¦  «        \  } }}t          | |  z  ¦  «        du sJ ‚t          | | z  ¦  «        | d|dik    sJ ‚t          | |z  ¦  «        | di|di| d|difv sJ ‚t          |  |z  | | z  z  ¦  «        | d|di| d|difv sJ ‚t          | |z  | |z  z  ¦  «        | d|d|di| d|d|difv sJ ‚t          | |z  |z  ¦  «        | d|d|dik    sJ ‚t          | |z  | |z	  z  ¦  «        |d| di|d| difv sJ ‚t          t          | |¦  «        | z  ¦  «        | d|dik    sJ ‚t          t          | |¦  «        |  z  ¦  «        | d|dik    sJ ‚d S rJ   )r   Údpll2_satisfiabler	   r,   s      r&   Útest_dpll2_satisfiablerN   u   s$  € Ý�gÑÔ�G€A€qˆ!Ý˜a 1 "™fÑ&Ô&¨%Ð/Ð/Ð/Ð/Ý˜a 1 "™fÑ&Ô&¨1¨d°A°uÐ*=Ò=Ð=Ð=Ð=ÝØ	ˆA‰ñô Ø˜�I  4˜y¨1¨d°A°tÐ*<Ð=ð>ð >ð >ð >åØ
ˆˆa‰�Q�B˜‘FÑñô Ø#$ d¨A¨tÐ"4°q¸%ÀÀEÐ6JÐ!KðLð Lð Lð Lå˜q 1™u¨!¨¨a©Ñ0Ñ2Ô2¸¸4ÀÀEÈ1ÈdÐ7SØ	
ˆD�!�T˜1˜dÐ#ð7%ð %ð %ð %ð %å˜a !™e a™iÑ*Ô*¨q°$¸¸4ÀÀDÐ.IÒIÐIÐIÐIÝ˜q 1™u¨¨a©Ñ0Ñ2Ô2¸¸4ÀÀEÐ7JØ	
ˆD�!�TÐð7ð ð ð ð å�j¨¨AÑ.Ô.°Ñ2Ñ4Ô4¸¸DÀ!ÀTÐ8JÒJÐJÐJÐJÝ�j¨¨AÑ.Ô.°!°Ñ3Ñ5Ô5¸!¸UÀAÀuÐ9MÒMÐMÐMÐMÐMÐMr(   c            
      ó¢  — t          d¦  «        \  } }}d„ } || |  z  ¦  «        du sJ ‚ || | z  ¦  «        | d|dik    sJ ‚ || |z  ¦  «        | di|di| d|di| d|di| d|difv sJ ‚ ||  |z  | | z  z  ¦  «        | d|di| d|difv sJ ‚ || |z  | |z  z  ¦  «        | d|d|di| d|d|di| d|d|di| d|d|difv sJ ‚ || |z  |z  ¦  «        | d|d|dik    sJ ‚ || |z  | |z	  z  ¦  «        |d| di|d| difv sJ ‚ |t          | |¦  «        | z  ¦  «        | d|dik    sJ ‚ |t          | |¦  «        |  z  ¦  «        | d|dik    sJ ‚d S )Nr*   c                 ó$   — t          | d¬¦  «        S )NÚ	minisat22©Ú	algorithm©r   )Úexprs    r&   ú<lambda>z,test_minisat22_satisfiable.<locals>.<lambda>ˆ   s   € ­°TÀ[Ð)QÑ)QÔ)Q€ r(   FT)r   r	   )r$   r%   r-   Úminisat22_satisfiables       r&   Útest_minisat22_satisfiablerX   †   s�  € Ý�gÑÔ�G€A€qˆ!ØQÐQÐØ Ð  ! q b¡&Ñ*Ô*¨eÐ3Ð3Ð3Ð3Ø Ð  ! q b¡&Ñ*Ô*¨q°$¸¸5Ð.AÒAÐAÐAÐAØ Ð Ø	ˆA‰ñô Ø˜�I  5˜z¨A¨u°a¸Ð+>ÀÀDÈ!ÈTÐ@RÐUVÐX\Ð^_ÐafÐTgÐhðið ið ið ià Ð Ø
ˆˆa‰�Q�B˜‘FÑñô Ø#$ d¨A¨tÐ"4°q¸%ÀÀEÐ6JÐ!KðLð Lð Lð Là Ð  1 q¡5¨a¨R°!©VÑ"4Ñ6Ô6¸A¸tÀQÈÈqÐRVÐ;WØ	
ˆD�!�T˜1˜dÐ# a¨°°4¸¸DÐ%AÀAÀtÈQÐPUÐWXÐZ_ÐC`ð;bð bð bð bð bà Ð  ! a¡%¨!¡)Ñ.Ô.°1°d¸A¸tÀQÈÐ2MÒMÐMÐMÐMØ Ð  1 q¡5¨Q°!©VÑ"4Ñ6Ô6¸A¸tÀQÈÐ;NØ	
ˆD�!�TÐð;ð ð ð ð à Ð ¥*¨Q°Ñ"2Ô"2°QÑ"6Ñ8Ô8¸QÀÀaÈÐ<NÒNÐNÐNÐNØ Ð ¥*¨Q°Ñ"2Ô"2°a°RÑ"7Ñ9Ô9¸aÀÈÈ5Ð=QÒQÐQÐQÐQÐQÐQr(   c            
      ó  — t          d¦  «        \  } }}d
d„} || |  z  ¦  «        du sJ ‚ || | z  ¦  «        | d|dik    sJ ‚ || |z  ¦  «        | di|di| d|di| d|di| d|difv sJ ‚ ||  |z  | | z  z  ¦  «        | d|di| d|difv sJ ‚ || |z  | |z  z  ¦  «        | d|d|di| d|d|di| d|d|di| d|d|difv sJ ‚ || |z  |z  ¦  «        | d|d|dik    sJ ‚ || |z  | |z	  z  ¦  «        |d| di|d| difv sJ ‚ |t          | |¦  «        | z  ¦  «        | d|dik    sJ ‚ |t          | |¦  «        |  z  ¦  «        | d|dik    sJ ‚t          | |z  |z  ddd¬¦  «        }t          |¦  «        }d„ |                     ¦   «         D ¦   «         }t          |¦  «        }d„ |                     ¦   «         D ¦   «         }t          |¦  «        }d	„ |                     ¦   «         D ¦   «         }||k    rJ ‚||k    rJ ‚||k    rJ ‚d S )Nr*   Tc                 ó&   — t          | dd¬¦  «        S )NrQ   T)rS   ÚminimalrT   )rU   r[   s     r&   rV   z4test_minisat22_minimal_satisfiable.<locals>.<lambda>™   s   € µ{À4ÐS^ÐhlÐ7mÑ7mÔ7m€ r(   FrQ   )rS   r[   Ú
all_modelsc                 ó   — h | ]	\  }}|¯|’Œ
S r:   r:   ©Ú.0ÚkeyÚvalues      r&   ú	<setcomp>z5test_minisat22_minimal_satisfiable.<locals>.<setcomp>©   ó!   € ÐAÐAÐA™j˜c 5¸5ÐA�cÐAÐAÐAr(   c                 ó   — h | ]	\  }}|¯|’Œ
S r:   r:   r^   s      r&   rb   z5test_minisat22_minimal_satisfiable.<locals>.<setcomp>«   s!   € ÐBÐBÐB™z˜s E¸EÐB�sÐBÐBÐBr(   c                 ó   — h | ]	\  }}|¯|’Œ
S r:   r:   r^   s      r&   rb   z5test_minisat22_minimal_satisfiable.<locals>.<setcomp>­   rc   r(   )T)r   r	   r   ÚnextÚitems)	r$   r%   r-   rW   ÚgÚsolÚfirst_solutionÚsecond_solutionÚthird_solutions	            r&   Ú"test_minisat22_minimal_satisfiablerm   —   sS  € Ý�gÑÔ�G€A€qˆ!ØmÐmÐmÐØ Ð  ! q b¡&Ñ*Ô*¨eÐ3Ð3Ð3Ð3Ø Ð  ! q b¡&Ñ*Ô*¨q°$¸¸5Ð.AÒAÐAÐAÐAØ Ð Ø	ˆA‰ñô Ø˜�I  5˜z¨A¨u°a¸Ð+>ÀÀDÈ!ÈTÐ@RÐUVÐX\Ð^_ÐafÐTgÐhðið ið ið ià Ð Ø
ˆˆa‰�Q�B˜‘FÑñô Ø#$ d¨A¨tÐ"4°q¸%ÀÀEÐ6JÐ!KðLð Lð Lð Là Ð  1 q¡5¨a¨R°!©VÑ"4Ñ6Ô6¸A¸tÀQÈÈqÐRVÐ;WØ	
ˆD�!�T˜1˜dÐ# a¨°°4¸¸DÐ%AÀAÀtÈQÐPUÐWXÐZ_ÐC`ð;bð bð bð bð bà Ð  ! a¡%¨!¡)Ñ.Ô.°1°d¸A¸tÀQÈÐ2MÒMÐMÐMÐMØ Ð  1 q¡5¨Q°!©VÑ"4Ñ6Ô6¸A¸tÀQÈÐ;NØ	
ˆD�!�TÐð;ð ð ð ð à Ð ¥*¨Q°Ñ"2Ô"2°QÑ"6Ñ8Ô8¸QÀÀaÈÐ<NÒNÐNÐNÐNØ Ð ¥*¨Q°Ñ"2Ô"2°a°RÑ"7Ñ9Ô9¸aÀÈÈ5Ð=QÒQÐQÐQÐQÝ�Q˜‘U˜Q‘Y¨+¸dÈdÐSÑSÔS€AÝ
ˆq‰'Œ'€CØAÐA¨C¯IªI©K¬KÐAÑAÔA€NÝˆQ‰Œ€CØBÐB¨S¯YªY©[¬[ÐBÑBÔB€OÝˆQ‰Œ€CØAÐA¨C¯IªI©K¬KÐAÑAÔA€NØ Ò0Ð0Ð0Ð0Ø .Ò0Ð0Ð0Ð0Ø Ò/Ð/Ð/Ð/Ð/Ð/r(   c                  óf   — t          d¦  «        \  } }}t          | | |z	  z  | z  ¦  «        du sJ ‚d S )Nr*   F)r   r   r,   s      r&   Útest_satisfiablero   ²   sC   € Ý�gÑÔ�G€A€qˆ!Ý�q˜A ™F‘| q bÑ(Ñ)Ô)¨UÐ2Ð2Ð2Ð2Ð2Ð2r(   c                  óB  — t          d¦  «        \  } }}t          | || z	  z	  ¦  «        du sJ ‚t          | ||z	  z	  | |z	  | |z	  z	  z	  ¦  «        du sJ ‚t          | |  z	  | |z	  z	  ¦  «        du sJ ‚t          | |z  |z  ¦  «        du sJ ‚t          | |z	  ¦  «        du sJ ‚d S r=   )r   r   r,   s      r&   Ú
test_validrq   ·   sÕ   € Ý�gÑÔ�G€A€qˆ!Ý��q˜A‘v‘ÑÔ 4Ð'Ð'Ð'Ð'Ý�!˜˜Q™‘- a¨1¡f°!°q±&Ñ%9Ñ:Ñ;Ô;¸tÐCÐCÐCÐCÝ�1�"˜˜‘(  Q¡Ñ'Ñ(Ô(¨DÐ0Ð0Ð0Ð0Ý��Q‘˜‘ÑÔ˜uÐ$Ð$Ð$Ð$Ý��a‘‰=Œ=˜EÐ!Ð!Ð!Ð!Ð!Ð!r(   c            	      ó  — t          d¦  «        \  } }}t          d¦  «        du sJ ‚t          | |z  | d|di¦  «        du sJ ‚t          | |z  | di¦  «        du sJ ‚t          | |z  |di¦  «        du sJ ‚t          | |z  | d |di¦  «        du sJ ‚t          | |z	  | di¦  «        du sJ ‚t          | |z  | z  | d|d|di¦  «        du sJ ‚t          t          | |¦  «        | d|di¦  «        du sJ ‚t          d¦  «        du sJ ‚t          | |z  | d|di¦  «        du sJ ‚t          | |z  | di¦  «        du sJ ‚t          | |z  |di¦  «        du sJ ‚t          | |z  | d|di¦  «        du sJ ‚t          ||d i¦  «        �J ‚t          | |z  | d|d i¦  «        �J ‚t          | |z	  | d|d i¦  «        �J ‚t          t          | |¦  «        | d i¦  «        �J ‚t          t          | |¦  «        | d|d i¦  «        �J ‚t          | |z  | did¬¦  «        �J ‚t          |  | z  | did¬¦  «        �J ‚t          | |z  | d|did¬¦  «        du sJ ‚t          | |z  |  | z  z  | did¬¦  «        du sJ ‚t          || z	  || z	  z	  |did¬¦  «        du sJ ‚d S )Nr*   TF)Údeep)r   r   r	   r,   s      r&   Útest_pl_truert   À   sˆ  € Ý�gÑÔ�G€A€qˆ!Ý�4‰=Œ=˜DÐ Ð Ð Ð Ý�A˜‘E˜A˜t Q¨Ð-Ñ.Ô.°$Ð6Ð6Ð6Ð6Ý�A˜‘E˜A˜t˜9Ñ%Ô%¨Ð-Ð-Ð-Ð-Ý�A˜‘E˜A˜t˜9Ñ%Ô%¨Ð-Ð-Ð-Ð-Ý�A˜‘E˜A˜t Q¨Ð-Ñ.Ô.°$Ð6Ð6Ð6Ð6Ý�A˜‘F˜Q ˜JÑ'Ô'¨4Ð/Ð/Ð/Ð/Ý�A˜‘E˜Q˜B‘J  E¨1¨d°A°tÐ <Ñ=Ô=ÀÐEÐEÐEÐEÝ•:˜a Ñ#Ô# a¨°°5Ð%9Ñ:Ô:¸dÐBÐBÐBÐBõ �5‰>Œ>˜UÐ"Ð"Ð"Ð"Ý�A˜‘E˜A˜u a¨Ð/Ñ0Ô0°EÐ9Ð9Ð9Ð9Ý�A˜‘E˜A˜u˜:Ñ&Ô&¨%Ð/Ð/Ð/Ð/Ý�A˜‘E˜A˜u˜:Ñ&Ô&¨%Ð/Ð/Ð/Ð/Ý�A˜‘E˜A˜u a¨Ð/Ñ0Ô0°EÐ9Ð9Ð9Ð9õ �1�q˜$�iÑ Ô Ð(Ð(Ð(Ý�A˜‘E˜A˜t Q¨Ð-Ñ.Ô.Ð6Ð6Ð6Ý�A˜‘F˜Q  a¨Ð.Ñ/Ô/Ð7Ð7Ð7Ý•:˜a Ñ#Ô# a¨ YÑ/Ô/Ð7Ð7Ð7Ý•:˜a Ñ#Ô# a¨¨q°$Ð%7Ñ8Ô8Ð@Ð@Ð@õ �1�q‘5˜1˜e˜*¨4Ð0Ñ0Ô0Ð8Ð8Ð8Ý�A�2˜˜‘7˜Q ˜J¨TÐ2Ñ2Ô2Ð:Ð:Ð:Ý�1�q‘5˜1˜e Q¨Ð.°TÐ:Ñ:Ô:¸eÐCÐCÐCÐCÝ�1�q‘5˜Q˜B ! ™GÑ$ q¨$ i°dÐ;Ñ;Ô;¸uÐDÐDÐDÐDÝ�A˜‘F  Q¡Ñ'¨!¨T¨¸Ð>Ñ>Ô>À$ÐFÐFÐFÐFÐFÐFr(   c                  óœ   ‡ — ddl mŠ  t          t          d„ ¦  «         t          t          ˆ fd„¦  «         t          t          d„ ¦  «         d S )Nr   ©Úpic                  ó    — t          d¦  «        S )NzJohn Cleese©r   r:   r(   r&   rV   z*test_pl_true_wrong_input.<locals>.<lambda>ã   s   € �w }Ñ5Ô5€ r(   c                  ó4   •— t          d‰ z   ‰ dz  z   ¦  «        S )Né*   r2   ry   rv   s   €r&   rV   z*test_pl_true_wrong_input.<locals>.<lambda>ä   s   ø€ �w r¨B¡w°°q±Ñ'8Ñ9Ô9€ r(   c                  ó    — t          d¦  «        S )Nr{   ry   r:   r(   r&   rV   z*test_pl_true_wrong_input.<locals>.<lambda>å   s   € �w r™{œ{€ r(   )Úsympy.core.numbersrw   r   Ú
ValueErrorrv   s   @r&   Útest_pl_true_wrong_inputr   á   s]   ø€ Ø%Ð%Ð%Ð%Ð%Ð%Ý
�:Ð5Ð5Ñ6Ô6Ð6Ý
�:Ð9Ð9Ð9Ð9Ñ:Ô:Ð:Ý
�:Ð*Ð*Ñ+Ô+Ð+Ð+Ð+r(   c                  ó   — t          d¦  «        \  } }}t          | | |z	  | g¦  «        du sJ ‚t          |t          | |¦  «        | g¦  «        du sJ ‚t          | |z	  |  | z	  z	  ¦  «        du sJ ‚t          | |z	  | |  z	  z	  ¦  «        du sJ ‚d S )NzA, B, CFT)r   r   r	   r,   s      r&   Útest_entailsr�   è   s¾   € Ý�iÑ Ô �G€A€qˆ!Ý�1�q˜A‘v ˜r�lÑ#Ô# uÐ,Ð,Ð,Ð,Ý�1•z ! QÑ'Ô'¨Ð+Ñ,Ô,°Ð4Ð4Ð4Ð4Ý�A˜‘F   q b¡Ñ)Ñ*Ô*¨eÐ3Ð3Ð3Ð3Ý�A˜‘F   q b¡Ñ)Ñ*Ô*¨dÐ2Ð2Ð2Ð2Ð2Ð2r(   c                  óØ  — t          d¦  «        \  } }}t          ¦   «         }|                     | |z	  ¦  «        du sJ ‚|                     | || z	  z	  ¦  «        du sJ ‚|                     | |z	  ¦  «         |                     ||z	  ¦  «         |                     | ¦  «        du sJ ‚|                     |¦  «        du sJ ‚|                     |¦  «        du sJ ‚|                     |  ¦  «        du sJ ‚|                     | ¦  «        du sJ ‚|                     | ¦  «        du sJ ‚|                     | |z	  ¦  «        du sJ ‚|                     | ¦  «         |                     | ¦  «        du sJ ‚|                     |¦  «        du sJ ‚|                     |¦  «        du sJ ‚|                     | ¦  «        du sJ ‚|                     | ¦  «         |                     |¦  «        du sJ ‚d S rJ   )r   r   ÚaskÚtellÚretract)r$   r%   r-   Úkbs       r&   Útest_PropKBr‡   ð   sü  € Ý�gÑÔ�G€A€qˆ!Ý	‰Œ€BØ�6Š6�!�q‘&‰>Œ>˜UÐ"Ð"Ð"Ð"Ø�6Š6�!˜˜Q™‘-Ñ Ô  DÐ(Ð(Ð(Ð(Ø‡G‚GˆA�‰F�O„O€OØ‡G‚GˆA�‰F�O„O€OØ�6Š6�!‰9Œ9˜ÐÐÐÐØ�6Š6�!‰9Œ9˜ÐÐÐÐØ�6Š6�!‰9Œ9˜ÐÐÐÐØ�6Š6�1�"‰:Œ:˜ÐÐÐÐØ�6Š6�1�"‰:Œ:˜ÐÐÐÐØ�6Š6�1�"‰:Œ:˜ÐÐÐÐØ�6Š6�!�q‘&‰>Œ>˜TÐ!Ð!Ð!Ð!Ø‡G‚GˆA�J„J€JØ�6Š6�!‰9Œ9˜ÐÐÐÐØ�6Š6�!‰9Œ9˜ÐÐÐÐØ�6Š6�!‰9Œ9˜ÐÐÐÐØ�6Š6�1�"‰:Œ:˜ÐÐÐÐØ‡J‚Jˆq�M„M€MØ�6Š6�!‰9Œ9˜ÐÐÐÐÐÐr(   c                  óz   — t          ¦   «         } t          d¦  «        \  }}}|                      |¦  «        du sJ ‚dS )z"tolerant to bad inputr*   FN)r   r   rƒ   )r†   r$   r%   r-   s       r&   Útest_propKB_tolerantr‰     s?   € å	‰Œ€BÝ�gÑÔ�G€A€qˆ!Ø�6Š6�!‰9Œ9˜ÐÐÐÐÐÐr(   c                  ó–  — t          d¦  «        \  } }t          j        | |z  ¦  «        }t          t          j        | |z  ¦  «        t          j        | ¦  «        t          j        |¦  «        z  ¦  «        }t          j        | ¦  «         t          j        |¦  «         z  }t          j        | ¦  «        dt          j        | |z  ¦  «        dit          j        |¦  «        dt          j        | |z  ¦  «        dit          j        | ¦  «        dt          j        |¦  «        dt          j        | |z  ¦  «        dit          j        | ¦  «        dt          j        |¦  «        dt          j        | |z  ¦  «        dit          j        | ¦  «        dt          j        |¦  «        dt          j        | |z  ¦  «        dig}t	          t          |||¦  «        d¬¦  «        rJ ‚t	          t          ||| ¦  «        d¬¦  «        |v sJ ‚t	          t          |||¦  «        d¬¦  «        rJ ‚t	          t          ||| ¦  «        d¬¦  «        |v sJ ‚d S )Nzx yTFr   rR   Údpll2)r   r   Úzeror   r   r   )ÚxÚyÚassumptionsÚfactsÚqueryÚrefutationss         r&   Útest_satisfiable_non_symbolsr“     sæ  € Ý�5‰>Œ>�D€A€qÝ”&˜˜1™‘+”+€KÝ•A”F˜1˜Q™3‘K”K¥¤¨¡¤­Q¬V°A©Y¬YÑ!6Ñ7Ô7€EÝŒV�A‰YŒYˆJ�!œ& ™)œ)˜Ñ#€Eå	
Œ�‰Œ�D�!œ&  1¡™+œ+ tÐ,Ý	
Œ�‰Œ�D�!œ&  1¡™+œ+ tÐ,Ý	
Œ�‰Œ�D�!œ& ™)œ) T­1¬6°!°A±#©;¬;¸Ð=Ý	
Œ�‰Œ�D�!œ& ™)œ) U­A¬F°1°Q±3©K¬K¸Ð>Ý	
Œ�‰Œ�E�1œ6 !™9œ9 d­A¬F°1°Q±3©K¬K¸Ð>ð@€Kõ �3˜{¨E°5Ñ9Ô9ÀVÐLÑLÔLÐLÐLÐLÝ•s˜;¨°¨vÑ6Ô6À&ÐIÑIÔIÈ[ÐXÐXÐXÐXÝ�3˜{¨E°5Ñ9Ô9ÀWÐMÑMÔMÐMÐMÐMÝ•s˜;¨°¨vÑ6Ô6À'ÐJÑJÔJÈkÐYÐYÐYÐYÐYÐYr(   c                  ó
  — ddl m}  t          t          ¦  «        t          t          ik    sJ ‚t          | j        ¦  «        t          t          ik    sJ ‚t          t          ¦  «        du sJ ‚t          | j        ¦  «        du sJ ‚d S )Nr   ©ÚSF)Úsympy.core.singletonr–   r   r
   r   r•   s    r&   Útest_satisfiable_boolr˜     sŠ   € Ø&Ð&Ð&Ð&Ð&Ð&Ý•tÑÔ¥¥t Ò,Ð,Ð,Ð,Ý�q”vÑÔ¥4­ ,Ò.Ð.Ð.Ð.Ý•uÑÔ Ð&Ð&Ð&Ð&Ý�q”wÑÔ 5Ð(Ð(Ð(Ð(Ð(Ð(r(   c                  óâ  ‡‡	— ddl m} m} t          t	          dd¬¦  «        ¦  «        du sJ ‚t          t	          | |  z	  | z  d¬¦  «        ¦  «        dgk    sJ ‚t          t	          dd¬¦  «        ¦  «        t          t          igk    sJ ‚| d|di| d|dig}t	          | |z  d¬¦  «        Š|                     t          ‰¦  «        ¦  «         |                     t          ‰¦  «        ¦  «         t          t          ˆfd„¦  «         |rJ ‚t          t	          t          | |¦  «        d¬¦  «        ¦  «        | d|di| d|digk    sJ ‚| d|di| d|di| d|dig}t	          | |z	  d¬¦  «        D ]}|                     |¦  «         Œ|rJ ‚ddlm} ddlm}  |¦   «         Š	ˆ	fd	„t          d
¦  «        D ¦   «         }t	           ||Ž d¬¦  «        Št          d¦  «        D ]}t          ‰¦  «        sJ ‚Œd S )Nr   r#   FT)r\   c                  ó"   •— t          ‰ ¦  «        S ©N©rf   )Úresults   €r&   rV   z-test_satisfiable_all_models.<locals>.<lambda>/  s   ø€ ¥$ v¡,¤,€ r(   )Únumbered_symbols©r   c                 ó.   •— g | ]}t          ‰¦  «        ‘ŒS r:   rœ   )r_   ÚiÚsyms     €r&   ú
<listcomp>z/test_satisfiable_all_models.<locals>.<listcomp>@  s   ø€ Ð'Ð'Ð'�q�ˆc‰ŒÐ'Ð'Ð'r(   éd   é
   )Ú	sympy.abcr$   r%   rf   r   Úlistr
   Úremover   ÚStopIterationr	   Úsympy.utilities.iterablesrž   Úsympy.logic.boolalgr   Úrange)
r$   r%   ÚmodelsÚmodelrž   r   ÚXr¡   r�   r¢   s
           @@r&   Útest_satisfiable_all_modelsr°   %  s~  øø€ ØÐÐÐÐÐÐÐÝ•˜E¨dÐ3Ñ3Ô3Ñ4Ô4¸Ð=Ð=Ð=Ð=Ý•˜Q 1 "™W¨™M°dÐ;Ñ;Ô;Ñ<Ô<ÀÀÒGÐGÐGÐGÝ•˜D¨TÐ2Ñ2Ô2Ñ3Ô3½½t¸°~ÒEÐEÐEÐEà�$˜˜5Ð! A u¨a°Ð#6Ð7€FÝ˜˜Q™¨4Ð0Ñ0Ô0€FØ
‡M‚M•$�v‘,”,ÑÔÐØ
‡M‚M•$�v‘,”,ÑÔÐÝ
�=Ð.Ð.Ð.Ð.Ñ/Ô/Ð/ØÐÐˆ:å•�J q¨!Ñ,Ô,¸Ð>Ñ>Ô>Ñ?Ô?Øˆ��5Ð˜A˜t Q¨Ð-Ð.ò/ð /ð /ð /ð �%˜˜EÐ" Q¨¨q°$Ð$7¸!¸TÀ1ÀdÐ9KÐL€FÝ˜Q !™V°Ð5Ñ5Ô5ð ð ˆØ�Š�eÑÔÐÐØÐÐˆ:ð
 ;Ð:Ð:Ð:Ð:Ð:Ø&Ð&Ð&Ð&Ð&Ð&Ø
Ð
Ñ
Ô
€CØ'Ð'Ð'Ð'�E #™JœJÐ'Ñ'Ô'€AÝ˜˜˜Q˜¨DÐ1Ñ1Ô1€FÝ�2‰YŒYð ð ˆÝ�F‰|Œ|ÐÐˆ|Ððð r(   c                  ó¼  — t          d¦  «        } | st          d¦  «         t          d¦  «        \  }}}t          d¦  «        \  }}}t          |dk    |dk     z  ¦  «        du sJ ‚t          || z  ¦  «        du sJ ‚t          || |z  |z  z  ¦  «        }t	          |¦  «        du sJ ‚||         du sJ ‚t          |dz  dk    |dk     z  |d	k    z  ¦  «        du sJ ‚d S )
NÚz3úz3 not installed.r*   zx,y,zr2   r0   FTr3   )r!   r    r   r   Úbool)r²   r$   r%   r-   r�   rŽ   Úzr®   s           r&   Útest_z3r¶   F  s  € Ý	�tÑ	Ô	€Bàð "ÝÐ Ñ!Ô!Ð!Ý�gÑÔ�G€A€qˆ!Ý�gÑÔ�G€A€qˆ!Ý˜1 š6 a¨!¢eÑ,Ñ-Ô-°Ð6Ð6Ð6Ð6Ý˜1 ˜r™6Ñ#Ô# uÐ,Ð,Ð,Ð,å˜1   Q¡¨¡
Ñ+Ñ,Ô,€EÝ�‰;Œ;˜$ÐÐÐÐØ�Œ8�tÐÐÐÐõ ˜1 ™6 Qš;¨1¨qª5Ñ1°Q¸²VÑ<Ñ=Ô=ÀÐFÐFÐFÐFÐFÐFr(   c                  ó  ‡— t          d¦  «        } | €t          d¦  «         d„ Šdˆfd„	}d„ }t          d	¦  «        D ]K} |dd
d¬¦  «        }	 t          |¦  «        }n# | j        j        $ r Y Œ2w xY w ||¦  «        du}||k    sJ ‚ŒLd S )Nr²   r³   c                 ót   — t          j        | ¦  «        }t          ¦   «         }|                     |¦  «         |S r›   )r   Ú	from_propr   Úfrom_cnf)ÚbfÚcnfÚencs      r&   Úboolean_formula_to_encoded_cnfz<test_z3_vs_lra_dpll2.<locals>.boolean_formula_to_encoded_cnf]  s1   € ÝŒm˜BÑÔˆÝ‰lŒlˆØ�Š�SÑÔÐØˆ
r(   é   r¥   r2   c                 óF  •— | |k    sJ ‚t          ||d¬¦  «        }d„ |d | …         D ¦   «         }|| d …         D ]H}t          |t          ¦  «        r| }t          d| dz
  ¦  «        }||                              |¦  «         ŒId„ |D ¦   «         }t          |Ž } ‰|¦  «        S )NF)Únum_variablesÚnum_constraintsÚrationalc                 ó   — g | ]}|g‘ŒS r:   r:   )r_   Úconss     r&   r£   zAtest_z3_vs_lra_dpll2.<locals>.make_random_cnf.<locals>.<listcomp>f  s   € Ð@Ð@Ð@˜d�D�6Ð@Ð@Ð@r(   r   r0   c                 ó    — g | ]}t          |Ž ‘ŒS r:   rŸ   )r_   Úclauses     r&   r£   zAtest_z3_vs_lra_dpll2.<locals>.make_random_cnf.<locals>.<listcomp>m  s   € Ð5Ð5Ð5 6•2�v�;Ð5Ð5Ð5r(   )r   Ú
isinstancer   r   Úappendr   )	Únum_clausesrÂ   Únum_varÚconstraintsÚclausesrÅ   r¡   r¼   r¾   s	           €r&   Úmake_random_cnfz-test_z3_vs_lra_dpll2.<locals>.make_random_cnfc  sÒ   ø€ Ø˜oÒ-Ð-Ð-Ð-Ý)¸ÐQ`ÐkpÐqÑqÔqˆØ@Ð@ k°,°;°,Ô&?Ð@Ñ@Ô@ˆØ   Ô-ð 	$ð 	$ˆDÝ˜$¥
Ñ+Ô+ð Ø�u�Ý˜˜; q™=Ñ)Ô)ˆAØ�AŒJ×Ò˜dÑ#Ô#Ð#Ð#à5Ð5¨WÐ5Ñ5Ô5ˆÝ�7ˆmˆØ-Ð-¨cÑ2Ô2Ð2r(   c                 ó$   — t          | d¬¦  «        S )NT©Úuse_lra_theory)rM   )r�   s    r&   rV   z&test_z3_vs_lra_dpll2.<locals>.<lambda>q  s   € Õ&7¸È$Ð&OÑ&OÔ&O€ r(   é2   é   )rÊ   rÂ   rË   F)r¿   r¥   r2   )r!   r    r¬   r   Úz3typesÚZ3Exception)r²   rÎ   Úlra_dpll2_satisfiableÚ_r¼   Úz3_satÚlra_dpll2_satr¾   s          @r&   Útest_z3_vs_lra_dpll2rÚ   X  sö   ø€ Ý	�tÑ	Ô	€BØ	€zÝÐ Ñ!Ô!Ð!ðð ð ð3ð 3ð 3ð 3ð 3ð 3ð PÐOÐå�2‰YŒYð 
'ð 
'ˆØˆo¨"¸bÈ!ÐLÑLÔLˆð	Ý# CÑ(Ô(ˆFˆFøØŒzÔ%ð 	ð 	ð 	ØˆHð	øøøð .Ð-¨cÑ2Ô2¸%Ð?ˆà˜Ò&Ð&Ð&Ð&Ð&ð
'ð 
's   ÁAÁA0Á/A0c                  óª  ‡— t          d¦  «        \  } Šg d¢g d¢g d¢g d¢g d¢g d¢g d¢g d	¢g d
¢ddgg d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢ddgg d¢g d¢g d¢g d¢g d¢dgdgg}ˆfd„t          dd¦  «        D ¦   «         }d|t          j        | d ¦  «        <   d|t          j        | d ¦  «        <   t          ||¦  «        }t          |d!¬"¦  «        d#u sJ ‚d S )$Nzx,y)r0   r7   r4   )r¿   é   iøÿÿÿéúÿÿÿéüÿÿÿ)éöÿÿÿé÷ÿÿÿr¥   é   rÞ   )iôÿÿÿé   é   )rß   é	   rÝ   rá   rÞ   )é   éñÿÿÿé   iíÿÿÿéïÿÿÿ)rá   rÝ   r¥   rà   )rä   rá   rß   rà   )r2   r7   r3   ióÿÿÿé   )ræ   r6   rè   )iðÿÿÿræ   é   rè   )rÝ   rà   r¥   rá   rÞ   )é   r3   r4   )iéÿÿÿiêÿÿÿiëÿÿÿ)r¥   rá   rß   rà   )rä   rá   rÞ   rß   )é   rÝ   rÞ   iòÿÿÿ)rß   rà   rä   rÝ   rá   )é   iåÿÿÿiæÿÿÿ)ræ   rê   iîÿÿÿrè   )r¿   é   iùÿÿÿrÝ   rÞ   )iâÿÿÿiãÿÿÿé   rã   c                 óT   •— i | ]$}|d k    ¯|dk    ¯t          j        ‰|¦  «        |“Œ%S )rá   ré   )r   Úgt)r_   r¡   rŽ   s     €r&   ú
<dictcomp>z$test_issue_27733.<locals>.<dictcomp>‡  s2   ø€ ÐKÐKÐK !°q¸B²w°wÀ1ÈÂ7À7•”�Q˜‘
”
˜AÀ7À7À7r(   r0   é   rá   r   TrÐ   F)r   r¬   r   rñ   Últr   r   )r�   rÍ   Úencodingr¼   rŽ   s       @r&   Útest_issue_27733rö     sa  ø€ Ý�5‰>Œ>�D€A€qØˆ{ˆ{Ð.Ð.Ð.Ð0EÐ0EÐ0EÀ}À}À}ÐVjÐVjÐVjØ&Ð&Ð&Ð(8Ð(8Ð(8Ð:JÐ:JÐ:JÈKÈKÈKÐZ]Ð_aÐYbÐdqÐdqÐdqØ"Ð"Ð"Ð$8Ð$8Ð$8¸,¸,¸,ÈÈÈÐYjÐYjÐYjØÐÐ   °°R¨yÐ:NÐ:NÐ:NÐP^ÐP^ÐP^Ð`sÐ`sÐ`sØ!Ð!Ð! > > >°B°4¸"¸ð	?€Gð LÐKÐKÐK¥u¨Q°¡|¤|ÐKÑKÔK€HØ€H�QŒT�!�Q‰ZŒZÑØ€H�QŒT�!�Q‰ZŒZÑå
�W˜hÑ
'Ô
'€CÝ�s¨4Ð0Ñ0Ô0°EÐ9Ð9Ð9Ð9Ð9Ð9r(   N)GÚ__doc__Úsympy.assumptions.askr   Úsympy.core.symbolr   Úsympy.core.relationalr   r«   r   r   r   r	   r
   r   Úsympy.logic.inferencer   r   r   r   r   r   Úsympy.logic.algorithms.dpllr   r   r   r   r   r   r   r   Úsympy.logic.algorithms.dpll2rM   Ú!sympy.logic.algorithms.z3_wrapperr   Úsympy.assumptions.cnfr   r   Ú!sympy.logic.tests.test_lra_theoryr   Úsympy.core.randomr   Úsympy.testing.pytestr   r    Úsympy.externalr!   r'   r.   r;   r>   rB   rD   rF   rH   rK   rN   rX   rm   ro   rq   rt   r   r�   r‡   r‰   r“   r˜   r°   r¶   rÚ   rö   r:   r(   r&   ú<module>r     sT  ðØ 7Ð 7à #Ð #Ð #Ð #Ð #Ð #Ø %Ð %Ð %Ð %Ð %Ð %Ø ,Ð ,Ð ,Ð ,Ð ,Ð ,Ø IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ Ið2ð 2ð 2ð 2ð 2ð 2ð 2ð 2ð 2ð 2ð 2ð 2ð 2ð 2ð 2ð 2ðð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð OÐ NÐ NÐ NÐ NÐ Nà <Ð <Ð <Ð <Ð <Ð <Ø 1Ð 1Ð 1Ð 1Ð 1Ð 1Ð 1Ð 1Ø AÐ AÐ AÐ AÐ AÐ AØ %Ð %Ð %Ð %Ð %Ð %à -Ð -Ð -Ð -Ð -Ð -Ð -Ð -Ø (Ð (Ð (Ð (Ð (Ð (ð#ð #ð #ð=ð =ð =ð=ð =ð =ð	Fð 	Fð 	FðFð Fð FðKð Kð Kð?ð ?ð ?ðKð Kð KðMð Mð Mð Nð Nð Nð"Rð Rð Rð"0ð 0ð 0ð63ð 3ð 3ð
"ð "ð "ðGð Gð GðB,ð ,ð ,ð3ð 3ð 3ðð ð ð.ð ð ðZð Zð Zð )ð )ð )ðð ð ðBGð Gð Gð$%'ð %'ð %'ðN:ð :ð :ð :ð :r(   