HOME


sh-3ll 1.0
DIR:/usr/local/lib64/python3.6/site-packages/numpy/random/tests/__pycache__/
Upload File :
Current File : //usr/local/lib64/python3.6/site-packages/numpy/random/tests/__pycache__/test_smoke.cpython-36.pyc
3

���h�l�@sddlZddlmZddlZddlZddlmZmZm	Z	ddl
mZmZm
Z
mZmZejdejejejejejejejejejf	d�dd��Zd	d
�Zddd
�Zdd�Zddd�ZGdd�d�ZGdd�de�Z Gdd�de�Z!Gdd�de�Z"Gdd�de�Z#Gdd�de�Z$dS) �N)�partial)�assert_equal�assert_�assert_array_equal)�	Generator�MT19937�PCG64�Philox�SFC64�module)Zscope�paramscCs|jS)N)�param)�request�r�>/tmp/pip-build-5_djhm0z/numpy/numpy/random/tests/test_smoke.py�dtype	srcCsr|�}ttj|��|d�}t|jdk�|d�}t|jdk�|d�}t|jdk�|d	d�}t|jd
k�dS)N�
�)�size)r)rr)rr)rrr)rrr)rr)rr)r�np�isscalar�shape)�f�valrrr�params_0s
rFcCsd}tjdd�}tjdd�jd
�}tjdd�jd�}tjddg�}tjdd�jd�}|r�d	}|d
|j�}|d
|j�}|d
|j�}|d
|j�}|d
|j�}||�||dd�||�||�||�||dd�||dd�||dd�dS)Ng@g@g(@g�Y@rgP�@g@�g�?g�?)r�)rr)rrr)rrr)rr)rr)rrr)r�arange�reshape�array�max)r�bounded�a�b�c�d�e�grrr�params_1s*r(cCs�d}t|t�r4x�|D]}|t||||�M}qWn~t|�t|�krZ|t|�t|�kM}nXt|tttjf�r�t|tttjf�r�x2t||�D]\}}|t||�M}q�Wn|||kM}|S)NT)	�
isinstance�dict�
comp_state�type�list�tuplerZndarray�zip)�state1�state2Z	identical�key�s1�s2rrrr+>s

r+cCs�|dkrdtjjdd�}|j|�|j|�|j|tjd�|j|tjd�|jdd	|tjd�|jdd
|tjd�|jd|�|jd|tjd�|j|tjd�|j|tjd�dS)N�r�)rr��0g&@il)	r�random�randint�standard_normal�float32�integers�uint64�standard_gamma�float64)�rg�nrrr�warmupOs

rCc@sDeZdZedd��Zedd��Zdd�Zdd�Zd	d
�Zdd�Z	d
d�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�Zdd�Zdd �Zd!d"�Zd#d$�Zd%d&�Zd'd(�Zd)d*�Zd+d,�Zd-d.�Zd/d0�Zd1d2�Zd3d4�Zd5d6�Zd7d8�Zd9d:�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~�ZBdd��ZCd�d��ZDd�d��ZEd�d��ZFd�d��ZGd�d��ZHd�d��ZId�S)��RNGcCsDt|_d|_dg|_t|j|j��|_|jjj|_d|_|j	�dS)Ni90�@)
r�
bit_generator�advance�seedrrA�state�
initial_state�seed_vector_bits�_extra_setup)�clsrrr�setup_class_szRNG.setup_classcCsHtjdd�|_tjdd�ddd�f|_tjddd�jd�|_t|_dS)Ng@g�Y@g{�G�z�?�d)rOrO)rr�vec_1d�vec_2dr�mat�	TypeError�
seed_error)rMrrrrLjszRNG._extra_setupcCs|j|jj_dS)N)rJrArFrI)�selfrrr�_reset_stateqszRNG._reset_statecCsJt|j��}|jj}|jd�|jd�||j_|jj}tt||��dS)Nr)rrFrIr;rr+)rUrArIZ	new_staterrr�	test_initts

z
RNG.test_initcCs`|jjj}t|jjd�r@|jjj|j�tt||jjj��n|jjjj}t	j
dj|��dS)NrGzAdvance is not supported by {0})rArFrI�hasattrrGrr+�	__class__�__name__�pytest�skip�format)rUrI�bitgen_namerrr�test_advance}s
zRNG.test_advancecCs�|jjj}t|jjd�rr|jjj�}|j}tt||��|jjd�||jj_|jjj�}|j}tt||��n0|jjjj	}|dkr�t
d
|��tjdj
|��dS)N�jumpedr�r�r5�
�r
zno "jumped" in %szJump is not supported by {0}����i	iNui.�)r
)rArFrIrXr`rr+r9rYrZ�AttributeErrorr[r\r])rUrIZbit_gen2Zjumped_stateZbit_gen3Zrejumped_stater^rrr�	test_jump�s

z
RNG.test_jumpcCsF|jjdddd�}tt|�dk�t|dkj��t|dkj��dS)	Ng�?gr)rrrg����)rA�uniformr�len�all)rU�rrrr�test_uniform�szRNG.test_uniformcCs�|jjtjdgd�ddd�}tt|�dk�t|dkj��t|dkj��|jjtjd	gd�tjdgd�dd�}tt|�dk�t|d
kj��t|dkj��|jjdtjdgd�dd�}tt|�dk�t|dkj��t|dkj��dS)
Ng�?rg)rrrg�rjg�rjg�rj)rArkrrrrlrm)rUrnrrr�test_uniform_array�szRNG.test_uniform_arraycCs(tt|jjd��dk�t|jj�dS)Nr)rrlrAr9r)rUrrr�test_random�szRNG.test_randomcCstt|jjd��dk�dS)Nr)rrlrAr;)rUrrr�test_standard_normal_zig�szRNG.test_standard_normal_zigcCs(tt|jjd��dk�t|jj�dS)Nr)rrlrAr;r)rUrrr�test_standard_normal�szRNG.test_standard_normalcCsPtt|jjdd��dk�tt|jjtjdgd�d��dk�t|jj�dS)Nr)rrlrAr?rrr()rUrrr�test_standard_gamma�s&zRNG.test_standard_gammacCs(tt|jjd��dk�t|jj�dS)Nr)rrlrA�standard_exponentialr)rUrrr�test_standard_exponential�szRNG.test_standard_exponentialcCsH|jjddd�}tt|�dk�|jtjks0t�tt	|jjdd��dS)Nrr<)r)
rArurrlrrr<�AssertionErrorrr)rU�randomsrrr�test_standard_exponential_float�sz#RNG.test_standard_exponential_floatcCsL|jjdddd�}tt|�dk�|jtjks2t�tt	|jjddd��dS)Nrr<�inv)r�method)
rArurrlrrr<rwrr)rUrxrrr�#test_standard_exponential_float_log�s
z'RNG.test_standard_exponential_float_logcCs(tt|jjd��dk�t|jj�dS)Nr)rrlrAZstandard_cauchyr)rUrrr�test_standard_cauchy�szRNG.test_standard_cauchycCs*tt|jjdd��dk�t|jj�dS)Nr)rrlrAZ
standard_tr()rUrrr�test_standard_t�szRNG.test_standard_tcCs0t|jjdd�dk�t|jjdd�dk�dS)Nrg�?ri�)rrAZbinomial)rUrrr�
test_binomial�szRNG.test_binomialcCs<|jjj}|jjd�}||jj_|jjd�}t||k�dS)Nr�ll)rArFrIr=r)rUrIZint_1Zint_2rrr�test_reset_state�s


zRNG.test_reset_statecCs4t|j��}t|j��}tt|jj|jj��dS)N)rrFrr+rI)rUrA�rg2rrr�test_entropy_init�s
zRNG.test_entropy_initcCsJt|j|j��}t|j|j��}|j�|j�tt|jj|jj��dS)N)rrFrHr9rr+rI)rUrAr�rrr�	test_seed�s
z
RNG.test_seedcCsZt|j|j��}|j�|jj}|jdd�}t|j��}||j_|jdd�}t||�dS)Nr)r)rrFrHr;rIr)rUrArI�n1r��n2rrr�test_reset_state_gauss�szRNG.test_reset_state_gausscCsvt|j|j��}|jdddtjd�|jj}|jdddtjd�}t|j��}||j_|jdd	dtjd�}t||�dS)
Nrrr7�x)rriii)rrFrHr=r�uint32rIr)rUrArIr�r�r�rrr�test_reset_state_uint32�szRNG.test_reset_state_uint32cCsht|j|j��}|jdd�|jj}|jddd�}t|j��}||j_|jddd�}t||kj��dS)Nr<)rr)rr)rrFrHr9rIrrm)rUrArIr�r�r�rrr�test_reset_state_floatszRNG.test_reset_state_floatcCs.tjddd�}|jj|�}t||kj��dS)N��rrrj)rrrA�permutationr�any)rU�original�permutedrrr�test_shuffleszRNG.test_shufflecCs.tjddd�}|jj|�}t||kj��dS)Nr�rrrj)rrrAr�rr�)rUr�r�rrr�test_permutationszRNG.test_permutationcCs�|jjddd�}tt|�dk�|jjtjdgd�d�}tt|�dk�|jjdtjdgd��}tt|�dk�|jjtjdgd�tjdgd��}tt|�dk�|jjtjdgd�tjdggd��}t|jdk�dS)Ng@r)rr)rA�betarrlrrr)rU�valsrrr�	test_betas&(z
RNG.test_betacCs |jjd�}tt|�dk�dS)Nr)rA�bytesrrl)rUr�rrr�
test_bytes"szRNG.test_bytescCs.|jjdd�}tt|�dk�t|jj�dS)Ng@r)rAZ	chisquarerrlr()rUr�rrr�test_chisquare&szRNG.test_chisquarecCs.|jjdd�}tt|�dk�t|jj�dS)Ng@r)rA�exponentialrrlr()rUr�rrr�test_exponential+szRNG.test_exponentialcCs$|jjddd�}tt|�dk�dS)Nrai�r)rArrrl)rUr�rrr�test_f0sz
RNG.test_fcCs$|jjddd�}tt|�dk�dS)Nrarr)rA�gammarrl)rUr�rrr�
test_gamma4szRNG.test_gammacCs2|jjdd�}tt|�dk�t|jjdd�dS)Ng�?rT)r!)rAZ	geometricrrlr(r�)rUr�rrr�test_geometric8szRNG.test_geometriccCs$|jjddd�}tt|�dk�dS)Ng@r)rAZgumbelrrl)rUr�rrr�test_gumbel=szRNG.test_gumbelcCs$|jjddd�}tt|�dk�dS)Ng@r)rAZlaplacerrl)rUr�rrr�test_laplaceAszRNG.test_laplacecCs$|jjddd�}tt|�dk�dS)Ng@r)rAZlogisticrrl)rUr�rrr�test_logiticEszRNG.test_logiticcCs"|jjdd�}tt|�dk�dS)Ng�?r)rAZ	logseriesrrl)rUr�rrr�test_logseriesIszRNG.test_logseriescCs$|jjddd�}tt|�dk�dS)Nrg�������?)rAZnegative_binomialrrl)rUr�rrr�test_negative_binomialMszRNG.test_negative_binomialcCs$|jjddd�}tt|�dk�dS)Nrr)rAZnoncentral_chisquarerrl)rUr�rrr�test_noncentral_chisquareQszRNG.test_noncentral_chisquarecCs�|jjdddd�}tt|�dk�|jjtjdgd�dd�}tt|�dk�|jjdtjdgd�d�}tt|�dk�|jjddtjdgd��}tt|�dk�dS)Nrai�rr)rAZnoncentral_frrlrr)rUr�rrr�test_noncentral_fUszRNG.test_noncentral_fcCs$|jjddd�}tt|�dk�dS)Nrg�������?)rAZnormalrrl)rUr�rrr�test_normal_szRNG.test_normalcCs"|jjdd�}tt|�dk�dS)Ng@r)rAZparetorrl)rUr�rrr�test_paretocszRNG.test_paretocCsV|jjdd�}tt|�dk�|jjtjdgd��}tt|�dk�t|jj�dS)Nr)rAZpoissonrrlrrr()rUr�rrr�test_poissongs
zRNG.test_poissoncCs"|jjdd�}tt|�dk�dS)Ng�������?r)rA�powerrrl)rUr�rrr�
test_powernszRNG.test_powercCs$|jjddd�}tt|�dk�dS)Nrr6)rAr=rrl)rUr�rrr�
test_integersrszRNG.test_integerscCs2|jjdd�}tt|�dk�t|jjdd�dS)Ng�������?rT)r!)rAZrayleighrrlr()rUr�rrr�
test_rayleighvszRNG.test_rayleighcCs$|jjddd�}tt|�dk�dS)Nrg�������?)rAZvonmisesrrl)rUr�rrr�
test_vonmises{szRNG.test_vonmisescCs$|jjddd�}tt|�dk�dS)Ng�?r)rAZwaldrrl)rUr�rrr�	test_waldsz
RNG.test_waldcCs"|jjdd�}tt|�dk�dS)Ng�?r)rAZweibullrrl)rUr�rrr�test_weibull�szRNG.test_weibullcCsx|jjdd�}tt|�dk�|jj|j�}tt|�dk�|jj|j�}t|jdk�|jj|j�}t|jdk�dS)NrrOr)rrO)rOrO)rAZzipfrrlrPrQrrR)rUr�rrr�	test_zipf�sz
RNG.test_zipfcCsL|jjddd�}ttj|��|jjtjdgd�dd�}t|jdk�dS)N�r6r)r)rAZhypergeometricrrrrr)rUr�rrr�test_hypergeometric�szRNG.test_hypergeometriccCsL|jjddd�}ttj|��|jjdtjdgd�d�}t|jdk�dS)Nrrr���r�)r)rA�
triangularrrrrr)rUr�rrr�test_triangular�szRNG.test_triangularcCs�ddg}ddgddgg}|jj||d�}t|jdk�|jj||d�}t|jdk�|jj||d�}t|jdk�t||kj��dS)	NrrrO�r)r�r)r�r)r�r)rAZmultivariate_normalrrr�)rUZmeanZcov�xZx_zigZx_invrrr�test_multivariate_normal�szRNG.test_multivariate_normalcCsH|jjddd	g�}t|jd
k�|jjdddgdd�}t|jd
k�dS)NrOg�?rag@rr)rgUUUUUU�?gUUUUUU�?)rgUUUUUU�?gUUUUUU�?)rr)rAZmultinomialrr)rUr�rrr�test_multinomial�szRNG.test_multinomialcCs |jjdd�}t|jdk�dS)Nrrrar6)rrra)r6ra)rAZ	dirichletrr)rU�srrr�test_dirichlet�szRNG.test_dirichletcCs�tj|j�}tj|�}tt|j�t|�k�tt|jjj|jj��tj|j�}tj|�}tt|j�t|�k�tt|jjj|jj��dS)N)	�pickle�dumpsrA�loadsrr,r+rFrI)rUZpickZunpickrrr�test_pickle�s

zRNG.test_picklecCsX|jdkr"|jj}tjdj|��|jdkr4tj}ntj}tj	dg|d�}|j|�}|j
}|jd�}|j
}tt||��tj
d|d�}|j|�}|j
}|j|d�}|j
}tt||��tj
d|d�}|j|�}|j
}|j|d�}|j
}tt||��dtjtj
d|d�|jd�d}|j|�}|j
}|j|d�}|j
}tt||��dS)	Nz&Vector seeding is not supported by {0}� r)r�ri�r)rKrFrZr[r\r]rr�r>rrIrr+r�mod)rUr^rrH�bgr0r1rrr�test_seed_array�s@






zRNG.test_seed_arraycCs�t|jd��}t|�|jj}|jdtjd�}t|j��}t|�||j_|jdtjd�}t||�t|j	tj�t
t|jj|jj��dS)Ni90r5)r)rrFrCrIr9rr<rrrrr+)rUrArI�r1r��r2rrr�test_uniform_float�s
zRNG.test_uniform_floatcCs�t|j��}t|�|jj}|jddtjd�}t|j��}t|�||j_|jddtjd�}t||�t|j	tj�t
t|jj|jj��dS)Ng@r5)r)rrFrCrIr?rr<rrrrr+)rUrArIr�r�r�rrr�test_gamma_floats�s
zRNG.test_gamma_floatscCs�t|j��}t|�|jj}|jdtjd�}t|j��}t|�||j_|jdtjd�}t||�t|j	tj�t
t|jj|jj��dS)Nr5)r)rrFrCrIr;rr<rrrrr+)rUrArIr�r�r�rrr�test_normal_floatss
zRNG.test_normal_floatscCs�t|j��}t|�|jj}|jdtjd�}t|j��}t|�||j_|jdtjd�}t||�t|j	tj�t
t|jj|jj��dS)Nr5)r)rrFrCrIr;rr<rrrrr+)rUrArIr�r�r�rrr�test_normal_zig_floats
s
zRNG.test_normal_zig_floatscCs�|j}|jj}d
}tj|�}||j_|j|d�||j_|j|d�}t||�tj|�}||j_|j||jd�tj|tjd�}||j_|j|tjd�||j_|j|tjd	�}t||�dS)Nr�rb�a)�out)r)r�r)r)r�r)rr)r�rbr�)	rArFrIr�emptyr;rrr<)rUrArIr�existing�directZsizedrrr�test_output_fills$


zRNG.test_output_fillcCs�|j}|jj}d	}tj|�}||j_|j|d�||j_|j|d�}t||�tj|tjd�}||j_|j|tjd�||j_|j|tjd�}t||�dS)
Nr�rbr�)r�)r)r)r�r)rr)r�rbr�)rArFrIrr�r9rr<)rUrArIrr�r�rrr�test_output_filling_uniform0s

zRNG.test_output_filling_uniformcCs�|j}|jj}d	}tj|�}||j_|j|d�||j_|j|d�}t||�tj|tjd�}||j_|j|tjd�||j_|j|tjd�}t||�dS)
Nr�rbr�)r�)r)r)r�r)rr)r�rbr�)rArFrIrr�rurr<)rUrArIrr�r�rrr�test_output_filling_exponentialBs

z#RNG.test_output_filling_exponentialcCs�|j}|jj}d
}tj|�}||j_|jd|d�||j_|jd|d�}t||�tj|tjd�}||j_|jd|tjd�||j_|jd|tjd	�}t||�dS)Nr�rbr�g�?)r�)r)r)r�r)rr)r�rbr�)rArFrIr�zerosr?rr<)rUrArIrr�r�rrr�test_output_filling_gammaTs

zRNG.test_output_filling_gammacCs�|j}|jj}d}tjd�d}tj|�}||j_|j||d�||j_|j||d�}t||�tj|tjd�}||j_|j||tjd	�||j_|j||tjd
�}t||�dS)Nr�rbr�g@X@g�?)r�)r)r)r�r)rr)r�rbr�)	rArFrIrrr�r?rr<)rUrArIr�mur�r�rrr�#test_output_filling_gamma_broadcastfs 

z'RNG.test_output_filling_gamma_broadcastc7Csp|j}d	}tj|�}tjt��|j|tjd�WdQRXtjt��|j|ddd�d�WdQRXtj|tjd�}tjt��|j|tj	d�WdQRXtj
|tjd�}tjt��|jd|tj	d�WdQRXtjt��"|jd|ddd�tjd�WdQRXtj
|tj	d�}tjt��|jd|tjd�WdQRXtjt��|jd|ddd�d�WdQRXdS)
Nr�rbr�)r�rra)r�)rg�?)r�rbr�)rArr�r[�raisesrSr;r<�
ValueErrorr@r�r?)rUrArr�rrr�test_output_fill_errorys(
 &zRNG.test_output_fill_errorc
Csf|tjkrd}d}ntj|�}t|j�d}|j}|j�|jj||gd|d�}|j�|jj|gd||d�}t	||�|j�|jj||d|d�}t	||�|j�|jjtj
|gd�tj
|gtd�d|d�}t	||�|j�|jjtj
|gd�tj
|gd�d|d�}	t	||	�|j�|jjd|d|d�}|j�|jj|gd|d�}t	||�dS)Nrrrr)r)rr)r�bool_�iinfo�intr �minrVrAr=rr�object)
rUr�upper�lower�infor"r#r$r%r&rrr�test_integers_broadcast�s:






zRNG.test_integers_broadcastcCs�tjdg�}tjdg�}|jj|||d�}|jdks8t�|jj|d||d�}|jdks\t�|jj||d|d�}|jdks�t�dS)Nrr)r)r)r)r)rrrAr=rrw)rUr�high�lowr�rrr�test_integers_numpy�szRNG.test_integers_numpyc!Cs�|tjkrd}d}ntj|�}t|j�d}|j}tjt��"|j	j
||dgd|d�WdQRXtjt��"|j	j
|d|gd|d�WdQRXtjt��$|j	j
|dg|gd|d�WdQRXtjt��|j	j
dgdg|d�WdQRXdS)Nrrrr)r)rr�r�r�r r�r[r�r�rAr=)rUrr�r�r�rrr�test_integers_broadcast_errors�s

&&(z"RNG.test_integers_broadcast_errorsN)JrZ�
__module__�__qualname__�classmethodrNrLrVrWr_rirorprqrrrsrtrvryr|r}r~rr�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�rrrrrD^s�		





'



!
rDc@s eZdZedd��Zdd�ZdS)�TestMT19937cCsJt|_d|_dg|_t|j|j��|_|jjj|_d|_|j	�t
|_dS)
Nr��rrr�i ii!r�i !i!!)rrFrGrHrrArIrJrKrLr�rT)rMrrrrN�szTestMT19937.setup_classcCshtjj�}|jd�|j�}||jj_|jjj}t|d|ddkj	��t|d|ddk�dS)N�crrIr2r�pos)
rr9ZRandomStater;Z	get_staterArFrIrrm)rUZnprgrIr1rrr�test_numpy_state�s



zTestMT19937.test_numpy_stateN)rZr�r�r�rNr�rrrrr��sr�c@seZdZedd��ZdS)�
TestPhiloxcCsDt|_d
|_dg|_t|j|j��|_|jjj|_d|_|j	�dS)Nr�?r��ri90rEllli�ll)
r	rFrGrHrrArIrJrKrL)rMrrrrN�szTestPhilox.setup_classN)rZr�r�r�rNrrrrr��sr�c@seZdZedd��ZdS)�	TestSFC64cCsDt|_d|_dg|_t|j|j��|_|jjj|_d|_|j	�dS)Ni90�)
r
rFrGrHrrArIrJrKrL)rMrrrrN�szTestSFC64.setup_classN)rZr�r�r�rNrrrrr��sr�c@seZdZedd��ZdS)�	TestPCG64cCsDt|_d
|_dg|_t|j|j��|_|jjj|_d|_|j	�dS)Nrr�r�r�ri90rEllli�ll)
rrFrGrHrrArIrJrKrL)rMrrrrN�szTestPCG64.setup_classN)rZr�r�r�rNrrrrr��sr�c@s(eZdZedd��Zdd�Zdd�ZdS)�TestDefaultRNGcCsBt|_d
|_dg|_tjj|j�|_|jjj|_	d|_
|j�dS)Nrr�r�r�ri90rEllli�ll)rrFrGrHrr9�default_rngrArIrJrKrL)rMrrrrNszTestDefaultRNG.setup_classcCstt|jjt��dS)N)rr)rArFr)rUrrr�test_default_is_pcg64sz$TestDefaultRNG.test_default_is_pcg64cCs�tjj�tjjd�tjjd�tjjd�tjjd�tjjddg�tjt��tjjd�WdQRXtjt��tjjddg�WdQRXdS)Ni90rl	-�tE+�I�6�%�Yl l	)	��~�eR :TI*�6�rrjrj)rr9r�r[r�r�)rUrrrr�s
zTestDefaultRNG.test_seedN)rZr�r�r�rNr�r�rrrrr�
sr�)F)N)%r��	functoolsrZnumpyrr[Z
numpy.testingrrrZnumpy.randomrrrr	r
Zfixturer�Zint8Zint16Zint32Zint64Zuint8Zuint16r�r>rrr(r+rCrDr�r�r�r�r�rrrr�<module>s, 
!
v