Ë
    6Š·j¨  ã                   óT   — d Z ddlmZ ddlmZmZ ddlmZ g d¢Z ed«      d„ «       Z	y)	z
Miscellaneous utils.
é    )Úasarray)Únormalize_axis_indexÚnormalize_axis_tuple)Ú
set_module)Úbyte_boundsr   r   znumpy.lib.array_utilsc                 ó&  — | j                   }|d   d   }|d   }|d   }t        | «      j                  j                  }|x}}|€|| j                  |z  z  }||fS t        ||«      D ]!  \  }}	|	dk  r||dz
  |	z  z  }Œ||dz
  |	z  z  }Œ# ||z  }||fS )ae  
    Returns pointers to the end-points of an array.

    Parameters
    ----------
    a : ndarray
        Input array. It must conform to the Python-side of the array
        interface.

    Returns
    -------
    (low, high) : tuple of 2 integers
        The first integer is the first byte of the array, the second
        integer is just past the last byte of the array.  If `a` is not
        contiguous it will not use every byte between the (`low`, `high`)
        values.

    Examples
    --------
    >>> import numpy as np
    >>> I = np.eye(2, dtype=np.float32); I.dtype
    dtype('float32')
    >>> low, high = np.lib.array_utils.byte_bounds(I)
    >>> high - low == I.size*I.itemsize
    True
    >>> I = np.eye(2); I.dtype
    dtype('float64')
    >>> low, high = np.lib.array_utils.byte_bounds(I)
    >>> high - low == I.size*I.itemsize
    True

    Údatar   ÚstridesÚshapeé   )Ú__array_interface__r   ÚdtypeÚitemsizeÚsizeÚzip)
ÚaÚaiÚa_dataÚastridesÚashapeÚbytes_aÚa_lowÚa_highr   Ústrides
             úQ/root/workspace/.venv/lib/python3.12/site-packages/numpy/lib/_array_utils_impl.pyr   r      sÒ   € ðD 
×	Ñ	€BØ�‰Z˜‰]€FØ�)‰}€HØ�‰[€FÜ�a‹j×Ñ×'Ñ'€GàÐ€EˆFØÐà�!—&‘&˜7Ñ"Ñ"ˆð �&ˆ=Ðô ! ¨Ó2ò 	/‰MˆE�6Ø˜ŠzØ˜% !™) vÑ-Ñ-‘à˜5 1™9¨Ñ.Ñ.‘ð		/ð
 	�'ÑˆØ�&ˆ=Ðó    N)
Ú__doc__Únumpy._corer   Únumpy._core.numericr   r   Únumpy._utilsr   Ú__all__r   © r   r   ú<module>r#      s4   ðñõ  ß JÝ #â
I€ñ Ð#Ó$ñ2ó %ñ2r   