a
    Lfn                     @   s(  d dl Z d dlmZ d dlZd dlZd dlmZmZm	Z	 d dl
mZmZmZmZmZmZ ejdejejejejejejejejejf	ddd Zd	d
 Zd ddZdd Zd!ddZG dd dZ G dd de Z!G dd de Z"G dd de Z#G dd de Z$G dd de Z%G dd de Z&dS )"    N)partial)assert_equalassert_assert_array_equal)	GeneratorMT19937PCG64	PCG64DXSMPhiloxSFC64module)scopeparamsc                 C   s   | j S N)param)request r   V/var/www/ai-form-bot/venv/lib/python3.9/site-packages/numpy/random/tests/test_smoke.pydtype	   s    r   c                 C   sr   |  }t t| | d}t |jdk | d}t |jdk | d}t |jdk | dd}t |jdk d S )N
   r   r   r   r   r   r   )   r   size)r   npisscalarshape)fvalr   r   r   params_0   s    
r!   Fc                 C   s   d}t dd}t ddd}t ddd}t ddg}t ddd	}|rd
}|d|   }|d|   }|d|   }|d|   }|d|   }| | | |dd | | | | | | | |dd | |dd | |dd d S )Ng      @       @g      (@     Y@r   g     P@r         @)   r   r%         ?g      ?r   r   r      )r   arangereshapearraymax)r   boundedabcdegr   r   r   params_1   s*    r4   c                 C   s   d}t | tr0| D ]}|t| | || M }qnzt| t|krV|t| t|kM }nTt | tttjfrt |tttjfrt| |D ]\}}|t||M }qn|| |kM }|S )NT)	
isinstancedict
comp_statetypelisttupler   Zndarrayzip)state1state2Z	identicalkeys1s2r   r   r   r7   >   s    
r7   c                 C   s   |d u rdt jdd }| | | | | j|t jd | j|t jd | jdd|t jd | jdd|t jd | d| | jd|t jd | j|t jd | j|t jd d S )N   r      r      l          g      &@)	r   randomrandintstandard_normalfloat32integersuint64standard_gammafloat64)rgnr   r   r   warmupO   s    

rO   c                   @   sD  e Zd Zedd Zedd Zdd Zdd Zd	d
 Zdd Z	dd Z
dd Zdd Zdd Zdd Zdd Zdd Zdd Zdd Zdd  Zd!d" Zd#d$ Zd%d& Zd'd( Zd)d* Zd+d, Zd-d. Zd/d0 Zd1d2 Zd3d4 Zd5d6 Zd7d8 Zd9d: Z d;d< Z!d=d> Z"d?d@ Z#dAdB Z$dCdD Z%dEdF Z&dGdH Z'dIdJ Z(dKdL Z)dMdN Z*dOdP Z+dQdR Z,dSdT Z-dUdV Z.dWdX Z/dYdZ Z0d[d\ Z1d]d^ Z2d_d` Z3dadb Z4dcdd Z5dedf Z6dgdh Z7didj Z8dkdl Z9dmdn Z:dodp Z;dqdr Z<dsdt Z=dudv Z>dwdx Z?dydz Z@d{d| ZAd}d~ ZBdd ZCdd ZDdd ZEdd ZFdd ZGdd ZHdd ZIdS )RNGc                 C   sD   t | _d | _dg| _t| j| j | _| jjj| _d| _| 	  d S )N90  @   
r   bit_generatoradvanceseedr   rM   stateinitial_stateseed_vector_bits_extra_setupclsr   r   r   setup_class_   s    zRNG.setup_classc                 C   sH   t dd| _t ddd d d f | _t dddd| _t| _d S )Nr"   r#   g{Gz?d   r_   )r   r)   vec_1dvec_2dr*   mat	TypeError
seed_errorr[   r   r   r   rZ   j   s    zRNG._extra_setupc                 C   s   | j | jj_d S r   )rX   rM   rT   rW   selfr   r   r   _reset_stateq   s    zRNG._reset_statec                 C   sJ   t |  }|jj}|d |d ||j_|jj}tt|| d S )Nr%   )r   rT   rW   rG   r   r7   )rf   rM   rW   	new_stater   r   r   	test_initt   s    

zRNG.test_initc                 C   s`   | j jj}t| j jdr@| j j| j tt|| j jj  n| j jjj}t	
d|  d S )NrU   zAdvance is not supported by )rM   rT   rW   hasattrrU   r   r7   	__class____name__pytestskip)rf   rW   bitgen_namer   r   r   test_advance}   s    
zRNG.test_advancec                 C   s   | j jj}t| j jdrr| j j }|j}tt||  | j d || j j_| j j }|j}tt|| n2| j jjj	}|dvrt
d| td|  d S )Njumpedi. )r   zno "jumped" in zJump is not supported by )rM   rT   rW   rj   rq   r   r7   rE   rk   rl   AttributeErrorrm   rn   )rf   rW   Zbit_gen2Zjumped_stateZbit_gen3Zrejumped_statero   r   r   r   	test_jump   s    

zRNG.test_jumpc                 C   sF   | j jdddd}tt|dk t|dk  t|dk  d S )N              r   r   r   )rM   uniformr   lenallrf   rr   r   r   test_uniform   s    zRNG.test_uniformc                 C   s   | j jtdgd ddd}tt|dk t|dk  t|dk  | j jtdgd tdgd dd}tt|dk t|dk  t|dk  | j jdtdgd dd}tt|dk t|dk  t|dk  d S )Nrt   r   ru   r   rv   r   )rM   rw   r   r+   r   rx   ry   rz   r   r   r   test_uniform_array   s    zRNG.test_uniform_arrayc                 C   s(   t t| jddk t| jj d S Nr   )r   rx   rM   rE   r!   re   r   r   r   test_random   s    zRNG.test_randomc                 C   s   t t| jddk d S r~   )r   rx   rM   rG   re   r   r   r   test_standard_normal_zig   s    zRNG.test_standard_normal_zigc                 C   s(   t t| jddk t| jj d S r~   )r   rx   rM   rG   r!   re   r   r   r   test_standard_normal   s    zRNG.test_standard_normalc                 C   sP   t t| jdddk t t| jtdgd ddk t| jj d S r~   )r   rx   rM   rK   r   r+   r4   re   r   r   r   test_standard_gamma   s    &zRNG.test_standard_gammac                 C   s(   t t| jddk t| jj d S r~   )r   rx   rM   standard_exponentialr!   re   r   r   r   test_standard_exponential   s    zRNG.test_standard_exponentialc                 C   sH   | j jddd}tt|dk |jtjks0J tt| j jdd d S )Nr   rH   rC   	rM   r   r   rx   r   r   rH   r!   r   rf   Zrandomsr   r   r   test_standard_exponential_float   s    z#RNG.test_standard_exponential_floatc                 C   sL   | j jdddd}tt|dk |jtjks2J tt| j jddd d S )Nr   rH   inv)r   methodr   r   r   r   r   #test_standard_exponential_float_log   s    
z'RNG.test_standard_exponential_float_logc                 C   s(   t t| jddk t| jj d S r~   )r   rx   rM   Zstandard_cauchyr!   re   r   r   r   test_standard_cauchy   s    zRNG.test_standard_cauchyc                 C   s*   t t| jdddk t| jj d S r~   )r   rx   rM   Z
standard_tr4   re   r   r   r   test_standard_t   s    zRNG.test_standard_tc                 C   s0   t | jdddk t | jdddk d S )Nr   r&   r     )r   rM   Zbinomialre   r   r   r   test_binomial   s    zRNG.test_binomialc                 C   s<   | j jj}| j d}|| j j_| j d}t||k d S )Nl        )rM   rT   rW   rI   r   )rf   rW   Zint_1Zint_2r   r   r   test_reset_state   s
    

zRNG.test_reset_statec                 C   s4   t |  }t |  }tt|jj|jj  d S r   )r   rT   r   r7   rW   rf   rM   rg2r   r   r   test_entropy_init   s
    
zRNG.test_entropy_initc                 C   sJ   t | j| j }t | j| j }|  |  tt|jj|jj d S r   )r   rT   rV   rE   r   r7   rW   r   r   r   r   	test_seed   s
    zRNG.test_seedc                 C   sZ   t | j| j }|  |jj}|jdd}t |  }||j_|jdd}t|| d S )Nr   r   )r   rT   rV   rG   rW   r   rf   rM   rW   Zn1r   Zn2r   r   r   test_reset_state_gauss   s    zRNG.test_reset_state_gaussc                 C   sv   t | j| j }|jdddtjd |jj}|jdddtjd}t |  }||j_|jdddtjd}t|| d S )Nr   rD   x   rC   r   )r   rT   rV   rI   r   uint32rW   r   r   r   r   r   test_reset_state_uint32   s    zRNG.test_reset_state_uint32c                 C   sh   t | j| j }|jdd |jj}|jddd}t |  }||j_|jddd}t||k  d S )NrH   rC   r   r   r   )r   rT   rV   rE   rW   r   ry   r   r   r   r   test_reset_state_float  s    zRNG.test_reset_state_floatc                 C   s.   t ddd}| j|}t||k  d S N   r   rv   r   r)   rM   Zpermutationr   anyrf   originalZpermutedr   r   r   test_shuffle  s    zRNG.test_shufflec                 C   s.   t ddd}| j|}t||k  d S r   r   r   r   r   r   test_permutation  s    zRNG.test_permutationc                 C   s   | j ddd}tt|dk | j tdgd d}tt|dk | j dtdgd }tt|dk | j tdgd tdgd }tt|dk | j tdgd tdggd }t|jdk d S )Nr"   r   r   )rM   betar   rx   r   r+   r   rf   valsr   r   r   	test_beta  s    &(zRNG.test_betac                 C   s    | j d}tt|dk d S r~   )rM   bytesr   rx   r   r   r   r   
test_bytes"  s    zRNG.test_bytesc                 C   s.   | j dd}tt|dk t| j j d S Nr"   r   )rM   Z	chisquarer   rx   r4   r   r   r   r   test_chisquare&  s    zRNG.test_chisquarec                 C   s.   | j dd}tt|dk t| j j d S r   )rM   exponentialr   rx   r4   r   r   r   r   test_exponential+  s    zRNG.test_exponentialc                 C   s$   | j ddd}tt|dk d S )N   r   r   )rM   r   r   rx   r   r   r   r   test_f0  s    z
RNG.test_fc                 C   s$   | j ddd}tt|dk d S )Nr   r(   r   )rM   gammar   rx   r   r   r   r   
test_gamma4  s    zRNG.test_gammac                 C   s2   | j dd}tt|dk t| j jdd d S )Nr&   r   Tr-   )rM   Z	geometricr   rx   r4   r   r   r   r   r   test_geometric8  s    zRNG.test_geometricc                 C   s$   | j ddd}tt|dk d S r   )rM   Zgumbelr   rx   r   r   r   r   test_gumbel=  s    zRNG.test_gumbelc                 C   s$   | j ddd}tt|dk d S r   )rM   Zlaplacer   rx   r   r   r   r   test_laplaceA  s    zRNG.test_laplacec                 C   s$   | j ddd}tt|dk d S r   )rM   Zlogisticr   rx   r   r   r   r   test_logiticE  s    zRNG.test_logiticc                 C   s"   | j dd}tt|dk d S )Nr&   r   )rM   Z	logseriesr   rx   r   r   r   r   test_logseriesI  s    zRNG.test_logseriesc                 C   s$   | j ddd}tt|dk d S Nr   皙?)rM   Znegative_binomialr   rx   r   r   r   r   test_negative_binomialM  s    zRNG.test_negative_binomialc                 C   s$   | j ddd}tt|dk d S )Nr   r(   )rM   Znoncentral_chisquarer   rx   r   r   r   r   test_noncentral_chisquareQ  s    zRNG.test_noncentral_chisquarec                 C   s   | j dddd}tt|dk | j tdgd dd}tt|dk | j dtdgd d}tt|dk | j ddtdgd }tt|dk d S )Nr   r   r(   r   )rM   Znoncentral_fr   rx   r   r+   r   r   r   r   test_noncentral_fU  s    zRNG.test_noncentral_fc                 C   s$   | j ddd}tt|dk d S r   )rM   normalr   rx   r   r   r   r   test_normal_  s    zRNG.test_normalc                 C   s"   | j dd}tt|dk d S )Nr$   r   )rM   Zparetor   rx   r   r   r   r   test_paretoc  s    zRNG.test_paretoc                 C   sV   | j dd}tt|dk | j tdgd }tt|dk t| j j d S r~   )rM   Zpoissonr   rx   r   r+   r4   r   r   r   r   test_poissong  s
    zRNG.test_poissonc                 C   s"   | j dd}tt|dk d S )Nr   r   )rM   powerr   rx   r   r   r   r   
test_powern  s    zRNG.test_powerc                 C   s$   | j ddd}tt|dk d S )Nr   rB   )rM   rI   r   rx   r   r   r   r   test_integersr  s    zRNG.test_integersc                 C   s2   | j dd}tt|dk t| j jdd d S )Nr   r   Tr   )rM   Zrayleighr   rx   r4   r   r   r   r   test_rayleighv  s    zRNG.test_rayleighc                 C   s$   | j ddd}tt|dk d S r   )rM   Zvonmisesr   rx   r   r   r   r   test_vonmises{  s    zRNG.test_vonmisesc                 C   s$   | j ddd}tt|dk d S N      ?r   )rM   Zwaldr   rx   r   r   r   r   	test_wald  s    zRNG.test_waldc                 C   s"   | j dd}tt|dk d S r   )rM   Zweibullr   rx   r   r   r   r   test_weibull  s    zRNG.test_weibullc                 C   sx   | j dd}tt|dk | j | j}tt|dk | j | j}t|jdk | j | j}t|jdk d S )Nr   r_   )r%   r_   r^   )rM   Zzipfr   rx   r`   ra   r   rb   r   r   r   r   	test_zipf  s    zRNG.test_zipfc                 C   sL   | j ddd}tt| | j tdgd dd}t|jdk d S )N   rB   r   r   )rM   Zhypergeometricr   r   r   r+   r   r   r   r   r   test_hypergeometric  s    zRNG.test_hypergeometricc                 C   sL   | j ddd}tt| | j dtdgd d}t|jdk d S )Nr   r   r   r   )rM   
triangularr   r   r   r+   r   r   r   r   r   test_triangular  s    zRNG.test_triangularc                 C   s   ddg}ddgddgg}| j ||d}t|jdk | j ||d}t|jdk | j ||d}t|jdk t||k  d S )Nr   r%   r_     )r   r(   )rM   Zmultivariate_normalr   r   r   )rf   meanZcovxZx_zigZx_invr   r   r   test_multivariate_normal  s    zRNG.test_multivariate_normalc                 C   sH   | j dddg}t|jdk | j jdddgdd}t|jdk d S )Nr_   gUUUUUU?gUUUUUU?)r(   r   r   r'   )rM   Zmultinomialr   r   r   r   r   r   test_multinomial  s    zRNG.test_multinomialc                 C   s    | j dd}t|jdk d S )N)r   r   r   rB   )rB   r   )rM   Z	dirichletr   r   )rf   sr   r   r   test_dirichlet  s    zRNG.test_dirichletc                 C   s   t | j}t |}tt| jt|k tt| jjj|jj t | j}t |}tt| jt|k tt| jjj|jj d S r   )	pickledumpsrM   loadsr   r8   r7   rT   rW   )rf   pickZunpickr   r   r   test_pickle  s    

zRNG.test_picklec                 C   sX  | j d u r"| jj}td|  | j dkr4tj}ntj}tjdg|d}| |}|j	}| d}|j	}t
t|| tjd|d}| |}|j	}| |d }|j	}t
t||  tjd|d}| |}|j	}| |d }|j	}t
t||  dttjd|d| j d  d }| |}|j	}| |d }|j	}t
t||  d S )	Nz#Vector seeding is not supported by     r%   rC      r   i  r(   )rY   rT   rl   rm   rn   r   r   rJ   r+   rW   r   r7   r)   mod)rf   ro   r   rV   bgr<   r=   r   r   r   test_seed_array  sD    






zRNG.test_seed_arrayc                 C   s   t | d}t| |jj}|jdtjd}t |  }t| ||j_|jdtjd}t|| t|j	tj t
t|jj|jj d S )NrQ   rA   rC   )r   rT   rO   rW   rE   r   rH   r   r   r   r   r7   rf   rM   rW   r1r   r2r   r   r   test_uniform_float  s    
zRNG.test_uniform_floatc                 C   s   t |  }t| |jj}|jddtjd}t |  }t| ||j_|jddtjd}t|| t|j	tj t
t|jj|jj d S )Ng      @rA   rC   )r   rT   rO   rW   rK   r   rH   r   r   r   r   r7   r   r   r   r   test_gamma_floats  s    
zRNG.test_gamma_floatsc                 C   s   t |  }t| |jj}|jdtjd}t |  }t| ||j_|jdtjd}t|| t|j	tj t
t|jj|jj d S NrA   rC   r   rT   rO   rW   rG   r   rH   r   r   r   r   r7   r   r   r   r   test_normal_floats  s    
zRNG.test_normal_floatsc                 C   s   t |  }t| |jj}|jdtjd}t |  }t| ||j_|jdtjd}t|| t|j	tj t
t|jj|jj d S r   r   r   r   r   r   test_normal_zig_floats  s    
zRNG.test_normal_zig_floatsc                 C   s   | j }|jj}d}t|}||j_|j|d ||j_|j|d}t|| t|}||j_|j||jd tj|tjd}||j_|j|tjd ||j_|j|tjd}t|| d S )N      a   outr   )r   r   rC   r   r   r   )	rM   rT   rW   r   emptyrG   r   r   rH   )rf   rM   rW   r   existingdirectZsizedr   r   r   test_output_fill  s$    


zRNG.test_output_fillc                 C   s   | j }|jj}d}t|}||j_|j|d ||j_|j|d}t|| tj|tjd}||j_|j|tjd ||j_|j|tjd}t|| d S Nr   r   r   rC   r   r   )rM   rT   rW   r   r   rE   r   rH   rf   rM   rW   r   r   r   r   r   r   test_output_filling_uniform/  s    

zRNG.test_output_filling_uniformc                 C   s   | j }|jj}d}t|}||j_|j|d ||j_|j|d}t|| tj|tjd}||j_|j|tjd ||j_|j|tjd}t|| d S r   )rM   rT   rW   r   r   r   r   rH   r   r   r   r   test_output_filling_exponentialA  s    

z#RNG.test_output_filling_exponentialc                 C   s   | j }|jj}d}t|}||j_|jd|d ||j_|jd|d}t|| tj|tjd}||j_|jd|tjd ||j_|jd|tjd}t|| d S )Nr   r   r   r   rC   r   r   )rM   rT   rW   r   zerosrK   r   rH   r   r   r   r   test_output_filling_gammaS  s    

zRNG.test_output_filling_gammac                 C   s   | j }|jj}d}tdd }t|}||j_|j||d ||j_|j||d}t|| tj|tjd}||j_|j||tjd ||j_|j||tjd}t|| d S )	Nr   g     @X@r   r   r   rC   r   r   )	rM   rT   rW   r   r)   r   rK   r   rH   )rf   rM   rW   r   mur   r   r   r   r   #test_output_filling_gamma_broadcaste  s     

z'RNG.test_output_filling_gamma_broadcastc                 C   s  | j }d}t|}tt  |j|tjd W d    n1 sD0    Y  tt& |j|d d d d W d    n1 s0    Y  tj|tjd}tt  |j|tj	d W d    n1 s0    Y  tj
|tjd}tt" |jd|tj	d W d    n1 s0    Y  tt, |jd|d d d tjd W d    n1 sd0    Y  tj
|tj	d}tt" |jd|tjd W d    n1 s0    Y  tt( |jd|d d d d W d    n1 s0    Y  d S )Nr   r   r   r   rC   r   )rM   r   r   rm   raisesrc   rG   rH   
ValueErrorrL   r   rK   )rf   rM   r   r   r   r   r   test_output_fill_errorx  s(    
.4.2<2zRNG.test_output_fill_errorc           
      C   sf  |t jkrd}d}nt |}t|jd }|j}|   | jj||gd |d}|   | jj|gd ||d}t	|| |   | jj||d|d}t	|| |   | jjt 
|gd t j
|gtdd|d}t	|| |   | jjt 
|gd t 
|gd d|d}	t	||	 |   | jjd|d|d}|   | jj|gd |d}t	|| d S )Nr(   r   r%   r   rC   r   )r   booliinfointr,   minrg   rM   rI   r   r+   object)
rf   r   upperlowerinfor.   r/   r0   r1   r2   r   r   r   test_integers_broadcast  sB    






zRNG.test_integers_broadcastc                 C   s   t dg}t dg}| jj|||d}|jdks8J | jj|d ||d}|jdks\J | jj||d |d}|jdksJ d S )Nr%   r   rC   )r%   )r   r+   rM   rI   r   )rf   r   highlowr   r   r   r   test_integers_numpy  s    zRNG.test_integers_numpyc                 C   sL  |t jkrd}d}nt |}t|jd }|j}tt, | j	j
||d gd |d W d    n1 sn0    Y  tt, | j	j
|d |gd |d W d    n1 s0    Y  tt. | j	j
|d g|gd |d W d    n1 s0    Y  tt& | j	j
dgdg|d W d    n1 s>0    Y  d S )Nr(   r   r%   r   rC   )r   r   r   r  r,   r  rm   r   r   rM   rI   )rf   r   r  r  r  r   r   r   test_integers_broadcast_errors  s    

::<z"RNG.test_integers_broadcast_errorsN)Jrl   
__module____qualname__classmethodr]   rZ   rg   ri   rp   rs   r|   r}   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r
  r  r   r   r   r   rP   ^   s   


		




&!rP   c                   @   s    e Zd Zedd Zdd ZdS )TestMT19937c                 C   sJ   t | _d | _dg| _t| j| j | _| jjj| _d| _| 	  t
| _d S )Ni! ! r   )r   rT   rU   rV   r   rM   rW   rX   rY   rZ   r   rd   r[   r   r   r   r]     s    zTestMT19937.setup_classc                 C   sh   t j }|d | }|| jj_| jjj}t|d |d d k	  t|d |d d k d S )Nc   r%   rW   r>   r(   pos)
r   rE   ZRandomStaterG   Z	get_staterM   rT   rW   r   ry   )rf   ZnprgrW   r=   r   r   r   test_numpy_state  s    



zTestMT19937.test_numpy_stateN)rl   r  r  r  r]   r  r   r   r   r   r    s   

r  c                   @   s   e Zd Zedd ZdS )
TestPhiloxc                 C   sD   t | _d| _dg| _t| j| j | _| jjj| _d| _| 	  d S Nl         rQ   rR   )
r
   rT   rU   rV   r   rM   rW   rX   rY   rZ   r[   r   r   r   r]     s    zTestPhilox.setup_classNrl   r  r  r  r]   r   r   r   r   r    s   r  c                   @   s   e Zd Zedd ZdS )	TestSFC64c                 C   sD   t | _d | _dg| _t| j| j | _| jjj| _d| _| 	  d S )NrQ      )
r   rT   rU   rV   r   rM   rW   rX   rY   rZ   r[   r   r   r   r]     s    zTestSFC64.setup_classNr  r   r   r   r   r    s   r  c                   @   s   e Zd Zedd ZdS )	TestPCG64c                 C   sD   t | _d| _dg| _t| j| j | _| jjj| _d| _| 	  d S r  rS   r[   r   r   r   r]     s    zTestPCG64.setup_classNr  r   r   r   r   r    s   r  c                   @   s   e Zd Zedd ZdS )TestPCG64DXSMc                 C   sD   t | _d| _dg| _t| j| j | _| jjj| _d| _| 	  d S r  )
r	   rT   rU   rV   r   rM   rW   rX   rY   rZ   r[   r   r   r   r]   
  s    zTestPCG64DXSM.setup_classNr  r   r   r   r   r  	  s   r  c                   @   s(   e Zd Zedd Zdd Zdd ZdS )TestDefaultRNGc                 C   sB   t | _d| _dg| _tjj| j | _| jjj| _	d| _
|   d S r  )r   rT   rU   rV   r   rE   default_rngrM   rW   rX   rY   rZ   r[   r   r   r   r]     s    zTestDefaultRNG.setup_classc                 C   s   t t| jjt d S r   )r   r5   rM   rT   r   re   r   r   r   test_default_is_pcg64"  s    z$TestDefaultRNG.test_default_is_pcg64c                 C   s   t j  t jd  t jd t jd t jd t jddg tt t jd W d    n1 sv0    Y  tt  t jddg W d    n1 s0    Y  d S )NrQ   r   l	   -tE+I6%Yl  l	   )	~eR :TI*6 rv   )r   rE   r  rm   r   r   re   r   r   r   r   '  s    
*zTestDefaultRNG.test_seedN)rl   r  r  r  r]   r  r   r   r   r   r   r    s   
r  )F)N)'r   	functoolsr   numpyr   rm   Znumpy.testingr   r   r   Znumpy.randomr   r   r   r	   r
   r   Zfixturer   Zint8Zint16Zint32Zint64Zuint8Zuint16r   rJ   r   r!   r4   r7   rO   rP   r  r  r  r  r  r  r   r   r   r   <module>   s4    

!
    u