§
    €Ûg„  ã                  ó¦   — d dl mZ ddlmZ d dlmZ d dlZ G d„ de¦  «        Z G d„ d	e¦  «        Z	 G d
„ de¦  «        Z
dd„Zdd„Zdd„Zdd„ZdS )é    )Úannotationsé   )ÚArray)Ú
NamedTupleNc                  ó8   — e Zd ZU ded<   ded<   ded<   ded<   dS )ÚUniqueAllResultr   ÚvaluesÚindicesÚinverse_indicesÚcountsN©Ú__name__Ú
__module__Ú__qualname__Ú__annotations__© ó    úT/granary/edev/quantum/lib/python3.11/site-packages/numpy/array_api/_set_functions.pyr   r      s7   € € € € € € Ø€M€M�MØ€N€N�NØÐÐÑØ€M€M�M€M€Mr   r   c                  ó$   — e Zd ZU ded<   ded<   dS )ÚUniqueCountsResultr   r	   r   Nr   r   r   r   r   r      s"   € € € € € € Ø€M€M�MØ€M€M�M€M€Mr   r   c                  ó$   — e Zd ZU ded<   ded<   dS )ÚUniqueInverseResultr   r	   r   Nr   r   r   r   r   r   !   s'   € € € € € € Ø€M€M�MØÐÐÑÐÐr   r   Úxr   Úreturnc               ó0  — t          j        | j        dddd¬¦  «        \  }}}}|                     | j        ¦  «        }t          t          j        |¦  «        t          j        |¦  «        t          j        |¦  «        t          j        |¦  «        ¦  «        S )ú|
    Array API compatible wrapper for :py:func:`np.unique <numpy.unique>`.

    See its docstring for more information.
    TF©Úreturn_countsÚreturn_indexÚreturn_inverseÚ	equal_nan)ÚnpÚuniqueÚ_arrayÚreshapeÚshaper   r   Ú_new)r   r	   r
   r   r   s        r   Ú
unique_allr(   &   s‘   € õ 02¬yØ	ŒØØØØð0ñ 0ô 0Ñ,€FˆG�_ fð &×-Ò-¨a¬gÑ6Ô6€OÝÝŒ
�6ÑÔÝŒ
�7ÑÔÝŒ
�?Ñ#Ô#ÝŒ
�6ÑÔñ	ô ð r   c               ód   — t          j        | j        dddd¬¦  «        }t          d„ |D ¦   «         Ž S )NTFr   c                ó6   — g | ]}t          j        |¦  «        ‘ŒS r   )r   r'   )Ú.0Úis     r   ú
<listcomp>z!unique_counts.<locals>.<listcomp>G   s    € Ð;Ð;Ð;°!¥¤
¨1¡¤Ð;Ð;Ð;r   )r"   r#   r$   r   ©r   Úress     r   Úunique_countsr0   >   sE   € Ý
Œ)Ø	ŒØØØØðñ ô €Cõ Ð;Ð;°sÐ;Ñ;Ô;Ð<Ð<r   c               óà   — t          j        | j        dddd¬¦  «        \  }}|                     | j        ¦  «        }t          t          j        |¦  «        t          j        |¦  «        ¦  «        S )r   FTr   )r"   r#   r$   r%   r&   r   r   r'   )r   r	   r   s      r   Úunique_inverser2   J   sk   € õ !œiØ	ŒØØØØðñ ô Ñ€FˆOð &×-Ò-¨a¬gÑ6Ô6€OÝ�uœz¨&Ñ1Ô1µ5´:¸oÑ3NÔ3NÑOÔOÐOr   c               óf   — t          j        | j        dddd¬¦  «        }t          j        |¦  «        S )r   Fr   )r"   r#   r$   r   r'   r.   s     r   Úunique_valuesr4   ]   s;   € õ Œ)Ø	ŒØØØØðñ ô €Cõ Œ:�c‰?Œ?Ðr   )r   r   r   r   )r   r   r   r   )r   r   r   r   )r   r   r   r   )Ú
__future__r   Ú_array_objectr   Útypingr   Únumpyr"   r   r   r   r(   r0   r2   r4   r   r   r   ú<module>r9      s#  ðØ "Ð "Ð "Ð "Ð "Ð "à  Ð  Ð  Ð  Ð  Ð  à Ð Ð Ð Ð Ð à Ð Ð Ð ðð ð ð ð �jñ ô ð ðð ð ð ð ˜ñ ô ð ð
ð ð ð ð ˜*ñ ô ð ð
ð ð ð ð0	=ð 	=ð 	=ð 	=ðPð Pð Pð Pð&ð ð ð ð ð r   