
    
9ja              
          S SK Jr  S SKrS SKrS SKrS SKJ	r	  S SKJ
r
  \	R                  " 5         \	R                  " 5         \	R                  " S5         S SKJr  S S
KJr  S r\
R,                  rS SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJ r   S SKJ!r!  S SKJ"r"  S SKJ#r#  \ =r$=r%=r&r'\ * r(\!=r)r*Sr+Sr,S SKJ-r-  S SKJ.r.  S SKJ/r/  S SKJ0r0  S SKJ1r1  S SKJ2r2  S S KJ3r3  S S!KJ4r4  S S"KJ5r5  S S#KJ6r6  S S$KJ7r7  S S%KJ8r8  S S&KJ9r9  S S'KJ:r:  S S(KJ;r;  S S)KJ<r<  S S*KJ=r=  S S+KJ>r>  S S,KJ?r?  S S-KJ@r@  S S.KJArA  S S/KJBrB  S S0KJCrC  S S1KJDrD  S S2KJErE  S S3KJFrF  S S4KJGrG  S S5KJHrH  S S6KJIrI  S S7KJJrJ  S S8KJKrK  S S9KJLrL  S S:KJMrN  S S;KJOrO  S S<KJPrP  S S:KJMrM  S S=KJQrQ  S S>KJRrS  S S?KJTrT  S S@KJUrV  S S@KJUrW  S S>KJRrR  S S@KJUrU  S SAKXJYrY  S SBKXJZrZ  S SCKXJ[r[  S SDKXJ\r\  S SEKXJ]r]  S SFKXJ^r^  S SGKXJ_r_  S SHKXJ`r`  S SIKXJara  S SJKXJbrb  S SKKXJcrc  S SLKdJere  S SMKdJfrf  S SNKdJgrg  S SOKdJhrh  S SPKdJiri  S SQKdJjrj  S SRKdJkrk  S SSKdJlrl  S STKdJmrm  S SUKdJnrn  S SVKdJoro  S SWKdJprp  S SXKqJrrr  S SYKqJsrs  S SZKqJtrt  S S[KqJuru  S S\KqJvrv  S S]KqJwrw  S S^KxJyry  S S_KxJzrz  S S`KxJ{r{  S SaKxJ|r|  S SbKxJ}r}  S ScKxJ~r~  S SdKJr  S SeKJr  S SfKJr  S SgKJr  S ShKJr  S SiKJr  S SjKJr  S SkKJr  S SlKJr  S SmKJr  S SnKJr  S SoKJr  S SpKJr  S SqKJr  \rS SrKJr  S SsKJr  S StKJr  S SuKJr  S SvKJr  S SwKJr  S SxKJr  S SyKJr  S SzKJr  S S{KJr  S S|KJr  S S}KJr  S S~KJr  S SKJr  S SKJr  \rS SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  \" \S5      (       a  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  \r\r\rS SKJr  S SKJr  GSS jrGSS jrS rS rS SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKGJ Gr   S SKGJGr  S SKGJGr  S SGKGJGr  S SGKGJGr  S SGKGJGr  S SGKGJGr  S SGKGJ	Gr	  S SGKGJ
Gr
  S SGKGJGr  S SGKGJGr  S SGKGJGr  S SGKGJGr  GSS jGrS SKGJGr  S SKGJGr  S SKGJGr  S SGKGJGr  S SGKGJGr  S SGKGJGr  S SGKGJGr  S SGKGJGr  S SGKGJGr  S SGKGJGr  S SGKGJGr  S SGKGJGr  S SGKGJ Gr   S SGK!GJ"Gr"  S SGK!GJ#Gr#  S SGK!GJ$Gr$  S SGK!GJ%Gr%  S SGK&GJ'Gr'  S SGK&GJ(Gr(  S SGK&GJ)Gr)  S SGK&GJ*Gr*  S SGK&GJ+Gr+  S SGK,GJ-Gr-  S SGK,GJ.Gr.  S SGK/GJ0Gr0  S SGK/GJ1Gr1  S SGK/GJ2Gr2  S SGK/GJ3Gr3  S SGK/GJ4Gr4  S SGK,GJ-Gr-  S SGK,GJ5Gr5  S SGK,GJ.Gr.  S SGK,GJ6Gr6  S SGK,GJ7Gr7  S SGK,GJ8Gr8  S Gr9S SGK:GJ;Gr;  S SGK:GJ<Gr<  S SGK:GJ=Gr=  S SGK:GJ>Gr>  S GS GK!GJ?Gr?  S GSGK!GJ@Gr@  S GSGK!GJAGrA  S GSGK!GJBGrB  S GSGK!GJCGrC  S GSGK!GJDGrD  S GSGK,GJEGrE  S GSGK,GJFGrF  S GSGKGGJHGrH  S GS	GKIGJJGrJ  S GS
GKIGJKGrK  S GSGKIGJLGrL  S GSGKIGJMGrM  S GSGKIGJNGrN  S GSGKIGJOGrO  S GSGKIGJPGrP  S GSGKQGJRGrR  S GSGKQGJSGrS  S GSGKQGJTGrT  S GSGKQGJUGrU  G\TGrVG\UGrWG\SGrXG\RGrYS GSGKQGJZGrZ  S GSGKQGJ[Gr[  S GSGKQGJ\Gr\  S GSGKQGJ]Gr]  S GSGKQGJ^Gr^  S GSGKQGJ_Gr_  S GSGKQGJ`Gr`  S GSGKQGJaGra  S GSGKQGJbGrb  S GSGKcGJdGrd  S GSGKcGJeGre  S GSGKcGJfGrf  S GS GKcGJgGrg  S GS!GKcGJhGrh  S GS"GKcGJiGri  G\dGrjG\eGrkG\fGrlS GS#GKmGJnGrn  S GS$GKmGJoGro  S GS%GKmGJpGrp  S GS&GKmGJqGrq  S GS'GKmGJrGrr  S GS(GKmGJsGrs  S GS)GKmGJtGrt  S GS*GKmGJuGru  S GS+GKvGJwGrw  S GS,GKvGJxGrx  S GS-GKvGJyGry  S GS.GKvGJzGrz  S GS/GKvGJ{Gr{  S GS0GKvGJ|Gr|  S GS1GKvGJ}Gr}  S GS2GKvGJ~Gr~  S GS3GKvGJGr  S GS4GKvGJGr  S GS5GKvGJGr  S GS6GKvGJGr  S GS7GKvGJGr  S GS8GKvGJGr  S GS9GKGJGr  S GS:GKGJGr  S GS;GKGJGr  S GS<GKGJGr  S GS=GKGJGr  S GS>GKGJGr  S GS?GKGJGr  S GS@GKGJGr  S GSAGKGJGr  S GSBGKGJGr  S GSCGKGJGr  S GSDGKGJGr  S GSEGKGJGr  S GSFGKGJGr  S GSGGKGJGr  S GSHGKGJGr  S GSIGKGJGr  S GSJGKGJGr  S GSKGKGJGr  S GSLGKGJGr  S GSMGKGJGr  S GSNGKGJGr  S GSOGKGJGr  S GSPGKGJGr  S GSQGKGJGr  S GSRGKGJGr  S GSSGKGJGr  S GSTGKGJGr  S GSUGKGJGr  S GSVGKGJGr  S GSWGKGJGr  S GSXGKGJGr  S GSYGKGJGr  S GSZGKGJGr  S GS[GKGJGr  S GS\GKGJGr  S GS\GKGJGr  S GS]GKGJGr  S GS^GKGJGr  G\GrS GS_GKGJGr  S GS`GKGJGr  S GS`GKGJGr  S GSaGKGJGr  S GSbGKGJGr  S GScGKGJGr  S GScGKGJGr  S GSdGKGJGr  S GSeGKGJGr  S GSfGKGJGr  S GSgGKGJGr  S GShGKGJGr  S GSiGKGJGr  S GSjGKGJGr  S GSkGKGJGr  S GSlGKGJGr  S GSmGKGJGr  S GSnGKGJGr  S GSoGKGJGr  S GSpGKGJGr  S GSqGKGJGr  S GSrGKGJGr  S GSsGKGJGr  S GStGKGJGr  S GSuGKGJGr  S GSvGKGJGr  S GSwKGJGr  S GSxGKGJGr  S GSyGKGJGr  S GSzGKGJGr  S GS{GKGJGr  S GS|GKGJGr  S GS}GKGJGr  S GS~GKGJGr  S GSGKGJGr  S GSGKGJGr  S GSGKGJGr  S GSGKGJGr  S GSGKGJGr  S GSGKGJGr  S GSGKGJGr  S GSGKGJGr  S GSGKGJGr  S GSGKGJGr  S GSGKGJGr  S GSGKGJGr  S GSGKGJGr  S GSGKGJGr  S GSGKGJGr  S GSGKGJGr  S GSGKGJGr  S GSGKGJGr  S GSGKGJGr  S GSGKGJGr  S GSGKGJGr  S GSGKGJGr  S GSGKGJGr  S GSGKGJGr  S GSGKGJGr  S GSGKGJGr  S GSGKGJGr  S GSGKGJGr  S GSGKGJGr  S GSGKGJGr  S GSGKGJGr  S GSGKGJGr  S GSGK GJGr  S GSGK GJGr  S GSGK GJGr  S GSGK GJGr  S GSGK GJGr  S GSKGJGr  S GSGKGJGr  S GSGKGJ	Gr	  S GSGKGJ
Gr
  S GSGKGJGr  S GSGKGJGr  S GSGKGJGr  S GSKGJGr  GS GrS GSGKGJGr  S GSGKGJGr  S GSKGJGr  S GSKGJGr  S GSKGJGr  S GSGKGJGr  S GSGKGJGr  S GSKGJGr  S GSKGJGr  GSGSGS.GS jjGr\GR:                  \   GrGS Gr\GR@                  GRB                  Gr!GSGr"\GRF                  " 5       Gr$\GRJ                  " 5       Gr&\GRN                  " G\$GRP                  5        \GRR                  " G\&GRP                  5        GS Gr*GS Gr+GSGS.GS jGr,/ GSQGr-G\EGr.G\FGr/G\Gr0GS Gr1GSGS jGr2GS Gr3GS Gr4GS Gr5\R,                  GS:  a  S S"KJ5Gr6  S S&KJ9Gr7  S S0KJCGr8  OS GSKGJ6Gr6  S GSKGJ7Gr7  S GSKGJ8Gr8  \R,                  GS:  a  S GSKGJ9Gr9  S GSKGJ:Gr:  OS GSGK;GJ9Gr9  S GSGK<GJ:Gr:  \R,                  GS:  a.  S GSKGJ=Gr=  S GSKGJ>Gr>  S GSKGJ?Gr?  S GSKGJ@Gr@  S GSKGJAGrA  OGSGrBGS Gr=GS Gr>GS Gr?GS Gr@GS GrAGS GrCGS GrDG\D" G\E" 5       5        GS GrFG\F" GS5      GrGg! \ a7  r\" S\	R"                  " 5        S\" \5      R&                   S	\ S35      \eSrCff = f(      )annotationsN)_environment)_versioncutensor)_corezB
================================================================
z

Original error:
  z: )cudac                 ,    [         R                  " 5       $ )aO  Return True if GPU execution is available.

This function can be used to guard code for cases where CuPy is installed
but not usable, typically because the system has no GPU.
It checks whether the driver can be queried for devices and that there is
at least one device available.

Returns:
    bool: True if GPU execution is possible.
)r   is_available     G/home/wildlama/miniconda3/lib/python3.13/site-packages/cupy/__init__.pyr
   r
   !   s     r   )fft)linalg)
polynomial)random)ndarray)ufunc)e)euler_gamma)inf)nan)newaxis)pig        g       )complexfloating)floating)generic)inexact)integer)number)signedinteger)unsignedinteger)bool_)byte)short)intc)int_)longlong)intp)int8)int16)int32)int64)ubyte)ushort)uintc)uint)	ulonglong)uintp)uint8)uint16)uint32)uint64)half)single)double)float64)float16)float32)csingle)	complex64)cdouble)
complex128)astype)empty)
empty_like)eyefull)	full_like)identity)ones)	ones_like)zeros)
zeros_like)copy)array)
asanyarray)asarray)ascontiguousarray)fromfile)fromfunction)fromiter)
frombuffer)
fromstring)loadtxt)
genfromtxt)arange)linspace)logspace)meshgrid)mgrid)ogrid)diag)diagflat)tri)tril)triu)vander)	piecewise)	vectorize)apply_along_axis)apply_over_axes)put_along_axis)copyto)shape)ravel)reshape)moveaxis)rollaxis)swapaxes)	transpose)matrix_transpose)
atleast_1d)
atleast_2d)
atleast_3d)	broadcast)broadcast_arrays)broadcast_to)expand_dims)squeeze)column_stack)concatenate)dstack)hstack)	row_stack)stack)vstack)asarray_chkfinite)asfarray)asfortranarray)require)array_split)dsplit)hsplit)split)vsplit)repeat)tile)delete)append)resize)unique)
unique_all)unique_counts)unique_values)unique_inverse)
trim_zeros)flip)fliplr)flipud)roll)rot90broadcast_shapes)r   )bitwise_and)
bitwise_or)bitwise_xor)bitwise_not)bitwise_count)invert)
left_shift)right_shift)packbits)
unpackbitsc                .    [         R                  " X5      $ )zjReturn the binary representation of the input number as a string.

.. seealso:: :func:`numpy.binary_repr`
)_numpybinary_repr)numwidths     r   r   r   M  s    
 c))r   c                r    [        U [        5      (       a  U R                  OU n [        R                  " XUS9$ )zReturns True if cast between data types can occur according to the
casting rule. If from is a scalar or array scalar, also returns True if the
scalar value can be cast without overflow or truncation to an integer.

.. seealso:: :func:`numpy.can_cast`
)casting)
isinstancer   dtyper   can_cast)from_tor   s      r   r   r   X  s,     &eW55EKK5E??5g66r   c                    [        U 5      S:X  a  [        R                  $ [        R                  " S5      n/ nU  Hp  nUR                  R                  S:X  a  [        S5      eUR                  R                  S;   a  UR                  U5        MU  UR                  UR                  5        Mr     [        R                  " [        R                  U5      R                  $ )zbReturn a scalar type which is common to the input arrays.

.. seealso:: :func:`numpy.common_type`
r   r:   bz+can't get common type for non-numeric arrayiu)lenr   r;   r   kind	TypeErrorr   
_functoolsreducepromote_typestype)arraysdefault_float_dtypedtypesas       r   common_typer   c  s    
 6{a~~ ,,y1F77<<3JKKWW\\T!MM-.MM!''"  V116:???r   c                     U  Vs/ s H&  n[        U[        5      (       a  UR                  OUPM(     nn[        R                  " U6 $ s  snf )zReturns the type that results from applying the NumPy type promotion
rules to the arguments.

.. seealso:: :func:`numpy.result_type`
)r   r   r   r   result_type)arrays_and_dtypesr   r   s      r   r   r   x  sR     01/ $Aw//agg/  1v&&1s   -A)min_scalar_type)r   )r   )finfo)iinfo)
issubdtype)isdtype)mintypecode)typename)c_)indices)ix_)mask_indices)tril_indices)tril_indices_from)triu_indices)triu_indices_from)r_)ravel_multi_index)unravel_index)choose)compress)diagonal)extract)select)take)take_along_axis)place)put)putmask)fill_diagonal)diag_indices)diag_indices_from)flatiter)	index_exp)ndindex)s_)load)save)savez)savez_compressed)
array_repr)	array_str)array2string)format_float_positional)format_float_scientific)savetxtc                0    [         R                  " XU5      $ )zkReturn a string representation of a number in the given base system.

.. seealso:: :func:`numpy.base_repr`
)r   	base_repr)r   basepaddings      r   r   r     s    
 F'22r   )get_printoptions)set_printoptions)printoptions)einsum)cross)dot)inner)kron)matmul)outer)	tensordot)vdot)trace)allclose)array_equal)array_equiv)isclose)isfinite)isinf)isnan)isneginf)isposinf)in1d)isin)	iscomplex)iscomplexobj)	isfortran)isreal)	isrealobj)intersect1d)	setdiff1d)setxor1d)union1dc                .    [         R                  " U 5      $ )zWReturns True if the type of num is a scalar type.

.. seealso:: :func:`numpy.isscalar`
)r   isscalar)elements    r   r  r    s    
 ??7##r   )logical_and)logical_not)
logical_or)logical_xor)equal)greater)greater_equal)less)
less_equal)	not_equal)all)any)poly1d)poly)polyadd)polysub)polymul)polyfit)polyval)roots)arccos)arcsin)arctan)arctan2)cos)deg2rad)degrees)hypot)rad2deg)radians)sin)tan)unwrap)arccosh)arcsinh)arctanh)cosh)sinh)tanh)around)ceil)fix)floor)rint)round)round_)trunc)prod)product)sum)cumprod)
cumproduct)cumsum)ediff1d)
nancumprod)	nancumsum)nansum)nanprod)diff)gradient)	trapezoid)bartlett)blackman)hamming)hanning)kaiser)exp)exp2)expm1)log)log10)log1p)log2)	logaddexp)
logaddexp2)i0)sinc)copysign)frexp)ldexp)	nextafter)signbit)gcd)lcm)add)divide)divmod)floor_divide)float_power)fmod)modf)multiply)negative)positive)power)
reciprocal)	remainder)subtract)true_divide)angle)	conjugate)imag)real)absolute)cbrt)clip)fabs)fmax)fmin)interp)maximum)minimum)
nan_to_num)real_if_close)sign)	heaviside)sqrt)square)convolve)byte_bounds)may_share_memory)shares_memory)who)iterable)pad)count_nonzero)argmax)argmin)argwhere)flatnonzero)	nanargmax)	nanargmin)nonzero)searchsorted)where)argpartition)argsort)lexsort)msort)sort_complex)	partition)sort)corrcoef)cov)	correlate)amax)amin)nanmax)nanmin)
percentile)ptp)quantile)median)average)mean)std)var)	nanmedian)nanmean)nanstd)nanvar)bincount)digitize)	histogram)histogram2d)histogramdd)
exceptions)	AxisError)ComplexWarning)ModuleDeprecationWarning)RankWarning)TooHardError)VisibleDeprecationWarning)sizec                h     U R                   $ ! [         a    [        R                   " U 5      s $ f = f)zReturns the number of dimensions of an array.

Args:
    a (array-like): If it is not already an `cupy.ndarray`, a conversion
        via :func:`numpy.asarray` is attempted.

Returns:
    (int): The number of dimensions in `a`.

)ndimAttributeErrorr   )r   s    r   r  r    s-    vv {{1~s     11)
clear_memo)memoize)ElementwiseKernel)	RawKernel)	RawModule)ReductionKernel)make_aligned_dtype)
fromDlpack)from_dlpackT)blockingc                   [        U [        5      (       a  U R                  XX4S9$ [        U S5      (       a  [	        U 5      R                  XX4S9$ [
        R                  " XS9nUb  XSS'   U$ UnU$ )aZ  Returns an array on the host memory from an arbitrary source array.

Args:
    a: Arbitrary object that can be converted to :class:`numpy.ndarray`.
    stream (cupy.cuda.Stream): CUDA stream object. If given, the
        stream is used to perform the copy. Otherwise, the current
        stream is used. Note that if ``a`` is not a :class:`cupy.ndarray`
        object, then this argument has no effect.
    order ({'C', 'F', 'A'}): The desired memory layout of the host
        array. When ``order`` is 'A', it uses 'F' if the array is
        fortran-contiguous and 'C' otherwise. The ``order`` will be
        ignored if ``out`` is specified.
    out (numpy.ndarray): The output array to be written to. It must have
        compatible shape and dtype with those of ``a``'s.
    blocking (bool): If set to ``False``, the copy runs asynchronously
        on the given (if given) or current stream, and users are
        responsible for ensuring the stream order. Default is ``True``,
        so the copy is synchronous (with respect to the host).

Returns:
    numpy.ndarray: Converted array on the host memory.

)streamorderoutr  __cuda_array_interface__)r  .)r   r   gethasattrrN   r   rP   )r   r  r  r  r  temps         r   asnumpyr  8  s    0 !WuuFSuLL	.	/	/Qx||C  D 	D ~~a-?H 
 C
r   c                    SSK nU  Hr  n[        U[        UR                  R                  R
                  [        R                  R                  [        R                  R                  45      (       d  Ml  [        s  $    [        $ )aS  Returns the array module for arguments.

This function is used to implement CPU/GPU generic code. If at least one of
the arguments is a :class:`cupy.ndarray` object, the :mod:`cupy` module is
returned.

Args:
    args: Values to determine whether NumPy or CuPy should be used.

Returns:
    module: :mod:`cupy` or :mod:`numpy` is returned based on the types of
    the arguments.

.. admonition:: Example

   A NumPy/CuPy generic function can be written as follows

   >>> def softplus(x):
   ...     xp = cupy.get_array_module(x)
   ...     return xp.maximum(0, x) + xp.log1p(xp.exp(-abs(x)))

r   N)cupyxr   r   scipysparsespmatrixr   fusion_FusionVarArray
new_fusion_ArrayProxy_cupyr   )argsr  args      r   get_array_moduler  a  sc    . cGU[[%7%7%@%@!LL88!,,88: ; ; L	 
 Mr   Fc                     [         $ )zReturns CuPy default memory pool for GPU memory.

Returns:
    cupy.cuda.MemoryPool: The memory pool object.

.. note::
   If you want to disable memory pool, please use the following code.

   >>> cupy.cuda.set_allocator(None)

)_default_memory_poolr   r   r   get_default_memory_poolr    s
      r   c                     [         $ )zReturns CuPy default memory pool for pinned memory.

Returns:
    cupy.cuda.PinnedMemoryPool: The memory pool object.

.. note::
   If you want to disable memory pool, please use the following code.

   >>> cupy.cuda.set_pinned_memory_allocator(None)

)_default_pinned_memory_poolr   r   r   get_default_pinned_memory_poolr    s
     '&r   )_fullc                    SSK n[        R                  R                  [	        UR                  U S95      5        [        R                  R                  5         g)z<Prints the current runtime configuration to standard output.r   NrE   )r  _sysstdoutwritestrget_runtime_infoflush)r  r  s     r   show_configr    s:    KKc%00e0<=>KKr   )int0uint0bool8c                :     [        X5      $ ! [         a     gf = f)NF)
issubclassr   arg1arg2s     r   issubclass_r    s$    $%% s   
 
c                B   [        U [        5      (       a!  [        U [        R                  5      (       a  U $ [        U [        R
                  5      (       a  U R                  R                  $  [        R                  " U 5      nUR                  $ ! [         a    Us $ f = f)a  
Return the scalar dtype or NumPy equivalent of Python type of an object.

Parameters
----------
rep : any
    The object of which the type is returned.
default : any, optional
    If given, this is returned for objects whose types can not be
    determined. If not given, None is returned for those objects.

Returns
-------
dtype : dtype or Python type
    The data type of `rep`.

)r   r   r  r   r   r   r   	Exception)repdefaultress      r   
obj2sctyper    sy    & #tC!@!@
#v~~&&yy~~ll3 xx  s   -B BBc                >    [        [        U 5      [        U5      5      $ )z
Determine if the first argument is a subclass of the second argument.

Parameters
----------
arg1, arg2 : dtype or dtype specifier
    Data-types.

Returns
-------
out : bool
    The result.

)r  r  r  s     r   issubsctyper	    s     j&
4(899r   c                t    [        U 5      n U c  [        S5      e[        R                  " U 5      R                  $ )a  
Return the string representation of a scalar dtype.

Parameters
----------
sctype : scalar dtype or object
    If a scalar dtype, the corresponding string character is
    returned. If an object, `sctype2char` tries to infer its scalar type
    and then return the corresponding string character.

Returns
-------
typechar : str
    The string character corresponding to the scalar type.

Raises
------
ValueError
    If `sctype` is an object for which the type can not be inferred.

zunrecognized type)r  
ValueErrorr   r   char)sctypes    r   sctype2charr     s4    , F~,--<<$$$r   c                    [        U [        [        R                  45      (       d  g [	        U 5      nU(       a  U[        R
                  :w  a  gg! [         a     gf = f)a  
Determines whether the given object represents a scalar data-type.

Parameters
----------
rep : any
    If `rep` is an instance of a scalar dtype, True is returned. If not,
    False is returned.

Returns
-------
out : bool
    Boolean result of check whether `rep` is a scalar dtype.

FT)r   r   r   r   r  object_r  )r  r  s     r   issctyper    sQ      cD&,,/00o3&..( s   &A 
AA2)bool)long)ulong)format_parser)
DataSource)find_common_type)set_string_function)get_array_wrap)disp)	safe_evalzJThis function has been removed in NumPy v2.
Use {recommendation} instead.
c                 >    [         R                  SS9n[        U5      e)Nz `promote_types` or `result_type`recommendation	_templateformatRuntimeErrorr  kwdsmesgs      r   r  r  Z  s'    =   
 4  r   c                 >    [         R                  SS9n[        U5      e)Nz`np.set_printoptions`r  r   r$  s      r   r  r  `  s!    /FG4  r   c                 >    [         R                  SS9n[        U5      e)Nz<no replacement>r  r   r$  s      r   r  r  d  s!    /AB4  r   c                 >    [         R                  SS9n[        U5      e)Nzyour own print functionr  r   r$  s      r   r  r  h  s!    /HI4  r   c                 >    [         R                  SS9n[        U5      e)Nz`ast.literal_eval`r  r   r$  s      r   r  r  l  s!    /CD4  r   c                T    U [         ;   a  [        [        U 5      $ [        SU < 35      e)Nzmodule 'cupy' has no attribute )_deprecated_apisgetattrr   r  )names    r   __getattr__r/  q  s+    vt$$
:4(C
DDr   c                    U R                  5        H?  u  p[        U[        5      (       d  M  SSKJn  U" X!5      S-   UR
                  -   Ul        MA     g )Nr   )_ufunc_doc_signature_formatterz

)itemsr   r   cupy._core._kernelr1  _doc__doc__)dirsr.  valuer1  s       r   _embed_signaturesr8  x  sG    zz|eU##I.u;$ M $r   c                   SS K nUR                  R                  U 5      nUR                  R                  UR                  5      nX2l        UR                  R                  U5      nU[        R                  U '   UR                  U5        U$ )Nr   )	importlib.utilutil	find_spec
LazyLoaderloadermodule_from_specr  modulesexec_module)r.  	importlibspecr>  modules        r   _lazy_importrE    sk    >>##D)D^^&&t{{3FK^^,,T2FDLL
vMr   zcupy.testing)N)safe)   r   )NCN(H  
__future__r   	functoolsr   sysr  numpyr   cupyr   r   _detect_duplicate_installation_setup_win32_dll_directory_preload_libraryr   ImportErrorexc_diagnose_import_errorr   __name__r   r
   __version__r   r   r   r   
cupy._corer   r   r   r   r   r   r   r   PINFInfInfinityinftyNINFNANNaNPZERONZEROr   r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   r3   r4   r5   r6   r7   r8   r9   r:   float_r;   r<   r=   r>   singlecomplexr?   r@   cfloatcomplex_cupy._creation.basicrA   rB   rC   rD   rF   rG   rH   rI   rJ   rK   rL   cupy._creation.from_datarM   rN   rO   rP   rQ   rR   rS   rT   rU   rV   rW   rX   cupy._creation.rangesrY   rZ   r[   r\   r]   r^   cupy._creation.matrixr_   r`   ra   rb   rc   rd   cupy._functional.piecewisere   cupy._functional.vectorizerf   cupy.lib._shape_baserg   rh   ri   cupy._manipulation.basicrj   cupy._manipulation.shaperk   rl   rm   cupy._manipulation.transposern   ro   rp   rq   rr   permute_dimscupy._manipulation.dimsrs   rt   ru   rv   rw   rx   ry   rz   cupy._manipulation.joinr{   r|   r}   r~   r   r   r   concatcupy._manipulation.kindr   r   r   r   cupy._manipulation.splitr   r   r   r   r   cupy._manipulation.tilingr   r   cupy._manipulation.add_remover   r   r   r   r   r   r   r   r   cupy._manipulation.rearranger   r   r   r   r   r  r   cupy._binary.elementwiser   r   r   r   r   r   r   r   bitwise_left_shiftbitwise_right_shiftbitwise_invertcupy._binary.packingr   r   r   r   r   r   cupy._core.corer   r   r   r   r   r   r   r   r   cupy._indexing.generater   r   r   r   r   r   r   r   r   r   r   cupy._indexing.indexingr   r   r   r   r   r   r   cupy._indexing.insertr   r   r   r   r   r   cupy._indexing.iterater   r   r   r   cupy._io.npzr   r   r   r   cupy._io.formattingr   r   r   r   r   cupy._io.textr   r   r   r   r   cupy.linalg._einsumr   cupy.linalg._productr   r   r   r   r   r   r   r   cupy.linalg._normsr  cupy._logic.comparisonr  r  r  r  cupy._logic.contentr  r  r  r	  r
  cupy._logic.truthr  r  cupy._logic.type_testingr  r  r  r  r  r  r  r  r  r  cupy._logic.opsr  r  r  r  r  r  r  r   r!  r"  r#  r$  cupy.lib._polynomialr%  cupy.lib._routines_polyr&  r'  r(  r)  r*  r+  r,  cupy._math.trigonometricr-  r.  r/  r0  atanatan2asinacosr1  r2  r3  r4  r5  r6  r7  r8  r9  cupy._math.hyperbolicr:  r;  r<  r=  r>  r?  acoshasinhatanhcupy._math.roundingr@  rA  rB  rC  rD  rE  rF  rG  cupy._math.sumprodrH  rI  rJ  rK  rL  rM  rN  rO  rP  rQ  rR  rS  rT  rU  cupy._math.windowrV  rW  rX  rY  rZ  cupy._math.explogr[  r\  r]  r^  r_  r`  ra  rb  rc  cupy._math.specialrd  re  cupy._math.floatingrf  rg  rh  ri  rj  cupy._math.rationalrk  rl  cupy._math.arithmeticrm  rn  ro  rp  rq  rr  rs  rt  ru  rv  rw  rx  ry  modrz  r{  powr|  r}  conjr~  r  cupy._math.miscr  absr  r  r  r  r  r  r  r  r  r  r  r  r  r  r  cupy._misc.byte_boundsr  cupy._misc.memory_rangesr  r  cupy._misc.whor  r  cupy._padding.padr  cupy._sorting.countr  cupy._sorting.searchr  r  r  r  r  r  r  r  r  cupy._sorting.sortr  r  r  r  r  r  r  cupy._statistics.correlationr  r  r  cupy._statistics.orderr  maxr  minr  r  r  r  r  cupy._statistics.meanvarr  r  r  r  r  r  r  r  r  cupy._statistics.histogramr  r  r  r  r  r  cupy.exceptionsr  r  r  r  r  r  r  r  
cupy._utilr  r  r  r  r  cupy._core._reductionr  cupy._core._dtyper  r  r  r  r@  r  r  r  fuse$disable_experimental_feature_warning
MemoryPoolr  PinnedMemoryPoolr  set_allocatormallocset_pinned_memory_allocatorr  r  r  r,  alltruesometruetrapzr  r  r	  r  r  r  r  r  r  r  	numpy.recnumpy.lib.npyior  r  r  r  r  r!  r/  r8  globalsrE  testingr   r   r   <module>r     s
   "       + + -  ' ' )   j )
  ""            
 !$ # #s #Xtc "       ! 
          
          
    #     ,  & (  > ( & + $ % * ) % * & + ) * / , 6 - 1 - / / , / ( * * * ' ' & * % & & (
 1 0 1 0 /
 , * * , 1 1 1 2 9  . . . - 4 0 / + 0 / * * - ) * 
 5 , 2 + 0 + + * + , * 0 0 0 0 4 7 7 8 4 - / / - . 6%&&&
 1 / 0 0 2 + / 0   !  ) +*7@*' ,         ' + ' 0 0 5 0 5 & 5 1 * , , + * ( 3 ' % ) / . 3 +   
       ) ) * * ) ) , , 7 7 7 7 ! !3 # "  ' & & & $ $ & & % % ' ' & & * * % % $ $
 , + . . . . * * ( ( % % % % ( ( ( ( " " " " . . 1 1 . . + + . . " " ) ) " " ' ' & & % %$ ( ' ' ' & & ' ' ( ( * * 0 0 ' ' - - , , ! ! ! !
 ( ' ( ( + + + + + + + + + + ) )
 , + + + + + , ,  ( ( , , , , * * , , , , ( ( ( ( + + ) ) ) ) ) ) & & & & & & 	 & & $ $ # # % % $ $ % % & & % % # # & & " " & & ) ) % % & & ) ) ( ( % % & & # # ' ' ( ( & & & & % % % % $ $ ! ! " " # # ! ! # # # # " " ' ' ( ( ! ! # # ( ( % % % % ) ) ' ' # # # # % % ( ( ( ( . . - - & & & & * * * * * * ' ' , , + + 2 2 * * - - ' ' 3 3 + + & & & & + + $ $                     " " # # # # & & ) )     % %     " " $ $
 / . 5 5 2 2     " ! . - ' ' ' ' ) ) , , * * * * ( ( - - & & + + & & & & $ $ + + ( ( # #
 2 1 , , 2 2 ' ' . . ' ' . . ) ) ) ) - - & & + + + + , , ) ) ( ( ( ( . . , , + + + + / / / / 0 0 2 2 2 2
   % % * * 4 4 ' ' ( ( 5 5  * " !   ( (         1 1 0 0 " ! " "#T # #L 	X@ ||', $ ( "335    '.. /     !<!C!C D '     
D:&%:8 
#"# 
##  ''** 
&&))$$I
!!!!!
E ')  ~
&E$  
 $$& ' ( 9b   s   A@( @(AA%@.2AA A AA%