
    uhh
                         d dl mZ d dlmZ d dlmZmZ d dlmZ d dl	m
Z
 d dlmZ d dlmZ eeeee
dZdd
eee         z  fdZd	efdZd	efdZdS )   )	Generator)MT19937)PCG64	PCG64DXSM)Philox)SFC64)BitGenerator)RandomState)r   r   r   r   r   r   bit_generatorc                     t          | t                    r| }n6| t          v rt          |          }nt          t	          |           dz              |            S )a(  
    Pickling helper function that returns a bit generator object

    Parameters
    ----------
    bit_generator : type[BitGenerator] or str
        BitGenerator class or string containing the name of the BitGenerator

    Returns
    -------
    BitGenerator
        BitGenerator instance
    z$ is not a known BitGenerator module.)
isinstancetypeBitGenerators
ValueErrorstr)r   bit_gen_classs     K/var/www/histauto/venv/lib/python3.11/site-packages/numpy/random/_pickle.py__bit_generator_ctorr      se     -&& 
%	-	'	'%m4!GG
 
 	
 =??    c                 z    t          | t                    rt          |           S t           ||                     S )a  
    Pickling helper function that returns a Generator object

    Parameters
    ----------
    bit_generator_name : str or BitGenerator
        String containing the core BitGenerator's name or a
        BitGenerator instance
    bit_generator_ctor : callable, optional
        Callable function that takes bit_generator_name as its only argument
        and returns an instantized bit generator.

    Returns
    -------
    rg : Generator
        Generator using the named core BitGenerator
    )r   r	   r   bit_generator_namebit_generator_ctors     r   __generator_ctorr   +   sA    & $l33 -+,,,''(:;;<<<r   c                 z    t          | t                    rt          |           S t           ||                     S )a  
    Pickling helper function that returns a legacy RandomState-like object

    Parameters
    ----------
    bit_generator_name : str
        String containing the core BitGenerator's name
    bit_generator_ctor : callable, optional
        Callable function that takes bit_generator_name as its only argument
        and returns an instantized bit generator.

    Returns
    -------
    rs : RandomState
        Legacy RandomState using the named core BitGenerator
    )r   r	   r
   r   s     r   __randomstate_ctorr   D   sA    $ $l33 /-...))*<==>>>r   N)
_generatorr   _mt19937r   _pcg64r   r   _philoxr   _sfc64r   r   r	   mtrandr
   r   r   r   r   r   r    r   r   <module>r$      s   ! ! ! ! ! !       $ $ $ $ $ $ $ $             ' ' ' ' ' '      #'!	  d<.@(@    4 )2(<= = = =2 +4*>? ? ? ? ? ?r   