Ë
    âQ(hch ã                   óÈ   — d Z ddlZddlZddlZddlmZ ddlmZ ddl	m
Z
 ddlmZmZ 	 ddlZd„ Z G d	„ d
e«      Z G d„ d«      Z G d„ d«      Zy# e$ r  ed«      ZY Œ2w xY w)z÷Tests for hyp2f1 for complex values.

Author: Albert Steppi, with credit to Adam Kullberg (FormerPhycisist) for
the implementation of mp_hyp2f1 below, which modifies mpmath's hyp2f1 to
return the same branch as scipy's on the standard branch cut.
é    N)Ú
NamedTuple)Úassert_allclose)Úhyp2f1)Úcheck_versionÚMissingModuleÚmpmathc                 ó´  — |j                   dkD  xr t        |j                  «      dk  }t        || z
  t        || z
  «      z
  «      dk  xr t        || z
  «      dk  }t        ||z
  t        ||z
  «      z
  «      dk  xr t        ||z
  «      dk  }|r|j                   dz   }|r|s|s|j                   dz   }n|}t	        t        j                  | |||«      «      S )a)  Return mpmath hyp2f1 calculated on same branch as scipy hyp2f1.

    For most values of a,b,c mpmath returns the x - 0j branch of hyp2f1 on the
    branch cut x=(1,inf) whereas scipy's hyp2f1 calculates the x + 0j branch.
    Thus, to generate the right comparison values on the branch cut, we
    evaluate mpmath.hyp2f1 at x + 1e-15*j.

    The exception to this occurs when c-a=-m in which case both mpmath and
    scipy calculate the x + 0j branch on the branch cut. When this happens
    mpmath.hyp2f1 will be evaluated at the original z point.
    ç      ð?çVçž¯Ò<r   ù                y        Vçž¯Ò<)ÚrealÚabsÚimagÚroundÚcomplexr   r   )ÚaÚbÚcÚzÚon_branch_cutÚcond1Úcond2Úz_mpmaths           ú]/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/scipy/special/tests/test_hyp2f1.pyÚ	mp_hyp2f1r      sË   € ð —F‘F˜S‘LÒ:¤S¨¯©£[°7Ñ%:€MÜ��A‘œ˜a !™e›Ñ$Ó%¨Ñ/ÒE´E¸!¸a¹%³LÀAÑ4E€EÜ��A‘œ˜a !™e›Ñ$Ó%¨Ñ/ÒE´E¸!¸a¹%³LÀAÑ4E€EáØ�F‰F�T‰MˆÙ™e¡uØ—6‘6˜HÑ$‰àˆÜ”6—=‘=  A q¨(Ó3Ó4Ð4ó    c                   óJ   — e Zd ZU eed<   eed<   eed<   eed<   eed<   eed<   y)ÚHyp2f1TestCaser   r   r   r   ÚexpectedÚrtolN)Ú__name__Ú
__module__Ú__qualname__ÚfloatÚ__annotations__r   © r   r   r   r   1   s!   … ØƒHØƒHØƒHØƒJØÓØ
„Kr   r   c            %       ó^<  — e Zd ZdZej
                  j                  d ej                   edddde	j                  dz   d¬	«      «       ej                   eddddd
d¬	«      «       ej                   eddddd
d¬	«      «       ej                   eddddd
d¬	«      «       ej                   edddde	j                  dz   d¬	«      «       ej                   edddde	j                  dz   d¬	«      «       ej                   edddddd¬	«      «       ej                   edddddd¬	«      «       ej                   edddddd¬	«      «       ej                   edddddd¬	«      «       ej                   edddd
dd¬	«      «      g«      d„ «       Zej
                  j                  d ej                   edddd
dd¬	«      «       ej                   edddd
dd¬	«      «       ej                   ed d!d"d
d#d$¬	«      «       ej                   ed%d&d"d
d'd(¬	«      «       ej                   ed&d%d"d
d)d*¬	«      «       ej                   ed+d,d-d
d.d¬	«      «       ej                   ed,d+d-d
d.d(¬	«      «       ej                   ed/d0d1d
d2d(¬	«      «       ej                   ed0d/d1d
d2d(¬	«      «       ej                   ed3d4d5d
d6d7¬	«      «       ej                   ed8d9dd
d:d$¬	«      «      g«      d;„ «       Zej
                  j                  d ej                   eddd5d<d=d¬	«      «       ej                   eddd>d<d?d¬	«      «       ej                   ed@dAdBd<dCdD¬	«      «       ej                   ed3d4dEd<dFdD¬	«      ej
                  j                  ej                   dGk  dH¬I«      ¬J«      g«      dK„ «       Zej
                  j                  d ej                   eddLdMdNdOd$¬	«      «       ej                   edPdQdRdSdTd(¬	«      «       ej                   edPdUdVdNdWdX¬	«      «       ej                   eddYdZd[d\d*¬	«      «       ej                   edLdd]dNd^d(¬	«      «       ej                   edQdPdRd_d`d*¬	«      «       ej                   edaddVdNdbd*¬	«      «       ej                   edcdddedfdgd$¬	«      «      g«      dh„ «       Zej
                  j                  d ej                   edidjdkdldmdn¬	«      «       ej                   edodZddNdpdq¬	«      «       ej                   edodjdrdsdtdu¬	«      «       ej                   edidjdkdvdwdu¬	«      «       ej                   edxdidkdydzdX¬	«      «      g«      d{„ «       Zej
                  j                  d ej                   edxdjd|d}d~d¬	«      «       ej                   ed€djd|d�d‚dƒ¬	«      «       ej                   edLdMd„d…d†d‡¬	«      «       ej                   edLdˆd‰dŠd‹dŒ¬	«      «       ej                   edad]d‰d�dŽd‡¬	«      «       ej                   edLd]d�d}d�d‘¬	«      «       ej                   edxdjd|d’d“d(¬	«      «       ej                   edxdjd”d’d•dD¬	«      ej
                  j                  d–¬—«      ¬J«       ej                   edLdˆd‰d˜d™d(¬	«      «      g	«      dš„ «       Zej
                  j                  d ej                   edLdMd�d›dœd‡¬	«      «       ej                   ed�dˆdždŸd d¡¬	«      «       ej                   ed€d]d¢d£d¤d‡¬	«      «       ej                   edad¥d¢d¦d§d‡¬	«      «       ej                   edLd]d¨d©dªd¬	«      «       ej                   edLd¥d«dŸd¬d*¬	«      «       ej                   ed�d¥d­d®d¯d(¬	«      «       ej                   edUdZd‰d°d±d²¬	«      «       ej                   edad³d´dµd¶d(¬	«      «       ej                   ed�d·džd¸d¹d‡¬	«      «       ej                   edUdZd|dºd»d²¬	«      «       ej                   ed€dRd­d¼d½d²¬	«      «       ej                   edUd³d„d£d¾d¬	«      «       ej                   edYdMd‰d¿dÀd²¬	«      «       ej                   edQdˆd�dÁdÂd‡¬	«      «       ej                   edQdˆdžd›dÃdÄ¬	«      «       ej                   edYdMd¨d£dÅd‡¬	«      «       ej                   edÆdVd­dÇdÈd²¬	«      «       ej                   edÉdMd|d©dÊd‡¬	«      «       ej                   edQdjdždËdÌd‡¬	«      «       ej                   edÉdRdždÍdÎd‡¬	«      «       ej                   edYd·dždÏdÐd‡¬	«      «       ej                   edxd³d¨dÑdÒd²¬	«      «       ej                   edxd³d|dÓdÔd¬	«      «       ej                   edÆdjd¨d¼dÕd(¬	«      «      g«      dÖ„ «       Zej
                  j                  dg  ej                   ed×dØdÙdÚdÛd²¬	«      «      ‘ ej                   edÜdÝdÞdßdàd²¬	«      «      ‘ ej                   edádádÞdâdãd‡¬	«      «      ‘ ej                   edädådkdÚdæd‘¬	«      «      ‘ ej                   edçdèdidâdéd‡¬	«      «      ‘ ej                   edädáddÚdêd²¬	«      «      ‘ ej                   edÝdÜdëdìdíd²¬	«      «      ‘ ej                   edÜdådkdâdîd¬	«      «      ‘ ej                   edÝdádÙdâdïd²¬	«      «      ‘ ej                   edadZd|dNdðd²¬	«      «      ‘ ej                   edÜdÝdidNdñd²¬	«      «      ‘ ej                   edQd·d¨dòdód²¬	«      «      ‘ ej                   edYdMd‰dNdôd‡¬	«      «      ‘ ej                   edèd×dõdÚdöd÷¬	«      ej
                  j                  dø¬—«      ¬J«      ‘ ej                   edÝdùdÞdßdúd¬	«      «      ‘ ej                   edÜdØdûdNdüd¬	«      «      ‘ ej                   edèdÜdÙdÚdýd¬	«      «      ‘ ej                   edÝdÜdidâdþd(¬	«      «      ‘ ej                   ed×dådëdßdÿd²¬	«      «      ‘ ej                   edxd³d„dN�d d(¬	«      «      ‘ ej                   ed�dVd„�d�dd(¬	«      «      ‘ ej                   edçdåddN�dd‡¬	«      «      ‘ ej                   ed€dMd„�d�dd(¬	«      «      ‘ ej                   edØdÜdo�d�dd‘¬	«      «      ‘ ej                   edLdˆdž�d�dd²¬	«      «      ‘ ej                   edØdådo�d�dd‡¬	«      «      ‘ ej                   edÝdådidÚ�d	d²¬	«      «      ‘ ej                   edad]d¨dß�d
d²¬	«      «      ‘ ej                   edQd·d‰dÚ�dd²¬	«      «      ‘ ej                   ed€dMd¢�d�d�d¬	«      «      ‘ ej                   ed�dRdždÚ�dd(¬	«      «      ‘ ej                   edádÝddâ�dd¬	«      «      ‘«      �d„ «       Zej
                  j                  dg  ej                   ed×dèdr�d�dd²¬	«      «      ‘ ej                   e�dd�dˆ�d�dd¬	«      «      ‘ ej                   edd€d³�d�dd²¬	«      «      ‘ ej                   eda�dd³�d�dd¬	«      «      ‘ ej                   edLdR�d�d�d�d¬	«      «      ‘ ej                   edLdjdž�d�dd²¬	«      «      ‘ ej                   e�ddYd³�d�dd‡¬	«      «      ‘ ej                   e�ddÆdR�d�d �d¬	«      «      ‘ ej                   edidˆdr�d!�d"d*¬	«      «      ‘ ej                   edÉdVdž�d�d#d²¬	«      «      ‘ ej                   edxddj�d�d$d*¬	«      «      ‘ ej                   edÉdˆd„�d�d%d¡¬	«      «      ‘ ej                   edÆdZd¢�d!�d&d²¬	«      «      ‘ ej                   edÉdjd��d�d'd¬	«      «      ‘ ej                   edÜdädÞ�d�d(�d)¬	«      ej
                  j                  dø¬—«      ¬J«      ‘ ej                   edÆd·d„�d�d*d²¬	«      «      ‘ ej                   edûdûd]�d!�d+d²¬	«      «      ‘ ej                   edûdod·�d�d,d²¬	«      «      ‘ ej                   edrdÞdV�d�d-d²¬	«      «      ‘ ej                   edodëdR�d�d.d²¬	«      «      ‘ ej                   edkdõdV�d�d/d¬	«      «      ‘ ej                   edidûdj�d!�d0d(¬	«      «      ‘ ej                   edidÙdˆ�d�d1d¬	«      «      ‘ ej                   edÙdëdj�d�d2d²¬	«      «      ‘ ej                   edádÝdõ�d3�d4�d)¬	«      ej
                  j                  dø¬—«      ¬J«      ‘ ej                   edÝd×dû�d5�d6d²¬	«      «      ‘ ej                   edèdèdi�d7�d8d‡¬	«      «      ‘ ej                   ed€ddR�d7�d9d²¬	«      «      ‘ ej                   edUdRd¢�d:�d;�d¬	«      «      ‘ ej                   edadZd´�d<�d=d(¬	«      «      ‘ ej                   edadÙdÙ�d>�d?d‡¬	«      «      ‘ ej                   edèdØdÞ�d<�d@d(¬	«      «      ‘ ej                   edÉ�ddV�dA�dBd‡¬	«      «      ‘ ej                   edQ�ddV�dC�dDd²¬	«      «      ‘ ej                   edkdMdë�dE�dFd‡¬	«      «      ‘ ej                   edQd¥d|�dC�dGdƒ¬	«      «      ‘ ej                   edådäd�d7�dHd²¬	«      «      ‘ ej                   edkd·d�d7�dId(¬	«      «      ‘ ej                   edØdÜdi�d7�dJd‡¬	«      «      ‘ ej                   edYdRd¨�d:�dKd‡¬	«      «      ‘ ej                   eddõdˆ�d>�dLd¬	«      «      ‘ ej                   edõdodZ�d7�dMd(¬	«      «      ‘ ej                   edrdëdV�dC�dNd$¬	«      «      ‘ ej                   edodëdR�d7�dOd²¬	«      «      ‘ ej                   edÙdõdV�d:�dPd‡¬	«      «      ‘ ej                   edëdodj�d5�dQd²¬	«      «      ‘ ej                   edÞdidM�d<�dRd¬	«      «      ‘ ej                   edidkd³�dS�dT�dU¬	«      «      ‘«      �dV„ «       Zej
                  j                  dg  ej                   edûdˆdo�dW�dX�dY¬	«      «      ‘ ej                   edÝdèdû�dZ�d[d‡¬	«      «      ‘ ej                   edLd]d­�dW�d\d‡¬	«      «      ‘ ej                   ed��ddR�dW�d]�d^¬	«      «      ‘ ej                   edUdid�dW�d_dƒ¬	«      «      ‘ ej                   ed�dR�d�dW�d`�d)¬	«      ej
                  j                  dø¬—«      ¬J«      ‘ ej                   e�ddYdR�dZ�dad(¬	«      «      ‘ ej                   edadkdë�db�dc�dd¬	«      «      ‘ ej                   edÆd]�d�dZ�ded(¬	«      «      ‘ ej                   edQd]�d�dZ�dfd²¬	«      «      ‘ ej                   edQdVd­�dg�dhd‡¬	«      «      ‘ ej                   edÆdd·�dW�did²¬	«      «      ‘ ej                   edÙdjdû�dg�djd‡¬	«      «      ‘ ej                   edQdjdž�db�dkd²¬	«      «      ‘ ej                   edÉdRd„�dZ�dldD¬	«      «      ‘ ej                   edØdådë�dg�dmd‡¬	«      «      ‘ ej                   eddõdM�db�dnd¡¬	«      «      ‘ ej                   eddodZ�dZ�dod²¬	«      «      ‘ ej                   edrdkdM�dW�dp�dq¬	«      «      ‘ ej                   eddidR�dW�drd²¬	«      «      ‘ ej                   edëdõdV�dZ�dsd‡¬	«      «      ‘ ej                   edkdõdj�dW�dtd‡¬	«      «      ‘ ej                   edëdÙdV�dg�dud‡¬	«      «      ‘ ej                   edkdÞdj�db�dvd²¬	«      «      ‘ ej                   ed×dádû�dw�dx�d)¬	«      ej
                  j                  dø¬—«      ¬J«      ‘ ej                   edLddõ�dy�dzd²¬	«      «      ‘ ej                   ed��ddZ�d{�d|d(¬	«      «      ‘ ej                   edadˆd­�d}�d~d²¬	«      «      ‘ ej                   ed×dÜd�d�d€�d¬	«      «      ‘ ej                   edod³do�d��d‚�d¬	«      «      ‘ ej                   edUd·d„�dƒ�d„d²¬	«      «      ‘ ej                   ed×dùdÞ�d…�d†�dY¬	«      «      ‘ ej                   edÙd¥dõ�d…�d‡d‡¬	«      «      ‘ ej                   edxdMd‰�d}�dˆd‡¬	«      «      ‘ ej                   edädádk�d‰�dŠd(¬	«      «      ‘ ej                   edådèdk�d‹�dŒ�d�¬	«      «      ‘ ej                   edQdjdž�dŽ�d�d‡¬	«      «      ‘ ej                   edkdRdõ�d�d�d*¬	«      «      ‘ ej                   edÜdÜdÙ�d‘�d’d²¬	«      «      ‘ ej                   edQdkdë�d{�d“d‡¬	«      «      ‘ ej                   edûddM�d‘�d”d¬	«      «      ‘ ej                   edrdûdZ�d‰�d•d²¬	«      «      ‘ ej                   eddÞdM�d–�d—d¬	«      «      ‘ ej                   edûdÞd³�dy�d˜d²¬	«      «      ‘ ej                   edëdodˆ�dy�d™dÄ¬	«      «      ‘ ej                   edëdõdZ�dš�d›d²¬	«      «      ‘ ej                   edÞdÙd]�d–�dœ�d�¬	«      «      ‘ ej                   edkdÞdj�d‘�džd²¬	«      «      ‘«      �dŸ„ «       Zej
                  j                  d ej                   edUdVd��d �d¡d‡¬	«      «       ej                   ed�d]d´�d¢�d£d¬	«      «       ej                   ed€d¥d��d¤�d¥d¬	«      «       ej                   ed€d]d|�d¦�d§d²¬	«      «       ej                   edadVd|�d¦�d¨d²¬	«      «       ej                   edad¥d„�d �d©d*¬	«      «       ej                   edUd³d‰�dª�d«d²¬	«      «       ej                   ed€d·d¢�d �d¬d‡¬	«      «       ej                   ed�djd¢�d �d­d²¬	«      «       ej                   ed€d·d¨�d¦�d®d²¬	«      «       ej                   edadZd«�d¤�d¯d²¬	«      «       ej                   ed€dRd¨�d �d°d¬	«      «       ej                   edYdVd´�d±�d²d‡¬	«      «       ej                   edÉd¥d¢�d¦�d³d‡¬	«      «       ej                   edYd¥dž�d �d´d¬	«      «       ej                   edÉdMd­�d¤�dµd‡¬	«      «       ej                   edxdMd«�dª�d¶d²¬	«      «       ej                   edÉdˆd„�dª�d·du¬	«      «       ej                   edQdZd¢�d �d¸dƒ¬	«      «       ej                   edxdRd´�d±�d¹d²¬	«      «       ej                   edxd³d��d¦�dºd²¬	«      «       ej                   edYdZd„�d¦�d»d‡¬	«      «       ej                   edYdRd­�d¤�d¼d‡¬	«      «       ej                   edYdRd­�d¦�d½d²¬	«      «       ej                   e�d¾�d¾�d¿�dÀ�dÁd²¬	«      «      g«      �dÂ„ «       Zej
                  j                  d ej                   ed5�dÃ�dÄ�dÅ�dÆd‡¬	«      «      g«      �dÇ„ «       Zej
                  j6                   ee�dÈ«      �dÉ„ «       «       Z�dÊ„ Z�yË(Ì  Ú
TestHyp2f1a†  Tests for hyp2f1 for complex values.

    Expected values for test cases were computed using mpmath. See
    `scipy.special._precompute.hyp2f1_data`. The verbose style of specifying
    test cases is used for readability and to make it easier to mark individual
    cases as expected to fail. Expected failures are used to highlight cases
    where improvements are needed. See
    `scipy.special._precompute.hyp2f1_data.make_hyp2f1_test_cases` for a
    function to generate the boilerplate for the test cases.

    Assertions have been added to each test to ensure that the test cases match
    the situations that are intended. A final test `test_test_hyp2f1` checks
    that the expected values in the test cases actually match what is computed
    by mpmath. This test is marked slow even though it isn't particularly slow
    so that it won't run by default on continuous integration builds.
    Úhyp2f1_test_caseg      à?gš™™™™™É?iöÿÿÿyš™™™™™É?š™™™™™É?r   r   )r   r   r   r   r   r    y      ð?        éûÿÿÿyã�VäêÊð?t[5âÜ9­?r   yŸ. îÉ|ñ?•lôoð8Á?iìÿÿÿy�žÌx¾³¿£ •×RÀ?g‚vIhÂ%<=éÿÿÿÿgš™™™™™	@y>
×£p=ú?|®Gázä?éþÿÿÿg333333ó?éüÿÿÿy…ëQ¸ý?        c                 óJ   — |\  }}}}}}t        t        ||||«      ||¬«       y ©N©r    ©r   r   ©Úselfr)   r   r   r   r   r   r    s           r   Útest_c_non_positive_intz"TestHyp2f1.test_c_non_positive_intK   s.   € ðh &6Ñ"ˆˆ1ˆa��H˜dÜœ˜q ! Q¨Ó*¨H¸4Ö@r   g      ø?y
šñdò?        gš™™™™™(@g       @g�Âõ(\O4@y*Ìk“„�A        g33333#r@g     t@gÍÌÌÌÌà…@yk˜|öÿ@X        gê-�™—q=gffffff"@g     lƒ@yÉ:5>ºdÌA        gê-�™—a=yk@5>ºdÌA        g•dyáý•=gÍÌÌÌÌLYÀgfffffyÀg33333ƒeÀyFÔ%ä½°G        g     �e@gš™™™™)iÀgfffffæb@yoîuMÄ�$        gfffff†YÀgÍÌÌÌÌL4ÀgÍÌÌÌÌÌô?y¥(‰¥¡—D        g´àø¤tã =g33333SiÀgfffff&N@yîRUË3”T´        c                 ón   — |\  }}}}}}|dk(  r||z
  |z
  dkD  sJ ‚t        t        ||||«      ||¬«       y)z^Tests for case z = 1, c - a - b > 0.

        Expected answers computed using mpmath.
        é   r   r0   Nr1   r2   s           r   Útest_unital_argumentzTestHyp2f1.test_unital_argumentÂ   sI   € ðt &6Ñ"ˆˆ1ˆa��H˜dØ�AŠv˜!˜a™% !™) aš-Ð'Ð'Üœ˜q ! Q¨Ó*¨H¸4Ö@r   y      ð¿        y+�i,î?        g433333@y7ÃG&SÔ¾        g     °k@gÍÌÌÌÌŒV@gš™™™™‰`@yÁ -$ ÙF7        gH¯¼šò×z>g333333TÀyL"¾C·†…A        l        zFails on 32 bit.)Ú	conditionÚreason)Úmarksc                 óž   — |\  }}}}}}t        d|z   |z
  |z
  «      dk  rt        |dz   «      dk  sJ ‚t        t        ||||«      ||¬«       y)z^Tests for case z ~ -1, c ~ 1 + a - b

        Expected answers computed using mpmath.
        r6   r   r0   N©r   r   r   r2   s           r   Ú test_special_case_z_near_minus_1z+TestHyp2f1.test_special_case_z_near_minus_1@  s\   € ðj &6Ñ"ˆˆ1ˆa��H˜dÜ�1�q‘5˜1‘9˜q‘=Ó! EÒ)¬c°!°a±%«j¸5Ò.@Ð@Ð@Üœ˜q ! Q¨Ó*¨H¸4Ö@r   gj{k°ž8 @gQDi¯Ýåð?yå5”×Pî?0¯¡¼†òº¿y¤,úB¹.j?‚k„gg‰R¿iøÿÿÿgˆµÊKÀÀgt„y®í/Ày       @0¯¡¼†òº¿yžyšµv?1�AÖßAe¿gÑ-†1 @g�H€îh@y)Ó1Œä4¿#<6i1G¿g»½×Ùß|Û=gB!½uZ¦ÀgsSÄÛtÀyl(¯¡¼†ò?`Cyå5Ô¿yöö²©a¿ôÆ®('q¿go»ñg @yÈL2|R?àÑ“B±‘*?yP^Cyåõ? ¯¡¼†òº?y4=2Uò¿X6Kòª[:¿gí;™R@yÍ]ÌA¿×�±PE0C¿iðØÿÿgš™™™™™@g333ENH–Ay       @       @y¼4­$üï?¥sð)0Õ>¿c                 óš   — |\  }}}}}}|t        |«      k(  r|dk  s|t        |«      k(  r|dk  sJ ‚t        t        ||||«      ||¬«       y )Nr   r0   )Úintr   r   r2   s           r   Útest_a_b_negative_intz TestHyp2f1.test_a_b_negative_inty  sU   € ðl &6Ñ"ˆˆ1ˆa��H˜dØ”C˜“FŠ{˜q 1šu¨¬S°«Vª¸¸AºÐ=Ð=Üœ˜q ! Q¨Ó*¨H¸4Ö@r   g      à¿gbðõÉ°Ðî¿g      /Àyl(¯¡¼†ò?l(¯¡¼†ò¿yôã‹�Jï?¸²^è&’¦?gßÄAfcŠ=g      !@yÜæ$i8Q@­#íáß;$ÀgßÄAfcš=g      @yl(¯¡¼†ò?0¯¡¼†òº¿y³³U ÁÀ†±Ìtvä?g•dyáý¥=y4”×P^Cù?l(¯¡¼†ò¿yÝ{°hº`î?¼@,/¦¿gÞ§7�í¿yxå5”×à? ¯¡¼†òº?yj?<‡ƒ€ï?C«°X�i¿c                 óî   — |\  }}}}}}t        ||z
  t        ||z
  «      z
  «      dk  r||z
  dk  s*t        ||z
  t        ||z
  «      z
  «      dk  r||z
  dk  sJ ‚t        t        ||||«      ||¬«       y )Nr   r   r0   )r   r?   r   r   r2   s           r   Ú:test_a_b_neg_int_after_euler_hypergeometric_transformationzETestHyp2f1.test_a_b_neg_int_after_euler_hypergeometric_transformationÓ  sŠ   € ðt &6Ñ"ˆˆ1ˆa��H˜dä��Q‘œ˜Q ™U›Ñ#Ó$ uÒ,°°Q±¸²Ü��Q‘œ˜Q ™U›Ñ#Ó$ uÒ,°°Q±¸²ð	
ð<ô 	œ˜q ! Q¨Ó*¨H¸4Ö@r   g—yÎ]Qí/Ày ¯¡¼†òº?`Cyå5Ô¿yg’	Ðï?„×ª ü‘?g›+¡†›„=gn¶h§oð?yxå5”×à?xå5”×à?yi�›|8Ÿð?:AÅêSr¸¿g»½×Ùß|Ë=gbÑ'ÂûÀÀy ¯¡¼†òº?@yå5”ç?y9½¶)�@ðb¶í$ï8@g›+¡†›„ö<gÙÉ0z˜0@gÔ”œÕ8 @y`Cyå5Ô?Dyå5”ç¿y_™ oïÚ¿òŒ+ u±¿gê-�™—�=y@yå5”ç?0¯¡¼†òº¿yÜ­$­«@£g€!D)æ¿gP¸cÄP@yd·ëæð?°�d‰­êÖ¿gVçž¯Â<y`Cyå5Ô?zå5”×à¿yÕ¥éIpï?Õ8Ó8ù�?gþ¡ÚRôcÀyÈí¯šœñï?£å%íúg?zPoor convergence.)r9   yxå5”×à?zå5”×à¿yƒÜ“8æ¿{b@*ê?c                 óˆ   — |\  }}}}}}t        |«      dk  r|j                  dk\  sJ ‚t        t        ||||«      ||¬«       y)z|z| < 0.9 and real(z) >= 0.çÍÌÌÌÌÌì?r   r0   N©r   r   r   r   r2   s           r   Útest_region1zTestHyp2f1.test_region1  sI   € ðD &6Ñ"ˆˆ1ˆa��H˜dÜ�1‹v˜Š| §¡¨!¢Ð+Ð+Üœ˜q ! Q¨Ó*¨H¸4Ö@r   y`Cyå5Ô¿@yå5”ç?yö$i^Îè?`o�ÃÎÎ?g½øƒl0@gúÀÚXQ @yå5”×Pî¿`Cyå5Ô¿yáÞþªç¦><Ia-
¼>g:Œ0âŽy5>g da‹0@y0¯¡¼†òº¿0¯¡¼†òº¿yýøbüŽï?7¬@“p9‹¿gˆÕ—‘' @y`Cyå5Ô¿Dyå5”ç¿yÓTõ�°Ä?lÃÎZu{Ú¿g£>V’í¿yzå5”×à¿`Cyå5Ô?yy>ëT	À;òÜ*²Á?gâíÚ�ðÀyzÓò‹ýâR@‰ÍŠáGI@g¥üùÿíhÿ¿yzå5”×à¿xå5”×à?yòÑ‚Ìö q@ðÔç8”TÀyzå5”×à¿0¯¡¼†òº¿yž&ª
ê·@¼?Ó÷?g‚vIhÂ%,=g%+ ¶²ÌÀgÑúãòÍ
ñ?y`Cyå5Ô¿å5”×Pî¿y¶³=?¢@=	Yx<ØpÀgq´£ÆÜþ¿yDyå5”ç¿`Cyå5Ô¿yø
Ý-=@áT~Çn 6@yDyå5”ç¿0¯¡¼†òº¿y
Wôú`¦Ê?ŽÊ|�6d¨¿y`Cyå5Ô¿zå5”×à¿yŠ¢ý8Á5Ê|@.AyR¿†J˜°Ó?x?•nóÓ¿yå5”×Pî¿0¯¡¼†òº¿yì×Å84Üú?ã_Ýá´¾¹?yzå5”×à¿Dyå5”ç¿yþ-ª–»@ê^‚ÈcðÈÀy—á¬ì¦»ê@ÁeC‰‰ÖÀgVçž¯â<yGÎˆqó?¢… +ÌÀg¡Ð\·1ö/ÀyDyå5”ç¿xå5”×à?y¢É`€èéB8¯îÚØAgÕ´/Q¾þ¿y½Ñq·–çí?Ì^Ò’”-£?y0¯¡¼†òº¿ ¯¡¼†òº?yß)bã?rèÖt¤{Ù?y0¯¡¼†òº¿zå5”×à¿yf|í�#À¢±SþI\Ày0¯¡¼†òº¿`Cyå5Ô?y…ÛÛ-Ý?©ƒY|ñ?yDyå5”ç¿`Cyå5Ô?yÌ<nük«(@ÀÝ$n²SÀyzå5”×à¿ ¯¡¼†òº?yÂS¾ßhÕó?>€÷R¨¿yX7ò>~rX@4îëéïÿ2Àc                 óˆ   — |\  }}}}}}t        |«      dk  r|j                  dk  sJ ‚t        t        ||||«      ||¬«       y)z|z| < 1 and real(z) < 0.r6   r   r0   NrE   r2   s           r   Útest_region2zTestHyp2f1.test_region2z  sI   € ðB &6Ñ"ˆˆ1ˆa��H˜dÜ�1‹v˜Šz˜aŸf™f qšjÐ(Ð(Üœ˜q ! Q¨Ó*¨H¸4Ö@r   g     @0@g      Àg      Àyxå5”×à?@yå5”ç?y^«¸-õý“À>xcÔý¡Àg     €/Àg     € @g      ø¿yå5”×Pî?`Cyå5Ô?yÜ×Mõ¹\ÁÀ˜‘iÆ”\ÇÀg      @yxå5”×à?Dyå5”ç¿yˆAïÞ’mÀ’£4öºÐmÀg      è¿g      Àyº2ÅŸ°øé?}Ÿq^oÊÒ¿g      ô?g      @yáÉ+}‘<Àò]#x‚¹X@y4â¦·Ïþà?3ØS	ž0î¿g      Àyå5”×Pî? ¯¡¼†òº?yâçÍ`B3A>5C¢Ñ;Ay¹®_q„„¿d#”‚„Z×?y£ýZÃyß!A½j6ãÕmàÀy¦¥
Ëù­äB6þ&£ý°ãÂyØ¹jüÞ¥?ÏX�ñRÂ¿yå5”×Pî?`Cyå5Ô¿y[^Ç0|À„UÊéFt@y¼“ÜþR[ä?ÂgíB�?g     €0@y•Ÿ;˜ìì¿§k™ë‘ø¿g:Œ0âŽyE>zUnhandled parameters.g      ü¿y’ Zh„@7Ñ} )Ê±Àg      @yÇ¾ôÜ¬]@xÍ ôAÀy¦¬tôX| ÁùýÆ’õRAywör|Y1AA÷RyW®QIAyhÃ¼“¾†ÁÁ¨'}eqÁy€ÕŠ8²?ÎQŽD¾?y@yå5”ç?xå5”×à?y�~šCòu€øžÑjÃy£2}ã@“?1OÂSïg?y@yå5”ç?zå5”×à¿yGU<A»ùÁÀœRt%3È@yT¢85³ß@+¡ž�¦08@y·õgµ°Ð¢@fÈ€ßA³°Ày]·xO�@F¹ÿ¼Ày÷€œgœÑóÀ¾S¢s÷aë@yì·Ã�¤32Ao<»h‰¦KAyŽ�4ëBý?•Å3Vßþ?yN™€‚ÌÒð?{E7¦¿g•Ö&è.>y~¦y>Š AsÊ4Ñ —Ay=›ÛŠ-Ý%ÀèÎ°¤7žþ?c                 ó    — |\  }}}}}}dt        |«      cxk  rdk  rn J ‚t        d|z
  «      dk  sJ ‚t        t        ||||«      ||¬«       y)z"0.9 <= |z| <= 1 and |1 - z| < 0.9.rD   r6   r0   Nr<   r2   s           r   Útest_region3zTestHyp2f1.test_region3  sZ   € ðT
 &6Ñ"ˆˆ1ˆa��H˜dØ”c˜!“fÔ! Ô!Ð6Ð6¤c¨!¨a©%£j°3Ò&6Ð6Ð6Üœ˜q ! Q¨Ó*¨H¸4Ö@r   y ðøÃ�ß?¡Õ—
Z}é¿y{i{¿4C@Â&F™‚>Àç       @ytO#,÷4â?¡Õ—
Z}é¿y”ýÞ'OVå¿áûù/xTð¿y÷P0*°ž9AJOãp÷DÁg      0@yßJ/:¹XB’ôö™þrÂç      @yÂà7„¯w¿«ÿÙdþš?gñhãˆµøÔ>yÂ:òTqæÝ?@úáÜè?y ðøÃ�ß?¢Õ—
Z}é?yÄbÀ¼&î?T×,þ#�õ?r
   yTü­¯®Ú?�‚¡z]Dï¿ytO#,÷4â?¢Õ—
Z}é?y1`Ã-wô?…01ÆÿcÀy  ùky’ À6®L†é¿y­EŸÆõÀþD @yî'[¾�®¸À·R�„jÝ»Àyy�“«Uì¿¢Ïf*E @y4þÌy²–ó?Òf¦×?yÝ+*ûŸ9ù¿,†€…Àgü©ñÒMbP?y½ÜµeL@Ùæ>£9@yÏžQÔ}ÀÞ_’‹ó@y}X4õ;œ@Að,£èGIÁyqRøü!)Ý?Œ-ÛÞàã?yNT+„N@íž>›Â—BÀyÛ?~¡í.àÀ9¼çñ¦MÔ@yÿØëXRÇ>@bNj}Ï¦:ÀyòYËŠöñ?ú‰úZEµ¿yÚåi˜äÑ@CPHmÃ«@yÀÒy‹!½?l„åžFXî?yª [™Ü?¬û Uüfç?yŒ’]›(ÙÕ?­¾TÐêë?y—„ò÷á>Àeí†öù‹@yÀÒy‹!½?j„åžFXî¿y´�øþ¬(DÀ!&¯n�yVÀy\õô ­é@†!‘ÌÝ¨úÀy@»6Q²k£?l„åžFXî?yÊˆ”êô ó¿ÀüNÆ�<ø¿yÄã<þÐ?l„åžFXî?yLaæa­'*@åÐ6-*‰A@yÄã<þÐ?­¾TÐêë?y4÷?a¡&á¿[Ö®«gÎ¿yÂá}ö>Ó’@™+.AP@y@»6Q²k£?j„åžFXî¿y±²Ï�“´#À9Ä Ç_@yŒ’]›(ÙÕ?­¾TÐêë¿y_¢³k„€@?ûp~Ý–ÀyXA«/´Ú?­¾TÐêë?y|WðžÓE Ag¶Ü¢õOAy—&‹+ôï¿‰Ú3�1@yl¿ó^” @Nt~´µÕÀyEËùÙðDÀõçú•ÐC@ÀyÚw3>#­ÀÅi.¬àèÝÀy…* ø ÁþáÅAyµÝƒ}øKÈ?¸ˆ"Ø"é?y2OóD’GšA®î+°–žAy ,ëJ8lÑ?�|¬p5äË¿y@0Ú-šÀ©¬näþq@yÙ"žYÚš4ÀšsWK³ R@y0õ¸BCEÁhö�BNÁyàSd§žó?û®F¼´ñä?yXA«/´Ú?­¾TÐêë¿yPÇlQ¤¡À;ØùÀNÁ@g8JåÏ=ã=c                 ó    — |\  }}}}}}dt        |«      cxk  rdk  rn J ‚t        d|z
  «      dk\  sJ ‚t        t        ||||«      ||¬«       y)z�0.9 <= |z| <= 1 and |1 - z| >= 1.

        This region is unhandled by of the standard transformations and
        needs special care.
        rD   r6   r0   Nr<   r2   s           r   Útest_region4zTestHyp2f1.test_region4Í  sZ   € ðb &6Ñ"ˆˆ1ˆa��H˜dØ”c˜!“fÔ! Ô!Ð7Ð7¤c¨!¨a©%£j°CÒ&7Ð7Ð7Üœ˜q ! Q¨Ó*¨H¸4Ö@r   yÚ&Jvm¢ä?­¾TÐêë?y°ˆÅ9“?æ¢¤àÎ€³¿gH¯¼šò×j>yÚ&Jvm¢ä?­¾TÐêë¿y
Ÿè`ÉCö¿0Ë�¥7¾¿yáç‡[
¢À¢ŒÔ*æ2žÀyð²w¶í3BL�ó‡ÇS�Âg›+¡†›„=yzá5¼ó?CìÛðÄOÀyXIí©¥÷ø@•T!NöåÀyŽ›IÐ	¬À†ïNiYÃÀytO#,÷4â?­¾TÐêë¿y×®[ÍÕšÁÛ)×-ÊÚ¤Ag-Cëâ6
?y!'µh@½œqiq@y2ý$Ð½'?’á”cÒ³?ytO#,÷4â?­¾TÐêë?yï,‹”AŒmÚ‘Áy–½ÁÔA§e¡4²áÁyø/ ‰Úö?¥B`s¶ä?y(ç»Ã&	@ÓÉ:Ë•)	Ày9àÑM”ÑR@Ÿó½b@y—S.­×¿©¤Óƒëñë?yü2Fø$@EDÆ“‹ÄÀyðÚÿV«ã'Á c�)Ñd ÁyRQ"´²°(@™Ê!‹ü-Àgü©ñÒMb@?yï‰L·²7@˜�äî™IX@yv·1m‘@f4¤À^ŸŒ@yÄ´ÍÚ¯bBu�i'6(_By"N¯ÂÁÀhVk¡à0@y±¹øÊ)FÀ+Œ]œ¦�@yÀÒy‹!½?è-†tÞbð¿y±×˜p~–¿ó»×‹ÍJ„?yÄã<þÐ?è-†tÞbð?y^…ßð?]äÑ½‡É?yŒ’]›(ÙÕ?l„åžFXî?yFMI“‡Ô@™³(vÿè@yXA«/´Ú?j„åžFXî¿ybpòÖ›ËZÁÞ‡nƒoîBAyði„åžFÈ?è-†tÞbð?yW>Ëãë–AÌ`ŒÐ¢¸ÁyÄã<þÐ?è-†tÞbð¿y?DÐ6©ïþ?Ë!48ò@y ðøÃ�ß?­¾TÐêë?y—fà|°¡^À)cª:µÜMÀy ðøÃ�ß?l„åžFXî?y1jGËšVÀ`+¹Ô@I@yÐI_©ò—Ë¿èG Ïpâ¿ysªùhî?G·Ä¡½?yXA«/´Ú?l„åžFXî?y±£I‚ú¶í?c²µnx@ê?yŒ’]›(ÙÕ?j„åžFXî¿yb.ÔÐð¿O®Ç¸4Õñ¿g^~zÅ=y ðøÃ�ß?j„åžFXî¿y:&ô­@A¼0ébfÀy^DŒñõh@�Ý¾“³¼u@y ðøÃ�ß?­¾TÐêë¿yúˆ´M;HÂÍBËnM+ByýóÅî9~ÖÀ§:1<ÔÑÀyÇ| ø?”aPe2»ó?yýç Ä„»@*º²K¢ãÀy@»6Q²k£?è-†tÞbð?yÙUƒ±5qÑ?Õ3±8€úÀyóŽA7€&À/Ýé”Ý1)@ynñˆD³Ç¿±�O?xé?yŒ’]›(ÙÕ?è-†tÞbð¿y†mõÀÍA¢¨’ÐAyî÷Ã€D°á?ñŽ0Ð”@gMgâñžÕ<yûÏ¨Î²K@ßª]½CŽ@c                 ó¾   — |\  }}}}}}dt        |«      cxk  rdk  r$n J ‚t        d|z
  «      dk\  r|j                  dk\  sJ ‚t        t        ||||«      ||¬«       y)z11 < |z| < 1.1 and |1 - z| >= 0.9 and real(z) >= 0r6   çš™™™™™ñ?rD   r   r0   NrE   r2   s           r   Útest_region5zTestHyp2f1.test_region5Â  sd   € ðZ &6Ñ"ˆˆ1ˆa��H˜dØ”3�q“6Ô˜CÔÐEÐE¤C¨¨A©£J°#Ò$5¸!¿&¹&ÀAº+ÐEÐEÜœ˜q ! Q¨Ó*¨H¸4Ö@r   yå5”×Pî¿xå5”×à?yšjµþ¤]¿+¯B†l?yDyå5”ç¿Dyå5”ç¿y.Õ©‰'¬.¿"¼¼thÛò¾yzå5”×à¿å5”×Pî¿yÈæó´ÙžÌ?_bM ÖÎ¿yå5”×Pî¿zå5”×à¿yì›Ë¡¯ó?5rº°Z]Â?yhçF—Ò?@…¥Ò…PÀyR¸,\åi@ð0gA@yDyå5”ç¿@yå5”ç?y»Y©6úócÀ$#y|öN"@y�½–ýðñ?vÞ:[²¿y0 DEwþ?&Y9±ß¿ylÉboEþ,ÀSîÊ*Äå5Ày–XÙ•Ø*B@víK¢d¼o@yxs¸�÷6AÅ{ö´;ˆÁyzå5”×à¿å5”×Pî?yt´Á Òò_ÀiNÜLñ²<Ày(˜‹¨ @ÜÐuV1¸ç?yŒE*l¬º>@’ŠáIrÀyÇùóC¶ò?Šè.“I‡ç¿yOKTO9Wä?ÏŒ>7á˜¿yÁE¢ði3Þ?:êÄpöä?y3ƒÂÁÙÊÂ¿gF™Ä?yQ5d¹Q¿ÀÉXºŽâ6@y·¹SÍ§è¿ä„ª}¤ñ¿yAHq�ÿ@ü3'U±Ä@ycä4íÀü‰VÞ$k$Áyž‹ôüónÁt`_“ÁOAr6   é   y      @      @yÅžÎ¼�‚ß?Dû�B]ã?c                 óØ   — |\  }}}}}}t        |«      dkD  r7dt        |«      cxk  rdk  r%n n"t        d|z
  «      dk\  r|j                  dk\  rJ ‚t        t        ||||«      ||¬«       y)z|z| > 1 but not in region 5.r6   rP   rD   r   r0   NrE   r2   s           r   Útest_region6zTestHyp2f1.test_region6³  sp   € ðB &6Ñ"ˆˆ1ˆa��H˜dä�‹F�QŠJØ”S˜“VÔ!˜cÕ!¤c¨!¨a©%£j°CÒ&7¸A¿F¹FÀaºKð	
ðIô 	œ˜q ! Q¨Ó*¨H¸4Ö@r   gš™™™™™É¿g333333Ó?gÍÌÌÌÌÌ Àg@¢Ô›ý?c                 óJ   — |\  }}}}}}t        t        ||||«      ||¬«       y r/   r1   r2   s           r   Útest_miscellaneouszTestHyp2f1.test_miscellaneous¼	  s-   € ð" &6Ñ"ˆˆ1ˆa��H˜dÜœ˜q ! Q¨Ó*¨H¸4Ö@r   z1.0.0c           
      ó(  — t        | «      D �cg c]/  }|j                  d«      rt        t        | |«      «      r|dk7  r|‘Œ1 }}|D ]E  }| j	                  t        | |«      «      }|D ]#  \  }}}}}}	t        t        ||||«      |d¬«       Œ% ŒG yc c}w )aŽ  Test that expected values match what is computed by mpmath.

        This gathers the parameters for the test cases out of the pytest marks.
        The parameters are a, b, c, z, expected, rtol, where expected should
        be the value of hyp2f1(a, b, c, z) computed with mpmath. The test
        recomputes hyp2f1(a, b, c, z) using mpmath and verifies that expected
        actually is the correct value. This allows the data for the tests to
        live within the test code instead of an external datafile, while
        avoiding having to compute the results with mpmath during the test,
        except for when slow tests are being run.
        ÚtestÚtest_test_hyp2f1gzÍiu„6°<r0   N)ÚdirÚ
startswithÚcallableÚgetattrÚ_get_test_parametersr   r   )
r3   Útest_methodÚtest_methodsÚparamsr   r   r   r   r   Ú_s
             r   rY   zTestHyp2f1.test_test_hyp2f1Ð	  s¯   € ô ,/¨t«9ö
Ø'Ø×%Ñ% fÔ-ä”W˜T ;Ó/Ô0àÐ-Ò-ò ð
ˆð 
ð (ò 	PˆKØ×.Ñ.¬w°t¸[Ó/IÓJˆFØ+1ò PÑ'��1�a˜˜H aÜ¤	¨!¨Q°°1Ó 5°xÀhÖOñPñ	Pùò
s   Ž4Bc                 ó¦   — |j                   D ��cg c]4  }|j                  dk(  r#|j                  d   D ]  }|j                  d   ‘Œ Œ6 c}}S c c}}w )z4Get pytest.mark parameters for a test in this class.Úparametrizer6   r   )Ú
pytestmarkÚnameÚargsÚvalues)r3   r_   ÚmarkÚcases       r   r^   zTestHyp2f1._get_test_parametersë	  s[   € ð (3×'=Ñ'=÷
Ø#Ø�y‰y˜MÒ)ØŸ	™	 !™ò
ð ð �K‰K˜‹Nð
Øó
ð 	
ùó 
s   �9AN) r!   r"   r#   Ú__doc__Úpytestri   rd   Úparamr   ÚnpÚinfÚnanr4   r7   ÚxfailÚsysÚmaxsizer=   r@   rB   rF   rH   rJ   rN   rQ   rT   rV   Úslowr   r   rY   r^   r&   r   r   r(   r(   :   sŽ,  „ ñð  ‡[�[×ÑØàˆF�L‰LÙØØØØ ØŸV™V b™[Øôó	ð ˆF�L‰LÙØØØØØ#Øôó	ð ˆF�L‰LÙØØØØ Ø#Øôó	ð ˆF�L‰LÙØØØØ Ø#Øôó	ð ˆF�L‰LÙØØØØ ØŸV™V b™[Øôó	ð ˆF�L‰LÙØØØØØŸV™V b™[Øôó	ð ˆF�L‰LÙØØØØ ØEØôó	ð ˆF�L‰LÙØØØØ ØAØôó	ð ˆF�L‰LÙØØØØ ØGØôó	ð ˆF�L‰LÙØØØØ ØDØôó	ð ˆF�L‰LÙØØØØØ4Øôó	ðKo	
órñfAógrðfAð ‡[�[×ÑØàˆF�L‰LÙØØØØØ4Øôó	ð ˆF�L‰LÙØØØØØ3Øôó	ð ˆF�L‰LÙØØØØØ5Øôó	ð ˆF�L‰LÙØØØØØ2Øôó	ð ˆF�L‰LÙØØØØØ2Øôó	ð ˆF�L‰LÙØØØØØ7Øôó	ð ˆF�L‰LÙØØØØØ7Øôó	ð ˆF�L‰LÙØØØØØ7Øôó	ð ˆF�L‰LÙØØØØØ7Øôó	ð ˆF�L‰LÙØØØØØ7Øôó	ð ˆF�L‰LÙØØØØØ9Øôó	ðOq	
ótñjAóktðjAð ‡[�[×ÑØàˆF�L‰LÙØØØØØ4Øô óð ˆF�L‰LÙØØØ'ØØ8Øôó	ð ˆF�L‰LÙØØØØØ8Øôó	ð ˆF�L‰LÙØØØØØ3Øôð —k‘k×'Ñ'Ø!Ÿk™k¨EÑ1Ø-ð (ó ôð=,	
ó/ñ`Aóa/ð`Að ‡[�[×ÑØàˆF�L‰LÙØØ&Ø(Ø>ØJØôó	ð ˆF�L‰LÙØØ(Ø)Ø-ØIØôó	ð ˆF�L‰LÙØØ'Ø(Ø>ØKØôó	ð ˆF�L‰LÙØØ(Ø)Ø=ØKØôó	ð ˆF�L‰LÙØ&ØØ'Ø>ØJØôó	ð ˆF�L‰LÙØ(ØØ)Ø>ØLØôó	ð ˆF�L‰LÙØ'ØØ(Ø>ØJØôó	ð ˆF�L‰LÙØØØ ØØHØôó	ðOQ	
óTñjAókTðjAð
 ‡[�[×ÑØàˆF�L‰LÙØØ)ØØ=ØFØôó	ð ˆF�L‰LÙØØ)ØØ>ØCØôó	ð ˆF�L‰LÙØØ)ØØ>ØEØôó	ð ˆF�L‰LÙØØ)ØØ=ØEØôó	ð ˆF�L‰LÙØ)ØØØ>ØFØôó	ðS3	
ó6ñnAóo6ðnAð ‡[�[×ÑØàˆF�L‰LÙØ)Ø)Ø)Ø>ØEØôó	ð ˆF�L‰LÙØ(Ø)Ø)Ø=ØEØôó	ð ˆF�L‰LÙØ&Ø(Ø'Ø>ØDØôó	ð ˆF�L‰LÙØ&Ø(Ø'Ø<ØFØôó	ð ˆF�L‰LÙØ'Ø'Ø'Ø>ØCØôó	ð ˆF�L‰LÙØ&Ø'Ø'Ø>ØCØôó	ð ˆF�L‰LÙØ)Ø)Ø)Ø=ØFØôó	ð ˆF�L‰LÙØ)Ø)Ø)Ø=ØFØôð —k‘k×'Ñ'Ð/BÐ'ÓCô
ð ˆF�L‰LÙØ&Ø(Ø'Ø=ØEØôó	ðe\	
ó_ñ@AóA_ð@Að ‡[�[×ÑØàˆF�L‰LÙØ&Ø(Ø'Ø>ØEØôó	ð ˆF�L‰LÙØ(Ø(Ø(Ø>ØKØôó	ð ˆF�L‰LÙØ(Ø'Ø(Ø@ØFØôó	ð ˆF�L‰LÙØ'Ø'Ø(Ø=ØFØôó	ð ˆF�L‰LÙØ&Ø'Ø(Ø>ØEØôó	ð ˆF�L‰LÙØ&Ø'Ø)Ø>ØBØôó	ð ˆF�L‰LÙØ(Ø'Ø)Ø>ØBØôó	ð ˆF�L‰LÙØ'Ø)Ø'Ø?ØCØôó	ð ˆF�L‰LÙØ'Ø(Ø(Ø>ØCØôó	ð ˆF�L‰LÙØ(Ø'Ø(Ø=ØDØôó	ð ˆF�L‰LÙØ'Ø)Ø)Ø>ØFØôó	ð ˆF�L‰LÙØ(Ø)Ø)Ø>ØDØôó	ð ˆF�L‰LÙØ'Ø(Ø'Ø@ØEØôó	ð ˆF�L‰LÙØ(Ø(Ø'Ø?ØEØôó	ð ˆF�L‰LÙØ(Ø(Ø'Ø=ØAØôó	ð ˆF�L‰LÙØ(Ø(Ø(Ø>ØDØôó	ð ˆF�L‰LÙØ(Ø(Ø(Ø@ØAØôó	ð ˆF�L‰LÙØ)Ø(Ø)Ø=ØDØôó	ð ˆF�L‰LÙØ)Ø(Ø)Ø>ØEØôó	ð ˆF�L‰LÙØ(Ø)Ø(Ø@ØBØôó	ð ˆF�L‰LÙØ)Ø)Ø(Ø?ØCØôó	ð ˆF�L‰LÙØ(Ø'Ø(Ø?ØEØôó	ð ˆF�L‰LÙØ)Ø(Ø(Ø=ØCØôó	ð ˆF�L‰LÙØ)Ø(Ø)Ø?ØFØôó	ð ˆF�L‰LÙØ)Ø)Ø(Ø>ØBØôó	ðc{	
ó~ñ~Aó~ð~Að ‡[�[×ÑØðD	
ØˆF�L‰LÙØØØØ=ØDØôó	ðD	
ð ˆF�L‰LÙØØØØ=ØDØôó	ðD	
ð* ˆF�L‰LÙØØØØ<ØDØôó	ð+D	
ð> ˆF�L‰LÙØØØØ=ØEØôó	ð?D	
ðR ˆF�L‰LÙØØØØ<ØDØôó	ðSD	
ðf ˆF�L‰LÙØØØØ=ØDØôó	ðgD	
ðz ˆF�L‰LÙØØØØ>ØCØôó	ð{D	
ðN ˆF�L‰LÙØØØØ<ØGØôó	ðOD	
ðb ˆF�L‰LÙØØØØ<ØBØôó	ðcD	
ðv ˆF�L‰LÙØ'Ø)Ø)Ø>ØBØôó	ðwD	
ðJ ˆF�L‰LÙØØØØ>ØFØôó	ðKD	
ð^ ˆF�L‰LÙØ(Ø'Ø(Ø=ØCØôó	ð_D	
ðr ˆF�L‰LÙØ(Ø(Ø'Ø>ØFØôó	ðsD	
ðF ˆF�L‰LÙØØØØ=ØEØôð —k‘k×'Ñ'Ø2ð (ó ôðGD	
ð` ˆF�L‰LÙØØØØ=ØBØôó	ðaD	
ðt ˆF�L‰LÙØØØØ>ØBØôó	ðuD	
ðH ˆF�L‰LÙØØØØ=ØCØôó	ðID	
ð\ ˆF�L‰LÙØØØØ<ØBØôó	ð]D	
ðp ˆF�L‰LÙØØØØ=ØCØôó	ðqD	
ðD ˆF�L‰LÙØ)Ø(Ø'Ø>ÙFØôó	ðED	
ðX ˆF�L‰LÙØ(Ø(Ø'Ù=ÙKØôó	ðYD	
ðl ˆF�L‰LÙØØØØ>ÙFØôó	ðmD	
ð@ ˆF�L‰LÙØ(Ø(Ø'Ù=ÙDØôó	ðAD	
ðT ˆF�L‰LÙØØØÙ=ÙCØôó	ðUD	
ðh ˆF�L‰LÙØ&Ø(Ø(Ù=ÙCØôó	ðiD	
ð| ˆF�L‰LÙØØØÙ=ÙCØôó	ð}D	
ðP ˆF�L‰LÙØØØØ=ÙAØôó	ðQD	
ðd ˆF�L‰LÙØ'Ø'Ø(Ø=ÙDØôó	ðeD	
ðx ˆF�L‰LÙØ(Ø'Ø'Ø=ÙDØôó	ðyD	
ðL	 ˆF�L‰LÙØ(Ø(Ø(Ù=ÙDÙôó	ðM	D	
ð`	 ˆF�L‰LÙØ(Ø)Ø(Ø=ÙAØôó	ða	D	
ðt	 ˆF�L‰LÙØØØØ<ÙEØôó	ðu	D	
óGòP
AóQ
GðP
Að ‡[�[×ÑØðg	
ØˆF�L‰LÙØØØÙ=ÙCØôó	ðg	
ð ˆF�L‰LÙÙØ(Ø(Ù=ÙEØôó	ðg	
ð* ˆF�L‰LÙØØ(Ø(Ù=ÙCØôó	ð+g	
ð> ˆF�L‰LÙØ'ÙØ(Ù=ÙDØôó	ð?g	
ðR ˆF�L‰LÙØ&Ø)ÙÙ=ÙJÙôó	ðSg	
ðf ˆF�L‰LÙØ&Ø)Ø(Ù=ÙDØôó	ðgg	
ðz ˆF�L‰LÙÙØ(Ø(Ù=ÙDØôó	ð{g	
ðN ˆF�L‰LÙÙØ)Ø)Ù=ÙDÙôó	ðOg	
ðb ˆF�L‰LÙØØ(ØÙ=ÙBØôó	ðcg	
ðv ˆF�L‰LÙØ)Ø(Ø(Ù=ÙDØôó	ðwg	
ðJ ˆF�L‰LÙØ)ØØ)Ù=ÙCØôó	ðKg	
ð^ ˆF�L‰LÙØ)Ø(Ø'Ù=ÙCØôó	ð_g	
ðr ˆF�L‰LÙØ)Ø)Ø(Ù=ÙDØôó	ðsg	
ðF ˆF�L‰LÙØ)Ø)Ø'Ù=ÙDØôó	ðGg	
ðZ ˆF�L‰LÙØØØÙ=ÙEÙôð —k‘k×'Ñ'Ø2ð (ó ôð[g	
ðt ˆF�L‰LÙØ)Ø'Ø'Ù=ÙCØôó	ðug	
ðH ˆF�L‰LÙØØØ'Ù=ÙCØôó	ðIg	
ð\ ˆF�L‰LÙØØØ'Ù=ÙDØôó	ð]g	
ðp ˆF�L‰LÙØØØ(Ù=ÙEØôó	ðqg	
ðD ˆF�L‰LÙØØØ)Ù=ÙCØôó	ðEg	
ðX ˆF�L‰LÙØØØ(Ù=ÙEØôó	ðYg	
ðl ˆF�L‰LÙØØØ)Ù=ÙCØôó	ðmg	
ð@ ˆF�L‰LÙØØØ(Ù=ÙEØôó	ðAg	
ðT ˆF�L‰LÙØØØ)Ù=ÙDØôó	ðUg	
ðh ˆF�L‰LÙØØØÙ>ÙDÙôð —k‘k×'Ñ'Ø2ð (ó ôðig	
ðB ˆF�L‰LÙØØØÙ=ÙCØôó	ðCg	
ðV ˆF�L‰LÙØØØÙ>ÙCØôó	ðWg	
ðj ˆF�L‰LÙØ(ØØ)Ù>ÙDØôó	ðkg	
ð~ ˆF�L‰LÙØ'Ø)Ø(Ù>ÙDÙôó	ðg	
ðR	 ˆF�L‰LÙØ'Ø)Ø(Ù>ÙDØôó	ðS	g	
ðf	 ˆF�L‰LÙØ'ØØÙ>ÙEØôó	ðg	g	
ðz	 ˆF�L‰LÙØØØÙ>ÙCØôó	ð{	g	
ðN
 ˆF�L‰LÙØ)ÙØ(Ù>ÙBØôó	ðO
g	
ðb
 ˆF�L‰LÙØ(ÙØ(Ù=ÙAØôó	ðc
g	
ðv
 ˆF�L‰LÙØØ(ØÙ=ÙCØôó	ðw
g	
ðJ ˆF�L‰LÙØ(Ø'Ø)Ù=ÙCØôó	ðKg	
ð^ ˆF�L‰LÙØØØÙ>ÙCØôó	ð_g	
ðr ˆF�L‰LÙØØ'ØÙ>ÙCØôó	ðsg	
ðF ˆF�L‰LÙØØØÙ>ÙEØôó	ðGg	
ðZ ˆF�L‰LÙØ(Ø)Ø(Ù>ÙEØôó	ð[g	
ðn ˆF�L‰LÙØØØ(Ù>ÙEØôó	ðog	
ðB ˆF�L‰LÙØØØ)Ù>ÙCØôó	ðCg	
ðV ˆF�L‰LÙØØØ(Ù=ÙEØôó	ðWg	
ðj ˆF�L‰LÙØØØ)Ù>ÙDØôó	ðkg	
ð~ ˆF�L‰LÙØØØ(Ù>ÙCØôó	ðg	
ðR ˆF�L‰LÙØØØ)Ù=ÙDØôó	ðSg	
ðf ˆF�L‰LÙØØØ(Ù>ÙDØôó	ðgg	
ðz ˆF�L‰LÙØØØ(Ù=ÙDÙ ôó	ð{g	
ójòVAóWjðVAð ‡[�[×ÑØðg	
ØˆF�L‰LÙØØ(ØÙ=ÙGÙôó	ðg	
ð ˆF�L‰LÙØØØÙ=ÙCØôó	ðg	
ð* ˆF�L‰LÙØ&Ø'Ø)Ù=ÙDØôó	ð+g	
ð> ˆF�L‰LÙØ(ÙØ)Ù=ÙBÙôó	ð?g	
ðR ˆF�L‰LÙØ'ØØÙ=ÙDØôó	ðSg	
ðf ˆF�L‰LÙØ(Ø)ÙÙ=ÙCÙôð —k‘k×'Ñ'Ø2ð (ó ôðgg	
ð@ ˆF�L‰LÙÙØ(Ø)Ù=ÙDØôó	ðAg	
ðT ˆF�L‰LÙØ'ØØÙ=ÙDÙôó	ðUg	
ðh ˆF�L‰LÙØ)Ø'ÙÙ=ÙCØôó	ðig	
ð| ˆF�L‰LÙØ(Ø'ÙÙ=ÙGØôó	ð}g	
ðP ˆF�L‰LÙØ(Ø(Ø)Ù=ÙBØôó	ðQg	
ðd ˆF�L‰LÙØ)ØØ'Ù=ÙCØôó	ðeg	
ðx ˆF�L‰LÙØØ)ØÙ=ÙCØôó	ðyg	
ðL ˆF�L‰LÙØ(Ø)Ø(Ù=ÙCØôó	ðMg	
ð` ˆF�L‰LÙØ)Ø)Ø'Ù=ÙBØôó	ðag	
ðt ˆF�L‰LÙØØØÙ=ÙEØôó	ðug	
ðH ˆF�L‰LÙØØØ(Ù=ÙDØôó	ðIg	
ð\ ˆF�L‰LÙØØØ)Ù=ÙBØôó	ð]g	
ðp ˆF�L‰LÙØØØ(Ù=ÙDÙôó	ðqg	
ðD ˆF�L‰LÙØØØ)Ù=ÙCØôó	ðEg	
ðX ˆF�L‰LÙØØØ(Ù=ÙCØôó	ðYg	
ðl ˆF�L‰LÙØØØ)Ù=ÙCØôó	ðmg	
ð@ ˆF�L‰LÙØØØ(Ù=ÙDØôó	ðAg	
ðT ˆF�L‰LÙØØØ)Ù=ÙDØôó	ðUg	
ðh ˆF�L‰LÙØØØÙ=ÙIÙôð —k‘k×'Ñ'Ø2ð (ó ôðig	
ðB ˆF�L‰LÙØ&ØØÙ=ÙEØôó	ðCg	
ðV ˆF�L‰LÙØ(ÙØ)Ù=ÙBØôó	ðWg	
ðj ˆF�L‰LÙØ'Ø(Ø)Ù=ÙBØôó	ðkg	
ð~ ˆF�L‰LÙØØØÙ=Ù>Ùôó	ðg	
ðR	 ˆF�L‰LÙØØ(ØÙ=ÙCÙôó	ðS	g	
ðf	 ˆF�L‰LÙØ'Ø'Ø'Ù=ÙDØôó	ðg	g	
ðz	 ˆF�L‰LÙØØØÙ=ÙCÙôó	ð{	g	
ðN
 ˆF�L‰LÙØØ'ØÙ=ÙDØôó	ðO
g	
ðb
 ˆF�L‰LÙØ)Ø(Ø'Ù=ÙEØôó	ðc
g	
ðv
 ˆF�L‰LÙØØØÙ=ÙDØôó	ðw
g	
ðJ ˆF�L‰LÙØØØÙ=ÙEÙ ôó	ðKg	
ð^ ˆF�L‰LÙØ(Ø)Ø(Ù=ÙBØôó	ð_g	
ðr ˆF�L‰LÙØØ)ØÙ=ÙDØôó	ðsg	
ðF ˆF�L‰LÙØØØÙ=ÙEØôó	ðGg	
ðZ ˆF�L‰LÙØ(ØØÙ=ÙCØôó	ð[g	
ðn ˆF�L‰LÙØØØ(Ù=ÙCØôó	ðog	
ðB ˆF�L‰LÙØØØ)Ù=ÙCØôó	ðCg	
ðV ˆF�L‰LÙØØØ(Ù=ÙCØôó	ðWg	
ðj ˆF�L‰LÙØØØ(Ù=ÙEØôó	ðkg	
ð~ ˆF�L‰LÙØØØ(Ù=ÙFØôó	ðg	
ðR ˆF�L‰LÙØØØ)Ù<ÙBØôó	ðSg	
ðf ˆF�L‰LÙØØØ'Ù=ÙCÙ ôó	ðgg	
ðz ˆF�L‰LÙØØØ)Ù=ÙBØôó	ð{g	
ójòVAóWjðVAð ‡[�[×ÑØàˆF�L‰LÙØ'Ø(Ø'Ù>ÙJØôó	ð ˆF�L‰LÙØ(Ø'Ø(Ù<ÙMØôó	ð ˆF�L‰LÙØ(Ø'Ø'Ù>ÙFØôó	ð ˆF�L‰LÙØ(Ø'Ø)Ù>ÙDØôó	ð ˆF�L‰LÙØ'Ø(Ø)Ù>ÙCØôó	ð ˆF�L‰LÙØ'Ø'Ø'Ù>ÙCØôó	ð ˆF�L‰LÙØ'Ø(Ø'Ù=ÙDØôó	ð ˆF�L‰LÙØ(Ø'Ø(Ù>ÙDØôó	ð ˆF�L‰LÙØ(Ø)Ø(Ù>ÙDØôó	ð ˆF�L‰LÙØ(Ø'Ø(Ù>ÙEØôó	ð ˆF�L‰LÙØ'Ø)Ø)Ù>ÙCØôó	ð ˆF�L‰LÙØ(Ø)Ø(Ù>ÙCØôó	ð ˆF�L‰LÙØ(Ø(Ø(Ù>ÙDØôó	ð ˆF�L‰LÙØ)Ø'Ø(Ù>ÙCØôó	ð ˆF�L‰LÙØ(Ø'Ø(Ù>ÙCØôó	ð ˆF�L‰LÙØ)Ø(Ø)Ù>ÙCØôó	ð ˆF�L‰LÙØ)Ø(Ø)Ù=ÙEØôó	ð ˆF�L‰LÙØ)Ø(Ø'Ù=ÙCØôó	ð ˆF�L‰LÙØ(Ø)Ø(Ù>ÙGØôó	ð ˆF�L‰LÙØ)Ø)Ø(Ù>ÙDØôó	ð ˆF�L‰LÙØ)Ø(Ø'Ù>ÙEØôó	ð ˆF�L‰LÙØ(Ø)Ø'Ù>ÙCØôó	ð ˆF�L‰LÙØ(Ø)Ø)Ù>ÙCØôó	ð ˆF�L‰LÙØ(Ø)Ø)Ù>ÙBØôó	ð ˆF�L‰LÙÙÙÙÙÙEØôó	ðc{	
ó~ò~Aó~ð~Að ‡[�[×ÑØð ˆF�L‰LÙØÙÙÙÙ/Øôó	ð	
óò Aó!ð Að ‡[�[×ÑÙ�6™7Ó#òPó $ó ðPõ2
r   r(   c            	       ó~  — e Zd Zej                  j                  ddddej                   ej                  g«      ej                  j                  ddddej                   ej                  g«      ej                  j                  dg d	¢«      ej                  j                  d
dg«      d„ «       «       «       «       Zd„ Z	y)ÚTestHyp2f1ExtremeInputsr   r
   rK   ç      @r   rL   ç      @r   )rw   rx   g      @g      @r   ù      @      ð?c                 óÆ   — t        j                  t        j                  t        j                  ||g«      «      «      r$t        j                  t        ||||«      «      sJ ‚y y )N)rn   ÚanyÚisinfÚasarrayÚisnanr   )r3   r   r   r   r   s        r   Útest_inf_a_bz$TestHyp2f1ExtremeInputs.test_inf_a_bõ	  sH   € ô
 �6‰6”"—(‘(œ2Ÿ:™: q¨! fÓ-Ó.Ô/Ü—8‘8œF 1 a¨¨AÓ.Ô/Ð0Ñ/ð 0r   c                 óà  — t        j                  t        dddd«      «      sJ ‚t        j                  t        dddd«      «      sJ ‚t        j                  t        dddd«      «      sJ ‚t        j                  t        dddd«      «      sJ ‚t        j                  t        t         j                  ddd«      «      sJ ‚t        j                  t        dt         j                  dd«      «      sJ ‚y )Ni€–˜ r
   rw   ry   i€igÿrL   )rn   r~   r   ro   )r3   s    r   Útest_large_a_bz&TestHyp2f1ExtremeInputs.test_large_a_bý	  sº   € Ü�x‰xœ˜u c¨3°
Ó;Ô<Ð=Ð<Ü�x‰xœ˜v s¨C°Ó<Ô=Ð>Ð=ä�x‰xœ˜s E¨3°
Ó;Ô<Ð=Ð<Ü�x‰xœ˜s F¨C°Ó<Ô=Ð>Ð=ô �x‰xœœrŸv™v s¨C°Ó5Ô6Ð7Ð6Ü�x‰xœ˜s¤B§F¡F¨C°Ó5Ô6Ð7Ñ6r   N)
r!   r"   r#   rl   ri   rd   rn   ro   r   r�   r&   r   r   rv   rv   ó	  s¤   „ à‡[�[×Ñ˜S 3¨¨S°2·6±6°'¸2¿6¹6Ð"BÓCØ‡[�[×Ñ˜S 3¨¨S°2·6±6°'¸2¿6¹6Ð"BÓCØ‡[�[×Ñ˜SÒ"6Ó7Ø‡[�[×Ñ˜S : ,Ó/ñ1ó 0ó 8ó Dó Dð1ó	8r   rv   )rk   rr   rl   Únumpyrn   Útypingr   Únumpy.testingr   Úscipy.specialr   Úscipy.special._testutilsr   r   r   ÚImportErrorr   r   r(   rv   r&   r   r   ú<module>rˆ      so   ðñó Û Û Ý Ý )å  ß Að%Ûò
5ô2�Zô ÷w&
ñ w&
÷rM8ò 8øðN ò %Ù˜8Ó$‚Fð%ús   ªA ÁA!Á A!