§
    ¢éUg¤m  ã                   óþ  — d dl Z d dlZd dlmZmZmZ d dlmZmZm	Z	m
Z
mZ d dlmZ d dlmZ d dlmc mZ d dlmZmZmZmZ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$m%Z%  G d„ d	¦  «        Z&e j'         (                    d
¦  «         G d„ d¦  «        ¦   «         Z)e j'         *                    deeg¦  «        d„ ¦   «         Z+ G d„ d¦  «        Z, G d„ d¦  «        Z- G d„ d¦  «        Z.dddddœd„Z/ G d„ d¦  «        Z0dS )é    N©ÚcosÚsinÚpi)Úassert_equalÚassert_almost_equalÚassert_allcloseÚassert_Úsuppress_warnings)Úgiven)Ú
quadratureÚrombergÚrombÚnewton_cotesÚcumulative_trapezoidÚ	trapezoidÚquadÚsimpsonÚ
fixed_quadÚAccuracyWarningÚqmc_quadÚcumulative_simpson)Ú%_cumulative_simpson_unequal_intervals)ÚstatsÚspecialc                   ó   — e Zd Zd„ Zd„ ZdS )ÚTestFixedQuadc                 ór   ‡— dŠdd‰z  z  }t          ˆfd„dd‰¬¦  «        \  }}t          ||d¬¦  «         d S )	Né   é   é   c                 ó   •— | d‰z  dz
  z  S )Nr!   r    © ©ÚxÚns    €úd/var/www/surfInsights/venv3-11/lib/python3.11/site-packages/scipy/integrate/tests/test_quadrature.pyú<lambda>z+TestFixedQuad.test_scalar.<locals>.<lambda>   s   ø€  a¨!¨A©#°©'¡l€ ó    r   ©r&   çê-�™—q=©Úrtol)r   r	   )ÚselfÚexpectedÚgotÚ_r&   s       @r'   Útest_scalarzTestFixedQuad.test_scalar   sT   ø€ ØˆØ�a˜‘c‘7ˆÝÐ2Ð2Ð2Ð2°A°q¸AÐ>Ñ>Ô>‰ˆˆQå˜˜X¨EÐ2Ñ2Ô2Ð2Ð2Ð2r)   c                 ó¢   ‡— d}t          j        dd|z  ¦  «        Šd‰dz   z  }t          ˆfd„dd|¬¦  «        \  }}t          ||d¬¦  «         d S )	Nr   r    r!   c                 ó"   •— | ‰d d …d f         z  S ©Nr#   )r%   Úps    €r'   r(   z+TestFixedQuad.test_vector.<locals>.<lambda>   s   ø€  a¨¨1¨1¨1¨d¨7¬¡m€ r)   r   r*   r+   r,   )ÚnpÚaranger   r	   )r.   r&   r/   r0   r1   r6   s        @r'   Útest_vectorzTestFixedQuad.test_vector   si   ø€ ØˆÝŒI�a˜˜1™ÑÔˆØ�a˜!‘e‘9ˆÝÐ3Ð3Ð3Ð3°Q¸¸QÐ?Ñ?Ô?‰ˆˆQÝ˜˜X¨EÐ2Ñ2Ô2Ð2Ð2Ð2r)   N)Ú__name__Ú
__module__Ú__qualname__r2   r9   r#   r)   r'   r   r      s2   € € € € € ð3ð 3ð 3ð3ð 3ð 3ð 3ð 3r)   r   zignore::DeprecationWarningc                   ó¨   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
„ Zd„ Zd„ Zd„ Zej                             dddg¦  «        d„ ¦   «         ZdS )ÚTestQuadraturec                 ó   — t           ‚r5   )ÚNotImplementedError)r.   r%   ÚaÚbÚargss        r'   r   zTestQuadrature.quad%   s   € Ý!Ð!r)   c                 óh   — d„ }t          |dt          d¦  «        \  }}d}t          ||d¬¦  «         d S )Nc                 ó\   — t          || z  |t          | ¦  «        z  z
  ¦  «        t          z  S r5   r   ©r%   r&   Úzs      r'   Úmyfuncz.TestQuadrature.test_quadrature.<locals>.myfunc*   ó'   € Ý�q˜‘s˜1�S ™VœV™8‘|Ñ$Ô$¥RÑ'Ð'r)   r   ©r!   çÍÌÌÌÌÌü?çì®Û—Ó?é   ©Údecimal)r   r   r   ©r.   rH   ÚvalÚerrÚ	table_vals        r'   Útest_quadraturezTestQuadrature.test_quadrature(   sH   € ð	(ð 	(ð 	(å˜f a­¨XÑ6Ô6‰ˆˆSØ*ˆ	Ý˜C °AÐ6Ñ6Ô6Ð6Ð6Ð6r)   c                 ól   — d„ }t          |dt          dd¬¦  «        \  }}d}t          ||d¬¦  «         d S )Nc                 ób   — dt          || z  |t          | ¦  «        z  z
  ¦  «        z  t          z  S )NçÇY)	kŸRr   rF   s      r'   rH   z3TestQuadrature.test_quadrature_rtol.<locals>.myfunc1   s,   € Ø�#˜a ™c !¥C¨¡F¤F¡(™lÑ+Ô+Ñ+­BÑ.Ð.r)   r   rJ   ç»½×Ùß|Û=r,   ç…Ø.©<ƒR©r   r   r	   rP   s        r'   Útest_quadrature_rtolz#TestQuadrature.test_quadrature_rtol0   sM   € ð	/ð 	/ð 	/å˜f a­¨X¸EÐBÑBÔB‰ˆˆSØ1ˆ	Ý˜˜Y¨UÐ3Ñ3Ô3Ð3Ð3Ð3r)   c                 óœ   — d„ }d}dD ]C}t          |dt          d|¬¦  «        \  }}t          ||d¬¦  «         t          |d	k     ¦  «         ŒDd S )
Nc                 ó\   — t          || z  |t          | ¦  «        z  z
  ¦  «        t          z  S r5   r   rF   s      r'   rH   z6TestQuadrature.test_quadrature_miniter.<locals>.myfunc9   rI   r)   rL   )é   é4   r   rJ   )ÚminiterrM   rN   ç      ð?)r   r   r   r
   )r.   rH   rS   r`   rQ   rR   s         r'   Útest_quadrature_miniterz&TestQuadrature.test_quadrature_miniter7   su   € ð	(ð 	(ð 	(à*ˆ	Øð 	ð 	ˆGÝ! &¨!­R°À7ÐKÑKÔK‰HˆC�Ý  Y¸Ð:Ñ:Ô:Ð:Ý�C˜#’IÑÔÐÐð	ð 	r)   c                 ól   — d„ }t          |dt          dd¬¦  «        \  }}d}t          ||d¬¦  «         d S )Nc                 ób   — dt          || z  dt          | ¦  «        z  z
  ¦  «        z  t          z  S )NrW   rK   r   r$   s     r'   rH   z:TestQuadrature.test_quadrature_single_args.<locals>.myfuncB   s,   € Ø�#˜a ™c #¥c¨!¡f¤f¡*™nÑ-Ô-Ñ-­bÑ0Ð0r)   r   r!   rX   ©rC   r-   rY   r,   rZ   rP   s        r'   Útest_quadrature_single_argsz*TestQuadrature.test_quadrature_single_argsA   sM   € ð	1ð 	1ð 	1å˜f a­°!¸%Ð@Ñ@Ô@‰ˆˆSØ1ˆ	Ý˜˜Y¨UÐ3Ñ3Ô3Ð3Ð3Ð3r)   c                 ód   — d„ }t          |dt          d¬¦  «        }d}t          ||d¬¦  «         d S )Nc                 ó\   — t          || z  |t          | ¦  «        z  z
  ¦  «        t          z  S r5   r   rF   s      r'   rH   z+TestQuadrature.test_romberg.<locals>.myfuncJ   rI   r)   r   rJ   )rC   rL   rM   rN   )r   r   r   ©r.   rH   rQ   rS   s       r'   Útest_rombergzTestQuadrature.test_rombergH   sG   € ð	(ð 	(ð 	(å�f˜a¥¨(Ð3Ñ3Ô3ˆØ*ˆ	Ý˜C °AÐ6Ñ6Ô6Ð6Ð6Ð6r)   c                 óf   — d„ }t          |dt          dd¬¦  «        }d}t          ||d¬¦  «         d S )Nc                 ób   — dt          || z  |t          | ¦  «        z  z
  ¦  «        z  t          z  S )Ng =‘`äXáCr   rF   s      r'   rH   z0TestQuadrature.test_romberg_rtol.<locals>.myfuncR   s,   € Ø�˜A˜a™C ¥# a¡&¤&¡™LÑ)Ô)Ñ)­"Ñ,Ð,r)   r   rJ   rX   re   g´Ãæ�3>ÅCr,   )r   r   r	   ri   s       r'   Útest_romberg_rtolz TestQuadrature.test_romberg_rtolP   sI   € ð	-ð 	-ð 	-å�f˜a¥¨(¸Ð?Ñ?Ô?ˆØ/ˆ	Ý˜˜Y¨UÐ3Ñ3Ô3Ð3Ð3Ð3r)   c                 ód   — t          t          t          j        d¦  «        ¦  «        d¦  «         d S )Né   é€   )r   r   r7   r8   ©r.   s    r'   Ú	test_rombzTestQuadrature.test_rombX   s(   € Ý•T�"œ) B™-œ-Ñ(Ô(¨#Ñ.Ô.Ð.Ð.Ð.r)   c                 ó*  — t          j        d¦  «        }t          j        d|z  ¦  «        }t          |¦  «        }t	          d„ |                     ¦   «         |                     ¦   «         ¦  «        \  }}t          ||dd¬¦  «         t          ¦   «         5 }| 	                    t          d¦  «         t          d„ |                     ¦   «         |                     ¦   «         d	¬
¦  «        }d d d ¦  «         n# 1 swxY w Y   t          ||dd¬¦  «         d S )Nro   çš™™™™™É?c                 ó0   — t          j        d| z  ¦  «        S ©Nrt   ©r7   r   ©r%   s    r'   r(   z2TestQuadrature.test_romb_gh_3731.<locals>.<lambda>`   s   € ¥2¤6¨#¨a©%¡=¤=€ r)   g:Œ0âŽyE>r   ©r-   Úatolzdivmax .4. exceededc                 ó0   — t          j        d| z  ¦  «        S rv   rw   rx   s    r'   r(   z2TestQuadrature.test_romb_gh_3731.<locals>.<lambda>f   s   € ¥R¤V¨C°©E¡]¤]€ r)   r   )Údivmaxr+   )r7   r8   r   r   r   ÚminÚmaxr	   r   Úfilterr   r   )r.   r%   ÚyrQ   Úval2rR   ÚsupÚval3s           r'   Útest_romb_gh_3731z TestQuadrature.test_romb_gh_3731[   s;  € åŒI�fÑÔˆÝŒF�3�q‘5‰MŒMˆÝ�1‰gŒgˆÝÐ0Ð0°!·%²%±'´'¸1¿5º5¹7¼7ÑCÔC‰	ˆˆcÝ˜˜T¨°1Ð5Ñ5Ô5Ð5õ Ñ Ô ð 	P CØ�JŠJ•Ð(=Ñ>Ô>Ð>ÝÐ2Ð2°A·E²E±G´G¸Q¿UºU¹W¼WÈQÐOÑOÔOˆDð	Pð 	Pð 	Pñ 	Pô 	Pð 	Pð 	Pð 	Pð 	Pð 	Pð 	Pøøøð 	Pð 	Pð 	Pð 	Põ 	˜˜T¨°AÐ6Ñ6Ô6Ð6Ð6Ð6s   ÂAC5Ã5C9Ã<C9c                 ób   — dd l }t          |j        dd¦  «        }d}t          ||d¬¦  «         d S )Nr   r    g?ò•à¯kÝ?rM   rN   )Úmathr   r   r   )r.   r†   ÚvalmathÚexpected_vals       r'   Útest_non_dtypezTestQuadrature.test_non_dtypei   s>   € àˆˆˆÝ˜$œ( A qÑ)Ô)ˆØ*ˆÝ˜G \¸1Ð=Ñ=Ô=Ð=Ð=Ð=r)   c                 ó°  — d}t          |d¦  «        \  }}t          ||t          j        ddg¦  «        z  ¦  «         t	          ||dz   dz  ¦  «         d}t          |d¦  «        \  }}t	          ||t          j        g d¢¦  «        z  dz  ¦  «         t	          ||dz   d	z  ¦  «         d}t          |d¦  «        \  }}t	          ||t          j        g d
¢¦  «        z  dz  ¦  «         t	          ||dz   dz  ¦  «         d}t          |d¦  «        \  }}t	          ||t          j        g d¢¦  «        z  dz  ¦  «         t	          ||dz   dz  ¦  «         dS )z5Test the first few degrees, for evenly spaced points.r    ç      à?é   ç      (@r!   )ra   ç      @ra   ç      @r^   g     €¦@)ra   ç      @r�   ra   ç       @g     P¹@r   )ç      @ç      @@r�   r“   r’   g     €V@rM   g     ˆ=AN)r   r   r7   Úarrayr   )r.   r&   ÚwtsÚerrcoffs       r'   Útest_newton_cotesz TestQuadrature.test_newton_cotesp   sq  € àˆÝ# A qÑ)Ô)‰ˆˆWÝ�S˜!�BœH c¨3 ZÑ0Ô0Ñ0Ñ1Ô1Ð1Ý˜G a¨¡d U¨4¡ZÑ0Ô0Ð0àˆÝ# A qÑ)Ô)‰ˆˆWÝ˜C ¥2¤8¨O¨O¨OÑ#<Ô#<Ñ!<¸SÑ!@ÑAÔAÐAÝ˜G a¨¡d U¨6¡\Ñ2Ô2Ð2àˆÝ# A qÑ)Ô)‰ˆˆWÝ˜C ¥2¤8Ð,@Ð,@Ð,@Ñ#AÔ#AÑ!AÀ#Ñ!EÑFÔFÐFÝ˜G a¨¡d U¨6¡\Ñ2Ô2Ð2àˆÝ# A qÑ)Ô)‰ˆˆWÝ˜C ¥2¤8Ð,HÐ,HÐ,HÑ#IÔ#IÑ!IÈ$Ñ!NÑOÔOÐOÝ˜G a¨¡d U¨9¡_Ñ5Ô5Ð5Ð5Ð5r)   c                 óV  — t          j        g d¢¦  «        }|dz  }t          |¦  «        \  }}d}t          j        ||¦  «        }t	          ||¦  «         t          j        g d¢¦  «        }|dz  }t          |¦  «        \  }}d}t          j        ||¦  «        }t	          ||¦  «         dS )z9Test newton_cotes with points that are not evenly spaced.)ç        g      ø?ç       @r!   gUUUUUU@)r™   gffffffö?gÍÌÌÌÌÌ @r�   ç      "@N)r7   r”   r   Údotr   )r.   r%   r€   r•   r–   Úexact_integralÚnumeric_integrals          r'   Útest_newton_cotes2z!TestQuadrature.test_newton_cotes2†   s¯   € õ ŒH�_�_�_Ñ%Ô%ˆØˆq‰DˆÝ# A‘”‰ˆˆWØˆÝœ6 # q™>œ>ÐÝÐ,¨nÑ=Ô=Ð=åŒHÐ)Ð)Ð)Ñ*Ô*ˆØˆq‰DˆÝ# A‘”‰ˆˆWØˆÝœ6 # q™>œ>ÐÝÐ,¨nÑ=Ô=Ð=Ð=Ð=r)   c           
      óz  — t          j        d¦  «        }t          t          |¦  «        d¦  «         t          t          |d¬¦  «        d¦  «         t          t          |t          j        ddd¦  «        ¬¦  «        d	¦  «         t          j        d
dd¦  «        }d„ }t          t           ||¦  «        |¬¦  «        d¦  «         t          j        d
dd¦  «        }t          t           ||¦  «        d¬¦  «        d¦  «         t          j        d¦  «                             dd¦  «        }t          j        d¦  «                             ddd¦  «        } ||¦  «        }t          d¦  «        D ]Å}t          |||¬¦  «        }t          j        |dg¬¦  «        }|D ]—}t          |j
        ¦  «        }	|	                     |t          d ¦  «        ¦  «         |t          |	¦  «                 d         dz  dz  |t          |	¦  «                 d         dz  dz  z
  }
t          ||j
                 |
¦  «         Œ˜ŒÆt          j        d¦  «                             dd¦  «        } ||¦  «        }t          ||d¬¦  «        }d|d d …d
f         |d d …df         z   z  |d d …d
f         |d d …df         z
  z  }
t          ||
¦  «         t          j        d¦  «                             dd¦  «        }t          j        d¦  «                             ddd¦  «        } ||¦  «        }t          d¦  «        D ]Å}t          |||¬¦  «        }t          j        |dg¬¦  «        }|D ]—}t          |j
        ¦  «        }	|	                     |t          d ¦  «        ¦  «         |t          |	¦  «                 d         dz  dz  |t          |	¦  «                 d         dz  dz  z
  }
t          ||j
                 |
¦  «         Œ˜ŒÆt          j        dg¦  «        }t          j        |d¦  «        }t          t          ||d¬¦  «        d¦  «         t          t          ||d¬¦  «        d¦  «         t          j        g d¢¦  «        }t          j        |d¦  «        }t          t          ||d¬¦  «        d¦  «         t          t          ||d¬¦  «        d¦  «         t          j        g d¢g d¢g d¢g¦  «        }t          j        |d¦  «        }g d¢}d gdz  }t          t          ||d¬¦  «        |¦  «         t          t          ||d¬¦  «        |¦  «         t          j        g d¢g d¢g d!¢g¦  «        }t          j        |d¦  «        }g d"¢}g d#¢}t          t          ||d¬¦  «        |¦  «         t          t          ||d¬¦  «        |¦  «         d S )$Nro   rp   r‹   ©Údxé@   r   r   rx   é    r    c                 ó   — | dz  S )Nr!   r#   rx   s    r'   Úfz&TestQuadrature.test_simpson.<locals>.fŸ   s   € Ø�a‘4ˆKr)   ç      5@rM   rš   ér   é   ç      P@rŒ   ©r%   ÚaxisÚmulti_index)Úflagséÿÿÿÿé   r!   é   r^   é}   r™   )rŒ   rŒ   rŒ   rŒ   )r    r!   r   r°   )r™   r™   r™   r™   ç«ªªªªJe@)r    r°   r©   r¤   )r™   g      a@g      ‘@g      Á@)r³   r³   gªªªª*UÅ@)r7   r8   r   r   Úlinspacer	   ÚreshapeÚrangeÚnditerÚlistr­   ÚinsertÚsliceÚtupler”   Úpower)r.   r€   r%   r¦   rA   ÚiÚrÚitr1   ÚidxÚintegralÚ	zero_axisÚdefault_axiss                r'   Útest_simpsonzTestQuadrature.test_simpson—   s“  € ÝŒI�b‰MŒMˆÝ•W˜Q‘Z”Z Ñ%Ô%Ð%Ý•W˜Q 3Ð'Ñ'Ô'¨Ñ,Ô,Ð,Ý•W˜Q¥"¤+¨a°°BÑ"7Ô"7Ð8Ñ8Ô8¸"Ñ=Ô=Ð=õ ŒK˜˜1˜aÑ Ô ˆð	ð 	ð 	õ 	�   !¡¤¨Ð*Ñ*Ô*¨DÑ1Ô1Ð1õ ŒK˜˜1˜aÑ Ô ˆÝ�   !¡¤¨Ð-Ñ-Ô-¨sÑ3Ô3Ð3õ ŒI�b‰MŒM×!Ò! ! QÑ'Ô'ˆÝŒI�c‰NŒN×"Ò" 1 a¨Ñ+Ô+ˆØˆAˆa‰DŒDˆÝ�q‘”ð 	=ð 	=ˆAÝ˜˜Q QÐ'Ñ'Ô'ˆAÝ”˜1 ] OÐ4Ñ4Ô4ˆBØð =ð =�Ý˜2œ>Ñ*Ô*�Ø—
’
˜1�e D™kœkÑ*Ô*Ð*Ø�U 3™ZœZœ=¨Ô,¨aÑ/°!Ñ3°a½¸c¹
¼
´mÀAÔ6FÈÑ6IÈAÑ6MÑM�Ý  "¤.Ô 1°8Ñ<Ô<Ð<Ð<ð	=õ ŒI�b‰MŒM×!Ò! ! QÑ'Ô'ˆØˆAˆa‰DŒDˆÝ�A˜ Ð$Ñ$Ô$ˆà˜!˜A˜A˜A˜q˜Dœ' A a a a¨ d¤GÑ+Ñ,°°!°!°!°Q°$´¸!¸A¸A¸A¸q¸D¼'Ñ0AÑBˆÝ˜˜8Ñ$Ô$Ð$õ ŒI�b‰MŒM×!Ò! ! QÑ'Ô'ˆÝŒI�c‰NŒN×"Ò" 1 a¨Ñ+Ô+ˆØˆAˆa‰DŒDˆÝ�q‘”ð 	=ð 	=ˆAÝ˜˜Q QÐ'Ñ'Ô'ˆAÝ”˜1 ] OÐ4Ñ4Ô4ˆBØð =ð =�Ý˜2œ>Ñ*Ô*�Ø—
’
˜1�e D™kœkÑ*Ô*Ð*Ø�U 3™ZœZœ=¨Ô,¨aÑ/°!Ñ3°a½¸c¹
¼
´mÀAÔ6FÈÑ6IÈAÑ6MÑM�Ý  "¤.Ô 1°8Ñ<Ô<Ð<Ð<ð	=õ ŒH�a�S‰MŒMˆÝŒH�Q˜‰NŒNˆÝ�  Q¨QÐ/Ñ/Ô/°Ñ5Ô5Ð5Ý�  Q¨RÐ0Ñ0Ô0°#Ñ6Ô6Ð6åŒH�\�\�\Ñ"Ô"ˆÝŒH�Q˜‰NŒNˆÝ�  Q¨QÐ/Ñ/Ô/°Ñ5Ô5Ð5Ý�  Q¨RÐ0Ñ0Ô0°#Ñ6Ô6Ð6åŒH�l�l�l L L L°,°,°,Ð?Ñ@Ô@ˆÝŒH�Q˜‰NŒNˆØ(Ð(Ð(ˆ	Ø!�{ Q‘ˆÝ�  Q¨QÐ/Ñ/Ô/°Ñ;Ô;Ð;å�  Q¨RÐ0Ñ0Ô0°,Ñ?Ô?Ð?åŒH�l�l�l L L L°.°.°.ÐAÑBÔBˆÝŒH�Q˜‰NŒNˆØ0Ð0Ð0ˆ	Ø>Ð>Ð>ˆÝ�  Q¨QÐ/Ñ/Ô/°Ñ;Ô;Ð;Ý�  Q¨RÐ0Ñ0Ô0°,Ñ?Ô?Ð?Ð?Ð?r)   ÚdroplastFTc                 óú   — t          j        g d¢g d¢g¦  «        }|r|d d …d d…f         }t          |d¬¦  «        }t          t          j        |t           j        ¬¦  «        d¬¦  «        }t	          ||¦  «         d S )N)r!   r!   r   r   r°   r°   éüÿÿÿr^   )r   r   r!   rÇ   é
   é   éþÿÿÿrÈ   r¯   ©r¬   )Údtype)r7   r”   r   Úfloat64r   )r.   rÅ   r€   Úresultr/   s        r'   Útest_simpson_2d_integer_no_xz+TestQuadrature.test_simpson_2d_integer_no_xå   s”   € õ ŒHÐ/Ð/Ð/Ø3Ð3Ð3ð5ñ 6ô 6ˆàð 	Ø�!�!�!�S�b�S�&”	ˆAÝ˜ Ð$Ñ$Ô$ˆÝ�2œ8 A­R¬ZÐ8Ñ8Ô8¸rÐBÑBÔBˆÝ�V˜XÑ&Ô&Ð&Ð&Ð&r)   N)r:   r;   r<   r   rT   r[   rb   rf   rj   rm   rr   r„   r‰   r—   rŸ   rÄ   ÚpytestÚmarkÚparametrizerÏ   r#   r)   r'   r>   r>   #   s  € € € € € ð"ð "ð "ð7ð 7ð 7ð4ð 4ð 4ðð ð ð4ð 4ð 4ð7ð 7ð 7ð4ð 4ð 4ð/ð /ð /ð7ð 7ð 7ð>ð >ð >ð6ð 6ð 6ð,>ð >ð >ð"K@ð K@ð K@ð\ „[×Ò˜Z¨%°¨Ñ7Ô7ð	'ð 	'ñ 8Ô7ð	'ð 	'ð 	'r)   r>   Úfuncc                 ó¦   — d| j         › d�}t          j        |¬¦  «        5   | t          j        dd¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nz`scipy.integrate.z` is deprecated...©Úmatchr   r    )r:   rÐ   Údeprecated_callr7   Úexp)rÓ   Úmessages     r'   Útest_deprecate_integratorrÚ   ò   s¢   € àC $¤-ÐCÐCÐC€GÝ	Ô	 gÐ	.Ñ	.Ô	.ð ð Øˆ�RŒV�Q˜ÑÔÐðð ð ñ ô ð ð ð ð ð ð ð øøøð ð ð ð ð ð s   ¡AÁA
ÁA
c                   óx   — e Zd Zd„ Zd„ Zd„ Zd„ Zej         	                    dddg¦  «        d„ ¦   «         Z
d	„ Zd
S )ÚTestCumulative_trapezoidc                 óØ   — t          j        ddd¬¦  «        }|}t          ||d¬¦  «        }g d¢}t          ||¦  «         t          ||d ¬¦  «        }t          ||dd …         ¦  «         d S )	NrÊ   r!   r^   ©Únumr   ©Úinitial)r™   ç      ø¿ç       Àrâ   r™   r    ©r7   r´   r   r	   )r.   r%   r€   Úy_intÚ
y_expecteds        r'   Útest_1dz TestCumulative_trapezoid.test_1dú   s~   € ÝŒK˜˜A 1Ð%Ñ%Ô%ˆØˆÝ$ Q¨°1Ð5Ñ5Ô5ˆØ.Ð.Ð.ˆ
Ý˜˜zÑ*Ô*Ð*å$ Q¨°4Ð8Ñ8Ô8ˆÝ˜˜z¨!¨"¨"œ~Ñ.Ô.Ð.Ð.Ð.r)   c                 óÊ  — t          j        d¦  «                             ddd¦  «        }|}t          ||d¬¦  «        }t          j        g d¢g d¢gg d	¢g d
¢gg d¢g d¢gg¦  «        }t          ||¦  «         g d¢}t          g d¢|¦  «        D ]U\  }}t          ||d|¬¦  «        }t          |j        d¦  «         t          ||d |¬¦  «        }t          |j        |¦  «         ŒVd S )Né   rŒ   r!   r   r   rà   )r™   r‹   rš   ç      @)r™   rê   ç      $@ç     €0@)r™   ç      !@ç      2@g     €<@)r™   ç      )@g      :@g     @D@)r™   rì   g      A@g     @J@)r™   ç     €4@g      E@g      P@))r!   r!   r   )rŒ   r    r   )rŒ   r!   rŒ   ©r   r    r!   )rá   r¬   )rŒ   r!   r   )	r7   r8   rµ   r   r”   r	   Úzipr   Úshape)r.   r%   r€   rå   ræ   Úshapesr¬   ró   s           r'   Útest_y_nd_x_ndz'TestCumulative_trapezoid.test_y_nd_x_nd  s4  € ÝŒI�iÑ Ô ×(Ò(¨¨A¨qÑ1Ô1ˆØˆÝ$ Q¨°1Ð5Ñ5Ô5ˆÝ”XÐ 2Ð 2Ð 2Ø 4Ð 4Ð 4ð 6à 4Ð 4Ð 4Ø 5Ð 5Ð 5ð 7à 5Ð 5Ð 5Ø 5Ð 5Ð 5ð 7ð	8ñ 9ô 9ˆ
õ 	˜˜zÑ*Ô*Ð*ð 3Ð2Ð2ˆÝ˜y˜y˜y¨&Ñ1Ô1ð 	-ð 	-‰KˆD�%Ý(¨¨A°q¸tÐDÑDÔDˆEÝ˜œ iÑ0Ô0Ð0Ý(¨¨A°tÀ$ÐGÑGÔGˆEÝ˜œ eÑ,Ô,Ð,Ð,ð		-ð 	-r)   c           	      óö  — t          j        d¦  «                             ddd¦  «        }t          j        d¦  «        dz  }t          j        g d¢g d¢gg d¢g d¢gg¦  «        t          j        g d	¢gg d
¢gg d¢gg¦  «        t          j        g d¢g d¢gg d¢g d¢gg d¢g d¢gg¦  «        f}t	          g d¢|¦  «        D ];\  }}t          ||d |j        |         …         |d ¬¦  «        }t          ||¦  «         Œ<d S )Nré   rŒ   r!   r   )rŽ   ç      @r�   r’   )r‘   r›   rë   ç      &@)g      D@g      F@g      H@g      J@)g      L@g      N@rª   g      Q@)rš   r�   rŽ   r÷   )rë   rø   r�   ç      *@)rî   g      3@g      4@r§   )r‹   r÷   g     €1@)rê   r§   g     ÀJ@)rí   g     €B@g     `V@)rï   g     €J@g     `_@)rì   g     @Q@g     0d@)rð   g     @U@g     °h@rñ   )r%   r¬   rá   )r7   r8   rµ   r”   rò   r   ró   r	   )r.   r€   r%   Úys_expectedr¬   ræ   rå   s          r'   Útest_y_nd_x_1dz'TestCumulative_trapezoid.test_y_nd_x_1d  s~  € ÝŒI�iÑ Ô ×(Ò(¨¨A¨qÑ1Ô1ˆÝŒI�a‰LŒL˜!‰Oˆõ ŒHÐ'Ð'Ð'Ø)Ð)Ð)ð+à+Ð+Ð+Ø+Ð+Ð+ð-ð.ñ /ô /õ ŒHÐ'Ð'Ð'Ð(Ø+Ð+Ð+Ð,Ø+Ð+Ð+Ð,ð.ñ /ô /õ ŒH���Ø'Ð'Ð'ð)à'Ð'Ð'Ø)Ð)Ð)ð+à)Ð)Ð)Ø)Ð)Ð)ð+ð	,ñ -ô -ð.ˆõ !$ I I I¨{Ñ ;Ô ;ð 	/ð 	/ÑˆD�*Ý(¨¨a°°´¸´°Ô.?ÀdØ15ð7ñ 7ô 7ˆEå˜E :Ñ.Ô.Ð.Ð.ð	/ð 	/r)   c                 óZ  — t          j        ddd¬¦  «        }t          |¦  «        }g d¢}t          ||¦  «         t          |d¬¦  «        }g d¢}t          ||¦  «         t          |d	¬
¦  «        }g d¢}t          ||¦  «         t          |d	d¬¦  «        }g d¢}t          ||¦  «         d S )NrÊ   r!   r^   rÞ   )râ   rã   râ   r™   r   rà   )r   râ   rã   râ   r™   rŒ   r¡   )ç      Àç      Àrý   r™   )r¢   rá   )r   rý   rþ   rý   r™   rä   )r.   r€   rå   ræ   s       r'   Útest_x_nonez$TestCumulative_trapezoid.test_x_none1  sÏ   € ÝŒK˜˜A 1Ð%Ñ%Ô%ˆå$ QÑ'Ô'ˆØ*Ð*Ð*ˆ
Ý˜˜zÑ*Ô*Ð*å$ Q°Ð2Ñ2Ô2ˆØ-Ð-Ð-ˆ
Ý˜˜zÑ*Ô*Ð*å$ Q¨1Ð-Ñ-Ô-ˆØ*Ð*Ð*ˆ
Ý˜˜zÑ*Ô*Ð*å$ Q¨1°aÐ8Ñ8Ô8ˆØ-Ð-Ð-ˆ
Ý˜˜zÑ*Ô*Ð*Ð*Ð*r)   rá   r    r‹   c           
      ó&  — t          j        ddd¬¦  «        }t          j        d¬¦  «        5  t	          ||¬¦  «        }ddd¦  «         n# 1 swxY w Y   t          ||gt          j        |dd…         |dd	…         z   ¦  «        d
z  ¢¦  «         dS )z4If initial is not None or 0, a ValueError is raised.r   rÈ   rÞ   z	`initial`rÕ   rà   Nr    r¯   r!   )r7   r´   rÐ   r×   r   r	   Úcumsum)r.   rá   r€   Úress       r'   Útest_initial_warningz-TestCumulative_trapezoid.test_initial_warningD  sÖ   € õ
 ŒK˜˜2 2Ð&Ñ&Ô&ˆÝÔ#¨+Ð6Ñ6Ô6ð 	;ð 	;Ý& q°'Ð:Ñ:Ô:ˆCð	;ð 	;ð 	;ñ 	;ô 	;ð 	;ð 	;ð 	;ð 	;ð 	;ð 	;øøøð 	;ð 	;ð 	;ð 	;å˜˜gÐD­¬	°!°A°B°B´%¸!¸C¸R¸C¼&±.Ñ(AÔ(AÀ!Ñ(CÐDÑEÔEÐEÐEÐEs   ­AÁAÁAc                 óŽ   — t          j        t          d¬¦  «        5  t          g ¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )NúAt least one point is requiredrÕ   ©r€   )rÐ   ÚraisesÚ
ValueErrorr   rq   s    r'   Útest_zero_len_yz(TestCumulative_trapezoid.test_zero_len_yN  s�   € ÝŒ]�:Ð-MÐNÑNÔNð 	'ð 	'Ý  2Ð&Ñ&Ô&Ð&ð	'ð 	'ð 	'ñ 	'ô 	'ð 	'ð 	'ð 	'ð 	'ð 	'ð 	'ð 	'øøøð 	'ð 	'ð 	'ð 	'ð 	'ð 	's   œ:º>Á>N)r:   r;   r<   rç   rõ   rû   rÿ   rÐ   rÑ   rÒ   r  r	  r#   r)   r'   rÜ   rÜ   ù   s›   € € € € € ð/ð /ð /ð-ð -ð -ð*/ð /ð /ð0+ð +ð +ð& „[×ÒØ�A�s�8ñô ðFð Fñô ðFð'ð 'ð 'ð 'ð 'r)   rÜ   c                   ó    — e Zd Zd„ Zd„ Zd„ ZdS )ÚTestTrapezoidc                 óè   — t          j        ddd¦  «        }t          t          j        d|dz  z  ¦  «        t          j        dt           j        z  ¦  «        z  d¬¦  «        }t          |d¦  «         d S )NéöÿÿÿrÈ   gš™™™™™¹?g      à¿r!   r¡   r    )r7   r8   r   rØ   Úsqrtr   r	   )r.   r%   r¾   s      r'   Útest_simplezTestTrapezoid.test_simpleT  sd   € ÝŒI�c˜2˜rÑ"Ô"ˆÝ•b”f˜S 1¨¡6™\Ñ*Ô*­R¬W°Q½¼±YÑ-?Ô-?Ñ?ÀCÐHÑHÔHˆå˜˜1ÑÔÐÐÐr)   c                 ó2  — t          j        ddd¦  «        }t          j        ddd¦  «        }t          j        ddd¦  «        }t          j        |¦  «        |d         |d         z
  z  }|dxx         dz  cc<   |dxx         dz  cc<   t          j        |¦  «        |d         |d         z
  z  }|dxx         dz  cc<   |dxx         dz  cc<   t          j        |¦  «        |d         |d         z
  z  }|dxx         dz  cc<   |dxx         dz  cc<   |d d …d d f         |d d d …d f         z   |d d d d …f         z   }||d d …d d f         z                       d¬¦  «        }||d d d …d f         z                       d¬¦  «        }	||d d d d …f         z                       d¬¦  «        }
t	          ||d d …d d f         d¬	¦  «        }t          ||¦  «         t	          ||d d d …d f         d¬	¦  «        }t          ||	¦  «         t	          ||d d d d …f         d¬	¦  «        }t          ||
¦  «         t	          ||d¬	¦  «        }t          ||¦  «         t	          ||d¬	¦  «        }t          ||	¦  «         t	          ||d¬	¦  «        }t          ||
¦  «         d S )
Nr   r    rŒ   r!   r°   é   r¯   rË   r«   )r7   r´   Ú	ones_likeÚsumr   r	   )r.   r%   r€   rG   ÚwxÚwyÚwzÚqÚqxÚqyÚqzr¾   s               r'   Ú	test_ndimzTestTrapezoid.test_ndimZ  sØ  € ÝŒK˜˜1˜aÑ Ô ˆÝŒK˜˜1˜aÑ Ô ˆÝŒK˜˜1˜bÑ!Ô!ˆåŒ\˜!‰_Œ_  !¤ q¨¤t¡Ñ,ˆØ
ˆ1ˆˆŒ�‰
ˆˆ‰Ø
ˆ2ˆˆŒ�!‰ˆˆ‰ÝŒ\˜!‰_Œ_  !¤ q¨¤t¡Ñ,ˆØ
ˆ1ˆˆŒ�‰
ˆˆ‰Ø
ˆ2ˆˆŒ�!‰ˆˆ‰ÝŒ\˜!‰_Œ_  !¤ q¨¤t¡Ñ,ˆØ
ˆ1ˆˆŒ�‰
ˆˆ‰Ø
ˆ2ˆˆŒ�!‰ˆˆ‰àˆaˆaˆa��tˆmÔ˜q  a a a¨ œÑ.°°4¸¸a¸a¸a°<´Ñ@ˆà�"�Q�Q�Q˜˜d�]Ô#Ñ#×(Ò(¨aÐ(Ñ0Ô0ˆØ�"�T˜1˜1˜1˜d�]Ô#Ñ#×(Ò(¨aÐ(Ñ0Ô0ˆØ�"�T˜4   �]Ô#Ñ#×(Ò(¨aÐ(Ñ0Ô0ˆõ �a˜1˜Q˜Q˜Q  d˜]Ô+°!Ð4Ñ4Ô4ˆÝ˜˜2ÑÔÐÝ�a˜1˜T ! ! ! T˜\œ?°Ð3Ñ3Ô3ˆÝ˜˜2ÑÔÐÝ�a˜1˜T 4¨¨¨˜\œ?°Ð3Ñ3Ô3ˆÝ˜˜2ÑÔÐõ �a˜1 1Ð%Ñ%Ô%ˆÝ˜˜2ÑÔÐÝ�a˜1 1Ð%Ñ%Ô%ˆÝ˜˜2ÑÔÐÝ�a˜1 1Ð%Ñ%Ô%ˆÝ˜˜2ÑÔÐÐÐr)   c                 óÂ  — t          j        d¦  «        }||z  }|dk    }t           j                             ||¬¦  «        }d}t	          t          ||¦  «        |¦  «         t           j                             ||¬¦  «        }t	          t          ||¦  «        |¦  «         t           j                             ||¬¦  «        }t	          t          ||¦  «        |¦  «         d S )Nr^   r!   )Úmaskrù   )r7   r8   Úmar”   r	   r   )r.   r%   r€   r  Úymr¾   Úxms          r'   Útest_maskedzTestTrapezoid.test_masked  sÁ   € õ ŒI�a‰LŒLˆØ�‰EˆØ�AŠvˆÝŒU�[Š[˜ ˆ[Ñ&Ô&ˆØˆÝ�	 " aÑ(Ô(¨!Ñ,Ô,Ð,åŒU�[Š[˜ ˆ[Ñ&Ô&ˆÝ�	 " bÑ)Ô)¨1Ñ-Ô-Ð-åŒU�[Š[˜ ˆ[Ñ&Ô&ˆÝ�	 ! RÑ(Ô(¨!Ñ,Ô,Ð,Ð,Ð,r)   N)r:   r;   r<   r  r  r!  r#   r)   r'   r  r  S  sB   € € € € € ðð ð ð#ð #ð #ðJ-ð -ð -ð -ð -r)   r  c                   ó‚  — e Zd Zd„ Zdd ej        d¦  «        fd„Zej         	                    dddg¦  «        ej         	                    ddd	g¦  «        d
„ ¦   «         ¦   «         Z
ej         	                    dddgddgddgddgg¦  «        d„ ¦   «         Zej         	                    dddg¦  «        d„ ¦   «         Zd„ ZdS )ÚTestQMCQuadc           	      ó  — d}t          j        t          |¬¦  «        5  t          dddgddg¦  «         d d d ¦  «         n# 1 swxY w Y   d}t          j        t          |¬¦  «        5  t          d„ ddgddg¦  «         d d d ¦  «         n# 1 swxY w Y   d„ }d	}t          j        t          |¬¦  «        5  t          |ddgddg¦  «         d d d ¦  «         n# 1 swxY w Y   d
}t          j        t          |¬¦  «        5  t          d„ ddgddgd¬¦  «         d d d ¦  «         n# 1 swxY w Y   d}t          j        t          |¬¦  «        5  t          d„ ddgddgd¬¦  «         d d d ¦  «         n# 1 swxY w Y   d}t          j        t          |¬¦  «        5  t          d„ ddgddgd¬¦  «         d d d ¦  «         n# 1 swxY w Y   d}t          j        t          |¬¦  «        5  t          d„ ddgddgt          j         	                    d¦  «        ¬¦  «         d d d ¦  «         n# 1 swxY w Y   d}t          j        t          |¬¦  «        5  t          d„ ddgddgd¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nz`func` must be callable.rÕ   za duckr   r    z/`func` must evaluate the integrand at points...c                  ó   — dS ©Nr    r#   r#   r)   r'   r(   z3TestQMCQuad.test_input_validation.<locals>.<lambda>˜  s   € ˜Q€ r)   c                 óD   — | j         dk    sJ ‚t          j        | ¦  «        S r&  )Úndimr7   r  rx   s    r'   rÓ   z/TestQMCQuad.test_input_validation.<locals>.funcš  s   € Ø”6˜Q’;�;�;�;Ý”6˜!‘9”9Ðr)   z8Exception encountered when attempting vectorized call...z`n_points` must be an integer.c                 ó   — dS r&  r#   rx   s    r'   r(   z3TestQMCQuad.test_input_validation.<locals>.<lambda>£  ó   € ˜q€ r)   g     �@)Ún_pointsz!`n_estimates` must be an integer.c                 ó   — dS r&  r#   rx   s    r'   r(   z3TestQMCQuad.test_input_validation.<locals>.<lambda>§  r*  r)   rí   )Ún_estimatesz8`qrng` must be an instance of scipy.stats.qmc.QMCEngine.c                 ó   — dS r&  r#   rx   s    r'   r(   z3TestQMCQuad.test_input_validation.<locals>.<lambda>«  r*  r)   )Úqrngz8`qrng` must be initialized with dimensionality equal to c                 ó   — dS r&  r#   rx   s    r'   r(   z3TestQMCQuad.test_input_validation.<locals>.<lambda>¯  r*  r)   z,`log` must be boolean \(`True` or `False`\).c                 ó   — dS r&  r#   rx   s    r'   r(   z3TestQMCQuad.test_input_validation.<locals>.<lambda>³  r*  r)   rÈ   ©Úlog)
rÐ   r  Ú	TypeErrorr   r  ÚwarnsÚUserWarningr   ÚqmcÚSobol)r.   rÙ   rÓ   s      r'   Útest_input_validationz!TestQMCQuad.test_input_validation‘  sò  € Ø,ˆÝŒ]�9¨GÐ4Ñ4Ô4ð 	/ð 	/Ý�X  1˜v¨¨1 vÑ.Ô.Ð.ð	/ð 	/ð 	/ñ 	/ô 	/ð 	/ð 	/ð 	/ð 	/ð 	/ð 	/øøøð 	/ð 	/ð 	/ð 	/ð DˆÝŒ]�:¨WÐ5Ñ5Ô5ð 	0ð 	0Ý�Y�Y  A ¨¨A¨Ñ/Ô/Ð/ð	0ð 	0ð 	0ñ 	0ô 	0ð 	0ð 	0ð 	0ð 	0ð 	0ð 	0øøøð 	0ð 	0ð 	0ð 	0ð	ð 	ð 	ð MˆÝŒ\�+¨WÐ5Ñ5Ô5ð 	+ð 	+Ý�T˜A˜q˜6 A q 6Ñ*Ô*Ð*ð	+ð 	+ð 	+ñ 	+ô 	+ð 	+ð 	+ð 	+ð 	+ð 	+ð 	+øøøð 	+ð 	+ð 	+ð 	+ð 3ˆÝŒ]�9¨GÐ4Ñ4Ô4ð 	Cð 	CÝ�[�[ 1 a &¨1¨a¨&¸6ÐBÑBÔBÐBð	Cð 	Cð 	Cñ 	Cô 	Cð 	Cð 	Cð 	Cð 	Cð 	Cð 	Cøøøð 	Cð 	Cð 	Cð 	Cð 6ˆÝŒ]�9¨GÐ4Ñ4Ô4ð 	Cð 	CÝ�[�[ 1 a &¨1¨a¨&¸cÐBÑBÔBÐBð	Cð 	Cð 	Cñ 	Cô 	Cð 	Cð 	Cð 	Cð 	Cð 	Cð 	Cøøøð 	Cð 	Cð 	Cð 	Cð MˆÝŒ]�9¨GÐ4Ñ4Ô4ð 	Að 	AÝ�[�[ 1 a &¨1¨a¨&°xÐ@Ñ@Ô@Ð@ð	Að 	Að 	Añ 	Aô 	Að 	Að 	Að 	Að 	Að 	Að 	Aøøøð 	Að 	Að 	Að 	Að MˆÝŒ]�:¨WÐ5Ñ5Ô5ð 	Kð 	KÝ�[�[ 1 a &¨1¨a¨&µu´y·²ÀqÑ7IÔ7IÐJÑJÔJÐJð	Kð 	Kð 	Kñ 	Kô 	Kð 	Kð 	Kð 	Kð 	Kð 	Kð 	Køøøð 	Kð 	Kð 	Kð 	Kð BˆÝŒ]�9¨GÐ4Ñ4Ô4ð 	:ð 	:Ý�[�[ 1 a &¨1¨a¨&°bÐ9Ñ9Ô9Ð9ð	:ð 	:ð 	:ñ 	:ô 	:ð 	:ð 	:ð 	:ð 	:ð 	:ð 	:ð 	:øøøð 	:ð 	:ð 	:ð 	:ð 	:ð 	:s�   žA Á AÁAÁ(BÂBÂBÂ6CÃCÃCÄ D%Ä%D)Ä,D)ÅE2Å2E6Å9E6ÆF?Æ?GÇGÇ'6H)È)H-È0H-ÉI7É7I;É>I;é   r°   r!   c           	      óV  ‡‡‡— d}t          j        |¦  «        Št          j        |¦  «        Šˆˆfd„Št           j                             d¦  «        }t
          j                             ||¬¦  «        }t          j        |¦  «        }t          j        |¦  «        |z  }t          ‰|||||¬¦  «        }	t
          j
                             |‰‰|¬¦  «        }
t          j        |dz
  d¦  «        |	j        z  }t          |	j        |
|¬	¦  «         t          j        |¦  «        |	j        z  d
k    sJ ‚t           j                             d¦  «        }t
          j                             ||¬¦  «        }t          ˆfd„||||d|¬¦  «        }t          t          j        |j        ¦  «        |	j        d¬¦  «         t          j        |j        ¦  «        t          j        |¦  «        d
k     rt           j        nd
k    sJ ‚t          t          j        |j        ¦  «        |	j        dd¬¦  «         d S )Nr!   c                 óP   •— t           j                             | j        ‰‰¦  «        S r5   )r   Úmultivariate_normalÚpdfÚT)r%   ÚcovÚmeans    €€r'   rÓ   z$TestQMCQuad.basic_test.<locals>.func»  s    ø€ ÝÔ,×0Ò0°´°d¸CÑ@Ô@Ð@r)   l   é^^@E9®? )Úseed)r+  r-  r/  )Úlower_limitr    g×£p=
×ï?)rz   r   c                  ó2   •— t          j         ‰| Ž ¦  «        S r5   )r7   r3  )rC   rÓ   s    €r'   r(   z(TestQMCQuad.basic_test.<locals>.<lambda>Ë  s   ø€ ­¬¨t¨t°T¨{Ñ(;Ô(;€ r)   T)r+  r-  r3  r/  g›+¡†›„=r,   g¼‰Ø—²Òœ<ry   )r7   ÚzerosÚeyeÚrandomÚdefault_rngr   r7  r8  Úonesr   r=  Úcdfr   ÚstdtritÚstandard_errorr	   rÁ   ÚprodrØ   Úimagr   )r.   r+  r-  Úsignsr(  Úrngr/  rA   rB   r  Úrefrz   Úlogresr@  rÓ   rA  s                @@@r'   Ú
basic_testzTestQMCQuad.basic_testµ  s  øøø€ àˆÝŒx˜‰~Œ~ˆÝŒf�T‰lŒlˆð	Að 	Að 	Að 	Að 	Að 	Aõ Œi×#Ò#Ð$7Ñ8Ô8ˆÝŒy�Š˜t¨#ˆÑ.Ô.ˆÝŒH�T‰NŒNˆÝŒG�D‰MŒM˜EÑ!ˆÝ�t˜Q ¨HØ#.°Tð;ñ ;ô ;ˆåÔ'×+Ò+¨A¨t°SÀaÐ+ÑHÔHˆÝŒ˜{¨1™}¨eÑ4Ô4°sÔ7IÑIˆÝ˜œ c°Ð5Ñ5Ô5Ð5ÝŒw�u‰~Œ~˜cœlÑ*¨QÒ.Ð.Ð.Ð.åŒi×#Ò#Ð$7Ñ8Ô8ˆÝŒy�Š˜t¨#ˆÑ.Ô.ˆÝÐ;Ð;Ð;Ð;¸QÀØ#+¸Ø"¨ð/ñ /ô /ˆõ 	�œ˜vœÑ/Ô/°´ÀEÐJÑJÔJÐJÝŒw�v”Ñ'Ô'µR´W¸U±^´^ÀaÒ5GÐ5G­B¬E¨EÈQÒOÐOÐOÐOÝ�œ˜vÔ4Ñ5Ô5ØÔ*°¸Uð	Dñ 	Dô 	Dð 	Dð 	Dð 	Dr)   r+  i   r-  r©   c                 ó2   — |                       ||¦  «         d S r5   ©rS  )r.   r+  r-  s      r'   Ú
test_basiczTestQMCQuad.test_basicÓ  s   € ð 	�Š˜ +Ñ.Ô.Ð.Ð.Ð.r)   rO  r    r¯   c                 ó2   — |                       |¬¦  «         d S )N)rO  rU  )r.   rO  s     r'   Ú	test_signzTestQMCQuad.test_signØ  s   € à�Š˜eˆÑ$Ô$Ð$Ð$Ð$r)   r3  FTc                 óò   — d}t          j        t          |¬¦  «        5  t          d„ ddgddg|¬¦  «        }d d d ¦  «         n# 1 swxY w Y   |j        |rt
          j         ndk    sJ ‚|j        dk    sJ ‚d S )Nz-A lower limit was equal to an upper limit, sorÕ   c                 ó   — dS r&  r#   rx   s    r'   r(   z'TestQMCQuad.test_zero.<locals>.<lambda>à  s   €  Q€ r)   r   r    r2  )rÐ   r5  r6  r   rÁ   r7   ÚinfrL  )r.   r3  rÙ   r  s       r'   Ú	test_zerozTestQMCQuad.test_zeroÜ  sÜ   € àAˆÝŒ\�+¨WÐ5Ñ5Ô5ð 	Að 	AÝ˜;˜;¨¨A¨°°A°¸CÐ@Ñ@Ô@ˆCð	Að 	Að 	Añ 	Aô 	Að 	Að 	Að 	Að 	Að 	Að 	Aøøøð 	Að 	Að 	Að 	AàŒ|¨3Ð 5¥¤  °AÒ6Ð6Ð6Ð6ØÔ! QÒ&Ð&Ð&Ð&Ð&Ð&s   žAÁAÁ
Ac                 óà   — d„ }t          |dd¦  «        }t          j                             dd¬¦  «        t          j                             dd¬¦  «        z
  }t	          |j        |d¦  «         d S )Nc                 óD   — t           j                             | d¬¦  «        S )Nr!   ©Úscale)r   Únormr>  rx   s    r'   rÓ   z-TestQMCQuad.test_flexible_input.<locals>.funcç  s   € Ý”:—>’> !¨1�>Ñ-Ô-Ð-r)   r   r    r!   r_  g{®Gáz„?)r   r   ra  rJ  r	   rÁ   )r.   rÓ   r  rQ  s       r'   Útest_flexible_inputzTestQMCQuad.test_flexible_inputä  sl   € ð	.ð 	.ð 	.õ �t˜Q Ñ"Ô"ˆÝŒj�nŠn˜Q aˆnÑ(Ô(­5¬:¯>ª>¸!À1¨>Ñ+EÔ+EÑEˆÝ˜œ c¨4Ñ0Ô0Ð0Ð0Ð0r)   N)r:   r;   r<   r9  r7   rI  rS  rÐ   rÑ   rÒ   rV  rX  r\  rb  r#   r)   r'   r#  r#  �  s+  € € € € € ð":ð ":ð ":ðH #'°A¸W¸R¼WÀQ¹Z¼Zð Dð Dð Dð Dð< „[×Ò˜Z¨$°¨Ñ7Ô7Ø„[×Ò˜]¨Q°¨GÑ4Ô4ð/ð /ñ 5Ô4ñ 8Ô7ð/ð „[×Ò˜W¨¨1 v°°B¨x¸"¸a¸À1ÀbÀ'Ð&JÑKÔKð%ð %ñ LÔKð%ð „[×Ò˜U U¨D MÑ2Ô2ð'ð 'ñ 3Ô2ð'ð1ð 1ð 1ð 1ð 1r)   r#  r¯   ©r%   r¢   rá   r¬   c                óf  ‡	— | j         |         dk     r-|€t          | |||d ¬¦  «        S |t          | |||d¬¦  «        z   S t          j        | |d¦  «        } t          j        |¦  «        dk    rt          j        ||d¦  «        n|}t          j        |¦  «        dk    rt          j        ||d¦  «        n|}t          j        |¦  «        dk    rt          j        ||d¦  «        n|}| j         d         Š	|�|t          j        ‰	¦  «        z  n|}|d u }|rdn|}t          j        || j         ¦  «        }t          j        || j         d d…         dz   ¦  «        }t          j        | ||fd¬¦  «        }ˆ	fd„}t          j        |d|¦  «        }|r|d	dd …f         n|}t          j        |d|¦  «        }|S )
NrŒ   )r%   r¢   r¬   rá   r   r¯   r    )r    rË   c                 ód   •— t          | d ‰…         | ‰d‰z  …         | d‰z  d …         ¬¦  «        S )Nr!   )r%   rá   )r   )rG   r&   s    €r'   r¦   z*cumulative_simpson_nd_reference.<locals>.f
  s8   ø€ Ý! ! B Q B¤%¨1¨Q¨q°©s¨U¬8¸Q¸qÀ¹s¸t¸t¼WÐEÑEÔEÐEr)   .)	ró   r   r7   Úmoveaxisr(  r8   Úbroadcast_toÚconcatenateÚapply_along_axis)
r€   r%   r¢   rá   r¬   Úinitial_was_nonerG   r¦   r  r&   s
            @r'   Úcumulative_simpson_nd_referencerk  ï  sØ  ø€ à„wˆt„}�qÒÐØˆ?Ý'¨¨Q°2¸DÈ$ÐOÑOÔOÐOàÕ1°!°q¸RÀdÐTUÐVÑVÔVÑVÐVõ 	Œ�A�t˜RÑ Ô €AÝ$&¤G¨A¡J¤J°¢N N�Œ�A�t˜RÑ Ô Ð ¸€AÝ&(¤g¨b¡k¤k°A¢o o�Œ�R˜˜rÑ	"Ô	"Ð	"¸2€BÝ02´¸Ñ0@Ô0@À1Ò0DÐ0D�bŒk˜' 4¨Ñ,Ô,Ð,È'€Gð 	
Œ�Œ€AØ˜^ˆ�RŒY�q‰\Œ\ÑÐ°€Aà $�ÐØ#Ð0ˆaˆa¨€Gõ 	Œ˜˜1œ7Ñ#Ô#€AÝŒo˜g q¤w¨s°¨s¤|°dÑ':Ñ;Ô;€GÝ
Œ˜˜1˜g�¨RÐ0Ñ0Ô0€AðFð Fð Fð Fð Få
Ô
˜a  QÑ
'Ô
'€Cð +Ð
3ˆ#ˆc�1�2�2ˆgŒ,ˆ,°€CÝ
Œ+�c˜2˜tÑ
$Ô
$€CØ€Jr)   c                   óš  — e Zd Z ej        d¦  «        Zedz  Zej         	                    dd¦  «        ej         	                    dd¦  «        d„ ¦   «         ¦   «         Z
ej         	                    d ej        dd	¦  «        ¦  «        ej         	                    d
d¦  «        ej         	                    dd¦  «        ej         	                    dd¦  «        ej         	                    dd¦  «        d„ ¦   «         ¦   «         ¦   «         ¦   «         ¦   «         Zej         	                    dd eg d¢¬¦  «        fd eeg d¢geeg¬¦  «        fd eeeegeeegd¬¦  «        fd eg g ¬¦  «        fd ed¬¦  «        fd e ej        d¦  «        ¬¦  «        fd  e ej        d¦  «        ¬!¦  «        fd" ed# ej        d¦  «        ¬$¦  «        fg¦  «        d%„ ¦   «         Zd&„ Zd'„ Zej        j         e ej        ej         ej        dd	d(¬)¦  «         ej        d*d(d+¬,¦  «                             d-„ ¦  «        ¬.¦  «        ¬/¦  «        d0„ ¦   «         ¦   «         Zej        j         e ej        ej         ej        dd	d(¬)¦  «         ej        d*d(d+¬,¦  «                             d1„ ¦  «        ¬.¦  «        ¬/¦  «        d2„ ¦   «         ¦   «         Zd#S )3ÚTestCumulativeSimpsonr   r!   Úuse_dx)FTÚuse_initialc                 ó~  — t           j                             d¦  «        }d}|rdnd}|                     ¦   «         }|dk    r't          j        |                     |¦  «        ¦  «        n+t          j        |¦  «        |z  |                     ¦   «         z   }t          j        |dz   ¦  «        d d …t           j        f         }|                     |dz   ¦  «        d d …t           j        f         }	t          j        |	||z  z  d¬¦  «        }
t          j        |	||dz   z  z  |dz   z  d¬¦  «        }|r|n||d         z
  dd …         }|r|d         nd }|rd|ind	|i}t          |
fi |¤d
|i¤Ž}|st          ||d¬¦  «         d S |rdnd}t          ||d¬¦  «         t          ||d d…         ||d d…         d¬¦  «         d S )Nì   F»*ŒBG rÈ   rŒ   r!   r    r   rË   r¢   r%   rá   gVçž¯â<r,   g{®Gázd?)	r7   rG  rH  Úsortr8   Únewaxisr  r   r	   )r.   rn  ro  rP  r&   Úorderr¢   r%   r½   Úcr€   ÚYrQ  rá   Úkwargr  Úi0s                    r'   rç   zTestCumulativeSimpson.test_1d  sê  € õ
 Œi×#Ò#Ð$8Ñ9Ô9ˆØˆð Ð"�� ˆØ�ZŠZ‰\Œ\ˆØ',°¢z z�RŒW�S—Z’Z ‘]”]Ñ#Ô#Ð#Ý”)˜A‘,”,˜r‘/ C§J¢J¡L¤LÑ0ð 	
åŒI�e˜a‘iÑ Ô    ¥B¤J Ô/ˆØ�JŠJ�u˜q‘yÑ!Ô! ! ! !¥R¤Z -Ô0ˆÝŒF�1�Q˜‘T‘6 Ð"Ñ"Ô"ˆÝŒF�1�Q˜˜Q™‘Z‘<  Q¡Ñ'¨aÐ0Ñ0Ô0ˆØÐ0ˆaˆa Q q¨¤t¡V¨Q¨R¨R¤Lˆð &Ð/�!�A”$�$¨4ˆØ$Ð2��r�
�
¨3°¨(ˆÝ  Ð=Ð= eÐ=Ð=°WÐ=Ð=Ð=ˆð ð 	@Ý˜C ¨5Ð1Ñ1Ô1Ð1Ð1Ð1à!Ð(�� qˆBå˜C ¨6Ð2Ñ2Ô2Ð2å˜C   A œJ¨¨B¨E°¨E¬
¸Ð?Ñ?Ô?Ð?Ð?Ð?r)   r¬   éýÿÿÿrŒ   Úx_ndim)r    rŒ   Úx_len)r    r!   rM   Úi_ndim)Nr   rŒ   r¢   )NTc                 óâ  — t           j                             d¦  «        }dd|g}|d         ||         c||<   |d<   |                     ¦   «         }d||<   |dk    r|nd}	|                     |¬¦  «        }
d	\  }}|r1|dk    r|                     |¬¦  «        n|                     ¦   «         }n^|dk    r*t          j        |                     |¬¦  «        |¬
¦  «        n-t          j        |                     ||         ¬¦  «        ¦  «        }|€d n|                     |	¬¦  «        }t          |
||||¬¦  «        }t          |
||||¬¦  «        }t           j                             ||d¬¦  «         d S )Nrq  r^   é   r¯   r    rŒ   r#   ©Úsize)NNrË   rc  gVçž¯Ò<r,   )	r7   rG  rH  Úcopyrr  r   rk  Útestingr	   )r.   r¬   rz  r{  r|  r¢   rP  ró   Úshape_len_1Úi_shaper€   r%   rá   r  rQ  s                  r'   Útest_ndzTestCumulativeSimpson.test_nd;  s{  € õ Œi×#Ò#Ð$8Ñ9Ô9ˆð �A�u�ˆØ!& r¤¨E°$¬KÐˆˆd‰�U˜2‘YØ—j’j‘l”lˆØˆ�DÑØ!'¨1¢ �+�+°"ˆð �JŠJ˜EˆJÑ"Ô"ˆØ‰ˆˆ2Øð 	=Ø17¸!²°�—’ �Ñ-Ô-Ð-ÀÇÂÁÄˆBˆBà?EÈºz¸z•”˜Ÿš¨˜Ñ/Ô/°dÐ;Ñ;Ô;Ð;Ý”g˜cŸjšj¨e°D¬k˜jÑ:Ô:Ñ;Ô;ð à ˜.�$�$¨c¯jªj¸g¨jÑ.FÔ.Fˆõ !  a¨B¸ÀdÐKÑKÔKˆÝ-¨a°1¸ÀWÐSWÐXÑXÔXˆÝ
Œ
×"Ò" 3¨°%Ð"Ñ8Ô8Ð8Ð8Ð8r)   )rÙ   Úkwarg_updatezx must be strictly increasing)r!   r!   rŒ   r   rx   )r!   r!   r   r°   )r%   r€   r   )r%   r€   r¬   r  z-`axis=4` is not valid for `y` with `y.ndim=1`rË   z+shape of `x` must be the same as `y` or 1-Dr^   z'`initial` must either be a scalar or...rà   z"`dx` must either be a scalar or...N)r%   r¢   c           
      óØ   — t          | j        | j        d d d¬¦  «        }t          j        t
          |¬¦  «        5  t          di t          |fi |¤Ž¤Ž d d d ¦  «         d S # 1 swxY w Y   d S )Nr¯   )r€   r%   r¢   rá   r¬   rÕ   r#   )ÚdictÚy0Úx0rÐ   r  r  r   )r.   rÙ   r†  Úkwargs0s       r'   Útest_simpson_exceptionsz-TestCumulativeSimpson.test_simpson_exceptionsZ  sÑ   € õ ˜œ D¤G°¸dÈÐLÑLÔLˆÝŒ]�:¨WÐ5Ñ5Ô5ð 	@ð 	@ÝÐ?Ð?¥ gÐ!>Ð!>°Ð!>Ð!>Ð?Ð?Ð?ð	@ð 	@ð 	@ñ 	@ô 	@ð 	@ð 	@ð 	@ð 	@ð 	@ð 	@ð 	@øøøð 	@ð 	@ð 	@ð 	@ð 	@ð 	@s   ºAÁA#Á&A#c                 ó²   — t           j                             d¦  «        }|                     d¬¦  «        }t          |d¬¦  «        }t	          |d¦  «         d S )Nrq  rÈ   r  r   r¡   )r7   rG  rH  r   r   )r.   rP  r€   r  s       r'   Útest_special_casesz(TestCumulativeSimpson.test_special_casesi  sS   € åŒi×#Ò#Ð$8Ñ9Ô9ˆØ�JŠJ˜BˆJÑÔˆÝ   qÐ)Ñ)Ô)ˆÝ�S˜!ÑÔÐÐÐr)   c                 ó˜  — t          j        |d¬¦  «        }t          ||¦  «        }t          |dddd…f         |dddd…f         ¦  «        dddd…f         }g |j        dd…         ¢d‘R }t          j        t          j        |¦  «        |ddd…f         |ddd…f         z
  t          j        |¦  «        gd¬¦  «        }d|dddd…f<   |S )aj  `cumulative_simpson` and `simpson` can be tested against other to verify
        they give consistent results. `simpson` will iteratively be called with
        successively higher upper limits of integration. This function calculates
        the theoretical correction required to `simpson` at even intervals to match
        with `cumulative_simpson`.
        r¯   rË   .Nr    r™   r!   )r7   Údiffr   ró   rh  rE  )r.   r€   r%   ÚdÚsub_integrals_h1Úsub_integrals_h2Úzeros_shapeÚtheoretical_differences           r'   Ú1_get_theoretical_diff_between_simps_and_cum_simpszGTestCumulativeSimpson._get_theoretical_diff_between_simps_and_cum_simpst  s  € õ ŒG�A˜BÐÑÔˆÝ@ÀÀAÑFÔFÐÝ@Øˆc�4�4�R�4ˆiŒL˜!˜C   2 ˜Iœ,ñ
ô 
à
ˆtˆt�ˆtˆ)ôÐð
 )˜œ   œÐ( aÐ(Ð(ˆÝ!#¤å”˜Ñ%Ô%Ø! # q r r 'Ô*Ð-=¸cÀ3ÀBÀ3¸hÔ-GÑGÝ”˜Ñ%Ô%ðð
 ð"
ñ "
ô "
Ðð -0Ð˜s A D q D˜yÑ)ð &Ð%r)   rÈ   )Úmax_dimsÚmin_sideÚmax_sider  F)Ú	allow_nanc                 ó(   — t          | ¦  «        dk    S ©NgH¯¼šò×z>©Úabsrx   s    r'   r(   zTestCumulativeSimpson.<lambda>—  ó   € Í#ÈaÉ&Ì&ÐSWÊ-€ r)   )Úelementsr  c                 ó.  — d„ }t          |d¬¦  «        } ||¦  «        }|                      |t          j        |j        d         ¦  «        ¬¦  «        }t          j                             |ddd…f         |ddd…f         |ddd…f         z   ¦  «         dS )	áe  Theoretically, the output of `cumulative_simpson` will be identical
        to `simpson` at all even indices and in the last index. The first index
        will not match as `simpson` uses the trapezoidal rule when there are only two
        data points. Odd indices after the first index are shown to match with
        a mathematically-derived correction.c                 ó€   ‡ — t          j        ˆ fd„t          d‰ j        d         dz   ¦  «        D ¦   «         d¬¦  «        S )Nc                 óF   •— g | ]}t          ‰d d|…f         d¬¦  «        ‘ŒS ).Nra   r¡   ©r   )Ú.0r½   r€   s     €r'   ú
<listcomp>z|TestCumulativeSimpson.test_cumulative_simpson_against_simpson_with_default_dx.<locals>.simpson_reference.<locals>.<listcomp>¤  s2   ø€ ÐNÐNÐN°•˜˜3   ˜7œ¨Ð,Ñ,Ô,ÐNÐNÐNr)   r!   r¯   r    rË   ©r7   Ústackr¶   ró   r  s   `r'   Úsimpson_referencezhTestCumulativeSimpson.test_cumulative_simpson_against_simpson_with_default_dx.<locals>.simpson_reference¢  sJ   ø€ Ý”8ØNÐNÐNÐNµe¸A¸q¼wÀr¼{È1¹}Ñ6MÔ6MÐNÑNÔNÐUWðñ ô ð r)   ra   r¡   r¯   rx   .r    N)r   r–  r7   r8   ró   r‚  r	   )r.   r€   rª  r  rQ  r•  s         r'   Ú7test_cumulative_simpson_against_simpson_with_default_dxzMTestCumulativeSimpson.test_cumulative_simpson_against_simpson_with_default_dx’  s¼   € ð 	ð 	ð 	õ
 !  sÐ+Ñ+Ô+ˆØÐ Ñ"Ô"ˆØ!%×!WÒ!WØ•”˜1œ7 2œ;Ñ'Ô'ð "Xñ "
ô "
Ðõ 	Œ
×"Ò"Ø��Q�R�R�ŒL˜#˜c 1 2 2˜gœ,Ð)?ÀÀQÀRÀRÀÔ)HÑHñ	
ô 	
ð 	
ð 	
ð 	
r)   c                 ó(   — t          | ¦  «        dk    S rœ  r�  rx   s    r'   r(   zTestCumulativeSimpson.<lambda>µ  rŸ  r)   c           	      óì  — d|j         d         dz
  z  }t          j        dd|j         d         ¬¦  «        }|dd…         d|z  t          j                             ddt          |¦  «        dz
  ¦  «        z  z   |dd…<   d„ }t          ||¬	¦  «        } |||¦  «        }|                      ||¦  «        }t          j         	                    |d
dd…f         |d
dd…f         |d
dd…f         z   ¦  «         dS )r¢  rÈ   r¯   r    r   rÞ   Nrt   c                 ó„   ‡ ‡— t          j        ˆˆ fd„t          d‰ j        d         dz   ¦  «        D ¦   «         d¬¦  «        S )Nc           	      óZ   •— g | ]'}t          ‰d d|…f         ‰d d|…f         ¬¦  «        ‘Œ(S ).Nrx   r¥  )r¦  r½   r%   r€   s     €€r'   r§  zlTestCumulativeSimpson.test_cumulative_simpson_against_simpson.<locals>.simpson_reference.<locals>.<listcomp>Æ  s>   ø€ ÐTÐTÐT°q•˜˜3   ˜7œ q¨¨b¨q¨b¨¤zÐ2Ñ2Ô2ÐTÐTÐTr)   r!   r¯   r    rË   r¨  )r€   r%   s   ``r'   rª  zXTestCumulativeSimpson.test_cumulative_simpson_against_simpson.<locals>.simpson_referenceÄ  sO   øø€ Ý”8ØTÐTÐTÐTÐT½EÀ!ÀQÄWÈRÄ[ÐQRÁ]Ñ<SÔ<SÐTÑTÔTØðñ ô ð r)   rx   .)
ró   r7   r´   rG  ÚuniformÚlenr   r–  r‚  r	   )r.   r€   Úintervalr%   rª  r  rQ  r•  s           r'   Ú'test_cumulative_simpson_against_simpsonz=TestCumulativeSimpson.test_cumulative_simpson_against_simpson°  s  € ð  �q”w˜r”{ Q‘Ñ'ˆÝŒK˜˜2 1¤7¨2¤;Ð/Ñ/Ô/ˆØ�!�"�"”˜˜H™¥R¤Y×%6Ò%6°r¸1½cÀ!¹f¼fÀq¹jÑ%IÔ%IÑIÑIˆˆ!ˆ"ˆ"‰ð	ð 	ð 	õ !  aÐ(Ñ(Ô(ˆØÐ  1Ñ%Ô%ˆØ!%×!WÒ!WØˆqñ"
ô "
Ðõ 	Œ
×"Ò"Ø��Q�R�R�ŒL˜#˜c 1 2 2˜gœ,Ð)?ÀÀQÀRÀRÀÔ)HÑHñ	
ô 	
ð 	
ð 	
ð 	
r)   )r:   r;   r<   r7   r8   rŠ  r‰  rÐ   rÑ   rÒ   rç   r…  rˆ  rŒ  rŽ  r–  Úslowr   Úhyp_numÚarraysrÍ   Úarray_shapesÚstÚfloatsr   r«  r³  r#   r)   r'   rm  rm    sŸ  € € € € € Ø	ˆŒ�1‰Œ€BØ	ˆQ‰€Bà„[×Ò˜X }Ñ5Ô5Ø„[×Ò˜]¨MÑ:Ô:ð@ð @ñ ;Ô:ñ 6Ô5ð@ðB „[×Ò˜V Y R¤Y¨r°1Ñ%5Ô%5Ñ6Ô6Ø„[×Ò˜X vÑ.Ô.Ø„[×Ò˜W iÑ0Ô0Ø„[×Ò˜X }Ñ5Ô5Ø„[×Ò˜T <Ñ0Ô0ð9ð 9ñ 1Ô0ñ 6Ô5ñ 1Ô0ñ /Ô.ñ 7Ô6ð
9ð4 „[×ÒÐ8Ø	(¨$¨$°°°Ð*>Ñ*>Ô*>Ð?Ø	(¨$¨$°"°l°l°lÐ1CÈÈBÀxÐ*PÑ*PÔ*PÐQØ	(¨$¨$°"°b¸"°À"ÀbÈ"ÀÐTUÐ*VÑ*VÔ*VÐWØ	)¨4¨4°"¸Ð+;Ñ+;Ô+;Ð<Ø	8¸$¸$ÀA¸,¹,¼,ÐGØ	6¸¸¸y¸r¼yÈ¹|¼|Ð8LÑ8LÔ8LÐMØ	2°D°DÀÀÄÈ1ÁÄÐ4NÑ4NÔ4NÐOØ	-¨t¨t°d¸y¸r¼yÈ¹|¼|Ð/LÑ/LÔ/LÐMð	;ñ 	ô 	ð@ð @ñ	ô 	ð@ð
ð ð ð&ð &ð &ð< „[ÔØ
€UØ
ˆ'Œ.ØŒJØ ˆGÔ ¨!°aÀ"ÐEÑEÔEØ�R”Y˜s B°%Ð8Ñ8Ô8×?Ò?Ð@WÐ@WÑXÔXð
ñ 
ô 
ðñ ô ð
ð 
ñô ñ Ôð
ð, „[ÔØ
€UØ
ˆ'Œ.ØŒJØ ˆGÔ ¨!°aÀ"ÐEÑEÔEØ�R”Y˜s B°%Ð8Ñ8Ô8×?Ò?Ð@WÐ@WÑXÔXð
ñ 
ô 
ðñ ô ð
ð 
ñô ñ Ôð
ð 
ð 
r)   rm  )1rÐ   Únumpyr7   r   r   r   Únumpy.testingr   r   r	   r
   r   Ú
hypothesisr   Úhypothesis.strategiesÚ
strategiesr¸  Úhypothesis.extra.numpyÚextrarµ  Úscipy.integrater   r   r   r   r   r   r   r   r   r   r   r   Úscipy.integrate._quadraturer   Úscipyr   r   r   rÑ   Úfilterwarningsr>   rÒ   rÚ   rÜ   r  r#  rk  rm  r#   r)   r'   ú<module>rÅ     s  ðà €€€Ø Ð Ð Ð Ø Ð Ð Ð Ð Ð Ð Ð Ð Ð ð7ð 7ð 7ð 7ð 7ð 7ð 7ð 7ð 7ð 7ð 7ð 7ð 7ð 7à Ð Ð Ð Ð Ð Ø "Ð "Ð "Ð "Ð "Ð "Ø (Ð (Ð (Ð (Ð (Ð (Ð (Ð (Ð (ð;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð NÐ MÐ MÐ MÐ MÐ MØ  Ð  Ð  Ð  Ð  Ð  Ð  Ð  ð3ð 3ð 3ð 3ð 3ñ 3ô 3ð 3ð  „×ÒÐ8Ñ9Ô9ðK'ð K'ð K'ð K'ð K'ñ K'ô K'ñ :Ô9ðK'ð\ „×Ò˜ '¨:Ð!6Ñ7Ô7ðð ñ 8Ô7ððW'ð W'ð W'ð W'ð W'ñ W'ô W'ð W'ðt:-ð :-ð :-ð :-ð :-ñ :-ô :-ð :-ðz\1ð \1ð \1ð \1ð \1ñ \1ô \1ð \1ð~ -1°TÀ4Èbð "ð "ð "ð "ð "ðJ}
ð }
ð }
ð }
ð }
ñ }
ô }
ð }
ð }
ð }
r)   