o
    à8Va“  ã                   @   sn   d dl mZmZmZmZmZmZmZ d dlm	Z	m
Z
mZmZ edƒ\ZZZdd„ Zdd„ Zdd	„ Zd
d„ ZdS )é    )ÚMulÚBasicÚQÚExprÚAndÚsymbolsÚOr)ÚClassFactRegistryÚallargsÚanyargÚexactlyoneargzx y zc                  C   s‚   t ƒ } |  t¡dd„ ƒ}|  t¡dd„ ƒ}| t tƒ tƒ fks!J ‚| t tƒ t|hƒfks/J ‚| t t|hƒt|hƒfks?J ‚d S )Nc                 S   ó   d S ©N© ©Úexprr   r   úJ/usr/lib/python3/dist-packages/sympy/assumptions/tests/test_sathandlers.pyÚfact1   ó   z*test_class_handler_registry.<locals>.fact1c                 S   r   r   r   r   r   r   r   Úfact2   r   z*test_class_handler_registry.<locals>.fact2)r	   Úregisterr   Zmultiregisterr   r   Ú	frozenset)Zmy_handler_registryr   r   r   r   r   Útest_class_handler_registry	   s   

$r   c                   C   s‚   t tt t¡tt ƒtt t¡t t¡ƒksJ ‚t tt t¡t t¡B tt ƒtt t¡t t¡B t t¡t t¡B ƒks?J ‚d S r   )r
   Úxr   ÚzeroÚyr   ÚpositiveÚnegativer   r   r   r   Útest_allargs   s   0Rr   c                   C   s‚   t tt t¡tt ƒtt t¡t t¡ƒksJ ‚t tt t¡t t¡@ tt ƒtt t¡t t¡@ t t¡t t¡@ ƒks?J ‚d S r   )r   r   r   r   r   r   r   r   r   r   r   r   Útest_anyarg   s   0(ÿr   c                   C   sJ  t tt t¡tt ƒtt t¡t t¡ @ t t¡t t¡ @ ƒks$J ‚t tt t¡tt t ƒtt t¡t t¡ @ t t¡ @ t t¡t t¡ @ t t¡ @ t t¡t t¡ @ t t¡ @ ƒksfJ ‚t tt t¡t t¡B tt ƒtt t¡t t¡B t t¡t t¡B  @ t t¡t t¡B t t¡t t¡B  @ ƒks£J ‚d S r   )	r   r   r   r   r   r   Úzr   r   r   r   r   r   Útest_exactlyonearg$   s*   ,ÿ*
ÿ
ÿ ÿÿÿÿÿÿr!   N)Zsympyr   r   r   r   r   r   r   Zsympy.assumptions.sathandlersr	   r
   r   r   r   r   r    r   r   r   r!   r   r   r   r   Ú<module>   s   $ 