Ë
    g^(hE  ã                   ó6  — U d dl Z d dlZd dlZd dlmZ d dlmZmZmZmZ d dl	Z	d dl
mZ d dl	mZ d dlmZ d dlmZ d dlmZ d d	lmZmZ d d
lmZ d dlmZ d dlmZ d dlmZ d dlmZm Z  d dl!m"Z"m#Z# d dl$m%Z& d dl'm(Z(m)Z) dgZ*eZ+eZ,edef   Z-ee	j                  j\                  gee    f   Z/e	j`                  e	jb                  e	jd                  e	jf                  e	jh                  e	jj                  e	jl                  hZ7e8e   e9d<    G d„ de:«      Z; G d„ de«      Z<y)é    N)Únullcontext)ÚAnyÚCallableÚOptionalÚUnion)Ú_unstack_pytree)Úfx)Úenable_python_dispatcher)ÚNodeMetadata)Ú
ProxyValue)Ú
FakeTensorÚUnsupportedFakeTensorException)ÚFakeTensorMode)Ú	traceback)ÚPythonKeyTracer)ÚCodeGen)ÚPassBaseÚ
PassResult)Ú_extract_tensor_metadataÚTensorMetadata)Ú_pytree)ÚPropagateUnbackedSymIntsÚcompute_unbacked_bindingsÚ!_ExportPassBaseDeprecatedDoNotUse.Ú_TORCH_SYM_OPSc                   ó   — e Zd Zy)ÚExportPassBaseErrorN)Ú__name__Ú
__module__Ú__qualname__© ó    úU/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/torch/_export/pass_base.pyr   r   -   s   „ Ør"   r   c                   óÚ  — e Zd ZdZed„ «       Z G d„ de«      Z G d„ dej                  «      Z
d*d	„Zd
edej                  j                  j                  deedf   deeef   dedefd„Zdej                  j,                  dee   fd„Zdeddfd„Zdedededefd„Zdeedf   deeef   dedefd„Zdedeedf   dedefd„Zdedej                  j,                  dej                  j,                  dee   dedefd„Zdej                  j,                  d ee   d!ee   dedef
d"„Zd#ed$e dedefd%„Z!d&ee   dedefd'„Z"dej,                  deedf   de#fd(„Z$dej,                  de#fd)„Z%y)+r   zl
    Interpreter-based pass class to help users maintain the IR spec while writing
    transformations.
    c                  ób   — t        ddj                  t        j                  d¬«      «      i«      S )NÚstack_traceÚ é   )Úlimit)r   Újoinr   Úformat_stackr!   r"   r#   Ú_create_dummy_node_metadataz=_ExportPassBaseDeprecatedDoNotUse._create_dummy_node_metadata7   s'   € ä˜]¨B¯G©G´I×4JÑ4JÐQRÔ4SÓ,TÐUÓVÐVr"   c                   ó¬   ‡ — e Zd Zdddeddfˆ fd„Zdd„Zdedej                  j                  fˆ fd	„Z
d
ej                  j                  deddfd„Zˆ xZS )ú._ExportPassBaseDeprecatedDoNotUse.ExportTracerÚcallbackr   ÚcodegenÚreturnNc                 ó  •— t         ‰| �  «        || _        t        j                  j                  «       | _        t        j                  j                  «       | _	        | j                  j                  |«       i | _        d | _        i | _        y ©N)ÚsuperÚ__init__r/   ÚtorchÚnnÚModuleÚrootr	   ÚGraphÚgraphÚset_codegenÚtensor_attrsÚfake_tensor_modeÚ
submodules)Úselfr/   r0   Ú	__class__s      €r#   r5   z7_ExportPassBaseDeprecatedDoNotUse.ExportTracer.__init__=   sb   ø€ Ü‰GÑÔØ$ˆDŒMÜŸ™Ÿ™Ó)ˆDŒIÜŸ™Ÿ™Ó)ˆDŒJØ�J‰J×"Ñ" 7Ô+Ø9;ˆDÔØ>BˆDÔ!Ø:<ˆD�Or"   c                 ó   — t        d«      ‚)Nz%ExportTracer doesn't support trace().©r   ©r@   s    r#   Útracez4_ExportPassBaseDeprecatedDoNotUse.ExportTracer.traceG   s   € Ü%Ð&MÓNÐNr"   Úac                 ó   •— t        |t        j                  j                  «      rR|| j                  vr‡dt        | j                  «      › �}| j                  j                  ||«       || j                  |<   nCt        |t        «      r3t        |d«      r|j                  €t        d|› d�«      ‚|j                  }t        ‰| �5  |«      }t        |t        j                  «      rjt        |t        j                  j                   «      rF|j"                  dk(  r7| j%                  ||«       | j&                  j)                  t+        ||«      «       |S )NÚ
submodule_ÚconstantzCannot add z
 to graph.Úget_attr)Ú
isinstancer6   r7   r8   r?   Úlenr9   Ú
add_moduler   ÚhasattrrI   r   r4   Ú
create_argÚTensorr	   ÚNodeÚopÚset_metadatar/   Úon_attrr   )r@   rF   Úname_submoduleÚnoderA   s       €r#   rO   z9_ExportPassBaseDeprecatedDoNotUse.ExportTracer.create_argJ   sü   ø€ Ü˜!œUŸX™XŸ_™_Ô-Ø˜DŸO™OÑ+Ø'1´#°d·o±oÓ2FÐ1GÐ%H�NØ—I‘I×(Ñ(¨¸Ô;Ø)7�D—O‘O AÒ&Ü˜AœzÔ*Ü˜q *Ô-°·±Ð1CÜ-°¸A¸3¸jÐ.IÓJÐJØ—J‘J�Ü‘7Ñ% aÓ(ˆDä˜1œeŸl™lÔ+Ü˜t¤U§X¡X§]¡]Ô3Ø—G‘G˜zÒ)à×!Ñ! $¨Ô*Ø—‘×%Ñ%¤j°°DÓ&9Ô:ØˆKr"   rV   Úvaluec                 ó|  ‡ — dt         dt        t        t        j                  t        j
                  t        j                  t        t        t        t        d f	   fˆ fd„}t        j                  ||«      |j                  d<   dt         dt        t           fˆ fd„}t        j                  ||«      |j                  d<   y )NÚxr1   c           
      óX  •— t        | t        «      r| S t        | t        j                  «      r‘| j                  rt        j
                  | «      } 	 ‰j                  €J ‚t        | t        j                  j                  «      r‰j                  j                  | d¬«      }|S ‰j                  j                  | «      }	 |S t        | t        j                  t        j                  t        j                  t        t         t"        t$        f«      r| S y # t        $ r t        d«       d }Y |S w xY w)NT)Ústatic_shapeszvFakeifying a Tensor subclass is not supported                             right now. Instead a TensorMetadata is used.)rK   r   r6   rP   Úis_quantizedÚ
dequantizer>   r7   Ú	ParameterÚfrom_tensorr   ÚprintÚSymIntÚSymFloatÚSymBoolÚintÚfloatÚboolÚstr)rY   Úfake_tensorr@   s     €r#   Úmake_valzM_ExportPassBaseDeprecatedDoNotUse.ExportTracer.set_metadata.<locals>.make_valb   s  ø€ ô ˜a¤Ô,Ø�HÜ ¤5§<¡<Ô0Ø—~’~ä!×,Ñ,¨QÓ/˜ð+Ø#×4Ñ4Ð@Ð@Ð@ô & a¬¯©×);Ñ);Ô<Ø*.×*?Ñ*?×*KÑ*KØ !°ð +Ló +˜Kð 'Ð&ð +/×*?Ñ*?×*KÑ*KÈAÓ*N™Kð 'Ð&Ü ¤E§L¡L´%·.±.Ä%Ç-Á-ÔQTÔV[Ô]aÔcfÐ#gÔhØ�Hàøô :ò +ô ðJôð '+™Ø&Ð&ð+ús   ÁAD Â!D ÄD)Ä(D)Úvalc                 ó.  •— t        | t        «      sit        | t        j                  «      rO| j                  rt        j
                  | «      } 	 ‰j                  €J ‚‰j                  j                  | «      }d }|S y # t        $ r t        | «      }Y |S w xY wr3   )
rK   r   r6   rP   r\   r]   r>   r_   r   r   )rY   Ú_Útensor_metar@   s      €r#   Úmake_tensor_metazU_ExportPassBaseDeprecatedDoNotUse.ExportTracer.set_metadata.<locals>.make_tensor_meta‡   s”   ø€ Ü! !¤ZÔ0´ZÀÄ5Ç<Á<Ô5PØ—~’~ä!×,Ñ,¨QÓ/˜ðBØ#×4Ñ4Ð@Ð@Ð@Ø ×1Ñ1×=Ñ=¸aÓ@˜Ø&*˜ð
 'Ð&àøô :ò Bô '?¸qÓ&A™Ø&Ð&ð	Bús   Á+A< Á<BÂBrm   )ÚArgumentr   r   r6   ra   rb   rc   rd   re   rf   rg   ÚpytreeÚtree_mapÚmetar   r   )r@   rV   rW   ri   rn   s   `    r#   rS   z;_ExportPassBaseDeprecatedDoNotUse.ExportTracer.set_metadata^   s‘   ø€ ð  Üð  ä”z¤5§<¡<´·±ÄÇÁÔPSÔUZÔ\`ÔbeÐgkÐkÑlõ  ôD  &Ÿ™¨x¸Ó?ˆD�I‰I�eÑð ¤Hð  ´¼.Ñ1Iõ  ô$ (.§¡Ð7GÈÓ'OˆD�I‰I�mÒ$r"   ©r1   N)r   r   r    r   r5   rE   ro   r6   r	   rQ   rO   rS   Ú__classcell__©rA   s   @r#   ÚExportTracerr.   <   sj   ø„ ð	=Ð%Hð 	=ÐSZð 	=Ð_cõ 	=ó	Oð	 ð 	¨U¯X©X¯]©]õ 	ð(;	PØŸ™Ÿ™ð;	PØ.6ð;	Pà÷;	Pr"   rv   c                   ó@  ‡ — e Zd Zdddej                  ddfˆ fd„Zdedeed	f   d
e	eef   de
fˆ fd„Zdej                  j                  j                  deed	f   d
e	eef   de
fd„Zdej                  j                  j                  deed	f   d
e	eef   de
fd„Zdedeed	f   d
e	eef   defˆ fd„Zdej                  j                  j                  deed	f   d
e	eef   ddfd„Zdedeed	f   d
e	eef   ddfd„Zdej                  j(                  defˆ fd„Zˆ xZS )ú3_ExportPassBaseDeprecatedDoNotUse.ExportInterpreterr/   r   Úgmr1   Nc                 óŒ   •— t         ‰| �  |«       || _        t        t	        |j
                  j                  «      «      | _        y r3   )r4   r5   r/   ÚnextÚiterr;   ÚnodesrV   )r@   r/   ry   rA   s      €r#   r5   z<_ExportPassBaseDeprecatedDoNotUse.ExportInterpreter.__init__œ   s0   ø€ Ü‰GÑ˜RÔ Ø$ˆDŒMÜ'+¬D°·±·±Ó,@Ó'AˆD�Ir"   ÚtargetÚargs.Úkwargsc                 óš   •— t         ‰| �  |||«      }| j                  j                  ||t        | j                  j
                  «      «      S r3   )r4   Úplaceholderr/   r   rV   rr   )r@   r~   r   r€   ÚargrA   s        €r#   r‚   z?_ExportPassBaseDeprecatedDoNotUse.ExportInterpreter.placeholder¡   s>   ø€ ô ‘'Ñ% f¨d°FÓ;ˆCØ—=‘=×,Ñ,¨V°S¼,ÀtÇyÁyÇ~Á~Ó:VÓWÐWr"   c                 óŽ   — | j                   j                  |d   t        | j                  j                  «      «      j
                  S )Nr   )r/   Úoutputr   rV   rr   Údata©r@   r~   r   r€   s       r#   r…   z:_ExportPassBaseDeprecatedDoNotUse.ExportInterpreter.outputª   s2   € ð —=‘=×'Ñ'¨¨Q©´¸d¿i¹i¿n¹nÓ1MÓN×SÑSÐSr"   c                 ó
  — t        | j                  j                  «      }|t        j                  k(  r"|\  }}| j
                  j                  |||«      S t        |dd «      dv r*t        |«      sJ ‚| j
                  j                  |||«      S |t        v r*t        |«      sJ ‚| j
                  j                  |||«      S t        |t        j                  j                  t        j                  j                  f«      r| j
                  j!                  ||||«      S |t        j"                  j$                  j&                  k(  r&|\  }}}	}
| j
                  j)                  |||	|
|«      S |t        j"                  j$                  j*                  k(  r$|\  }}}| j
                  j-                  ||||«      S t        |t        j                  j.                  «      r| j
                  j1                  d||||«      S t3        d|› �«      ‚)Nr   >   ÚmathÚbuiltinsÚ	_operatorÚcall_functionzUnsupported target type: )r   rV   rr   ÚoperatorÚgetitemr/   Úcall_getitemÚgetattrÚcallableÚcall_symr   rK   r6   Ú_opsÚ
OpOverloadÚOpOverloadPacketÚcall_operatorÚopsÚhigher_orderÚcondÚ	call_condÚmap_implÚcall_mapÚHigherOrderOperatorÚ_fxr   )r@   r~   r   r€   rr   rW   ÚkeyÚpredÚtrue_fnÚfalse_fnÚinputsÚfÚmapped_argsÚoperandss                 r#   rŒ   zA_ExportPassBaseDeprecatedDoNotUse.ExportInterpreter.call_function²   sÈ  € ô   §	¡	§¡Ó/ˆDàœ×)Ñ)Ò)Ø!‘
��sØ—}‘}×1Ñ1°%¸¸dÓCÐCÜ˜ ¨tÓ4Ð8YÑYÜ Ô'Ð'Ð'Ø—}‘}×-Ñ-¨f°d¸DÓAÐAØœ>Ñ)Ü Ô'Ð'Ð'Ø—}‘}×-Ñ-¨f°d¸DÓAÐAÜ˜F¤U§Z¡Z×%:Ñ%:¼E¿J¹J×<WÑ<WÐ$XÔYØ—}‘}×2Ñ2ØØØØó	ð ð œ5Ÿ9™9×1Ñ1×6Ñ6Ò6Ø26Ñ/��g˜x¨Ø—}‘}×.Ñ.¨t°W¸hÈÐPTÓUÐUØœ5Ÿ9™9×1Ñ1×:Ñ:Ò:Ø+/Ñ(��; Ø—}‘}×-Ñ-¨a°¸hÈÓMÐMä˜F¤E§J¡J×$BÑ$BÔCØ—}‘}×(Ñ(Ø#ØØØØóð ô *Ð,EÀfÀXÐ*NÓOÐOr"   c                 ó&   •— t         ‰| �  |||«      S r3   )r4   rJ   )r@   r~   r   r€   rA   s       €r#   rJ   z<_ExportPassBaseDeprecatedDoNotUse.ExportInterpreter.get_attrÜ   s   ø€ ô ‘7Ñ# F¨D°&Ó9Ð9r"   c                 ó   — t        d«      ‚)Nzcall_module is not supported.rC   r‡   s       r#   Úcall_modulez?_ExportPassBaseDeprecatedDoNotUse.ExportInterpreter.call_moduleá   s   € ô &Ð&EÓFÐFr"   c                 ó   — t        d«      ‚)Nzcall_method is not supported.rC   r‡   s       r#   Úcall_methodz?_ExportPassBaseDeprecatedDoNotUse.ExportInterpreter.call_methodé   s   € ô &Ð&EÓFÐFr"   Únc                 ón   •— || _         |j                  «       | j                  _        t        ‰| �  |«      S r3   )rV   Úformat_noder/   Únode_debug_strr4   Úrun_node)r@   r¬   rA   s     €r#   r°   z<_ExportPassBaseDeprecatedDoNotUse.ExportInterpreter.run_nodeî   s,   ø€ ØˆDŒIØ+,¯=©=«?ˆD�M‰MÔ(Ü‘7Ñ# AÓ&Ð&r"   )r   r   r    r	   ÚGraphModuler5   rg   Útuplero   Údictr   r‚   r6   rV   ÚTargetr…   rŒ   rJ   r©   r«   rQ   r°   rt   ru   s   @r#   ÚExportInterpreterrx   ›   sí  ø„ ð	BÐ%Hð 	BÈbÏnÉnð 	BÐaeõ 	Bð
	Xàð	Xð ˜ #˜Ñ&ð	Xð ˜˜h˜Ñ'ð		Xð
 õ	Xð	Tà—H‘H—M‘M×(Ñ(ð	Tð ˜ #˜Ñ&ð	Tð ˜˜h˜Ñ'ð		Tð
 ó	Tð(	Pà—H‘H—M‘M×(Ñ(ð(	Pð ˜ #˜Ñ&ð(	Pð ˜˜h˜Ñ'ð	(	Pð
 ó(	PðT	:Øð	:Ø%*¨8°S¨=Ñ%9ð	:ØCGÈÈXÈÑCVð	:àõ	:ð
	Gà—H‘H—M‘M×(Ñ(ð	Gð ˜ #˜Ñ&ð	Gð ˜˜h˜Ñ'ð		Gð
 ó	Gð	GØð	GØ%*¨8°S¨=Ñ%9ð	GØCGÈÈXÈÑCVð	Gàó	Gð
	'˜eŸh™hŸm™mð 	'°÷ 	'ñ 	'r"   rµ   r1   Nc                 ó8  — t        t        j                  j                  t        j                  j                  «       t        j                  j                  «       «      «      | _        | j                  | t        «       «      | _
        d | _        d| _        d | _        y )NT)r   r6   r	   r±   r7   r8   r:   Úinterpreterrv   r   Útracerr>   Ú_initializedr¯   rD   s    r#   r5   z*_ExportPassBaseDeprecatedDoNotUse.__init__ó   si   € Ü3Ü�H‰H× Ñ ¤§¡§¡Ó!2´E·H±H·N±NÓ4DÓEó
ˆÔð ×'Ñ'¨¬g«iÓ8ˆŒØ:>ˆÔØ ˆÔØ48ˆÕr"   Úkindr~   r   .r€   rr   c                 ó  — t        j                  t        d„ ||f«      \  }} t        | j                  |«      |||«      }t        j                  t        d„ ||f«      \  }	}
d }t        |t        j                  j                  «      r9| j                  j                  j                  |j                  j                  «      }| j                  j                  |||	|
|¬«      }|j                  j                   j#                  |j$                  «       | j&                  r?| j&                  j(                  x}r't+        ||«      x}r||j                  j                   d<   | j                  j-                  |j                  |«       t        ||«      S )Nc                 ó   — | j                   S r3   ©r†   ©rY   s    r#   ú<lambda>z7_ExportPassBaseDeprecatedDoNotUse._fx.<locals>.<lambda>  s
   €  !§&¡&€ r"   c                 ó   — | j                   S r3   )Úproxyr¾   s    r#   r¿   z7_ExportPassBaseDeprecatedDoNotUse._fx.<locals>.<lambda>	  s
   €  !§'¡'€ r"   )ÚnameÚunbacked_bindings)rp   Útree_map_onlyr   r�   r·   rK   r6   r“   r”   r¸   r;   Ú_target_to_strÚoverloadpacketr   Úcreate_proxyrV   rr   Úupdater†   r>   Ú	shape_envr   rS   )r@   rº   r~   r   r€   rr   Ú	args_dataÚkwargs_dataÚres_dataÚ
args_proxyÚkwargs_proxyrÂ   Ú	res_proxyrÉ   Úsymbol_to_paths                  r#   rž   z%_ExportPassBaseDeprecatedDoNotUse._fxü   sM  € ô "(×!5Ñ!5ÜÑ(¨4°¨.ó"
Ñˆ	�;ð 3”7˜4×+Ñ+¨TÓ2°6¸9ÀkÓRˆÜ#)×#7Ñ#7ÜÑ)¨D°&¨>ó$
Ñ ˆ
�Lð ˆÜ�fœeŸj™j×3Ñ3Ô4Ø—;‘;×$Ñ$×3Ñ3°F×4IÑ4I×4RÑ4RÓSˆDà—K‘K×,Ñ,¨T°6¸:À|ÐZ^Ð,Ó_ˆ	Ø�‰×Ñ×"Ñ" 4§9¡9Ô-Ø× Ò °4×3HÑ3H×3RÑ3RÐ&R iÐ&RÜ!:¸9ÀhÓ!OÐOˆ~ÐOØ;I�	—‘×#Ñ#Ð$7Ñ8Ø�‰× Ñ  §¡°Ô:Ü˜( IÓ.Ð.r"   Úgraph_modulec                 ó0  ‡ ‡— ‰j                   j                  dd «      x}�t        |«      S dt        j                  j
                  dt        t           fˆˆ fd„}‰j                  j                  D �cg c]  }|j                  dk(  r ||«      ‘Œ c}S c c}w )Nr   rV   r1   c           
      ó  •— d| j                   v r5| j                   d   }t        |d«      r|j                  �|j                  S |S | j                   j                  d«      x}rx‰j                  €J ‚t        ‰j                  t        j                  |j                  |j                  d|j                  |j                  ¬«      t        j                  d«      «      S t        | j                  «      dk(  ry t        d‰› d	�«      ‚)
Nrj   rI   rm   rr   )ÚdtypeÚdeviceÚrequires_gradÚmemory_formatÚcpur   z,Cannot construct an input for graph module: ú.)rr   rN   rI   Úgetr>   r   r6   ÚemptyÚshaperÔ   rÖ   r×   rÕ   rL   Úusersr   )rV   Úfakerm   rÑ   r@   s      €€r#   Úextract_inputz?_ExportPassBaseDeprecatedDoNotUse.inputs.<locals>.extract_input  sî   ø€ Ø˜Ÿ	™	Ñ!Ø—y‘y Ñ'�Ü˜4 Ô,°·±Ð1JØŸ=™=Ð(Ø�Ø $§	¡	§¡¨mÓ <Ð<�Ð<Ø×,Ñ,Ð8Ð8Ð8Ü!Ø×)Ñ)Ü—K‘KØ#×)Ñ)Ø)×/Ñ/Ø%Ø&1×&?Ñ&?Ø&1×&?Ñ&?ôô —L‘L Ó'ó
ð 
ô �T—Z‘Z“ AÒ%ØÜ%Ø>¸|¸nÈAÐNóð r"   r‚   )rr   rÚ   Úlistr6   r	   rQ   r   r   r;   r}   rR   )r@   rÑ   r   rß   rV   s   ``   r#   r£   z(_ExportPassBaseDeprecatedDoNotUse.inputs  sŒ   ù€ ð !×%Ñ%×)Ñ)¨&°$Ó7Ð7ˆDÐDÜ˜“:Ðð	¤§¡§¡ð 	´(¼:Ñ2Fö 	ð6 %×*Ñ*×0Ñ0ö
àØ�w‰w˜-Ò'ñ ˜$Õò
ð 	
ùò 
s   Á2BÚattrc                  ó   — y r3   r!   )r@   rá   s     r#   rT   z)_ExportPassBaseDeprecatedDoNotUse.on_attr=  s   € Ør"   rÂ   rƒ   c                 óØ   — | j                   j                  d|di «      }|j                  |j                  _        | j                   j                  |j                  |«       t        ||«      S )Nr‚   r!   )r¸   rÇ   r†   rV   rr   rS   r   )r@   rÂ   rƒ   rr   Ú	arg_proxys        r#   r‚   z-_ExportPassBaseDeprecatedDoNotUse.placeholder@  sQ   € Ø—K‘K×,Ñ,¨]¸DÀ"ÀbÓIˆ	Ø"Ÿi™iˆ	�‰ÔØ�‰× Ñ  §¡°Ô5Ü˜#˜yÓ)Ð)r"   c                 ó,   — | j                  d||||«      S ©NrŒ   ©rž   )r@   rR   r   r€   rr   s        r#   r–   z/_ExportPassBaseDeprecatedDoNotUse.call_operatorF  s   € ð �x‰x˜¨¨T°6¸4Ó@Ð@r"   c                 ó,   — | j                  d||i |«      S ræ   rç   )r@   r~   r   rr   s       r#   r’   z*_ExportPassBaseDeprecatedDoNotUse.call_symO  s   € ð �x‰x˜¨°°r¸4Ó@Ð@r"   r    r¡   r¢   r£   c           
      ó.  — | j                  |t        |«      «      }| j                  |t        |«      «      }|€J ‚|€J ‚| j                  dt        j                  j
                  j                  ||j                  |j                  t        |«      fi |«      S ræ   )	Úcall_submoduler²   rž   r6   r—   r˜   r™   rÑ   rà   )r@   r    r¡   r¢   r£   rr   Útrue_branchÚfalse_branchs           r#   rš   z+_ExportPassBaseDeprecatedDoNotUse.call_condW  s‘   € ð ×)Ñ)¨'´5¸³=ÓAˆØ×*Ñ*¨8´U¸6³]ÓCˆØÐ&Ð&Ð&ØÐ'Ð'Ð'Ø�x‰xØÜ�I‰I×"Ñ"×'Ñ'Ø�;×+Ñ+¨\×-FÑ-FÌÈVËÐUØØó
ð 	
r"   r¤   r¥   r¦   c           
      ó^  — t        |D �cg c]  }|j                  ‘Œ c}«      d   }| j                  |t        ||D �cg c]  }|j                  ‘Œ c}z   «      «      }|€J ‚| j	                  dt
        j                  j                  j                  |j                  ||fi |«      S c c}w c c}w )Nr   rŒ   )
r   r†   rê   r²   rž   r6   r—   r˜   r›   rÑ   )r@   r¤   r¥   r¦   rr   rƒ   ÚxsÚf_branchs           r#   rœ   z*_ExportPassBaseDeprecatedDoNotUse.call_mapk  sž   € ô °+Ö>¨3˜cŸh›hÒ>Ó?ÀÑBˆØ×&Ñ& q¬%°È(Ö5SÀ3°c·h³hÒ5SÑ0SÓ*TÓUˆØÐ#Ð#Ð#Ø�x‰xØÜ�I‰I×"Ñ"×+Ñ+Ø×"Ñ" K°Ð:ØØó
ð 	
ùò ?ùÚ5Ss
   ŠB%½B*rW   rŸ   c                 óL   — | j                  dt        j                  ||fi |«      S ræ   )rž   r�   rŽ   )r@   rW   rŸ   rr   s       r#   r�   z._ExportPassBaseDeprecatedDoNotUse.call_getitem}  s%   € ð �x‰x˜¬×)9Ñ)9¸EÀ3¸<ÈÈTÓRÐRr"   Úresultsc                 ó.   — | j                  dd|fi |«      S )Nr…   rç   )r@   rñ   rr   s      r#   r…   z(_ExportPassBaseDeprecatedDoNotUse.output‚  s   € Ø�x‰x˜ (¨W¨J¸¸DÓAÐAr"   c                 óF  — | j                   | j                  | |j                  j                  «      c}| _         |j                  | j                   _        | j                  | |«      }| j                  t        j                  j                  t        j                  j                  t        j                  j                  «       t        j                  j                  «       «      «      c}| _        t        j                  t         d„ |«      }t#        j$                  «       5   |j&                  |Ž  d d d «       t        j                  j                  | j                   j(                  | j                   j                  «      }|| _         || _        t+        |d«      S # 1 sw Y   ŒkxY w)Nc                 ó   — | j                   S r3   r½   r¾   s    r#   r¿   zB_ExportPassBaseDeprecatedDoNotUse.call_submodule.<locals>.<lambda>�  s
   € ÀÇÁ€ r"   T)r¸   rv   r;   Ú_codegenr>   rµ   r·   r6   r	   ÚInterpreterr±   r7   r8   r:   rp   rÄ   r   Úfx_tracebackÚpreserve_node_metaÚrunr9   r   )r@   rÑ   r£   Úprev_tracerr·   Úprev_interpreterÚinputs_dataÚnew_graph_modules           r#   rê   z0_ExportPassBaseDeprecatedDoNotUse.call_submodule…  s=  € ð $(§;¡;°×0AÑ0AØ�,×$Ñ$×-Ñ-ó1
Ð ˆ�T”[ð (3×'CÑ'Cˆ�‰Ô$Ø×,Ñ,¨T°<Ó@ˆØ-1×-=Ñ-=¼u¿x¹x×?SÑ?SÜ�H‰H× Ñ ¤§¡§¡Ó!2´E·H±H·N±NÓ4DÓEó@
Ð*Ð˜$Ô*ô ×*Ñ*¬:Ñ7GÈÓPˆÜ×,Ñ,Ó.ñ 	*ØˆK�O‰O˜[Ñ)÷	*ô !Ÿ8™8×/Ñ/°·±×0@Ñ0@À$Ç+Á+×BSÑBSÓTÐà!ˆŒØ+ˆÔÜØØó
ð 	
÷	*ð 	*ús   ÄFÆF c                 óD  — t        | dd«      st        d«      ‚| j                  |«      }d }|D ]6  }t        |t        «      sŒ|�||j
                  u sJ d«       ‚|j
                  }Œ8 |€0t        d¬«      | j                  _        t        «       }t        «       }n"d|_
        || j                  _        t        «       }| j                  j                  | _        |5  |5  | j                  |t        |«      «      }d d d «       d d d «       S # 1 sw Y   ŒxY w# 1 sw Y   S xY w)Nr¹   Fz.ExportPass is not initialized with __init__().z#Multiple fake tensor mode detected.T)Úallow_non_fake_inputs)r�   r   r£   rK   r   Ú	fake_moder   r¸   r>   r   rÿ   r
   rê   r²   )r@   rÑ   r£   r>   ÚiÚdispatcher_modeÚresults          r#   Úcallz&_ExportPassBaseDeprecatedDoNotUse.call�  s&  € Ü�t˜^¨UÔ3Ü%Ø@óð ð —‘˜\Ó*ˆàÐØò 	/ˆAÜ˜!œZÕ(à$Ð,Ð0@ÀAÇKÁKÑ0Oð9à8ó9ØOà#$§;¡;Ñ ð	/ð Ð#Ü+9ÐPTÔ+UˆD�K‰KÔ(Ü*›}ÐÜ)›m‰Oà59ÐÔ2Ø+;ˆD�K‰KÔ(Ü6Ó8ˆOØ $§¡× <Ñ <ˆÔàñ 	F˜ñ 	FØ×(Ñ(¨´u¸V³}ÓEˆF÷	F÷ 	Fð ˆ÷	Fð 	Fú÷ 	Fð ˆús$   ÃDÃD	Ã7DÄ	D	ÄDÄDrs   )&r   r   r    Ú__doc__Ústaticmethodr,   r   rv   r	   rö   rµ   r5   rg   r6   rV   r´   r²   ro   r³   r   r   rž   r±   rà   r£   rT   r‚   r–   ÚFnr’   rš   rœ   rd   r�   r…   r   rê   r  r!   r"   r#   r   r   1   s¥  „ ñð
 ñWó ðWô]P�ô ]Pô~V'˜BŸN™Nô V'óp9ð/àð/ð —‘—‘×$Ñ$ð/ð �H˜c�MÑ"ð	/ð
 �S˜(�]Ñ#ð/ð ð/ð 
ó/ð8#
 5§8¡8×#7Ñ#7ð #
¸DÀ¹Nó #
ðJ˜Jð ¨4ó ð* ð *¨(ð *¸,ð *È:ó *ðAð �H˜c�MÑ"ðAð �S˜(�]Ñ#ð	Að
 ðAð 
óAðAàðAð �H˜c�MÑ"ðAð ð	Að
 
óAð
àð
ð —‘×%Ñ%ð
ð —(‘(×&Ñ&ð	
ð
 �X‘ð
ð ð
ð 
ó
ð(
à�8‰8×Ñð
ð ˜*Ñ%ð
ð �zÑ"ð	
ð
 ð
ð 
ó
ð$SØðSØ&)ðSØ1=ðSà	óSð
B˜d 8™nð B°Lð BÀZó Bð
ØŸN™Nð
Ø49¸(ÀC¸-Ñ4Hð
à	ó
ð0 §¡ð °Jô r"   )=r�   r   ÚtypingÚ
contextlibr   r   r   r   r   r6   Ú#functorch.experimental.control_flowr   r	   Útorch._dispatch.pythonr
   Ú&torch._export.pass_infra.node_metadatar   Ú$torch._export.pass_infra.proxy_valuer   Útorch._subclassesr   r   Útorch._subclasses.fake_tensorr   Útorch.fxr÷   Ú"torch.fx.experimental.proxy_tensorr   Útorch.fx.graphr   Útorch.fx.passes.infra.pass_baser   r   Útorch.fx.passes.shape_propr   r   Útorch.utilsr   rp   Ú%torch.fx.experimental.symbolic_shapesr   r   Ú__all__ro   ÚValuer  r±   ÚPassTypeÚsym_intÚ	sym_floatÚsym_iteÚsym_maxÚsym_minÚsym_notÚsym_sqrtr   ÚsetÚ__annotations__ÚRuntimeErrorr   r   r!   r"   r#   ú<module>r$     sè   ðä Û Û Ý "ß 1Ó 1ã Ý ?Ý Ý ;Ý ?Ý ;ß HÝ 8Ý .Ý >Ý "ß @ß OÝ )ß eð /Ð
/€ð €Ø€Øˆc�3ˆhÑ€Ø�U—X‘X×)Ñ)Ð*¨H°ZÑ,@Ð@ÑA€ð 
‡M�MØ	‡O�OØ	‡M�MØ	‡M�MØ	‡M�MØ	‡M�MØ	‡N�Nð!€��H‘ó ô	˜,ô 	ôH¨õ Hr"   