§
    J�’jr  ã                   óB  — d dl Z d dlZd dlmZ d dlmZ ddlmZmZm	Z	m
Z
mZ ede
j        dz  fd„¦   «         Z e¦   «         Zer e
j        e¦  «          ej        ¦   «         5   ej        dd	e¬
¦  «          e
j        ¦   «          ddd¦  «         dS # 1 swxY w Y   dS )é    N)Úcache)Úcasté   )Úcutedsl_utilsÚdsl_registryÚopsÚregistryÚtriton_utilsÚreturnc                  óz  — t          j        d¦  «        } | sdS 	 ddl}|                      dd¦  «        \  }}|                     |¦  «        }t          ||¦  «        }t          |¦  «        st          | › d�¦  «        ‚t          t          j
        |¦  «        S # t          $ r}t          d| › d�¦  «        |‚d}~ww xY w)	ag  
    Get a user-supplied graph-ordering function if specified.

    Pass in a `package.submodule.fn` string to the env variable
    `TORCH_PYTHON_NATIVE_USER_GRAPH_ORDER_FN` that implements the
    calling API described in `torch/_native/README.md`. This function
    must be part of an importable path.

    Return either the imported function or `None`
    Ú'TORCH_PYTHON_NATIVE_USER_GRAPH_ORDER_FNNr   ú.r   z& does not describe a callable functionzCould not resolve z' into an importable & callable function)ÚosÚgetenvÚ	importlibÚrsplitÚimport_moduleÚgetattrÚcallableÚ	TypeErrorr   r	   ÚUserOrderingFnÚ	ExceptionÚ
ValueError)Úenv_varr   Úmodule_nameÚfn_nameÚmoduleÚfnÚes          úDC:\Projects\DSCons\.venv\Lib\site-packages\torch\_native\__init__.pyÚget_user_ordering_fnr!      së   € õ ŒiÐAÑBÔB€Gàð ØˆtðØÐÐÐð  'Ÿ~š~¨c°1Ñ5Ô5Ñˆ�Wà×(Ò(¨Ñ5Ô5ˆÝ�V˜WÑ%Ô%ˆå˜‰|Œ|ð 	PÝ˜wÐNÐNÐNÑOÔOÐOõ •HÔ+¨RÑ0Ô0Ð0øÝð ð ð ÝØQ ÐQÐQÐQñ
ô 
àð	øøøøðøøøs   šA<B Â
B:Â!B5Â5B:ÚignorezNWarning only once for all operators,  other operators may also be overridden\.)ÚmessageÚcategory)r   ÚwarningsÚ	functoolsr   Útypingr   Ú r   r   r   r	   r
   r   r!   Úuser_order_fnÚ!reorder_graphs_from_user_functionÚcatch_warningsÚfilterwarningsÚUserWarningÚ_register_all_overrides© ó    r    ú<module>r1      sr  ðØ 	€	€	€	Ø €€€Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð ð GÐ FÐ FÐ FÐ FÐ FÐ FÐ FÐ FÐ FÐ FÐ FÐ FÐ Fð ð!˜hÔ5¸Ñ<ð !ð !ð !ñ „ð!ðH %Ð$Ñ&Ô&€Øð >Ø.€HÔ.¨}Ñ=Ô=Ð=ð €XÔÑÔð 'ð 'Ø€HÔØØaØðñ ô ð ð
 %€HÔ$Ñ&Ô&Ð&ð'ð 'ð 'ñ 'ô 'ð 'ð 'ð 'ð 'ð 'ð 'ð 'øøøð 'ð 'ð 'ð 'ð 'ð 's   Á$#BÂBÂB