403Webshell
Server IP : 217.160.0.135  /  Your IP : 216.73.217.37
Web Server : Apache
System : Linux www 6.18.52-i1-ampere #1203 SMP Mon Sep 14 18:29:59 CEST 2026 aarch64
User : sws1074145052 ( 1074145052)
PHP Version : 8.3.32
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /lib/python3/dist-packages/numpy/random/tests/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /lib/python3/dist-packages/numpy/random/tests/__pycache__/test_generator_mt19937.cpython-311.pyc
�

���cH����ddlZddlZddlZddlZddlmZddlmZm	Z	m
Z
mZmZm
Z
mZmZmZmZddlmZmZmZmZee����Zddddd�d	d
d�d�dd
ddd�ddd�d�gd�dddd�ddd�d�gZejdddg���d���ZGd�d��ZGd�d ��ZGd!�d"��ZGd#�d$��ZGd%�d&��ZGd'�d(��Z Gd)�d*��Z!Gd+�d,��Z"ej#�$ed-�.��Gd/�d0����Z%Gd1�d2��Z&ej#�'d3e��d4���Z(d5�Z)d6�Z*d7�Z+ej#�'d8d9d9gg��ej#�'d:ddg��d;�����Z,ej#�'d<d=d>g��d?���Z-ej#�'d<d=d>g��ej#�'d@dAdBg��ej#�'dCej.ejg��dD�������Z/dE�Z0dS)F�N)�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 �K/usr/lib/python3/dist-packages/numpy/random/tests/test_generator_mt19937.py�endpointr(&s
���=��c�2�eZdZd�Zd�Zd�Zd�Zd�Zd�ZdS)�TestSeedc��ttd����}t|�d��d��ttd����}t|�d��d��dS)Nr��������D)rrr�integers��self�ss  r'�test_scalarzTestSeed.test_scalar,sh���g�a�j�j�!�!���Q�Z�Z��%�%�s�+�+�+��g�j�)�)�*�*���Q�Z�Z��%�%�s�+�+�+�+�+r)c�@�tttd������}t|�d��d��tttjd������}t|�d��d��ttdg����}t|�d��d��ttdg����}t|�d��d��dS)Nrr-i�rr.r/r0)rr�rangerr1�np�aranger2s  r'�
test_arrayzTestSeed.test_array2s����g�e�B�i�i�(�(�)�)���Q�Z�Z��%�%�s�+�+�+��g�b�i��m�m�,�,�-�-���Q�Z�Z��%�%�s�+�+�+��g�q�c�l�l�#�#���Q�Z�Z��%�%�s�+�+�+��g�z�l�+�+�,�,���Q�Z�Z��%�%�s�+�+�+�+�+r)c��ttd����}t|�d��d��dS)Nr�i��z)rrr�
random_rawr2s  r'�test_seedsequencezTestSeed.test_seedsequence<s5���L��O�O�$�$���Q�\�\�!�_�_�j�1�1�1�1�1r)c�r�tttd��tttd��dS)N������r�	TypeErrorr�
ValueError�r3s r'�test_invalid_scalarzTestSeed.test_invalid_scalar@s,���i��$�/�/�/��j�'�2�.�.�.�.�.r)c��tttdg��tttdg��tttgd���dS)Nr@rA)r<����rBrEs r'�test_invalid_arrayzTestSeed.test_invalid_arrayEsI���i��4�&�1�1�1��j�'�B�4�0�0�0��j�'�+>�+>�+>�?�?�?�?�?r)c�F�tttt��dSr$)rrDrrrEs r'�test_noninstantized_bitgenz#TestSeed.test_noninstantized_bitgenKs���j�)�W�5�5�5�5�5r)N)	�__name__�
__module__�__qualname__r5r:r>rFrJrL�r)r'r+r++sq������,�,�,�,�,�,�2�2�2�/�/�/�
@�@�@�6�6�6�6�6r)r+c��eZdZd�Zd�ZdS)�TestBinomialc���tjdd���}dD]W}tt�d|��dk��tt�||��|���XdS)N��int��dtype)r��?r<r)r8�zerosr�random�binomialr
)r3rY�ps   r'�test_n_zerozTestBinomial.test_n_zeroPsw�����%�(�(�(���	A�	A�A��F�O�O�A�q�)�)�Q�.�/�/�/��v���u�a�8�8�%�@�@�@�@�	A�	Ar)c�\�tttjdtj��dS)Nr<)rrDrZr[r8�nanrEs r'�
test_p_is_nanzTestBinomial.test_p_is_nanYs ���j�&�/�1�b�f�=�=�=�=�=r)N)rMrNrOr]r`rPr)r'rRrROs5������A�A�A�>�>�>�>�>r)rRc�>�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	S)
�TestMultinomialc�@�t�dddg��dS)N�d皙�����?皙�����?�rZ�multinomialrEs r'�
test_basiczTestMultinomial.test_basic_s"�����3��c�
�+�+�+�+�+r)c�@�t�dgd���dS)Nrd)rerf�rkrkrgrEs r'�test_zero_probabilityz%TestMultinomial.test_zero_probabilitybs%�����3� 9� 9� 9�:�:�:�:�:r)c�>�tdt�dd��cxkodknc��t�ddd��}ttjd|k����ttj|dk����dS)N���rA�)rrZr1r8�all�r3�xs  r'�test_int_negative_intervalz*TestMultinomial.test_int_negative_intervales�����f�o�o�b�"�-�-�2�2�2�2��2�2�2�2�3�3�3��O�O�B��A�&�&�����r�Q�w��� � � ����q�2�v�������r)c	�4�ddg}tt�d|tjd����jd��tt�d|tjd����jd��tt�d|tjd����jd��tt�d|ddg��jd��tt�d|d��jd��tt�d|tjd����jd��tttjd|td����dS)NrXr<�r<rTrT�rTrTrT�rTrT)
rrZrhr8�uint32�shape�arrayrrC�float�r3r\s  r'�	test_sizezTestMultinomial.test_sizeksH��
�#�J���V�'�'��1�b�i��l�l�;�;�A�6�J�J�J��V�'�'��1�b�i��l�l�;�;�A�6�J�J�J��V�'�'��1�b�i��l�l�;�;�A�6�J�J�J��V�'�'��1�q�!�f�5�5�;�Y�G�G�G��V�'�'��1�f�5�5�;�Y�G�G�G��V�'�'��1�b�h�v�.>�.>�?�?�E��	 �	 �	 �	�i��!3�Q���A�h�h�	 �	 �	 �	 �	 r)c��tttjdddg��tttjdddg��dS)Nrd皙�����?re皙��������������?�rrDrZrhrEs r'�test_invalid_probz!TestMultinomial.test_invalid_probys>���j�&�"4�c�C��:�F�F�F��j�&�"4�c�C��:�F�F�F�F�Fr)c��tttjdddg��tttjdgdzddg��dS)NrArfrerr�rEs r'�test_invalid_nzTestMultinomial.test_invalid_n}sD���j�&�"4�b�3��*�E�E�E��j�&�"4�r�d�R�i�#�s��L�L�L�L�Lr)c��tjd��}|tj|ddd���z}|ddd�}tt	d����}|�d|���}tt	d����}|�dtj|�����}t||��dS)Ng.@r<��۠iUrd)�pvals)r8r9�sumrrrh�ascontiguousarrayr
)r3r\r�rZ�
non_contig�contigs      r'�test_p_non_contiguousz%TestMultinomial.test_p_non_contiguous�s����I�c�N�N��	�R�V�A�a�d��d�G�_�_����!�$�Q�$����7�:�.�.�/�/���'�'��5�'�9�9�
��7�:�.�.�/�/���#�#�C�r�/C�E�/J�/J�#�K�K���:�v�.�.�.�.�.r)c�H�tjgd�tj���}||���z}t	td����}d}t
jt|���5|�	d|��ddd��dS#1swxYwYdS)N)
�G�z��?r���&�.>r�r�r�r�r�r�r�rVr�z-[\w\s]*pvals array is cast to 64-bit floating��matchr<)
r8rz�float32r�rr�pytest�raisesrDrh)r3rrr�rZr�s     r'�test_multinomial_pvals_float32z.TestMultinomial.test_multinomial_pvals_float32�s����H�:�:�:�AC��
M�
M�
M���A�E�E�G�G����7�:�.�.�/�/��@��
�]�:�U�
3�
3�
3�	)�	)����q�%�(�(�(�	)�	)�	)�	)�	)�	)�	)�	)�	)�	)�	)�	)����	)�	)�	)�	)�	)�	)s�3B�B�BN)rMrNrOrirlrsr}r�r�r�r�rPr)r'rbrb^s�������,�,�,�;�;�;� � � � � � �G�G�G�M�M�M�/�/�/�)�)�)�)�)r)rbc�P�eZdZd�Zd�Zej�dddg��d���Zej�dgd���ej�dddg��ej�d	gd
���d�������Z	d�Z
d
�Zd�ZdS)�TestMultivariateHypergeometricc��d|_dS)Ni�_��rrEs r'�setup_methodz+TestMultivariateHypergeometric.setup_method�s
����	�	�	r)c�^�tttjdd��tttjgd�d��tttjgd�d��tttjgd�d��tttjgd��tttjdd	gd
dd��t	jtj��}|j}||jj	z}tttj|dz
d	gd
dd
��dS)Nr�)rTr�r�rA)rArTr�rTr<i�ɚ;�ero�	marginalsrd�count)
rrDrZ�multivariate_hypergeometricr8�iinfo�int64�maxrW�itemsize)r3�
int64_info�	max_int64�max_int64_indexs    r'�test_argument_validationz7TestMultivariateHypergeometric.test_argument_validation�s<��	�j�&�"D��!�	�	�	�	�j�&�"D��i�i��	%�	%�	%�	�j�&�"D� �j�j�!�	%�	%�	%�	�j�&�"D��i�i��	%�	%�	%�	�j�&�"D��!�	�	�	�	�j�&�"D� �#�&��1�k�	;�	;�	;��X�b�h�'�'�
��N�	�#�z�'7�'@�@���j�&�"D�&��,�c�2�A�q�'�	C�	C�	C�	C�	Cr)�methodr�r�c��tt|j����}|�gd�d|���}t	|gd���|�gd|���}t	|g��|�gdd|���}t	|tjdt
j�����|�gd�d|���}t	|gd���|�gd	�d
|���}t	|gd���gd�}|�|t|��|���}t	||��|�gd
�dd
|���}t	|gd
�gd
z��dS)N)rrrr�r�r<��sizer�)r<rrV�r<rTr�)rrrr�)r�rr)r<r<rr<r<�r�r�ro�)	rrrr�r
r8�emptyr�r�)r3r�rZrr�colorss     r'�test_edge_casesz.TestMultivariateHypergeometric.test_edge_cases�s����7�4�9�-�-�.�.���.�.�y�y�y�!�F�.�K�K���1�i�i�i�(�(�(��.�.�r�1�V�.�D�D���1�b�!�!�!��.�.�r�1�1�V�.�L�L���1�b�h�v�R�X�>�>�>�?�?�?��.�.�y�y�y�!�F�.�K�K���1�i�i�i�(�(�(��.�.�y�y�y�!�F�.�K�K���1�i�i�i�(�(�(� �����.�.�v�s�6�{�{�6<�
/�
>�
>���1�f�%�%�%��.�.�y�y�y�"�1�6<�
/�
>�
>���1�y�y�y�k�!�m�,�,�,�,�,r)�nsample)���-�7r�)ro�rTr�i�Ic���tt|j����}tjgd���}|�||||���}t
|t��r|f|jz}n
||jz}t|j|��t|dk�����t||k�����t|�
d���tj||t�����t
|t��rG|dkrCt|�d���||z|�
��zdd	�
��dSdSdS)N)rro�r�r�rrA��axis)�
fill_valuerW順���MbP?g{�G�zt?)�rtol�atol)rrrr8rzr��
isinstancerUryrrrpr
r��fullr�mean)r3r�r�r�rZr��sample�expected_shapes        r'�test_typical_casesz1TestMultivariateHypergeometric.test_typical_cases�s~���7�4�9�-�-�.�.����/�/�/�*�*���3�3�F�G�T�;A�4�C�C���d�C� � �	1�"�W�v�|�3�N�N�!�F�L�0�N��V�\�>�2�2�2���1��!�!�#�#�$�$�$���6�!�&�&�(�(�)�)�)��6�:�:�2�:�.�.��7�4�G�3�G�G�G�	I�	I�	I��d�C� � �	3�T�V�^�^�
�F�K�K�Q�K�/�/�#�f�,�v�z�z�|�|�;�!%�E�
3�
3�
3�
3�
3�
3�	3�	3�^�^r)c���tt|j����}|�gd�ddd���}t	jgd�gd�gd�gd�gd�g��}t
||��dS)Nr�ror�r�)rTr<rT�r<r<r��rTrr��rrrr�r8rzr
�r3rZr��expecteds    r'�test_repeatability1z2TestMultivariateHypergeometric.test_repeatability1�s����7�4�9�-�-�.�.���3�3�I�I�I�q�q�;B�4�D�D���8�Y�Y�Y�&�Y�Y�&�Y�Y�&�Y�Y�&�Y�Y�	(�)�)��
	�6�8�,�,�,�,�,r)c���tt|j����}|�gd�ddd���}t	jgd�gd�gd�gd�gd	�g��}t
||��dS)
N�r���2r�ror�r�)r��)��
r�)r��)r��r�r�r�s    r'�test_repeatability2z2TestMultivariateHypergeometric.test_repeatability2s����7�4�9�-�-�.�.���3�3�L�L�L�"�9:�;F�4�H�H���8�\�\�\�)�\�\�)�\�\�)�\�\�)�\�\�	+�,�,��
	�6�8�,�,�,�,�,r)c���tt|j����}|�gd�ddd���}t	jgd�gd�gd�gd�gd	�g��}t
||��dS)
Nr�r�ror�r�)rTr�r�)ror�r�)rTroro)r<ro�r�r�s    r'�test_repeatability3z2TestMultivariateHypergeometric.test_repeatability3
s����7�4�9�-�-�.�.���3�3�L�L�L�"�9:�;F�4�H�H���8�Y�Y�Y�&�Y�Y�&�Y�Y�&�Y�Y�&�Y�Y�	(�)�)��
	�6�8�,�,�,�,�,r)N)
rMrNrOr�r�r��mark�parametrizer�r�r�r�r�rPr)r'r�r��s���������C�C�C�B�[���X���'=�>�>�-�-�?�>�-�D�[���Y����8�8��[���X���'=�>�>��[���V�%8�%8�%8�9�9�3�3�:�9�?�>�9�8�3�,	-�	-�	-�
-�
-�
-�
-�
-�
-�
-�
-r)r�c�&�eZdZd�Zd�Zd�Zd�ZdS)�TestSetStatec��d|_tt|j����|_|jj|_|jj|_|jd|jdd|jddf|_dS)N���I�
bit_generator�state�keyr)rrr�rgr�r��legacy_staterEs r'r�zTestSetState.setup_methodst����	��G�D�I�.�.�/�/���!�W�2����'�-��
�!�Z��8�!�Z��0��7�!�Z��0��7�9����r)c���|j�d���}|j|j_|j�d���}t	tj||k����dS�Nr��r�)r��standard_normalr�r�rr8rp)r3�old�news   r'�test_gaussian_resetz TestSetState.test_gaussian_reset$sa���g�%�%�1�%�-�-��#'�:��� ��g�%�%�1�%�-�-�����s�c�z�"�"�#�#�#�#�#r)c��|j���|jj}|j�d���}||j_|j�d���}t	tj||k����dSr�)r�r�r�r�rr8rp)r3r�r�r�s    r'� test_gaussian_reset_in_media_resz-TestSetState.test_gaussian_reset_in_media_res+s���	
����!�!�!��"�(���g�%�%�1�%�-�-��#(��� ��g�%�%�1�%�-�-�����s�c�z�"�"�#�#�#�#�#r)c�<�|j�dd��dS�NrX)r��negative_binomialrEs r'�test_negative_binomialz#TestSetState.test_negative_binomial6s"��	
��!�!�#�s�+�+�+�+�+r)N)rMrNrOr�r�r�r�rPr)r'r�r�sP������9�9�9�$�$�$�	$�	$�	$�,�,�,�,�,r)r�c�d�eZdZejZeejej	ej
ejejej
ejejg	Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd	�Zd
�Zd�Zej�dd
ejgd���fdejgd���fdejgd���fg��d���Z d�Z!d�Z"d�Z#d�Z$d�Z%d�Z&d�Z'ejj(ej�dddejdfddej	d fd!d"ej
d#fd$d%ejd&fg��d'�����Z)d(S))�TestIntegersc�L�tt|jd|t���dS�Nr<�r(rW)rrC�rfuncr{)r3r(s  r'�test_unsupported_typez"TestIntegers.test_unsupported_typeCs#���i���Q���O�O�O�O�O�Or)c	���|jD�]a}|turdntj|��j}|turdntj|��jdz}|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||�����cdS�NrrTr<r��	�itype�boolr8r��minr�rrDr��r3r(�dt�lbnd�ubnds     r'�test_bounds_checkingz!TestIntegers.test_bounds_checkingFs����*�	7�	7�B��d�
�
�1�1������(8�D��d�
�
�1�1������(8�1�(<�D�'�1�4�!�8�8�T�D��*�d�j�$��(�D�#+�2�
7�
7�
7�
7��*�d�j�$��q��#+�2�
7�
7�
7�
7��*�d�j�$��#+�2�
7�
7�
7�
7��*�d�j�!�Q�� "�
$�
$�
$�
$�
�*�d�j�4�!�8�*�d�#+�2�
7�
7�
7�
7��*�d�j�4�&�4�!�8�*�#+�2�
7�
7�
7�
7��*�d�j�4�&�4�&�#+�2�
7�
7�
7�
7��*�d�j�!�a�S�#+�2�
7�
7�
7�
7�
7�'	7�	7r)c	���|jD]�}|turdntj|��j}|turdntj|��j|z}t
t|j|dz
gdz|gdz||���t
t|j|gdz|dzgdz||���t
t|j||gdz||���t
t|jdgdzd||�����dSrrrs     r'�test_bounds_checking_arrayz'TestIntegers.test_bounds_checking_array]s)���*�	7�	7�B��d�
�
�1�1������(8�D��d�
�
�1�1������(8��L�(I�D��*�d�j�4�!�8�*�q�.�4�&�1�*�#+�2�
7�
7�
7�
7��*�d�j�4�&�1�*��!�8�*�q�.�8�2�
G�
G�
G�
G��*�d�j�$����
�#+�2�
7�
7�
7�
7��*�d�j�1�#��'�1�#+�2�
7�
7�
7�
7�
7�	7�	7r)c
��|jD�]o}|turdntj|��j}|turdntj|��jdz}|r|dz
n|}|}|dz
}t
|�|||zd||���|��t
|�|g||zd||���|��|}t
|�|||zd||���|��t
|�|||zgd||���|��||zdz}t
|�|||zd||���|��t
|�|g||zgd||���|����qdS)NrrTr<r-�r�r(rW�rrr8r�rr�rr�)r3r(rrr	�is_open�tgts       r'�test_rng_zero_and_extremesz'TestIntegers.test_rng_zero_and_extremesks���*�	�	�B��d�
�
�1�1������(8�D��d�
�
�1�1������(8�1�(<�D�'�1�4�!�8�8�T�D�"�l�G���(�C�����C��w��T�-5�R�$�A�A�BE�
G�
G�
G�����S�E�3��=�t�-5�R�$�A�A�BE�
G�
G�
G��C�����C��w��T�-5�R�$�A�A�BE�
G�
G�
G�����C�#��-��t�-5�R�$�A�A�BE�
G�
G�
G��$�;�1�$�C�����C��w��T�-5�R�$�A�A�BE�
G�
G�
G�����S�E�C�'�M�?�)-���$�L�L��
�
�
�
�+	�	r)c	�B�d}|jD�]}|turdntj|��j}|turdntj|��jdz}|r|dz
n|}|dz
}t
|�|g|dzg||���|��t
|�|g|z|dzg|z|���|��t
|�|g|z|dzg|z||���|��|}t
|�|g|dzg||���|��t
|�|g|z|dzg|z|���|��t
|�|g|z|dzg|z||���|��||zdz}t
|�|g|dzg||���|��t
|�|g|z|dzg|z|���|��t
|�|g|z|dzg|z||���|����dS)Nr-rrTr<�r�rWrVr)r3r(r�rrr	rs       r'� test_rng_zero_and_extremes_arrayz-TestIntegers.test_rng_zero_and_extremes_array�s������*�	K�	K�B��d�
�
�1�1������(8�D��d�
�
�1�1������(8�1�(<�D�'�1�4�!�8�8�T�D���(�C�����S�E�C�!�G�9�)-�R�$�9�9�:=�
?�
?�
?���������s�Q�w�i�$�.�b�$�:�:�;>�
@�
@�
@���������s�Q�w�i�$�.�T��$�E�E�FI�
K�
K�
K��C�����S�E�C�!�G�9�)-�R�$�9�9�:=�
?�
?�
?���������s�Q�w�i�$�.�b�$�:�:�;>�
@�
@�
@���������s�Q�w�i�$�.�T��$�E�E�FI�
K�
K�
K��$�;�1�$�C�����S�E�C�!�G�9�)-�R�$�9�9�:=�
?�
?�
?���������s�Q�w�i�$�.�b�$�:�:�;>�
@�
@�
@���������s�Q�w�i�$�.�T��$�E�E�FI�
K�
K�
K�
K�5	K�	Kr)c�X�|jD]�}|turdntj|��j}|turdntj|��jdz}|r|dz
n|}	|�||||����q#t$r$}tdt|��z���d}~wwxYwdS�NrrTr<r�zMNo error should have been raised, but one was with the following message:

%s�
rrr8r�rr�r��	Exception�AssertionError�str�r3r(rrr	�es      r'�test_full_rangezTestIntegers.test_full_range�s����*�
	@�
	@�B��d�
�
�1�1������(8�D��d�
�
�1�1������(8�1�(<�D�'�1�4�!�8�8�T�D�
@��
�
�4����
�C�C�C�C���
@�
@�
@�$�&6�8;�A���&?�@�@�@�����
@����
	@�
	@s�A9�9
B'�B"�"B'c�b�|jD]�}|turdntj|��j}|turdntj|��jdz}|r|dz
n|}	|�|gdz|g||����v#t$r$}tdt|��z���d}~wwxYwdSrrrs      r'�test_full_range_arrayz"TestIntegers.test_full_range_array�s����*�
	@�
	@�B��d�
�
�1�1������(8�D��d�
�
�1�1������(8�1�(<�D�'�1�4�!�8�8�T�D�
@��
�
�D�6�A�:��v���
�K�K�K�K���
@�
@�
@�$�&6�8;�A���&?�@�@�@�����
@����
	@�
	@s�A>�>
B,�B'�'B,c	��tt����}|jdd�D]n}dD]i}|�d||z
d||���}t	|���|k��t	|���dk���j�o|�dd|z
d|t���}t	|���dk��t	|���dk��dS)Nr<)r�r��rTirr)rrrr�rr�rr)r3r(rZrr	�valss      r'�test_in_bounds_fuzzz TestIntegers.test_in_bounds_fuzz�s���7�9�9�%�%���*�Q�R�R�.�	)�	)�B�"�
)�
)���z�z�!�T�H�_�7�+3�2�"�?�?������
�
�T�)�*�*�*�����
�
�a��(�(�(�(�	
)��z�z�!�Q��\��(� $��&�&������
�
�Q���������
�
�a�� � � � � r)c�b�|jD�]%}|turdntj|��j}|turdntj|��jdz}|r|dz
n|}d}t
td����}|�|||||���}t
td����}|�|g|g|||���}t
td����}|�|g|z|g|z|||���}	t||��t||	����'dS)NrrTr<r-��r)
rrr8r�rr�rrr1r
)
r3r(rrr	r�rZ�scalar�scalar_arrayrzs
          r'�test_scalar_array_equivz$TestIntegers.test_scalar_array_equiv�sR���*�	.�	.�B��d�
�
�1�1������(8�D��d�
�
�1�1������(8�1�(<�D�'�1�4�!�8�8�T�D��D��w�t�}�}�-�-�F��_�_�T�4�d�X�&(�%�*�*�F��w�t�}�}�-�-�F�!�?�?�D�6�D�6��/7�r�+�C�C�L��w�t�}�}�-�-�F��O�O�T�F�T�M�D�6�#�4$�*.���$�M�M�E��v�|�4�4�4��v�u�-�-�-�-�%	.�	.r)c
�L�dddddddddd�	}|jdd�D]�}ttd����}tjd	kr|�d
d|z
d||�
��}n/|�d
d|z
d||�
�����}tj|���	��}t|tj|��j
|k����ttd����}|�d
d|z
d|t�
���tj��}tj|���	��}t|tjt��j
|k��dS)N�@053594a9b82d656f967c54869bc6970aa0358cf94ad469c81478459c6a90eee3�@54de9072b6ee9ff7f20b58329556a46a447a8a29d67db51201bf88baa6e4e5d4�@d3a0d5efb04542b25ac712e50d21f39ac30f312a5052e9bbb1ad3baa791ac84b�@14e224389ac4580bfbdccb5697d6190b496f91227cf67df60989de3d546389b1�@0e203226ff3fbbd1580f15da4621e5f7164d0d8d6b51696dd42d004ece2cbec1)	r�int16�int32r��int8�uint16rx�uint64�uint8r<r&�littlerr�r-rrT)rrr�sys�	byteorderr1�byteswap�hashlib�sha256�	hexdigestrr8rW�namer�viewr2)r3r(rrrZ�val�ress       r'�test_repeatabilityzTestIntegers.test_repeatability�s���\�[�[�[�[�[�[�[�[�]�]���*�Q�R�R�.�	3�	3�B��w�t�}�}�-�-�F��}��(�(��o�o�a��X��D�8�')�&�+�+����o�o�a��X��D�8�')�&�+�+�+3�8�:�:���.��%�%�/�/�1�1�C��C������)�*�c�1�2�2�2�2��7�4�=�=�)�)���o�o�a��X��D�8�#��%�%�%)�T�"�'�]�]�	��n�S�!�!�+�+�-�-����B�H�T�N�N�'�(�C�/�0�0�0�0�0r)c��|jD�];}|ttjfvrdntj|��j}|ttjfvrdntj|��jdz}|r|dz
n|}ttd����}|�	||d||���}ttd����}|�	|gdz|||���}t||��ttd����}|�	|gdz|gdz||���}t||����=dS)NrrTr<r&r-rr�)rrr8�bool_r�rr�rrr1r
)r3r(rrr	rZr?�val_bcs        r'�test_repeatability_broadcastingz,TestIntegers.test_repeatability_broadcasting
sY���*�	,�	,�B��t�R�X�.�.�.�1�1�B�H�R�L�L�4D�D��t�R�X�.�.�.�1�1�B�H�R�L�L�4D�q�4H�D�'�1�4�!�8�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, expectedr/)iu�i�,YQi�Xgi$#�Pl�bAi{��El/Y�irI)�u�i�,YQ��Xgi%#�Pl�bAi|��El0Y�i�)rFrGl�bAl1Y�ii�{,mi��uHl�HMc���dt|��fD]O}ttd����}|�||���}t	||�|n|d���PdS)Nr&r�r)�lenrrr1r)r3�boundr�r�rZrrs      r'�!test_repeatability_32bit_boundaryz.TestIntegers.test_repeatability_32bit_boundary!st���3�x�=�=�)�	K�	K�D��w�t�}�}�-�-�F�����D��1�1�A����(8�H�H�h�q�k�J�J�J�J�	K�	Kr)c
�H�tjgd�gd�gd�ggd�gd�gd�ggd�gd�gd	�ggd
�gd�gd�ggd
�gd�gd�gg��}dD]X}ttd����}|�dgdgdgggd�|���}t||�|n|d���YdS)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)ror�r�i90rArr<)r/rIrHr�)r8rzrrr1r
)r3�desiredr�rZrrs     r'�.test_repeatability_32bit_boundary_broadcastingz;TestIntegers.test_repeatability_32bit_boundary_broadcasting0sS���(�A�A�A�A�A�A�A�A�A�C�B�A�A�A�A�A�A�A�A�C�B�A�A�A�A�A�A�A�A�C�B�A�A�A�A�A�A�A�A�C�B�A�A�A�A�A�A�A�A�C�D�E�E��&�	O�	O�D��w�u�~�~�.�.�F����"���s�Q�C� 0� =� =� =�%)� �+�+�A�
�q�T�-=�'�'�7�1�:�N�N�N�N�	O�	Or)c
�`�tjdddzfdddftjdi}|D�]�}||D�]y}|\}}||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|	|
||�	����{���dS)NrrT�A)rA��rr�rr))rl)l����rRrSrT)���rUrr�rV)	r8r4r�rzrrDrZr1�object)r3r(�configsrW�config�low�high�low_a�high_a�low_o�high_os           r'�&test_int64_uint64_broadcast_exceptionsz3TestIntegers.test_int64_uint64_broadcast_exceptionsGs����9��1�b�5�z�;���H��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
�||||���}t||��dSr�)r8r�r�r�r4rZr1r)r3r(rrrr	�actuals       r'�test_int64_uint64_corner_casez*TestIntegers.test_int64_uint64_corner_casecs����X���h�r�x� � �$���x�����*�*�.�/�/���y���"�(�+�+�/�!�3�h�>�?�?������t�h�b��I�I���V�S�!�!�!�!�!r)c���|jD]�}|turdntj|��j}|turdntj|��jdz}|r|dz
n|}|turtjn|}|�||||���}t|j	|����tttjjfD]�}|turdntj|��j}|turdntj|��jdz}|r|dz
n|}|�||||���}t|d��rJ�tt|��|����dS)NrrTr<r�rW)rrr8r�rr�rCr�rrWrU�compat�long�hasattr�type�r3r(rrr	r�s      r'�test_respect_dtype_singletonz)TestIntegers.test_respect_dtype_singletonzs`���*�	+�	+�B��d�
�
�1�1������(8�D��d�
�
�1�1������(8�1�(<�D�'�1�4�!�8�8�T�D��4�Z�Z����R�B��Z�Z��d�X�R�Z�H�H�F����r�*�*�*�*���b�i�n�-�	+�	+�B��d�
�
�1�1������(8�D��d�
�
�1�1������(8�1�(<�D�'�1�4�!�8�8�T�D��Z�Z��d�X�R�Z�H�H�F��v�w�/�/�/�/�/���f���r�*�*�*�*�	+�	+r)c��|jD]�}|turdntj|��j}|turdntj|��jdz}|r|dz
n|}|turtjn|}|�|g|g||���}t|j	|��|�|gdz|gdz||���}t|j	|����dSr)
rrr8r�rr�rCr�rrWrhs      r'�test_respect_dtype_arrayz%TestIntegers.test_respect_dtype_array�s����*�
	+�
	+�B��d�
�
�1�1������(8�D��d�
�
�1�1������(8�1�(<�D�'�1�4�!�8�8�T�D��4�Z�Z����R�B��Z�Z�������Z�L�L�F����r�*�*�*��Z�Z����
�T�F�Q�J��&(� �*�*�F����r�*�*�*�*�
	+�
	+r)c���|jD]�}|�ddd||���}|jdksJ�|j|ksJ�|�ddd||���jdksJ�t	t
�ddd���jd��t	t
�ddd���jd��t	t
�ddd���jd����dS)Nr�r�rr�r�����rr�r)rr�ryrWrrZr1)r3r(rr�s    r'�test_zero_sizezTestIntegers.test_zero_size�s���*�		F�		F�B��Z�Z��1�i�(�"�Z�M�M�F��<�9�,�,�,�,��<�2�%�%�%�%��:�:�a��a�(�$&��(�(�(-��6�6�6�6������A�I��>�>�D�"�
$�
$�
$������C�a��8�8�>��E�E�E������R�a��8�8�>��E�E�E�E�		F�		Fr)c���tjdkrdnd}tjt��5t
�ddd|���ddd��dS#1swxYwYdS)N�bigz<i4z>i4r��rr)r7r8r�r�rDrZr1)r3�other_byteord_dts  r'�test_error_byteorderz!TestIntegers.test_error_byteorder�s���$'�M�U�$:�$:�5�5���
�]�:�
&�
&�	E�	E��O�O�A�s��3C�O�D�D�D�	E�	E�	E�	E�	E�	E�	E�	E�	E�	E�	E�	E����	E�	E�	E�	E�	E�	Es�A�A�!Azsample_size,high,dtype,chi2maxi@KLrog@_@r�g�b@i���i�	gȩ@i���gd�@c���t�|||���}tj|d���\}}||z}||z
dz|z���}	|	|ksJ�dS)NrT)�
return_countsrT)rZr1r8�uniquer�)
r3�sample_sizerZrW�chi2max�samples�values�countsr��chi2s
          r'�$test_integers_small_dtype_chisquaredz1TestIntegers.test_integers_small_dtype_chisquared�sn���/�/�$�[��/�F�F����7�$�?�?�?������%���(�"�Q�&��1�6�6�8�8���g�~�~�~�~�~�~r)N)*rMrNrOrZr1r�rr8r2r5r0r3r1rxr�r4rr�r
rrrrr r$r)rArEr�r�r�rzrLrOr_rbrirkrpru�slowr�rPr)r'r�r�<s��������O�E��2�7�B�H�b�h��	�
�X�r�y�"�(�B�I�
7�E�P�P�P�7�7�7�.7�7�7����4K�K�K�>
@�
@�
@�
@�
@�
@�!�!�!� .�.�.�*!1�!1�!1�F,�,�,�.�[����
�X�R�X�C�C�C�D�D�
E�
����?�?�?�@�@�
A�
�X�R�X�C�C�C�D�D�
E�		F���K�K���K�O�O�O�.>�>�>�8"�"�"�.+�+�+�*+�+�+�F�F�F�E�E�E��[���[���=�
�1�b�g�u�	%�
�1�b�h��	&�
�D�"�(�F�	+�
�D�"�)�V�	,�	
�����
������r)r�c�6�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
ej�
d	ejejfejejfg��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,ej�
d$e-e.g��ej�
d%d&ej/gd'�gd(�g��fd)ej/gd*�gd+�g��fd,ej/gd-�gd.�g��fg��d/�����Z0d0�Z1d1�Z2ej�
d2d3d4g��d5���Z3d6�Z4d7�Z5d8�Z6d9�Z7d:�Z8d;�Z9d<�Z:d=�Z;d>�Z<d?�Z=ejj>d@���Z?dA�Z@dB�ZAdC�ZBdD�ZCdE�ZDdF�ZEdG�ZFdH�ZGdI�ZHdJ�ZIdK�ZJdL�ZKdM�ZLdN�ZMdO�ZNdP�ZOdQ�ZPej�
dRejQdSdT��dUejRdVg��dW���ZSdX�ZTej�UeVdY�Z��ej�
d[gd\���d]�����ZWej�
d^d)gd_ggfd`gd,ggfg��da���ZXej�
d[gd\���db���ZYdc�ZZdd�Z[de�Z\df�Z]dg�Z^dh�Z_di�Z`dj�Zadk�Zbdl�Zcdm�Zddn�Zedo�Zfdp�Zgdq�Zhdr�Zids�Zjdt�Zkdu�Zldv�Zmdw�Zndx�Zody�Zpdz�Zqd{�Zrd|�Zsd}�Ztd~�Zud�Zvd��Zwd��Zxd��Zyd��Zzd��Z{d��Z|d��Z}d��Z~ej�
d�d�d�g��d����Zej�
d�d�ej�d�ej�d�g��ej�
d�gd����d������Z�d��Z�d��Z�d��Z�d��Z�d&S)��TestRandomDistc��d|_dS)Nr�r�rEs r'r�zTestRandomDist.setup_method�s
����	�	�	r)c���tt|j����}|�ddd���}t	jddgddgd	d
gg��}t
||��dS)N����c�r�rTr���������)�%���i��rrrr1r8rzr
�r3rZrarNs    r'�
test_integerszTestRandomDist.test_integers�sh���7�4�9�-�-�.�.������b�v��6�6���(�S�#�J��R��3��*�=�>�>���6�7�+�+�+�+�+r)c��tt|j����}|�dddtj���}t	jddgddgd	d
ggtj���}t||��dS)Nrr�r�rr��F�Dr�r�rV)rrrr1r8rxrzr
r�s    r'�test_integers_maskedz#TestRandomDist.test_integers_masked�su���7�4�9�-�-�.�.������B�V�2�9��E�E���(�Q��G�b�"�X��2�w�7�r�y�I�I�I���6�7�+�+�+�+�+r)c���tt|j����}|�dddd���}t	jddgdd	gd
dgg��}t
||��dS)Nr�r�r�T)r�r(r�r�r��&r�i�r�r�s    r'�test_integers_closedz#TestRandomDist.test_integers_closed�sj���7�4�9�-�-�.�.������b�v���E�E���(�S�#�J�"�b�	�C��:�>�?�?���6�7�+�+�+�+�+r)c���t�tjd��jtjd��jd���}tjd��j}t||��dS)N�lT�r()rZr1r8r�r�r)r3rarNs   r'�test_integers_max_intz$TestRandomDist.test_integers_max_int�sa�������#���!2�B�H�S�M�M�4E�*.�!�0�0���(�3�-�-�#���V�W�%�%�%�%�%r)c�j�tt|j����}|�d��}t	jddgddgddgg��}t
||d�	��tt|j����}|���}t
||d
d�	��dS)Nr�gG0��Ը?g�æ���?g2�
?gu	A��?g�H
�>H�?g;�dE��?r���decimalrT�rrrrZr8rzrr�s    r'�test_randomzTestRandomDist.test_random�s����7�4�9�-�-�.�.�����v�&�&���(�.�0A�B�.�0A�B�.�0A�B�D�E�E��	"�&�'�2�>�>�>�>��7�4�9�-�-�.�.��������!�&�'�$�-��D�D�D�D�D�Dr)c���tt|j����}|�d��}t	jddgddgddgg��}t
||d�	��dS)
Nr��C����Ը?gP�����?gtX�?g81�
A��?g�rO�>H�?g�88dE��?r�r�r�r�s    r'�test_random_floatz TestRandomDist.test_random_float�st���7�4�9�-�-�.�.�����v�&�&���(�Y��4�'��4�'��4�6�7�7��	"�&�'�1�=�=�=�=�=�=r)c��tt|j����}|�tj���}d}t
||d���dS)NrVr�r�r�)rrrrZr8r�rr�s    r'�test_random_float_scalarz'TestRandomDist.test_random_float_scalar�sN���7�4�9�-�-�.�.�����R�Z��0�0����!�&�'�1�=�=�=�=�=�=r)zdtype, uint_view_typec���tt|j����}|�d|���}t	j|�|��dz��}d|cxkrdksnJ�dS)Nr�rVr<i$^i,e)rrrrZr8�
count_nonzeror>)r3rW�uint_view_typerZr��num_ones_in_lsbs      r'�test_random_distribution_of_lsbz.TestRandomDist.test_random_distribution_of_lsbs~���7�4�9�-�-�.�.�����v�U��3�3���*�6�;�;�~�+F�+F��+J�K�K����.�.�.�.��.�.�.�.�.�.�.�.r)c�H�tttjd���dS)Nr1rV)rrCrZrEs r'�test_random_unsupported_typez+TestRandomDist.test_random_unsupported_types���i���g�>�>�>�>�>�>r)c���tt|j����}|�dd��}t	jgd�tj���}t||��dS)Nr�)rrrTrTrV�rrr�choicer8rzr�r
r�s    r'�test_choice_uniform_replacez*TestRandomDist.test_choice_uniform_replaces\���7�4�9�-�-�.�.�����q�!�$�$���(�<�<�<�r�x�8�8�8���6�7�+�+�+�+�+r)c���tt|j����}|�ddgd����}t	jgd�tj���}t||��dS)Nr�)皙�����?r�皙�����?r��r\)rr<rr<rVr�r�s    r'�test_choice_nonuniform_replacez-TestRandomDist.test_choice_nonuniform_replacesg���7�4�9�-�-�.�.�����q�!�';�';�';��<�<���(�<�<�<�r�x�8�8�8���6�7�+�+�+�+�+r)c�n�tt|j����}|�ddd���}t	jgd�tj���}t||��|�dddd���}t	jdtj���}t||��dS)Nr�r�F��replacer�rV)r��shuffle)	rrrr�r8rzr�r
r9r�s    r'�test_choice_uniform_noreplacez,TestRandomDist.test_choice_uniform_noreplaces����7�4�9�-�-�.�.�����q�!�U��3�3���(�9�9�9�B�H�5�5�5���6�7�+�+�+����q�!�U�E��B�B���)�A�R�X�.�.�.���6�7�+�+�+�+�+r)c���tt|j����}|�dddgd����}t	jgd�tj���}t||��dS)Nr�r�F)r��333333�?rXr��r�r\)rrTr�rVr�r�s    r'� test_choice_nonuniform_noreplacez/TestRandomDist.test_choice_nonuniform_noreplace'si���7�4�9�-�-�.�.�����q�!�U�6J�6J�6J��K�K���(�9�9�9�B�H�5�5�5���6�7�+�+�+�+�+r)c���tt|j����}|�gd�d��}t	jgd���}t
||��dS)N)�a�b�c�dr�)r�r�r�r��rrrr�r8rzr
r�s    r'�test_choice_nonintegerz%TestRandomDist.test_choice_noninteger-s_���7�4�9�-�-�.�.�����3�3�3�Q�7�7���(�/�/�/�0�0���6�7�+�+�+�+�+r)c���tt|j����}|�ddgddgddgddggd��}t	jddgddgddgg��}t
||��dS)	Nrr<rTr�r�ror�r�r�r�s    r'�)test_choice_multidimensional_default_axisz8TestRandomDist.test_choice_multidimensional_default_axis3s}���7�4�9�-�-�.�.������A���A���A���A��?��C�C���(�Q��F�Q��F�Q��F�3�4�4���6�7�+�+�+�+�+r)c���tt|j����}|�ddgddgddgddggdd�	��}t	jdgdgdgdgg��}t
||��dS)
Nrr<rTr�r�ror�r�r�r�r�s    r'�(test_choice_multidimensional_custom_axisz7TestRandomDist.test_choice_multidimensional_custom_axis9s���7�4�9�-�-�.�.������A���A���A���A��?����K�K���(�Q�C�!��q�c�A�3�/�0�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����dS)NrAr��@)r<rTr�r���?r�r<rT)r�r�rerr�r�r�r�Fr�rH)rA)rAr<)r<rrr�)rZr�rrD)r3r�s  r'�test_choice_exceptionsz%TestRandomDist.test_choice_exceptions?s�������j�&�"�a�0�0�0��j�&�"�a�0�0�0��j�&�"�a�0�0�0��j�&�,�,�,������d�|�4�	6�	6�	6�	6��j�&�1�a�&�!����G�G�G�G��j�&�1�a�&�!��T�{�C�C�C�C��j�&�1�a�&�!��S�z�B�B�B�B��j�&�)�)�)�Q��F�F�F�F��j�&�)�)�)�R��G�G�G�G��j�&�)�)�)�U�E�J�J�J�J��j�&�)�)�)�W�e�L�L�L�L��j�&�)�)�)�Q�#�y�y�y�	2�	2�	2�	2�	2�	2r)c
���ddg}ttjt�dd�������ttjt�dd�������ttjt�dd|�������ttjt�dd|�������ttjt�ddgd�������tt�dgd���du��tjddg��}tjdt�	��}||d
<tt�|d���|u��t��}ttjt�d|d�������ttjt�d|d�������ttjt�d|d|�������ttjt�d|d|�������ttjt�ddg|d�������tt�dg|d���j	d
k��tjddg��}tjdt�	��}||d
<tt�||d����
��|u��d}gd�}tt�d
|d���j|��tt�d
|d���j|��tt�d
|d|���j|��tt�d
|d|���j|��tt�tj
d
��|d���j|��tt�d
d
d���jd��tt�d
dd
���jd��tt�ddd
���jd��tt�d
d
���jd��tt�gd���jd��tt�ddgd���jd��tt tjgd��dS)Nr�r�rTTr�Fr�r<rVrr�)r�r�r�r�r�rer�rmr�rnrorr�r�)rr8�isscalarrZr�rzr�rV�tuple�ndim�itemrryr9r1rrD)r3r\r��arrr4s     r'�test_choice_return_shapez'TestRandomDist.test_choice_return_shapeQs���
�#�J�����F�M�M�!�T�M�:�:�;�;�<�<�<����F�M�M�!�U�M�;�;�<�<�=�=�=����F�M�M�!�T�Q�M�?�?�@�@�A�A�A����F�M�M�!�U�a�M�@�@�A�A�B�B�B����F�M�M�1�a�&�$�M�?�?�@�@�A�A�A���
�
�t�f�d�
�3�3�t�;�<�<�<��H�a��V�����h�q��'�'�'����A����
�
�c�4�
�0�0�A�5�6�6�6�
�G�G���B�K��
�
�a��D�
� A� A�B�B�B�C�C�C��B�K��
�
�a��E�
� B� B�C�C�C�D�D�D��B�K��
�
�a��D�A�
� F� F�G�G�G�H�H�H��B�K��
�
�a��E�Q�
� G� G�H�H�H�I�I�I��B�K��
�
�q�!�f�a��
� F� F�G�G�G�H�H�H���
�
�t�f�a��
�6�6�;�q�@�A�A�A��H�a��V�����h�q��'�'�'����A����
�
�c�1�d�
�3�3�8�8�:�:�a�?�@�@�@�
��*�*�*���V�]�]�1�a��]�6�6�<�a�@�@�@��V�]�]�1�a��]�7�7�=�q�A�A�A��V�]�]�1�a���]�;�;�A�1�E�E�E��V�]�]�1�a��!�]�<�<�B�A�F�F�F��V�]�]�2�9�Q�<�<��D�]�A�A�G��K�K�K�	�V�_�_�Q��	�_�:�:�@�)�L�L�L��V�_�_�Q��!�_�4�4�:�D�A�A�A��V�_�_�R��!�_�4�4�:�D�A�A�A��V�]�]�1�1�]�-�-�3�T�:�:�:��V�]�]�2�D�]�1�1�7��>�>�>��V�]�]�C��:�I�]�>�>�D��	 �	 �	 ��j�&�-��R�8�8�8�8�8r)c�~�tjgd���}gd�}tttj||���dS)N)�*r<rT)NNNr�)r8rzrrDrZr�)r3r�r\s   r'�test_choice_nan_probabilitiesz,TestRandomDist.test_choice_nan_probabilitiess?���H�Z�Z�Z� � �������j�&�-��a�8�8�8�8�8�8r)c
��tjd��dz}d|ddd�<tt|j����}|�dd|ddd����}tt|j����}|�ddtj|ddd������}t||��dS)Nrror�r<rTr�r�)r8�onesrrrr�r�r
)r3r\rZr�r�s     r'�test_choice_p_non_contiguousz+TestRandomDist.test_choice_p_non_contiguous�s����G�B�K�K�!�O����!�$�Q�$���7�4�9�-�-�.�.���]�]�1�a�1�S�S�q�S�6�]�2�2�
��7�4�9�-�-�.�.�����q�!�r�';�A�c�c��c�F�'C�'C��D�D���:�v�.�.�.�.�.r)c���tjd��dz}t�dd��}|jtjksJ�t�ddd���}|jtjksJ�t�dd|���}|jtjksJ�t�dd|d���}|jtjksJ�dS)Nr�g@rTFr�r�)r\r�)r8r�rZr�rWr�)r3r\ras   r'�test_choice_return_typez&TestRandomDist.test_choice_return_type�s����G�A�J�J��O�����q�!�$�$���|�r�x�'�'�'�'����q�!�U��3�3���|�r�x�'�'�'�'����q�!�q��)�)���|�r�x�'�'�'�'����q�!�q�%��8�8���|�r�x�'�'�'�'�'�'r)c�p�d}tt|j����}|�ddd���}tjdkr|���}tj|�	tj�������}t||k��dS)N�@4266599d12bfcfb815213303432341c06b4349f5455890446578877bb322e222�'rvFr�r6)rrrr�r7r8r9r:r;r>r8r2r<r)r3�choice_hashrZrar@s     r'�test_choice_large_samplez'TestRandomDist.test_choice_large_sample�s���X���7�4�9�-�-�.�.�����u�d�E��:�:���=�H�$�$��_�_�&�&�F��n�V�[�[���1�1�2�2�<�<�>�>����s�"�#�#�#�#�#r)c��tt|j����}|�d��}d}t	||��dS)Nrs
����	8%�)rrr�bytesrr�s    r'�
test_byteszTestRandomDist.test_bytes�sE���7�4�9�-�-�.�.�����b�!�!��5���V�W�%�%�%�%�%r)c��d�d�d�d�d�d�d�d�d	�d
�d�fD]d}tt|j����}|gd���}|�|��|}|gd
���}t	||���edS)Nc�*�tjg��Sr$)r8rz�rrs r'�<lambda>z-TestRandomDist.test_shuffle.<locals>.<lambda>�s��r�x��|�|�r)c��|Sr$rPr�s r'r�z-TestRandomDist.test_shuffle.<locals>.<lambda>�s��q�r)c�d�tj|���tj��Sr$)r8�asarray�astyper2r�s r'r�z-TestRandomDist.test_shuffle.<locals>.<lambda>�s��r�z�!�}�}�3�3�B�G�<�<�r)c�d�tj|���tj��Sr$)r8r�r�r�r�s r'r�z-TestRandomDist.test_shuffle.<locals>.<lambda>�s��r�z�!�}�}�3�3�B�J�?�?�r)c�d�tj|���tj��Sr$)r8r�r��	complex64r�s r'r�z-TestRandomDist.test_shuffle.<locals>.<lambda>�s��r�z�!�}�}�3�3�B�L�A�A�r)c�Z�tj|���t��Sr$)r8r�r�rVr�s r'r�z-TestRandomDist.test_shuffle.<locals>.<lambda>�s��r�z�!�}�}�3�3�F�;�;�r)c��d�|D��S)Nc��g|]}||f��SrPrP��.0�is  r'�
<listcomp>zATestRandomDist.test_shuffle.<locals>.<lambda>.<locals>.<listcomp>�s��2�2�2�1��A��2�2�2r)rPr�s r'r�z-TestRandomDist.test_shuffle.<locals>.<lambda>�s��2�2��2�2�2�r)c�>�tjd�|D����S)Nc��g|]}||g��SrPrPr�s  r'r�zATestRandomDist.test_shuffle.<locals>.<lambda>.<locals>.<listcomp>����*=�*=�*=�a�A�q�6�*=�*=�*=r))r8r�r�s r'r�z-TestRandomDist.test_shuffle.<locals>.<lambda>�s��r�z�*=�*=�1�*=�*=�*=�>�>�r)c�8�tj||g��jSr$)r8�vstack�Tr�s r'r�z-TestRandomDist.test_shuffle.<locals>.<lambda>�s��r�y�!�Q��0�0�2�r)c��tjd�|D��dtfdtfg���tj��S)Nc��g|]}||f��SrPrPr�s  r'r�zATestRandomDist.test_shuffle.<locals>.<lambda>.<locals>.<listcomp>�s��+>�+>�+>�q�Q��F�+>�+>�+>r)r�r�)r8r�rUr>�recarrayr�s r'r�z-TestRandomDist.test_shuffle.<locals>.<lambda>�sG���
�+>�+>�A�+>�+>�+>�-0�#�J��c�
�+C�!E�!E�!%��b�k�!2�!2�r)c�n�tjd�|D��dtdfdtjdfg��S)Nc��g|]}||f��SrPrPr�s  r'r�zATestRandomDist.test_shuffle.<locals>.<lambda>.<locals>.<listcomp>�r�r)r��r<r�)r8r�rVr1r�s r'r�z-TestRandomDist.test_shuffle.<locals>.<lambda>�sA��r�z�*=�*=�1�*=�*=�*=�,/���+>�,/���4�+@�+B� C� C�r)�
r<rTr�r�ror�r�r�rr�
r�r<rr�rror�r�rTr�)rrrr�r
)r3�convrZ�alistrarNs      r'�test_shufflezTestRandomDist.test_shuffle�s���,�+� �[�<�<�?�?�A�A�;�;�2�2�>�>�2�2�4�4�C�C�D�	0�	0�D�"�w�t�y�1�1�2�2�F��D�7�7�7�8�8�E��N�N�5�!�!�!��F��d�9�9�9�:�:�G��v�w�/�/�/�/�-	0�	0r)c��tt|j����}tjd���d��}|�|d���tjgd�gd�gd�gd�g��}t||��tt|j����}tjd���d��}|�|d	���t||��dS)
Nr"�r�r�r<r��rr�r<rT�r�r�ror��r��rr�r�r�r�r�rA)	rrrr8r9�reshaper�rzr
r�s    r'�test_shuffle_custom_axisz'TestRandomDist.test_shuffle_custom_axis�s����7�4�9�-�-�.�.����2���&�&�v�.�.�����v�A��&�&�&��(�,�,�,�,�,�,�,�,�,�,�,�,�.�/�/��	�6�7�+�+�+��7�4�9�-�-�.�.����2���&�&�v�.�.�����v�B��'�'�'��6�7�+�+�+�+�+r)c�<�tt|j����}tjg���d��}dD]P}tjg���d��}|�||���t||���QdS)N)rr�)rr<r�)rrrr8rzrr�r
)r3rZrNr�ras     r'�test_shuffle_custom_axis_emptyz-TestRandomDist.test_shuffle_custom_axis_empty�s����7�4�9�-�-�.�.���(�2�,�,�&�&�v�.�.���	0�	0�D��X�b�\�\�)�)�&�1�1�F��N�N�6��N�-�-�-��v�w�/�/�/�/�	0�	0r)c��tjd���dd��}|���}t	t|j����}|�|d���t	t|j����}|�|j��t||��dS)Nr�rTrr<r�)
r8r9r�copyrrrr�r�r
)r3�y1�y2rZs    r'�test_shuffle_axis_nonsquarez*TestRandomDist.test_shuffle_axis_nonsquare�s���
�Y�r�]�]�
"�
"�1�b�
)�
)��
�W�W�Y�Y���7�4�9�-�-�.�.�����r���"�"�"��7�4�9�-�-�.�.�����r�t�����2�r�"�"�"�"�"r)c��tj�tjt	d��d��dzdz
d��}tj�tjd��dzdz
d��}|���}|���}t	d��D]�}t�|��tt|j|j��t|j|j����t�|��tt|j|j��t|j|j������dS)Nr�)ror�r�r<rAr�)
r8�ma�
masked_valuesrr7r9rrZr�r�sorted�data�mask)r3r�r��a_orig�b_origr�s      r'�test_shuffle_maskedz"TestRandomDist.test_shuffle_masked�sC���E����
�5��9�9�f� =� =�� A�A� E�r�J�J���E����	�"�
�
�� 1�A� 5�r�:�:���������������r���	L�	L�A��N�N�1������q�v�q�v�g��'�'����V�[�L�0I�)J�)J�
L�
L�
L��N�N�1������q�v�q�v�g��'�'����V�[�L�0I�)J�)J�
L�
L�
L�
L�	L�	Lr)c
��tt|j����}tjd��}ttj|j|d��tjd���d��}ttj|j|d��tt|j|tddd����gd�gd�g}tt|j|d��tjd��}tt|j|��tj
d	��}ttj|j|d��dS)
Nrr<r�r�r�r�rTr�)r�ror�r�)rrrr8r9r�	AxisErrorr�rrC�slice�NotImplementedErrorrzr��r3rZr�s   r'�test_shuffle_exceptionsz&TestRandomDist.test_shuffle_exceptions�s���7�4�9�-�-�.�.���i��m�m���b�l�F�N�C��;�;�;��i��l�l�"�"�6�*�*���b�l�F�N�C��;�;�;��i����e�A�q�$�6G�6G�H�H�H��y�y�)�)�)�$���)�6�>�3��B�B�B��h�q�k�k���i����5�5�5��g�f�o�o���b�l�F�N�C��;�;�;�;�;r)c��tt|j����}tjd��}d|j_tjtd���5|�
|��ddd��dS#1swxYwYdS)NroF�	read-onlyr�)rrrr8rY�flags�	writeabler�r�rDr�)r3rZr�s   r'�test_shuffle_not_writeablez)TestRandomDist.test_shuffle_not_writeable�s����7�4�9�-�-�.�.���H�Q�K�K��!����
�]�:�[�
9�
9�
9�	�	��N�N�1����	�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�	�	s�B�B�Bc��tt|j����}gd�}|�|��}gd�}t	||��tt|j����}tjgd���j}|�|��}t	|tj|��j��d}tt
j	|j|��d}tt
j	|j|��tt|j����}d}gd�}|�|��}t	||��dS)Nrr�abcdg333333�?r)
r�rr�r�rr�rTror<r�)
rrr�permutationr
r8�
atleast_2dr�rr$)	r3rZrrarN�arr_2d�	bad_x_str�bad_x_float�integer_vals	         r'�test_permutationzTestRandomDist.test_permutations:���7�4�9�-�-�.�.��.�.�.���#�#�E�*�*��0�0�0���6�7�+�+�+��7�4�9�-�-�.�.����=�=�=�>�>�@���#�#�F�+�+���6�2�=��#9�#9�#;�<�<�<��	��b�l�F�$6�	�B�B�B����b�l�F�$6��D�D�D��7�4�9�-�-�.�.����0�0�0���#�#�K�0�0���6�7�+�+�+�+�+r)c��tjd���d��}tjgd�gd�gd�gd�g��}t	t|j����}|�|d���}t||��t	t|j����}|�|d	���}t||��dS)
Nr"r
rrr
rr<r�rA)	r8r9rrzrrrr0r
)r3r�rNrZras     r'�test_permutation_custom_axisz+TestRandomDist.test_permutation_custom_axiss����I�b�M�M�!�!�&�)�)���(�,�,�,�,�,�,�,�,�,�,�,�,�.�/�/���7�4�9�-�-�.�.���#�#�A�A�#�.�.���6�7�+�+�+��7�4�9�-�-�.�.���#�#�A�B�#�/�/���6�7�+�+�+�+�+r)c
��tt|j����}tjd��}ttj|j|d��tjd���d��}ttj|j|d��tt|j|tddd����dS)Nrr<rr#r�rT)rrrr8r9rr$r0rrCr%r's   r'�test_permutation_exceptionsz*TestRandomDist.test_permutation_exceptions,s����7�4�9�-�-�.�.���i��m�m���b�l�F�$6��Q�?�?�?��i��l�l�"�"�6�*�*���b�l�F�$6��Q�?�?�?��i��!3�S�%��1�d�:K�:K�L�L�L�L�Lr)rWzaxis, expectedN)r�r�rrrr)r�r�rTror<r�r)r�r<rTrrr)rr�r�r�r�ror<)ror�r�rrTr<)rrrr�r�r�c�.�tt|j����}tjd���dd���|��}|�|||���t||��tt|j����}tjd���dd���|��}|�||���}|j	|ksJ�t||��dS)Nr�rTr��r��outr�)
rrrr8r9rr��permutedr
rW)r3rWr�r�rZrr�ys       r'�
test_permutedzTestRandomDist.test_permuted4s����7�4�9�-�-�.�.���I�b�M�M�!�!�!�Q�'�'�.�.�u�5�5�������!��,�,�,��1�h�'�'�'��7�4�9�-�-�.�.���I�b�M�M�!�!�!�Q�'�'�.�.�u�5�5���O�O�A�D�O�)�)���w�%������1�h�'�'�'�'�'r)c��tt|j����}tjd���dd��}|���}|dd�ddd�f}|�|d|���}tjgd�gd�g��}t||��||dd�ddd�f<t||��dS)	N�rTrr�r<r<)rrr�r�)r�r�rr�)
rrrr8r9rrr>rzr
)r3rZ�x0�x1rrr?r�s       r'�test_permuted_with_stridesz)TestRandomDist.test_permuted_with_stridesHs����7�4�9�-�-�.�.��
�Y�r�]�]�
"�
"�1�b�
)�
)��
�W�W�Y�Y���q�q�q�#�#�A�#�v�J���O�O�A�A�1�O�-�-���8�\�\�\�-�-�-�/�0�0���1�h�'�'�'���1�1�1�c�c��c�6�
��2�r�"�"�"�"�"r)c�Z�t�g��}t|g��dSr$)rZr>r
)r3r?s  r'�test_permuted_emptyz"TestRandomDist.test_permuted_emptyUs)���O�O�B�����1�b�!�!�!�!�!r)�outshaper�roc��tjgd���}tj||j���}t	jtd���5t�||���ddd��dS#1swxYwYdS)Nr�rVz
same shaper��r=)	r8rzrYrWr�r�rDrZr>)r3rHr�r=s    r'�"test_permuted_out_with_wrong_shapez1TestRandomDist.test_permuted_out_with_wrong_shapeYs����H�Y�Y�Y�����h�x�q�w�/�/�/��
�]�:�\�
:�
:�
:�	(�	(��O�O�A�3�O�'�'�'�	(�	(�	(�	(�	(�	(�	(�	(�	(�	(�	(�	(����	(�	(�	(�	(�	(�	(s�
A7�7A;�>A;c��tjdtj���}tjd��}t	jtd���5t�|d|���ddd��dS#1swxYwYdS)N)r�rorVzCannot castr�r<r<)	r8rYr1r�r�r�rCrZr>)r3r=rrs   r'�!test_permuted_out_with_wrong_typez0TestRandomDist.test_permuted_out_with_wrong_type`s����h�v�R�X�.�.�.���G�F�O�O��
�]�9�M�
:�
:�
:�	0�	0��O�O�A�A�3�O�/�/�/�	0�	0�	0�	0�	0�	0�	0�	0�	0�	0�	0�	0����	0�	0�	0�	0�	0�	0s�A;�;A?�A?c���tjd��}d|j_t	jtd���5t�|d|���ddd��dS#1swxYwYdS)N)rTroFr*r�r<r<)	r8rYr+r,r�r�rDrZr>rqs  r'�test_permuted_not_writeablez*TestRandomDist.test_permuted_not_writeablefs����H�V����!����
�]�:�[�
9�
9�
9�	.�	.��O�O�A�A�1�O�-�-�-�	.�	.�	.�	.�	.�	.�	.�	.�	.�	.�	.�	.����	.�	.�	.�	.�	.�	.s�A'�'A+�.A+c���tt|j����}|�ddd���}t	jddgddgd	d
gg��}t
||d���dS)
Nr�r�r�r�gW�<$��=g�^
�=g�/:�Ћ�?g���G!Gc>g��'�`�2?g��U�?r�r�)rrr�betar8rzrr�s    r'�	test_betazTestRandomDist.test_betals~���7�4�9�-�-�.�.�����R��&��1�1���(�#�%:�
;�#�%:�
;�#�%:�
;�
=�>�>��	"�&�'�2�>�>�>�>�>�>r)c�d�tt|j����}|�ddd���}t	jddgddgdd	gg��}t
||��tt|j����}|�dd��}d}t
||��dS)
NgZd;�Y@g�v��/�?r�r�r�r��0�,r�)rrrr[r8rzr
r�s    r'�
test_binomialzTestRandomDist.test_binomialus����7�4�9�-�-�.�.������$�V��<�<���(�R��H���H���H�&�'�'��	�6�7�+�+�+��7�4�9�-�-�.�.������$�/�/�����6�7�+�+�+�+�+r)c���tt|j����}|�dd���}t	jddgddgdd	gg��}t
||d
���dS)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�	chisquarer8rzrr�s    r'�test_chisquarezTestRandomDist.test_chisquare�s����7�4�9�-�-�.�.���!�!�"�6�!�2�2���(�-�/?�@�-�/?�@�-�/?�@�B�C�C��	"�&�'�2�>�>�>�>�>�>r)c�B�tt|j����}tjddg��}|�|d���}tjddgddggd	d
gddggd
dgddggg��}t
||d���tjddg��}tt|j|��tt|j����}tjddg��}|�|��}t
||dd���dS)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�?缉ؗ�Ҝ�rT)	rrrr8rz�	dirichletrrrD)r3rZ�alphararN�	bad_alphas      r'�test_dirichletzTestRandomDist.test_dirichlet�sG���7�4�9�-�-�.�.����.�0D�E�F�F���!�!�%�f�!�5�5���(�0�3F�G�0�3E�G�I�0�3F�G�.�3F�G�I�1�3E�G�.�3F�G�I�	J�K�K��	"�&�'�2�>�>�>�>��H�g�x�0�1�1�	��j�&�"2�I�>�>�>��7�4�9�-�-�.�.����.�0D�E�F�F���!�!�%�(�(��!�&�'�$�-��D�D�D�D�D�Dr)c�J�tjddg��}tt�|tjd����jd��tt�|tjd����jd��tt�|tjd����jd��tt�|ddg��jd��tt�|d��jd��tt�|tjd����jd��tttj|td����dS)Nr[r\r<rurTrvrw)
r8rzrrZr_rxryrrCr{r|s  r'�test_dirichlet_sizez"TestRandomDist.test_dirichlet_size�s3���H�*�,@�A�B�B���V�%�%�a���1���6�6�<�f�E�E�E��V�%�%�a���1���6�6�<�f�E�E�E��V�%�%�a���1���6�6�<�f�E�E�E��V�%�%�a�!�Q��0�0�6�	�B�B�B��V�%�%�a��0�0�6�	�B�B�B��V�%�%�a���&�)9�)9�:�:�@�)�L�L�L��i��!1�1�e�A�h�h�?�?�?�?�?r)c	���tjddg��}tttj|��tttjddgg��tttjdgdgg��tttjdgdggdgdggg��tttjtjddgddgg����dS)Nr]r^ror<)r8rzrrDrZr_)r3r`s  r'�test_dirichlet_bad_alphaz'TestRandomDist.test_dirichlet_bad_alpha�s�����'�8�,�-�-���j�&�"2�E�:�:�:�	�j�&�"2�a��V�H�=�=�=��j�&�"2�a�S�1�#�J�?�?�?��j�&�"2�q�c�A�3�Z�1�#��s��4L�M�M�M��j�&�"2�B�H�q�!�f�q�!�f�=M�4N�4N�O�O�O�O�Or)c�l�tjgd���}|ddd�}tt|j����}|�|d���}tt|j����}|�tj|��d���}t||��dS)N)r[g�r\rTr�r�)r8rzrrrr_r�r)r3r�r`rZr�r�s      r'�#test_dirichlet_alpha_non_contiguousz2TestRandomDist.test_dirichlet_alpha_non_contiguous�s����H�G�G�G�H�H���#�#�A�#����7�4�9�-�-�.�.���%�%�e�&�%�9�9�
��7�4�9�-�-�.�.���!�!�"�"6�u�"=�"=�'-�"�/�/��!�*�f�5�5�5�5�5r)c�"�d}|tjddg��z}tt|j����}|�|d���}tjddgddggddgddggddgddggg��}t
||d���dS)	Nr���?r�r�r�rkr�r�)r8rzrrrr_r)r3�epsr`rZrar�s      r'�test_dirichlet_small_alphaz)TestRandomDist.test_dirichlet_small_alpha�s������b�h��F�|�,�,�,���7�4�9�-�-�.�.���!�!�%�f�!�5�5���8��"�X��"�X�
��"�X��"�X�
��"�X��"�X�
�
����	"�&�(�B�?�?�?�?�?�?r)c� �tjgd���}||���z}tt	|j����}|�|d���}|�d���}t||d���dS)N)g{�G�z�?g{�G�z�?g���Q��?i-1r�rr�r�)r�)	r8rzr�rrrr_r�r)r3r`�
exact_meanrZr��sample_means      r'�%test_dirichlet_moderately_small_alphaz4TestRandomDist.test_dirichlet_moderately_small_alpha�s�����+�+�+�,�,���U�Y�Y�[�[�(�
��7�4�9�-�-�.�.���!�!�%�h�!�7�7���k�k�q�k�)�)����Z�d�;�;�;�;�;�;r)c���tt|j����}|�dd���}t	jddgddgdd	gg��}t
||d
���dS)Ng�8EGr��?r�r�g�v���M�?g�����?g#��c�?g�Q��:N�?g�A��P�?gE_9���@r�r�)rrr�exponentialr8rzrr�s    r'�test_exponentialzTestRandomDist.test_exponential�s����7�4�9�-�-�.�.���#�#�F��#�8�8���(�.�0A�B�.�0A�B�.�0@�B�D�E�E��	"�&�'�2�>�>�>�>�>�>r)c��tt�d���d��tttjd���dS�Nr��scale��)rrZrrrrDrEs r'�test_exponential_0z!TestRandomDist.test_exponential_0�sA���V�'�'�a�'�0�0�!�4�4�4��j�&�"4�C�@�@�@�@�@�@r)c���tt|j����}|�ddd���}t	jddgddgd	d
gg��}t
||d���dS)
Nr��Mr�r�g}
(Ҍ�?g�
i��?g=��r���?g]h��DA�?gjӨ��?g8��k*u�?r�r�)rrr�fr8rzrr�s    r'�test_fzTestRandomDist.test_f�s����7�4�9�-�-�.�.�����"�b�v��.�.���(�.�0A�B�.�0@�B�.�0A�B�D�E�E��	"�&�'�2�>�>�>�>�>�>r)c���tt|j����}|�ddd���}t	jddgddgd	d
gg��}t
||d���dS)
Nror�r�r�g,ש�n'@gt��@g
�<�e�2@g�1��a�3@g3r
y�-2@gs��1-2@r�r�)rrr�gammar8rzrr�s    r'�
test_gammazTestRandomDist.test_gamma�s����7�4�9�-�-�.�.�����a����0�0���(�.��B�.�0A�B�.�0A�B�D�E�E��	"�&�'�2�>�>�>�>�>�>r)c��tt�dd���d��tttjdd���dS)Nr)ryrwrx)rrZrrrDrEs r'�test_gamma_0zTestRandomDist.test_gamma_0�sA���V�\�\���\�3�3�Q�7�7�7��j�&�,�c��E�E�E�E�E�Er)c���tt|j����}|�dd���}t	jddgddgddgg��}t
||��dS)N�_c97ݚ�?r�r�r<rr�r�)rrr�	geometricr8rzr
r�s    r'�test_geometriczTestRandomDist.test_geometric�ss���7�4�9�-�-�.�.���!�!�*�6�!�:�:���(�Q��G���G���H�&�'�'��	�6�7�+�+�+�+�+r)c�"�tttjd��tttjdgdz��tttjd��tttjdgdz��t	jd���5tttjtj��tttjtjgdz��ddd��dS#1swxYwYdS)Nrrr��ignore��invalid)rrDrZr�r8�errstater_rEs r'�test_geometric_exceptionsz(TestRandomDist.test_geometric_exceptions�s!���j�&�"2�C�8�8�8��j�&�"2�S�E�B�J�?�?�?��j�&�"2�D�9�9�9��j�&�"2�T�F�R�K�@�@�@�
�[��
*�
*�
*�	G�	G��*�f�&6���?�?�?��*�f�&6����2�
�F�F�F�	G�	G�	G�	G�	G�	G�	G�	G�	G�	G�	G�	G����	G�	G�	G�	G�	G�	Gs�AD�D�Dc���tt|j����}|�ddd���}t	jddgddgd	d
gg��}t
||d���dS)
Nr��@r���locrwr�g�A7G�@g��1Fi�ҿge�i��@g����_C�g0c�P��g�`�(�_տr�r�)rrr�gumbelr8rzrr�s    r'�test_gumbelzTestRandomDist.test_gumbels����7�4�9�-�-�.�.�����:�S�v��F�F���(�/�1C�D�/�1C�D�/�1C�D�F�G�G��	"�&�'�2�>�>�>�>�>�>r)c��tt�d���d��tttjd���dSru)rrZr�rrDrEs r'�
test_gumbel_0zTestRandomDist.test_gumbel_0�=���V�]�]��]�+�+�Q�/�/�/��j�&�-�s�;�;�;�;�;�;r)c���tt|j����}|�dddd���}t	jddgddgddgg��}t
||��|�dd	d
d���}t	jgd���}t
||��|�d
d	dd���}t	jgd���}t
||��|�d	dd
d���}t	jgd���}t
||��|�d	d
dd���}t	jgd���}t
||��dS)Ng333333$@g@r�r�r�rrrorr�r�)r�r�r�r�r�r�)r�r�r�r�)rrrr)rrr�hypergeometricr8rzr
r�s    r'�test_hypergeometricz"TestRandomDist.test_hypergeometricsz���7�4�9�-�-�.�.���&�&�t�S�"�6�&�B�B���(�a��G���G���G�%�&�&��	�6�7�+�+�+��&�&�q�!�Q�Q�&�7�7���(�<�<�<�(�(���6�7�+�+�+��&�&�r�1�b�q�&�9�9���(�+�+�+�,�,���6�7�+�+�+��&�&�q�!�Q�Q�&�7�7���(�<�<�<�(�(���6�7�+�+�+��&�&�q�"�b�q�&�9�9���(�<�<�<�(�(���6�7�+�+�+�+�+r)c���tt|j����}|�ddd���}t	jddgddgd	d
gg��}t
||d���dS)
Nr�r�r�r�g���6@	�ga@bDA"�?g*�[r�{�g�>K���?g���(��?g�<����?r�r�)rrr�laplacer8rzrr�s    r'�test_laplacezTestRandomDist.test_laplace.s����7�4�9�-�-�.�.�����J�c���G�G���(�/�2C�D�/�2C�D�/�2C�D�F�G�G��	"�&�'�2�>�>�>�>�>�>r)c��tt�d���d��tttjd���dSru)rrZr�rrDrEs r'�test_laplace_0zTestRandomDist.test_laplace_06s=���V�^�^�!�^�,�,�a�0�0�0��j�&�.��<�<�<�<�<�<r)c���tt|j����}|�ddd���}t	jddgddgd	d
gg��}t
||d���dS)
Nr�r�r�r�gb��Z�gHʊg$>�?g>��&���g�Qh�@g%?n��?g�ĉ�8|�?r�r�)rrr�logisticr8rzrr�s    r'�
test_logisticzTestRandomDist.test_logistic:s����7�4�9�-�-�.�.�����Z�s���H�H���(�/�2C�D�.�2C�D�/�2C�D�F�G�G��	"�&�'�2�>�>�>�>�>�>r)c���tt|j����}|�ddd���}t	jddgddgd	d
gg��}t
||d���dS)
Nr�r�r�)r��sigmar�gܒ��x�?g���k*�+@g��<��Ҿ?g��
�@g5��a�@g�%jz�(@r�r�)rrr�	lognormalr8rzrr�s    r'�test_lognormalzTestRandomDist.test_lognormalBs����7�4�9�-�-�.�.���!�!�z��6�!�J�J���(�o�/?�@�-��@�-�/?�@�B�C�C��	"�&�'�2�>�>�>�>�>�>r)c��tt�d���d��tttjd���dS)Nr)r�r<rx)rrZr�rrDrEs r'�test_lognormal_0zTestRandomDist.test_lognormal_0JsA���V�%�%�A�%�.�.��2�2�2��j�&�"2�#�>�>�>�>�>�>r)c���tt|j����}|�dd���}t	jddgddgdd	gg��}t
||��dS)
Ngƀ@���?r�)r\r�r�r�r��ror<)rrr�	logseriesr8rzr
r�s    r'�test_logserieszTestRandomDist.test_logseriesNss���7�4�9�-�-�.�.���!�!�J�V�!�<�<���(�R��H���G���F�$�%�%��	�6�7�+�+�+�+�+r)c�~�tt|j����}|�d��dksJ�dS)Nrr<)rrrr��r3rZs  r'�test_logseries_zeroz"TestRandomDist.test_logseries_zeroVs>���7�4�9�-�-�.�.������"�"�a�'�'�'�'�'�'r)�valuerkrArjg@c��tt|j����}tjd���5tjt��5|�|��ddd��n#1swxYwYtjt��5|�tj	|gdz����ddd��n#1swxYwYtjt��5|�tj	|gdz��ddd���ddd��n#1swxYwYddd��dS#1swxYwYdS)Nr�r�rrT)
rrrr8r�r�r�rDr�rz)r3r�rZs   r'�test_logseries_exceptionsz(TestRandomDist.test_logseries_exceptionsZs(���7�4�9�-�-�.�.��
�[��
*�
*�
*�	>�	>���z�*�*�
(�
(�� � ��'�'�'�
(�
(�
(�
(�
(�
(�
(�
(�
(�
(�
(����
(�
(�
(�
(���z�*�*�
9�
9�� � ���5�'�B�,�!7�!7�8�8�8�
9�
9�
9�
9�
9�
9�
9�
9�
9�
9�
9����
9�
9�
9�
9���z�*�*�
>�
>�� � ���5�'�B�,�!7�!7���!��!<�=�=�=�
>�
>�
>�
>�
>�
>�
>�
>�
>�
>�
>����
>�
>�
>�
>�
	>�	>�	>�	>�	>�	>�	>�	>�	>�	>�	>�	>����	>�	>�	>�	>�	>�	>s}�E�A3�'E�3A7	�7E�:A7	�;E�,C�E�C	�E�C	�E�35D4�(E�4D8	�8E�;D8	�<E�E�Ec���tt|j����}|�ddgdzd���}t	jgd�gd�ggd�gd	�ggd
�gd�gg��}t
||��dS)Nr��UUUUUU�?r�r�r�)r<ror<r�r�r�)r�rTr�rTr�rT)ror�rTr�r�r<)r�r�rrTr�r�)r�r�r<ror�rT)roror�r<rTr�)rrrrhr8rzr
r�s    r'�test_multinomialzTestRandomDist.test_multinomialgs����7�4�9�-�-�.�.���#�#�B���1��6�#�B�B���(�/�/�/�/�/�/�1�/�/�/�/�/�/�1�/�/�/�/�/�/�1�	2�3�3��	�6�7�+�+�+�+�+r)zfp errors don't work in wasm��reasonr�)�svd�eigh�choleskyc���tt|j����}d}ddgddgg}d}|�||||���}t	jddgdd	ggd
dgdd
ggddgddggg��}t
||d���|�|||���}t	jddg��}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}|dvr8|�||d|���}t
|d|d d!���ntt|j||d���t	jdd"gd"dggtj
�#��}t��5}	|�|||���|	�t��}
t!|
��dksJ�	ddd��n#1swxYwYt	jd��}t	jd��}tt|j||d$���tt|jt	jd%��|��tt|j|t	jd����tt|j|t	jd&����dS)'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$�(�"@rT�raise)�check_validr�r�r�)r�r�)r�r�r�).r).r<r�r�rV�other)rTr<r<r�)rrr�multivariate_normalr8rzrrrDr�RuntimeWarningrr	r�r�recordrJrY�eyer�)r3r�rZr��covr�rarNr|�sup�w�mus            r'�test_multivariate_normalz'TestRandomDist.test_multivariate_normalrsW���7�4�9�-�-�.�.�����1�v��1�v������+�+�D�#�t�F�+�K�K���(�0�3D�G�1�3E�G�I�1�3E�G�1�4E�G�I�1�4E�G�1�3E�G�I�	J�K�K��	"�&�'�2�>�>�>�>��+�+�D�#�f�+�E�E���(�-�/@�A�B�B��!�&�'�2�>�>�>�>��1�v���1�v��1�v����j�&�"<�d�C�")�	+�	+�	+�	+�
�1�v��1�v����^�V�%?��s�K�K�K��^�V�%?��s�"�	$�	$�	$�	$��k�6�#=�t�S�'�	)�	)�	)�	)�	�6�5�t�S�'/�	1�	1�	1�	1�	�j�&�"<�d�C�")�	+�	+�	+�	+��j�&�"<�d�C�")�&�	:�	:�	:�	:��1�v��1�v����_�$�$��0�0��s��8>�1�@�@�G�%�g�f�o�w�v��./�
1�
1�
1�
1�
1�
�+�v�'A�4��!+�
-�
-�
-�
-��h��C��3��(�+�2�:�>�>�>��
�
 �
 �	�C��&�&�t�S��&�@�@�@��
�
�>�*�*�A��q�6�6�Q�;�;�;�;�;�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�
�X�a�[�[���f�Q�i�i���j�&�"<�d�C�")�	+�	+�	+�	+��j�&�"<��h�y�)�)�3�	0�	0�	0��j�&�"<��"�(�6�*�*�	,�	,�	,��j�&�"<��"�&��)�)�	%�	%�	%�	%�	%s�7AJ�J�Jz	mean, covy�?�?yc���tt|j����}tjt
d���5|�||��ddd��dS#1swxYwYdS)Nzmust not be complexr�)rrrr�r�rCr�)r3r�r�rZs    r'�)test_multivariate_normal_disallow_complexz8TestRandomDist.test_multivariate_normal_disallow_complex�s����7�4�9�-�-�.�.��
�]�9�,A�
B�
B�
B�	2�	2��&�&�t�S�1�1�1�	2�	2�	2�	2�	2�	2�	2�	2�	2�	2�	2�	2����	2�	2�	2�	2�	2�	2s�A!�!A%�(A%c���tt|j����}d}tjddg��}tjddgddgg��}|�|||f|���}||z
}|j|z|dz
z}tjtj|�	d����dk��sJ�tjtj||z
��dk��sJ�dS)Nr-r<rTr�rHr�re)
rrrr8rzr�r�rp�absr�)	r3r�rZ�n_sr�r�r4�s_center�cov_emps	         r'�$test_multivariate_normal_basic_statsz3TestRandomDist.test_multivariate_normal_basic_stats�s����7�4�9�-�-�.�.�����x��A������h��A���A��'�(�(���&�&�t�S��v�f�&�M�M���t�8���:��(�S�1�W�5���v�b�f�X�]�]�2�.�.�/�/�#�5�6�6�6�6�6��v�b�f�W�s�]�+�+�c�1�2�2�2�2�2�2�2r)c���tt|j����}|�ddd���}t	jddgddgd	d
gg��}t
||��dS)Nrdg|�Pk��?r�)�nr\r�ii�ii�iXi�)rrrr�r8rzr
r�s    r'r�z%TestRandomDist.test_negative_binomial�su���7�4�9�-�-�.�.���)�)�C�6��)�G�G���(�S�#�J� �#�J� �#�J�(�)�)��	�6�7�+�+�+�+�+r)c��tjd���5tttjdtj��tttjdtjgdz��ddd��dS#1swxYwYdS)Nr�r�rdr)r8r�rrDrZr�r_rEs r'�!test_negative_binomial_exceptionsz0TestRandomDist.test_negative_binomial_exceptions�s���
�[��
*�
*�
*�	)�	)��*�f�&>��R�V�L�L�L��*�f�&>���6�(�R�-�
)�
)�
)�	)�	)�	)�	)�	)�	)�	)�	)�	)�	)�	)�	)����	)�	)�	)�	)�	)�	)s�AA>�>B�Bc��tt��5t�dd��}ddd��dS#1swxYwYdS�Nr<r)rrDrZr�rqs  r'�#test_negative_binomial_p0_exceptionz2TestRandomDist.test_negative_binomial_p0_exception�s���
�:�
&�
&�	/�	/��(�(��A�.�.�A�	/�	/�	/�	/�	/�	/�	/�	/�	/�	/�	/�	/����	/�	/�	/�	/�	/�	/s�>�A�Ac���tjd���5tttjdd��tttjdgdg��ddd��dS#1swxYwYdS)Nr�r�rRr�)r8r�rrDrZr�rEs r'�.test_negative_binomial_invalid_p_n_combinationz=TestRandomDist.test_negative_binomial_invalid_p_n_combination�s����[��
*�
*�
*�	P�	P��*�f�&>��s�K�K�K��*�f�&>���#��O�O�O�	P�	P�	P�	P�	P�	P�	P�	P�	P�	P�	P�	P����	P�	P�	P�	P�	P�	Ps�AA(�(A,�/A,c�4�tt|j����}|�ddd���}t	jddgddgdd	gg��}t
||d
���|�dd
d���}t	jddgddgddgg��}t
||d
���tt|j����}|�ddd���}t	jddgddgddgg��}t
||d
���dS)Nror�)�df�noncr�gs؀3J�?gugو��/@gN�J��m+@g��A}�-4@gq=��&@gj���hn
@r�r�rXregZօ�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_chisquarer8rzrr�s    r'�test_noncentral_chisquarez(TestRandomDist.test_noncentral_chisquare�se���7�4�9�-�-�.�.���,�,����,�G�G���(�.�0A�B�.�0A�B�-�1A�B�D�E�E��	"�&�'�2�>�>�>�>��,�,���&�,�I�I���(�1�3G�H�1�3G�H�1�3G�H�J�K�K��	"�&�'�2�>�>�>�>��7�4�9�-�-�.�.���,�,����,�G�G���(�-�/?�@�-�/?�@�-�/?�@�B�C�C��	"�&�'�2�>�>�>�>�>�>r)c���tt|j����}|�dddd���}t	jddgdd	gd
dgg��}t
||d�
��dS)NrorTr<r�)�dfnum�dfdenr�r�g�HP
�?g��n��?g�%�f���?gc�h�?g�zƎ���?g�]�?:�?r�r�)rrr�noncentral_fr8rzrr�s    r'�test_noncentral_fz TestRandomDist.test_noncentral_f�s����7�4�9�-�-�.�.���$�$�1�A�A�*0�%�2�2���(�^�/?�@�-��@�-�/?�@�B�C�C��	"�&�'�2�>�>�>�>�>�>r)c��tt|j����}|�ddtj���}t	j|��sJ�dS)NrorT)r�r�r�)rrrr�r8r_�isnan�r3rZras   r'�test_noncentral_f_nanz$TestRandomDist.test_noncentral_f_nansQ���7�4�9�-�-�.�.���$�$�1�A�B�F�$�C�C���x��������r)c���tt|j����}|�ddd���}t	jddgddgd	d
gg��}t
||d���dS)
Nr�r�r�r�g�?`x���g\�P�@g/7��u��g�0aj���?g��i�%�?go��g��@r�r�)rrr�normalr8rzrr�s    r'�test_normalzTestRandomDist.test_normal
s����7�4�9�-�-�.�.�����:�S�v��F�F���(�/�2C�D�/�2C�D�/�2C�D�F�G�G��	"�&�'�2�>�>�>�>�>�>r)c��tt�d���d��tttjd���dSru)rrZr�rrDrEs r'�
test_normal_0zTestRandomDist.test_normal_0r�r)c���tt|j����}|�dd���}t	jddgddgdd	gg��}tj�||d
���dS)Nr�r��r�r�g��á�?g�ƫ�h��@g�i�`�>�?g��0"&Ag���c�@g=��f�Ar�)�nulp)rrr�paretor8rz�testing�assert_array_almost_equal_nulpr�s    r'�test_paretozTestRandomDist.test_paretos����7�4�9�-�-�.�.������&��9�9���(�3�5K�L�3�5K�L�3�5K�L�N�O�O��	�
�1�1�&�'��1�K�K�K�K�Kr)c���tt|j����}|�dd���}t	jddgddgddgg��}t
||��dS)Nr�r�)�lamr�r)rrr�poissonr8rzr
r�s    r'�test_poissonzTestRandomDist.test_poisson'sp���7�4�9�-�-�.�.�����J�V��<�<���(�Q��F���F���F�$�%�%��	�6�7�+�+�+�+�+r)c�X�tjd��j}d}ttt
j|��ttt
j|gdz��ttt
j|��ttt
j|gdz��tjd���5ttt
jtj��ttt
jtjgdz��ddd��dS#1swxYwYdS)Nr�rArr�r�)	r8r�r�rrDrZr�r�r_)r3�lambig�lamnegs   r'�test_poisson_exceptionsz&TestRandomDist.test_poisson_exceptions/s2����'�"�"�&�����j�&�.�&�9�9�9��j�&�.�6�(�R�-�@�@�@��j�&�.�&�9�9�9��j�&�.�6�(�R�-�@�@�@�
�[��
*�
*�
*�	E�	E��*�f�n�b�f�=�=�=��*�f�n�r�v�h��m�D�D�D�	E�	E�	E�	E�	E�	E�	E�	E�	E�	E�	E�	E����	E�	E�	E�	E�	E�	Es�9AD�D#�&D#c���tt|j����}|�dd���}t	jddgddgdd	gg��}t
||d
���dS)Nr�r�r�g����Z� >g������?gÄ�(�=g҇����?g�Ś�E��?g�ߢ��H�?r�r�)rrr�powerr8rzrr�s    r'�
test_powerzTestRandomDist.test_power:s���7�4�9�-�-�.�.�����
���8�8���(�2�4I�J�2�4I�J�2�4I�J�L�M�M��	"�&�'�2�>�>�>�>�>�>r)c���tt|j����}|�dd���}t	jddgddgdd	gg��}t
||d
���dS)Nrr�)rwr�gr�y��@g�tQ�P�0@gAI���_
@g@�u8�1@g��	��G0@g"w�c5@r�r�)rrr�rayleighr8rzrr�s    r'�
test_rayleighzTestRandomDist.test_rayleighBs���7�4�9�-�-�.�.�����r���7�7���(�-�/@�A�-�/@�A�.�0A�B�D�E�E��	"�&�'�2�>�>�>�>�>�>r)c��tt�d���d��tttjd���dSru)rrZr�rrDrEs r'�test_rayleigh_0zTestRandomDist.test_rayleigh_0Js=���V�_�_�1�_�-�-�q�1�1�1��j�&�/��=�=�=�=�=�=r)c���tt|j����}|�d���}t	jddgddgddgg��}t
||d	�
��dS)Nr�r�g�H1����gW�|�3
�g����\��?gL�e���g5�P�	��g��FA��?r�r�)rrr�standard_cauchyr8rzrr�s    r'�test_standard_cauchyz#TestRandomDist.test_standard_cauchyNs����7�4�9�-�-�.�.���'�'�V�'�4�4���(�/�1C�D�/�1C�D�/�2C�D�F�G�G��	"�&�'�2�>�>�>�>�>�>r)c���tt|j����}|�dd���}t	jddgddgdd	gg��}t
||d
���dS)Nr��invr�ga\�5��?gr�7k��?g8�PC*��?g5��$�[�?gW3�T��?g*���?r�r�)rrr�standard_exponentialr8rzrr�s    r'�test_standard_exponentialz(TestRandomDist.test_standard_exponentialVs����7�4�9�-�-�.�.���,�,�&��,�G�G���(�.�0A�B�.�0A�B�.�0A�B�D�E�E��	"�&�'�2�>�>�>�>�>�>r)c�\�tttjtj���dS�NrV)rrCrZrr8r1rEs r'�#test_standard_expoential_type_errorz2TestRandomDist.test_standard_expoential_type_error^s"���i��!<�B�H�M�M�M�M�M�Mr)c���tt|j����}|�dd���}t	jddgddgdd	gg��}t
||d
���dS)Nr�r��ryr�g
Έ̏&�?gT�Ͽ���?g1n2�1@gDb<z�@g�Bv�
@g��c^��
@r�r��rrr�standard_gammar8rzrr�s    r'�test_standard_gammaz"TestRandomDist.test_standard_gammaas����7�4�9�-�-�.�.���&�&�Q�V�&�<�<���(�-�/?�@�+�/?�@�-�/?�@�B�C�C��	"�&�'�2�>�>�>�>�>�>r)c��tt|j����}|�dtj���}d}t
||d���dS)Nr�rVg��d@r�r�)rrrrr8r�rr�s    r'�!test_standard_gammma_scalar_floatz0TestRandomDist.test_standard_gammma_scalar_floatisS���7�4�9�-�-�.�.���&�&�q��
�&�;�;��$��!�&�'�1�=�=�=�=�=�=r)c���tt|j����}|�dd���}t	jddgddgdd	gg��}t
||d
���dS)Nr�r�rgf���&�?gM�
O���?g���1@g�):��@g����
@g;�i���
@ror�r
r�s    r'�test_standard_gamma_floatz(TestRandomDist.test_standard_gamma_floatos{���7�4�9�-�-�.�.���&�&�Q�V�&�<�<���(�W�f�.�$�f�.�$�g�.�0�1�1��	"�&�'�1�=�=�=�=�=�=r)c���tjdtj���}tt	|j����}|�d|tj���tjddgddgd	d
ggtj���}t||d���tt	|j����}|�d|dtj�
��t||d���dS)Nr�rV�$@�r=rWg�M�»L$@g�a��{@g��N]��"@gPS��")@g����_�+@gm���B@ror��r=r�rW)	r8rYr�rrrrrzr)r3rarZrNs    r'�test_standard_gammma_float_outz-TestRandomDist.test_standard_gammma_float_outws�����&��
�3�3�3���7�4�9�-�-�.�.�����d��b�j��A�A�A��(�X��0�&��1�&��1�3�:<�*�F�F�F��	"�&�'�1�=�=�=�=��7�4�9�-�-�.�.�����d��V�2�:��N�N�N�!�&�'�1�=�=�=�=�=�=r)c�J�tttjdd���dS)Nrjr1rV)rrCrZrrEs r'� test_standard_gamma_unknown_typez/TestRandomDist.test_standard_gamma_unknown_type�s/���i��!6��#�	%�	%�	%�	%�	%�	%r)c��tjd��}tttjdd|���tttjdd|���dS)Nrrr�)r�r=)rr<)r8rYrrDrZr)r3r=s  r'�test_out_size_mismatchz%TestRandomDist.test_out_size_mismatch�sc���h�r�l�l���j�&�"7��B��	�	�	�	��j�&�"7��G��	�	�	�	�	�	r)c��tt�d���d��tttjd���dS)Nr)ryrx)rrZrrrDrEs r'�test_standard_gamma_0z$TestRandomDist.test_standard_gamma_0�sA���V�*�*��*�3�3�Q�7�7�7��j�&�"7�s�C�C�C�C�C�Cr)c���tt|j����}|�d���}t	jddgddgddgg��}t
||d	�
��dS)Nr�r�g�
bY�g?�� �?gGH{L��gz�\��?gc��`+�?gT�}���?r�r�)rrrr�r8rzrr�s    r'�test_standard_normalz#TestRandomDist.test_standard_normal�s����7�4�9�-�-�.�.���'�'�V�'�4�4���(�/�2B�D�/�2C�D�/�2C�D�F�G�G��	"�&�'�2�>�>�>�>�>�>r)c�\�tttjtj���dSr	)rrCrZr�r8r1rEs r'�%test_standard_normal_unsupported_typez4TestRandomDist.test_standard_normal_unsupported_type�s"���i��!7�r�x�H�H�H�H�H�Hr)c���tt|j����}|�dd���}t	jddgddgdd	gg��}t
||d
���dS)Nrr�)r�r�g��V1���g	|ڙ(��?g����-��?g�N�hڿgM�c�?g!uL��M�r�r�)rrr�
standard_tr8rzrr�s    r'�test_standard_tzTestRandomDist.test_standard_t�s����7�4�9�-�-�.�.���"�"�b�v�"�6�6���(�/�2B�D�/�1C�D�/�1C�D�F�G�G��	"�&�'�2�>�>�>�>�>�>r)c���tt|j����}|�dddd���}t	jddgdd	gd
dgg��}t
||d�
��dS)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�
triangularr8rzrr�s    r'�test_triangularzTestRandomDist.test_triangular�s����7�4�9�-�-�.�.���"�"��5��(.�#�0�0���(�.�0@�B�.�0A�B�.�0A�B�D�E�E��	"�&�'�2�>�>�>�>�>�>r)c���tt|j����}|�ddd���}t	jddgddgd	d
gg��}t
||d���dS)
N�G�z��?g�G�z%@r�)rYrZr�gm�2�@gJ�a�D@g��:�@g
���Q� @g@T{e�@g�b��@r�r��rrr�uniformr8rzrr�s    r'�test_uniformzTestRandomDist.test_uniform�s����7�4�9�-�-�.�.�����D�u�6��B�B���(�-�0A�B�.�0A�B�.�0A�B�D�E�E��	"�&�'�2�>�>�>�>�>�>r)c�(�tjd��j}tjd��j}tj}t
t|tjd��t
t|dtj��t
t|||��t
t|tjgdg��t
t|dgtjg��t�tj	|d��|dz���dS)Nr{rr<g�؅W4vC)rYrZ)
r8�finforr�rZr/r�
OverflowError�inf�	nextafter)r3�fmin�fmax�funcs    r'�test_uniform_range_boundsz(TestRandomDist.test_uniform_range_bounds�s����x�� � �$���x�� � �$���~���m�T�B�F�7�A�6�6�6��m�T�1�b�f�5�5�5��m�T�4��6�6�6��m�T�R�V�G�9�q�c�:�:�:��m�T�A�3����9�9�9�
	���2�<��a�0�0�t�d�{��C�C�C�C�Cr)c�D�tj}|dd��}t|d��|dtjgdtjg��}t|dtjg��|dgdggddg��}t|dtjd��z��dS)N��?rkg
ףp= @rw)rZr/rr8�pirY)r3r8�results   r'�test_uniform_zero_rangez&TestRandomDist.test_uniform_zero_range�s����~����c�3�������$�$�$���s�B�E�l�S�"�%�L�1�1�����b�e��-�-�-����y�7�)�,�w��.@�A�A�����"�(�6�*:�*:� :�;�;�;�;�;r)c��tj}tt|dd��tt|ddgddg��tt|ddgddggd��dS)NrTr<rr�)rZr/rrD)r3r8s  r'�test_uniform_neg_rangez%TestRandomDist.test_uniform_neg_range�s_���~���j�$��1�-�-�-��j�$�!�Q��!�Q��8�8�8��j�$�1�a�&�!�Q���!�<�<�<�<�<r)c��Gd�dtj��}tjd���|��}t	t
tj||��Gd�dtj��}tjd���|��}t	t
tj|dd��dS)Nc��eZdZd�ZdS)�GTestRandomDist.test_scalar_exception_propagation.<locals>.ThrowingFloatc��t�r$�rCrEs r'�	__float__zQTestRandomDist.test_scalar_exception_propagation.<locals>.ThrowingFloat.__float__�����r)N)rMrNrOrFrPr)r'�
ThrowingFloatrC��#������
 �
 �
 �
 �
 r)rHrjc��eZdZd�ZdS)�ITestRandomDist.test_scalar_exception_propagation.<locals>.ThrowingIntegerc��t�r$rErEs r'�__int__zQTestRandomDist.test_scalar_exception_propagation.<locals>.ThrowingInteger.__int__�rGr)N)rMrNrOrMrPr)r'�ThrowingIntegerrK�rIr)rNr<)	r8�ndarrayrzr>rrCrZr/r�)r3rH�throwing_floatrN�throwing_ints     r'�!test_scalar_exception_propagationz0TestRandomDist.test_scalar_exception_propagation�s���	 �	 �	 �	 �	 �B�J�	 �	 �	 ���#���+�+�M�:�:���i����$�	&�	&�	&�	 �	 �	 �	 �	 �b�j�	 �	 �	 ��x��{�{�'�'��8�8���i��!6��a��K�K�K�K�Kr)c���tt|j����}|�ddd���}t	jddgddgd	d
gg��}t
||d���dS)
Nr-�p=
ף�?r��r��kappar�gL��A��?g�x�yw�@g��z�VR�?g�pE� �?g�8&�A�пg���v@r�r�)rrr�vonmisesr8rzrr�s    r'�
test_vonmiseszTestRandomDist.test_vonmises�s����7�4�9�-�-�.�.�����D��6��B�B���(�/�2C�D�/�2C�D�/�2C�D�F�G�G��	"�&�'�2�>�>�>�>�>�>r)c���tt|j����}|�ddd���}t	tj|�������dS)Nrkgg5_P�G>i@BrU)rrrrWrr8�isfiniterp�r3rZ�rs   r'�test_vonmises_smallz"TestRandomDist.test_vonmises_small�sX���7�4�9�-�-�.�.���O�O�r��e�O�<�<�����A���"�"�$�$�%�%�%�%�%r)c���tt|j����}|�dtj���}t
t	j|����dS)Nrk)r�rV)rrrrWr8r_rr�r[s   r'�test_vonmises_nanz TestRandomDist.test_vonmises_nan�sL���7�4�9�-�-�.�.���O�O�r���O�0�0������������r)rVg��@�4&�kCc�d�tt|j����}t|j��}|jj}|�d|d���}||j_|�d|d���}|dkrt||��dStj	||k��sJ�dS)Nrrr�g��.A)
rrrrr�r�rWrr8rp)r3rVrZ�rsr��random_state_vals�gen_valss       r'�test_vonmises_large_kappaz(TestRandomDist.test_vonmises_large_kappa�s����7�4�9�-�-�.�.��
��-�
.�
.���$�*���K�K��5�r�K�:�:��%*���"��?�?�1�e�"�?�5�5���3�;�;��-�x�8�8�8�8�8��6�+�x�7�8�8�8�8�8�8�8r)r�g�g�������g������	@)r�g���ư>r<g@�@r`c��tt|j����}|�||d��}t	tj|t
jk��o!tj|t
jk����dS)Nr�)rrrrWrr8rpr<)r3r�rVrZr\s     r'�test_vonmises_large_kappa_rangez.TestRandomDist.test_vonmises_large_kappa_range
sk���7�4�9�-�-�.�.���O�O�B��r�*�*�����q�B�E�6�z�"�"�9�r�v�a�2�5�j�'9�'9�:�:�:�:�:r)c���tt|j����}|�ddd���}t	jddgddgd	d
gg��}t
||d���dS)
Nr-rTr�)r�rwr�g
*س�2�?g�t���	@g�;S�@g\���F@g�x��F�@g���6b�?r�r�)rrr�waldr8rzrr�s    r'�	test_waldzTestRandomDist.test_walds����7�4�9�-�-�.�.�����$�d���@�@���(�-��@�-�/?�@�-�/?�@�B�C�C��	"�&�'�2�>�>�>�>�>�>r)c���tt|j����}|�dd���}t	jddgddgdd	gg��}t
||d
���dS)Nr-r�r�gnJZ���?g*�/F��?gs�(RY��?g��]'%�?g,�q�D�?g�8 �?r�r�)rrr�weibullr8rzrr�s    r'�test_weibullzTestRandomDist.test_weibulls���7�4�9�-�-�.�.�����$�V��4�4���(�.�0A�B�.�0A�B�.�0A�B�D�E�E��	"�&�'�2�>�>�>�>�>�>r)c���tt|j����}t|�dd���tjd����tt|jd���dS)Nrr�r�rx)r�)	rrrrrlr8rYrrDr�s  r'�test_weibull_0zTestRandomDist.test_weibull_0$s^���7�4�9�-�-�.�.���V�^�^�a�b�^�1�1�2�8�B�<�<�@�@�@��j�&�.�C�8�8�8�8�8�8r)c���tt|j����}|�dd���}t	jddgddgddgg��}t
||��dS)	Nr-r�r�r<ricibrT)rrr�zipfr8rzr
r�s    r'�	test_zipfzTestRandomDist.test_zipf)sp���7�4�9�-�-�.�.�����t�&��1�1���(�q�A�J� �#�J� �A�J�(�)�)��	�6�7�+�+�+�+�+r))�rMrNrOr�r�r�r�r�r�r�r�r�r�r�r8r�rx�float64r4r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rrrrr!r(r-r6r8r:rUrVrzr@rErGrKrMrOrRrVrYrbrdrfrhrlr�rprsryr}r�r�r�r�r�r�r�r�r�r�r�r�r�r�r5r_r�r��skipifr
r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rrrr
rrrrrrrr r"r%r+r0r9r>r@rRrXr]r_rer<rgrjrmrorrrPr)r'r�r��s�	���������,�,�,�,�,�,�,�,�,�
&�
&�
&�
E�
E�
E�>�>�>�>�>�>��[���4�!�z�2�9�5�!�z�2�9�5�7�8�8�/�/�8�8�/�?�?�?�,�,�,�,�,�,�,�,�,�,�,�,�,�,�,�,�,�,�,�,�,�2�2�2�$,9�,9�,9�\9�9�9�
/�/�/�
(�
(�
(�$�$�$�&�&�&�0�0�0�6,�,�,�0�0�0�#�#�#�L�L�L�
<�
<�
<����,�,�,�2,�,�,�M�M�M��[���W�s�F�m�4�4��[���-�#�X�R�X�/C�/C�/C�/C�/C�/C�/E�&F�&F�G� �(�"�(�,@�,@�,@�,@�,@�,@�,B�#C�#C�D� �(�"�(�,@�,@�,@�,@�,@�,@�,B�#C�#C�D�	E�F�F�
(�
(�F�F�5�4�
(�#�#�#�"�"�"��[���Z�&�!��5�5�(�(�6�5�(�0�0�0�.�.�.�?�?�?�,�,�,�?�?�?�E�E�E�&
@�
@�
@�	P�	P�	P�6�6�6�
@�
@�
@��[��<�<���<�?�?�?�A�A�A�?�?�?�?�?�?�F�F�F�,�,�,�G�G�G�?�?�?�<�<�<�,�,�,�4?�?�?�=�=�=�?�?�?�?�?�?�?�?�?�,�,�,�(�(�(��[���W�|�r�|�B��';�';�R����&L�M�M�
>�
>�N�M�
>�	,�	,�	,��[����(F��G�G��[���X�'B�'B�'B�C�C�G%�G%�D�C�H�G�G%�R�[���[�Q�C�4�&��?�b�T�Q�C�5�M�*J�K�K�2�2�L�K�2�
�[���X�'B�'B�'B�C�C�
3�
3�D�C�
3�,�,�,�)�)�)�/�/�/�
P�P�P�?�?�?�*?�?�?� � � �
?�?�?�<�<�<�L�L�L�,�,�,�	E�	E�	E�?�?�?�?�?�?�>�>�>�?�?�?�?�?�?�N�N�N�?�?�?�>�>�>�>�>�>�>�>�>�%�%�%����D�D�D�?�?�?�I�I�I�?�?�?�?�?�?�?�?�?�D�D�D� <�<�<�=�=�=�L�L�L�,?�?�?�&�&�&����
�[���W�s�D�k�2�2�9�9�3�2�9��[���T�C�"�%���r�u�c�#B�C�C��[���W�&@�&@�&@�A�A�;�;�B�A�D�C�;�
?�?�?�?�?�?�9�9�9�
,�,�,�,�,r)r�c	�p�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#j$�%d!d"e&j'd"d"g��e&j'd"ggd"ggg��g��d#���Z(d$�Z)d%�Z*d&S)'�
TestBroadcastc��d|_dS)Ni�[r�rEs r'r�zTestBroadcast.setup_method5s
����	�	�	r)c��tt|j����}dg}dg}|j}t	jgd���}tt|j����}|�|dz|��}t
||d���tt|j����}|�||dz��}t
||d���dS)Nrr<)g�4�
7^�?g�F]
"�?g�� .�?r�r�r�r.)r3rZrYrZr/rNras       r'r0zTestBroadcast.test_uniform9s����7�4�9�-�-�.�.���c���s���.���(�Q�Q�Q�R�R���7�4�9�-�-�.�.������a���.�.��!�&�'�2�>�>�>�>��7�4�9�-�-�.�.������T�A�X�.�.��!�&�'�2�>�>�>�>�>�>r)c�"�dg}dg}dg}tt|j����}tjgd���}tt|j����}|�|dz|��}t
||d���tt|j|dz|��tt|j����}|j}|||dz��}t
||d���tt|||dz��dS)Nrr<rA)gw-D���ؿgn�0_x�?g�ʊ;<.�?r�r�r�)	rrrr8rzr�rrrD)r3r�rw�	bad_scalerZrNrar�s        r'r�zTestBroadcast.test_normalHs���c������D�	��7�4�9�-�-�.�.���(�S�S�S�T�T���7�4�9�-�-�.�.�����s�Q�w��.�.��!�&�'�2�>�>�>�>��j�&�-��q��)�D�D�D��7�4�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����}|�||dz��}t
||d���dS)	Nr<rTrArH)gf�8���?g��%�eo�?g�$q?���?r�r�r�)	r8rzrrrrQrrrD)	r3r�r��bad_a�bad_brNrZrQras	         r'rRzTestBroadcast.test_betaZs���
�C��
�C���������(�Q�Q�Q�R�R���7�4�9�-�-�.�.���{����a�!�e�Q����!�&�'�2�>�>�>�>��j�$���	�1�5�5�5��j�$��A��u�5�5�5��7�4�9�-�-�.�.�����Q��A��&�&��!�&�'�2�>�>�>�>�>�>r)c��dg}dg}tjgd���}tt|j����}|�|dz��}t
||d���tt|j|dz��dS�Nr<rA)g`��ʄ�?g�E��]�?g�
��?r�r�r�)	r8rzrrrrrrrrD�r3rwrzrNrZras      r'rszTestBroadcast.test_exponentialls�������D�	��(�P�P�P�Q�Q���7�4�9�-�-�.�.���#�#�E�A�I�.�.��!�&�'�2�>�>�>�>��j�&�"4�i�!�m�D�D�D�D�Dr)c��dg}dg}tjgd���}tt|j����}|j}||dz��}t
||d���tt||dz��dSr)	r8rzrrrrrrrD)r3ry�	bad_shaperNrZ�	std_gammaras       r'rz!TestBroadcast.test_standard_gammavs�������D�	��(�P�P�P�Q�Q���7�4�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��dS)	Nr<rTrArH)g3��ʄ�?gJE��]�?g�
��?r�r�r�)	r8rzrrrrrrrD)	r3ryrwr�rzrNrZrras	         r'r�zTestBroadcast.test_gamma�s*���������D�	��D�	��(�P�P�P�Q�Q���7�4�9�-�-�.�.�������u�q�y�%�(�(��!�&�'�2�>�>�>�>��j�%��Q���>�>�>��j�%����I�>�>�>��7�4�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��dS)	Nr<rTrArH)g�M3B��?gybi��@g0���?r�r�r�)	r8rzrrrr|rrrD)	r3r�r��	bad_dfnum�	bad_dfdenrNrZr|ras	         r'r}zTestBroadcast.test_f�s*���������D�	��D�	��(�Q�Q�Q�R�R���7�4�9�-�-�.�.���H����5�1�9�e�$�$��!�&�'�2�>�>�>�>��j�!�Y��]�E�:�:�:��j�!�U�Q�Y�	�:�:�:��7�4�9�-�-�.�.���H����5�%�!�)�$�$��!�&�'�2�>�>�>�>��j�!�Y���	�:�:�:��j�!�U�I��M�:�:�:�:�:r)c
�z�dg}dg}dg}dg}dg}dg}tjgd���}tt|j����}|j}	|	|dz||��}
t
|
|d�	��tjtj|	||tj	gdz������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��dS)
NrTr�r�rrArH)gŜ,n�1@g�!�6�)@g���9��?r�r�)r8rzrrrr�rrpr�r_rrD)r3r�r�r�r�r��bad_noncrNrZ�nonc_fras           r'r�zTestBroadcast.test_noncentral_f�sI���������s���C�	��D�	��4���(�R�R�R�S�S���7�4�9�-�-�.�.���$������	�5�$�/�/��!�&�'�2�>�>�>�>��v�b�h�v�v�e�U�R�V�H�q�L�A�A�B�B�C�C�C�C�C��j�&�)�a�-���E�E�E��j�&�%�!�)�Y��E�E�E��j�&�%�!�)�U�H�E�E�E��7�4�9�-�-�.�.���$�����u�q�y�$�/�/��!�&�'�2�>�>�>�>��j�&�)�U�Q�Y��E�E�E��j�&�%��Q���E�E�E��j�&�%����H�E�E�E��7�4�9�-�-�.�.���$�����u�d�Q�h�/�/��!�&�'�2�>�>�>�>��j�&�)�U�D�1�H�E�E�E��j�&�%��D�1�H�E�E�E��j�&�%���1��E�E�E�E�Er)c���tt|j����}tjddg��}|�dddd���}t
||d���dS)NgZ\���#�?gDq�w��?r�rTr�r�r�)rrrr8rzr�r)r3rZrNras    r'�test_noncentral_f_small_dfz(TestBroadcast.test_noncentral_f_small_df�se���7�4�9�-�-�.�.���(�,�o�>�?�?���$�$�S�#�q�q�$�9�9��!�&�'�2�>�>�>�>�>�>r)c��dg}dg}tjgd���}tt|j����}|�|dz��}t
||d���tt|j|dz��dS)Nr<rA)g���C{��?g7Q��#��?g%h�1T�@r�r�r�)	r8rzrrrrXrrrD�r3r��bad_dfrNrZras      r'rYzTestBroadcast.test_chisquare�s����S������(�P�P�P�Q�Q���7�4�9�-�-�.�.���!�!�"�q�&�)�)��!�&�'�2�>�>�>�>��j�&�"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��dS)	Nr<rTrArH)g-��S��?g�[�@gr�3/�.�?r�r�r�)	r8rzrrrr�rrrD)	r3r�r�r�r�rNrZ�nonc_chiras	         r'r�z'TestBroadcast.test_noncentral_chisquare�s,���S���s������4���(�O�O�O�P�P���7�4�9�-�-�.�.���.����"�q�&�$�'�'��!�&�'�2�>�>�>�>��j�(�F�Q�J��=�=�=��j�(�B��F�H�=�=�=��7�4�9�-�-�.�.���.����"�d�Q�h�'�'��!�&�'�2�>�>�>�>��j�(�F�D�1�H�=�=�=��j�(�B��1��=�=�=�=�=r)c��dg}dg}tjgd���}tt|j����}|�|dz��}t
||d���tt|j|dz��dS)Nr<rA)g
��>�Q��g��{��g�,��e�?r�r�r�)	r8rzrrrr$rrrDr�s      r'r%zTestBroadcast.test_standard_t�s����S������(�S�S�S�T�T���7�4�9�-�-�.�.���"�"�2��6�*�*��!�&�'�2�>�>�>�>��j�&�"3�V�a�Z�@�@�@�@�@r)c���dg}dg}dg}tjgd���}tt|j����}|�|dz|��}t
||d���tt|j|dz|��tt|j����}|�||dz��}t
||d���tt|j||dz��dS)NrTr<rA)g�D�()@g,)ʸ�@gP��o��r�r�r�)	r8rzrrrrWrrrD)r3r�rV�	bad_kapparNrZras       r'rXzTestBroadcast.test_vonmises�s����S������D�	��(�R�R�R�S�S���7�4�9�-�-�.�.������a���/�/��!�&�'�2�>�>�>�>��j�&�/�2��6�9�E�E�E��7�4�9�-�-�.�.������U�Q�Y�/�/��!�&�'�2�>�>�>�>��j�&�/�2�y�1�}�E�E�E�E�Er)c��dg}dg}tjgd���}tt|j����}|�|dz��}t
||d���tt|j|dz��dS)Nr<rA)g�/h����?gc��E��?g/g�V��?r�r�r�)	r8rzrrrr�rrrD�r3r�r|rNrZras      r'r�zTestBroadcast.test_pareto
s���
�C������(�Q�Q�Q�R�R���7�4�9�-�-�.�.�����q�1�u�%�%��!�&�'�2�>�>�>�>��j�&�-����;�;�;�;�;r)c��dg}dg}tjgd���}tt|j����}|�|dz��}t
||d���tt|j|dz��dSr)	r8rzrrrrlrrrDr�s      r'rmzTestBroadcast.test_weibulls���
�C������(�P�P�P�Q�Q���7�4�9�-�-�.�.������A��&�&��!�&�'�2�>�>�>�>��j�&�.�%�!�)�<�<�<�<�<r)c��dg}dg}tjgd���}tt|j����}|�|dz��}t
||d���tt|j|dz��dS)Nr<rA)g���T�?g��ʥ��?gK�ܮc�?r�r�r�)	r8rzrrrr�rrrDr�s      r'r�zTestBroadcast.test_power!s���
�C������(�Q�Q�Q�R�R���7�4�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��dS)Nrr<rA)gh&�B��g�s���gR�#���?r�r�r�)	r8rzrrrr�rrrD)r3r�rwrzrNrZr�ras        r'r�zTestBroadcast.test_laplace+s����c������D�	��(�S�S�S�T�T���7�4�9�-�-�.�.���.�����q��%�(�(��!�&�'�2�>�>�>�>��j�'�3��7�I�>�>�>��7�4�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��dS)Nrr<rA)g�s�4�?g�$Cw%T�?g���տr�r�r�)	r8rzrrrr�rrrD)r3r�rwrzrNrZr�ras        r'r�zTestBroadcast.test_gumbel=s����c������D�	��(�R�R�R�S�S���7�4�9�-�-�.�.��������a���'�'��!�&�'�2�>�>�>�>��j�&�#��'�9�=�=�=��7�4�9�-�-�.�.��������U�Q�Y�'�'��!�&�'�2�>�>�>�>��j�&�#�y�1�}�=�=�=�=�=r)c�8�dg}dg}dg}tjgd���}tt|j����}|�|dz|��}t
||d���tt|j|dz|��tt|j����}|�||dz��}t
||d���tt|j||dz��t|�dd	��d��dS)
Nrr<rA)g�$�D���g�X��P���g�,��?r�r�r�rjrk)
r8rzrrrr�rrrDr)r3r�rwrzrNrZras       r'r�zTestBroadcast.test_logisticOs���c������D�	��(�Q�Q�Q�R�R���7�4�9�-�-�.�.������q��%�0�0��!�&�'�2�>�>�>�>��j�&�/�3��7�I�F�F�F��7�4�9�-�-�.�.������e�a�i�0�0��!�&�'�2�>�>�>�>��j�&�/�3�	�A�
�F�F�F��V�_�_�S�#�.�.��4�4�4�4�4r)c��dg}dg}dg}tjgd���}tt|j����}|j}||dz|��}t
||d���tt||dz|��tt|j����}|�||dz��}tt|j||dz��dS)Nrr<rA)g�c���?g���u�@g�V��Q�?r�r�r�)	r8rzrrrr�rrrD)r3r�r��	bad_sigmarNrZr�ras        r'r�zTestBroadcast.test_lognormal`s����s������D�	��(�Q�Q�Q�R�R���7�4�9�-�-�.�.���$�	���4�!�8�U�+�+��!�&�'�2�>�>�>�>��j�)�T�A�X�y�A�A�A��7�4�9�-�-�.�.���!�!�$���	�2�2���j�&�"2�D�)�a�-�H�H�H�H�Hr)c��dg}dg}tjgd���}tt|j����}|�|dz��}t
||d���tt|j|dz��dS)Nr<rA)gs�(��?g4
mK���?g�Vk�+�?r�r�r�)	r8rzrrrr�rrrDr�s      r'r�zTestBroadcast.test_rayleighps�������D�	��(�
!�
!�
!�
�
���7�4�9�-�-�.�.��������+�+��!�&�'�2�>�>�>�>��j�&�/�9�q�=�A�A�A�A�Ar)c�r�dg}dg}dg}dg}tjgd���}tt|j����}|�|dz|��}t
||d���tt|j|dz|��tt|j|dz|��tt|j����}|�||dz��}t
||d���tt|j||dz��tt|j||dz��dS)	NrXr<rrH)g�k7��Z�?g��*}z9�?gc���-	�?r�r�r�)	r8rzrrrrirrrD)r3r�rw�bad_meanrzrNrZras        r'rjzTestBroadcast.test_wald~s(���u������3���D�	��(�O�O�O�P�P���7�4�9�-�-�.�.�����T�A�X�u�-�-��!�&�'�2�>�>�>�>��j�&�+�x�!�|�U�C�C�C��j�&�+�t�a�x��C�C�C��7�4�9�-�-�.�.�����T�5�1�9�-�-��!�&�'�2�>�>�>�>��j�&�+�x����C�C�C��j�&�+�t�Y��]�C�C�C�C�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��dS)Nr<r�rTr�)gR8T��>�?gK���?g�;��>h@r�r�rrkg4@g9@)	r8rzrrrr*rrrD)r3r'r)r(�bad_left_one�bad_mode_one�bad_left_two�bad_mode_tworNrZr*ras            r'r+zTestBroadcast.test_triangular�s{���s������s���s���s��%*�Q�Y�"��l��(�Q�Q�Q�R�R���7�4�9�-�-�.�.���&�
���D�1�H�d�E�2�2��!�&�'�2�>�>�>�>��j�*�l�Q�.>��e�L�L�L��j�*�d�Q�h��e�L�L�L��j�*�l�Q�.>���	�	�	��7�4�9�-�-�.�.���&�
���D�$��(�E�2�2��!�&�'�2�>�>�>�>��j�*�l�D�1�H�e�L�L�L��j�*�d�L�1�4D�e�L�L�L��j�*�l�L�1�<L��	�	�	��7�4�9�-�-�.�.���&�
���D�$���	�2�2��!�&�'�2�>�>�>�>��j�*�l�D�%�!�)�L�L�L��j�*�d�L�%�!�)�L�L�L��j�*�l�L��a�i�	!�	!�	!�	�j�*�c�2�s�;�;�;��j�*�c�3��<�<�<��j�*�c�3��<�<�<�<�<r)c��dg}dg}dg}dg}dg}tjgd���}tt|j����}|j}||dz|��}	t
|	|��tt||dz|��tt||dz|��tt||dz|��tt|j����}|�||dz��}	t
|	|��tt|||dz��tt|||dz��tt|||dz��dS)Nr<rXrAr;�rrr<r�)	r8rzrrrr[r
rrD)
r3r�r\�bad_n�	bad_p_one�	bad_p_tworNrZ�binomras
          r'rVzTestBroadcast.test_binomial�sM��
�C��
�E������D�	��E�	��(�9�9�9�%�%���7�4�9�-�-�.�.�������q�1�u�a�����6�7�+�+�+��j�%����A�6�6�6��j�%��Q��	�:�:�:��j�%��Q��	�:�:�:��7�4�9�-�-�.�.������A��E�*�*���6�7�+�+�+��j�%���A��6�6�6��j�%��I��M�:�:�:��j�%��I��M�:�:�:�:�:r)c��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��dS)Nr<rXrAr;)rrTr<rVr�)
r8rzr�rrrr�r
rrD)
r3r�r\r�r�r�rNrZ�	neg_binomras
          r'r�z$TestBroadcast.test_negative_binomial�s]��
�C��
�E������D�	��E�	��(�9�9�9�B�H�5�5�5���7�4�9�-�-�.�.���,�	���1�q�5�!�$�$���6�7�+�+�+��j�)�U�Q�Y��:�:�:��j�)�Q��U�I�>�>�>��j�)�Q��U�I�>�>�>��7�4�9�-�-�.�.���,�	���1�a�!�e�$�$���6�7�+�+�+��j�)�U�A��E�:�:�:��j�)�Q�	�A�
�>�>�>��j�)�Q�	�A�
�>�>�>�>�>r)c�H�dg}dg}tjgd���}tt|j����}|j}|dzg}|j}||dz��}t||��tt||dz��tt||dz��dS)Nr<rA)rrr�rTr�)
r8rzrrr�_poisson_lam_maxr�r
rrD)	r3r��bad_lam_onerNrZ�max_lam�bad_lam_twor�ras	         r'r�zTestBroadcast.test_poisson�s����c���d���(�9�9�9�%�%���7�4�9�-�-�.�.���)����{�m���.�����q��!�!���6�7�+�+�+��j�'�;��?�;�;�;��j�'�;��?�;�;�;�;�;r)c���dg}dg}tjgd���}tt|j����}|j}||dz��}t
||��tt||dz��tj	d���5tt|tj
��tt|ddtj
g��ddd��dS#1swxYwYdS)NrTr)r<r�r<r�r�r�)r8rzrrrrqr
rrDr�r_)r3r�r|rNrZrqras       r'rrzTestBroadcast.test_zipf�s��
�C������(�9�9�9�%�%���7�4�9�-�-�.�.���{����a�!�e�����6�7�+�+�+��j�$���	�2�2�2�
�[��
*�
*�
*�	<�	<��*�d�B�F�3�3�3��*�d�Q��2�6�N�;�;�;�	<�	<�	<�	<�	<�	<�	<�	<�	<�	<�	<�	<����	<�	<�	<�	<�	<�	<s�AC"�"C&�)C&c�4�dg}dg}dg}tjgd���}tt|j����}|j}||dz��}t
||��tt||dz��tt||dz��dS)NrXrAr;r�r�)	r8rzrrrr�r
rrD)r3r\r�r�rNrZr�ras        r'r�zTestBroadcast.test_geometric	s���
�E���D�	��E�	��(�9�9�9�%�%���7�4�9�-�-�.�.���$�	���1�q�5�!�!���6�7�+�+�+��j�)�Y��]�;�;�;��j�)�Y��]�;�;�;�;�;r)c�D�dg}dg}dg}dg}dg}dg}dg}tjgd���}tt|j����}	|	�|dz||��}
t
|
|��tt|	j|dz||��tt|	j|dz||��tt|	j|dz||��tt|	j|dz||��tt|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��dS)Nr<rTrArHr�r�r�rr�r�i@i�lr�i r-)	r8rzrrrr�r
rrD)r3�ngood�nbadr��	bad_ngood�bad_nbad�bad_nsample_one�bad_nsample_tworNrZra�	hypergeoms            r'r�z!TestBroadcast.test_hypergeometric	s������s���#���D�	��4���$���#���(�9�9�9�%�%���7�4�9�-�-�.�.���&�&�u�q�y�$��@�@���6�7�+�+�+��j�&�"7��Q���g�V�V�V��j�&�"7����H�g�V�V�V��j�&�"7����D�/�Z�Z�Z��j�&�"7����D�/�Z�Z�Z��7�4�9�-�-�.�.���&�&�u�d�Q�h��@�@���6�7�+�+�+��j�&�"7��D�1�H�g�V�V�V��j�&�"7���1��g�V�V�V��j�&�"7���q��/�Z�Z�Z��j�&�"7���q��/�Z�Z�Z��7�4�9�-�-�.�.���)�	���5�$��!��4�4���6�7�+�+�+��j�)�Y��g��k�J�J�J��j�)�U�H�g��k�J�J�J��j�)�U�D�/�A�:M�N�N�N��j�)�U�D�/�A�:M�N�N�N��j�)�R��R�8�8�8��j�)�R��R�8�8�8��j�)�R��R�8�8�8��j�)�R��R�8�8�8�	�j�)�U�B��;�;�;��j�)�S�%��<�<�<��j�)�S�5�%�.�$�G�G�G�G�Gr)c�4�dg}dg}dg}tjgd���}tt|j����}|j}||dz��}t
||��tt||dz��tt||dz��dS)NrXrTrA)r<r<r<r�)	r8rzrrrr�r
rrD)r3r\r�r�rNrZr�ras        r'r�zTestBroadcast.test_logseries?	s���
�E���C�	��D�	��(�9�9�9�%�%���7�4�9�-�-�.�.���$�	���1�q�5�!�!���6�7�+�+�+��j�)�Y��]�;�;�;��j�)�Y��]�;�;�;�;�;r)c���tt|j����}|�ddgdgdzd���}t	jgd�gd�ggd	�gd
�ggd�gd�ggtj�
��}t||��tt|j����}|�ddgdgdz��}t	jgd�gd�gtj�
��}t||��tt|j����}|�ddgdgdzgdz��}t	jgd�gd�gtj�
��}t||��tt|j����}|�dgdggdgdzgdz��}t	jgd�gd�ggd�gd
�ggtj�
��}t||��dS)Nror�r�r�r�r�)rrrTr<rTr)rTr�r�r�rTr�)r<rr<rrTr<)r�rTrTr<r�r�)rrTrr<rTr)r�rTr�r�r�rorVrT)rrrTr<r<r<)r�rTr�r�ror�)rrrrhr8rzr�r
r�s    r'r�zTestBroadcast.test_multinomialL	sb���7�4�9�-�-�.�.���#�#�Q��G�f�X��\��#�G�G���(�/�/�/�/�/�/�1�/�/�/�/�/�/�1�/�/�/�/�/�/�1�	2�
:<��C�C�C��	�6�7�+�+�+��7�4�9�-�-�.�.���#�#�Q��G�f�X��\�:�:���(�.�.�.�.�.�.�0�79�x�A�A�A���6�7�+�+�+��7�4�9�-�-�.�.���#�#�Q��G�v�h��l�^�a�-?�@�@���(�.�.�.�.�.�.�0�79�x�A�A�A���6�7�+�+�+��7�4�9�-�-�.�.���#�#�a�S�2�$�K�6�(�Q�,��!�1C�D�D���(�/�/�/�/�/�/�1�/�/�/�/�/�/�1�2�:<��C�C�C��	�6�7�+�+�+�+�+r)r�rc��tt|j����}tjdgdz��}|�||��}t
|t��rt��n|j	}|dz}|j	|ksJ�tj
||g��}|�||��}tj||j	dd���dz}|j	|ksJ�tj
|g|gg��}|�||��}tj||j	dd���}|j	|dzksJ�|�||d|z���}|j	d|zdzksJ�tj
t��5|�||d���}ddd��dS#1swxYwYdS)Nr�r�)r�rAr�r�)r<r<r<r<r<r<)rrrr8rzrhr�rUr�ryr��broadcast_shapesr�r�rD)r3r�rZr�ra�n_shaper�s       r'�test_multinomial_pval_broadcastz-TestBroadcast.test_multinomial_pval_broadcastk	s���7�4�9�-�-�.�.����%��1��%�%���#�#�A�u�-�-��'��3�/�/�<�%�'�'�'�Q�W�� �4����|�~�-�-�-�-��	�5�%�.�)�)���#�#�A�u�-�-���,�W�e�k�#�2�#�6F�G�G�$�N���|�~�-�-�-�-��	�E�7�U�G�,�-�-���#�#�A�u�-�-���,�W�e�k�#�2�#�6F�G�G���|�~��4�4�4�4�4��#�#�A�u�6�N�3J�#�K�K���|�v��6��=�=�=�=�=�
�]�:�
&�
&�	A�	A��'�'��5�x�'�@�@�F�	A�	A�	A�	A�	A�	A�	A�	A�	A�	A�	A�	A����	A�	A�	A�	A�	A�	As�F7�7F;�>F;c���tt|j����}dgdzdgdzg}tt|jd|��tt|jdd��dS)Nr�r�r�r<rX)rrrrrDrh)r3rZr�s   r'�test_invalid_pvals_broadcastz*TestBroadcast.test_invalid_pvals_broadcast�	sc���7�4�9�-�-�.�.����1��u�g��k�*���j�&�"4�a��?�?�?��j�&�"4�a��=�=�=�=�=r)c��tt|j����}|�t	jdd��dgdz��}|jdksJ�|�dt	jd����}|jdksJ�|�t	jdd��t	jd	����}|jd	ksJ�dS)
N)rrr��i8r�r�)rrr�r�r�)rrr)r�rr�)r�rr�r�)rrrrhr8r�ryr�s   r'�test_empty_outputsz TestBroadcast.test_empty_outputs�	s����7�4�9�-�-�.�.���#�#�B�H�Z��$>�$>���!��L�L���|�}�,�,�,�,��#�#�B����(=�(=�>�>���|�{�*�*�*�*��#�#�B�H�Y��$=�$=�$&�H�\�$:�$:�<�<���|�|�+�+�+�+�+�+r)N)+rMrNrOr�r0r�rRrsrr�r}r�r�rYr�r%rXr�rmr�r�r�r�r�r�rjr+rVr�r�rrr�r�r�r�r�r�r�r8rzr�r�r�rPr)r'rvrv2s����������
?�
?�
?�>�>�>�$?�?�?�$E�E�E�	<�	<�	<�?�?�?�*;�;�;�*!F�!F�!F�F?�?�?�@�@�@�>�>�>�*A�A�A�F�F�F� <�<�<�=�=�=�;�;�;�?�?�?�$>�>�>�$5�5�5�"I�I�I� B�B�B�D�D�D�&&=�&=�&=�P;�;�;�.?�?�?�0
<�
<�
<�<�<�<�<�<�<�+H�+H�+H�Z<�<�<�,�,�,�>�[���S�2�#+�2�8�R��H�#5�#5�#+�2�8�r�d�V�r�d�V�,<�#=�#=�#%���
A�A���
A�.>�>�>�,�,�,�,�,r)rvzcan't start threadr�c�,�eZdZd�Zd�Zd�Zd�Zd�ZdS)�
TestThreadc�.�td��|_dS)Nr�)r7�seedsrEs r'r�zTestThread.setup_method�	s���1�X�X��
�
�
r)c�Z���ddlm�tjt	|j��f|z��}tjt	|j��f|z��}��fd�t
|j|��D��}d�|D��d�|D��t
|j|��D]+\}}�tt|����|���,tj	��j
jdkr"tj
dkrt||��dSt||��dS)Nr)�Threadc
�h��g|].\}}��tt|����|f�����/S))�target�args)rr)r�r4�or��functions   ��r'r�z-TestThread.check_function.<locals>.<listcomp>�	sO���
0�
0�
0���A��V�8�9�W�Q�Z�Z�+@�+@�!�*D�
E�
E�
E�
0�
0�
0r)c�6�g|]}|�����SrP)�start�r�rrs  r'r�z-TestThread.check_function.<locals>.<listcomp>�	s �����q��������r)c�6�g|]}|�����SrP)�joinr�s  r'r�z-TestThread.check_function.<locals>.<listcomp>�	s �����a��������r)r��win32)�	threadingr�r8r�rJr��ziprr�intprWr�r7�platformrr
)	r3r��sz�out1�out2�tr4r�r�s	 `      @r'�check_functionzTestThread.check_function�	sI����$�$�$�$�$�$��x��T�Z���*�R�/�0�0���x��T�Z���*�R�/�0�0��
0�
0�
0�
0�
0��T�Z��.�.�
0�
0�
0����A�������1�������
�D�)�)�	/�	/�D�A�q��H�Y�w�q�z�z�*�*�A�.�.�.�.��7�9�9�?�#�q�(�(�S�\�W�-D�-D�%�d�D�1�1�1�1�1��t�T�*�*�*�*�*r)c�:�d�}|�|d���dS)Nc�8�|�d���|d<dS)Nr�r�.)r��r�r=s  r'�
gen_randomz*TestThread.test_normal.<locals>.gen_random�	s���|�|��|�/�/�C��H�H�Hr))r��r��r��r3r�s  r'r�zTestThread.test_normal�	s2��	0�	0�	0�	
���J�8��4�4�4�4�4r)c�:�d�}|�|d���dS)Nc�\�|�tjd�����|d<dS)N�rdr-rv.)rrr8r�r�s  r'r�z'TestThread.test_exp.<locals>.gen_random�	s*���(�(�r�w�{�/C�/C�(�D�D�C��H�H�Hr)r�r�r�r�s  r'�test_expzTestThread.test_exp�	s5��	E�	E�	E�	
���J�;��7�7�7�7�7r)c�:�d�}|�|d���dS)Nc�D�|�ddgdzd���|d<dS)Nrr�r�r�r�.)rhr�s  r'r�z/TestThread.test_multinomial.<locals>.gen_random�	s*���(�(��f�X��\��(�F�F�C��H�H�Hr))r�r�r�r�r�s  r'r�zTestThread.test_multinomial�	s5��	G�	G�	G�	
���J�:��6�6�6�6�6r)N)rMrNrOr�r�r�r�r�rPr)r'r�r��	s_���������+�+�+�,5�5�5�8�8�8�7�7�7�7�7r)r�c�,�eZdZd�Zd�Zd�Zd�Zd�ZdS)�TestSingleEltArrayInputc��tjdg��|_tjdg��|_tjdg��|_d|_dS)NrTr�r�r)r8rz�argOne�argTwo�argThree�tgtShaperEs r'r�z$TestSingleEltArrayInput.setup_method�	s@���h��s�m�m����h��s�m�m�����!��
�
��
���
�
�
r)c���tjtjtjtjtjtjtjtjtj	tj
tjtjf}tjtjf}|D]O}||vr|tjdg����}n||j��}t!|j|j���PdSr�)rZrrrrXr$r�rlr�r�r�rqr�r�r8rzr�rryr�)r3�funcs�	probfuncsr8r=s     r'�test_one_arg_funcsz*TestSingleEltArrayInput.test_one_arg_funcs�	s����#�V�%:��!�6�#4�������v�������!�6�#3�5���%�v�'7�8�	��	3�	3�D��y� � ��d�2�8�S�E�?�?�+�+����d�4�;�'�'�����D�M�2�2�2�2�	3�	3r)c���tjtjtjtjtjtjtjtjtj	tj
tjtjtj
tjf}tj
tjf}|D]�}||vrtjdg��}n|j}||j|��}t'|j|j��||jd|��}t'|j|j��||j|d��}t'|j|j����dS)NrXr)rZr/r�rQrr|r�rWr�r�r�r�rir[r�r8rzr�r�rryr�)r3r�r�r8r�r=s      r'�test_two_arg_funcsz*TestSingleEltArrayInput.test_two_arg_funcs�	s��������f�l���6�6���&�.������!�6�;���&�":�
<���_�f�&>�?�	��	3�	3�D��y� � ���3�%���������$�t�{�F�+�+�C����D�M�2�2�2��$�t�{�1�~�v�.�.�C����D�M�2�2�2��$�t�{�F�1�I�.�.�C����D�M�2�2�2�2�	3�	3r)c	�T�tjtjtjtjtjtjtjtjtj	g	}tj}tjdg��}tjdg��}|D]�}|||||���}t|j|j��||d|||���}t|j|j��|||d||���}t|j|j����dS)Nr<rr�)r8rCr2r5r0r3r1rxr�r4rZr1rzrryr�)r3r(rr8rZrYrr=s        r'r�z%TestSingleEltArrayInput.test_integers�	s�����2�7�B�H�b�h��	���2�9�b�h��	�;������x���}�}���h��s�m�m���	3�	3�B��$�s�D�8�2�>�>�>�C����D�M�2�2�2��$�s�1�v�t�h�b�A�A�A�C����D�M�2�2�2��$�s�D��G�h�b�A�A�A�C����D�M�2�2�2�2�	3�	3r)c��tjtjtjg}|D]�}||j|j|j��}t|j|j	��||jd|j|j��}t|j|j	��||j|jd|j��}t|j|j	����dS)Nr)
rZr�r*r�r�r�r�rryr�)r3r�r8r=s    r'�test_three_arg_funcsz,TestSingleEltArrayInput.test_three_arg_funcs
s����$�f�&7��&�(���	3�	3�D��$�t�{�D�K���?�?�C����D�M�2�2�2��$�t�{�1�~�t�{�D�M�B�B�C����D�M�2�2�2��$�t�{�D�K��N�D�M�B�B�C����D�M�2�2�2�2�	3�	3r)N)rMrNrOr�r�r�r�r�rPr)r'r�r��	s_���������3�3�3�&3�3�3�63�3�3�"3�3�3�3�3r)r�rXc���|d}|d}t|��}|�|��|jdd}tjdkr|���}t
j|��}|jdd|ddksJ�|���|ddksJ�|�	��}|jdd}tjdkr|���}t
j|��}|jdd|d	dksJ�|���|d	dksJ�dS)
Nrrr�r�rrrrrr)
rr=r�r7r8r9r:r;r<r)rXrr�mt19937r�r;rs       r'�test_jumpedr
sZ���&�>�D��7�O�E��d�m�m�G����u����
�-��
 ��
'�C�
�}�����l�l�n�n��
�^�C�
 �
 �F��=��!�%�(�F�9�,=�e�,D�D�D�D�D�������	�!2�<�!@�@�@�@�@�
�^�^�
�
�F�
�,�w�
��
&�C�
�}�����l�l�n�n��
�^�C�
 �
 �F��<�� ��'�6�(�+;�E�+B�B�B�B�B��������!1�,�!?�?�?�?�?�?�?r)c�X	�tjd��}tjd��}d}t�||d���jdksJ�tjt��5t�|||���ddd��n#1swxYwYtjt��5t�||d���ddd��n#1swxYwYtjt��5t�||d���ddd��n#1swxYwYtjd��}tjt��5t�||���ddd��n#1swxYwYtjt��5t�|d���ddd��n#1swxYwYtjt��5t�|d���ddd��n#1swxYwYtj	|��}tjt��5t�||�	��ddd��n#1swxYwYtjt��5t�
d
ddgd
���ddd��n#1swxYwYtjt��5t�
d
dgdd
���ddd��n#1swxYwYtjt��5t�
d
dgddgd
���ddd��n#1swxYwYtjt��5t�ddgddgd
���ddd��n#1swxYwYt�dd���}t�dd���}t�dd���}t�
|||��jdksJ�tjtd���5t�
|||d���ddd��dS#1swxYwYdS)Nr�)r�r�)rr�rT)ror�r�r�)r<r�)r�r<r<)r�rJr<r�gffffff�?)rTr<rTrozOutput size \(6, 5, 1, 1\) isr�)r�ror<r<)r8r�rZr�ryr�r�rDrr�r[rhrXr�)r�r�r�ryr=r�r�r�s        r'�test_broadcast_size_errorr9
s���	�����B��G�F�O�O�E��D��=�=��U��=�3�3�9�Y�F�F�F�F�	��z�	"�	"�,�,��
�
�b�%�d�
�+�+�+�,�,�,�,�,�,�,�,�,�,�,����,�,�,�,�	��z�	"�	"�.�.��
�
�b�%�f�
�-�-�-�.�.�.�.�.�.�.�.�.�.�.����.�.�.�.�	��z�	"�	"�1�1��
�
�b�%�i�
�0�0�0�1�1�1�1�1�1�1�1�1�1�1����1�1�1�1�
�G�F�O�O�E�	��z�	"�	"�0�0����e�$��/�/�/�0�0�0�0�0�0�0�0�0�0�0����0�0�0�0�	��z�	"�	"�0�0����e�$��/�/�/�0�0�0�0�0�0�0�0�0�0�0����0�0�0�0�	��z�	"�	"�-�-����e�!��,�,�,�-�-�-�-�-�-�-�-�-�-�-����-�-�-�-�
�(�4�.�.�C�	��z�	"�	"�.�.����e���-�-�-�.�.�.�.�.�.�.�.�.�.�.����.�.�.�.�
��z�	"�	"�4�4�����C��:�F��3�3�3�4�4�4�4�4�4�4�4�4�4�4����4�4�4�4�	��z�	"�	"�2�2�����A���&��1�1�1�2�2�2�2�2�2�2�2�2�2�2����2�2�2�2�	��z�	"�	"�9�9�����A���c�
���8�8�8�9�9�9�9�9�9�9�9�9�9�9����9�9�9�9�	��z�	"�	"�:�:����A�q�6�B��8�&��9�9�9�:�:�:�:�:�:�:�:�:�:�:����:�:�:�:�	������#�#�A�������(�(�A�������+�+�A����q�!�Q�'�'�-��:�:�:�:�	��z�)I�	J�	J�	J�8�8����A�q�!�,��7�7�7�8�8�8�8�8�8�8�8�8�8�8�8����8�8�8�8�8�8s��,B�B�B�:C$�$C(�+C(�D2�2D6�9D6�*F�F�F�7G � G$�'G$�H-�-H1�4H1�%J�J�J�2 K�K"�%K"� L.�.L2�5L2�"N�N�N�$"O�O�O�3R�R#�&R#c�.�tjd��}tjd��}t�||d���t	jt��5t�||d���ddd��dS#1swxYwYdS)Nr�r�rT)r8r�rZr�r�r�rD)r�r�s  r'�test_broadcast_size_scalarrd
s���	�����B��G�A�J�J�E�
�M�M�"�e�!�M�$�$�$�	��z�	"�	"�)�)��
�
�b�%�a�
�(�(�(�)�)�)�)�)�)�)�)�)�)�)�)����)�)�)�)�)�)s�B
�
B�Bc��ggdg}ttd����}t|j|��|dgggksJ�dSr�)rrr	r�)�seq�gens  r'�test_ragged_shuffler	l
sO��
�r�1�+�C�
�G�A�J�J�
�
�C��s�{�C�(�(�(��1�b�"�+������r)rZrHr(c��ttd����}|rdnd}tjt|���5|�||���ddd��n#1swxYwY|rdnd}tjt|���5|�d||���ddd��n#1swxYwYtjt|���5|�dg||���ddd��dS#1swxYwYdS)	Nrzhigh < 0z	high <= 0r�r�z
low > highzlow >= highrA)rrr�r�rDr1)rZr(r�msgs    r'�!test_single_arg_integer_exceptionrt
s����G�A�J�J�
�
�C� �
1�*�*�k�C�	��z��	-�	-�	-�.�.����T�H��-�-�-�.�.�.�.�.�.�.�.�.�.�.����.�.�.�.�"�
5�,�,�
�C�	��z��	-�	-�	-�2�2����R����1�1�1�2�2�2�2�2�2�2�2�2�2�2����2�2�2�2�	��z��	-�	-�	-�4�4����b�T�4�(��3�3�3�4�4�4�4�4�4�4�4�4�4�4�4����4�4�4�4�4�4s5�A"�"A&�)A&�B3�3B7�:B7�D�D�DrW�f4�f8c��tjdd|���}gd�}tjtd���5t
�|||���ddd��n#1swxYwYtjtd���5t
�|||j|���ddd��dS#1swxYwYdS)	Nr��F)�orderrWr�zSupplied output arrayr�rr)r8r�r�r�rDrZrry)rWr=rys   r'�test_c_contig_req_outr�
sV��
�(�6��E�
2�
2�
2�C��I�I�E�	��z�)@�	A�	A�	A�;�;����e��E��:�:�:�;�;�;�;�;�;�;�;�;�;�;����;�;�;�;�	��z�)@�	A�	A�	A�K�K����e��3�9�E��J�J�J�K�K�K�K�K�K�K�K�K�K�K�K����K�K�K�K�K�Ks#�A!�!A%�(A%�$B8�8B<�?B<rr�C�distc��tjd||���}|||���}||usJ�||||j���}||usJ�dS)Nr�)rWrr)r=rWr�)r8r�ry)rrrWr=�variatess     r'�test_contig_req_outr�
sd��

�(�6��e�
4�
4�
4�C��t��5�)�)�)�H��s�?�?�?�?��t��5�s�y�9�9�9�H��s�?�?�?�?�?�?r)c�R�tj�tj�d����}|�d��|���\}}}|dd�dksJ�||dd��}||j_|jj}||ksJ�dS)Nrr<)�	PCG64DXSM)r8rZrrr��
__reduce__r�r�)r��ctorr��state_ar��state_bs      r'�$test_generator_ctor_old_style_pickler�
s���	��	�	�R�Y�0�0��3�3�	4�	4�B����q�����-�-�/�/��D�$������8�~�%�%�%�%���d�2�A�2�h��A�#�A�O���o�#�G��g������r))1r7r:r��numpyr8�numpy.linalgr�
numpy.testingrrrrrr	r
rrr
�numpy.randomrrrrrZ�JUMP_TEST_DATA�fixturer(r+rRrbr�r�r�r�rvr�rtr�r�r�rrrr	rrr�rrrPr)r'�<module>r%s��
�
�
�
�����
�
�
�
�����$�$�$�$�$�$�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�
G�F�F�F�F�F�F�F�F�F�F�F�	��7�7�9�9�	�	����"d�mn�o�o�!c�lo�p�p�	����"d�mp�q�q�!c�lo�p�p�	��7�6�6��"d�mp�q�q�!c�lo�p�p�	����*���h��e�}�5�5�5���6�5��!6�!6�!6�!6�!6�!6�!6�!6�H>�>�>�>�>�>�>�>�4)�4)�4)�4)�4)�4)�4)�4)�lC-�C-�C-�C-�C-�C-�C-�C-�L,�,�,�,�,�,�,�,�DC�C�C�C�C�C�C�C�Lm,�m,�m,�m,�m,�m,�m,�m,�`#c	,�c	,�c	,�c	,�c	,�c	,�c	,�c	,�L����G�$8��9�9�+7�+7�+7�+7�+7�+7�+7�:�9�+7�^R3�R3�R3�R3�R3�R3�R3�R3�j�����>�2�2�@�@�3�2�@�6(8�(8�(8�V)�)�)���������"�r�d��,�,������d�E�]�3�3�
4�
4�4�3�-�,�
4������4��,�/�/�K�K�0�/�K������4��,�/�/������3��*�-�-������&�"8�&�-�!H�I�I���J�I�.�-�0�/��
�
�
�
�
r)

Youez - 2016 - github.com/yon3zu
LinuXploit