add-determinism 0.7.3

RPM buildroot helper to strip nondeterministic bits in files
Documentation
U

�AT^��c@sjdddddddddd	d
ddd
dddgZddlZddlZddlZddlmZddlmZddlm	Z	ddl
mZmZddlm
Z
mZmZmZmZmZmZmZddlmZddlmZGdd�de�Zdcdd�Zdd�Zdd �Zd!d"�Zd#d$�Zd%d&�Z d'd(�Z!ddd*d+�Z"d,d�Z#d-d�Z$d.d�Z%d/d�Z&d0d�Z'd1d	�Z(d2d�Z)ded4d�Z*d5d
�Z+d6d�Z,d7d8d9�d:d�Z-dfd;d<�Z.dgd=d�Z/dhd>d
�Z0did?d�Z1djd@d�Z2dAdB�Z3GdCd�d�Z4zddDl5m3Z3Wne6k
�r�YnXe7dEk�rfddFlm8Z8ddGlm9Z9m:Z:m;Z;m<Z<ddHlm=Z=ddl>Z>e4dIdJ�Z?e4dKdL�Z@dMZAe?�BeA�ZCe@�BeA�ZDe9e:fD]<ZEeFdNeEj7�dO��eFeEe?e@��eFe4�GeHeEeCeD����qNdPZIe9e:e;e<fD]@ZEeFdNeEj7�dQ��eFeEe?eI��eFe4�GeHeEeCe=eI�����q�dRZIe9e:e;fD]@ZEeFdSeEj7�dT��eFeEeIe?��eFe4�GeHeEe=eI�eC����q�dUdV�ZJe4dWdX�ZKe4dYdZ�ZLd[ZMdMZAe4�Gd\d]�eK�BeA�D��ZNeJeKeMeN�e4�Gd^d]�eK�BeA�D��ZNeJeKeMeN�e4�Gd_d]�eK�BeA�D��ZNeJeKeMeN�e4�Gd`d]�eK�BeA�D��ZNeJeKeMeN�e4�Gdad]�eOeK�BeA�eL�BeA��D��ZNeJeKeLeN�e4�Gdbd]�eOeK�BeA�eL�BeA��D��ZNeJeKeLeN�eFe>�P��dS)k�
NormalDist�StatisticsError�fmean�geometric_mean�
harmonic_mean�mean�median�median_grouped�median_high�
median_low�mode�	multimode�pstdev�	pvariance�	quantiles�stdev�variance�N��Fraction)�Decimal)�groupby)�bisect_left�bisect_right)�hypot�sqrt�fabs�exp�erf�tau�log�fsum)�
itemgetter)�Counterc@seZdZdS)rN)�__name__�
__module__�__qualname__�r%r%�"/usr/lib64/python3.8/statistics.pyruscCs�d}t|�\}}||i}|j}ttt|��}t|t�D]@\}}	t||�}tt|	�D]"\}}|d7}||d�|||<qRq6d|kr�|d}
ntdd�t|�	��D��}
||
|fS)Nr�css|]\}}t||�VqdS�Nr)�.0�d�nr%r%r&�	<genexpr>�sz_sum.<locals>.<genexpr>)
�_exact_ratioZget�_coerce�int�typer�mapZsum�sortedZitems)�data�start�countr+r*ZpartialsZpartials_get�TZtyp�values�totalr%r%r&�_sum{s$
r9cCs.z
|��WStk
r(t�|�YSXdSr()Z	is_finite�AttributeError�mathZisfinite)�xr%r%r&�	_isfinite�s
r=cCs�||kr|S|tks|tkr |S|tkr,|St||�r:|St||�rH|St|t�rV|St|t�rd|St|t�r|t|t�r||St|t�r�t|t�r�|Sd}t||j|jf��dS)Nz"don't know how to coerce %s and %s)r/Zbool�
issubclassr�float�	TypeErrorr")r6�S�msgr%r%r&r.�s(



r.cCs�zrt|�tkst|�tkr$|��WSz|j|jfWWStk
rnz|��WYWStk
rhYnXYnXWn ttfk
r�|dfYSXd}t	|�
t|�j���dS)Nz0can't convert type '{}' to numerator/denominator)r0r?rZas_integer_ratio�	numerator�denominatorr:Z
OverflowError�
ValueErrorr@Zformatr")r<rBr%r%r&r-�s
r-cCspt|�|kr|St|t�r(|jdkr(t}z
||�WStk
rjt|t�rd||j�||j�YS�YnXdS)Nr')r0r>r/rDr?r@rrC)Zvaluer6r%r%r&�_convert�s

rFcCs.t||�}|t|�kr&|||kr&|St�dSr()r�lenrE)�ar<�ir%r%r&�
_find_lteq
s
rJcCs>t|||d�}|t|�dkr6||d|kr6|dSt�dS)N)Zlor')rrGrE)rHZlr<rIr%r%r&�
_find_rteqs rK�negative valueccs$|D]}|dkrt|��|VqdS)Nr)r)r7�errmsgr<r%r%r&�	_fail_negsrNcCsHt|�|krt|�}t|�}|dkr,td��t|�\}}}t|||�S)Nr'z%mean requires at least one data point)�iter�listrGrr9rF)r3r+r6r8r5r%r%r&r'scstzt|��Wn0tk
r<d��fdd�}t||��}Yn
Xt|�}z
|�WStk
rntd�d�YnXdS)Nrc3s t|dd�D]\�}|VqdS)Nr')r4)Z	enumerate)Ziterabler<�r+r%r&r5Oszfmean.<locals>.countz&fmean requires at least one data point)rGr@r�ZeroDivisionErrorr)r3r5r8r%rQr&rAs	
cCs8ztttt|���WStk
r2td�d�YnXdS)NzHgeometric mean requires a non-empty dataset  containing positive numbers)rrr1rrEr)r3r%r%r&r\s�cCs�t|�|krt|�}d}t|�}|dkr2td��n<|dkrn|d}t|tjtf�rf|dkrbt|��|Std��z"t	dd�t
||�D��\}}}Wntk
r�YdSXt|||�S)Nz.harmonic mean does not support negative valuesr'z.harmonic_mean requires at least one data pointrzunsupported typecss|]}d|VqdS)r'Nr%�r)r<r%r%r&r,��z harmonic_mean.<locals>.<genexpr>)
rOrPrGr�
isinstance�numbersZRealrr@r9rNrRrF)r3rMr+r<r6r8r5r%r%r&ros$
"cCs\t|�}t|�}|dkr td��|ddkr8||dS|d}||d||dSdS�Nr�no median for empty data�r'�r2rGr)r3r+rIr%r%r&r�s
cCsLt|�}t|�}|dkr td��|ddkr8||dS||ddSdSrWrZ�r3r+r%r%r&r	�scCs,t|�}t|�}|dkr td��||dS)NrrXrYrZr[r%r%r&r�s
r'c
Cs�t|�}t|�}|dkr"td��n|dkr2|dS||d}||fD]}t|ttf�rFtd|��qFz||d}Wn(tk
r�t|�t|�d}YnXt||�}t	|||�}|}||d}	|||d||	S)NrrXr'rYzexpected number but got %r)
r2rGrrUZstrZbytesr@r?rJrK)
r3Zintervalr+r<ZobjZLZl1Zl2ZcfZfr%r%r&r�s&

cCsHt|�}t|��d�}z|ddWStk
rBtd�d�YnXdS)Nr'rzno mode for empty data)rOr!�most_commonZ
IndexErrorr)r3Zpairsr%r%r&r
scCs@tt|����}tt|td�d�dgf�\}}tttd�|��S)Nr')Zkeyr)r!rOr\Znextrr rPr1)r3ZcountsZmaxcountZ
mode_itemsr%r%r&r5s
��	exclusive)r+�methodc
CsL|dkrtd��t|�}t|�}|dkr0td��|dkr�|d}g}td|�D]N}|||}||||}||||||d||}	|�|	�qN|S|dk�r:|d}g}td|�D]r}|||}|dkr�dn||dkr�|dn|}||||}||d||||||}	|�|	�q�|Std|����dS)Nr'zn must be at least 1rYz"must have at least two data pointsZ	inclusiver^zUnknown method: )rr2rG�rangeZappendrE)
r3r+r_ZldZmZresultrIZjZdeltaZinterpolatedr%r%r&rls4$
$$csd�dkrt|��t�fdd�|D��\}}}t�fdd�|D��\}}}||dt|�8}||fS)Nc3s|]}|�dVqdS)rYNr%rS��cr%r&r,�rTz_ss.<locals>.<genexpr>c3s|]}|�VqdSr(r%rSrar%r&r,�rTrY)rr9rG)r3rbr6r8r5ZUZtotal2Zcount2r%rar&�_ss�srccCsLt|�|krt|�}t|�}|dkr,td��t||�\}}t||d|�S)NrYz*variance requires at least two data pointsr'�rOrPrGrrcrF)r3�xbarr+r6�ssr%r%r&r�s&cCsHt|�|krt|�}t|�}|dkr,td��t||�\}}t|||�S)Nr'z*pvariance requires at least one data pointrd)r3�mur+r6rfr%r%r&r
�s#cC�8t||�}z
|��WStk
r2t�|�YSXdSr()rrr:r;)r3re�varr%r%r&r�
	

cCrhr()r
rr:r;)r3rgrir%r%r&r$rjcCs|d}t|�dkr�d||}d|d|d|d|d|d	|d
|d|}d|d
|d|d|d|d|d|d}||}|||S|dkr�|nd|}tt|��}|dk�r^|d}d|d|d|d|d|d|d|d}d|d |d!|d"|d#|d$|d%|d}n�|d}d&|d'|d(|d)|d*|d+|d,|d-}d.|d/|d0|d1|d2|d3|d4|d}||}|dk�r�|}|||S)5N��?g333333�?g��Q��?g^�}o)��@g�E.k�R�@g ��Ul�@g*u��>l�@g�N����@g��"]Ξ@gnC���`@gu��@giK��~j�@gv��|E�@g��d�|1�@gfR��r��@g��u.2�@g����~y�@g�n8(E@��?�g@g�������?g鬷�ZaI?gg�El�D�?g7\�����?g�uS�S�?g�=�.
@gj%b�@g���Hw�@gjR��e��?g�9dh?
>g('߿��A?g��~z �?g@�3��?gɅ3��?g3fR�x��?gI�F��l@g����t��>g*�Y��n�>gESB\T?g�N;A+�?g�UR1���?gE�F���?gP�n��@g&�>���@g����i�<g�@�F�>g�tcI,\�>g�ŝ���I?g*F2�v�?g�C4��?g��O�1�?)rrr)�prg�sigmaZqZrZnumZdenr<r%r%r&�_normal_dist_inv_cdf7sd���������������������������
��������������������������	��������������������������
rpc@s�eZdZddd�Zd7dd�Zedd	��Zd
d�dd
�Zdd�Zdd�Z	dd�Z
d8dd�Zdd�Ze
dd��Ze
dd��Ze
dd��Ze
dd ��Ze
d!d"��Zd#d$�Zd%d&�Zd'd(�Zd)d*�Zd+d,�Zd-d.�ZeZd/d0�ZeZd1d2�Zd3d4�Zd5d6�Zd
S)9rz(Arithmetic mean of a normal distributionz+Standard deviation of a normal distribution)�_mu�_sigmarmrlcCs(|dkrtd��t|�|_t|�|_dS)Nrmzsigma must be non-negative)rr?rqrr)�selfrgror%r%r&�__init__�s
zNormalDist.__init__cCs.t|ttf�st|�}t|�}||t||��Sr()rUrPZtuplerr)Zclsr3rer%r%r&�from_samples�szNormalDist.from_samplesN)�seedcsB|dkrtjn
t�|�j�|j|j�����fdd�t|�D�S)Ncsg|]}�����qSr%r%�r)rI��gaussrgror%r&�
<listcomp>��z&NormalDist.samples.<locals>.<listcomp>)�randomryZRandomrqrrr`)rsr+rvr%rxr&�samples�szNormalDist.samplescCs<|jd}|std��t||jdd|�tt|�S)N�@z$pdf() not defined when sigma is zerog�)rrrrrqrr)rsr<rr%r%r&�pdf�s
zNormalDist.pdfcCs2|jstd��ddt||j|jtd��S)Nz$cdf() not defined when sigma is zerorkrlr~)rrrrrqr)rsr<r%r%r&�cdf�szNormalDist.cdfcCs:|dks|dkrtd��|jdkr*td��t||j|j�S)Nrmrlz$p must be in the range 0.0 < p < 1.0z-cdf() not defined when sigma at or below zero)rrrrprq)rsrnr%r%r&�inv_cdf�s


zNormalDist.inv_cdfr]cs��fdd�td��D�S)Ncsg|]}��|���qSr%)r�rw�r+rsr%r&rz�r{z(NormalDist.quantiles.<locals>.<listcomp>r')r`)rsr+r%r�r&r�s	zNormalDist.quantilescCst|t�std��||}}|j|jf|j|jfkr>||}}|j|j}}|rT|s\td��||}t|j|j�}|s�dt|d|jt	d��S|j||j|}|j|jt	|d|t
||��}	||	|}
||	|}dt|�|
�|�|
��t|�|�|�|��S)Nz$Expected another NormalDist instancez(overlap() not defined when sigma is zerorlr~)rUrr@rrrqrrrrrrr�)rsZother�X�YZX_varZY_varZdvZdmrHZb�x1�x2r%r%r&�overlap�s"


(zNormalDist.overlapcC�|jSr(�rq�rsr%r%r&r��zNormalDist.meancCr�r(r�r�r%r%r&r�r�zNormalDist.mediancCr�r(r�r�r%r%r&r
�szNormalDist.modecCr�r(�rrr�r%r%r&r�r�zNormalDist.stdevcCs
|jdS)Nr~r�r�r%r%r&rr�zNormalDist.variancecCs8t|t�r&t|j|jt|j|j��St|j||j�Sr(�rUrrqrrr�r�r�r%r%r&�__add__�

zNormalDist.__add__cCs8t|t�r&t|j|jt|j|j��St|j||j�Sr(r�r�r%r%r&�__sub__r�zNormalDist.__sub__cCst|j||jt|��Sr(�rrqrrrr�r%r%r&�__mul__#�zNormalDist.__mul__cCst|j||jt|��Sr(r�r�r%r%r&�__truediv__+r�zNormalDist.__truediv__cCst|j|j�Sr(�rrqrr�r�r%r%r&�__pos__3�zNormalDist.__pos__cCst|j|j�Sr(r�r�r%r%r&�__neg__7r�zNormalDist.__neg__cCs
||Sr(r%r�r%r%r&�__rsub__=r�zNormalDist.__rsub__cCs&t|t�stS|j|jko$|j|jkSr()rUrZNotImplementedrqrrr�r%r%r&�__eq__Cs
zNormalDist.__eq__cCst|j|jf�Sr()Zhashrqrrr�r%r%r&�__hash__Ir�zNormalDist.__hash__cCs t|�j�d|j�d|j�d�S)Nz(mu=z, sigma=z))r0r"rqrrr�r%r%r&�__repr__MszNormalDist.__repr__)rmrl)r])r"r#r$Z	__slots__rtZclassmethodrur}rr�r�rr�Zpropertyrrr
rrr�r�r�r�r�r�Z__radd__r�Z__rmul__r�r�r�r%r%r%r&r�sD�


"




)rpZ__main__)�isclose)�add�sub�mul�truediv)�repeati
ii����ii��z
Test z with another NormalDist:iz with a constant:iz
Test constant with z:cCsdSr(r%)�G1�G2r%r%r&�assert_close}r�r�i����iIii/g`@@cCsg|]}|t�qSr%��srSr%r%r&rz�r{rzcCsg|]}|t�qSr%r�rSr%r%r&rz�r{cCsg|]}|t�qSr%r�rSr%r%r&rz�r{cCsg|]}|t�qSr%r�rSr%r%r&rz�r{cCsg|]\}}||�qSr%r%�r)r<Zyr%r%r&rz��cCsg|]\}}||�qSr%r%r�r%r%r&rz�r�)r)rL)r'r(r(r(r(r()QZ__all__r;rVr|Z	fractionsrZdecimalrZ	itertoolsrZbisectrrrrrrrrrrZoperatorr Zcollectionsr!rErr9r=r.r-rFrJrKrNrrrrrr	rrr
rrrcrr
rrrprZ_statisticsZImportErrorr"r�r�r�r�r�r�ZdoctestZg1Zg2r+r}r�r�ZfuncZprintrur1Zconstr�r�r�r�rAZzipZtestmodr%r%r%r&Z<module>Ts��(
: 

/
779

/
,

JQ






�
�