
    ȅi                        S SK r S SKJr  S SKJr  S SKrS SKJr  S SKJr  SSK	J
r
  SS	KJrJrJr  \ R                  " \5      r\S
\R$                  S\\R(                     S\4S j5       rS
\R$                  S\\R(                     S\S\4   4S jr SS
\R$                  S\\R(                     S\S\S\4   4S jjr\
" \S9r\" S\S9  g)    N)Callable)Any)make_boxed_func)fx   )aot_autograd   )
CompiledFnregister_backendregister_experimental_backendmodelfake_tensor_inputsreturnc                     [        XSS9$ )NFboxedxla_backend_helperr   r   s     Y/home/james-whalen/.local/lib/python3.13/site-packages/torch/_dynamo/backends/torchxla.pyopenxla_evalr      s     euEE    .c                     [        XSS9$ )NTr   r   r   s     r   openxla_eval_boxedr      s     etDDr   r   c                    ^ ^^  SS K Js  Jm  S mS[        R
                  S[        4UUU 4S jjnU(       a  [        U5      $ U$ ! [         a  n[        S5      UeS nAff = f)Nr   z_Please follow the instruction in https://github.com/pytorch/xla#pytorchxla to install torch_xlaargsr   c                  :   > Tc  TR                  TU 5      m@T" U 6 $ )N)extract_compiled_graph)r   bridgecompiled_graphr   s    r   fwdxla_backend_helper.<locals>.fwd)   s+     !#::5$GNt$$r   )torch_xla.core.dynamo_bridgecoredynamo_bridgeImportErrortorchTensorr   r   )r   r   r   er!   r   r    s   `    @@r   r   r      sj    55 N%5<< %C % % $)?31c1  m
	s   	A 
AAA)fw_compileropenxla)namecompiler_fn)F)loggingcollections.abcr   typingr   r'   functorch.compiler   r   backends.commonr   registryr
   r   r   	getLogger__name__logGraphModulelistr(   r   r   boolr   r+    r   r   <module>r;      s    $   -  * Q Q ! F>>F/3ELL/AFF FE>>E/3ELL/AEc3hE RW2>>2/3ELL/A2JN2c3h2. " iW 5r   