Ë
    3êñi¸  ã            	      ód  — d dl mZ d dlZd dlZd dlmZmZmZ d dlm	Z	 d dl
mZmZmZmZmZ d dlmZmZmZ erd dlmZmZ  edeeeeez  eez  «      Z edeeedz  ee«      Z ed	eeef   ee   «      Zej<                  	 	 	 	 dd
„«       Zdd„Z dd„Z!dd„Z"	 	 	 	 dd„Z#	 	 	 	 dd„Z$	 	 	 	 dd„Z%y)é    )ÚannotationsN)ÚAnyÚTYPE_CHECKINGÚTypeVar)ÚBackendIndexÚDispatchKeyÚNativeFunctionÚNativeFunctionsGroupÚNativeFunctionsViewGroup)ÚcontextÚSÚT)ÚCallableÚIteratorÚFÚF2ÚF3c              #  óT  ‡K  — t        | t        «      r| j                  Šnt        | t        «      r| j                  Šn| Št        ˆfd„«      5  t        j                  ‰j                  ‰j                  ¬«      5  d –— d d d «       d d d «       y # 1 sw Y   ŒxY w# 1 sw Y   y xY w­w)Nc                 ó<   •— d‰ j                   › d‰ j                  › �S )Nzin native_functions.yaml line z:
  )ÚlocÚfunc)Úfs   €úR/var/www/pod-logistic/pod-ai/venv/lib/python3.12/site-packages/torchgen/context.pyú<lambda>z)native_function_manager.<locals>.<lambda><   s   ø€ Ð9¸!¿%¹%¸ÀÀaÇfÁfÀXÐN€ ó    )Ú!use_const_ref_for_mutable_tensorsÚuse_ilistref_for_tensor_lists)
Ú
isinstancer
   Úoutr   Úviewr   ÚlocalÚparametrizer   Úpart_of_structured_group)Úgr   s    @r   Únative_function_managerr%   -   s”   øè ø€ ô �!Ô)Ô*ð
 �E‰E‰Ü	�AÔ/Ô	0à�F‰F‰àˆÜ	ÓNÓ	Oñ Ü×ÑØ./×.QÑ.QØ*+×*DÑ*Dô
ñ 	ó ÷		÷ð ÷	ð 	ú÷ð üs6   ƒAB(Á,BÁ:BÁ?BÂ	B(ÂB	ÂBÂB%Â!B(c                óD   ‡ — t        j                  ‰ «      dˆ fd„«       }|S )Nc                óV   •— t        | «      5   ‰| «      cd d d «       S # 1 sw Y   y xY w©N©r%   )r   r   s    €r   Úwrapperz%with_native_function.<locals>.wrapperJ   s'   ø€ ä$ QÓ'ñ 	Ù˜“7÷	÷ 	ò 	ús   �Ÿ()r   r   Úreturnr   ©Ú	functoolsÚwraps©r   r*   s   ` r   Úwith_native_functionr0   I   s%   ø€ Ü‡_�_�TÓôó ðð €Nr   c                óD   ‡ — t        j                  ‰ «      dˆ fd„«       }|S )Nc                óX   •— t        | «      5   ‰| |«      cd d d «       S # 1 sw Y   y xY wr(   r)   )r   Úf2r   s     €r   r*   z)with_native_function_and.<locals>.wrapperS   s+   ø€ ô % QÓ'ñ 	Ù˜˜2“;÷	÷ 	ò 	úó   �	  ))r   r   r3   r   r+   r   r,   r/   s   ` r   Úwith_native_function_andr5   R   s%   ø€ Ü‡_�_�TÓôó ðð
 €Nr   c                óD   ‡ — t        j                  ‰ «      dˆ fd„«       }|S )Nc                óX   •— t        |«      5   ‰| |«      cd d d «       S # 1 sw Y   y xY wr(   r)   ©Úslfr   r   s     €r   r*   z,method_with_native_function.<locals>.wrapper]   s)   ø€ ä$ QÓ'ñ 	 Ù˜˜Q“<÷	 ÷ 	 ò 	 úr4   )r9   r   r   r   r+   r   r,   r/   s   ` r   Úmethod_with_native_functionr:   \   s%   ø€ Ü‡_�_�TÓô ó ð ð €Nr   c                óD   ‡ — t        j                  ‰ «      dˆ fd„«       }|S )Nc                ó^   •— t        |d   «      5   ‰| |«      cd d d «       S # 1 sw Y   y xY w)Nr   r)   r8   s     €r   r*   z3method_with_nested_native_function.<locals>.wrapperh   s-   ø€ ä$ Q q¡TÓ*ñ 	 Ù˜˜Q“<÷	 ÷ 	 ò 	 ús   �	#£,)r9   r   r   r   r+   r   r,   r/   s   ` r   Ú"method_with_nested_native_functionr=   e   s'   ø€ ô ‡_�_�TÓô ó ð ð €Nr   c                óD   ‡ — t        j                  ‰ «      dˆ fd„«       }|S )Nc                óX   •— t        | «      5   ‰| |«      cd d d «       S # 1 sw Y   y xY wr(   r)   )r   Úbackend_indexr   s     €r   r*   z/with_native_function_and_index.<locals>.wrapperu   s*   ø€ ä$ QÓ'ñ 	*Ù˜˜=Ó)÷	*÷ 	*ò 	*úr4   )r   r   r@   r   r+   r   r,   r/   s   ` r   Úwith_native_function_and_indexrA   r   s'   ø€ ô ‡_�_�TÓô*ó ð*ð €Nr   c                óD   ‡ — t        j                  ‰ «      dˆ fd„«       }|S )Nc                óX   •— t        | «      5   ‰| |«      cd d d «       S # 1 sw Y   y xY wr(   r)   )r   Úbackend_indicesr   s     €r   r*   z1with_native_function_and_indices.<locals>.wrapper�   s*   ø€ ä$ QÓ'ñ 	,Ù˜˜?Ó+÷	,÷ 	,ò 	,úr4   )r   r   rD   zdict[DispatchKey, BackendIndex]r+   r   r,   r/   s   ` r   Ú with_native_function_and_indicesrE   ~   s'   ø€ ô ‡_�_�TÓô,ó ð,ð €Nr   )r$   z@NativeFunctionsGroup | NativeFunctionsViewGroup | NativeFunctionr+   zIterator[None])r   úCallable[[F], T]r+   rF   )r   úCallable[[F, F2], T]r+   rG   )r   úCallable[[S, F], T]r+   rH   )r   úCallable[[S, F3], T]r+   rI   )r   úCallable[[F, BackendIndex], T]r+   rJ   )r   ú1Callable[[F, dict[DispatchKey, BackendIndex]], T]r+   rK   )&Ú
__future__r   Ú
contextlibr-   Útypingr   r   r   Útorchgen.localr!   Útorchgen.modelr   r   r	   r
   r   Útorchgen.utilsr   r   r   Úcollections.abcr   r   r   ÚboolÚstrr   ÚtupleÚlistr   Úcontextmanagerr%   r0   r5   r:   r=   rA   rE   © r   r   ú<module>rY      s  ðÝ "ã Û ß .Ñ .å ÷õ ÷ )Ñ (ñ ß2ñ
 ØØØØØÐ)Ñ)ØÐ-Ñ-ó€ñ ØØØØ�TÑØØó€ñ ˆT�5˜¨Ð,Ñ-¨t°NÑ/CÓD€ð ×ÑðØGðàòó ðó6óóðØ
ðàóðØ
(ðà#óðØ
;ðà6ôr   