403Webshell
Server IP : 209.209.40.120  /  Your IP : 216.73.217.112
Web Server : Microsoft-IIS/10.0
System : Windows NT NEWWWW 10.0 build 17763 (Windows Server 2019) i586
User : NEWWWW$ ( 0)
PHP Version : 8.3.30
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : OFF  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /Python312/Lib/site-packages/numpy/random/tests/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /Python312/Lib/site-packages/numpy/random/tests/__pycache__/test_generator_mt19937.cpython-312.pyc
�

	�g����ddlZddlZddlZddlZddlZddlmZddl	m
Z
ddlmZm
Z
mZmZmZmZmZmZmZmZddlmZmZmZmZee��Zddddd	�d
dd	�d�d
dddd	�ddd	�d�gd�dddd	�ddd	�d�gZej:dddg��d��ZGd�d�ZGd �d!�Z Gd"�d#�Z!Gd$�d%�Z"Gd&�d'�Z#Gd(�d)�Z$Gd*�d+�Z%Gd,�d-�Z&ejNjQed.�/�Gd0�d1��Z)Gd2�d3�Z*ejNjWd4e�d5��Z,d6�Z-d7�Z.d8�Z/ejNjWd9d:d:gg�ejNjWd;ddg�d<���Z0ejNjWd=d>d?g�d@��Z1ejNjWd=d>d?g�ejNjWdAdBdCg�ejNjWdDejdej6g�dE����Z3dF�Z4dG�Z5ejNjWdHdIdJg�dK��Z6y)L�N)�	AxisError)�LinAlgError)
�assert_�
assert_raises�assert_equal�assert_allclose�assert_warns�assert_no_warnings�assert_array_equal�assert_array_almost_equal�suppress_warnings�IS_WASM)�	Generator�MT19937�SeedSequence�RandomState�
�@bb1636883c2707b51c5b7fc26c6927af4430f2e0785a8c7bc886337f919f9edf�	)�
key_sha256�pos�@ff682ac12bb140f2d72fba8d3506cf4e46817a0db27aae1683867629031d8d55iV)�seed�steps�initial�jumpedi$<�i8�@16b791a1e04886ccbbb4d448d6ff791267dc458ae599475d08d5cced29d11614i7�@a0110a2cf23b56be0feaed8f787a7fc84bef0cb5623003d75b26bdfa1c18002ci)i|�2i�Em:iS43i5i��@d306cf01314d51bd37892d874308200951a35265ede54d200f1e065004c3e9eai��@0e00ab449f01a5195a83b4aee0dfbc2ce8d46466a640b92e33977d2e42f777f8i��moduleTF)�scope�paramsc��|jS�N)�param)�requests �KC:\Python312\Lib\site-packages\numpy/random/tests/test_generator_mt19937.py�endpointr))s���=�=��c�0�eZdZd�Zd�Zd�Zd�Zd�Zd�Zy)�TestSeedc��ttd��}t|jd�d�ttd��}t|jd�d�y)Nr��������D)rrr�integers��self�ss  r(�test_scalarzTestSeed.test_scalar/sE���g�a�j�!���Q�Z�Z��%�s�+��g�j�)�*���Q�Z�Z��%�s�+r*c��tttd���}t|j	d�d�tttjd���}t|j	d�d�ttdg��}t|j	d�d�ttdg��}t|j	d�d�y)Nrr.i�rr/r0r1)rr�rangerr2�np�aranger3s  r(�
test_arrayzTestSeed.test_array5s����g�e�B�i�(�)���Q�Z�Z��%�s�+��g�b�i�i��m�,�-���Q�Z�Z��%�s�+��g�q�c�l�#���Q�Z�Z��%�s�+��g�z�l�+�,���Q�Z�Z��%�s�+r*c�b�ttd��}t|jd�d�y)Nr�i��z)rrr�
random_rawr3s  r(�test_seedsequencezTestSeed.test_seedsequence?s"���L��O�$���Q�\�\�!�_�j�1r*c�X�tttd�tttd�y)N������r�	TypeErrorr�
ValueError�r4s r(�test_invalid_scalarzTestSeed.test_invalid_scalarCs���i��$�/��j�'�2�.r*c��tttdg�tttdg�tttgd��y)NrArB)r=����rCrFs r(�test_invalid_arrayzTestSeed.test_invalid_arrayHs+���i��4�&�1��j�'�B�4�0��j�'�+>�?r*c�6�tttt�yr%)rrErrrFs r(�test_noninstantized_bitgenz#TestSeed.test_noninstantized_bitgenNs���j�)�W�5r*N)	�__name__�
__module__�__qualname__r6r;r?rGrKrM�r*r(r,r,.s!��,�,�2�/�
@�6r*r,c��eZdZd�Zd�Zy)�TestBinomialc���tjdd��}dD]D}ttj	d|�dk(�ttj	||�|��Fy)N��int��dtype)r��?r=r)r9�zerosr�random�binomialr)r4rZ�ps   r(�test_n_zerozTestBinomial.test_n_zeroSsR������%�(���	A�A��F�O�O�A�q�)�Q�.�/��v���u�a�8�%�@�	Ar*c�`�tttjdtj
�y)Nr=)rrEr[r\r9�nanrFs r(�
test_p_is_nanzTestBinomial.test_p_is_nan\s���j�&�/�/�1�b�f�f�=r*N)rNrOrPr^rarQr*r(rSrSRs
��A�>r*rSc�<�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
y	)
�TestMultinomialc�4�tjdddg�y)N�d皙�����?皙�����?�r[�multinomialrFs r(�
test_basiczTestMultinomial.test_basicbs�����3��c�
�+r*c�4�tjdgd��y)Nre)rfrg�rlrlrhrFs r(�test_zero_probabilityz%TestMultinomial.test_zero_probabilityes�����3� 9�:r*c��tdtjdd�cxkxrdknc�tjddd�}ttjd|k��ttj|dk��y)N���rB�)rr[r2r9�all�r4�xs  r(�test_int_negative_intervalz*TestMultinomial.test_int_negative_intervalhsY����f�o�o�b�"�-�2��2�3��O�O�B��A�&������r�Q�w�� �����q�2�v��r*c	��ddg}ttjd|tjd��j
d�ttjd|tjd��j
d�ttjd|tjd��j
d�ttjd|ddg�j
d�ttjd|d�j
d�ttjd|tjd��j
d�tttjd|td��y)NrYr=�r=rUrU�rUrUrU�rUrU)
rr[rir9�uint32�shape�arrayrrD�float�r4r]s  r(�	test_sizezTestMultinomial.test_sizens��
�#�J���V�'�'��1�b�i�i��l�;�A�A�6�J��V�'�'��1�b�i�i��l�;�A�A�6�J��V�'�'��1�b�i�i��l�;�A�A�6�J��V�'�'��1�q�!�f�5�;�;�Y�G��V�'�'��1�f�5�;�;�Y�G��V�'�'��1�b�h�h�v�.>�?�E�E��	 �	�i��!3�!3�Q���A�h�	 r*c��tttjdddg�tttjdddg�y)Nre皙�����?rf皙��������������?�rrEr[rirFs r(�test_invalid_probz!TestMultinomial.test_invalid_prob|s2���j�&�"4�"4�c�C��:�F��j�&�"4�"4�c�C��:�Fr*c��tttjdddg�tttjdgdzddg�y)NrBrgrfrr�rFs r(�test_invalid_nzTestMultinomial.test_invalid_n�s8���j�&�"4�"4�b�3��*�E��j�&�"4�"4�r�d�R�i�#�s��Lr*c�T�tjd�}|tj|ddd��z}|ddd�}tt	d��}|jd|��}tt	d��}|jdtj|���}t||�y)Ng.@r=��۠iUre)�pvals)r9r:�sumrrri�ascontiguousarrayr)r4r]r�r[�
non_contig�contigs      r(�test_p_non_contiguousz%TestMultinomial.test_p_non_contiguous�s����I�I�c�N��	�R�V�V�A�a�d��d�G�_����!�$�Q�$����7�:�.�/���'�'��5�'�9�
��7�:�.�/���#�#�C�r�/C�/C�E�/J�#�K���:�v�.r*c�(�tjgd�tj��}||j�z}t	td��}d}t
jt|��5|jd|�ddd�y#1swYyxYw)N)
�G�z��?r���&�.>r�r�r�r�r�r�r�rWr�z-[\w\s]*pvals array is cast to 64-bit floating��matchr=)
r9r{�float32r�rr�pytest�raisesrEri)r4rsr�r[r�s     r(�test_multinomial_pvals_float32z.TestMultinomial.test_multinomial_pvals_float32�ss���H�H�:�AC���
M���A�E�E�G����7�:�.�/��@��
�]�]�:�U�
3�	)����q�%�(�	)�	)�	)�s�,B�BN)rNrOrPrjrmrtr~r�r�r�r�rQr*r(rcrcas,��,�;� � �G�M�/�)r*rcc�>�eZdZd�Zd�Zejjdddg�d��Zejjdgd��ejjdddg�ejjd	gd
��d����Z	d�Z
d
�Zd�Zy)�TestMultivariateHypergeometricc��d|_y)Ni�_��rrFs r(�setup_methodz+TestMultivariateHypergeometric.setup_method�s	����	r*c�v�tttjdd�tttjgd�d�tttjgd�d�tttjgd�d�tttjgd�tttjdd	gd
dd�t	j
tj�}|j}||jjz}tttj|dz
d	gd
dd
�y)Nr�)rUr�r�rB)rBrUr�rUr=i�ɚ;�erp�	marginalsre�count)
rrEr[�multivariate_hypergeometricr9�iinfo�int64�maxrX�itemsize)r4�
int64_info�	max_int64�max_int64_indexs    r(�test_argument_validationz7TestMultivariateHypergeometric.test_argument_validation�s���	�j�&�"D�"D��!�	�	�j�&�"D�"D���	%�	�j�&�"D�"D� �!�	%�	�j�&�"D�"D���	%�	�j�&�"D�"D��!�	�	�j�&�"D�"D� �#�&��1�k�	;��X�X�b�h�h�'�
��N�N�	�#�z�'7�'7�'@�'@�@���j�&�"D�"D�&��,�c�2�A�q�'�	Cr*�methodr�r�c��tt|j��}|jgd�d|��}t	|gd��|jgd|��}t	|g�|jgdd|��}t	|tjdt
j���|jgd�d|��}t	|gd��|jgd	�d
|��}t	|gd��gd�}|j|t|�|��}t	||�|jgd
�dd
|��}t	|gd
�gd
z�y)N�rrrr�r�r=��sizer�)r=rrW�r=rUr�)rrrr�)r�rr)r=r=rr=r=�r�r�rp�)	rrrr�rr9�emptyr�r�)r4r�r[rs�colorss     r(�test_edge_casesz.TestMultivariateHypergeometric.test_edge_cases�s*���7�4�9�9�-�.���.�.�y�!�F�.�K���1�i�(��.�.�r�1�V�.�D���1�b�!��.�.�r�1�1�V�.�L���1�b�h�h�v�R�X�X�>�?��.�.�y�!�F�.�K���1�i�(��.�.�y�!�F�.�K���1�i�(� ���.�.�v�s�6�{�6<�
/�
>���1�f�%��.�.�y�"�1�6<�
/�
>���1�y�k�!�m�,r*�nsample)���-�7r�)rp�rUr�i�Ic��tt|j��}tjgd��}|j||||��}t
|t�r|f|jz}n||jz}t|j|�t|dk\j��t||kj��t|jd��tj||t���t
|t�r:|dk\r4t|j!d��||z|j�zdd	�
�yyy)N)rrp�r�r�rrB��axis)�
fill_valuerX順���MbP?�{�G�zt?)�rtol�atol)rrrr9r{r��
isinstancerVrzrrrqrr��fullr�mean)r4r�r�r�r[r��sample�expected_shapes        r(�test_typical_casesz1TestMultivariateHypergeometric.test_typical_cases�s���7�4�9�9�-�.�����/�*���3�3�F�G�T�;A�4�C���d�C� �"�W�v�|�|�3�N�!�F�L�L�0�N��V�\�\�>�2���1��!�!�#�$���6�!�&�&�(�)��6�:�:�2�:�.��7�7�4�G�3�G�	I��d�C� �T�V�^�
�F�K�K�Q�K�/�#�f�,�v�z�z�|�;�!%�E�
3�&4� r*c���tt|j��}|jgd�ddd��}t	j
gd�gd�gd�gd�gd�g�}t
||�y)Nr�rpr�r�)rUr=rU�r=r=r��rUrr��rrrr�r9r{r�r4r[r��expecteds    r(�test_repeatability1z2TestMultivariateHypergeometric.test_repeatability1�sa���7�4�9�9�-�.���3�3�I�q�q�;B�4�D���8�8�Y�&�&�&�&�	(�)��
	�6�8�,r*c���tt|j��}|jgd�ddd��}t	j
gd�gd�gd�gd�gd	�g�}t
||�y)
N�r���2r�rpr�r�)r��)��
r�)r��)r��r�r�r�s    r(�test_repeatability2z2TestMultivariateHypergeometric.test_repeatability2sd���7�4�9�9�-�.���3�3�L�"�9:�;F�4�H���8�8�\�)�)�)�)�	+�,��
	�6�8�,r*c���tt|j��}|jgd�ddd��}t	j
gd�gd�gd�gd�gd	�g�}t
||�y)
Nr�r�rpr�r�)rUr�r�)rpr�r�)rUrprp)r=rp�r�r�s    r(�test_repeatability3z2TestMultivariateHypergeometric.test_repeatability3sd���7�4�9�9�-�.���3�3�L�"�9:�;F�4�H���8�8�Y�&�&�&�&�	(�)��
	�6�8�,r*N)
rNrOrPr�r�r��mark�parametrizer�r�r�r�r�rQr*r(r�r��s����C�B�[�[���X���'=�>�-�?�-�D�[�[���Y��8��[�[���X���'=�>��[�[���V�%8�9�3�:�?�9�3�,	-�
-�
-r*r�c�$�eZdZd�Zd�Zd�Zd�Zy)�TestSetStatec�2�d|_tt|j��|_|jj|_|jj
|_|j
d|j
dd|j
ddf|_y)N���I�
bit_generator�state�keyr)rrr�rgr�r��legacy_staterFs r(r�zTestSetState.setup_methods{����	��G�D�I�I�.�/���!�W�W�2�2����'�'�-�-��
�!�Z�Z��8�!�Z�Z��0��7�!�Z�Z��0��7�9��r*c���|jjd��}|j|j_|jjd��}t	tj||k(��y�Nr��r�)r��standard_normalr�r�rr9rq)r4�old�news   r(�test_gaussian_resetz TestSetState.test_gaussian_reset(sW���g�g�%�%�1�%�-��#'�:�:���� ��g�g�%�%�1�%�-������s�c�z�"�#r*c�8�|jj�|jj}|jjd��}||j_|jjd��}t	tj||k(��yr�)r�r�r�r�rr9rq)r4r�r�r�s    r(� test_gaussian_reset_in_media_resz-TestSetState.test_gaussian_reset_in_media_res/sv��	
�����!��"�"�(�(���g�g�%�%�1�%�-��#(���� ��g�g�%�%�1�%�-������s�c�z�"�#r*c�<�|jjdd�y�NrY)r��negative_binomialrFs r(�test_negative_binomialz#TestSetState.test_negative_binomial:s��	
���!�!�#�s�+r*N)rNrOrPr�r�r�r�rQr*r(r�r�s��9�$�	$�,r*r�c��eZdZejZeejejejejejejejejg	Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd	�Zd
�Zd�Zej:j=dd
ej>gd��fdej>gd��fdej>gd��fg�d��Z d�Z!d�Z"d�Z#d�Z$d�Z%d�Z&d�Z'ej:jPej:j=dddejdfddejd fd!d"ejd#fd$d%ejd&fg�d'���Z)y())�TestIntegersc�H�tt|jd|t��y�Nr=�r)rX)rrD�rfuncr|)r4r)s  r(�test_unsupported_typez"TestIntegers.test_unsupported_typeGs���i����Q���Or*c	�B�|jD�]�}|turdntj|�j}|turdn!tj|�j
dz}|r|dz
n|}t
t|j|dz
|||��t
t|j||dz||��t
t|j||||��t
t|jdd||��t
t|j|dz
g|||��t
t|j|g|dzg||��t
t|j|g|g||��t
t|jddg||��t
t|j|dzg|g||�����y�NrrUr=r�	�itype�boolr9r��minr�rrEr�r4r)�dt�lbnd�ubnds     r(�test_bounds_checkingz!TestIntegers.test_bounds_checkingJsd���*�*�	7�B��d�
�1������(8�(8�D��d�
�1������(8�(8�1�(<�D�'�4�!�8�T�D��*�d�j�j�$��(�D�#+�2�
7��*�d�j�j�$��q��#+�2�
7��*�d�j�j�$��#+�2�
7��*�d�j�j�!�Q�� "�
$�
�*�d�j�j�4�!�8�*�d�#+�2�
7��*�d�j�j�4�&�4�!�8�*�#+�2�
7��*�d�j�j�4�&�4�&�#+�2�
7��*�d�j�j�!�a�S�#+�2�
7��*�d�j�j�4��6�(�T�F�#+�2�
7�+	7r*c	��|jD]�}|turdntj|�j}|turdn"tj|�j
|z}t
t|j|dz
gdz|gdz||��t
t|j|gdz|dzgdz||��t
t|j||gdz||��t
t|jdgdzd||����yrrr	s     r(�test_bounds_checking_arrayz'TestIntegers.test_bounds_checking_arraycs����*�*�	7�B��d�
�1������(8�(8�D��d�
�1������(8�(8��L�(I�D��*�d�j�j�4�!�8�*�q�.�4�&�1�*�#+�2�
7��*�d�j�j�4�&�1�*��!�8�*�q�.�8�2�
G��*�d�j�j�$����
�#+�2�
7��*�d�j�j�1�#��'�1�#+�2�
7�	7r*c
��|jD�]I}|turdntj|�j}|turdn!tj|�j
dz}|r|dz
n|}|}|dz
}t
|j|||zd||��|�t
|j|g||zd||��|�|}t
|j|||zd||��|�t
|j|||zgd||��|�||zdz}t
|j|||zd||��|�t
|j|g||zgd||��|���Ly)NrrUr=r.�r�r)rX�rrr9r�rr�rr)r4r)r
rr�is_open�tgts       r(�test_rng_zero_and_extremesz'TestIntegers.test_rng_zero_and_extremesqs����*�*�	�B��d�
�1������(8�(8�D��d�
�1������(8�(8�1�(<�D�'�4�!�8�T�D�"�l�G���(�C�����C��w��T�-5�R�$�A�BE�
G�����S�E�3��=�t�-5�R�$�A�BE�
G��C�����C��w��T�-5�R�$�A�BE�
G�����C�#��-��t�-5�R�$�A�BE�
G��$�;�1�$�C�����C��w��T�-5�R�$�A�BE�
G�����S�E�C�'�M�?�)-���$�L��
�+	r*c	���d}|jD�]�}|turdntj|�j}|turdn!tj|�j
dz}|r|dz
n|}|dz
}t
|j|g|dzg||��|�t
|j|g|z|dzg|z|��|�t
|j|g|z|dzg|z||��|�|}t
|j|g|dzg||��|�t
|j|g|z|dzg|z|��|�t
|j|g|z|dzg|z||��|�||zdz}t
|j|g|dzg||��|�t
|j|g|z|dzg|z|��|�t
|j|g|z|dzg|z||��|����y)Nr.rrUr=�r�rXrWr)r4r)r�r
rrrs       r(� test_rng_zero_and_extremes_arrayz-TestIntegers.test_rng_zero_and_extremes_array�sI�����*�*�	K�B��d�
�1������(8�(8�D��d�
�1������(8�(8�1�(<�D�'�4�!�8�T�D���(�C�����S�E�C�!�G�9�)-�R�$�9�:=�
?���������s�Q�w�i�$�.�b�$�:�;>�
@���������s�Q�w�i�$�.�T��$�E�FI�
K��C�����S�E�C�!�G�9�)-�R�$�9�:=�
?���������s�Q�w�i�$�.�b�$�:�;>�
@���������s�Q�w�i�$�.�T��$�E�FI�
K��$�;�1�$�C�����S�E�C�!�G�9�)-�R�$�9�:=�
?���������s�Q�w�i�$�.�b�$�:�;>�
@���������s�Q�w�i�$�.�T��$�E�FI�
K�5	Kr*c�^�|jD]v}|turdntj|�j}|turdn!tj|�j
dz}|r|dz
n|}	|j
||||���xy#t$r}tdt|�z��d}~wwxYw�NrrUr=rzMNo error should have been raised, but one was with the following message:

%s�
rrr9r�rr�r�	Exception�AssertionError�str�r4r)r
rr�es      r(�test_full_rangezTestIntegers.test_full_range�s����*�*�
	@�B��d�
�1������(8�(8�D��d�
�1������(8�(8�1�(<�D�'�4�!�8�T�D�
@��
�
�4����
�C�
	@���
@�$�&6�8;�A��&?�@�@��
@�s�/B�	B,�B'�'B,c�h�|jD]{}|turdntj|�j}|turdn!tj|�j
dz}|r|dz
n|}	|j
|gdz|g||���}y#t$r}tdt|�z��d}~wwxYwrrrs      r(�test_full_range_arrayz"TestIntegers.test_full_range_array�s����*�*�
	@�B��d�
�1������(8�(8�D��d�
�1������(8�(8�1�(<�D�'�4�!�8�T�D�
@��
�
�D�6�A�:��v���
�K�
	@���
@�$�&6�8;�A��&?�@�@��
@�s�/B�	B1�B,�,B1c	��tt��}|jddD]Z}dD]S}|jd||z
d||��}t	|j�|k�t	|j
�dk\��U�\|jdd|z
d|t��}t	|j�dk�t	|j
�dk\�y)Nr=)r�r��rUirr)rrrrrr�rr)r4r)r[r
r�valss      r(�test_in_bounds_fuzzz TestIntegers.test_in_bounds_fuzz�s����7�9�%���*�*�Q�R�.�	)�B�"�
)���z�z�!�T�H�_�7�+3�2�"�?������
�T�)�*�����
�a��(�	
)�	)��z�z�!�Q��\��(� $��&������
�Q�������
�a�� r*c�*�|jD�]}|turdntj|�j}|turdn!tj|�j
dz}|r|dz
n|}d}t
td��}|j|||||��}t
td��}|j|g|g|||��}t
td��}|j|g|z|g|z|||��}	t||�t||	���y)NrrUr=r.��r�
rrr9r�rr�rrr2r)
r4r)r
rrr�r[�scalar�scalar_arrayr{s
          r(�test_scalar_array_equivz$TestIntegers.test_scalar_array_equiv�s���*�*�	.�B��d�
�1������(8�(8�D��d�
�1������(8�(8�1�(<�D�'�4�!�8�T�D��D��w�t�}�-�F��_�_�T�4�d�X�&(�%�*�F��w�t�}�-�F�!�?�?�D�6�D�6��/7�r�+�C�L��w�t�}�-�F��O�O�T�F�T�M�D�6�#�4$�*.���$�M�E��v�|�4��v�u�-�%	.r*c
��dddddddddd�	}|jddD]�}ttd��}tjd	k(r|jd
d|z
d||�
�}n'|jd
d|z
d||�
�j
�}tj|�j�}t|tj|�j|k(���ttd��}|jd
d|z
d|t�
�jtj �}tj|�j�}t|tjt�j|k(�y)N�@053594a9b82d656f967c54869bc6970aa0358cf94ad469c81478459c6a90eee3�@54de9072b6ee9ff7f20b58329556a46a447a8a29d67db51201bf88baa6e4e5d4�@d3a0d5efb04542b25ac712e50d21f39ac30f312a5052e9bbb1ad3baa791ac84b�@14e224389ac4580bfbdccb5697d6190b496f91227cf67df60989de3d546389b1�@0e203226ff3fbbd1580f15da4621e5f7164d0d8d6b51696dd42d004ece2cbec1)	r�int16�int32r��int8�uint16ry�uint64�uint8r=r)�littlerr�r.rrU)rrr�sys�	byteorderr2�byteswap�hashlib�sha256�	hexdigestrr9rX�namer�viewr6)r4r)rr
r[�val�ress       r(�test_repeatabilityzTestIntegers.test_repeatability�sa��\�[�[�[�[�[�[�[�[�]���*�*�Q�R�.�	3�B��w�t�}�-�F��}�}��(��o�o�a��X��D�8�')�&�+���o�o�a��X��D�8�')�&�+�+3�8�:���.�.��%�/�/�1�C��C������)�)�*�c�1�2�	3��7�4�=�)���o�o�a��X��D�8�#��%�%)�T�"�'�'�]�	��n�n�S�!�+�+�-����B�H�H�T�N�'�'�(�C�/�0r*c�f�|jD�]!}|ttjfvrdntj|�j}|ttjfvrdn!tj|�j
dz}|r|dz
n|}t
td��}|j||d||��}t
td��}|j|gdz|||��}t||�t
td��}|j|gdz|gdz||��}t||���$y)NrrUr=r)r.rrr*)r4r)r
rrr[rC�val_bcs        r(�test_repeatability_broadcastingz,TestIntegers.test_repeatability_broadcastings���*�*�	,�B��t�R�W�W�o�-�1�2�8�8�B�<�3C�3C�D��t�R�W�W�o�-�1�2�8�8�B�<�3C�3C�a�3G�D�'�4�!�8�T�D��w�t�}�-�F��/�/�$��4�(�#%�"�'�C��w�t�}�-�F��_�_�d�V�d�]�D�8�&(�%�*�F�
�s�F�+��w�t�}�-�F��_�_�d�V�d�]�T�F�T�M�)1��%�=�F�
�s�F�+�)	,r*zbound, expectedr0)iu�i�,YQi�Xgi$#�Pl�bAi{��El/Y�irJ)�u�i�,YQ��Xgi%#�Pl�bAi|��El0Y�i�)rIrJl�bAl1Y�ii�{,mi��uHl�HMc��dt|�fD]<}ttd��}|j||��}t	||�|n|d��>y)Nr)r�r)�lenrrr2r)r4�boundr�r�r[rss      r(�!test_repeatability_32bit_boundaryz.TestIntegers.test_repeatability_32bit_boundary'sS���3�x�=�)�	K�D��w�t�}�-�F�����D��1�A����(8�H�h�q�k�J�	Kr*c
�&�tjgd�gd�gd�ggd�gd�gd�ggd�gd�gd	�ggd
�gd�gd�ggd
�gd�gd�gg�}dD]E}ttd��}|j	dgdgdgggd�|��}t||�|n|d��Gy)N)i�
�`l�Y�/i�0�b)i)H{Ti�P-iT��q)l��Ci��Z'l!�g)l�k40ln2cl�DBJ)i�|�(iy+l�_&A)ip@�GiG��^lJ|xK)l�
flDmvl�E"g)i��>{lwT2Li�JQ)iQ�//it�Lol�k�)i\�si���Ji���)i��=l}DlE9l)l
+xi#J�lb�)i��0i7��Olrn)ix��ii���Ai.��t)lq/�qi;-�/i���)N)rpr�r�i90rBrr=)r0rJrKr�)r9r{rrr2r)r4�desiredr�r[rss     r(�.test_repeatability_32bit_boundary_broadcastingz;TestIntegers.test_repeatability_32bit_boundary_broadcasting6s����(�(�A�A�A�C�B�A�A�C�B�A�A�C�B�A�A�C�B�A�A�C�D�E��&�	O�D��w�u�~�.�F����"���s�Q�C� 0� =�%)� �+�A�
�q�T�-=�'�7�1�:�N�	Or*c
�f�tjdddzfdddftjdi}|D�]�}||D�]t}|\}}||z
}tj|gdzg�}tj|gdz�}t	t
tj||||�	�t	t
tj||||�	�t	t
tj||||�	�t	t
tj||||�	�tj|gdzgt�
�}	tj|gdzt�
�}
t	t
tj|	|||�	�t	t
tj||
||�	�t	t
tj|	|
||�	���w���y)NrrU�A)rB��rr�rr))rl)l����rUrVrW)���rXrrrW)	r9r8r�r{rrEr[r2�object)r4r)�configsrX�config�low�high�low_a�high_a�low_o�high_os           r(�&test_int64_uint64_broadcast_exceptionsz3TestIntegers.test_int64_uint64_broadcast_exceptionsMsn���9�9��1�b�5�z�;���H��8�8�4�5���	>�E�!�%�.�
>��"�	��T��h������3�%��(��,�����4�&�2�+�.���j�&�/�/�3��'/�u�>��j�&�/�/�5�$�'/�u�>��j�&�/�/�3��'/�u�>��j�&�/�/�5�&�'/�u�>����3�%��(��6�:�����4�&�2�+�V�<���j�&�/�/�5�$�'/�u�>��j�&�/�/�3��'/�u�>��j�&�/�/�5�&�'/�u�>�)
>�	>r*c���tj}tjtj�j}tjtjtj�j�}tjtjtj�jdz|z
�}t
j
||||��}t||�yr�)r9r�r�r�r8r[r2r)r4r)r
rrr�actuals       r(�test_int64_uint64_corner_casez*TestIntegers.test_int64_uint64_corner_caseis����X�X���h�h�r�x�x� �$�$���x�x�������*�.�.�/���y�y����"�(�(�+�/�/�!�3�h�>�?������t�h�b��I���V�S�!r*c��|jD]�}|turdntj|�j}|turdn!tj|�j
dz}|r|dz
n|}|turtjn|}|j
||||��}t|j|���ttfD]�}|turdntj|�j}|turdn!tj|�j
dz}|r|dz
n|}|j
||||��}t|d�rJ�tt|�|���y)NrrUr=rrX)rrr9r�rr�rrrXrV�hasattr�type�r4r)r
rrr�s      r(�test_respect_dtype_singletonz)TestIntegers.test_respect_dtype_singleton�s%���*�*�	+�B��d�
�1������(8�(8�D��d�
�1������(8�(8�1�(<�D�'�4�!�8�T�D��$�J����B�B��Z�Z��d�X�R�Z�H�F�����r�*�	+���+�	+�B��d�
�1������(8�(8�D��d�
�1������(8�(8�1�(<�D�'�4�!�8�T�D��Z�Z��d�X�R�Z�H�F��v�w�/�/�/���f��r�*�	+r*c���|jD]�}|turdntj|�j}|turdn!tj|�j
dz}|r|dz
n|}|turtjn|}|j
|g|g||��}t|j|�|j
|gdz|gdz||��}t|j|���yr)	rrr9r�rr�rrrXris      r(�test_respect_dtype_arrayz%TestIntegers.test_respect_dtype_array�s����*�*�
	+�B��d�
�1������(8�(8�D��d�
�1������(8�(8�1�(<�D�'�4�!�8�T�D��$�J����B�B��Z�Z�������Z�L�F�����r�*��Z�Z����
�T�F�Q�J��&(� �*�F�����r�*�
	+r*c���|jD]�}|jddd||��}|jdk(sJ�|j|k(sJ�|jddd||��jdk(sJ�t	t
j
ddd��jd�t	t
j
ddd��jd�t	t
j
ddd��jd���y)Nr�r�rr�r����rr�r)rrrzrXrr[r2)r4r)r
r�s    r(�test_zero_sizezTestIntegers.test_zero_size�s����*�*�		F�B��Z�Z��1�i�(�"�Z�M�F��<�<�9�,�,�,��<�<�2�%�%�%��:�:�a��a�(�$&��(�(-���6�
6�6������A�I��>�D�D�"�
$������C�a��8�>�>��E������R�a��8�>�>��E�		Fr*c��tjdk(rdnd}tjt�5t
j
ddd|��ddd�y#1swYyxYw)N�bigz<i4z>i4r��rr)r;r<r�r�rEr[r2)r4�other_byteord_dts  r(�test_error_byteorderz!TestIntegers.test_error_byteorder�sO��$'�M�M�U�$:�5���
�]�]�:�
&�	E��O�O�A�s��3C�O�D�	E�	E�	E�s�A�Azsample_size,high,dtype,chi2maxi@KLrpg@_@r�g�b@i���i�	gȩ@i���gd�@c��tj|||��}tj|d��\}}||z}||z
dz|zj	�}	|	|ksJ�y)NrT)�
return_countsrU)r[r2r9�uniquer�)
r4�sample_sizer]rX�chi2max�samples�values�countsr��chi2s
          r(�$test_integers_small_dtype_chisquaredz1TestIntegers.test_integers_small_dtype_chisquared�s_���/�/�$�[��/�F�����7�$�?������%���(�"�Q�&��1�6�6�8���g�~��~r*N)*rNrOrPr[r2rrr9r6r9r4r7r5ryr�r8rrr
rrrr!r#r'r-rErHr�r�r�r{rOrRrbrerjrlrqrv�slowr�rQr*r(r�r�@s����O�O�E��2�7�7�B�H�H�b�h�h��	�	�
�X�X�r�y�y�"�(�(�B�I�I�
7�E�P�7�27��4K�>
@�
@�!� .�*!1�F,�.�[�[����
�X�R�X�X�C�D�
E�
�����?�@�
A�
�X�R�X�X�C�D�
E�		F��K��K�O�.>�8"�.+�*+�F�E��[�[����[�[���=�
�1�b�g�g�u�	%�
�1�b�h�h��	&�
�D�"�(�(�F�	+�
�D�"�)�)�V�	,�	
���
��r*r�c���eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
ejjd	ejej fej"ej$fg�d
��Zd�Zd�Zd
�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�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-ejjd%e.e/g�ejjd&d'ej`gd(�gd)�g�fd*ej`gd+�gd,�g�fd-ej`gd.�gd/�g�fg�d0���Z1d1�Z2d2�Z3ejjd3d4d5g�d6��Z4d7�Z5d8�Z6d9�Z7d:�Z8d;�Z9d<�Z:d=�Z;d>�Z<d?�Z=d@�Z>ejj~dA��Z@ejjdBgdC�gdD�gdE�gdF�gdG�gdH�dIggdJ�g�dK��ZAdL�ZBdM�ZCdN�ZDdO�ZEdP�ZFdQ�ZGdR�ZHdS�ZIdT�ZJdU�ZKdV�ZLdW�ZMdX�ZNdY�ZOdZ�ZPd[�ZQd\�ZRejjd]ej�dId^�d_ej�d`g�da��ZUdb�ZVejj�eXdc�d�ejjdegdf��dg���ZYejjdhd*gdiggfdjgd-ggfg�dk��ZZejjdegdf��dl��Z[dm�Z\dn�Z]do�Z^dp�Z_dq�Z`dr�Zads�Zbdt�Zcdu�Zddv�Zedw�Zfdx�Zgdy�Zhdz�Zid{�Zjd|�Zkd}�Zld~�Zmd�Znd��Zod��Zpd��Zqd��Zrd��Zsd��Ztd��Zud��Zvd��Zwd��Zxd��Zyd��Zzd��Z{d��Z|d��Z}d��Z~d��Zd��Z�ejjd�d�d�g�d���Z�ejjd�d�e�jd�e�jd�g�ejjd�gd���d����Z�d��Z�d��Z�d��Z�d��Z�y')��TestRandomDistc��d|_y)Nr�r�rFs r(r�zTestRandomDist.setup_method�s	����	r*c��tt|j��}|jddd��}t	j
ddgddgd	d
gg�}t
||�y)N����c�r�rUr���������)�%���i��rrrr2r9r{r�r4r[rdrQs    r(�
test_integerszTestRandomDist.test_integers�sT���7�4�9�9�-�.������b�v��6���(�(�S�#�J��R��3��*�=�>���6�7�+r*c��tt|j��}|jdddtj
��}t	jddgddgd	d
ggtj
��}t||�y)Nrr�r�rr��F�Dr�r�rW)rrrr2r9ryr{rr�s    r(�test_integers_maskedz#TestRandomDist.test_integers_masked�sb���7�4�9�9�-�.������B�V�2�9�9��E���(�(�Q��G�b�"�X��2�w�7�r�y�y�I���6�7�+r*c��tt|j��}|jdddd��}t	j
ddgdd	gd
dgg�}t
||�y)Nr�r�r�T)r�r)r�r�r��&r�i�r�r�s    r(�test_integers_closedz#TestRandomDist.test_integers_closed�sV���7�4�9�9�-�.������b�v���E���(�(�S�#�J�"�b�	�C��:�>�?���6�7�+r*c��tjtjd�jtjd�jd��}tjd�j}t||�y)N�lT�r))r[r2r9r�r�r)r4rdrQs   r(�test_integers_max_intz$TestRandomDist.test_integers_max_int�sY��������#��!2�!2�B�H�H�S�M�4E�4E�*.�!�0���(�(�3�-�#�#���V�W�%r*c�8�tt|j��}|jd�}t	j
ddgddgddgg�}t
||d�	�tt|j��}|j�}t
||d
d�	�y)Nr�gG0��Ը?g�æ���?g2�
?gu	A��?g�H
�>H�?g;�dE��?r���decimalrW�rrrr[r9r{rr�s    r(�test_randomzTestRandomDist.test_random�s����7�4�9�9�-�.�����v�&���(�(�.�0A�B�.�0A�B�.�0A�B�D�E��	"�&�'�2�>��7�4�9�9�-�.�������!�&�'�$�-��Dr*c��tt|j��}|jd�}t	j
ddgddgddgg�}t
||d�	�y)
Nr��C����Ը?gP�����?gtX�?g81�
A��?g�rO�>H�?g�88dE��?r�r�r�r�s    r(�test_random_floatz TestRandomDist.test_random_float�s[���7�4�9�9�-�.�����v�&���(�(�Y��4�'��4�'��4�6�7��	"�&�'�1�=r*c��tt|j��}|jtj
��}d}t
||d��y)NrWr�r�r�)rrrr[r9r�rr�s    r(�test_random_float_scalarz'TestRandomDist.test_random_float_scalars:���7�4�9�9�-�.�����R�Z�Z��0����!�&�'�1�=r*zdtype, uint_view_typec���tt|j��}|jd|��}t	j
|j
|�dz�}d|cxkrdksJ�J�y)Nr�rWr=i$^i,e)rrrr[r9�
count_nonzerorB)r4rX�uint_view_typer[r��num_ones_in_lsbs      r(�test_random_distribution_of_lsbz.TestRandomDist.test_random_distribution_of_lsb	sb���7�4�9�9�-�.�����v�U��3���*�*�6�;�;�~�+F��+J�K����.��.�.�.�.�.r*c�D�tttjd��y)Nr5rW)rrDr[rFs r(�test_random_unsupported_typez+TestRandomDist.test_random_unsupported_types���i����g�>r*c���tt|j��}|jdd�}t	j
gd�tj��}t||�y)Nr�)rrrUrUrW�rrr�choicer9r{r�rr�s    r(�test_choice_uniform_replacez*TestRandomDist.test_choice_uniform_replacesC���7�4�9�9�-�.�����q�!�$���(�(�<�r�x�x�8���6�7�+r*c���tt|j��}|jddgd���}t	j
gd�tj��}t||�y)Nr�)皙�����?r�皙�����?r��r])rr=rr=rWr�r�s    r(�test_choice_nonuniform_replacez-TestRandomDist.test_choice_nonuniform_replacesH���7�4�9�9�-�.�����q�!�';��<���(�(�<�r�x�x�8���6�7�+r*c�Z�tt|j��}|jddd��}t	j
gd�tj��}t||�|jdddd��}t	jdtj��}t||�y)Nr�r�F��replacer�rW)r��shuffle)	rrrr�r9r{r�rr:r�s    r(�test_choice_uniform_noreplacez,TestRandomDist.test_choice_uniform_noreplace$s{���7�4�9�9�-�.�����q�!�U��3���(�(�9�B�H�H�5���6�7�+����q�!�U�E��B���)�)�A�R�X�X�.���6�7�+r*c���tt|j��}|jdddgd���}t	j
gd�tj��}t||�y)Nr�r�F)r��333333�?rYr��r�r])rrUr�rWr�r�s    r(� test_choice_nonuniform_noreplacez/TestRandomDist.test_choice_nonuniform_noreplace-sJ���7�4�9�9�-�.�����q�!�U�6J��K���(�(�9�B�H�H�5���6�7�+r*c��tt|j��}|jgd�d�}t	j
gd��}t
||�y)N)�a�b�c�dr�)r�r�r�r��rrrr�r9r{rr�s    r(�test_choice_nonintegerz%TestRandomDist.test_choice_noninteger3s?���7�4�9�9�-�.�����3�Q�7���(�(�/�0���6�7�+r*c���tt|j��}|jddgddgddgddggd�}t	j
ddgddgddgg�}t
||�y)	Nrr=rUr�r�rpr�r�r�r�s    r(�)test_choice_multidimensional_default_axisz8TestRandomDist.test_choice_multidimensional_default_axis9si���7�4�9�9�-�.������A���A���A���A��?��C���(�(�Q��F�Q��F�Q��F�3�4���6�7�+r*c���tt|j��}|jddgddgddgddggdd�	�}t	j
dgdgdgdgg�}t
||�y)
Nrr=rUr�r�rpr�r�r�r�r�s    r(�(test_choice_multidimensional_custom_axisz7TestRandomDist.test_choice_multidimensional_custom_axis?sk���7�4�9�9�-�.������A���A���A���A��?����K���(�(�Q�C�!��q�c�A�3�/�0���6�7�+r*c	�:�tj}tt|dd�tt|dd�tt|gd�tt|gd�dddgddgg��tt|ddgdgd	���tt|ddgdd
dg��tt|ddgdddg��tt|gd
�dd��tt|gd
�dd��tt|gd
�dd��tt|gd
�dd��tt|gd
�ddgd���y)NrBr��@)r=rUr�r���?r�r=rU)r�r�rfr�r�r�r�r�Fr�rI)rB)rBr=)r=rrr�)r[r�rrE)r4r�s  r(�test_choice_exceptionsz%TestRandomDist.test_choice_exceptionsEs��������j�&�"�a�0��j�&�"�a�0��j�&�"�a�0��j�&�,������d�|�4�	6��j�&�1�a�&�!��G��j�&�1�a�&�!��T�{�C��j�&�1�a�&�!��S�z�B��j�&�)�Q��F��j�&�)�R��G��j�&�)�U�E�J��j�&�)�W�e�L��j�&�)�Q�#�y�	2r*c
�
�ddg}ttjtj	dd����ttjtj	dd����ttjtj	dd|����ttjtj	dd|����ttjtj	ddgd����ttj	dgd��du�tj
ddg�}tjdt�	�}||d
<ttj	|d��|u�t�}ttjtj	d|d����ttjtj	d|d����ttjtj	d|d|����ttjtj	d|d|����ttjtj	ddg|d����ttj	dg|d��jd
k(�tj
ddg�}tjdt�	�}||d
<ttj	||d��j�|u�d}gd�}ttj	d
|d��j|�ttj	d
|d��j|�ttj	d
|d|��j|�ttj	d
|d|��j|�ttj	tjd
�|d��j|�ttjd
d
d��jd�ttjd
dd
��jd�ttjddd
��jd�ttj	d
d
��jd�ttj	gd��jd�ttj	ddgd��jd�tt tjgd�y)Nr�r�rUTr�Fr�r=rWrr�)r�r�r�r�r�rfr�rnr�rorprr�r�)rr9�isscalarr[r�r{r�rY�tuple�ndim�itemrrzr:r2rrE)r4r]r��arrr5s     r(�test_choice_return_shapez'TestRandomDist.test_choice_return_shapeWs���
�#�J������F�M�M�!�T�M�:�;�<�����F�M�M�!�U�M�;�<�=�����F�M�M�!�T�Q�M�?�@�A�����F�M�M�!�U�a�M�@�A�B�����F�M�M�1�a�&�$�M�?�@�A���
�
�t�f�d�
�3�t�;�<��H�H�a��V����h�h�q��'����A����
�
�c�4�
�0�A�5�6�
�G���B�K�K��
�
�a��D�
� A�B�B�C��B�K�K��
�
�a��E�
� B�C�C�D��B�K�K��
�
�a��D�A�
� F�G�G�H��B�K�K��
�
�a��E�Q�
� G�H�H�I��B�K�K��
�
�q�!�f�a��
� F�G�G�H���
�
�t�f�a��
�6�;�;�q�@�A��H�H�a��V����h�h�q��'����A����
�
�c�1�d�
�3�8�8�:�a�?�@�
��*���V�]�]�1�a��]�6�<�<�a�@��V�]�]�1�a��]�7�=�=�q�A��V�]�]�1�a���]�;�A�A�1�E��V�]�]�1�a��!�]�<�B�B�A�F��V�]�]�2�9�9�Q�<��D�]�A�G�G��K�	�V�_�_�Q��	�_�:�@�@�)�L��V�_�_�Q��!�_�4�:�:�D�A��V�_�_�R��!�_�4�:�:�D�A��V�]�]�1�1�]�-�3�3�T�:��V�]�]�2�D�]�1�7�7��>��V�]�]�C��:�I�]�>�D�D��	 ��j�&�-�-��R�8r*c�|�tjgd��}gd�}tttj
||��y)N)�*r=rU)NNNr�)r9r{rrEr[r�)r4r�r]s   r(�test_choice_nan_probabilitiesz,TestRandomDist.test_choice_nan_probabilities�s'���H�H�Z� �����j�&�-�-��a�8r*c
�b�tjd�dz}d|ddd�<tt|j��}|jdd|ddd���}tt|j��}|jddtj|ddd����}t||�y)Nrrpr�r=rUr�r�)r9�onesrrrr�r�r)r4r]r[r�r�s     r(�test_choice_p_non_contiguousz+TestRandomDist.test_choice_p_non_contiguous�s����G�G�B�K�!�O����!�$�Q�$���7�4�9�9�-�.���]�]�1�a�1�S�q�S�6�]�2�
��7�4�9�9�-�.�����q�!�r�';�';�A�c��c�F�'C��D���:�v�.r*c���tjd�dz}tjdd�}|jtj
k(sJ�tjddd��}|jtj
k(sJ�tjdd|��}|jtj
k(sJ�tjdd|d��}|jtj
k(sJ�y)Nr�g@rUFr�r�)r]r�)r9r�r[r�rXr�)r4r]rds   r(�test_choice_return_typez&TestRandomDist.test_choice_return_type�s����G�G�A�J��O�����q�!�$���|�|�r�x�x�'�'�'����q�!�U��3���|�|�r�x�x�'�'�'����q�!�q��)���|�|�r�x�x�'�'�'����q�!�q�%��8���|�|�r�x�x�'�'�'r*c�N�d}tt|j��}|jddd��}tj
dk7r|j
�}tj|jtj��j�}t||k(�y)N�@4266599d12bfcfb815213303432341c06b4349f5455890446578877bb322e222�'rwFr�r:)rrrr�r;r<r=r>r?rBr9r6r@r)r4�choice_hashr[rdrDs     r(�test_choice_large_samplez'TestRandomDist.test_choice_large_sample�sw��X���7�4�9�9�-�.�����u�d�E��:���=�=�H�$��_�_�&�F��n�n�V�[�[����1�2�<�<�>����s�"�#r*c�v�tt|j��}t|j	gd�d��tjd�d��t|j	gd�gd��gd��t|j	dggd��dgd��t|j	dggdd��dgd��y)Nr�rQr�r=T)�strict)r�r�)rrrrr�r9r{�r4r[s  r(�"test_choice_array_size_empty_tuplez1TestRandomDist.test_choice_array_size_empty_tuple�s����7�4�9�9�-�.���6�=�=���=�<�b�h�h�q�k�"&�	(��6�=�=�)��2�=�>�	�J��6�=�=�1�#��R�=�8�1�#�d�K��6�=�=�1�#��R�a�=�@�1�#�"&�	(r*c�~�tt|j��}|jd�}d}t	||�y)Nrs
����	8%�)rrr�bytesrr�s    r(�
test_byteszTestRandomDist.test_bytes�s2���7�4�9�9�-�.�����b�!��5���V�W�%r*c���d�d�d�d�d�d�d�d�d	�d
�d�fD]S}tt|j��}|gd��}|j|�|}|gd
��}t	||��Uy)Nc�,�tjg�Sr%)r9r{�rss r(�<lambda>z-TestRandomDist.test_shuffle.<locals>.<lambda>�s��r�x�x��|�r*c��|Sr%rQr�s r(r�z-TestRandomDist.test_shuffle.<locals>.<lambda>�s��q�r*c�f�tj|�jtj�Sr%)r9�asarray�astyper6r�s r(r�z-TestRandomDist.test_shuffle.<locals>.<lambda>�s��r�z�z�!�}�3�3�B�G�G�<�r*c�f�tj|�jtj�Sr%)r9r�r�r�r�s r(r�z-TestRandomDist.test_shuffle.<locals>.<lambda>�s��r�z�z�!�}�3�3�B�J�J�?�r*c�f�tj|�jtj�Sr%)r9r�r��	complex64r�s r(r�z-TestRandomDist.test_shuffle.<locals>.<lambda>�s��r�z�z�!�}�3�3�B�L�L�A�r*c�R�tj|�jt�Sr%)r9r�r�rYr�s r(r�z-TestRandomDist.test_shuffle.<locals>.<lambda>�s��r�z�z�!�}�3�3�F�;�r*c�0�|D�cgc]}||f��c}Scc}wr%rQ�rs�is  r(r�z-TestRandomDist.test_shuffle.<locals>.<lambda>�s���2�1��A��2���2s�c�V�tj|D�cgc]}||g��c}�Scc}wr%)r9r�r�s  r(r�z-TestRandomDist.test_shuffle.<locals>.<lambda>�s!��r�z�z�1�*=�a�A�q�6�*=�>���*=s�&c�D�tj||g�jSr%)r9�vstack�Tr�s r(r�z-TestRandomDist.test_shuffle.<locals>.<lambda>�s��r�y�y�!�Q��0�2�2�r*c��tj|D�cgc]}||f��c}dtfdtfg�jtj�Scc}w)Nr�r�)r9r�rVrB�recarrayr�s  r(r�z-TestRandomDist.test_shuffle.<locals>.<lambda>�sE���
�
�A�+>�q�Q��F�+>�-0�#�J��c�
�+C�!E�!%��b�k�k�!2���+>s�Ac��tj|D�cgc]}||f��c}dtdfdtjdfg�Scc}w)Nr��r=r�)r9r�rYr5r�s  r(r�z-TestRandomDist.test_shuffle.<locals>.<lambda>�sB��r�z�z�1�*=�a�A�q�6�*=�,/���+>�,/����4�+@�+B� C���*=s�A�
r=rUr�r�rpr�r�r�rr�
r�r=rr�rrpr�r�rUr�)rrrr�r)r4�convr[�alistrdrQs      r(�test_shufflezTestRandomDist.test_shuffle�s���,� �<�?�A�;�2�>�2�4�C�D�	0�D�"�w�t�y�y�1�2�F��7�8�E��N�N�5�!��F��9�:�G��v�w�/�-	0r*c���tt|j��}tjd�jd�}|j
|d��tjgd�gd�gd�gd�g�}t||�tt|j��}tjd�jd�}|j
|d	��t||�y)
Nr%�r�r�r=r��rr�r=rU�r�r�rpr��r��rr�r�r�r�r�rB)	rrrr9r:�reshaper�r{rr�s    r(�test_shuffle_custom_axisz'TestRandomDist.test_shuffle_custom_axis�s����7�4�9�9�-�.�����2��&�&�v�.�����v�A��&��(�(�,�,�,�,�.�/��	�6�7�+��7�4�9�9�-�.�����2��&�&�v�.�����v�B��'��6�7�+r*c��tt|j��}tjg�jd�}dD]E}tjg�jd�}|j
||��t||��Gy)N)rr�)rr=r�)rrrr9r{rr�r)r4r[rQr�rds     r(�test_shuffle_custom_axis_emptyz-TestRandomDist.test_shuffle_custom_axis_empty�sn���7�4�9�9�-�.���(�(�2�,�&�&�v�.���	0�D��X�X�b�\�)�)�&�1�F��N�N�6��N�-��v�w�/�	0r*c�Z�tjd�jdd�}|j�}t	t|j��}|j|d��t	t|j��}|j|j�t||�y)Nr�rUrr=r�)
r9r:r�copyrrrr�r�r)r4�y1�y2r[s    r(�test_shuffle_axis_nonsquarez*TestRandomDist.test_shuffle_axis_nonsquare�sw��
�Y�Y�r�]�
"�
"�1�b�
)��
�W�W�Y���7�4�9�9�-�.�����r���"��7�4�9�9�-�.�����r�t�t���2�r�"r*c���tjjtjt	d�d�dzdz
d�}tjjtj
d�dzdz
d�}|j
�}|j
�}t	d�D]�}tj|�tt|j|j�t|j|j��tj|�tt|j|j�t|j|j����y)Nr�)rpr�r�r=rBr�)
r9�ma�
masked_valuesrr8r:rr[r�r�sorted�data�mask)r4r�r��a_orig�b_origr�s      r(�test_shuffle_maskedz"TestRandomDist.test_shuffle_masked�s���E�E����
�
�5��9�f� =�� A�A� E�r�J���E�E����	�	�"�
�� 1�A� 5�r�:�������������r��	L�A��N�N�1����q�v�v�q�v�v�g��'�����V�[�[�L�0I�)J�
L��N�N�1����q�v�v�q�v�v�g��'�����V�[�[�L�0I�)J�
L�	Lr*c
�z�tt|j��}tjd�}tt|j|d�tjd�jd�}tt|j|d�tt|j|tddd��gd�gd�g}tt|j|d�tjd�}tt|j|�tjd	�}tt|j|d�y)
Nrr=r�r�r�r�rUr�)r�rpr�r�)rrrr9r:rrr�rrD�slice�NotImplementedErrorr{r��r4r[r�s   r(�test_shuffle_exceptionsz&TestRandomDist.test_shuffle_exceptions�s����7�4�9�9�-�.���i�i��m���i�����a�8��i�i��l�"�"�6�*���i�����a�8��i�����e�A�q�$�6G�H��)�$���)�6�>�>�3��B��h�h�q�k���i�����5��g�g�f�o���i�����a�8r*c��tt|j��}tjd�}d|j
_tjtd��5|j|�ddd�y#1swYyxYw)NrpF�	read-onlyr�)rrrr9rZ�flags�	writeabler�r�rEr�)r4r[r�s   r(�test_shuffle_not_writeablez)TestRandomDist.test_shuffle_not_writeables]���7�4�9�9�-�.���H�H�Q�K��!�����
�]�]�:�[�
9�	��N�N�1��	�	�	�s� A;�;Bc�r�tt|j��}gd�}|j|�}gd�}t	||�tt|j��}tjgd��j}|j|�}t	|tj|�j�d}tt|j|�d}tt|j|�tt|j��}d}gd�}|j|�}t	||�y)Nrr�abcdg333333�?r)
r�rr�r�rr�rUrpr=r�)
rrr�permutationrr9�
atleast_2dr�rr)	r4r[rrdrQ�arr_2d�	bad_x_str�bad_x_float�integer_vals	         r(�test_permutationzTestRandomDist.test_permutations����7�4�9�9�-�.��.���#�#�E�*��0���6�7�+��7�4�9�9�-�.�����=�>�@�@���#�#�F�+���6�2�=�=��#9�#;�#;�<��	��i��!3�!3�Y�?����i��!3�!3�[�A��7�4�9�9�-�.����0���#�#�K�0���6�7�+r*c��tjd�jd�}tjgd�gd�gd�gd�g�}t	t|j��}|j|d��}t||�t	t|j��}|j|d	��}t||�y)
Nr%rr	r
rr
r=r�rB)	r9r:rr{rrrr-r)r4r�rQr[rds     r(�test_permutation_custom_axisz+TestRandomDist.test_permutation_custom_axis.s����I�I�b�M�!�!�&�)���(�(�,�,�,�,�.�/���7�4�9�9�-�.���#�#�A�A�#�.���6�7�+��7�4�9�9�-�.���#�#�A�B�#�/���6�7�+r*c
�p�tt|j��}tjd�}tt|j|d�tjd�jd�}tt|j|d�tt|j|tddd��y)Nrr=rr!r�rU)rrrr9r:rrr-rrDr"r$s   r(�test_permutation_exceptionsz*TestRandomDist.test_permutation_exceptions;s���7�4�9�9�-�.���i�i��m���i��!3�!3�S�!�<��i�i��l�"�"�6�*���i��!3�!3�S�!�<��i��!3�!3�S�%��1�d�:K�Lr*rXzaxis, expectedN)r�r�rrrr)r�r�rUrpr=r�r)r�r=rUrrr)rr�r�r�r�rpr=)rpr�r�rrUr=)rrrr�r�r�c���tt|j��}tjd�jdd�j
|�}|j|||��t||�tt|j��}tjd�jdd�j
|�}|j||��}|j|k(sJ�t||�y)Nr�rUr��r��outr�)
rrrr9r:rr��permutedrrX)r4rXr�r�r[rs�ys       r(�
test_permutedzTestRandomDist.test_permutedCs����7�4�9�9�-�.���I�I�b�M�!�!�!�Q�'�.�.�u�5�������!��,��1�h�'��7�4�9�9�-�.���I�I�b�M�!�!�!�Q�'�.�.�u�5���O�O�A�D�O�)���w�w�%�����1�h�'r*c�h�tt|j��}tjd�jdd�}|j
�}|dd�ddd�f}|j|d|��}tjgd�gd�g�}t||�||dd�ddd�f<t||�y)	N�rUrr�r=r9)rrr�r�)r�r�rr�)
rrrr9r:rrr;r{r)r4r[�x0�x1rsr<r�s       r(�test_permuted_with_stridesz)TestRandomDist.test_permuted_with_stridesWs����7�4�9�9�-�.��
�Y�Y�r�]�
"�
"�1�b�
)��
�W�W�Y���q�#�A�#�v�J���O�O�A�A�1�O�-���8�8�\�-�/�0���1�h�'���1�c��c�6�
��2�r�"r*c�F�tjg�}t|g�yr%)r[r;r)r4r<s  r(�test_permuted_emptyz"TestRandomDist.test_permuted_emptyds���O�O�B����1�b�!r*�outshaper�rpc��tjgd��}tj||j��}t	j
td��5tj||��ddd�y#1swYyxYw)Nr�rWz
same shaper��r:)	r9r{rZrXr�r�rEr[r;)r4rEr�r:s    r(�"test_permuted_out_with_wrong_shapez1TestRandomDist.test_permuted_out_with_wrong_shapehsW���H�H�Y����h�h�x�q�w�w�/��
�]�]�:�\�
:�	(��O�O�A�3�O�'�	(�	(�	(�s�A5�5A>c��tjdtj��}tjd�}t	j
td��5tj|d|��ddd�y#1swYyxYw)N)r�rprWzCannot castr�r=r9)	r9rZr5r�r�r�rDr[r;)r4r:rss   r(�!test_permuted_out_with_wrong_typez0TestRandomDist.test_permuted_out_with_wrong_typeosX���h�h�v�R�X�X�.���G�G�F�O��
�]�]�9�M�
:�	0��O�O�A�A�3�O�/�	0�	0�	0�s�A8�8Bc���tjd�}d|j_t	j
td��5tj|d|��ddd�y#1swYyxYw)N)rUrpFr'r�r=r9)	r9rZr(r)r�r�rEr[r;rrs  r(�test_permuted_not_writeablez*TestRandomDist.test_permuted_not_writeableusQ���H�H�V���!�����
�]�]�:�[�
9�	.��O�O�A�A�1�O�-�	.�	.�	.�s�A$�$A-c��tt|j��}|jddd��}t	j
ddgddgd	d
gg�}t
||d��y)
Nr�r�r�r�gW�<$��=g�^
�=g�/:�Ћ�?g���G!Gc>g��'�`�2?g��U�?r�r�)rrr�betar9r{rr�s    r(�	test_betazTestRandomDist.test_beta{se���7�4�9�9�-�.�����R��&��1���(�(�#�%:�
;�#�%:�
;�#�%:�
;�
=�>��	"�&�'�2�>r*c�8�tt|j��}|jddd��}t	j
ddgddgdd	gg�}t
||�tt|j��}|jdd�}d}t
||�y)
NgZd;�Y@g�v��/�?r�r�r�r��0�,r�)rrrr\r9r{rr�s    r(�
test_binomialzTestRandomDist.test_binomial�s����7�4�9�9�-�.������$�V��<���(�(�R��H���H���H�&�'��	�6�7�+��7�4�9�9�-�.������$�/�����6�7�+r*c��tt|j��}|jdd��}t	j
ddgddgdd	gg�}t
||d
��y)Nr�r�r�gm��E~@@g�
�1ςC@g�rӳ�L@g�m%x�L@g<k��Q�K@g�t��K@r�r�)rrr�	chisquarer9r{rr�s    r(�test_chisquarezTestRandomDist.test_chisquare�sh���7�4�9�9�-�.���!�!�"�6�!�2���(�(�-�/?�@�-�/?�@�-�/?�@�B�C��	"�&�'�2�>r*c��tt|j��}tjddg�}|j|d��}tjddgddggd	d
gddggd
dgddggg�}t
||d��tjddg�}tt|j
|�tt|j��}tjddg�}|j|�}t
||dd��y)N���I<�I@��EZ�C@r�r�g�2�8\h�?g�ɎG/�?g
�A�p��?g�|);�?g�LX���?gfO�h��?g�됷W��?g(ސP��?gz$Q���?g�mWt �?g搝K���?g4��h�z�?r�r��H�z�G�?缉ؗ�Ҝ�rW)	rrrr9r{�	dirichletrrrE)r4r[�alphardrQ�	bad_alphas      r(�test_dirichletzTestRandomDist.test_dirichlet�s���7�4�9�9�-�.�����.�0D�E�F���!�!�%�f�!�5���(�(�0�3F�G�0�3E�G�I�0�3F�G�.�3F�G�I�1�3E�G�.�3F�G�I�	J�K��	"�&�'�2�>��H�H�g�x�0�1�	��j�&�"2�"2�I�>��7�4�9�9�-�.�����.�0D�E�F���!�!�%�(��!�&�'�$�-��Dr*c��tjddg�}ttj	|tj
d��jd�ttj	|tj
d��jd�ttj	|tj
d��jd�ttj	|ddg�jd�ttj	|d�jd�ttj	|tjd��jd�tttj|td��y)NrXrYr=rvrUrwrx)
r9r{rr[r\ryrzrrDr|r}s  r(�test_dirichlet_sizez"TestRandomDist.test_dirichlet_size�s���H�H�*�,@�A�B���V�%�%�a����1��6�<�<�f�E��V�%�%�a����1��6�<�<�f�E��V�%�%�a����1��6�<�<�f�E��V�%�%�a�!�Q��0�6�6�	�B��V�%�%�a��0�6�6�	�B��V�%�%�a����&�)9�:�@�@�)�L��i��!1�!1�1�e�A�h�?r*c	��tjddg�}tttj
|�tttj
ddgg�tttj
dgdgg�tttj
dgdggdgdggg�tttj
tjddgddgg��y)NrZr[rpr=)r9r{rrEr[r\)r4r]s  r(�test_dirichlet_bad_alphaz'TestRandomDist.test_dirichlet_bad_alpha�s������'�8�,�-���j�&�"2�"2�E�:�	�j�&�"2�"2�a��V�H�=��j�&�"2�"2�a�S�1�#�J�?��j�&�"2�"2�q�c�A�3�Z�1�#��s��4L�M��j�&�"2�"2�B�H�H�q�!�f�q�!�f�=M�4N�Or*c�D�tjgd��}|ddd�}tt|j��}|j|d��}tt|j��}|jtj|�d��}t||�y)N)rXg�rYrUr�r�)r9r{rrrr\r�r)r4r�r]r[r�r�s      r(�#test_dirichlet_alpha_non_contiguousz2TestRandomDist.test_dirichlet_alpha_non_contiguous�s����H�H�G�H���#�A�#����7�4�9�9�-�.���%�%�e�&�%�9�
��7�4�9�9�-�.���!�!�"�"6�"6�u�"=�'-�"�/��!�*�f�5r*c��d}|tjddg�z}tt|j��}|j|d��}tjddgddggddgddggddgddggg�}t
||d��y)	Nr���?r�r�r�rlr�r�)r9r{rrrr\r)r4�epsr]r[rdr�s      r(�test_dirichlet_small_alphaz)TestRandomDist.test_dirichlet_small_alpha�s������b�h�h��F�|�,�,���7�4�9�9�-�.���!�!�%�f�!�5���8�8��"�X��"�X�
��"�X��"�X�
��"�X��"�X�
�
���	"�&�(�B�?r*c��tjddg�}||j�z}tt	|j
��}|j
|d��}|jd��}t||d��y)	Ng{�G�z�?�{�G�z�?i-1r�rr�r�)r�)	r9r{r�rrrr\r�r)r4r]�
exact_meanr[r��sample_means      r(�%test_dirichlet_moderately_small_alphaz4TestRandomDist.test_dirichlet_moderately_small_alpha�sj�����$���&���U�Y�Y�[�(�
��7�4�9�9�-�.���!�!�%�h�!�7���k�k�q�k�)����Z�d�;r*r])rprrr�)rYrrr)r=rprr��?rrr)g{�G�z�?g���Q��?rr�)g�h㈵��>rrr)g����Mb`?g���Q��?rrrkrrrrlr�c�|�tj|�}tj|�}t	||dk(d�y)Nrrl)r9r{r[r\r)r4r]r<s   r(�&test_dirichlet_multiple_zeros_in_alphaz5TestRandomDist.test_dirichlet_multiple_zeros_in_alpha�s3�����������U�#���Q�u��z�]�C�(r*c��tt|j��}|jdd��}t	j
ddgddgdd	gg�}t
||d
��y)Ng�8EGr��?r�r�g�v���M�?g�����?g#��c�?g�Q��:N�?g�A��P�?gE_9���@r�r�)rrr�exponentialr9r{rr�s    r(�test_exponentialzTestRandomDist.test_exponential�sh���7�4�9�9�-�.���#�#�F��#�8���(�(�.�0A�B�.�0A�B�.�0@�B�D�E��	"�&�'�2�>r*c��ttjd��d�tttjd��y�Nr��scale��)rr[rsrrErFs r(�test_exponential_0z!TestRandomDist.test_exponential_0s,���V�'�'�a�'�0�!�4��j�&�"4�"4�C�@r*c��tt|j��}|jddd��}t	j
ddgddgd	d
gg�}t
||d��y)
Nr��Mr�r�g}
(Ҍ�?g�
i��?g=��r���?g]h��DA�?gjӨ��?g8��k*u�?r�r�)rrr�fr9r{rr�s    r(�test_fzTestRandomDist.test_fsg���7�4�9�9�-�.�����"�b�v��.���(�(�.�0A�B�.�0@�B�.�0A�B�D�E��	"�&�'�2�>r*c��tt|j��}|jddd��}t	j
ddgddgd	d
gg�}t
||d��y)
Nrpr�r�r�g,ש�n'@gt��@g
�<�e�2@g�1��a�3@g3r
y�-2@gs��1-2@r�r�)rrr�gammar9r{rr�s    r(�
test_gammazTestRandomDist.test_gamma
sf���7�4�9�9�-�.�����a����0���(�(�.��B�.�0A�B�.�0A�B�D�E��	"�&�'�2�>r*c��ttjdd��d�tttjdd��y)Nr)rzrxry)rr[r�rrErFs r(�test_gamma_0zTestRandomDist.test_gamma_0s+���V�\�\���\�3�Q�7��j�&�,�,�c��Er*c��tt|j��}|jdd��}t	j
ddgddgddgg�}t
||�y)N�_c97ݚ�?r�r�r=rr�r�)rrr�	geometricr9r{rr�s    r(�test_geometriczTestRandomDist.test_geometrics]���7�4�9�9�-�.���!�!�*�6�!�:���(�(�Q��G���G���H�&�'��	�6�7�+r*c��tttjd�tttjdgdz�tttjd�tttjdgdz�t	j
d��5tttjtj�tttjtjgdz�ddd�y#1swYyxYw)Nr�rr��ignore��invalid)rrEr[r�r9�errstater`rFs r(�test_geometric_exceptionsz(TestRandomDist.test_geometric_exceptions!s����j�&�"2�"2�C�8��j�&�"2�"2�S�E�B�J�?��j�&�"2�"2�D�9��j�&�"2�"2�T�F�R�K�@�
�[�[��
*�	G��*�f�&6�&6����?��*�f�&6�&6�����2�
�F�	G�	G�	G�s
�AD�Dc��tt|j��}|jddd��}t	j
ddgddgd	d
gg�}t
||d��y)
Nr��@r���locrxr�g�A7G�@g��1Fi�ҿge�i��@g����_C�g0c�P��g�`�(�_տr�r�)rrr�gumbelr9r{rr�s    r(�test_gumbelzTestRandomDist.test_gumbel*sg���7�4�9�9�-�.�����:�S�v��F���(�(�/�1C�D�/�1C�D�/�1C�D�F�G��	"�&�'�2�>r*c��ttjd��d�tttjd��yrv)rr[r�rrErFs r(�
test_gumbel_0zTestRandomDist.test_gumbel_02�'���V�]�]��]�+�Q�/��j�&�-�-�s�;r*c�~�tt|j��}|jdddd��}t	j
ddgddgddgg�}t
||�|jdd	d
d��}t	j
gd��}t
||�|jd
d	dd��}t	j
gd��}t
||�|jd	dd
d��}t	j
gd��}t
||�|jd	d
dd��}t	j
gd��}t
||�y)Ng333333$@g@r�r�r�rrrprr�r�)r�r�r�r�r�r�)r�r�r�r�)rrrr)rrr�hypergeometricr9r{rr�s    r(�test_hypergeometricz"TestRandomDist.test_hypergeometric6s*���7�4�9�9�-�.���&�&�t�S�"�6�&�B���(�(�a��G���G���G�%�&��	�6�7�+��&�&�q�!�Q�Q�&�7���(�(�<�(���6�7�+��&�&�r�1�b�q�&�9���(�(�+�,���6�7�+��&�&�q�!�Q�Q�&�7���(�(�<�(���6�7�+��&�&�q�"�b�q�&�9���(�(�<�(���6�7�+r*c��tt|j��}|jddd��}t	j
ddgddgd	d
gg�}t
||d��y)
Nr�r�r�r�g���6@	�ga@bDA"�?g*�[r�{�g�>K���?g���(��?g�<����?r�r�)rrr�laplacer9r{rr�s    r(�test_laplacezTestRandomDist.test_laplacePsg���7�4�9�9�-�.�����J�c���G���(�(�/�2C�D�/�2C�D�/�2C�D�F�G��	"�&�'�2�>r*c��ttjd��d�tttjd��yrv)rr[r�rrErFs r(�test_laplace_0zTestRandomDist.test_laplace_0Xs'���V�^�^�!�^�,�a�0��j�&�.�.��<r*c��tt|j��}|jddd��}t	j
ddgddgd	d
gg�}t
||d��y)
Nr�r�r�r�gb��Z�gHʊg$>�?g>��&���g�Qh�@g%?n��?g�ĉ�8|�?r�r�)rrr�logisticr9r{rr�s    r(�
test_logisticzTestRandomDist.test_logistic\sg���7�4�9�9�-�.�����Z�s���H���(�(�/�2C�D�.�2C�D�/�2C�D�F�G��	"�&�'�2�>r*c��tt|j��}|jddd��}t	j
ddgddgd	d
gg�}t
||d��y)
Nr�r�r�)r��sigmar�gܒ��x�?g���k*�+@g��<��Ҿ?g��
�@g5��a�@g�%jz�(@r�r�)rrr�	lognormalr9r{rr�s    r(�test_lognormalzTestRandomDist.test_lognormaldsh���7�4�9�9�-�.���!�!�z��6�!�J���(�(�o�/?�@�-��@�-�/?�@�B�C��	"�&�'�2�>r*c��ttjd��d�tttjd��y)Nr)r�r=ry)rr[r�rrErFs r(�test_lognormal_0zTestRandomDist.test_lognormal_0ls,���V�%�%�A�%�.��2��j�&�"2�"2�#�>r*c��tt|j��}|jdd��}t	j
ddgddgdd	gg�}t
||�y)
Ngƀ@���?r�)r]r�r�r�r��rpr=)rrr�	logseriesr9r{rr�s    r(�test_logserieszTestRandomDist.test_logseriesps]���7�4�9�9�-�.���!�!�J�V�!�<���(�(�R��H���G���F�$�%��	�6�7�+r*c�l�tt|j��}|jd�dk(sJ�y)Nrr=)rrrr�r�s  r(�test_logseries_zeroz"TestRandomDist.test_logseries_zeroxs.���7�4�9�9�-�.������"�a�'�'�'r*�valuerBrgg@c�x�tt|j��}tjd��5tjt�5|j|�ddd�tjt�5|jtj|gdz��ddd�tjt�5|jtj|gdz�ddd��ddd�ddd�y#1swY��xYw#1swY�nxYw#1swY�*xYw#1swYyxYw)Nr�r�rrU)
rrrr9r�r�r�rEr�r{)r4r�r[s   r(�test_logseries_exceptionsz(TestRandomDist.test_logseries_exceptions|s����7�4�9�9�-�.��
�[�[��
*�	>����z�*�
(�� � ��'�
(����z�*�
9�� � ����5�'�B�,�!7�8�
9����z�*�
>�� � ����5�'�B�,�!7��!��!<�=�
>�
	>�	>�
(�
(��
9�
9��
>�
>��
	>�	>�sS�D0�D�!!D0�)D�+!D0�/D$�;D0�D	�D0�D!	�D0�$D-	�)D0�0D9c���tt|j��}|jddgdzd��}t	j
gd�gd�ggd�gd	�ggd
�gd�gg�}t
||�y)Nr��UUUUUU�?r�r�r�)r=rpr=r�r�r�)r�rUr�rUr�rU)rpr�rUr�r�r=)r�r�rrUr�r�)r�r�r=rpr�rU)rprpr�r=rUr�)rrrrir9r{rr�s    r(�test_multinomialzTestRandomDist.test_multinomial�sr���7�4�9�9�-�.���#�#�B���1��6�#�B���(�(�/�/�1�/�/�1�/�/�1�	2�3��	�6�7�+r*zfp errors don't work in wasm��reasonr�)�svd�eigh�choleskyc�~�tt|j��}d}ddgddgg}d}|j||||��}t	j
ddgdd	ggd
dgdd
ggddgddggg�}t
||d��|j|||��}t	j
ddg�}t
||d��ddg}ddgddgg}tt|j||d��ddgddgg}tt|j||�tt|j||d��tt|j||d��t|j||d��tt|j||d��tt|j||dd��ddgddgg}|dvr*|j||d|��}t
|d|d d!��ntt|j||d��t	j
dd"gd"dggtj�#�}t�5}	|j|||��|	jt�}
t!|
�dk(sJ�	ddd�t	j"d�}t	j$d�}tt|j||d$��tt|jt	j"d%�|�tt|j|t	j&d��tt|j|t	j$d&��y#1swY��xYw)'N)r�rr=rr�r�g�t������g���$�&@g&بO=��g!���$@g�D�o��?g����\&@g�,�R�{�?g��
f�!@g?ժ���?gT�^o#@g`�R���?g��P��'@r�r�g��l��?g$�(�"@rU�raise)�check_validr�r�r�)r�r�)r�r�r�).r).r=r�r�rW�other)rUr=r=r�)rrr�multivariate_normalr9r{rrrEr	�RuntimeWarningrr
r�r
�recordrMrZ�eyer�)r4r�r[r��covr�rdrQr}�sup�w�mus            r(�test_multivariate_normalz'TestRandomDist.test_multivariate_normal�sD���7�4�9�9�-�.�����1�v��1�v������+�+�D�#�t�F�+�K���(�(�0�3D�G�1�3E�G�I�1�3E�G�1�4E�G�I�1�4E�G�1�3E�G�I�	J�K��	"�&�'�2�>��+�+�D�#�f�+�E���(�(�-�/@�A�B��!�&�'�2�>��1�v���1�v��1�v����j�&�"<�"<�d�C�")�	+�
�1�v��1�v����^�V�%?�%?��s�K��^�V�%?�%?��s�"�	$��k�6�#=�#=�t�S�'�	)�	�6�5�5�t�S�'/�	1�	�j�&�"<�"<�d�C�")�	+��j�&�"<�"<�d�C�")�&�	:��1�v��1�v����_�$��0�0��s��8>�1�@�G�%�g�f�o�w�v��./�
1�
�+�v�'A�'A�4��!+�
-��h�h��C��3��(�+�2�:�:�>��
�
 �	�C��&�&�t�S��&�@��
�
�>�*�A��q�6�Q�;��;�	�
�X�X�a�[���f�f�Q�i���j�&�"<�"<�d�C�")�	+��j�&�"<�"<��h�h�y�)�3�	0��j�&�"<�"<��"�(�(�6�*�	,��j�&�"<�"<��"�&�&��)�	%�	�	�s�:L3�3L<z	mean, covy�?�?yc���tt|j��}tjt
d��5|j
||�ddd�y#1swYyxYw)Nzmust not be complexr�)rrrr�r�rDr�)r4r�r�r[s    r(�)test_multivariate_normal_disallow_complexz8TestRandomDist.test_multivariate_normal_disallow_complex�sI���7�4�9�9�-�.��
�]�]�9�,A�
B�	2��&�&�t�S�1�	2�	2�	2�s�A�Ac���tt|j��}d}tjddg�}tjddgddgg�}|j|||f|��}||z
}|j|z|dz
z}tjtj|jd��dk�sJ�tjtj||z
�dk�sJ�y)Nr.r=rUr�rIr�rf)
rrrr9r{r�r�rq�absr�)	r4r�r[�n_sr�r�r5�s_center�cov_emps	         r(�$test_multivariate_normal_basic_statsz3TestRandomDist.test_multivariate_normal_basic_stats�s����7�4�9�9�-�.�����x�x��A�����h�h��A���A��'�(���&�&�t�S��v�f�&�M���t�8���:�:��(�S�1�W�5���v�v�b�f�f�X�]�]�2�.�/�#�5�6�6�6��v�v�b�f�f�W�s�]�+�c�1�2�2�2r*c��tt|j��}|jddd��}t	j
ddgddgd	d
gg�}t
||�y)Nreg|�Pk��?r�)�nr]r�ii�ii�iXi�)rrrr�r9r{rr�s    r(r�z%TestRandomDist.test_negative_binomial�s_���7�4�9�9�-�.���)�)�C�6��)�G���(�(�S�#�J� �#�J� �#�J�(�)��	�6�7�+r*c��tjd��5tttj
dtj�tttj
dtjgdz�ddd�y#1swYyxYw)Nr�r�rer)r9r�rrEr[r�r`rFs r(�!test_negative_binomial_exceptionsz0TestRandomDist.test_negative_binomial_exceptions�s\��
�[�[��
*�	)��*�f�&>�&>��R�V�V�L��*�f�&>�&>���6�6�(�R�-�
)�	)�	)�	)�s�A!B�B
c�x�tt�5tjdd�}ddd�y#1swYyxYw�Nr=r)rrEr[r�rrs  r(�#test_negative_binomial_p0_exceptionz2TestRandomDist.test_negative_binomial_p0_exceptions1��
�:�
&�	/��(�(��A�.�A�	/�	/�	/�s�0�9c���tjd��5tttj
dd�tttj
dgdg�ddd�y#1swYyxYw)Nr�r�rUr�)r9r�rrEr[r�rFs r(�.test_negative_binomial_invalid_p_n_combinationz=TestRandomDist.test_negative_binomial_invalid_p_n_combinationsU���[�[��
*�	P��*�f�&>�&>��s�K��*�f�&>�&>���#��O�	P�	P�	P�s�AA#�#A,c��tt|j��}|jddd��}t	j
ddgddgdd	gg�}t
||d
��|jdd
d��}t	j
ddgddgddgg�}t
||d
��tt|j��}|jddd��}t	j
ddgddgddgg�}t
||d
��y)Nrpr�)�df�noncr�gs؀3J�?gugو��/@gN�J��m+@g��A}�-4@gq=��&@gj���hn
@r�r�rYrfgZօ�D�N?g��E!X&?gt��%T�?gQ�)��V?g5�Zlf��?gΎ��{�?rgm�K���?g��Z��?g�%yKY@g�@�W@gĈ��{>@g�&�BB=@)rrr�noncentral_chisquarer9r{rr�s    r(�test_noncentral_chisquarez(TestRandomDist.test_noncentral_chisquares'���7�4�9�9�-�.���,�,����,�G���(�(�.�0A�B�.�0A�B�-�1A�B�D�E��	"�&�'�2�>��,�,���&�,�I���(�(�1�3G�H�1�3G�H�1�3G�H�J�K��	"�&�'�2�>��7�4�9�9�-�.���,�,����,�G���(�(�-�/?�@�-�/?�@�-�/?�@�B�C��	"�&�'�2�>r*c���tt|j��}|jdddd��}t	j
ddgdd	gd
dgg�}t
||d�
�y)NrprUr=r�)�dfnum�dfdenr�r�g�HP
�?g��n��?g�%�f���?gc�h�?g�zƎ���?g�]�?:�?r�r�)rrr�noncentral_fr9r{rr�s    r(�test_noncentral_fz TestRandomDist.test_noncentral_f!so���7�4�9�9�-�.���$�$�1�A�A�*0�%�2���(�(�^�/?�@�-��@�-�/?�@�B�C��	"�&�'�2�>r*c��tt|j��}|jddtj
��}t	j|�sJ�y)NrprU)r�r�r�)rrrr�r9r`�isnan�r4r[rds   r(�test_noncentral_f_nanz$TestRandomDist.test_noncentral_f_nan*sB���7�4�9�9�-�.���$�$�1�A�B�F�F�$�C���x�x����r*c��tt|j��}|jddd��}t	j
ddgddgd	d
gg�}t
||d��y)
Nr�r�r�r�g�?`x���g\�P�@g/7��u��g�0aj���?g��i�%�?go��g��@r�r�)rrr�normalr9r{rr�s    r(�test_normalzTestRandomDist.test_normal/sg���7�4�9�9�-�.�����:�S�v��F���(�(�/�2C�D�/�2C�D�/�2C�D�F�G��	"�&�'�2�>r*c��ttjd��d�tttjd��yrv)rr[r�rrErFs r(�
test_normal_0zTestRandomDist.test_normal_07r�r*c���tt|j��}|jdd��}t	j
ddgddgdd	gg�}tjj||d
��y)Nr�r��r�r�g��á�?g�ƫ�h��@g�i�`�>�?g��0"&Ag���c�@g=��f�Ar�)�nulp)rrr�paretor9r{�testing�assert_array_almost_equal_nulpr�s    r(�test_paretozTestRandomDist.test_pareto;sr���7�4�9�9�-�.������&��9���(�(�3�5K�L�3�5K�L�3�5K�L�N�O��	�
�
�1�1�&�'��1�Kr*c��tt|j��}|jdd��}t	j
ddgddgddgg�}t
||�y)Nr�r�)�lamr�r)rrr�poissonr9r{rr�s    r(�test_poissonzTestRandomDist.test_poissonIsZ���7�4�9�9�-�.�����J�V��<���(�(�Q��F���F���F�$�%��	�6�7�+r*c�`�tjd�j}d}ttt
j|�ttt
j|gdz�ttt
j|�ttt
j|gdz�tjd��5ttt
jtj�ttt
jtjgdz�ddd�y#1swYyxYw)Nr�rBrr�r�)	r9r�r�rrEr[r�r�r`)r4�lambig�lamnegs   r(�test_poisson_exceptionsz&TestRandomDist.test_poisson_exceptionsQs������'�"�&�&�����j�&�.�.�&�9��j�&�.�.�6�(�R�-�@��j�&�.�.�&�9��j�&�.�.�6�(�R�-�@�
�[�[��
*�	E��*�f�n�n�b�f�f�=��*�f�n�n�r�v�v�h��m�D�	E�	E�	E�s
�<AD$�$D-c��tt|j��}|jdd��}t	j
ddgddgdd	gg�}t
||d
��y)Nr�r�r�g����Z� >g������?gÄ�(�=g҇����?g�Ś�E��?g�ߢ��H�?r�r�)rrr�powerr9r{rr�s    r(�
test_powerzTestRandomDist.test_power\se���7�4�9�9�-�.�����
���8���(�(�2�4I�J�2�4I�J�2�4I�J�L�M��	"�&�'�2�>r*c��tt|j��}|jdd��}t	j
ddgddgdd	gg�}t
||d
��y)Nrr�)rxr�gr�y��@g�tQ�P�0@gAI���_
@g@�u8�1@g��	��G0@g"w�c5@r�r�)rrr�rayleighr9r{rr�s    r(�
test_rayleighzTestRandomDist.test_rayleighdse���7�4�9�9�-�.�����r���7���(�(�-�/@�A�-�/@�A�.�0A�B�D�E��	"�&�'�2�>r*c��ttjd��d�tttjd��yrv)rr[r�rrErFs r(�test_rayleigh_0zTestRandomDist.test_rayleigh_0ls'���V�_�_�1�_�-�q�1��j�&�/�/��=r*c��tt|j��}|jd��}t	j
ddgddgddgg�}t
||d	�
�y)Nr�r�g�H1����gW�|�3
�g����\��?gL�e���g5�P�	��g��FA��?r�r�)rrr�standard_cauchyr9r{rr�s    r(�test_standard_cauchyz#TestRandomDist.test_standard_cauchypsf���7�4�9�9�-�.���'�'�V�'�4���(�(�/�1C�D�/�1C�D�/�2C�D�F�G��	"�&�'�2�>r*c��tt|j��}|jdd��}t	j
ddgddgdd	gg�}t
||d
��y)Nr��invr�ga\�5��?gr�7k��?g8�PC*��?g5��$�[�?gW3�T��?g*���?r�r�)rrr�standard_exponentialr9r{rr�s    r(�test_standard_exponentialz(TestRandomDist.test_standard_exponentialxsh���7�4�9�9�-�.���,�,�&��,�G���(�(�.�0A�B�.�0A�B�.�0A�B�D�E��	"�&�'�2�>r*c�`�tttjtj
��y�NrW)rrDr[rr9r5rFs r(�#test_standard_expoential_type_errorz2TestRandomDist.test_standard_expoential_type_error�s���i��!<�!<�B�H�H�Mr*c��tt|j��}|jdd��}t	j
ddgddgdd	gg�}t
||d
��y)Nr�r��rzr�g
Έ̏&�?gT�Ͽ���?g1n2�1@gDb<z�@g�Bv�
@g��c^��
@r�r��rrr�standard_gammar9r{rr�s    r(�test_standard_gammaz"TestRandomDist.test_standard_gamma�sh���7�4�9�9�-�.���&�&�Q�V�&�<���(�(�-�/?�@�+�/?�@�-�/?�@�B�C��	"�&�'�2�>r*c��tt|j��}|jdtj
��}d}t
||d��y)Nr�rWg��d@r�r�)rrrrr9r�rr�s    r(�!test_standard_gammma_scalar_floatz0TestRandomDist.test_standard_gammma_scalar_float�s?���7�4�9�9�-�.���&�&�q��
�
�&�;��$��!�&�'�1�=r*c��tt|j��}|jdd��}t	j
ddgddgdd	gg�}t
||d
��y)Nr�r�rgf���&�?gM�
O���?g���1@g�):��@g����
@g;�i���
@rpr�r
r�s    r(�test_standard_gamma_floatz(TestRandomDist.test_standard_gamma_float�sb���7�4�9�9�-�.���&�&�Q�V�&�<���(�(�W�f�.�$�f�.�$�g�.�0�1��	"�&�'�1�=r*c���tjdtj��}tt	|j
��}|j
d|tj��tjddgddgd	d
ggtj��}t||d��tt	|j
��}|j
d|dtj�
�t||d��y)Nr�rW�$@�r:rXg�M�»L$@g�a��{@g��N]��"@gPS��")@g����_�+@gm���B@rpr��r:r�rX)	r9rZr�rrrrr{r)r4rdr[rQs    r(�test_standard_gammma_float_outz-TestRandomDist.test_standard_gammma_float_out�s������&��
�
�3���7�4�9�9�-�.�����d��b�j�j��A��(�(�X��0�&��1�&��1�3�:<�*�*�F��	"�&�'�1�=��7�4�9�9�-�.�����d��V�2�:�:��N�!�&�'�1�=r*c�F�tttjdd��y)Nrgr5rW)rrDr[rrFs r(� test_standard_gamma_unknown_typez/TestRandomDist.test_standard_gamma_unknown_type�s���i��!6�!6��#�	%r*c��tjd�}tttj
dd|��tttj
dd|��y)Nrrr�)r�r:)rr=)r9rZrrEr[r)r4r:s  r(�test_out_size_mismatchz%TestRandomDist.test_out_size_mismatch�sA���h�h�r�l���j�&�"7�"7��B��	��j�&�"7�"7��G��	r*c��ttjd��d�tttjd��y)Nr)rzry)rr[rrrErFs r(�test_standard_gamma_0z$TestRandomDist.test_standard_gamma_0�s,���V�*�*��*�3�Q�7��j�&�"7�"7�s�Cr*c��tt|j��}|jd��}t	j
ddgddgddgg�}t
||d	�
�y)Nr�r�g�
bY�g?�� �?gGH{L��gz�\��?gc��`+�?gT�}���?r�r�)rrrr�r9r{rr�s    r(�test_standard_normalz#TestRandomDist.test_standard_normal�sf���7�4�9�9�-�.���'�'�V�'�4���(�(�/�2B�D�/�2C�D�/�2C�D�F�G��	"�&�'�2�>r*c�`�tttjtj
��yr	)rrDr[r�r9r5rFs r(�%test_standard_normal_unsupported_typez4TestRandomDist.test_standard_normal_unsupported_type�s���i��!7�!7�r�x�x�Hr*c��tt|j��}|jdd��}t	j
ddgddgdd	gg�}t
||d
��y)Nrr�)r�r�g��V1���g	|ڙ(��?g����-��?g�N�hڿgM�c�?g!uL��M�r�r�)rrr�
standard_tr9r{rr�s    r(�test_standard_tzTestRandomDist.test_standard_t�sh���7�4�9�9�-�.���"�"�b�v�"�6���(�(�/�2B�D�/�1C�D�/�1C�D�F�G��	"�&�'�2�>r*c���tt|j��}|jdddd��}t	j
ddgdd	gd
dgg�}t
||d�
�y)Ng{�G�z@g�(\��u$@gףp=
W4@r�)�left�mode�rightr�g�E�pw@g�4�DC+@g��ŋ�@g���/�,@gk���uR*@gHNP�cr+@r�r�)rrr�
triangularr9r{rr�s    r(�test_triangularzTestRandomDist.test_triangular�sq���7�4�9�9�-�.���"�"��5��(.�#�0���(�(�.�0@�B�.�0A�B�.�0A�B�D�E��	"�&�'�2�>r*c��tt|j��}|jddd��}t	j
ddgddgd	d
gg�}t
||d��y)
N�G�z��?g�G�z%@r�)r\r]r�gm�2�@gJ�a�D@g��:�@g
���Q� @g@T{e�@g�b��@r�r��rrr�uniformr9r{rr�s    r(�test_uniformzTestRandomDist.test_uniform�sg���7�4�9�9�-�.�����D�u�6��B���(�(�-�0A�B�.�0A�B�.�0A�B�D�E��	"�&�'�2�>r*c�,�tjd�j}tjd�j}tj
}t
t|tjd�t
t|dtj�t
t|||�t
t|tjgdg�t
t|dgtjg�tjtj|d�|dz��y)Nr|rr=g�؅W4vC)r\r])
r9�finforr�r[r/r�
OverflowError�inf�	nextafter)r4�fmin�fmax�funcs    r(�test_uniform_range_boundsz(TestRandomDist.test_uniform_range_bounds�s����x�x�� �$�$���x�x�� �$�$���~�~���m�T�B�F�F�7�A�6��m�T�1�b�f�f�5��m�T�4��6��m�T�R�V�V�G�9�q�c�:��m�T�A�3�����9�
	���2�<�<��a�0�t�d�{��Cr*c�:�tj}|dd�}t|d�|dtjgdtjg�}t|dtjg�|dgdggddg�}t|dtj
d�z�y)Nrorlg
ףp= @rx)r[r/rr9�pirZ)r4r8�results   r(�test_uniform_zero_rangez&TestRandomDist.test_uniform_zero_range�s����~�~���c�3������$��s�B�E�E�l�S�"�%�%�L�1�����b�e�e��-���y�7�)�,�w��.@�A�����"�(�(�6�*:� :�;r*c��tj}tt|dd�tt|ddgddg�tt|ddgddggd�y)NrUr=rr�)r[r/rrE)r4r8s  r(�test_uniform_neg_rangez%TestRandomDist.test_uniform_neg_range�sI���~�~���j�$��1�-��j�$�!�Q��!�Q��8��j�$�1�a�&�!�Q���!�<r*c�z�Gd�dtj�}tjd�j|�}t	t
tj||�Gd�dtj�}tjd�j|�}t	t
tj|dd�y)Nc��eZdZd�Zy)�GTestRandomDist.test_scalar_exception_propagation.<locals>.ThrowingFloatc��t�r%�rDrFs r(�	__float__zQTestRandomDist.test_scalar_exception_propagation.<locals>.ThrowingFloat.__float__����r*N)rNrOrPrErQr*r(�
ThrowingFloatrB����
 r*rGrgc��eZdZd�Zy)�ITestRandomDist.test_scalar_exception_propagation.<locals>.ThrowingIntegerc��t�r%rDrFs r(�__int__zQTestRandomDist.test_scalar_exception_propagation.<locals>.ThrowingInteger.__int__rFr*N)rNrOrPrLrQr*r(�ThrowingIntegerrJrHr*rMr=)	r9�ndarrayr{rBrrDr[r/r�)r4rG�throwing_floatrM�throwing_ints     r(�!test_scalar_exception_propagationz0TestRandomDist.test_scalar_exception_propagation�s���	 �B�J�J�	 ����#��+�+�M�:���i�����$�	&�	 �b�j�j�	 ��x�x��{�'�'��8���i��!6�!6��a��Kr*c��tt|j��}|jddd��}t	j
ddgddgd	d
gg�}t
||d��y)
Nr-�p=
ף�?r��r��kappar�gL��A��?g�x�yw�@g��z�VR�?g�pE� �?g�8&�A�пg���v@r�r�)rrr�vonmisesr9r{rr�s    r(�
test_vonmiseszTestRandomDist.test_vonmisessg���7�4�9�9�-�.�����D��6��B���(�(�/�2C�D�/�2C�D�/�2C�D�F�G��	"�&�'�2�>r*c��tt|j��}|jddd��}t	tj|�j��y)Nrlgg5_P�G>i@BrT)rrrrVrr9�isfiniterq�r4r[�rs   r(�test_vonmises_smallz"TestRandomDist.test_vonmises_smallsB���7�4�9�9�-�.���O�O�r��e�O�<������A��"�"�$�%r*c��tt|j��}|jdtj
��}t
t	j|��y)Nrl)r�rU)rrrrVr9r`rr�rZs   r(�test_vonmises_nanz TestRandomDist.test_vonmises_nans;���7�4�9�9�-�.���O�O�r����O�0��������r*rUg��@�4&�kCc�`�tt|j��}t|j�}|jj
}|j
d|d��}||j_|j
d|d��}|dkr
t||�ytj||k7�sJ�y)Nrrr�g��.A)
rrrrr�r�rVrr9rq)r4rUr[�rsr��random_state_vals�gen_valss       r(�test_vonmises_large_kappaz(TestRandomDist.test_vonmises_large_kappa!s����7�4�9�9�-�.��
��-�-�
.���$�$�*�*���K�K��5�r�K�:��%*����"��?�?�1�e�"�?�5���3�;��-�x�8��6�6�+�x�7�8�8�8r*r�g�g�������g������	@)r�g���ư>r=g@�@r_c��tt|j��}|j||d�}t	tj|t
jkD�xr&tj|t
jk��y)Nr�)rrrrVrr9rqr;)r4r�rUr[r[s     r(�test_vonmises_large_kappa_rangez.TestRandomDist.test_vonmises_large_kappa_range/sZ���7�4�9�9�-�.���O�O�B��r�*������q�B�E�E�6�z�"�9�r�v�v�a�2�5�5�j�'9�:r*c��tt|j��}|jddd��}t	j
ddgddgd	d
gg�}t
||d��y)
Nr-rSr�)r�rxr�g
*س�2�?g�t���	@g�;S�@g\���F@g�x��F�@g���6b�?r�r�)rrr�waldr9r{rr�s    r(�	test_waldzTestRandomDist.test_wald6sf���7�4�9�9�-�.�����$�d���@���(�(�-��@�-�/?�@�-�/?�@�B�C��	"�&�'�2�>r*c��tt|j��}|jdd��}t	j
ddgddgdd	gg�}t
||d
��y)Nr-r�r�gnJZ���?g*�/F��?gs�(RY��?g��]'%�?g,�q�D�?g�8 �?r�r�)rrr�weibullr9r{rr�s    r(�test_weibullzTestRandomDist.test_weibull>se���7�4�9�9�-�.�����$�V��4���(�(�.�0A�B�.�0A�B�.�0A�B�D�E��	"�&�'�2�>r*c���tt|j��}t|j	dd��tjd��tt|jd��y)Nrr�r�ry)r�)	rrrrrkr9rZrrEr�s  r(�test_weibull_0zTestRandomDist.test_weibull_0FsD���7�4�9�9�-�.���V�^�^�a�b�^�1�2�8�8�B�<�@��j�&�.�.�C�8r*c��tt|j��}|jdd��}t	j
ddgddgddgg�}t
||�y)	Nr-r�r�r=ricibrU)rrr�zipfr9r{rr�s    r(�	test_zipfzTestRandomDist.test_zipfKsZ���7�4�9�9�-�.�����t�&��1���(�(�q�A�J� �#�J� �A�J�(�)��	�6�7�+r*)�rNrOrPr�r�r�r�r�r�r�r�r�r�r�r9r�ry�float64r8r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rrrrrr%r*r3r5r7rVrYr{r=rBrDrHrJrLrOrSrVr_rarcrerir�rnrqrtrzr~r�r�r�r�r�r�r�r�r�r�r�r�r�r�r5r`r�r��skipifrr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rrrr
rrrrrrrr r"r%r+r0r9r=r?rQrWr\r^rdr;rfrirlrnrqrQr*r(r�r��s���,�,�,�
&�
E�>�>��[�[���4�!�z�z�2�9�9�5�!�z�z�2�9�9�5�7�8�/�8�/�?�,�,�,�,�,�,�,�2�$,9�\9�
/�
(�$�(�&�0�6,�0�#�L�
9��,�2,�M��[�[���W�s�F�m�4��[�[���-�#�X�R�X�X�/C�/C�/E�&F�G� �(�"�(�(�,@�,@�,B�#C�D� �(�"�(�(�,@�,@�,B�#C�D�	E�F�
(�F�5�
(�#�"��[�[���Z�&�!��5�(�6�(�0�.�?�,�?�E�&
@�	P�6�
@��[�[���<��<��[�[����	�	�	#�	�	�	,�

��	�	�
�)�
�)�
?�A�?�?�F�,�G�?�<�,�4?�=�?�?�?�,�(��[�[���W�|�r�|�|�B��';�R�����&L�M�
>�N�
>�	,��[�[����(F��G��[�[���X�'B�C�G%�D�H�G%�R�[�[���[�Q�C�4�&��?�b�T�Q�C�5�M�*J�K�2�L�2�
�[�[���X�'B�C�
3�D�
3�,�)�/�
P�?�*?� �
?�<�L�,�	E�?�?�>�?�?�N�?�>�>�>�%��D�?�I�?�?�?�D� <�=�L�,?�&��
�[�[���W�s�D�k�2�9�3�9��[�[���T�C�"�%�%���r�u�u�c�#B�C��[�[���W�&@�A�;�B�D�;�
?�?�9�
,r*r�c	�r�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Z d�Z!d �Z"e#jHjKd!d"e&jNd"d"g�e&jNd"ggd"ggg�g�d#��Z(d$�Z)d%�Z*y&)'�
TestBroadcastc��d|_y)Ni�[r�rFs r(r�zTestBroadcast.setup_methodWs	����	r*c��tt|j��}dg}dg}|j}t	j
gd��}tt|j��}|j|dz|�}t
||d��tt|j��}|j||dz�}t
||d��y)Nrr=)g�4�
7^�?g�F]
"�?g�� .�?r�r�r�r.)r4r[r\r]r/rQrds       r(r0zTestBroadcast.test_uniformZs����7�4�9�9�-�.���c���s���.�.���(�(�Q�R���7�4�9�9�-�.������a���.��!�&�'�2�>��7�4�9�9�-�.������T�A�X�.��!�&�'�2�>r*c���dg}dg}dg}tt|j��}tjgd��}tt|j��}|j|dz|�}t
||d��tt|j
|dz|�tt|j��}|j
}|||dz�}t
||d��tt|||dz�y)Nrr=rB)gw-D���ؿgn�0_x�?g�ʊ;<.�?r�r�r�)	rrrr9r{r�rrrE)r4r�rx�	bad_scaler[rQrdr�s        r(r�zTestBroadcast.test_normalis����c������D�	��7�4�9�9�-�.���(�(�S�T���7�4�9�9�-�.�����s�Q�w��.��!�&�'�2�>��j�&�-�-��q��)�D��7�4�9�9�-�.��������U�Q�Y�'��!�&�'�2�>��j�&�#�y�1�}�=r*c��dg}dg}dg}dg}tjgd��}tt|j��}|j
}||dz|�}t
||d��tt||dz|�tt||dz|�tt|j��}|j||dz�}t
||d��y)	Nr=rUrBrI)gf�8���?g��%�eo�?g�$q?���?r�r�r�)	r9r{rrrrNrrrE)	r4r�r��bad_a�bad_brQr[rNrds	         r(rOzTestBroadcast.test_beta{s���
�C��
�C���������(�(�Q�R���7�4�9�9�-�.���{�{���a�!�e�Q���!�&�'�2�>��j�$���	�1�5��j�$��A��u�5��7�4�9�9�-�.�����Q��A��&��!�&�'�2�>r*c��dg}dg}tjgd��}tt|j��}|j|dz�}t
||d��tt|j
|dz�y�Nr=rB)g`��ʄ�?g�E��]�?g�
��?r�r�r�)	r9r{rrrrsrrrE�r4rxryrQr[rds      r(rtzTestBroadcast.test_exponential�sh������D�	��(�(�P�Q���7�4�9�9�-�.���#�#�E�A�I�.��!�&�'�2�>��j�&�"4�"4�i�!�m�Dr*c���dg}dg}tjgd��}tt|j��}|j
}||dz�}t
||d��tt||dz�yr~)	r9r{rrrrrrrE)r4rz�	bad_shaperQr[�	std_gammards       r(rz!TestBroadcast.test_standard_gamma�sg������D�	��(�(�P�Q���7�4�9�9�-�.���)�)�	��5�1�9�%��!�&�'�2�>��j�)�Y��]�;r*c��dg}dg}dg}dg}tjgd��}tt|j��}|j
}||dz|�}t
||d��tt||dz|�tt||dz|�tt|j��}|j
}|||dz�}t
||d��tt|||dz�tt|||dz�y)	Nr=rUrBrI)g3��ʄ�?gJE��]�?g�
��?r�r�r�)	r9r{rrrr�rrrE)	r4rzrxr�ryrQr[r�rds	         r(r�zTestBroadcast.test_gamma�s����������D�	��D�	��(�(�P�Q���7�4�9�9�-�.�������u�q�y�%�(��!�&�'�2�>��j�%��Q���>��j�%����I�>��7�4�9�9�-�.�������u�e�a�i�(��!�&�'�2�>��j�%��E�A�I�>��j�%��	�A�
�>r*c��dg}dg}dg}dg}tjgd��}tt|j��}|j
}||dz|�}t
||d��tt||dz|�tt||dz|�tt|j��}|j
}|||dz�}t
||d��tt|||dz�tt|||dz�y)	Nr=rUrBrI)g�M3B��?gybi��@g0���?r�r�r�)	r9r{rrrr}rrrE)	r4r�r��	bad_dfnum�	bad_dfdenrQr[r}rds	         r(r~zTestBroadcast.test_f�s����������D�	��D�	��(�(�Q�R���7�4�9�9�-�.���H�H���5�1�9�e�$��!�&�'�2�>��j�!�Y��]�E�:��j�!�U�Q�Y�	�:��7�4�9�9�-�.���H�H���5�%�!�)�$��!�&�'�2�>��j�!�Y���	�:��j�!�U�I��M�:r*c
��dg}dg}dg}dg}dg}dg}tjgd��}tt|j��}|j
}	|	|dz||�}
t
|
|d�	�tjtj|	||tjgdz���sJ�tt|	|dz||�tt|	|dz||�tt|	|dz||�tt|j��}|j
}	|	||dz|�}
t
|
|d�	�tt|	||dz|�tt|	||dz|�tt|	||dz|�tt|j��}|j
}	|	|||dz�}
t
|
|d�	�tt|	|||dz�tt|	|||dz�tt|	|||dz�y)
NrUr�r�rrBrI)gŜ,n�1@g�!�6�)@g���9��?r�r�)r9r{rrrr�rrqr�r`rrE)r4r�r�r�r�r��bad_noncrQr[�nonc_frds           r(r�zTestBroadcast.test_noncentral_f�s����������s���C�	��D�	��4���(�(�R�S���7�4�9�9�-�.���$�$�����	�5�$�/��!�&�'�2�>��v�v�b�h�h�v�e�U�R�V�V�H�q�L�A�B�C�C�C��j�&�)�a�-���E��j�&�%�!�)�Y��E��j�&�%�!�)�U�H�E��7�4�9�9�-�.���$�$����u�q�y�$�/��!�&�'�2�>��j�&�)�U�Q�Y��E��j�&�%��Q���E��j�&�%����H�E��7�4�9�9�-�.���$�$����u�d�Q�h�/��!�&�'�2�>��j�&�)�U�D�1�H�E��j�&�%��D�1�H�E��j�&�%���1��Er*c��tt|j��}tjddg�}|jdddd��}t
||d��y)NgZ\���#�?gDq�w��?r�rUr�r�r�)rrrr9r{r�r)r4r[rQrds    r(�test_noncentral_f_small_dfz(TestBroadcast.test_noncentral_f_small_df�sN���7�4�9�9�-�.���(�(�,�o�>�?���$�$�S�#�q�q�$�9��!�&�'�2�>r*c��dg}dg}tjgd��}tt|j��}|j|dz�}t
||d��tt|j
|dz�y)Nr=rB)g���C{��?g7Q��#��?g%h�1T�@r�r�r�)	r9r{rrrrUrrrE�r4r��bad_dfrQr[rds      r(rVzTestBroadcast.test_chisquare�sh���S������(�(�P�Q���7�4�9�9�-�.���!�!�"�q�&�)��!�&�'�2�>��j�&�"2�"2�F�Q�J�?r*c��dg}dg}dg}dg}tjgd��}tt|j��}|j
}||dz|�}t
||d��tt||dz|�tt||dz|�tt|j��}|j
}|||dz�}t
||d��tt|||dz�tt|||dz�y)	Nr=rUrBrI)g-��S��?g�[�@gr�3/�.�?r�r�r�)	r9r{rrrr�rrrE)	r4r�r�r�r�rQr[�nonc_chirds	         r(r�z'TestBroadcast.test_noncentral_chisquare�s����S���s������4���(�(�O�P���7�4�9�9�-�.���.�.���"�q�&�$�'��!�&�'�2�>��j�(�F�Q�J��=��j�(�B��F�H�=��7�4�9�9�-�.���.�.���"�d�Q�h�'��!�&�'�2�>��j�(�F�D�1�H�=��j�(�B��1��=r*c��dg}dg}tjgd��}tt|j��}|j|dz�}t
||d��tt|j
|dz�y)Nr=rB)g
��>�Q��g��{��g�,��e�?r�r�r�)	r9r{rrrr$rrrEr�s      r(r%zTestBroadcast.test_standard_tsh���S������(�(�S�T���7�4�9�9�-�.���"�"�2��6�*��!�&�'�2�>��j�&�"3�"3�V�a�Z�@r*c���dg}dg}dg}tjgd��}tt|j��}|j|dz|�}t
||d��tt|j
|dz|�tt|j��}|j||dz�}t
||d��tt|j
||dz�y)NrUr=rB)g�D�()@g,)ʸ�@gP��o��r�r�r�)	r9r{rrrrVrrrE)r4r�rU�	bad_kapparQr[rds       r(rWzTestBroadcast.test_vonmisess����S������D�	��(�(�R�S���7�4�9�9�-�.������a���/��!�&�'�2�>��j�&�/�/�2��6�9�E��7�4�9�9�-�.������U�Q�Y�/��!�&�'�2�>��j�&�/�/�2�y�1�}�Er*c��dg}dg}tjgd��}tt|j��}|j|dz�}t
||d��tt|j
|dz�y)Nr=rB)g�/h����?gc��E��?g/g�V��?r�r�r�)	r9r{rrrr�rrrE�r4r�r{rQr[rds      r(r�zTestBroadcast.test_pareto.sd��
�C������(�(�Q�R���7�4�9�9�-�.�����q�1�u�%��!�&�'�2�>��j�&�-�-����;r*c��dg}dg}tjgd��}tt|j��}|j|dz�}t
||d��tt|j
|dz�yr~)	r9r{rrrrkrrrEr�s      r(rlzTestBroadcast.test_weibull8sd��
�C������(�(�P�Q���7�4�9�9�-�.������A��&��!�&�'�2�>��j�&�.�.�%�!�)�<r*c��dg}dg}tjgd��}tt|j��}|j|dz�}t
||d��tt|j
|dz�y)Nr=rB)g���T�?g��ʥ��?gK�ܮc�?r�r�r�)	r9r{rrrr�rrrEr�s      r(r�zTestBroadcast.test_powerBsd��
�C������(�(�Q�R���7�4�9�9�-�.�����a�!�e�$��!�&�'�2�>��j�&�,�,���	�:r*c��dg}dg}dg}tjgd��}tt|j��}|j
}||dz|�}t
||d��tt||dz|�tt|j��}|j
}|||dz�}t
||d��tt|||dz�y)Nrr=rB)gh&�B��g�s���gR�#���?r�r�r�)	r9r{rrrr�rrrE)r4r�rxryrQr[r�rds        r(r�zTestBroadcast.test_laplaceLs����c������D�	��(�(�S�T���7�4�9�9�-�.���.�.����q��%�(��!�&�'�2�>��j�'�3��7�I�>��7�4�9�9�-�.���.�.����e�a�i�(��!�&�'�2�>��j�'�3�	�A�
�>r*c��dg}dg}dg}tjgd��}tt|j��}|j
}||dz|�}t
||d��tt||dz|�tt|j��}|j
}|||dz�}t
||d��tt|||dz�y)Nrr=rB)g�s�4�?g�$Cw%T�?g���տr�r�r�)	r9r{rrrr�rrrE)r4r�rxryrQr[r�rds        r(r�zTestBroadcast.test_gumbel^s����c������D�	��(�(�R�S���7�4�9�9�-�.��������a���'��!�&�'�2�>��j�&�#��'�9�=��7�4�9�9�-�.��������U�Q�Y�'��!�&�'�2�>��j�&�#�y�1�}�=r*c��dg}dg}dg}tjgd��}tt|j��}|j|dz|�}t
||d��tt|j
|dz|�tt|j��}|j||dz�}t
||d��tt|j
||dz�t|jdd	�d�y)
Nrr=rB)g�$�D���g�X��P���g�,��?r�r�r�rgrl)
r9r{rrrr�rrrEr)r4r�rxryrQr[rds       r(r�zTestBroadcast.test_logisticps����c������D�	��(�(�Q�R���7�4�9�9�-�.������q��%�0��!�&�'�2�>��j�&�/�/�3��7�I�F��7�4�9�9�-�.������e�a�i�0��!�&�'�2�>��j�&�/�/�3�	�A�
�F��V�_�_�S�#�.��4r*c��dg}dg}dg}tjgd��}tt|j��}|j
}||dz|�}t
||d��tt||dz|�tt|j��}|j||dz�}tt|j
||dz�y)Nrr=rB)g�c���?g���u�@g�V��Q�?r�r�r�)	r9r{rrrr�rrrE)r4r�r��	bad_sigmarQr[r�rds        r(r�zTestBroadcast.test_lognormal�s����s������D�	��(�(�Q�R���7�4�9�9�-�.���$�$�	��4�!�8�U�+��!�&�'�2�>��j�)�T�A�X�y�A��7�4�9�9�-�.���!�!�$���	�2���j�&�"2�"2�D�)�a�-�Hr*c��dg}dg}tjgd��}tt|j��}|j|dz�}t
||d��tt|j
|dz�y)Nr=rB)gs�(��?g4
mK���?g�Vk�+�?r�r�r�)	r9r{rrrr�rrrErs      r(r�zTestBroadcast.test_rayleigh�sj������D�	��(�(�
!�
���7�4�9�9�-�.��������+��!�&�'�2�>��j�&�/�/�9�q�=�Ar*c�F�dg}dg}dg}dg}tjgd��}tt|j��}|j|dz|�}t
||d��tt|j
|dz|�tt|j
|dz|�tt|j��}|j||dz�}t
||d��tt|j
||dz�tt|j
||dz�y)	NrYr=rrI)g�k7��Z�?g��*}z9�?gc���-	�?r�r�r�)	r9r{rrrrhrrrE)r4r�rx�bad_meanryrQr[rds        r(rizTestBroadcast.test_wald�s����u������3���D�	��(�(�O�P���7�4�9�9�-�.�����T�A�X�u�-��!�&�'�2�>��j�&�+�+�x�!�|�U�C��j�&�+�+�t�a�x��C��7�4�9�9�-�.�����T�5�1�9�-��!�&�'�2�>��j�&�+�+�x����C��j�&�+�+�t�Y��]�Cr*c��dg}dg}dg}dg}dg}|dz\}}tjgd��}tt|j��}	|	j
}
|
|dz||�}t
||d��tt|
|dz||�tt|
|dz||�tt|
|dz||�tt|j��}	|	j
}
|
||dz|�}t
||d��tt|
||dz|�tt|
||dz|�tt|
||dz|�tt|j��}	|	j
}
|
|||dz�}t
||d��tt|
|||dz�tt|
|||dz�tt|
|||dz�tt|
dd	d
�tt|
ddd
�tt|
ddd�y)Nr=r�rUr�)gR8T��>�?gK���?g�;��>h@r�r�rrlg4@g9@)	r9r{rrrr*rrrE)r4r'r)r(�bad_left_one�bad_mode_one�bad_left_two�bad_mode_tworQr[r*rds            r(r+zTestBroadcast.test_triangular�s����s������s���s���s��%*�Q�Y�"��l��(�(�Q�R���7�4�9�9�-�.���&�&�
��D�1�H�d�E�2��!�&�'�2�>��j�*�l�Q�.>��e�L��j�*�d�Q�h��e�L��j�*�l�Q�.>���	��7�4�9�9�-�.���&�&�
��D�$��(�E�2��!�&�'�2�>��j�*�l�D�1�H�e�L��j�*�d�L�1�4D�e�L��j�*�l�L�1�<L��	��7�4�9�9�-�.���&�&�
��D�$���	�2��!�&�'�2�>��j�*�l�D�%�!�)�L��j�*�d�L�%�!�)�L��j�*�l�L��a�i�	!�	�j�*�c�2�s�;��j�*�c�3��<��j�*�c�3��<r*c�N�dg}dg}dg}dg}dg}tjgd��}tt|j��}|j
}||dz|�}	t
|	|�tt||dz|�tt||dz|�tt||dz|�tt|j��}|j||dz�}	t
|	|�tt|||dz�tt|||dz�tt|||dz�y)Nr=rYrBro�rrr=r�)	r9r{rrrr\rrrE)
r4r�r]�bad_n�	bad_p_one�	bad_p_tworQr[�binomrds
          r(rSzTestBroadcast.test_binomial�s��
�C��
�E������D�	��E�	��(�(�9�%���7�4�9�9�-�.�������q�1�u�a����6�7�+��j�%����A�6��j�%��Q��	�:��j�%��Q��	�:��7�4�9�9�-�.������A��E�*���6�7�+��j�%���A��6��j�%��I��M�:��j�%��I��M�:r*c�t�dg}dg}dg}dg}dg}tjgd�tj��}tt	|j
��}|j}||dz|�}	t|	|�tt||dz|�tt||dz|�tt||dz|�tt	|j
��}|j}|||dz�}	t|	|�tt|||dz�tt|||dz�tt|||dz�y)Nr=rYrBro)rrUr=rWr�)
r9r{r�rrrr�rrrE)
r4r�r]r�r�r�rQr[�	neg_binomrds
          r(r�z$TestBroadcast.test_negative_binomial�s��
�C��
�E������D�	��E�	��(�(�9�B�H�H�5���7�4�9�9�-�.���,�,�	��1�q�5�!�$���6�7�+��j�)�U�Q�Y��:��j�)�Q��U�I�>��j�)�Q��U�I�>��7�4�9�9�-�.���,�,�	��1�a�!�e�$���6�7�+��j�)�U�A��E�:��j�)�Q�	�A�
�>��j�)�Q�	�A�
�>r*c�4�dg}dg}tjgd��}tt|j��}|j
}|dzg}|j}||dz�}t||�tt||dz�tt||dz�y)Nr=rB)rrr�rUr�)
r9r{rrr�_poisson_lam_maxr�rrrE)	r4r��bad_lam_onerQr[�max_lam�bad_lam_twor�rds	         r(r�zTestBroadcast.test_poisson		s����c���d���(�(�9�%���7�4�9�9�-�.���)�)����{�m���.�.����q��!���6�7�+��j�'�;��?�;��j�'�;��?�;r*c��dg}dg}tjgd��}tt|j��}|j
}||dz�}t
||�tt||dz�tjd��5tt|tj�tt|ddtjg�ddd�y#1swYyxYw)NrUr)r=r�r=r�r�r�)r9r{rrrrprrrEr�r`)r4r�r{rQr[rprds       r(rqzTestBroadcast.test_zipf	s���
�C������(�(�9�%���7�4�9�9�-�.���{�{���a�!�e����6�7�+��j�$���	�2�
�[�[��
*�	<��*�d�B�F�F�3��*�d�Q��2�6�6�N�;�	<�	<�	<�s
�	AC�Cc��dg}dg}dg}tjgd��}tt|j��}|j
}||dz�}t
||�tt||dz�tt||dz�y)NrYrBror�r�)	r9r{rrrr�rrrE)r4r]r�r�rQr[r�rds        r(r�zTestBroadcast.test_geometric&	s{��
�E���D�	��E�	��(�(�9�%���7�4�9�9�-�.���$�$�	��1�q�5�!���6�7�+��j�)�Y��]�;��j�)�Y��]�;r*c��dg}dg}dg}dg}dg}dg}dg}tjgd��}tt|j��}	|	j|dz||�}
t
|
|�tt|	j
|dz||�tt|	j
|dz||�tt|	j
|dz||�tt|	j
|dz||�tt|j��}	|	j||dz|�}
t
|
|�tt|	j
||dz|�tt|	j
||dz|�tt|	j
||dz|�tt|	j
||dz|�tt|j��}	|	j
}||||dz�}
t
|
|�tt||||dz�tt||||dz�tt||||dz�tt||||dz�tt|ddd	�tt|ddd	�tt|ddd�tt|ddd
�tt|ddd	�tt|dd
d�tt|dddgd�y)Nr=rUrBrIr�r�r�rr�r�i@i�lr�i r.)	r9r{rrrr�rrrE)r4�ngood�nbadr��	bad_ngood�bad_nbad�bad_nsample_one�bad_nsample_tworQr[rd�	hypergeoms            r(r�z!TestBroadcast.test_hypergeometric3	s}������s���#���D�	��4���$���#���(�(�9�%���7�4�9�9�-�.���&�&�u�q�y�$��@���6�7�+��j�&�"7�"7��Q���g�V��j�&�"7�"7����H�g�V��j�&�"7�"7����D�/�Z��j�&�"7�"7����D�/�Z��7�4�9�9�-�.���&�&�u�d�Q�h��@���6�7�+��j�&�"7�"7��D�1�H�g�V��j�&�"7�"7���1��g�V��j�&�"7�"7���q��/�Z��j�&�"7�"7���q��/�Z��7�4�9�9�-�.���)�)�	��5�$��!��4���6�7�+��j�)�Y��g��k�J��j�)�U�H�g��k�J��j�)�U�D�/�A�:M�N��j�)�U�D�/�A�:M�N��j�)�R��R�8��j�)�R��R�8��j�)�R��R�8��j�)�R��R�8�	�j�)�U�B��;��j�)�S�%��<��j�)�S�5�%�.�$�Gr*c��dg}dg}dg}tjgd��}tt|j��}|j
}||dz�}t
||�tt||dz�tt||dz�y)NrYrUrB)r=r=r=r�)	r9r{rrrr�rrrE)r4r]r�r�rQr[r�rds        r(r�zTestBroadcast.test_logseries`	s{��
�E���C�	��D�	��(�(�9�%���7�4�9�9�-�.���$�$�	��1�q�5�!���6�7�+��j�)�Y��]�;��j�)�Y��]�;r*c��tt|j��}|jddgdgdzd��}t	j
gd�gd�ggd	�gd
�ggd�gd�ggtj�
�}t||�tt|j��}|jddgdgdz�}t	j
gd�gd�gtj�
�}t||�tt|j��}|jddgdgdzgdz�}t	j
gd�gd�gtj�
�}t||�tt|j��}|jdgdggdgdzgdz�}t	j
gd�gd�ggd�gd
�ggtj�
�}t||�y)Nrpr�r�r�r�r�)rrrUr=rUr)rUr�r�r�rUr�)r=rr=rrUr=)r�rUrUr=r�r�)rrUrr=rUr)r�rUr�r�r�rprWrU)rrrUr=r=r=)r�rUr�r�rpr�)rrrrir9r{r�rr�s    r(r�zTestBroadcast.test_multinomialm	s����7�4�9�9�-�.���#�#�Q��G�f�X��\��#�G���(�(�/�/�1�/�/�1�/�/�1�	2�
:<���C��	�6�7�+��7�4�9�9�-�.���#�#�Q��G�f�X��\�:���(�(�.�.�0�79�x�x�A���6�7�+��7�4�9�9�-�.���#�#�Q��G�v�h��l�^�a�-?�@���(�(�.�.�0�79�x�x�A���6�7�+��7�4�9�9�-�.���#�#�a�S�2�$�K�6�(�Q�,��!�1C�D���(�(�/�/�1�/�/�1�2�:<���C��	�6�7�+r*r�rc�r�tt|j��}tjdgdz�}|j||�}t
|t�r
t�n|j}|dz}|j|k(sJ�tj||g�}|j||�}tj||jdd�dz}|j|k(sJ�tj|g|gg�}|j||�}tj||jdd�}|j|dzk(sJ�|j||d|z��}|jd|zdzk(sJ�tjt�5|j||d��}ddd�y#1swYyxYw)Nr�r�)r�rBr�r�)r=r=r=r=r=r=)rrrr9r{rir�rVr�rzr��broadcast_shapesr�r�rE)r4r�r[r�rd�n_shaper�s       r(�test_multinomial_pval_broadcastz-TestBroadcast.test_multinomial_pval_broadcast�	s����7�4�9�9�-�.�����%��1��%���#�#�A�u�-��'��3�/�%�'�Q�W�W�� �4����|�|�~�-�-�-��	�	�5�%�.�)���#�#�A�u�-���,�,�W�e�k�k�#�2�6F�G�$�N���|�|�~�-�-�-��	�	�E�7�U�G�,�-���#�#�A�u�-���,�,�W�e�k�k�#�2�6F�G���|�|�~��4�4�4�4��#�#�A�u�6�N�3J�#�K���|�|�v��6��=�=�=�=�
�]�]�:�
&�	A��'�'��5�x�'�@�F�	A�	A�	A�s�F-�-F6c���tt|j��}dgdzdgdzg}tt|j
d|�tt|j
dd�y)Nr�r�r�r=rY)rrrrrEri)r4r[r�s   r(�test_invalid_pvals_broadcastz*TestBroadcast.test_invalid_pvals_broadcast�	sS���7�4�9�9�-�.����1��u�g��k�*���j�&�"4�"4�a��?��j�&�"4�"4�a��=r*c��tt|j��}|jt	j
dd�dgdz�}|jdk(sJ�|jdt	j
d��}|jdk(sJ�|jt	j
dd�t	j
d	��}|jd	k(sJ�y)
N)rrr��i8r�r�)rrr�r�r�)rrr)r�rr�)r�rr�r�)rrrrir9r�rzr�s   r(�test_empty_outputsz TestBroadcast.test_empty_outputs�	s����7�4�9�9�-�.���#�#�B�H�H�Z��$>���!��L���|�|�}�,�,�,��#�#�B�����(=�>���|�|�{�*�*�*��#�#�B�H�H�Y��$=�$&�H�H�\�$:�<���|�|�|�+�+�+r*N)+rNrOrPr�r0r�rOrtrr�r~r�r�rVr�r%rWr�rlr�r�r�r�r�r�rir+rSr�r�rqr�r�r�r�r�r�r�r9r{r�r�r�rQr*r(ruruTs���
?�>�$?�$E�	<�?�*;�*!F�F?�@�>�*A�F� <�=�;�?�$>�$5�"I� B�D�&&=�P;�.?�0
<�<�<�+H�Z<�,�>�[�[���S�2�#+�2�8�8�R��H�#5�#+�2�8�8�r�d�V�r�d�V�,<�#=�#%��
A��
A�.>�,r*ruzcan't start threadr�c�*�eZdZd�Zd�Zd�Zd�Zd�Zy)�
TestThreadc�$�td�|_y)Nr�)r8�seedsrFs r(r�zTestThread.setup_method�	s
���1�X��
r*c��ddlm}tjt	|j
�f|z�}tjt	|j
�f|z�}t
|j
|�D��cgc]#\}}||tt|��|f����%}}}|D�	cgc]}	|	j���c}	|D�	cgc]}	|	j���c}	t
|j
|�D] \}}|tt|��|��"tj�jjdk(r tjdk(r
t!||�yt#||�ycc}}wcc}	wcc}	w)Nr)�Thread)�target�argsr��win32)�	threadingr�r9r�rMr��ziprr�start�join�intprXr�r;�platformrr)
r4�function�szr��out1�out2r5�o�trss
          r(�check_functionzTestThread.check_function�	s#��$��x�x��T�Z�Z��*�R�/�0���x�x��T�Z�Z��*�R�/�0���T�Z�Z��.�
0���A��8�9�W�Q�Z�+@�!�*D�
E�
0��
0���q��������a��������
�
�D�)�	/�D�A�q��Y�w�q�z�*�A�.�	/��7�7�9�?�?�#�#�q�(�S�\�\�W�-D�%�d�D�1��t�T�*��
0����s�8(E0�'E6�E;c�0�d�}|j|d��y)Nc�.�|jd��|d<y)Nr�r�.)r��r�r:s  r(�
gen_randomz*TestThread.test_normal.<locals>.gen_random�	s���|�|��|�/�C��Hr*)r��r��r��r4r�s  r(r�zTestThread.test_normal�	s��	0�	
���J�8��4r*c�0�d�}|j|d��y)Nc�T�|jtjd���|d<y)N�rer.rw.)rsr9r�r�s  r(r�z'TestThread.test_exp.<locals>.gen_random�	s"���(�(�r�w�w�{�/C�(�D�C��Hr*r�r�r�r�s  r(�test_expzTestThread.test_exp�	s��	E�	
���J�;��7r*c�0�d�}|j|d��y)Nc�:�|jddgdzd��|d<y)Nrr�r�r�r�.)rir�s  r(r�z/TestThread.test_multinomial.<locals>.gen_random�	s#���(�(��f�X��\��(�F�C��Hr*)r�r�r�r�r�s  r(r�zTestThread.test_multinomial�	s��	G�	
���J�:��6r*N)rNrOrPr�r�r�r�r�rQr*r(r�r��	s���+�,5�8�7r*r�c�*�eZdZd�Zd�Zd�Zd�Zd�Zy)�TestSingleEltArrayInputc��tjdg�|_tjdg�|_tjdg�|_d|_y)NrUr�r�r)r9r{�argOne�argTwo�argThree�tgtShaperFs r(r�z$TestSingleEltArrayInput.setup_method�	s<���h�h��s�m����h�h��s�m������!��
��
���
r*c�d�tjtjtjtjtj
tjtjtjtjtjtjtjf}tjtjf}|D]U}||vr|tjdg��}n||j�}t!|j"|j$��Wyr�)r[rsrrUr$r�rkr�r�r�rpr�r�r9r{r�rrzr�)r4�funcs�	probfuncsr8r:s     r(�test_one_arg_funcsz*TestSingleEltArrayInput.test_one_arg_funcs�	s����#�#�V�%:�%:��!�!�6�#4�#4����������v����������!�!�6�#3�#3�5���%�%�v�'7�'7�8�	��	3�D��y� ��2�8�8�S�E�?�+���4�;�;�'������D�M�M�2�	3r*c��tjtjtjtjtj
tjtjtjtjtjtjtjtjtjf}tjtjf}|D]�}||vrtj dg�}n|j"}||j$|�}t'|j(|j*�||j$d|�}t'|j(|j*�||j$|d�}t'|j(|j*���y)NrYr)r[r/r�rNr�r}r�rVr�r�r�r�rhr\r�r9r{r�r�rrzr�)r4r�r�r8r�r:s      r(�test_two_arg_funcsz*TestSingleEltArrayInput.test_two_arg_funcs
s�����������f�l�l����6�6�6����&�.�.��������!�!�6�;�;����&�":�":�
<���_�_�f�&>�&>�?�	��	3�D��y� ����3�%��������t�{�{�F�+�C�����D�M�M�2��t�{�{�1�~�v�.�C�����D�M�M�2��t�{�{�F�1�I�.�C�����D�M�M�2�	3r*c	��tjtjtjtjtj
tjtjtjtjg	}tj}tjdg�}tjdg�}|D]�}|||||��}t|j|j�||d|||��}t|j|j�|||d||��}t|j|j���y)Nr=rr)r9rr6r9r4r7r5ryr�r8r[r2r{rrzr�)r4r)rr8r]r\r
r:s        r(r�z%TestSingleEltArrayInput.test_integers
s������"�'�'�2�8�8�R�X�X�r�y�y����2�9�9�b�h�h��	�	�;�������x�x���}���h�h��s�m���	3�B��s�D�8�2�>�C�����D�M�M�2��s�1�v�t�h�b�A�C�����D�M�M�2��s�D��G�h�b�A�C�����D�M�M�2�	3r*c�,�tjtjtjg}|D]�}||j|j
|j�}t|j|j�||jd|j
|j�}t|j|j�||j|j
d|j�}t|j|j���y)Nr)
r[r�r*r�r�r�r�rrzr�)r4r�r8r:s    r(�test_three_arg_funcsz,TestSingleEltArrayInput.test_three_arg_funcs/
s����$�$�f�&7�&7��&�&�(���	3�D��t�{�{�D�K�K����?�C�����D�M�M�2��t�{�{�1�~�t�{�{�D�M�M�B�C�����D�M�M�2��t�{�{�D�K�K��N�D�M�M�B�C�����D�M�M�2�	3r*N)rNrOrPr�r�r�r�r�rQr*r(r�r��	s���3�&3�63�"3r*r�r[c�x�|d}|d}t|�}|j|�|jdd}tjdk(r|j�}t
j|�}|jdd|ddk(sJ�|j�|ddk(sJ�|j�}|jdd}tjdk(r|j�}t
j|�}|jdd|d	dk(sJ�|j�|d	dk(sJ�y)
Nrrr�r�rsrrrr)
rr>r�r;r<r=r>r?r@r)r[rr�mt19937r�r?rs       r(�test_jumpedr�>
s7���&�>�D��7�O�E��d�m�G����u��
�-�-��
 ��
'�C�
�}�}����l�l�n��
�^�^�C�
 �F��=�=��!�%�(�F�9�,=�e�,D�D�D�D������	�!2�<�!@�@�@�@�
�^�^�
�F�
�,�,�w�
��
&�C�
�}�}����l�l�n��
�^�^�C�
 �F��<�<�� ��'�6�(�+;�E�+B�B�B�B�������!1�,�!?�?�?�?r*c��tjd�}tjd�}d}tj||d��jdk(sJ�tjt�5tj|||��ddd�tjt�5tj||d��ddd�tjt�5tj||d��ddd�tjd�}tjt�5tj||��ddd�tjt�5tj|d��ddd�tjt�5tj|d��ddd�tj|�}tjt�5tj||�	�ddd�tjt�5tjd
ddgd
��ddd�tjt�5tjd
dgdd
��ddd�tjt�5tjd
dgddgd
��ddd�tjt�5tjddgddgd
��ddd�tjdd��}tjdd��}tjdd��}tj|||�jdk(sJ�tjtd��5tj|||d��ddd�y#1swY��)xYw#1swY���xYw#1swY���xYw#1swY���xYw#1swY��bxYw#1swY��6xYw#1swY���xYw#1swY���xYw#1swY���xYw#1swY��fxYw#1swY��5xYw#1swYyxYw)Nr�)r�r�)rr�rU)rpr�r�r�)r=r�)r�r=r=)r�rGr=r�gffffff�?)rUr=rUrpzOutput size \(6, 5, 1, 1\) isr�)r�rpr=r=)r9r�r[r�rzr�r�rErr�r\rirUr�)r�r�r�rzr:r�r�r�s        r(�test_broadcast_size_errorr�Z
sY��	�����B��G�G�F�O�E��D��=�=��U��=�3�9�9�Y�F�F�F�	���z�	"�,��
�
�b�%�d�
�+�,�	���z�	"�.��
�
�b�%�f�
�-�.�	���z�	"�1��
�
�b�%�i�
�0�1�
�G�G�F�O�E�	���z�	"�0����e�$��/�0�	���z�	"�0����e�$��/�0�	���z�	"�-����e�!��,�-�
�(�(�4�.�C�	���z�	"�.����e���-�.�
���z�	"�4�����C��:�F��3�4�	���z�	"�2�����A���&��1�2�	���z�	"�9�����A���c�
���8�9�	���z�	"�:����A�q�6�B��8�&��9�:�	������#�A�������(�A�������+�A����q�!�Q�'�-�-��:�:�:�	���z�)I�	J�8����A�q�!�,��7�8�8�E,�,��.�.��1�1��0�0��0�0��-�-��.�.��4�4��2�2��9�9��:�:��8�8�s��-N-�'N:�!O�0O�)O!�"O.�0O;�)P�%P�!P"�P/�
P<�-N7�:O�O�O�!O+�.O8�;P�P�P�"P,�/P9�<Qc��tjd�}tjd�}tj||d��t	j
t�5tj||d��ddd�y#1swYyxYw)Nr�r�rU)r9r�r[r�r�r�rE)r�r�s  r(�test_broadcast_size_scalarr�
sa��	�����B��G�G�A�J�E�
�M�M�"�e�!�M�$�	���z�	"�)��
�
�b�%�a�
�(�)�)�)�s�A>�>Bc�v�ggdg}ttd��}t|j|�|dgggk(sJ�yr�)rrr
r�)�seq�gens  r(�test_ragged_shuffler�
s=��
�r�1�+�C�
�G�A�J�
�C��s�{�{�C�(��1�b�"�+���r*r]rIr)c���ttd��}|rdnd}tjt|��5|j||��ddd�|rdnd}tjt|��5|jd||��ddd�tjt|��5|jdg||��ddd�y#1swY��xYw#1swY�OxYw#1swYyxYw)	Nrzhigh < 0z	high <= 0r�r�z
low > highzlow >= highrB)rrr�r�rEr2)r]r)r�msgs    r(�!test_single_arg_integer_exceptionr�
s����G�A�J�
�C� �*�k�C�	���z��	-�.����T�H��-�.�"�,�
�C�	���z��	-�2����R����1�2�	���z��	-�4����b�T�4�(��3�4�4�.�.��2�2��4�4�s#�C
�3C�+C"�
C�C�"C+rX�f4�f8c�r�tjdd|��}gd�}tjtd��5t
j
|||��ddd�tjtd��5t
j
|||j|��ddd�y#1swY�QxYw#1swYyxYw)	Nr��F)�orderrXr�zSupplied output arrayr�rr)r9r�r�r�rEr[rrz)rXr:rzs   r(�test_c_contig_req_outr
�
s���
�(�(�6��E�
2�C��E�	���z�)@�	A�;����e��E��:�;�	���z�)@�	A�K����e��3�9�9�E��J�K�K�;�;��K�K�s�B!�4$B-�!B*�-B6rr�C�distc��tjd||��}|||��}||usJ�||||j��}||usJ�y)Nr�)rXrr)r:rXr�)r9r�rz)rrrXr:�variatess     r(�test_contig_req_outr�
sL��

�(�(�6��e�
4�C���5�)�H��s�?��?���5�s�y�y�9�H��s�?��?r*c��tjjtjjd��}|j	d�|j�\}\}}|jjdk(sJ�t|�|d�}t|�|j|j_	|jj}|j|k(sJ�y)Nrr=�	PCG64DXSM)r)r9r[rrr��
__reduce__�	__class__rN�printr�r�)r��ctor�bit_gen�_r��state_bs      r(�$test_generator_ctor_old_style_pickler�
s���	���	�	�R�Y�Y�0�0��3�	4�B����q���=�=�?��D�+�7�q����%�%��4�4�4�	�$�K��n��A�	�!�H�#�M�M�A�O�O���o�o�#�#�G��=�=�G�#�#�#r*c��ddl}tjjtjj	d��}|j
j}|j|j|��}|j
j}t|j|j�t|j|j�|j
jjd�|j|j|��}|j
j}t|j|j�y)Nri�4r)
�pickler9r[rrr��seed_seq�loads�dumpsrr��pool�spawn)rr��ss�rg_plk�ss_plks     r(�#test_pickle_preserves_seed_sequencer'�
s����	���	�	�R�Y�Y�0�0��:�	;�B�	�	�	�	"�	"�B�
�\�\�&�,�,�r�*�
+�F�
�
!�
!�
*�
*�F�����6�<�<�(�����&�+�+�&������#�#�B�'�
�\�\�&�,�,�r�*�
+�F�
�
!�
!�
*�
*�F�����6�<�<�(r*�version�y�~c�0�ddl}ddl}tjj	tjjt��d}tjj|dd|�d��}|j|�5}|j|�}ddd�jjd}t|t�sJ�t|jtjj �sJ�|ddk(sJ�|ddk(sJ�y#1swY�yxYw)	Nrr�generator_pcg64_npz.pkl.gzr�l	�a*M�z�J�R�2M�P�incl	�s��N	D%(�^�6�FA)r�gzip�os�path�split�abspath�__file__r��open�loadr�r�r�rr9r[�PCG64)r(rr.�	base_path�pkl_file�gzr�r�s        r(�test_legacy_pickler:�
s��������
�
�b�g�g�o�o�h�7�8��;�I��w�w�|�|��6�/��y��@��H�
���8�	���
�[�[��_������"�"�7�+�E��b�)�$�$�$��b�&�&��	�	���8�8�8���>�C�C�C�C���<�A�A�A�A���s�D�D)7�os.pathr/r;r>r��numpyr9�numpy.exceptionsr�numpy.linalgr�
numpy.testingrrrrr	r
rrr
r�numpy.randomrrrrr[�JUMP_TEST_DATA�fixturer)r,rSrcr�r�r�r�rur�rsr�r�r�r�r�rrrr
r�rrr'r:rQr*r(�<module>rCs����
��
��&�$�;�;�;�
G�F�	�7�9�	����"d�mn�o�!c�lo�p�	���"d�mp�q�!c�lo�p�	�7��"d�mp�q�!c�lo�p�	���,����h��e�}�5��6��!6�!6�H>�>�4)�4)�nC-�C-�L,�,�DE�E�PI,�I,�X$b	,�b	,�J�����G�$8��9�+7�+7�:�+7�^R3�R3�j������>�2�@�3�@�6(8�V)��������"�r�d��,�������d�E�]�3�
4�4�-�
4�������4��,�/�K�0�K�������4��,�/�������3��*�-�������&�"8�"8�&�-�-�!H�I��J�.�0��$�)�$������S�#�J�/�B�0�Br*

Youez - 2016 - github.com/yon3zu
LinuXploit