+
    JV-j‘(  ã                   ó„   € R t ^ RIHtHtHtHtHtHtHtH	t	H
t
HtHtHtHtHtHt ^ RIHt ]! R4       ! R R4      4       tR# )zÖ
Array API Inspection namespace

This is the namespace for inspection functions as defined by the array API
standard. See
https://data-apis.org/array-api/latest/API_specification/inspection.html for
more details.

)ÚboolÚ	complex64Ú
complex128ÚdtypeÚfloat32Úfloat64Úint8Úint16Úint32Úint64ÚintpÚuint8Úuint16Úuint32Úuint64)Ú
set_moduleÚnumpyc                   óV   a € ] tR t^t o RtR tR tRR/R ltRRRR/R ltR	 t	R
t
V tR# )Ú__array_namespace_info__aO  
Get the array API inspection namespace for NumPy.

The array API inspection namespace defines the following functions:

- capabilities()
- default_device()
- default_dtypes()
- dtypes()
- devices()

See
https://data-apis.org/array-api/latest/API_specification/inspection.html
for more details.

Returns
-------
info : ModuleType
    The array API inspection namespace for NumPy.

Examples
--------
>>> info = np.__array_namespace_info__()
>>> info.default_dtypes()
{'real floating': numpy.float64,
 'complex floating': numpy.complex128,
 'integral': numpy.int64,
 'indexing': numpy.int64}

c                ó   € RRRRR^@/# )a�  
Return a dictionary of array API library capabilities.

The resulting dictionary has the following keys:

- **"boolean indexing"**: boolean indicating whether an array library
  supports boolean indexing. Always ``True`` for NumPy.

- **"data-dependent shapes"**: boolean indicating whether an array
  library supports data-dependent output shapes. Always ``True`` for
  NumPy.

See
https://data-apis.org/array-api/latest/API_specification/generated/array_api.info.capabilities.html
for more details.

See Also
--------
__array_namespace_info__.default_device,
__array_namespace_info__.default_dtypes,
__array_namespace_info__.dtypes,
__array_namespace_info__.devices

Returns
-------
capabilities : dict
    A dictionary of array API library capabilities.

Examples
--------
>>> info = np.__array_namespace_info__()
>>> info.capabilities()
{'boolean indexing': True,
 'data-dependent shapes': True,
 'max dimensions': 64}

zboolean indexingTzdata-dependent shapeszmax dimensions© ©Úselfs   &Úf/Volumes/fast/ai/experiments/ui-tars-smoke/.venv/lib/python3.14/site-packages/numpy/_array_api_info.pyÚcapabilitiesÚ%__array_namespace_info__.capabilities?   s   € ðN  Ø# TØ˜bð
ð 	
ó    c                ó   € R# )a¬  
The default device used for new NumPy arrays.

For NumPy, this always returns ``'cpu'``.

See Also
--------
__array_namespace_info__.capabilities,
__array_namespace_info__.default_dtypes,
__array_namespace_info__.dtypes,
__array_namespace_info__.devices

Returns
-------
device : str
    The default device used for new NumPy arrays.

Examples
--------
>>> info = np.__array_namespace_info__()
>>> info.default_device()
'cpu'

Úcpur   r   s   &r   Údefault_deviceÚ'__array_namespace_info__.default_devicek   s   € ñ2 r   ÚdeviceNc          
     ó¨   € VR9  d   \        RV 24      hR\        \        4      R\        \        4      R\        \        4      R\        \        4      /# )a{  
The default data types used for new NumPy arrays.

For NumPy, this always returns the following dictionary:

- **"real floating"**: ``numpy.float64``
- **"complex floating"**: ``numpy.complex128``
- **"integral"**: ``numpy.intp``
- **"indexing"**: ``numpy.intp``

Parameters
----------
device : str, optional
    The device to get the default data types for. For NumPy, only
    ``'cpu'`` is allowed.

Returns
-------
dtypes : dict
    A dictionary describing the default data types used for new NumPy
    arrays.

See Also
--------
__array_namespace_info__.capabilities,
__array_namespace_info__.default_device,
__array_namespace_info__.dtypes,
__array_namespace_info__.devices

Examples
--------
>>> info = np.__array_namespace_info__()
>>> info.default_dtypes()
{'real floating': numpy.float64,
 'complex floating': numpy.complex128,
 'integral': numpy.int64,
 'indexing': numpy.int64}

ú<Device not understood. Only "cpu" is allowed, but received: úreal floatingúcomplex floatingÚintegralÚindexing©r   N)Ú
ValueErrorr   r   r   r   )r   r!   s   &$r   Údefault_dtypesÚ'__array_namespace_info__.default_dtypes†   sZ   € ðP ˜Ô&ÜðØ�8ðóð ð
 œU¤7›^Ø¤¤jÓ 1Øœœd›Øœœd›ð	
ð 	
r   Úkindc               ó®  € VR9  d   \        RV 24      hVfÆ   R\        \        4      R\        \        4      R\        \        4      R\        \
        4      R\        \        4      R\        \        4      R\        \        4      R	\        \        4      R
\        \        4      R\        \        4      R\        \        4      R\        \        4      R\        \        4      /# VR8X  d	   R\        /# VR8X  d?   R\        \        4      R\        \        4      R\        \
        4      R\        \        4      /# VR8X  d?   R\        \        4      R\        \        4      R	\        \        4      R
\        \        4      /# VR8X  d{   R\        \        4      R\        \        4      R\        \
        4      R\        \        4      R\        \        4      R\        \        4      R	\        \        4      R
\        \        4      /# VR8X  d!   R\        \        4      R\        \        4      /# VR8X  d!   R\        \        4      R\        \        4      /# VR8X  d·   R\        \        4      R\        \        4      R\        \
        4      R\        \        4      R\        \        4      R\        \        4      R	\        \        4      R
\        \        4      R\        \        4      R\        \        4      R\        \        4      R\        \        4      /# \        V\         4      '       d/   / pV F$  pVP#                  V P%                  VR7      4       K&  	  V# \        RV: 24      h)aæ  
The array API data types supported by NumPy.

Note that this function only returns data types that are defined by
the array API.

Parameters
----------
device : str, optional
    The device to get the data types for. For NumPy, only ``'cpu'`` is
    allowed.
kind : str or tuple of str, optional
    The kind of data types to return. If ``None``, all data types are
    returned. If a string, only data types of that kind are returned.
    If a tuple, a dictionary containing the union of the given kinds
    is returned. The following kinds are supported:

    - ``'bool'``: boolean data types (i.e., ``bool``).
    - ``'signed integer'``: signed integer data types (i.e., ``int8``,
      ``int16``, ``int32``, ``int64``).
    - ``'unsigned integer'``: unsigned integer data types (i.e.,
      ``uint8``, ``uint16``, ``uint32``, ``uint64``).
    - ``'integral'``: integer data types. Shorthand for ``('signed
      integer', 'unsigned integer')``.
    - ``'real floating'``: real-valued floating-point data types
      (i.e., ``float32``, ``float64``).
    - ``'complex floating'``: complex floating-point data types (i.e.,
      ``complex64``, ``complex128``).
    - ``'numeric'``: numeric data types. Shorthand for ``('integral',
      'real floating', 'complex floating')``.

Returns
-------
dtypes : dict
    A dictionary mapping the names of data types to the corresponding
    NumPy data types.

See Also
--------
__array_namespace_info__.capabilities,
__array_namespace_info__.default_device,
__array_namespace_info__.default_dtypes,
__array_namespace_info__.devices

Examples
--------
>>> info = np.__array_namespace_info__()
>>> info.dtypes(kind='signed integer')
{'int8': numpy.int8,
 'int16': numpy.int16,
 'int32': numpy.int32,
 'int64': numpy.int64}

r#   r   r   r	   r
   r   r   r   r   r   r   r   r   r   zsigned integerzunsigned integerr&   r$   r%   Únumeric)r,   zunsupported kind: r(   )r)   r   r   r   r	   r
   r   r   r   r   r   r   r   r   r   Ú
isinstanceÚtupleÚupdateÚdtypes)r   r!   r,   ÚresÚks   &$$  r   r2   Ú__array_namespace_info__.dtypesº   s®  € ðn ˜Ô&ÜðØ�8ðóð ð Š<àœœd›Øœœd›Øœœu›Øœœu›Øœœu›Øœœu›Øœ%¤›-Øœ%¤›-Øœ%¤›-Øœ5¤›>Øœ5¤›>ØœU¤9Ó-Øœe¤JÓ/ðð ð �6Œ>ØœD�>Ð!ØÐ#Ô#àœœd›Øœœu›Øœœu›Øœœu›ð	ð ð Ð%Ô%àœœu›Øœ%¤›-Øœ%¤›-Øœ%¤›-ð	ð ð �:Ôàœœd›Øœœu›Øœœu›Øœœu›Øœœu›Øœ%¤›-Øœ%¤›-Øœ%¤›-ð	ð 	ð �?Ô"àœ5¤›>Øœ5¤›>ðð ð Ð%Ô%àœU¤9Ó-Øœe¤JÓ/ðð ð �9Ôàœœd›Øœœu›Øœœu›Øœœu›Øœœu›Øœ%¤›-Øœ%¤›-Øœ%¤›-Øœ5¤›>Øœ5¤›>ØœU¤9Ó-Øœe¤JÓ/ðð ô �dœE×"Ò"ØˆCÛ�Ø—
‘
˜4Ÿ;™;¨A˜;Ó.Ö/ñ àˆJÜÐ-¨d©XÐ6Ó7Ð7r   c                ó   € R.# )a�  
The devices supported by NumPy.

For NumPy, this always returns ``['cpu']``.

Returns
-------
devices : list of str
    The devices supported by NumPy.

See Also
--------
__array_namespace_info__.capabilities,
__array_namespace_info__.default_device,
__array_namespace_info__.default_dtypes,
__array_namespace_info__.dtypes

Examples
--------
>>> info = np.__array_namespace_info__()
>>> info.devices()
['cpu']

r   r   r   s   &r   ÚdevicesÚ __array_namespace_info__.devicesA  s   € ð2 ˆwˆr   r   )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r   r   r*   r2   r7   Ú__static_attributes__Ú__classdictcell__)Ú__classdict__s   @r   r   r      sC   ø‡ € ñò>*
òXð62
 tô 2
ðhE8˜tð E8¨$ô E8÷Nð r   r   N)r=   Únumpy._corer   r   r   r   r   r   r   r	   r
   r   r   r   r   r   r   Únumpy._utilsr   r   r   r   r   Ú<module>rC      sI   ðñ÷÷ ÷ ÷ ñ õ" $ñ ˆGÓ÷{ð {ó ò{r   