Ë
    P/æj0A ã                   óz  — d dl Z d dlZd dlZd dlZd dlZd dlZd dlZd dlZd dlm	Z	m
Z
 d dlmZ d dlmZmZmZ d dlZd dlmZmZ d dlmZ ddlmZmZ dd	lmZmZmZmZmZ dd
lm Z m!Z! ddl"m#Z# ddl$m%Z%m&Z&m'Z'm(Z( ddl)m*Z*m+Z+m,Z,m-Z-m.Z.m/Z/m0Z0m1Z1m2Z2m3Z3m4Z4m5Z5m6Z6 ddl7m8Z8m9Z9 ddl:m;Z; ddl<m=Z=m>Z> ddl?m@Z@mAZAmBZBmCZCmDZDmEZE ddlFmGZGmHZHmIZImJZJmKZKmLZL ddlMmNZNmOZOmPZPmQZQmRZR ddlSmTZTmUZU erd dlVmWZW  ej°                  eY«      ZZej¶                  ej¸                  ejº                  ej¼                  ej¾                  ejÀ                  ejÂ                  ejÄ                  ejÆ                  ejÈ                  ejÊ                  ejÌ                  ejÎ                  ejÎ                  ejÐ                  ejÒ                  ejÔ                  ejÖ                  ejØ                  ejÚ                  ejÜ                  ejÞ                  ejà                  ejâ                  ejä                  ejæ                  iZt G d„ de9«      Zue jì                  d„ «       Zwy)é    N)ÚdefaultdictÚOrderedDict)ÚKeysView)ÚDictÚListÚTYPE_CHECKING)Ú	sym_floatÚsym_int)Úis_traceable_wrapper_subclassé   )ÚconfigÚ	variables)ÚAttributeMutationErrorÚunimplementedÚUnsupportedÚ	UserErrorÚUserErrorType)ÚGuardBuilderÚinstall_guard)ÚDummyModule)Ú
AttrSourceÚGetItemSourceÚis_constant_sourceÚ
TypeSource)Úcheck_constant_argsÚcheck_numpy_ndarray_argsÚcheck_unspec_or_constant_argsÚcheck_unspec_python_argsÚ#does_not_override_dict_iter_methodsÚextract_fake_example_valueÚget_fake_valueÚguard_if_dynÚis_wrapper_or_member_descriptorÚistypeÚnumpy_operator_wrapperÚproxy_args_kwargsÚtensortype_to_dtypeé   )ÚMutableLocalÚVariableTracker©ÚConstantVariable)ÚEventVariableÚStreamVariable)ÚConstDictVariableÚDefaultDictVariableÚDictViewÚFrozensetVariableÚis_hashableÚSetVariable)ÚBaseListVariableÚListIteratorVariableÚListVariableÚSizeVariableÚTupleIteratorVariableÚTupleVariable)ÚFakeItemVariableÚsupported_comparison_opsÚSymNodeVariableÚTensorVariableÚUnspecializedPythonVariable)ÚUserDefinedObjectVariableÚUserDefinedVariable)ÚInstructionTranslatorc                   ó8  ‡ — e Zd Z e«       Zdhej                  £Zed„ «       Ze	 e
j                  d«      d„ «       «       Zd„ Ze	 e
j                  d«      d„ «       «       Ze	 e
j                  d«      d„ «       «       Ze	 e
j                  d«      d„ «       «       Ze	d	„ «       Zd
„ ZdXˆ fd„Zdefd„Zd„ Zˆ fd„Zd„ Zd„ Zd„ Zd„ Zd„ Ze	d„ «       Zd„ Ze	dee    de!fd„«       Z"dYd„Z#i Z$	 	 	 	 	 	 	 	 dZd„Z%	 	 	 	 	 	 d[ˆ fd„Z&dYd„Z'e'Z(e'Z)dYd „Z*dYd!„Z+dYd"„Z,dYd#„Z-e+Z.e+Z/d\d%„Z0d\d&„Z1d\d'„Z2dYd(„Z3dYd)„Z4d*„ Z5dYd+„Z6dYd,„Z7	 d]	 dYd-„Z8d]d.„Z9dYd/„Z:e9Z;e9Z<dYd0„Z=d1„ Z>dYd2„Z?e	dYd3„«       Z@e		 	 dYd4„«       ZAdYd5„ZBdYd6„ZCdYd7„ZDdYd8„ZEdYd9„ZFdYd:„ZGdYd;„ZHdYd<„ZIddd$efd=„ZJdYd>„ZKdYd?„ZLdYd@„ZMefdYdA„ZNef	 dYdB„ZO	 d]dddCedDefdE„ZPdddCedDedFefdG„ZQdddCedDefdH„ZRdddCefdI„ZSdddCefdJ„ZTdddCefdK„ZUdYdL„ZVdYdM„ZWdYdN„ZXdYdO„ZYdYdP„ZZdYdQ„Z[dYdR„Z\dYdS„Z]dYdT„Z^dddUedVefdW„Z_ˆ xZ`S )^ÚBuiltinVariableÚfnc                 óf   — t        |j                  t        j                  «      «        | ||¬«      S )N)Úsource)r   Ú
make_guardr   ÚBUILTIN_MATCH)ÚclsÚvaluerG   s      úb/root/repos/pocs/video-evals/.venv/lib/python3.12/site-packages/torch/_dynamo/variables/builtin.pyÚcreate_with_sourcez"BuiltinVariable.create_with_sourcei   s(   € ä�f×'Ñ'¬×(BÑ(BÓCÔDÙ�5 Ô(Ð(ó    Nc                  ó.  — h t         ’t        ’t        ’t        ’t        ’t
        ’t        ’t        ’t        ’t        ’t        ’t        ’t        ’t        ’t        ’t        ’t         ’t"        ’t"        j$                  ’t&        ’t(        ’t*        j                   ’t*        j,                  ’t*        j.                  ’t*        j0                  ’t*        j2                  ’t*        j4                  ’t*        j                  ’t*        j6                  ’t*        j8                  ’t*        j:                  ’t*        j<                  ’t*        j>                  ’t*        j@                  ’t*        jB                  ’t*        jD                  ’t*        jF                  ’t*        jH                  ’t*        jJ                  ’t*        jL                  ’t*        jN                  ’t*        jP                  ’t*        jR                  ’t*        jT                  ’t*        jV                  ’t*        jX                  ’t*        jZ                  ’t*        j\                  ’t*        j^                  ’t*        j`                  ’t*        jb                  ’t*        jd                  ’t*        jf                  ’t*        jh                  ’t*        jj                  ’t*        jl                  ’} ddl7m8} | js                   |jt                  «       «       | js                  d„ tv        jx                  ju                  «       D «       «       | S )Nr(   )r<   c              3   óh   K  — | ]*  }t        |t        t        j                  «      «      sŒ'|–— Œ, y ­w©N)Ú
isinstanceÚtypeÚmathÚsqrt©Ú.0Úxs     rL   ú	<genexpr>z;BuiltinVariable._constant_fold_functions.<locals>.<genexpr>®   s!   è ø€ ÒW˜¼
À1ÄdÌ4Ï9É9ÃoÕ8V”1ÑWùs   ‚(2«2)=ÚabsÚallÚanyÚboolÚcallableÚchrÚdivmodÚfloatÚgetattrÚintÚlenÚmaxÚminÚordÚpowÚreprÚroundÚstrÚformatÚsumrS   ÚoperatorÚposÚnegÚnot_ÚtruthÚinvertÚmulÚmatmulÚfloordivÚtruedivÚmodÚaddÚsubÚgetitemÚlength_hintÚlshiftÚrshiftÚand_Úor_ÚxorÚipowÚimulÚimatmulÚ	ifloordivÚitruedivÚimodÚiaddÚisubÚilshiftÚirshiftÚiandÚixorÚiorÚindexÚtensorr<   ÚupdateÚvaluesrT   Ú__dict__)Úfnsr<   s     rL   Ú_constant_fold_functionsz(BuiltinVariable._constant_fold_functionsn   sL  € ð9
Üð9
äð9
ô ð9
ô ð	9
ô
 ð9
ô ð9
ô ð9
ô ð9
ô ð9
ô ð9
ô ð9
ô ð9
ô ð9
ô ð9
ô ð9
ô  ð!9
ô" ð#9
ô$ ð%9
ô& �J‰Jð'9
ô( ð)9
ô* ð+9
ô, �L‰Lð-9
ô. �L‰Lð/9
ô0 �L‰Lð19
ô2 �M‰Mð39
ô4 �N‰Nð59
ô6 �O‰Oð79
ô8 �L‰Lð99
ô: �L‰Lð;9
ô< �O‰Oð=9
ô> ×Ñð?9
ô@ ×ÑðA9
ôB �L‰LðC9
ôD �L‰LðE9
ôF �L‰LðG9
ôH ×ÑðI9
ôJ × Ñ ðK9
ôL �O‰OðM9
ôN �O‰OðO9
ôP �M‰MðQ9
ôR �L‰LðS9
ôT �L‰LðU9
ôV �M‰MðW9
ôX �M‰MðY9
ôZ ×Ñð[9
ô\ ×Ñð]9
ô^ ×Ñð_9
ô` �M‰Mða9
ôb �M‰Mðc9
ôd �M‰Mðe9
ôf ×Ñðg9
ôh ×Ñði9
ôj �M‰Mðk9
ôl �M‰Mðm9
ôn �L‰Lðo9
ôp �N‰Nðq9
ˆõt 	5à�
‰
Ð2Ð+×2Ñ2Ó4Ô5Ø�
‰
ÑWœdŸm™m×2Ñ2Ó4ÔWÔWØˆ
rN   c                 ó:   — | j                   | j                  «       v S rQ   )rE   r•   ©Úselfs    rL   Úcan_constant_fold_throughz)BuiltinVariable.can_constant_fold_through±   s   € Ø�w‰w˜$×7Ñ7Ó9Ð9Ð9rN   c                  óê  — h t         j                  ’t         j                  ’t         j                  ’t         j                  ’t         j
                  ’t         j                  ’t         j                  ’t         j                  ’t         j                  ’t         j                  ’t         j                  ’t         j                  ’t         j                  ’t         j                  ’t         j                  ’t         j                   ’t         j"                  ’t         j$                  ’t         j&                  ’t         j(                  ’t         j*                  ’t         j,                  ’t         j.                  ’t         j0                  ’t         j2                  ’t         j4                  ’t         j6                  ’t         j8                  ’t         j:                  ’t         j<                  ’t         j>                  ’t         j@                  ’t         jB                  ’t         jD                  ’t         jF                  ’t         jH                  ’t         jJ                  ’t         jL                  ’t         jN                  ’} | S rQ   )(rn   rZ   ro   rp   rq   rs   rh   rt   ru   rv   rw   rx   ry   ÚltÚgtÚgeÚleÚneÚeqrz   r{   r|   r}   r~   r   r€   r�   r‚   rƒ   r„   r…   r†   r‡   rˆ   r‰   rŠ   r‹   rŒ   r�   rŽ   ©r”   s    rL   Ú_fx_graph_functionsz#BuiltinVariable._fx_graph_functions´   sQ  € ð(
Ü�L‰Lð(
ä�L‰Lð(
ô �L‰Lð(
ô �M‰Mð	(
ô
 �O‰Oð(
ô �L‰Lð(
ô �L‰Lð(
ô �O‰Oð(
ô ×Ñð(
ô ×Ñð(
ô �L‰Lð(
ô �L‰Lð(
ô �K‰Kð(
ô �K‰Kð(
ô �K‰Kð(
ô  �K‰Kð!(
ô" �K‰Kð#(
ô$ �K‰Kð%(
ô& �L‰Lð'(
ô( ×Ñð)(
ô* × Ñ ð+(
ô, �O‰Oð-(
ô. �O‰Oð/(
ô0 �M‰Mð1(
ô2 �L‰Lð3(
ô4 �L‰Lð5(
ô6 �M‰Mð7(
ô8 �M‰Mð9(
ô: ×Ñð;(
ô< ×Ñð=(
ô> ×Ñð?(
ô@ �M‰MðA(
ôB �M‰MðC(
ôD �M‰MðE(
ôF ×ÑðG(
ôH ×ÑðI(
ôJ �M‰MðK(
ôL �M‰MðM(
ôN �L‰LðO(
ˆðR ˆ
rN   c                  óž  — t         j                  g d¢t         j                  ft         j                  g d¢t         j                  ft         j
                  g d¢t         j                  ft         j                  g d¢t         j                  ft         j                  g d¢t         j                  ft         j                  g d¢t         j                  ft        g d¢t         j                  ft         j                  g d¢t         j                  ft         j                  g d¢t         j                   ft         j"                  g d	¢t         j$                  fi
} | S )
N)Ú__add__Ú__radd__Ú__iadd__)Ú__sub__Ú__rsub__Ú__isub__)Ú__mul__Ú__rmul__Ú__imul__)Ú__truediv__Ú__rtruediv__Ú__itruediv__)Ú__floordiv__Ú__rfloordiv__Ú__ifloordiv__)Ú__mod__Ú__rmod__Ú__imod__)Ú__pow__Ú__rpow__Ú__ipow__)Ú
__lshift__Ú__rlshift__Ú__ilshift__)Ú
__rshift__Ú__rrshift__Ú__irshift__)rn   ry   rˆ   rz   r‰   rt   rƒ   rw   r†   rv   r…   rx   r‡   rh   r‚   r}   rŠ   r~   r‹   r¡   s    rL   Ú_binopszBuiltinVariable._binopsâ   sê   € ô
 �L‰LÒ>ÄÇÁÐNÜ�L‰LÒ>ÄÇÁÐNÜ�L‰LÒ>ÄÇÁÐNÜ×ÑÚ?Ü×!Ñ!ðô ×ÑÚBÜ×"Ñ"ð ô �L‰LÒ>ÄÇÁÐNÜÒ5´x·}±}ÐEÜ�L‰LÒ>ÄÇÁÐNÜ�O‰OÚ<Ü× Ñ ðô �O‰OÚ<Ü× Ñ ðð'
ˆð> ˆ
rN   c            
      ó  ‡‡‡‡‡‡‡‡‡‡— ddl m} m} ddlmŠmŠ ddlmŠ ddlm	Š ddl
mŠ ddlmŠmŠmŠ i }t         j#                  «       j%                  «       D �]!  \  }\  }}g ||<   g ||<   |\  }}}||dœˆfd	„
}	||   j'                  ‰t(        f|	f«       ||   j'                  t(        ‰f|	f«       |d
œ	 dd„}
||   j'                  ‰t(        f|
f«       ||   j'                  t(        ‰f|
f«       |dœdd„}||   j'                  t*        t(        f|f«       ||   j'                  t(        t*        f|f«       ||   j'                  t*        t(        f|f«       ||   j'                  t(        t*        f|f«       �Œ$ dd„}dd„}t,        t,        f|ft.        t.        f|ft.        t0        f|ft0        t.        fd„ ft2        t4        t0        t6        ffd„ ft4        t4        fd„ fg}|t8        j:                     j=                  |«       dd„}t2        t(        f|ft.        t.        f|ft.        t0        f|fg}|t8        j>                     j=                  |«       dd„}t2        t0        f|ft.        t0        f|ft0        t2        f|ft0        t.        f|fg}|t8        j@                     j=                  |«       t,        t.        fŠ|| fŠˆˆˆˆˆˆˆˆˆˆf
d„}tC        jD                  «       D ]   }tG        |«      sJ ‚||vsJ ‚ ||«      ||<   Œ" |S )Nr(   )ÚDictKeysr4   )ÚBaseUserFunctionVariableÚUserFunctionVariable©ÚNNModuleVariable)Úsupported_const_comparison_ops)ÚBaseTorchVariable)ÚUserDefinedClassVariabler@   rA   )Úforward_nameÚreverse_namec                óp   •— t        |‰«      r|j                  | ||gi «      S |j                  | ||gi «      S rQ   )rR   Úcall_method)ÚtxÚaÚbrÉ   rÊ   rA   s        €rL   Úuser_defined_handlerz=BuiltinVariable._binop_handlers.<locals>.user_defined_handler%  s>   ø€ ô, ˜aÐ!4Ô5ØŸ=™=¨¨\¸A¸3ÀÓCÐCàŸ=™=¨¨\¸A¸3ÀÓCÐCrN   )rÉ   c                ó,   — |j                  | ||gi «      S rQ   ©rÌ   )rÍ   rÎ   rÏ   rÉ   s       rL   Úuser_defined_inplace_handlerzEBuiltinVariable._binop_handlers.<locals>.user_defined_inplace_handlerG  s   € ð —}‘} R¨¸°s¸BÓ?Ð?rN   ©rE   c          
      óp   — ddl m}  ||  | j                  j                  d|gt	        ||gi «      ¢­Ž «      S ©Nr(   ©Úwrap_fx_proxyÚcall_function)ÚbuilderrØ   ÚoutputÚcreate_proxyr&   )rÍ   rÎ   rÏ   rE   rØ   s        rL   Údynamic_handlerz8BuiltinVariable._binop_handlers.<locals>.dynamic_handlerT  sA   € Ý2á$ØØ*�B—I‘I×*Ñ*Ø'¨ðÜ.?ÀÀAÀÈÓ.Kòóð rN   c                 óR   — t        g |j                  ¢|j                  | «      ¢«      S rQ   )r:   ÚitemsÚunpack_var_sequence©rÍ   rÎ   rÏ   s      rL   Útuple_add_handlerz:BuiltinVariable._binop_handlers.<locals>.tuple_add_handlerp  s'   € Ü Ð!G 1§7¡7Ð!G¨Q×-BÑ-BÀ2Ó-FÐ!GÓHÐHrN   c                 óR   — t        g |j                  ¢|j                  | «      ¢«      S rQ   )r8   rß   rà   rá   s      rL   Úsize_add_handlerz9BuiltinVariable._binop_handlers.<locals>.size_add_handlers  s'   € ÜÐ F !§'¡'Ð F¨A×,AÑ,AÀ"Ó,EÐ FÓGÐGrN   c                 óR   — t        g |j                  | «      ¢|j                  ¢«      S rQ   )r:   rà   rß   rá   s      rL   ú<lambda>z1BuiltinVariable._binop_handlers.<locals>.<lambda>ˆ  s'   € ¤Ø:�a×+Ñ+¨BÓ/Ð:°!·'±'Ð:ó"€ rN   c                 óf   — t        g |j                  ¢|j                  | «      ¢t        «       ¬«      S ©N©Úmutable_local)r7   rß   rà   r)   rá   s      rL   ræ   z1BuiltinVariable._binop_handlers.<locals>.<lambda>‘  s+   € ¤Ø:�a—g‘gÐ: × 5Ñ 5°bÓ 9Ð:Ì,Ë.ô"€ rN   c                 óT   —  t        |«      g |j                  ¢|j                  ¢«      S rQ   )rS   rß   rá   s      rL   ræ   z1BuiltinVariable._binop_handlers.<locals>.<lambda>—  s$   €  ¤ a£Ð)=¨1¯7©7Ð)=°Q·W±WÐ)=Ó!>€ rN   c                 óä   — |j                   r|j                  | «      sy |j                  | «      }| j                  j                  j                  |«       |j                  j                  |«       |S rQ   )rê   Úhas_unpack_var_sequencerà   rÛ   Úside_effectsÚmutationrß   Úextend)rÍ   rÎ   rÏ   Úseqs       rL   Úlist_iadd_handlerz:BuiltinVariable._binop_handlers.<locals>.list_iadd_handlerœ  sV   € Ø—?’?¨!×*CÑ*CÀBÔ*Gàà×'Ñ'¨Ó+ˆCØ�I‰I×"Ñ"×+Ñ+¨AÔ.Ø�G‰G�N‰N˜3ÔØˆHrN   c                 ó–   — t        |t        «      r||}}|j                  |j                  |j	                  «       z  t        «       ¬«      S )N)rß   rê   )rR   r,   Ú	__class__rß   Úas_python_constantr)   )rÍ   ÚlstÚconsts      rL   Úexpand_list_likez9BuiltinVariable._binop_handlers.<locals>.expand_list_like·  sF   € Ü˜#Ô/Ô0Ø" C�U�Ø—=‘=Ø—i‘i %×":Ñ":Ó"<Ñ<Ü*›nð !ó ð rN   c                 ó>  •
‡ ‡— dˆ fd„}t         t         f|fg}‰ ‰j                  «       v r� ‰ t        «       d «      Š‰ j                  j	                  d«      rdˆfd„}|}|}ndddt         fˆfd„}dddt         fˆfd	„}t
        t        ‰t        ‰‰t        ‰f}|j                  |t         f|ft         |f|fg«       dˆ fd
„}dˆ fd„}dˆ fd„}	dˆ fd„}
‰ j                  j	                  d«      r|}n|
}t        ‰ «      }|j                  ‰t        f‰t        ffˆ fd„f‰‰fˆ fd„f‰‰f|ft        j                  t        j                  f|f‰‰f|	f‰‰f|f‰‰f|ft        t        t         ft        t        t         ff|ft
        t        f|j                  ft        t
        f|j                  ft        t        f|j                   ft        t        f|j                   fg«       ‰ j                  j	                  d«      r#dˆ fd„}|j#                  t        t        f|f«       |S )NrÍ   rB   c                 óP   •— t         ‰|j                  |j                  «      «      S rQ   )r,   rK   ©rÍ   rÎ   rÏ   Úops      €rL   Úcompare_by_valuezYBuiltinVariable._binop_handlers.<locals>.create_cmp_op_handlers.<locals>.compare_by_valueË  s   ø€ Ü'©¨1¯7©7°A·G±GÓ(<Ó=Ð=rN   Úis_c                 ó   •— t        ‰«      S rQ   r+   ©rÍ   rÎ   rÏ   Únone_results      €rL   ÚneverzNBuiltinVariable._binop_handlers.<locals>.create_cmp_op_handlers.<locals>.neverÕ  s   ø€ Ü/°Ó<Ð<rN   rÏ   c                 ól   •— |j                   �|j                   du s|j                   du rt        ‰«      S y ©NTF©rK   r,   r   s      €rL   Úobj_op_nonezTBuiltinVariable._binop_handlers.<locals>.create_cmp_op_handlers.<locals>.obj_op_noneÜ  ó5   ø€ ð Ÿ7™7˜?¨a¯g©g¸©oÀÇÁÈEÑAQÜ#3°KÓ#@Ð@ð BRrN   rÎ   c                 ól   •— |j                   �|j                   du s|j                   du rt        ‰«      S y r  r  r   s      €rL   Únone_op_objzTBuiltinVariable._binop_handlers.<locals>.create_cmp_op_handlers.<locals>.none_op_objâ  r  rN   c                 ó4   •— t        j                  | ‰||«      S rQ   )r5   Úlist_compare©rÍ   ÚleftÚrightrü   s      €rL   Úlist_compare_nocheckz]BuiltinVariable._binop_handlers.<locals>.create_cmp_op_handlers.<locals>.list_compare_nocheckÿ  s   ø€ Ü'×4Ñ4°R¸¸TÀ5ÓIÐIrN   c                 óœ   •— t        |«      t        |«      urt        ‰j                  › d|› d|› d�«       t        j                  | ‰||«      S )Nú(ú, ú))rS   r   Ú__name__r5   r  r  s      €rL   Úlist_compare_checkz[BuiltinVariable._binop_handlers.<locals>.create_cmp_op_handlers.<locals>.list_compare_check  sQ   ø€ Ü˜“:¤TØó&ñ ô " R§[¡[ M°°4°&¸¸5¸'ÀÐ"CÔDÜ'×4Ñ4°R¸¸TÀ5ÓIÐIrN   c                 óP   •— t         ‰|j                  |j                  «      «      S rQ   )r,   Ú	set_itemsr  s      €rL   Úcompare_set_itemszZBuiltinVariable._binop_handlers.<locals>.create_cmp_op_handlers.<locals>.compare_set_items	  s   ø€ Ü'©¨4¯>©>¸5¿?¹?Ó(KÓLÐLrN   c                 óJ   •— |j                  | d‰j                  › d�|gi «      S )NÚ__)rÌ   r  r  s      €rL   Úcompare_via_methodz[BuiltinVariable._binop_handlers.<locals>.create_cmp_op_handlers.<locals>.compare_via_method  s)   ø€ Ø×'Ñ'¨¨b°·±°¸RÐ,@À5À'È2ÓNÐNrN   c                 óP   •— t         ‰|j                  |j                  «      «      S rQ   )r,   rE   rû   s      €rL   ræ   zQBuiltinVariable._binop_handlers.<locals>.create_cmp_op_handlers.<locals>.<lambda>  s   ø€ Ô)9¹"¸Q¿T¹TÀ1Ç4Á4».Ó)I€ rN   c                 ó´   •— t         ‰| j                  j                  |j                  «      | j                  j                  |j                  «      «      «      S rQ   )r,   rÛ   Úget_submoduleÚ
module_keyrû   s      €rL   ræ   zQBuiltinVariable._binop_handlers.<locals>.create_cmp_op_handlers.<locals>.<lambda>#  sA   ø€ Ô)9ÙØ "§	¡	× 7Ñ 7¸¿¹Ó EØ "§	¡	× 7Ñ 7¸¿¹Ó Eóó*€ rN   c                 óv   •— t        |«      t        |«      ur"t        j                  ‰j                  dk7  «      S y )Nrþ   )rS   r,   Úcreater  r  s      €rL   Ú	handle_iszRBuiltinVariable._binop_handlers.<locals>.create_cmp_op_handlers.<locals>.handle_isT  s4   ø€ ô ˜D“z¬¨e«Ñ4Ü/×6Ñ6°r·{±{ÀeÑ7KÓLÐLð 5rN   ©rÍ   rB   )r,   r’   Úobjectr  Ú
startswithr>   r=   r5   r/   rð   rD   r   r.   r-   r*   Ú_comparison_with_tensorÚ_comparison_with_symnodeÚappend)rü   rý   Úresultr  r  r	  Útypes_that_are_never_noner  r  r  r  Úcompare_user_definedÚop_varr"  r  rÇ   rÂ   rÅ   rÈ   r@   rA   rÃ   Úhas_set_itemsÚsize_or_tuplerÆ   s   `             @€€€€€€€€€€rL   Úcreate_cmp_op_handlersz?BuiltinVariable._binop_handlers.<locals>.create_cmp_op_handlersÊ  s˜  ú€ õ>ô )Ô*:Ð;Ð=MÐNÐOˆFàÐ3×:Ñ:Ó<Ñ<á ¤£¨4Ó0�Ø—;‘;×)Ñ)¨%Ô0õ=ð #(�KØ"'‘KðAØ3ðAÜ;KõAðAØ3ðAÜ8HõAô #Ü#Ø$Ü$Ø'Ø,Ü%Ø%ð	-Ð)ð —‘ð 7Ô8HÐIØ'ðô
 .Ð/HÐIØ'ðð	ôõJõJõMõOð �{‰{×%Ñ% eÔ,Ø'7Ñ$à'9Ð$ä$ RÓ(ˆFØ�M‰Mð 2´?ÐCØ1´?ÐCðó Jðð -Ø,ðóðð $ ]Ð3Ð5IÐJä"×3Ñ3´Y×5OÑ5OÐPØ*ðð $ ]Ð3Ð5FÐGà2Ð4MÐNØ,ðð
 2Ð3KÐLØ,ðô ,¬]Ô<LÐMÜ+¬]Ô<LÐMðð )ðô (¬Ð9Ø×6Ñ6ðô
 )¬.Ð9Ø×6Ñ6ðô
 )¬/Ð:Ø×7Ñ7ðô
 )¬/Ð:Ø×7Ñ7ððk9ô;ðz �{‰{×%Ñ% eÔ,õMð —‘¤´ÐAÀ9ÐMÔNàˆMrN   r#  )$ÚdictsrÁ   r4   Ú	functionsrÂ   rÃ   Ú	nn_modulerÅ   r�   rÆ   ÚtorchrÇ   Úuser_definedrÈ   r@   rA   rD   r¿   rß   r(  r*   r=   r8   r:   r,   r7   r5   r6   rn   ry   rð   rˆ   rt   r<   r’   r^   )rÁ   r4   Úop_handlersrü   Úmagic_method_namesÚin_place_oprÉ   rÊ   Úinplace_namerÐ   rÓ   rÝ   râ   rä   Úlist_like_addition_handlersrò   Úlist_like_iadd_handlersrø   Úlist_like_expansion_handlersr/  rÇ   rÂ   rÅ   rÈ   r@   rA   rÃ   r-  r.  rÆ   s                       @@@@@@@@@@rL   Ú_binop_handlerszBuiltinVariable._binop_handlers  s•  ÿù€ ÷ 	1ßMÝ/Ý:Ý,÷	
ñ 	
ð ˆô ×$Ñ$Ó&×,Ñ,Ó.óP	ñ 
ØÙ-Ð à ˆK˜‰OØ')ˆK˜Ñ$à7IÑ4ˆL˜,¨ð *Ø)öDð6 ˜‰O×"Ñ"Ø%¤Ð7Ð9MÐNôð ˜‰O×"Ñ"Ü!Ð#6Ð7Ð9MÐNôð
 DPñ@Ø+ó@ð
 ˜Ñ$×+Ñ+Ø%¤Ð7Ð9UÐVôð ˜Ñ$×+Ñ+Ü!Ð#6Ð7Ð9UÐVôð
 JLõ ð ˜‰O×"Ñ"Ü!¤?Ð3°_ÐEôð ˜‰O×"Ñ"Ü!¤?Ð3°_ÐEôð
 ˜Ñ$×+Ñ+Ü!¤?Ð3°_ÐEôð ˜Ñ$×+Ñ+Ü!¤?Ð3°_ÐEöð]P	ój	Ió	Hô œ|Ð,Ø ðô
 ¤Ð.Ø!ðô
 Ô 0Ð1Ø!ðô
 "¤=Ð1ñðô !Ü%Ô'7Ô9MÐNðñðô "Ô#3Ð4Ù>ðð?#'
Ð#ðH 	”H—L‘LÑ!×(Ñ(Ð)DÔEó	ô œÐ/Ø!ðô
 ¤Ð.Ø!ðô
 Ô 0Ð1Ø!ðð#
Ðð 	”H—M‘MÑ"×)Ñ)Ð*AÔBó	ô Ô,Ð-Ð/?Ð@ÜÔ-Ð.Ð0@ÐAÜ¤Ð-Ð/?Ð@Ü¤Ð.Ð0@ÐAð	(
Ð$ð 	”H—L‘LÑ!×(Ñ(Ð)EÔFä%¤}Ð5ˆØ$ hÐ/ˆ÷R	õ R	ôh +×1Ñ1Ó3ò 	9ˆBÜ˜B”<Ð�<Ø˜[Ñ(Ð(Ð(Ù4°RÓ8ˆK˜ŠOð	9ð
 ÐrN   c                 óÆ   — t         j                  «       j                  | «      }|€y g }|D ]3  \  \  }}}t        ||«      sŒt        ||«      sŒ#|j	                  |«       Œ5 |S rQ   )rD   r<  ÚgetÚ
issubclassr(  )rü   Úa_typeÚb_typeÚhandlersÚmatchesÚtype1Útype2Úhandlers           rL   Ú_find_binop_handlerz#BuiltinVariable._find_binop_handlere  sg   € ä"×2Ñ2Ó4×8Ñ8¸Ó<ˆØÐØàˆØ'/ò 	(Ñ#‰NˆU�E˜GÜ˜& %Õ(¬Z¸ÀÕ-FØ—‘˜wÕ'ð	(ð ˆrN   c                 ó:   — | j                   | j                  «       v S rQ   )rE   r¢   r—   s    rL   Úcan_insert_in_graphz#BuiltinVariable.can_insert_in_graphq  s   € Ø�w‰w˜$×2Ñ2Ó4Ð4Ð4rN   Úreturnc                 ó2   •— t        ‰| �  di |¤Ž || _        y )N© )ÚsuperÚ__init__rE   )r˜   rE   Úkwargsrô   s      €rL   rN  zBuiltinVariable.__init__t  s   ø€ Ü‰ÑÑ"˜6Ò"Øˆ�rN   c                 ó„   — | j                   €d}n| j                   j                  }| j                  j                  › d|› d�S )NÚNoner  r  )rE   r  rô   )r˜   Únames     rL   Ú__str__zBuiltinVariable.__str__x  s=   € Ø�7‰7ˆ?Ø‰Dà—7‘7×#Ñ#ˆDà—.‘.×)Ñ)Ð*¨!¨D¨6°Ð3Ð3rN   c                 ó   — | j                   S rQ   rÔ   r—   s    rL   rõ   z"BuiltinVariable.as_python_constant€  s   € Ø�w‰wˆrN   c                 óÖ   •— t         t        j                   t        t        j                  t        t        j
                  i}| j                  |v r|| j                     S t        ‰| �!  «       S rQ   )	r]   r3  rc   Úint64ra   Úfloat64rE   rM  Úas_proxy)r˜   ÚDTYPErô   s     €rL   rX  zBuiltinVariable.as_proxyƒ  sO   ø€ ä”%—*‘*Ü”—‘Ü”5—=‘=ð
ˆð
 �7‰7�eÑØ˜Ÿ™‘>Ð!Ü‰wÑÓ!Ð!rN   c                 óê   — | j                   j                  }| j                   j                  dk(  sJ ‚||j                  j                  vsJ d«       ‚|j                  |j                  |dd¬«      «       y )NÚbuiltinszshadowed globalFT)ry   )rE   r  Ú
__module__rÍ   Ú	f_globalsÚappend_outputÚcreate_load_global)r˜   ÚcodegenrR  s      rL   ÚreconstructzBuiltinVariable.reconstruct�  sg   € Ø�w‰w×ÑˆØ�w‰w×!Ñ! ZÒ/Ð/Ð/Ø˜7Ÿ:™:×/Ñ/Ñ/ÐBÐ1BÓBÐ/Ø×Ñ˜g×8Ñ8¸¸uÈ$Ð8ÓOÕPrN   c                 ó   — t        ||«      S rQ   )r   ©r˜   ÚargsrO  s      rL   Úconstant_argszBuiltinVariable.constant_args“  s   € Ü" 4¨Ó0Ð0rN   c                 óŒ   — d}|D ]<  }t        |t        j                  «      r y|xs t        |t        j                  «      }Œ> |S ©NF)rR   r   ÚGetAttrVariabler>   )r˜   rd  Ú
any_tensorÚargs       rL   Útensor_argszBuiltinVariable.tensor_args–  sJ   € Øˆ
Øò 	QˆCÜ˜#œy×8Ñ8Ô9ÙØ#ÒP¤z°#´y×7OÑ7OÓ'P‰Jð	Qð ÐrN   c                 óŒ   — d}|D ]<  }t        |t        j                  «      r y|xs t        |t        j                  «      }Œ> |S rg  )r?  r   rh  r>   )r˜   Ú	arg_typesri  Úarg_types       rL   Útensor_args_typez BuiltinVariable.tensor_args_typež  sJ   € Øˆ
Ø!ò 	VˆHÜ˜(¤I×$=Ñ$=Ô>ÙØ#ÒU¤z°(¼I×<TÑ<TÓ'U‰Jð	Vð ÐrN   c                 ó  — g }g }t        j                  ||j                  «       «      D ]?  }t        |t        j
                  «      r|j                  |«       Œ/|j                  |«       ŒA t        d„ |D «       «      xr  | j                  |Ž S )Nc              3   ób   K  — | ]'  }|j                   �t        |j                   «      nd–— Œ) y ­wrg  )rG   r   )rW   Úts     rL   rY   zBBuiltinVariable.python_and_tensor_constant_only.<locals>.<genexpr>®  s0   è ø€ ò 
àð -.¯H©HÐ,@Ô˜qŸx™xÔ(ÀeÓKñ
ùs   ‚-/)	Ú	itertoolsÚchainr’   rR   r   r>   r(  r[   re  )r˜   rd  rO  rk  Únon_tensor_argsÚis         rL   Úpython_and_tensor_constant_onlyz/BuiltinVariable.python_and_tensor_constant_only¦  s‹   € ØˆØˆÜ—‘  v§}¡}£Ó7ò 	*ˆAÜ˜!œY×5Ñ5Ô6Ø×"Ñ" 1Õ%à×&Ñ& qÕ)ð		*ô
 ñ 
à ô
ó 
ò 3ð !ˆd× Ñ  /Ð2ð	3rN   c                 ó¸   — | D �cg c]  }|j                  «       ‘Œ c}|j                  «       D ��ci c]  \  }}||j                  «       “Œ c}}fS c c}w c c}}w rQ   )rõ   rß   )rd  rO  rX   ÚkÚvs        rL   Úunwrap_unspec_args_kwargsz)BuiltinVariable.unwrap_unspec_args_kwargs³  sV   € à04Ö5¨1�×$Ñ$Õ&Ò5Ø28·,±,³.÷8
Ù*.¨!¨QˆAˆq×#Ñ#Ó%Ñ%ó8
ð 
ð 	
ùÒ5ùó 8
s
   …A±Ac                 ó>   — | j                  «       xr t        ||«      S rQ   )r™   r   rc  s      rL   Úhas_constant_handlerz$BuiltinVariable.has_constant_handler¹  s%   € Ø×-Ñ-Ó/ò 
Ô4QØ�&ó5
ð 	
rN   rm  Ú
has_kwargsc                 ó8  ‡ ‡	‡
‡‡‡‡‡‡‡— ddl m} ddlmŠ	 t	        ‰ «      Šg Št        ˆ	fd„|D «       «      rˆfd„S t        j                  ‰ «      rt        ‰ t        «      r
	 	 dˆ fd„}|S ‰j                  «       ri‰ t        j                  u rt        |d   t        j                  «      r:‰j                  |«      r‰j                   S |r‰j#                  ‰j                   «       t%        |«      dk(  rY|sWt	        j&                  ‰ g|¢­Ž Š‰sn>t%        ‰«      dk(  r‰\  Š
‰j#                  ˆ
fd	„«       ndˆfd
„}‰j#                  |«       t)        ‰d‰ j*                  › �d «      Š‰rdˆˆfd„}‰j#                  |«       ‰j-                  «       r@|j.                  Št1        d„ |D «       «      r
|sdˆˆ fd„}ndˆˆ fd„}‰j#                  |«       d‰ j*                  › d|› d|› �Št%        ‰«      dk(  rˆfd„S t%        ‰«      dk(  r‰\  Šdˆˆfd„}|S dˆˆfd„}|S )Nr(   ©ÚSourcelessBuilder)ÚLazyVariableTrackerc              3   ó6   •K  — | ]  }t        |‰«      –— Œ y ­wrQ   )r?  )rW   rr  r‚  s     €rL   rY   z0BuiltinVariable._make_handler.<locals>.<genexpr>Æ  s   øè ø€ ÒE°aŒz˜!Ð0×1ÑEùs   ƒc                 ól   •— ‰j                  | |D �cg c]  }|j                  «       ‘Œ c}|«      S c c}w rQ   )rÙ   Úrealize)rÍ   rd  rO  rz  Úobjs       €rL   ræ   z/BuiltinVariable._make_handler.<locals>.<lambda>Ç  s-   ø€ ¨C×,=Ñ,=Ø¨$Ö/ Q�Q—Y‘Y•[Ò/°ó-€ ùÚ/s   ’1
c                 ó|   •— ‰t         u rt        d„ |D «       «      st        d«       t        j                  ‰|fi |¤ŽS )Nc              3   óˆ   K  — | ]:  }t        |t        j                  «      xr t        |j                  t        «      –— Œ< y ­wrQ   )rR   r   r,   rK   rk   rV   s     rL   rY   zWBuiltinVariable._make_handler.<locals>.create_exception_class_object.<locals>.<genexpr>Ð  s?   è ø€ ò 4ð ô ˜q¤)×"<Ñ"<Ó=ò 1Ü" 1§7¡7¬CÓ0ó1ñ4ùs   ‚A Azassert with non-string message)ÚAssertionErrorr[   r   r   ÚExceptionVariable)rÍ   rd  rO  rE   s      €rL   Úcreate_exception_class_objectzDBuiltinVariable._make_handler.<locals>.create_exception_class_objectÍ  sF   ø€ ð œÑ'´ñ 4ð "ô4ô 1ô
 "Ð"BÔCä ×2Ñ2°2°tÑF¸vÑFÐFrN   r   r   c                 ó   •—  ‰| g|¢­Ž S rQ   rL  )rÍ   rd  Ú_Úbinop_handlers      €rL   ræ   z/BuiltinVariable._make_handler.<locals>.<lambda>î  s   ø€ ±MÀ"Ð4LÀtÒ4L€ rN   c                 ó2   •— ‰D ]  } || g|¢­Ž }|sŒ|c S  y rQ   rL  )rÍ   rd  r�  rE   ÚrvÚbinop_handlerss        €rL   Úcall_binop_handlersz:BuiltinVariable._make_handler.<locals>.call_binop_handlersñ  s'   ø€ Ø,ò &˜Ù ˜] Tš]˜ÚØ#%šIñ&rN   Úcall_c           
      ó¼  •— 	  ‰| g|¢­i |¤Ž}|�|S y # t         $ rˆ 	  t        j                  ‰«      j                  | g|¢­i |¤Ž ‚ # t         $ rP}‰j	                  ||«      }|s1t
        j                  d‰|«       t        d‰› d|› d|› �«       Y d }~Y y Y d }~Y y d }~ww xY wt        $ r/}‰j	                  ||«      }|s‚ |j                  «        Y d }~y d }~ww xY w)Nz1incorrect arg count %s %s and no constant handlerzinvalid handler args ú )
Ú	TypeErrorÚinspectÚ	signatureÚbindr}  ÚlogÚwarningr   r   Úremove_from_stats)	rÍ   rd  rO  r)  Úer}  Úexcr†  Úself_handlers	          €€rL   Úcall_self_handlerz8BuiltinVariable._make_handler.<locals>.call_self_handlerü  s  ø€ ð,Ù)¨"Ð>¨tÒ>°vÑ>�FØÐ)Ø%˜ð *øä ò ðØ<œ×)Ñ)¨,Ó7×<Ñ<¸RÐQÀ$ÒQÈ&ÒQð øô %ò 
Ø/2×/GÑ/GÈÈfÓ/UÐ,Ù3ÜŸK™KØ SØ ,Ø !ôô
 *Ø"7¸°~ÀQÀtÀfÈAÈfÈXÐ V÷ò õ  4ûð
úô #ò ,Ø+.×+CÑ+CÀDÈ&Ó+QÐ(Ù/Øà×)Ñ)×+Ñ+ûð,úsD   ƒ ”	Cž)AÁCÁ	B!Á?BÂCÂCÂB!Â!CÂ,%CÃCc              3   ó<   K  — | ]  }t        |t        «      –— Œ y ­wrQ   )r?  r,   rV   s     rL   rY   z0BuiltinVariable._make_handler.<locals>.<genexpr>   s   è ø€ ÒG¸”J˜qÔ"2×3ÑGùó   ‚c                 ó¾   •— 	  ‰|D �cg c]  }|j                  «       ‘Œ c}Ž } ‰| «      S c c}w # t        $ r!}t        dt        |«      › �«       Y d }~Œ3d }~ww xY w©Nzconstant fold exception: )rõ   Ú	Exceptionr   ri   )rÍ   rd  rO  rX   Úresrž  rÚ   rE   s         €€rL   Úconstant_fold_handlerz<BuiltinVariable._make_handler.<locals>.constant_fold_handler$  sh   ø€ ðOÙ Ø>BÖC¸˜a×2Ñ2Õ4ÒCð˜ñ
 # 2 sÓ+Ð+ùò	 Døä$ò OÜ%Ð(AÄ$ÀsÃ)ÀÐ&M×NÑNûðOús    ƒ2 ‰- 2 ­2 ²	A»AÁAc                 óJ  •— t        ||«      r^	  ‰	|D �cg c]  }|j                  «       ‘Œ c}i |j                  «       D ��ci c]  \  }}||j                  «       “Œ c}}¤Ž} ‰| «      S y c c}w c c}}w # t        $ r!}t	        dt        |«      › �«       Y d }~Œ:d }~ww xY wr¤  )r   rõ   rß   r¥  r   ri   )
rÍ   rd  rO  rX   ry  rz  r¦  rž  rÚ   rE   s
           €€rL   r§  z<BuiltinVariable._make_handler.<locals>.constant_fold_handler0  s³   ø€ ä4°T¸6ÔBðSÙ"$ØBFÖ!G¸Q !×"6Ñ"6Õ"8Ò!Gð#ð KQÏ,É,Ë.÷#"ÙBFÀ!ÀQ A q×';Ñ';Ó'=Ñ$=ó#"ñ#˜Cñ  ' r¨3Ó/Ð/ð Cùò "Hùó#"øô  )ò SÜ)Ð,EÄdÈ3ÃiÀ[Ð*Q×RÑRûðSús3   �A8 •A-¬A8 ÁA2ÁA8 Á-A8 Á8	B"ÂBÂB"z	builtin: r•  c                  ó   •— t        ‰«      S rQ   ©r   )rd  Ú	error_msgs    €rL   ræ   z/BuiltinVariable._make_handler.<locals>.<lambda>B  s   ø€ ¤¨yÓ!9€ rN   c                 ó8   •—  ‰| ||«      }|r|S t        ‰«       y rQ   rª  )rÍ   rd  rO  r�  r«  rF  s       €€rL   Úbuiltin_dispatchz7BuiltinVariable._make_handler.<locals>.builtin_dispatchF  s!   ø€ Ù˜R  vÓ.�ÙØ�IÜ˜iÕ(rN   c                 óJ   •— ‰D ]  } || ||«      }|sŒ|c S  t        ‰«       y rQ   rª  )rÍ   rd  rO  rE   r�  r«  rB  s        €€rL   r­  z7BuiltinVariable._make_handler.<locals>.builtin_dispatchN  s2   ø€ Ø"ò "�BÙ˜B  fÓ-�BÚØ!š	ð"ô ˜iÕ(rN   r#  )rÚ   r�  Úlazyr‚  rD   r\   r—  Úisclassr?  r¥  rI  rn   r{   r   r>   ro  Ú_handle_insert_op_in_graphr(  rd   rG  rb   r  r™   r!  r[   )rE   rm  r~  r�  r‹  r’  r   r§  r­  r‚  rŽ  r‘  rÚ   r«  rF  rB  r†  rŸ  s   `        @@@@@@@@@rL   Ú_make_handlerzBuiltinVariable._make_handler¾  së  ÿù€ å.Ý-ä˜bÓ!ˆØˆäÓE¸9ÔEÔEóð ô �?‰?˜2Ô¤:¨b´)Ô#<ð
GØ+õ
Gð 1Ð0à×"Ñ"Ô$Ø”(×"Ñ"Ñ"Ü˜y¨™|¬Y×-EÑ-EÔFà×#Ñ# IÔ.Ø×5Ñ5Ð5Ùà—‘ × >Ñ >Ô?ô ˆy‹>˜QÒ¡zä,×@Ñ@ÀÐPÀiÒPˆNÙ!ØÜ�^Ó$¨Ò)Ø#1Ñ �Ø—‘Ó LÕMõ&ð —‘Ð 3Ô4ä˜s e¨B¯K©K¨=Ð$9¸4Ó@ˆÙö,ð< �O‰OÐ-Ô.à×(Ñ(Ô*Ø'×.Ñ.ˆGô ÑG¸YÔGÔGÙ"÷,ö0ð �O‰OÐ1Ô2à §¡˜}¨A¨i¨[¸¸*¸ÐFˆ	Üˆx‹=˜AÒÛ9Ð9Ü�‹]˜aÒØ!‰JˆWö)ð  Ðö)ð  ÐrN   rÍ   rB   c           	      ó„  — ddl m}m} |r# | j                  g |¢|j	                  «       ¢­Ž sy | j
                  }	  | j                  |i |¤Žr(ddlm} ddl	m
}  ||| ||j                  «      ||«      S |t        v r0t        |d   t        j                  «      rt        |   |d   |d   g}}|t         j"                  u rKt        |d   t$        «      r8t&        j(                  |d   t        j                  j+                  d«      |d   g}}t-        ||«      r[t/        d„ |D «       «      sI |j0                  j2                  dt5        |«      gt7        ||«      ¢­Ž }	 |t        j8                  ||	«      S  |j0                  j2                  d|gt7        ||«      ¢­Ž }	t/        d	„ |D «       «      r |t:        ||	«      S t=        ||«      rb| j?                  ||«      \  }
} ||
i |¤Ž}t/        d
„ tA        jB                  ||j	                  «       «      D «       «      } |tD        ||	||¬«      S tG        d„ |D «       «      rt%        j*                  ||	d «      S |t         jH                  u r4t        |d   t        jD                  «      r|d   jK                  |«      |d<    |||	«      S # tL        $ r tO        d| › d|› d|› �«       Y y w xY w)Nr(   )rØ   Úwrap_fx_proxy_clsr   )Ú	unique_id)Úinvoke_and_store_as_constantr   c              3   óT   K  — | ]   }t        |«      t        j                  k(  –— Œ" y ­wrQ   )rS   r   r>   ©rW   rj  s     rL   rY   z=BuiltinVariable._handle_insert_op_in_graph.<locals>.<genexpr>  s&   è ø€ ò BØ:=”�S“	œY×5Ñ5Õ5ñBùs   ‚&(rÙ   c              3   ó<   K  — | ]  }t        |t        «      –— Œ y ­wrQ   ©rR   r;   r¸  s     rL   rY   z=BuiltinVariable._handle_insert_op_in_graph.<locals>.<genexpr>�  s   è ø€ ÒE¸”:˜cÔ#3×4ÑEùr¢  c              3   óh   K  — | ]*  }t        |t        j                  «      r|j                  –— Œ, y ­wrQ   ©rR   r   r?   Úneed_unwraprV   s     rL   rY   z=BuiltinVariable._handle_insert_op_in_graph.<locals>.<genexpr>™  ó,   è ø€ ò "àÜ! !¤Y×%JÑ%JÔKð —M•Mñ"ùó   ‚02)Ú	raw_valuer½  c              3   ó<   K  — | ]  }t        |t        «      –— Œ y ­wrQ   ©rR   r=   rV   s     rL   rY   z=BuiltinVariable._handle_insert_op_in_graph.<locals>.<genexpr>¦  s   è ø€ ÒB¸”Z ¤?×3ÑBùr¢  zpartial tensor op: r•  )(rÚ   rØ   r´  rk  r’   rE   rw  Úbytecode_transformationrµ  r1  r¶  r  ÚIN_PLACE_DESUGARING_MAPrR   r   r,   rn   r{   r=   r3  Úselectr!  r   r\   rÛ   rÜ   r%   r&   ÚNumpyNdarrayVariabler;   r   r{  rs  rt  r?   r[   rw   Úconvert_to_constantÚNotImplementedErrorr   )r˜   rÍ   rd  rO  rØ   r´  rE   rµ  r¶  ÚproxyÚ_argsÚ_kwargsrÀ  r½  s                 rL   r±  z*BuiltinVariable._handle_insert_op_in_graphW  sØ  € ß=áÐ*˜$×*Ñ*ÐC¨DÐC°6·=±=³?ÓCØà�W‰WˆðT	Hà3ˆt×3Ñ3°TÐD¸VÒDÝ?ÝCá3Ø˜™I b§k¡kÓ2°D¸&óð ð Ô,Ñ,´Ø�Q‘œ×3Ñ3ô2ô 3°2Ñ6¸¸a¹À$ÀqÁ'Ð8J�D�à”X×%Ñ%Ñ%¬*°T¸!±W¼oÔ*Nô !Ÿ<™<Ø˜‘GÜ×.Ñ.×5Ñ5°aÓ8Ø˜‘Gð*�D�ô (¨¨fÔ5¼cñ BØAEôBô ?ð /˜Ÿ	™	×.Ñ.Ø#Ü*¨2Ó.ðô ' t¨VÓ4ò�ñ )¬×)GÑ)GÈÈUÓSÐSà*�B—I‘I×*Ñ*ØØðô # 4¨Ó0òˆEô
 ÑEÀÔEÔEÙ(Ü$ØØóð ô
 *¨$°Ô7Ø!%×!?Ñ!?ÀÀfÓ!M‘��wÙ Ð1¨Ñ1�	ä!ñ "ä&Ÿ_™_¨T°6·=±=³?ÓCô"ó �ñ )Ü/ØØØ'Ø +ôð ô ÑB¸TÔBÔBÜ&×-Ñ-¨b°%¸Ó>Ð>ð œ×)Ñ)Ñ)¬jØ˜‘GœY×BÑBô/ð # 1™g×9Ñ9¸"Ó=�D˜‘GÙ$ R¨Ó/Ð/øä"ò 	HÜÐ/°¨v°Q°t°f¸A¸f¸XÐFÖGð	Hús3   »9J Á5C;J Å1AJ Æ9A-J È'(J ÉAJ ÊJ?Ê>J?c           	      óÆ  — |rK|j                  «       D ��ci c]  \  }}||j                  «       “Œ }}}| j                  gd„ |D «       ¢d‘­}n| j                  gd„ |D «       ¢­}| j                  j	                  |«      }|sL| j                  | j                  |D �cg c]  }t        |«      ‘Œ c}t        |«      «      x| j                  |<   } ||||«      S c c}}w c c}w )Nc              3   ó2   K  — | ]  }t        |«      –— Œ y ­wrQ   ©rS   rV   s     rL   rY   z0BuiltinVariable.call_function.<locals>.<genexpr>¾  ó   è ø€ Ò4¨!œd 1ŸgÑ4ùó   ‚Tc              3   ó2   K  — | ]  }t        |«      –— Œ y ­wrQ   rÎ  rV   s     rL   rY   z0BuiltinVariable.call_function.<locals>.<genexpr>À  rÏ  rÐ  )rß   r…  rE   Úcall_function_handler_cacher>  r²  rS   r]   )	r˜   rÍ   rd  rO  ry  rz  ÚkeyrF  rX   s	            rL   rÙ   zBuiltinVariable.call_function¶  sÖ   € ñ Ø17·±³×@©¨¨A�a˜Ÿ™›‘nÐ@ˆFÑ@Ø—7‘7Ð;Ñ4¨tÔ4Ð;°dÑ;‰Cà—7‘7Ð5Ñ4¨tÔ4Ñ5ˆCà×2Ñ2×6Ñ6°sÓ;ˆÙØ>B×>PÑ>PØ—‘¨4Ö0 aœ$˜q�'Ò0´$°v³,ó?ð ˆD×,Ñ,¨SÑ1°Gñ �r˜4 Ó(Ð(ùó Aùò 1s   –CÂC
c                 óš  •— | j                   t        u r“|dk(  rŽt        |«      dk(  sJ ‚t        |«      dk(  sJ ‚|\  }}}|j                  «       }t	        |t
        «      rH|j                  j                  j                  |«      r#|j                  «       r|j                  |||«      S | j                   t        u rM|dk(  rHt        |«      dk(  sJ ‚t        |«      dk(  sJ ‚|j                  j                  j                  |d   «      S | j                   t        u r#|dk(  rt        j                  |t        g|¢­i |¤ŽS t        ‰| �A  ||||«      S )NÚ__setattr__é   r   Ú__new__r(   Úfromkeys)rE   r$  rd   r…  rR   r@   rÛ   rî   Úis_attribute_mutationÚis_python_constantÚmethod_setattr_standardÚ(track_object_new_from_user_defined_classÚdictrD   Úcall_custom_dict_fromkeysrM  rÌ   )	r˜   rÍ   rR  rd  rO  r†  Úname_varÚvalrô   s	           €rL   rÌ   zBuiltinVariable.call_methodÉ  s6  ø€ ð �7‰7”fÑ ¨Ò!6Ü�t“9 ’>Ð!�>Ü�v“; !Ò#Ð#Ð#Ø!%ÑˆC�˜3Ø—+‘+“-ˆCä˜3Ô 9Ô:Ø—I‘I×*Ñ*×@Ñ@ÀÔEØ×/Ñ/Ô1à×2Ñ2°2°xÀÓEÐEØ�7‰7”fÑ ¨Ò!2Ü�t“9 ’>Ð!�>Ü�v“; !Ò#Ð#Ð#Ø—9‘9×)Ñ)×RÑRØ�Q‘óð ð �7‰7”d‰?˜t zÒ1Ü"×<Ñ<¸RÄÐWÈÒWÐPVÑWÐWÜ‰wÑ" 2 t¨T°6Ó:Ð:rN   c           	      óX  — t        |t        t        j                  f«      rŠt        |t        j                  «      r|j	                  |dg i «      }n|}| j
                  t        u rt        nt        }ddl	m
}  |||j                  j                  d||j                  «       fi «      ¬«      S y )NÚitemr   r×   rÙ   ©rÍ   rÉ  )rR   r=   r   r>   rÌ   rE   rc   r
   r	   Útorch._dynamo.variables.builderrØ   rÛ   rÜ   rX  )r˜   rÍ   rj  râ  Úfn_rØ   s         rL   Ú_call_int_floatzBuiltinVariable._call_int_floatå  s“   € ô �cœO¬Y×-EÑ-EÐFÔGÜ˜#œy×7Ñ7Ô8Ø—‘ r¨6°2°rÓ:‘à�Ø!ŸW™W¬™^•'´ˆCÝEá ØØ—i‘i×,Ñ,Ø#ØØ—]‘]“_Ð&Øó	ôð ð HrN   c                 ó„  — t        |t        j                  «      r3t        j                  j	                  t        |j                  «      ¬«      S t        |t        j                  «      �rt        |j                  d«      r|j                  j                  }n8t        |j                  d«      r|j                  j                  }nt        d«       t        |j                  «      j                  t        j                  u r&	 t        j                  j	                   «       ¬«      S t!        «      r"t        t        |j                  «      › d�«       y |j"                  }	 t        j                  |«      }|j+                  ||gi «      S y # t        $ r Y y w xY w# t$        $ r }t&        j)                  d|«       Y d }~y d }~ww xY w)N©rK   rS  Ú__repr__z5user defined object has no __str__ or __repr__ methodz has a C/C++ based str methodz)Failed to create UserFunctionVariable: %s)rR   r   rÃ   r,   r!  rk   rE   r@   ÚhasattrrK   rS  ré  r   rS   r$  ÚAttributeErrorr#   Ú__func__r‰  rš  r›  Úinline_user_function_return)r˜   rÍ   rj  Ú
str_methodÚbound_methodÚuser_func_variabler�  s          rL   Úcall_strzBuiltinVariable.call_strý  sa  € ä�cœI×:Ñ:Ô<Ü×-Ñ-×4Ñ4¼3¸s¿v¹v»;Ð4ÓGÐGÜ˜œi×AÑAÕCä�s—y‘y )Ô,Ø ŸY™Y×.Ñ.‘
Ü˜Ÿ™ JÔ/à ŸY™Y×/Ñ/‘
äÐUÔVä�C—I‘I‹×&Ñ&¬&¯.©.Ñ8ðÜ$×5Ñ5×<Ñ<Á:Ã<Ð<ÓPÐPô 1°Ô<Ü¤ c§i¡i£Ð 1Ð1NÐOÕPð  *×2Ñ2�ðä)2×)GÑ)GÈÓ)UÐ&ð ×5Ñ5Ð6HÈ3È%ÐQSÓTÐTðC Døô &ò áðûô &ò ä—K‘KÐ KÈQÔOÜûðús*   Ã>$F ÅF Æ	FÆFÆ	F?ÆF:Æ:F?c                 ó"  — t        |«      dk(  r:|d   j                  |«      r&|d   j                  |«      }| j                  ||«      S t        |«      dk(  r| j	                  ||d   |d   «      S t        |«      dkD  r| j                  ||«      S y )Nr(   r   r   )rd   Úhas_force_unpack_var_sequenceÚforce_unpack_var_sequenceÚ_call_min_max_seqÚ_call_min_max_binary)r˜   rÍ   rd  rß   s       rL   Ú_call_min_maxzBuiltinVariable._call_min_max$  s�   € Üˆt‹9˜Š>˜d 1™g×CÑCÀBÔGØ˜‘G×5Ñ5°bÓ9ˆEØ×)Ñ)¨"¨eÓ4Ð4Ü�‹Y˜!Š^Ø×,Ñ,¨R°°a±¸$¸q¹'ÓBÐBÜ�‹Y˜Š]Ø×)Ñ)¨"¨dÓ3Ð3ð rN   c                 ó°   — t        |«      dkD  sJ ‚t        |«      dk(  r|d   S t        j                  t        j                  | j                  |«      |«      S ©Nr   r(   )rd   Ú	functoolsÚreduceÚpartialrö  )r˜   rÍ   rß   s      rL   rõ  z!BuiltinVariable._call_min_max_seq-  sM   € Ü�5‹z˜AŠ~Ðˆ~Üˆu‹:˜Š?Ø˜‘8ˆOä×Ñ¤	× 1Ñ 1°$×2KÑ2KÈRÓ PÐRWÓXÐXrN   c                 óÌ  — |�|€y | j                  ||«      �r9t        |t        j                  «      s||}}t        |t        j                  «      sJ ‚t        |t        «      r5t        j
                  t        j                  «      j                  ||gi «      }t        |t        «      st        |t        «      rLddl
m}  |t        |«      | |j                  j                  d| j                  gt!        ||gi «      ¢­Ž ¬«      S |j#                  «       r�t        |t        j$                  «      r$dd l}t        j(                  |j*                  «      }n#t        j
                  t        j,                  «      }| j                  t.        u rd|ind|i}|j                  ||g|«      }nÄt        |t        j$                  «      rIdd l}t.        |j0                  t2        |j4                  i| j                     }t        j(                  |«      }nLt.        t        j0                  t2        t        j4                  i| j                     }t        j
                  |«      }|j                  |||gi «      }t7        d„ ||fD «       «      rÔt9        d	„ ||fD «       «      rt        j                  j;                  |«      S |j#                  «       r|j=                  «       }	n|j>                  }	| j                  t.        u rt/        |j>                  |	«      }
nt3        |j>                  |	«      }
t9        d
„ ||fD «       «      }t        j@                  j;                  ||
|«      S |S t        |t        «      st        |t        «      rs| j                  t.        u rt        jB                  nt        jD                  } |j                  j                  d|gt!        ||gi «      ¢­Ž }t        jF                  ||d «      S y )Nr(   ©r´  rÙ   rã  r   rf   re   c              3   óp   K  — | ].  }t        |t        j                  t        j                  f«      –— Œ0 y ­wrQ   )rR   r   r?   r,   )rW   rv  s     rL   rY   z7BuiltinVariable._call_min_max_binary.<locals>.<genexpr>h  s9   è ø€ ò 	ð ô Øä!×=Ñ=Ü!×2Ñ2ð÷ñ	ùs   ‚46c              3   ó<   K  — | ]  }t        |t        «      –— Œ y ­wrQ   rº  )rW   rà  s     rL   rY   z7BuiltinVariable._call_min_max_binary.<locals>.<genexpr>r  s   è ø€ ÒK¸S”z #Ô'7×8ÑKùr¢  c              3   óh   K  — | ]*  }t        |t        j                  «      r|j                  –— Œ, y ­wrQ   r¼  rV   s     rL   rY   z7BuiltinVariable._call_min_max_binary.<locals>.<genexpr>~  r¾  r¿  )$rk  rR   r   r>   r;   ÚTorchInGraphFunctionVariabler3  r�   rÙ   r=   rÚ   r´  rS   rÛ   rÜ   rE   r&   rÚ  rÆ  ÚnumpyÚNumpyVariableÚclipÚclampre   Úmaximumrf   Úminimumr[   r\   Úfrom_tensor_variablerõ   rÀ  r?   Úsym_maxÚsym_minr!  )r˜   rÍ   rÎ   rÏ   r´  ÚnprE   rO  r)  Úraw_bÚraw_resr½  rÉ  s                rL   rö  z$BuiltinVariable._call_min_max_binary4  s8  € Øˆ9˜˜	ð Ø×Ñ˜A˜qÕ!Ü˜a¤×!9Ñ!9Ô:Ø˜!�1�Ü˜a¤×!9Ñ!9Ô:Ð:Ð:ô ˜!Ô-Ô.Ü×:Ñ:¼5¿<¹<ÓH×VÑVØ˜˜˜Ró�ô
 ˜!œ_Ô-´¸A¼Ô1OÝ6á(Ü˜“GØØ0˜"Ÿ)™)×0Ñ0Ø'ØŸ™ðô +¨A¨q¨6°2Ó6òôð ð ×#Ñ#Ô%Ü˜a¤×!?Ñ!?Ô@Û&ä"×0Ñ0°·±Ó9‘Bä"×?Ñ?ÄÇÁÓL�BØ(,¯©´3©˜% ™¸eÀQ¸Z�Ø×)Ñ)¨"¨q¨c°6Ó:‘ä˜a¤×!?Ñ!?Ô@Û&ä˜rŸz™z¬3°·
±
Ð;¸D¿G¹GÑD�BÜ"×0Ñ0°Ó4‘BäœuŸ}™}¬c´5·=±=ÐAÀ$Ç'Á'ÑJ�BÜ"×?Ñ?ÀÓC�BØ×)Ñ)¨"¨q°!¨f°bÓ9�ô ñ 	ð ˜Q˜ô	ô 	ô ÑKÀQÈÀFÔKÔKÜ$×5Ñ5×JÑJÈ6ÓRÐRà×'Ñ'Ô)Ø×0Ñ0Ó2‘EàŸK™K�EØ—7‘7œc‘>Ü! !§+¡+¨uÓ5‘Gä! !§+¡+¨uÓ5�Gä!ñ "à ˜Vô"ó �ô
 !×<Ñ<×QÑQØ˜G [óð ð
 �Ü˜œ?Ô+¬z¸!¼_Ô/MØ"&§'¡'¬S¡.”—’´e·m±mˆBØ*�B—I‘I×*Ñ*Ø ðÜ&7¸¸A¸ÀÓ&CòˆEô #×)Ñ)¨"¨e°TÓ:Ð:ð 0NrN   rj  c                 ó’   — t        t        «      j                  ||t        j                  d«      gi «      }|j                  |g i «      S )NÚ__abs__©rD   rb   rÙ   r,   r!  )r˜   rÍ   rj  Ú
abs_methods       rL   Úcall_abszBuiltinVariable.call_abs“  óF   € ä$¤WÓ-×;Ñ;Ø�Ô&×-Ñ-¨iÓ8Ð9¸2ó
ˆ
ð ×'Ñ'¨¨B°Ó3Ð3rN   c                 ó’   — t        t        «      j                  ||t        j                  d«      gi «      }|j                  |g i «      S )NÚ__pos__r  )r˜   rÍ   rj  Ú
pos_methods       rL   Úcall_poszBuiltinVariable.call_posš  r  rN   c                 óÊ   — t        |t        j                  «      rt        d«       t	        |«      }t        j                  |«      }t        j                  j                  |«      S )Nzunsupported index(tensor))	rR   r   r>   r   r"   rn   r�   r,   r!  )r˜   rÍ   rj  Úconstant_values       rL   Ú
call_indexzBuiltinVariable.call_index¡  sJ   € Ü�cœ9×3Ñ3Ô4ÜÐ5Ô6ä˜3ÓˆÜ!Ÿ™¨Ó,ˆÜ×)Ñ)×0Ñ0°Ó@Ð@rN   c                 ó’   — t        t        «      j                  ||t        j                  d«      gi «      }|j                  |||«      S )NÚ	__round__r  )r˜   rÍ   rj  rd  rO  Úround_methods         rL   Ú
call_roundzBuiltinVariable.call_round©  sF   € ä&¤wÓ/×=Ñ=Ø�Ô&×-Ñ-¨kÓ:Ð;¸Ró
ˆð ×)Ñ)¨"¨d°FÓ;Ð;rN   c                 ó  — t        |i «      rt        j                  |«      S  | j                  |Ž rJ|D �cg c]*  }t        j                  j                  t        |«      «      ‘Œ, }}t        j                  |«      S y c c}w rQ   )r   r   ÚRangeVariableÚ_dynamic_argsr,   r!  r"   )r˜   rÍ   rd  rj  s       rL   Ú
call_rangezBuiltinVariable.call_range°  sx   € Ü(¨¨rÔ2Ü×*Ñ*¨4Ó0Ð0ØˆT×Ñ Ñ&àPTöØIL”	×*Ñ*×1Ñ1´,¸sÓ2CÕDðˆDð ô ×*Ñ*¨4Ó0Ð0àùòs   µ/A<c                 ój   — t        d„ |D «       «      xs  t        d„ |j                  «       D «       «      S )Nc              3   ó<   K  — | ]  }t        |t        «      –— Œ y ­wrQ   rÂ  rV   s     rL   rY   z0BuiltinVariable._dynamic_args.<locals>.<genexpr>¼  s   è ø€ Ò@°a”:˜a¤×1Ñ@ùr¢  c              3   ó<   K  — | ]  }t        |t        «      –— Œ y ­wrQ   rÂ  rV   s     rL   rY   z0BuiltinVariable._dynamic_args.<locals>.<genexpr>¼  s   è ø€ ò H
Ø/0ŒJ�qœ/×*ñH
ùr¢  )r\   r’   rc  s      rL   r"  zBuiltinVariable._dynamic_args»  s7   € ÜÑ@¸4Ô@Ó@ò 
ÄCñ H
Ø4:·M±M³OôH
ó E
ð 	
rN   c                 ó,   — t        j                  |«      S rQ   )r   ÚSliceVariable)r˜   rÍ   rd  s      rL   Ú
call_slicezBuiltinVariable.call_sliceÀ  s   € Ü×&Ñ& tÓ,Ð,rN   c           
      ó€   — ddl m}  || |j                  j                  d| j                  gt        ||«      ¢­Ž «      S rÖ   )rÚ   rØ   rÛ   rÜ   rE   r&   )r˜   rÍ   rd  rO  rØ   s        rL   Ú
_dyn_proxyzBuiltinVariable._dyn_proxyÃ  sA   € Ý*áØØ"ˆB�I‰I×"Ñ"Ø §¡ðÜ+<¸TÀ6Ó+Jòó
ð 	
rN   c                 ó~  — t        |t        j                  «      rJ ‚ | j                  |i |¤Žr | j                  |g|¢­i |¤ŽS t        j
                  j                  | j                  «      }|€ |g t        «       ¬«      S |j                  |«      �r*|j                  rôt        |j                  «      sßt        |t        «      r3t        |j                  j                  t        j                   «      «       nœt#        |dd«      r]t        |t$        «      rMt'        |t(        «      s=|j*                  j,                  j/                  |j                  j1                  «       «       t        |j                  j                  t        j2                  «      «        |t5        |j7                  |«      «      t        «       ¬«      S y )Nré   rG   F)rR   r   ÚIteratorVariabler"  r+  r5   Úcls_forrE   r)   rí   rG   r   r9   r   rH   r   ÚTUPLE_ITERATOR_LENrb   r/   r$   r4   rÛ   Úguard_on_key_orderry   rR  ÚSEQUENCE_LENGTHÚlistrà   ©r˜   rÍ   r†  rd  rO  rJ   s         rL   Ú_call_iter_tuple_listz%BuiltinVariable._call_iter_tuple_listÎ  sY  € ô ˜c¤9×#=Ñ#=Ô>Ð>Ð>àˆ4×Ñ˜tÐ. vÒ.Ø"�4—?‘? 2Ð7¨Ò7°Ñ7Ð7ä×(Ñ(×0Ñ0°·±Ó9ˆØˆ;ÙØÜ*›nôð ð ×(Ñ(¨Õ,Ø�zŠzÔ"4°S·Z±ZÔ"@Ü˜cÔ#8Ô9Ü!ØŸ
™
×-Ñ-¬l×.MÑ.MÓNõô
    X¨uÔ5Ü& sÔ,=Ô>Ü & s¬KÔ 8àŸ	™	×4Ñ4×8Ñ8¸¿¹¿¹Ó9JÔKä! #§*¡*×"7Ñ"7¼×8TÑ8TÓ"UÔVáÜ�S×,Ñ,¨RÓ0Ó1Ü*›nôð ð! -rN   c                 ó
  — t        |t        j                  «      rSt        j                  j	                  | j
                  «      } |t        |j                  |«      «      t        «       ¬«      S  | j                  ||g|¢­i |¤ŽS rè   )
rR   r   r-  r5   r.  rE   r2  rô  r)   r4  r3  s         rL   Ú_call_tuple_listz BuiltinVariable._call_tuple_listñ  sr   € Ü�cœ9×5Ñ5Ô6Ü×,Ñ,×4Ñ4°T·W±WÓ=ˆCÙÜ�S×2Ñ2°2Ó6Ó7Ü*›nôð ð
 .�4×-Ñ-¨b°#ÐG¸ÒGÀÑGÐGrN   c                 óš   — t        |t        j                  «      r|}n | j                  ||g|¢­i |¤Ž}|€|j	                  |d||«      S |S )NÚ__iter__)rR   r   r-  r4  rÌ   )r˜   rÍ   r†  rd  rO  Úrets         rL   Ú	call_iterzBuiltinVariable.call_iterû  sX   € Ü�cœ9×5Ñ5Ô6Ø‰Cð -�$×,Ñ,¨R°ÐF°tÒF¸vÑFˆCàˆ;ð —?‘? 2 z°4¸Ó@Ð@Øˆ
rN   c           	      óª  — ddl m} ddlm} t	        |t
        j                  ||f«      rt
        j                  j                  d«      S t	        |t        «      r2t
        j                  j                  t        |j                  «      «      S t	        |t        t        t        t        t        t         f«      rt
        j                  j                  d«      S y )Nr(   )rÂ   rÄ   TF)r1  rÂ   r2  rÅ   rR   r   rÈ   r,   r!  rA   r^   rK   r=   r>   r7   r:   r6   )r˜   rÍ   rj  rÂ   rÅ   s        rL   Úcall_callablezBuiltinVariable.call_callable  s«   € Ý7Ý/äØä×2Ñ2Ø(Ø ðô
ô ×-Ñ-×4Ñ4°TÓ:Ð:Ü˜Ô0Ô1Ü×-Ñ-×4Ñ4´X¸c¿i¹iÓ5HÓIÐIÜØä ÜÜÜÜÜ$ðô

ô ×-Ñ-×4Ñ4°UÓ;Ð;ð

rN   c                 óL   — t        |«      dk(  r|d   S t        d|› d|› �«       y )Nr   r(   z$unsupported args to builtin cast(): r•  )rd   r   )r˜   r�  rd  rO  s       rL   Ú	call_castzBuiltinVariable.call_cast(  s,   € Üˆt‹9˜Š>Ø˜‘7ˆNäÐ<¸T¸FÀ!ÀFÀ8ÐLÕMrN   c                 ó>   — t        j                  |t        g|¢­i |¤ŽS rQ   )rD   Úcall_custom_dictrÝ  ©r˜   rÍ   rd  rO  s       rL   Ú	call_dictzBuiltinVariable.call_dict.  s   € Ü×/Ñ/°´DÐJ¸4ÒJÀ6ÑJÐJrN   c                 ó8  ‡ — ddl m} |�s|si f}t        |«      dk(  sJ ‚|d   }t        |t        «      rt        ||t        «       ¬«      S t        |t        j
                  «      r|j                  |t        «       ¬«      S t        |t        t        t        t        j                  f«      r9t	        ˆ fd„|j                  ‰ «      D «       «      }t        ||t        «       ¬«      S t        |t        j                  «      �rzt        t!        |j"                  «      «      rx‰ j$                  j&                  j)                  |«      rt+        |j,                  › d|› d|› d	�«       t	        |j"                  j/                  «       «      }|j1                  ‰ |«      S |j3                  ‰ d
«      }t        |t        j4                  «      st+        |j,                  › d|› d|› �«       ‰ j7                  |||«      }	t        |	t
        «      r|	S t9        |«      j;                  ‰ ||	«      S |sX|rV|j/                  «       D �
�ci c]  \  }
}t=        j0                  |
«      |“Œ }}
}t        j
                  ||t        «       ¬«      S t+        |j,                  › d|› d|› �«       y c c}}
w )Nr(   r€  r   ré   )Úuser_clsrê   c              3   ó@   •K  — | ]  }|j                  ‰«      –— Œ y ­wrQ   )rô  )rW   rX   rÍ   s     €rL   rY   z3BuiltinVariable.call_custom_dict.<locals>.<genexpr>G  s$   øè ø€ ò àð ×/Ñ/°×3ñùs   ƒz
.items(): r•  z - object is mutatedrß   z(): )rÚ   r�  rd   rR   rÝ  r/   r)   r   Úcloner7   r:   r6   r-  rô  ÚMutableMappingVariabler   rS   rK   rÛ   rî   Úhas_pending_mutationr   r  rß   r!  Úvar_getattrrÃ   rí  rD   r@  r,   )rÍ   rD  rd  rO  r�  rj  rß   Únew_dictÚfunc_varÚoutry  rz  s   `           rL   r@  z BuiltinVariable.call_custom_dict1  sG  ø€ å.âÙØ�u�Ü�t“9 ’>Ð!�>Ø�q‘'ˆCÜ˜#œtÔ$Ü(¨¨hÄlÃnÔUÐUÜ˜C¤×!<Ñ!<Ô=Ø—y‘y¨(Ä,Ã.�yÓQÐQÜØä Ü!Ü(Ü×.Ñ.ð	ôô ó à ×:Ñ:¸2Ó>ôó �ô )¨°ÌËÔWÐWÜ˜C¤×!AÑ!AÕBô 7´t¸C¿I¹I³ÔGð —y‘y×-Ñ-×BÑBÀ3ÔGÜ%Ø'×0Ñ0Ð1°¸D¸6ÀÀ6À(ÐJ^Ð_ôô  $ C§I¡I§O¡OÓ$5Ó6�HØ,×3Ñ3°B¸ÓAÐAà"Ÿ™¨r°7Ó;�HÜ% h´	×0NÑ0NÔOÜ%¨×):Ñ):Ð(;¸:ÀdÀVÈ1ÈVÈHÐ&UÔVØ×8Ñ8¸À4ÈÓP�CÜ! #Ô'8Ô9Ø"˜
Ü*¨8Ó4×EÑEÀbÈ(ÐTWÓXÐXÙ™&Ø?E¿|¹|»~×N±t°q¸!Ô%×,Ñ,¨QÓ/°Ñ2ÐNˆEÑNÜ×.Ñ.Ø ¼»ôð ô 	˜×*Ñ*Ð+¨4°¨v°Q°v°hÐ?Õ@ùó	 Os   È5 Jc                 ó\  — |t         t        t        hv sJ ‚|rB|t        u sJ ‚t        |«      dk(  rt        |«      dk(  rd|v sJ ‚g |¢|j	                  d«      ‘­}t        |«      dk(  rt        t        d«      ‚t        |«      dk(  rg |¢t        j                  d «      ‘­}t        |«      dk(  sJ ‚|\  }}|t        urt        nt        }t        |t         «      rW|j                  «       D �cg c]  }t        j                  |«      ‘Œ }} |t         j                  ||«      |t        «       ¬«      S |j                  | «      rJ|j!                  | «      }t#        d„ |D «       «      r' |t         j                  ||«      |t        «       ¬«      S t%        |j&                  › d|› d	|› �«       y c c}w )
Nr(   rK   r   z,fromkeys expected at least 1 argument, got 0r   ré   c              3   ó2   K  — | ]  }t        |«      –— Œ y ­wrQ   )r3   )rW   rz  s     rL   rY   z<BuiltinVariable.call_custom_dict_fromkeys.<locals>.<genexpr>„  s   è ø€ Ò0 a”;˜q—>Ñ0ùrÐ  z.fromkeys(): r•  )rÝ  r   r   rd   Úpopr   r–  r,   r!  r/   r0   rR   ÚkeysrØ  r)   ró  rô  r[   r   r  )	rÍ   rD  rd  rO  rj  rK   ÚDictVariableTypery  rP  s	            rL   rÞ  z)BuiltinVariable.call_custom_dict_fromkeysi  s™  € ð œD¤+¬{Ð;Ñ;Ð;Ð;Ùàœ{Ñ*Ð*Ð*Ü�t“9 ’>¤c¨&£k°QÒ&6¸7ÀfÑ;LÐLÐLØ/�TÐ/˜6Ÿ:™: gÓ.Ñ/ˆDÜˆt‹9˜Š>ÜœIÐ'UÓVÐVÜˆt‹9˜Š>Ø9�TÐ9Ô+×2Ñ2°4Ó8Ñ9ˆDÜ�4‹y˜AŠ~Ðˆ~Ø‰
ˆˆUà!)´Ñ!<ÕÔBUð 	ô �cœ4Ô Ø7:·x±x³zÖB°!Ô#×*Ñ*¨1Õ-ÐBˆCÐBÙ#Ü—‘˜c 5Ó)¨8Ä<Ã>ôð ð ×.Ñ.¨rÔ2Ø×0Ñ0°Ó4ˆDÜÑ0¨4Ô0Ô0Ù'Ü—M‘M $¨Ó.°ÌËôð ô 	˜×*Ñ*Ð+¨=¸¸¸aÀ¸xÐHÕIùò Cs   Ã+F)c                 óÈ  — |rJ ‚|st        g t        «       ¬«      S t        |«      dk(  sJ ‚|d   }t        |t        j                   «      r|j                  t        «       ¬«      S |j                  |«      r&|j                  |«      }t        |t        «       ¬«      S t        |t        j                  «      rœt        |j                  t        «      r‚|j                  |d«      }t        |t        j                  «      rD|j                  |||«      }t        |t         «      r|S t        t        «      j!                  ||«      S t#        d|› d|› �«       y t#        d|› d|› �«       y )Nré   r(   r   r8  zset(): r•  )r4   r)   rd   rR   r   rF  ró  rô  r@   rK   r   rI  ÚUserMethodVariablerí  rD   ÚsetÚcall_setr   )r˜   rÍ   rd  rO  rj  rß   Úiter_fnrL  s           rL   rU  zBuiltinVariable.call_setŠ  s-  € áÐˆzÙÜ˜r´³Ô@Ð@Ü�4‹y˜AŠ~Ðˆ~Ø�1‰gˆÜ�cœ9×0Ñ0Ô1Ø—9‘9¬<«>�9Ó:Ð:Ø×.Ñ.¨rÔ2Ø×1Ñ1°"Ó5ˆEÜ˜u´L³NÔCÐCÜ˜œY×@Ñ@ÔAÄjØ�I‰I”xôG
ð —o‘o b¨*Ó5ˆGÜ˜'¤9×#?Ñ#?Ô@Ø×4Ñ4°W¸dÀFÓK�Ü˜c¤;Ô/Ø�JÜ&¤sÓ+×4Ñ4°R¸Ó=Ð=ä ¨ v¨Q¨v¨hÐ7Õ8ä˜G D 6¨¨6¨(Ð3Õ4rN   c                 ód  — |rJ ‚|st        g «      S t        |«      dk(  sJ ‚|d   }t        |t        j                   «      r-t        |j                  D �cg c]  }|j
                  ‘Œ c}«      S |j                  |«      r|j                  |«      }t        |«      S t        d|› d|› �«       y c c}w )Nr(   r   zfrozenset(): r•  )	r2   rd   rR   r   r  Úvtrí   rà   r   )r˜   rÍ   rd  rO  rj  rX   rß   s          rL   Úcall_frozensetzBuiltinVariable.call_frozenset¤  s£   € ÙÐˆzÙÜ$ RÓ(Ð(Ü�4‹y˜AŠ~Ðˆ~Ø�1‰gˆÜ�cœ9×6Ñ6Ô7Ü$°C·M±MÖ%B¨q a§d£dÒ%BÓCÐCØ×(Ñ(¨Ô,Ø×+Ñ+¨BÓ/ˆEÜ$ UÓ+Ð+ä˜M¨$¨¨q°°Ð9Õ:ùò &Cs   ÁB-c                 óþ   — |rt        |«      dk(  rd|v sJ ‚|j                  dd«      }|D �cg c]&  }|j                  |«      r|j                  |«      n|‘Œ( }}t	        j
                  ||t        «       ¬«      S c c}w )Nr(   ÚstrictF)r[  rê   )rd   rO  rí   rà   r   ÚZipVariabler)   )r˜   rÍ   rd  rO  r[  rj  s         rL   Úcall_zipzBuiltinVariable.call_zip²  s‰   € ÙÜ�v“; !Ò#¨°FÑ(:Ð:Ð:Ø—‘˜H eÓ,ˆð ö
àð ,/×+FÑ+FÀrÔ+JˆC×#Ñ# BÔ'ÐPSÑSð
ˆð 
ô ×$Ñ$ T°&ÌËÔWÐWùò	
s   ­+A:c                 ó6   — |d   j                  |d|dd  |«      S )Nr   Ú__len__r(   rÒ   rA  s       rL   Úcall_lenzBuiltinVariable.call_len¼  s#   € Ø�A‰w×"Ñ" 2 y°$°q°r°(¸FÓCÐCrN   c                 ó6   — |d   j                  |d|dd  |«      S )Nr   Ú__getitem__r(   rÒ   rA  s       rL   Úcall_getitemzBuiltinVariable.call_getitem¿  s#   € Ø�A‰w×"Ñ" 2 }°d¸1¸2°hÀÓGÐGrN   c           	      ó6  ‡— 	 ‰j                  «       }|j                  «       }t	        ‰t
        j                  «      r7‰j                  �+ˆfd„}t
        j                  j                   |‰|«      «      S t	        ‰t
        j                  «      r5t	        ‰j                  t        j                  «      rt        d‰› d|› �«       t	        ‰t
        j                  «      r[d|j                  j                  v rCt
        j                  j                  |j                  j!                  |‰j                  «      «      S 	 t#        |«      }t
        j                  j                  |«      S # t        $ r t        d‰› d|› d‰› �«       Y �Œqw xY w# t$        $ r |u }Y ŒRw xY w)Nzisinstance(r  z): can't determine type of c                 ój   •‡— ˆfd„Št        |«      t        u rt        ˆfd„|D «       «      S  ‰|«      S )Nc                 ó>  •— | t         vr~‰j                  «       j                  j                  d   }t	        |«      r2| t
        j                  j                  j                  u rt        || «      S t        ‰j                  «       | «      S t         |    }‰j                  |v S )NÚexample_value)r'   rX  ÚnodeÚmetar   r3  ÚnnÚ	parameterÚ	ParameterrR   r?  Úpython_typeÚdtype)ÚtyÚexample_valÚdtypesrj  s      €rL   Ú
check_typezOBuiltinVariable.call_isinstance.<locals>._tensor_isinstance.<locals>.check_typeÏ  s„   ø€ ØÔ!4Ñ4Ø&)§l¡l£n×&9Ñ&9×&>Ñ&>¸Ñ&O˜ä9¸+ÔFØ "¤e§h¡h×&8Ñ&8×&BÑ&BÑ Bô
 $.¨k¸2Ó#>Ð>ä#-¨c¯o©oÓ.?ÀÓ#DÐDä0°Ñ4�FØŸ9™9¨Ð.Ð.rN   c              3   ó.   •K  — | ]  } ‰|«      –— Œ y ­wrQ   rL  )rW   ro  rr  s     €rL   rY   zNBuiltinVariable.call_isinstance.<locals>._tensor_isinstance.<locals>.<genexpr>á  s   øè ø€ ÒD°"™z¨"Ÿ~ÑDùs   ƒ)rS   Útupler\   )Ú
tensor_varÚtensor_typerr  rj  s     @€rL   Ú_tensor_isinstancez;BuiltinVariable.call_isinstance.<locals>._tensor_isinstanceÎ  s3   ù€ ô/ô" ˜Ó$¬Ñ-ÜÓD¸ÔDÓDÐDá% kÓ2Ð2rN   z&isinstance called on UserDefinedClass r•  Ú__instancecheck__)rm  rÈ  r   rõ   rR   r   r>   rn  r,   r!  r@   rK   ÚtypesÚMemberDescriptorTyperô   r“   rx  r?  r–  )r˜   rÍ   rj  Úisinstance_typern  rw  rà  s     `    rL   Úcall_isinstancezBuiltinVariable.call_isinstanceÂ  s}  ø€ ð	Ø—‘Ó(ˆHð *×<Ñ<Ó>ˆä�cœ9×3Ñ3Ô4¸¿¹Ð9Nô3ô. ×-Ñ-×4Ñ4Ù" 3¨Ó8óð ô
 �cœ9×>Ñ>Ô?ÄJØ�I‰I”u×1Ñ1ôE
ô Ø8¸¸¸Q¸Ð>OÐPôô
 �sœI×?Ñ?Ô@Ø# ×'@Ñ'@×'IÑ'IÑIä×-Ñ-×4Ñ4Ø×)Ñ)×;Ñ;¸OÈSÏYÉYÓWóð ð	.Ü˜X Ó7ˆCô ×)Ñ)×0Ñ0°Ó5Ð5øôq #ò 	ÜØ˜c˜U " _Ð$5Ð5PÐQTÐPUÐV÷ð	ûôl ò 	.Ø˜oÐ-ŠCð	.ús#   ƒE$ Ä9F Å$FÆFÆFÆFc                 óÂ   — 	 |j                  «       }|j                  «       }t        j                  t        «      «      S # t        $ r t        d|› d|› �«       Y Œ;w xY w)z,Checks if first arg is subclass of right argz+call_issubclass args not constant left_ty: z, right_ty: )rõ   rÈ  r   r   r,   r?  )r˜   rÍ   Úleft_tyÚright_tyÚ
left_ty_pyÚright_ty_pys         rL   Úcall_issubclasszBuiltinVariable.call_issubclassÿ  sh   € ð	Ø ×3Ñ3Ó5ˆJØ"×5Ñ5Ó7ˆKô ×)Ñ)¬*°ZÀÓ*MÓNÐNøô #ò 	ÜØ=¸g¸YÀlÐS[ÐR\Ð]öð	ús   ‚ A ÁAÁAc                 ó.   — t        j                  ||«      S rQ   )r   ÚSuperVariable©r˜   rÍ   rÎ   rÏ   s       rL   Ú
call_superzBuiltinVariable.call_super  s   € Ü×&Ñ& q¨!Ó,Ð,rN   c                 óÆ   — 	 |j                  |«      S # t        $ rD}t        |t        j                  «      r$|j                  «        |j                  d   cY d }~S ‚ d }~ww xY w)Nr   )Únext_variabler   rR   r   r5   rœ  rß   )r˜   rÍ   rj  Úexs       rL   Ú	call_nextzBuiltinVariable.call_next  sU   € ð	Ø×$Ñ$ RÓ(Ð(øÜò 	Ü˜#œy×9Ñ9Ô:Ø×$Ñ$Ô&Ø—y‘y ‘|Õ#Øûð		ús    ‚ “	A œ8AÁA ÁAÁA c                 óî   — |j                  «       re|j                  «       }t        |t        j                  «      r)t        j
                  t        |j                  |«      «      S |j                  ||«      S y rQ   )	rÚ  rõ   rR   r   rD   r,   rê  rE   Úcall_hasattr)r˜   rÍ   r†  ÚattrrR  s        rL   rŒ  zBuiltinVariable.call_hasattr  s`   € Ø×"Ñ"Ô$Ø×*Ñ*Ó,ˆDÜ˜#œy×8Ñ8Ô9Ü ×1Ñ1´'¸#¿&¹&À$Ó2GÓHÐHØ×#Ñ# B¨Ó-Ð-ð	 %rN   c                 ó®   — |D �cg c]&  }|j                  |«      r|j                  |«      n|‘Œ( }}t        j                  ||t	        «       ¬«      S c c}w rè   )rí   rà   r   ÚMapVariabler)   )r˜   rÍ   rE   Úseqsrñ   s        rL   Úcall_mapzBuiltinVariable.call_map  s]   € ð ö
àð ,/×+FÑ+FÀrÔ+JˆC×#Ñ# BÔ'ÐPSÑSð
ˆð 
ô ×$Ñ$ R¨¼\»^ÔLÐLùò	
s   …+Ac                 óÈ   ‡‡— |j                  ‰«      r@|j                  ‰«      }	 t        t        ˆˆfd„|«      «      }t	        j
                  |«      S y # t        $ r Y y w xY w)Nc                 óH   •— ‰j                  ‰| gi «      j                  «       S rQ   ©rÙ   rõ   )rX   rE   rÍ   s    €€rL   ræ   z-BuiltinVariable.call_filter.<locals>.<lambda>+  s!   ø€  "×"2Ñ"2°2¸°s¸BÓ"?×"RÑ"RÓ"T€ rN   )rí   rà   r2  Úfilterr   r:   rÈ  )r˜   rÍ   rE   rñ   Úseq_unpackedrß   s    ``   rL   Úcall_filterzBuiltinVariable.call_filter%  sj   ù€ Ø×&Ñ& rÔ*Ø×2Ñ2°2Ó6ˆLð	ÜÜÜTØ$óó�ô !×.Ñ.¨uÓ5Ð5ð +øô 'ò Ùðús   ¦-A Á	A!Á A!c                 óh  — t        |t        j                  t        j                  f«      rât	        d„ |j
                  D «       «      rÆ|| j                  u r9t        j                  j                  t        d„ |j
                  D «       «      «      S t        |t        j                  «      ret        |j                  t        t        f«      rEt        j                  j                  t        d„ |j
                  D «       |j                  ¬«      «      S |j                  |«      r•|| j                  u rt        j                  j                  d«      }|j                  |«      }t        t         j"                  «      j%                  |t        t&        j(                  «      t        j                  |«      |gi «      S y )Nc              3   ó”   K  — | ]@  }t        |t        j                  «      xr  t        |j                  t        t
        f«      –— ŒB y ­wrQ   )rR   r   r,   rK   rc   ra   rV   s     rL   rY   z+BuiltinVariable.call_sum.<locals>.<genexpr>5  sE   è ø€ ò V
ð ô �qœ)×4Ñ4Ó5ò 2Ü˜1Ÿ7™7¤S¬% LÓ1ó2ñV
ùs   ‚AAc              3   ó4   K  — | ]  }|j                   –— Œ y ­wrQ   rè  rV   s     rL   rY   z+BuiltinVariable.call_sum.<locals>.<genexpr><  s   è ø€ Ò3 A˜Ÿ�Ñ3ùó   ‚c              3   ó4   K  — | ]  }|j                   –— Œ y ­wrQ   rè  rV   s     rL   rY   z+BuiltinVariable.call_sum.<locals>.<genexpr>B  s   è ø€ Ò4 Q˜Ÿ�Ñ4ùr›  )Ústartr   )rR   r   r7   r:   r[   rß   Ú	_SENTINELr,   r!  rm   rK   rc   ra   ró  rô  rD   rú  rû  rÙ   rn   ry   )r˜   rÍ   rñ   r�  rß   s        rL   Úcall_sumzBuiltinVariable.call_sum3  s]  € ä�cœI×2Ñ2´I×4KÑ4KÐLÔMÔRUñ V
ð —Y‘YôV
ô S
ð
 ˜Ÿ™Ñ&Ü ×1Ñ1×8Ñ8ÜÑ3¨¯©Ô3Ó3óð ô ˜%¤×!;Ñ!;Ô<ÄØ—‘œc¤5˜\ôBô !×1Ñ1×8Ñ8ÜÑ4¨#¯)©)Ô4¸E¿K¹KÔHóð ð ×,Ñ,¨RÔ0Ø˜Ÿ™Ñ&Ü!×2Ñ2×9Ñ9¸!Ó<�Ø×1Ñ1°"Ó5ˆEÜ"¤9×#3Ñ#3Ó4×BÑBØä#¤H§L¡LÓ1Ü×+Ñ+¨EÓ2Øðð
 óð ð	 1rN   c                 óº   — |j                  |«      rJ|j                  |«      }|| j                  u r|d   |dd  }}n|}|D ]  }|j                  |||gi «      }Œ |S y rù  )ró  rô  rž  rÙ   )r˜   rÍ   ÚfunctionÚiterableÚinitialrß   rK   Úelements           rL   Úcall_reducezBuiltinVariable.call_reduceR  sz   € ð ×1Ñ1°"Ô5Ø×6Ñ6°rÓ:ˆEØ˜$Ÿ.™.Ñ(Ø$ Q™x¨¨q¨r¨�u‘à�Ø ò I�Ø ×.Ñ.¨r°E¸7Ð3CÀRÓH‘ðIàˆLð 6rN   r†  rß  c                 óÐ	  — ddl m} ddl m}m}m}m}	 ddlm}
m} |j                  «       }|j                  «       st        d«       |j                  j                  j                  |«      r^t        |t         j"                  «      rD|dv r@|j$                  r4|j                  j                  j'                  |«      rt        d|›d	�«       |j                  j                  j)                  ||«      r&|j                  j                  j+                  ||«      S |�9| j-                  |||«      }|j                  «       d
v sJ ‚|j                  «       s|S i }|j.                  rt1        |j.                  |«      }||d<   nd }|dv ró	 |j                  «       }t        |t2        «      rÒ|dk(  rx|j4                  }|�5t7        |«      D ��cg c]  \  }}  ||t9        ||«      «      |«      ‘Œ  }}}n|D �cg c]  }|
j;                  ||«      ‘Œ }}t!        j<                  |fi |¤ŽS |dk(  r/|j>                  }|�  |||«      |«      S |
j;                  ||«      S |dk(  r |j:                  |j@                  «      S t        |t         jD                  «      r|jG                  ||«      S t        |t         jH                  t         jJ                  t         j                  t         jL                  t         jN                  t         jP                  f«      r	 |jG                  ||«      S t        ||«      rptS        |jT                  |«      }t        |tV        jX                  jZ                  tV        jX                  j\                  f«      r|j_                  |«      r	 ||fi |¤ŽS y y t        |t`        «      r®|jb                  s||jT                  jd                  vrtS        |jT                  |«      }n|jT                  jd                  |   }tf        jh                  r'|jj                  jm                  |jT                  ||«       |�  |||«      |«      S |
j;                  ||«      S to        ||	«      r*|dv r& |j:                  tS        |jp                  |«      «      S 	 |jG                  ||«      S c c}}w c c}w # tB        $ r Y �Œ?w xY w# tB        $ r  |||fi |¤ŽcY S w xY w# tB        $ r  |||fi |¤ŽcY S w xY w)Nr   )Útrace_rulesr(   )r,   rh  r  rÃ   ©r�  ÚVariableBuilderznon-const getattr() name)Únamed_parametersÚ
parametersÚnamed_buffersÚbuffersÚnamed_modulesÚmodulesz4pending mutation on nn module, so graph breaking at z call)TFrG   >   Ú__base__Ú	__bases__Ú	__flags__r±  r°  r²  )r  r\  )9Ú r§  r,   rh  r  rÃ   rÚ   r�  r©  rõ   rÚ  r   rÛ   rî   rÙ  rR   r   ÚUnspecializedNNModuleVariableÚis_state_mutatedrH  Úhas_pending_mutation_of_attrÚ	load_attrrŒ  rG   r   rS   r±  Ú	enumerater   r!  r:   r°  r²  rÈ  rÅ   rI  r>   ÚNamedTupleVariableÚDistributedVariablerÈ   r@   rb   rK   r3  Ú_opsÚOpOverloadPacketÚ
OpOverloadÚis_aten_op_or_tensor_methodr   Úis_torchr“   r   Úreplay_record_enabledÚexec_recorderÚrecord_module_accessr$   rE   )r˜   rÍ   r†  rß  Údefaultr§  r,   rh  r  rÃ   r�  r©  rR  Úhasattr_varÚoptionsrG   rK   Úbasesrv  rÏ   Ú
tuple_argsÚbaseÚmembers                          rL   Úcall_getattrzBuiltinVariable.call_getattr_  sš  € õ 	#÷	
ó 	
÷ 	@à×*Ñ*Ó,ˆà×*Ñ*Ô,ÜÐ4Ô5à�9‰9×!Ñ!×7Ñ7¸Ô<Ü˜#œy×FÑFÔGàðñð ×,Ò,ØŸ	™	×.Ñ.×CÑCÀCÔHä!ØNÈtÈhÐV[Ð\ôð �9‰9×!Ñ!×>Ñ>¸sÀDÔIØ—9‘9×)Ñ)×3Ñ3°C¸Ó>Ð>àÐØ×+Ñ+¨B°°XÓ>ˆKØ×1Ñ1Ó3°}ÑDÐDÐDØ×1Ñ1Ô3Ø�àˆØ�:Š:Ü §
¡
¨DÓ1ˆFØ &ˆG�HÒàˆFàÐ9Ñ9ðØ×.Ñ.Ó0�Ü˜e¤TÔ*Ø˜{Ò*Ø %§¡˜Ø!Ð-ô -6°eÓ,<÷*á$( A qð !N¡°´MÀ&È!Ó4LÓ MÈaÕ Pð*˜Jò *ð JOö*ØDEÐ 1× 8Ñ 8¸¸QÕ ?ð*˜Jð *ô  )×6Ñ6°zÑMÀWÑMÐMØ˜zÒ)Ø$Ÿ~™~˜Ø!Ð-Ø#>¡?°2°vÓ#>¸tÓ#DÐDØ0×7Ñ7¸¸DÓAÐAØ˜{Ò*Ø6Ð/×6Ñ6°u·±ÓGÐGô �cœ9×5Ñ5Ô6Ø—?‘? 2 tÓ,Ð,ÜØä×(Ñ(Ü×,Ñ,Ü×*Ñ*Ü×-Ñ-Ü×2Ñ2Ü×3Ñ3ðô

ð=Ø—‘ r¨4Ó0Ð0ô ˜Ð9Ô:ä˜SŸY™Y¨Ó-ˆFÜØœŸ™×4Ñ4´e·j±j×6KÑ6KÐLôà×9Ñ9¸&ÔAÙ3°FÑF¸gÑFÐFð Bðô ˜œ[Ô)à�|Š|˜t¨3¯9©9×+=Ñ+=Ñ=Ü  §¡¨DÓ1‘àŸ™×+Ñ+¨DÑ1�ä×+Ò+Ø× Ñ ×5Ñ5°c·i±iÀÀvÔNàÐ!Ø2‘ r¨6Ó2°6Ó:Ð:à(×/Ñ/°°FÓ;Ð;Ü�CÐ-Ô.°4Ð;UÑ3UØ*Ð#×*Ñ*¬7°3·6±6¸4Ó+@ÓAÐAð=Ø—‘ r¨4Ó0Ð0ùó{*ùò
*øô 'ò Úðûô$ 'ò =Ù& s¨DÑ<°GÑ<Ò<ð=ûô8 'ò =Ù& s¨DÑ<°GÑ<Ò<ð=úsg   ÆAR& Ç#RÇ%R& Ç-R!ÈR& È!R& É R& É R& ÌR6 Ò	S ÒR& Ò&	R3Ò2R3Ò6SÓSÓS%Ó$S%rà  c                 ó’	  — t        |t        j                  t        j                  t        j                  f«      r|j                  |d||gi «      S |j                  j                  j                  |«      �rú|j                  «       �ré|j                  «       }t        |t        j                  «      �riddlm} |dk(  rt        d«       |dk(  �rMg }|j                  j                  D ]-  }|j                   |j                   k(  sŒ|j#                  |«       Œ/ |D ]'  }|j                  j                  j%                  |«       Œ) t'        |«      5  t)        j*                  «       5   || |j                  j,                  dt(        j.                  j0                  gt3        ||gi «      ¢­Ž «      }	d d d «       d d d «       d„ }
|j                  j-                  d|
	j5                  «       fi «        |
|j5                  «       j6                  j8                  d	   «       |	S |j                  j                  j;                  |||«       |d
k(  r'|j                  j                  j;                  |d|«       |S t        |t        j                  «      r,t        dt=        |j>                  «      j@                  › �«       y t        |t        jB                  «      �r0|j                  jE                  «       stG        d«      ‚|j                  «       rét        |t        j                  «      rÏtI        |j5                  «       j6                  |«      }	 |jK                  ||j                  «       «      }t        |t        j                  «      rptI        |j5                  «       j6                  |«      }tO        jP                  |jR                  d«      }||u r(|t(        jT                  jV                  j@                  u r|S |jY                  |«       y t        |t        jZ                  j\                  «      rw|j^                  rj|j                  «       rYt        |t        j`                  «      r>tc        |jd                  |j                  «       |j                  «       «       ta        d «      S y y y y # 1 sw Y   �ŒóxY w# 1 sw Y   �ŒøxY w# tL        $ r d }Y �Œ`w xY w)NrÕ  r(   r×   Úrequires_gradz¢mutating requires_grad can introduce a new leaf from non-leaf or vice versa in the middle of the graph, which aot_autograd does not currently know how to handle. ÚdatarÙ   c                 ó†   — | j                   }|dkD  r|dz
  }t        j                  j                  j	                  | |«       | S rù  )Ú_versionr3  Ú_CÚ	_autogradÚ_unsafe_set_version_counter)rX   Úversions     rL   Ú_lower_version_count_by_1z?BuiltinVariable.call_setattr.<locals>._lower_version_count_by_1  s:   € Ø"#§*¡*˜Ø" Qš;Ø&-°¡k˜GÜŸ™×*Ñ*×FÑFÀqÈ'ÔRØ ˜rN   rg  Ú_gradÚgradz#setattr(UserDefinedObjectVariable) z?Can't inplace modify module params/buffers inside HigherOrderOp)3rR   r   ÚCustomizedDictVariableÚPlacementVariabler@   rÌ   rÛ   rî   rÙ  rÚ  rõ   r>   rÚ   rØ   r   Útracked_fakesrG   r(  ÚremoveÚdynamo_disable_gradr3  Úno_gradrÜ   ÚTensorÚset_r&   rX  rh  ri  Ú
store_attrrS   rK   rÕ  rÅ   Úis_root_tracerr   r!   rI  rë  r—  Úgetattr_staticÚmodule_typerj  ÚModuleÚconvert_to_unspecializedr0  ÚHFPretrainedConfigVariableÚexportr,   Úsetattrr†  )r˜   rÍ   r†  rß  rà  rR  rØ   Ú	to_removeÚtfrL  rÔ  Úassigning_fake_valÚgetattr_varÚexisting_fake_attrÚmod_setattrs                  rL   Úcall_setattrzBuiltinVariable.call_setattrß  sþ  € ô Øä×0Ñ0Ü×+Ñ+Ü×3Ñ3ðô
ð —?‘? 2 }°xÀ°oÀrÓJÐJà�I‰I×"Ñ"×8Ñ8¸Õ=Ø×+Ñ+Õ-à×.Ñ.Ó0ˆDÜ˜#œy×7Ñ7Õ8Ý2à˜?Ò*ä!ðnôð ˜6“>ð !#�IØ Ÿi™i×5Ñ5ò 1˜ØŸ9™9¨¯
©
Ó2Ø%×,Ñ,¨RÕ0ð1ð (ò ;˜ØŸ	™	×/Ñ/×6Ñ6°rÕ:ð;ô -¨RÓ0ñ 	´%·-±-³/ñ 	á+ØØ2˜BŸI™I×2Ñ2Ø /Ü %§¡× 1Ñ 1ðô "3°C¸°:¸rÓ!Bòó˜÷	÷ 	ò!ð —I‘I×*Ñ*Ø'Ø1ØŸ™›Ð)Øô	ñ .¨c¯l©l«n×.AÑ.A×.FÑ.FÀÑ.WÔXð �Jà�I‰I×"Ñ"×-Ñ-¨c°4¸Ô=Ø�wŠØ—	‘	×&Ñ&×1Ñ1°#°v¸sÔCàˆJÜ˜œY×@Ñ@ÔAÜØ5´d¸3¿9¹9³o×6QÑ6QÐ5RÐSõô ˜œY×7Ñ7Õ8Ø—9‘9×+Ñ+Ô-Ü,ØUóð ð ×*Ñ*Ô,´Ø”Y×-Ñ-ô2ô &4°C·L±L³N×4GÑ4GÈÓ%LÐ"ð'Ø"%§/¡/°"°h×6QÑ6QÓ6SÓ"T�Kô ˜k¬9×+CÑ+CÔDä)7¸×8LÑ8LÓ8N×8SÑ8SÐUWÓ)XÐ&ô #*×"8Ñ"8¸¿¹È-Ó"X�Kà*Ð.@Ñ@Ø'¬5¯8©8¯?©?×+FÑ+FÑFà*Ð*à×(Ñ(¨Õ,ô ˜œYŸ_™_×GÑGÔHÈRÏYÊYØ×*Ñ*Ô,´Ø”Y×/Ñ/ô2ô Ø—G‘G˜X×8Ñ8Ó:¸C×<RÑ<RÓ<Tôô (¨Ó-Ð-ð2Ð,ð NWÐH÷W	ñ 	ú÷ 	ñ 	ûôl &ò 'Ø"&“Kð'ús7   ÅR*Å"A
RÆ,R*Í R7 ÒR'	Ò"R*Ò*R4Ò7SÓSc                 óN   — | j                  |||t        j                  «       «      S rQ   )rî  r   ÚDeletedVariable)r˜   rÍ   r†  rß  s       rL   Úcall_delattrzBuiltinVariable.call_delattr_  s$   € ð × Ñ   S¨(´I×4MÑ4MÓ4OÓPÐPrN   c                 ó"  — ddl m}m} 	 |j                  «       }|j                  €|j                  ||«      S   ||t        |j                  «      «      |«      S # t        $ r+}t        t        j                  t        |«      d¬«      d ‚d }~ww xY w)Nr(   r¨  Úunknown_python_type)Ú	case_name)rÚ   r�  r©  rm  rÈ  r   r   ÚINVALID_INPUTrk   rG   r!  r   )r˜   rÍ   r†  r�  r©  Úpy_typeÚerrors          rL   Ú	call_typezBuiltinVariable.call_typeg  s‰   € ß?ð	Ø—o‘oÓ'ˆGð �:‰:ÐØ$×+Ñ+¨B°Ó8Ð8à>‘? 2¤z°#·*±*Ó'=Ó>¸wÓGÐGøô #ò 	ÜÜ×+Ñ+Ü�E“
Ø/ôð ð	ûð	ús   ŠA Á	BÁ#&B	Â	Bc                 ó–   — |j                  |«      r8t        t        |j                  |«      «      «      }t	        j
                  |«      S y rQ   )rí   r2  Úreversedrà   r   r:   )r˜   rÍ   r†  rß   s       rL   Úcall_reversedzBuiltinVariable.call_reversedx  s@   € Ø×&Ñ& rÔ*Üœ #×"9Ñ"9¸"Ó"=Ó>Ó?ˆEÜ×*Ñ*¨5Ó1Ð1ð +rN   c                 óÄ  ‡‡— |j                  ‰«      rÍt        |t        j                  «      s²|j	                  ‰«      }t        d„ |D «       «      sy |j                  dd «      Š|j                  dt        j                  d«      «      j                  «       }t        |«      dk(  sJ ‚‰rt        |ˆˆfd„|¬«      }nt        |d„ |¬«      }t        j                  |«      S y y )	Nc              3   ó<   K  — | ]  }|j                  «       –— Œ y ­wrQ   )rÚ  rV   s     rL   rY   z.BuiltinVariable.call_sorted.<locals>.<genexpr>‚  s   è ø€ Ò@°!�q×+Ñ+×-Ñ@ùr¢  rÓ  ÚreverseFr   c                 óH   •— ‰j                  ‰| gi «      j                  «       S rQ   r”  )rX   r¡  rÍ   s    €€rL   ræ   z-BuiltinVariable.call_sorted.<locals>.<lambda>Œ  s'   ø€  (×"8Ñ"8Ø˜Q˜C ó#ç(Ñ(Ó*ð rN   )rÓ  rþ  c                 ó"   — | j                  «       S rQ   )rõ   )rX   s    rL   ræ   z-BuiltinVariable.call_sorted.<locals>.<lambda>”  s   €  !×"6Ñ"6Ó"8€ rN   )ró  rR   r   r>   rô  r[   rO  r,   r!  rõ   rd   Úsortedr7   )r˜   rÍ   r†  rO  Úunpackedrþ  rß   r¡  s    `     @rL   Úcall_sortedzBuiltinVariable.call_sorted}  sß   ù€ Ø×,Ñ,¨RÔ0¼Ø”×)Ñ)ô:
ð ×4Ñ4°RÓ8ˆHÜÑ@°xÔ@Ô@ØØ—z‘z %¨Ó.ˆHØ—j‘jØÔ+×2Ñ2°5Ó9óç Ñ Ó"ð ô �v“; !Ò#Ð#Ð#ÙÜØô+ð $ô‘ô ØÙ8Ø#ô�ô
 ×)Ñ)¨%Ó0Ð0ð3:
Ð0rN   c                 ó–   — t        |t        «      r9t        j                  |t        j                  |j                  «       «      d ¬«      S y )N©Úsym_num)rR   r=   r!  rn   rp   rX  ©r˜   rÍ   rÎ   s      rL   Úcall_negzBuiltinVariable.call_negš  s<   € Ü�aœÔ)Ü"×)Ñ)ØÜ—‘˜qŸz™z›|Ó,Øôð ð rN   c                 ód   — |j                  «       }t        j                  j                  |||«      S rQ   )rõ   r   ÚStringFormatVariabler!  )r˜   rÍ   Ú_format_stringrd  rO  Úformat_strings         rL   Úcall_formatzBuiltinVariable.call_format¤  s+   € Ø&×9Ñ9Ó;ˆÜ×-Ñ-×4Ñ4°]ÀDÈ&ÓQÐQrN   c                 ó¶  — t        |«      dkD  rot        |d   t        j                  «      rR|d   }|j                  j                  |j                  «      }t        j                  j                  t        |«      «      S t        |«      dk(  r‰t        |d   t        j                  «      rlt        |d   j                  j                  t        j                  «      «       t        |d   j                   «      }t        j                  j                  |«      S t        |«      dk(  r)t        |d   t"        «      r|d   }|j%                  |«      S t'        d|› �«       y )Nr   r(   zcall_id with args )rd   rR   r   rÅ   rÛ   r  r  r,   r!  Úidr@   r   rG   rH   r   ÚID_MATCHrK   r>   Úcall_idr   )r˜   rÍ   rd  Únn_mod_variablerx   Úconstant_resultÚtensor_variables          rL   r  zBuiltinVariable.call_id¨  s  € Üˆt‹9�qŠ=œZ¨¨Q©´×1KÑ1KÔLØ" 1™gˆOØ—)‘)×)Ñ)¨/×*DÑ*DÓEˆCÜ×-Ñ-×4Ñ4´R¸³WÓ=Ð=Ü�‹Y˜!Š^¤
Ø�‰G”Y×8Ñ8ô!
ô ˜$˜q™'Ÿ.™.×3Ñ3´L×4IÑ4IÓJÔKÜ   a¡§¡Ó/ˆOÜ×-Ñ-×4Ñ4°_ÓEÐEÜ�‹Y˜!Š^¤
¨4°©7´NÔ CØ" 1™gˆOØ"×*Ñ*¨2Ó.Ð.äÐ.¨t¨fÐ5Õ6rN   c                 ó2   — t        dt        |«      › �«       y )Nzcopy.deepcopy )r   ri   )r˜   rÍ   rX   s      rL   Úcall_deepcopyzBuiltinVariable.call_deepcopy¹  s   € Ü˜¤t¨A£w iÐ0Õ1rN   c           	      óJ  — ddl m} ddlm} | j                  }|t
        j                  t
        j                  fv rºt        |t        «      xrk t        |t        «      xrY t        t        |j                  «       j                  «      «      t        t        |j                  «       j                  «      «      k(  }|t
        j                  u rt        j                  |«      S t        j                  | «      S ||vrt!        |j"                  › d|› d|› d�«       t        |t        «      rnt        |t        «      r^|j$                  xr |j$                  �D|j$                  |j$                  k7  r+	 t'        j(                  |j$                  |j$                  «       t        |t        «      r|n|}|j,                  j/                  d||j                  «       |j                  «       fi «      }	 |t1        |«      ||	«      S # t*        $ r! t!        |j"                  › d|› d|› d�«       Y ŒŒw xY w)Nr(   rþ  ©Ú%supported_tensor_comparison_op_valuesr  r  r  rÙ   )rÚ   r´  r�   r  rE   rn   rþ   Úis_notrR   r>   r  r    rX  rh  r,   r!  r   r  Úsizer3  Úbroadcast_shapesÚRuntimeErrorrÛ   rÜ   rS   )
r˜   rÍ   r  r  r´  r  rü   Ú	is_resultÚ
tensor_clsrÉ  s
             rL   r&  z'BuiltinVariable._comparison_with_tensor¼  sÅ  € Ý.ÝAà�W‰Wˆà”(—,‘,¤§¡Ð0Ñ0ä˜4¤Ó0ò IÜ˜u¤nÓ5òIäÔ1°$·-±-³/×2FÑ2FÓGÓHÜÔ0°·±Ó1A×1FÑ1FÓGÓHñIð ð ”X—\‘\Ñ!Ü'×.Ñ.¨yÓ9Ð9ä'×.Ñ.°9¨}Ó=Ð=àÐ:Ñ:Ü˜RŸ[™[˜M¨¨4¨&°°5°'¸Ð;Ô<ä�tœ^Ô,Ü˜5¤.Ô1Ø—‘Ò)˜uŸz™zÐ6Ø—	‘	˜UŸZ™ZÒ'ðAÜ×&Ñ& t§y¡y°%·*±*Ô=ô (¨¬nÔ=‘TÀ5ˆ
Ø—	‘	×&Ñ&Ø˜R $§-¡-£/°5·>±>Ó3CÐ!DÀbó
ˆñ !Ü�ÓØØó
ð 	
øô  ò Aä §¡ ¨Q¨t¨f°B°u°g¸QÐ?Ö@ðAús   Å+*G8 Ç8'H"È!H"c                 ó  — ddl m} | j                  }||vrt        |j                  › d|› d|› d�«       |j
                  j                  d||j                  «       |j                  «       fi «      }t        j                  ||d ¬«      S )Nr(   r  r  r  r  rÙ   r  )
r�   r  rE   r   r  rÛ   rÜ   rX  r=   r!  )r˜   rÍ   r  r  r  rü   rÉ  s          rL   r'  z(BuiltinVariable._comparison_with_symnodeå  sƒ   € ÝAà�W‰WˆàÐ:Ñ:Ü˜RŸ[™[˜M¨¨4¨&°°5°'¸Ð;Ô<à—	‘	×&Ñ&Ø˜R $§-¡-£/°5·>±>Ó3CÐ!DÀbó
ˆô ×%Ñ%ØØØô
ð 	
rN   c           
      óÂ  — t        |t        «      rt        |t        «      ry t        |t        t        f«      rdt        |t        t        f«      rNt        j                  | |j                  j
                  dt        j                  gt        ||gi «      ¢­Ž d ¬«      S t        |d«      r8t        |d«      r+t        t        |j                  |j                  z  «      «      S y y ©NrÙ   r  r  )rR   r,   r=   r!  rÛ   rÜ   rn   r   r&   rê  r4   r2  r  r…  s       rL   Ú	call_and_zBuiltinVariable.call_and_ö  sÄ   € ä�aÔ)Ô*¬z¸!Ô=MÔ/NØÜ�aœ/Ô+;Ð<Ô=Ä*Ø”Ô!1Ð2ôC
ô #×)Ñ)ØØ&�—	‘	×&Ñ&Ø#¤X§]¡]ðÜ5FÈÈ1ÀvÈrÓ5Ròð ôð ô �1�kÔ"¤w¨q°+Ô'>Üœt A§K¡K°!·+±+Ñ$=Ó>Ó?Ð?ð (?Ð"rN   c           
      óÀ  — t        |t        «      rt        |t        «      ry t        |t        t        f«      rdt        |t        t        f«      rNt        j                  | |j                  j
                  dt        j                  gt        ||gi «      ¢­Ž d ¬«      S t        |d«      r7t        |d«      r+t        t        |j                  |j                  z  «      «      S y r"  )rR   r,   r=   r!  rÛ   rÜ   rn   r€   r&   rê  r4   r2  r  r…  s       rL   Úcall_or_zBuiltinVariable.call_or_  s¿   € ä�aÔ)Ô*¬z¸!Ô=MÔ/NØÜ�aœ/Ô+;Ð<Ô=Ä*Ø”Ô!1Ð2ôC
ô #×)Ñ)ØØ&�—	‘	×&Ñ&Ø#¤X§\¡\ðÜ4EÀqÈ!ÀfÈbÓ4Qòð ôð ô �1�kÔ"¤w¨q°+Ô'>Üœt A§K¡K°!·+±+Ñ$=Ó>Ó?Ð?àrN   c           
      óx  — t        |t        «      rMt        j                  | |j                  j                  dt
        j                  gt        |gi «      ¢­Ž d ¬«      S t        |t        «      r|j                  }t        |t        t        f«      r+t        j                  t        |j                  «      dk(  «      S y )NrÙ   r  r   )rR   r=   r!  rÛ   rÜ   rn   rq   r&   r1   Údv_dictr7   r/   r,   rd   rß   r  s      rL   Ú	call_not_zBuiltinVariable.call_not_  s›   € Ü�aœÔ)Ü"×)Ñ)ØØ&�—	‘	×&Ñ&Ø#¤X§]¡]ðÜ5FÈÀsÈBÓ5Oòð ôð ô �aœÔ"Ø—	‘	ˆAÜ�aœ,Ô(9Ð:Ô;Ü#×*Ñ*¬3¨q¯w©w«<¸1Ñ+<Ó=Ð=àrN   rÎ   rÏ   c                 ó,   — |j                  |d|gi «      S )NÚ__contains__rÒ   r…  s       rL   Úcall_containszBuiltinVariable.call_contains-  s   € ð �}‰}˜R °!°°bÓ9Ð9rN   )rJ  Nr#  )rÍ   rB   rd  úList[VariableTracker]rO  úDict[str, VariableTracker]rJ  r*   )rd  r,  rO  r-  rJ  r*   )rÍ   rB   rj  r*   rQ   )ar  r\  Ú__qualname__r$  rž  r*   Ú_nonvar_fieldsÚclassmethodrM   Ústaticmethodrú  Ú	lru_cacher•   r™   r¢   r¿   r<  rG  rI  rN  rk   rS  rõ   rX  ra  re  rk  ro  rw  r{  r}  r   rS   r]   r²  r±  rÒ  rÙ   rÌ   ræ  Úcall_intÚ
call_floatrñ  r÷  rõ  rö  Úcall_minÚcall_maxr  r  r  r  r#  r"  r)  r+  r4  r6  r:  Ú
call_tupleÚ	call_listr<  r>  rB  r@  rÞ  rU  rY  r]  r`  rc  r|  r‚  r†  rŠ  rŒ  r‘  r—  rŸ  r¥  rÊ  rî  rñ  rø  rû  r  r  r  r  r  r&  r'  r#  r%  r(  r+  Ú__classcell__)rô   s   @rL   rD   rD   b   s%  ø„ Ù“€Iàðà	×	'Ñ	'ð€Nð
 ñ)ó ð)ð Ø€Y×Ñ˜Óñ?ó ó ð?òB:ð Ø€Y×Ñ˜Óñ*ó ó ð*ðX Ø€Y×Ñ˜Óñ!ó ó ð!ðF Ø€Y×Ñ˜ÓñZó ó ðZðx
 ñ	ó ð	ò5õð4˜ó 4òô"òQò1òòò3ð ñ
ó ð
ò

ð
 ðV  T¨$¡Zð V ¸Tò V ó ðV óp[Hðz #%Ðð)à#ð)ð &ð)ð -ð	)ð
 
ó)ð&;ð &ð	;ð
 -ð;ð 
õ;ó8ð* €HØ €Jó%UóN4óYóZ;ðx €HØ€Hó4ó4óAó<ó	ò
ó
-ó
ð 04ð!Ø)ó!óFHóð "€JØ €Ió<ò8NóKð ò5Aó ð5Aðn ðJØ#òJó ðJó@5ó4;óXóDóHó;6óz
Oó-ðÐ3ð ¸/ó ó.óMóð @Iô ð@ HQðØ)óð$ ñ~=à#ð~=ð ð~=ð "ó	~=ð@~.à#ð~.ð ð~.ð "ð	~.ð
 ó~.ð@Qà#ðQð ðQð "ó	QðHÐ3ð H¸/ó Hð"2Ð 7ð 2¸oó 2ð
1Ð5ð 1¸Oó 1ó:óRó7ó"2ó'
óR
ó"@ó$ó&ð$:Ø)ð:Ø.=ð:ØBQ÷:rN   rD   c              #   óÞ   K  — ddl m} t        j                  «       }|j	                  | d«      }	 |j                  | «       d –— |j                  | «       y # |j                  | «       w xY w­w)Nr(   )ÚGradModeVariableF)r³  r;  r3  Úis_grad_enabledr!  ÚenterÚexit)rÍ   r;  Ú	org_valueÚgmvs       rL   rÛ  rÛ  3  sR   è ø€ å"ä×%Ñ%Ó'€IØ
×
!Ñ
! " eÓ
,€CðØ�	‰	�"ŒÛà�‰��øˆ�‰��üs   ‚-A-°A ÁA-ÁA*Á*A-)xÚ
contextlibrú  r—  rs  ÚloggingrT   rn   ry  Úcollectionsr   r   Úcollections.abcr   Útypingr   r   r   r3  r	   r
   Útorch.utils._python_dispatchr   r³  r   r   rž  r   r   r   r   r   Úguardsr   r   Úreplay_recordr   rG   r   r   r   r   Úutilsr   r   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   rÈ  r)   r*   Úconstantr,   Úctx_managerr-   r.   r0  r/   r0   r1   r2   r3   r4   Úlistsr5   r6   r7   r8   r9   r:   r�   r;   r<   r=   r>   r?   r4  r@   rA   Útorch._dynamo.symbolic_convertrB   Ú	getLoggerr  rš  rˆ   ry   r‰   rz   rƒ   rt   r…   rv   r†   rw   r‡   rx   r„   rŠ   r}   r‹   r~   r‚   rh   rŒ   r   rŽ   r€   r�   r�   rÄ  rD   ÚcontextmanagerrÛ  rL  rN   rL   ú<module>rP     sš  ðó Û Û Û Û Û Û Û ß 0Ý $ß ,Ñ ,ã ß $Ý Fç  ÷õ ÷ 1Ý 'ß NÓ N÷÷ ÷ õ ÷ 0Ý &ß 6÷÷ ÷÷ ÷õ ÷ Iñ ÝDð €g×Ñ˜Ó!€ð ‡M�M�8—<‘<Ø‡M�M�8—<‘<Ø‡M�M�8—<‘<Ø×Ñ˜×)Ñ)Ø×Ñ�x×'Ñ'Ø‡M�M�8—<‘<Ø×Ñ�h×&Ñ&Ø×Ñ�h—o‘oØ×Ñ�h—o‘oØ‡M�M�8—<‘<Ø‡M�M�8—=‘=Ø‡L�L�(—,‘,Ø‡M�M�8—<‘<ðÐ ô"N:�oô N:ðb> ×Ññ	ó ñ	rN   