
    Vpf
                       U d dl mZ d dlmZ d dlZd dlmZ d dlmZ d dlm	Z	 d dlm
Z
  e
j        e           ej        Zej        Zej        Zej        Zej        Zej        Zej        Ze	j        ej        ej        ej        ej        e	j        ej        ej        ej        ej        ej        ej        ej         ej!        ej"        hd e	j#        D             z  Z$d	e%d
<   e	j&        =e	j'        J e$(                    e	j&                   e$(                    e	j'                   ej)        he$z  Z*d	e%d<   ddZ+d Z,e,ej-        ej.        j/        <   e*D ]Z0e+ej-        e0<   ej1        2                    e*           d Z3d Z4e	j5        D ]Z0 ee4e0          ej-        e0<   ej1        2                    e	j5        6                                           dS )    )annotations)partialN)ad_util)core)dtypes)traceback_utilc                @    h | ]}t          j        |          j        S  )npdtypetype).0dts     X/var/www/html/nettyfy-visnx/env/lib/python3.11/site-packages/jax/_src/abstract_arrays.py	<setcomp>r   )   s#    5552RXb\\555    z	set[type]numpy_scalar_typesarray_typesc                n    t          t          j        t          j        |                     | |          S )N	weak_type)ConcreteArrayr   canonicalize_dtyper   result_type)valr   s     r   canonical_concrete_avalr   2   s5    	v01D1DEEs!*
, 
, 
, ,r   c                      t          d          )Nznumpy masked arrays are not supported as direct inputs to JAX functions. Use arr.filled() to convert the value to a standard numpy array.)
ValueError)argskwargss     r   masked_array_errorr!   6   s     V 	W 	W Wr   c                    t          j        t           j        |                    }t          j        d|d          }t          j        |          S )Nr
   Tr   )r   r   python_scalar_dtypesr   ShapedArrayr   zeros_like_aval)txr   avals       r   _zeros_like_python_scalarr)   A   sB    

#F$?$B
C
C%		"et	4	4	4$		 	&	&&r   c                    t          j        | |          }t          j        |          }t          t	          j        ||          |          S )N)r   r   )r   _scalar_type_to_dtypeis_weakly_typedr   r   array)r&   r'   r   r   s       r   _make_concrete_python_scalarr.   F   sF    

&q!
,
,%$Q'')	 !5!9!9!9Y	O	O	OOr   )N)7
__future__r   	functoolsr   numpyr   jax._srcr   r   r   r   register_exclusion__file__UnshapedArrayr$   r   AbstractTokenabstract_tokencanonicalize_shaperaise_to_shapedint4int8int16int32int64uint4uint8uint16uint32uint64	complex64
complex128bool_longlongintc_float_typesr   __annotations__int2uint2addndarrayr   r   r!   pytype_aval_mappingsmaMaskedArrayr&   literalable_typesupdater)   r.   r#   keysr
   r   r   <module>rU      s   # " " " " " "                             # # # # # # ! !( + + +"""$, & K"(BHbh
L"(BIry")L"-Hbk27	!
 65!4555!6  6 6 6 6 
;		!	!	!%%%&&&*(:: : : : :, , , ,W W W 0B "%+ ,	 9 9A!8$A    k * * *' ' '
P P P
 
	$ J JA!()Eq!I!I$A    f9>>@@ A A A A Ar   