+
    –°³j [ ã                  ó %  € ^ RI Ht ^ RIt^ RIt^ RIt^ RIt^ RIt^ RIHt ^ RIH	t	H
tHtHt ^ RIHt ^ RIt^ RIt^ RIt^ RIHt ^ RIHtHtHtHt ^ RIHt ^ RIHt ^ R	IH t  ^ R
I!H"t" ^ RIH#t#H$t$H%t%H&t&H't'H(t(H)t)H*t*H+t+H,t,H-t- ^ RI.H/t/H0t0H1t1H2t2H3t3H4t4H5t5 ^ RI6H7t7 ^ RI8H9t9 ]'       d   ^ RI:H;t;H<t< ^ RI.H=t= ^ RI>H?t? ]1]P€                  ,          tA]! R4      tB]! R4      tC]! R4      tD]P*                  PŠ                  tF. RÑOtG/ tH. tI]P”                  P–                  P˜                  tL]Pš                  P�                  ]Pš                  PŸ                  R4      4      tP]P¢                  ]P¤                  ]P¦                  ]P¨                  ]Pª                  0tV]V]P®                  0,          tX]P¨                  ]Pª                  ]P®                  0tY]Z! ]P¶                  ]P¸                  ]Pº                  ]P¼                  ]P¾                  04      t`]Pš                  P�                  ]Pš                  PÂ                  PÄ                  4      tcR R ltdR R lteR R ltf]d! . ]LPÎ                  PÐ                  N]LPÎ                  PÒ                  N]LPÔ                  PÐ                  N]LPÔ                  PÒ                  N]LPÖ                  PÐ                  N]LPÖ                  PÒ                  N]LPØ                  PÐ                  N]LPØ                  PÚ                  N]LPØ                  PÒ                  N]LPØ                  PÜ                  N]LPÞ                  PÐ                  N]LPÞ                  PÚ                  N]LPÞ                  PÒ                  N]LPÞ                  PÜ                  N]LPà                  PÐ                  N]LPà                  PÚ                  N]LPà                  P€                  N]LPà                  Pâ                  N]LPà                  Pä                  N]LPà                  Pæ                  N]LPà                  PÒ                  N]LPà                  PÜ                  N]LPà                  Pè                  N]LPà                  Pê                  N]LPà                  Pì                  N]LPà                  Pî                  N]LPð                  PÐ                  N]LPð                  PÒ                  N]LPò                  PÐ                  N]LPò                  PÒ                  N]LPô                  PÐ                  N]LPô                  PÒ                  N]LPö                  PÐ                  N]LPö                  PÒ                  N]LPø                  PÐ                  N]LPø                  PÒ                  N]LPú                  PÐ                  N]LPú                  PÒ                  N5!  t~]d! ]LPþ                  PÐ                  ]LEP                   PÐ                  ]LEP                   PÒ                  ]LEP                  PÐ                  ]LEP                  EP                  ]LEP                  EP                  ]LEP
                  PÐ                  ]LEP                  PÐ                  ]LEP                  PÒ                  ]LEP                  PÐ                  ]LEP                  PÒ                  4      tˆ]LEP                  3tŠR R lt‹]EP                  R R l4       t�]EP                  R  R! l4       tŽR" R# lt�R$ R% lt�R& R' lt‘]�! ]HEP$                  4      R( R) l4       t“]�! ]�4      ]�! . ]~O4      R* R+ l4       4       t”]�! ]LEP
                  PÐ                  4      R, R- l4       t•]�! ]P–                  EP,                  EP.                  PÐ                  4      RÒR. R/ ll4       t—]�! ]P–                  EP,                  EP0                  PÐ                  4      R0 R1 l4       t˜]�! ]P–                  EP,                  EP2                  PÐ                  4      RÒR2 R3 ll4       t™]�! ]LEP                  EP                  4      ]�! ]LEP                  EP                  4      R4 R5 l4       4       tšR6 R7 lt›]�! ]›4      R8 R9 l4       tœ]�! ]LEP:                  PÐ                  4      R: R; l4       t�]�! ]LEP<                  PÐ                  4      R< R= l4       tžR> R? ltŸR@ RA lt RB RC lt¡RD RE lt¢RF RG lt£]�! ]LEPH                  PÐ                  4      RÒRH RI ll4       t¤]�! ]LEPJ                  PÐ                  4      RÓRJ RK ll4       t¥]�! RL 4      RM RN l4       t¦RÔRPRO/RQ RR lllt§]�! ]LEPP                  PÐ                  4      RÔRS RT ll4       t©]�! ]LEPN                  PÐ                  4      RÕRU RV ll4       tª]�! ]LEPV                  EPX                  4      RW RX l4       t­]�! ]LEP\                  PÐ                  4      RÔRY RZ ll4       t®]�! ]LEP^                  PÐ                  4      RÖR[ R\ ll4       t¯R×R] R^ llt°R_ R` lt±Ra Rb lt²Rc Rd lt³Re Rf lt´Rg Rh ltµRÔRi Rj llt¶]�! ]LEPn                  PÐ                  4      Rk Rl l4       t·]�! ]LEPp                  PÐ                  4      ]�! ]LEPr                  PÐ                  4      RmRO/Rn Ro ll4       4       tº]�! ]LEPv                  PÐ                  4      RpR/Rq Rr ll4       t¼]�! ]LEPz                  P€                  4      RÒRs Rt ll4       t¾]�! ]P–                  P˜                  EP~                  PÐ                  4      ]�! ]P–                  P˜                  EP€                  PÐ                  4      Ru Rv l4       4       tÁ]�! ]P–                  P˜                  EP„                  PÐ                  4      Rw Rx l4       tÂ]�! ]P–                  P˜                  EP†                  PÐ                  4      Ry Rz l4       tÃ]�! ]P–                  P˜                  EPˆ                  PÐ                  4      RÒR{ R| ll4       tÄR} R~ ltÅ]�! ]P–                  P˜                  EPŒ                  P€                  4      RØR R€ ll4       tÇ]�! ]P–                  P˜                  EP�                  PÐ                  4      R� R‚ l4       tÈ]�! ]P–                  P˜                  EP’                  PÐ                  4      RÙRƒRR„R/R… R† lll4       tÊ]�! R‡ 4      Rˆ R‰ l4       tËRŠ R‹ ltÌRŒ R� ltÍ]d! RŽR�R�4      tÎR‘ R’ ltÏR“ R” ltÐRÓR• R– lltÑ ! R— R˜]EP¤                  EP¦                  4      tÔRÒR™R/Rš R› llltÕRÒR™R/Rœ R� llltÖ]EP®                  EP±                  RŽRžRŸ4      tÙ]ÙEPµ                  R ]Ö4       RÒR™R/R¡ R¢ llltÛ]EP®                  EP±                  RŽRžR£4      tÜ]ÜEPµ                  R ]Û4       ]LEPº                  PÐ                  EP½                  ]Pš                  PÂ                  EP¾                  4      ! ]Õ4       ]�! ]LEPÀ                  PÐ                  4      RÒR¤ R¥ ll4       tà]�! R¦ 4      R§ R¨ l4       tá]�! ]LEPÄ                  P€                  4      R© Rª l4       tã]�! ]LEPÈ                  PÐ                  4      R« R¬ l4       tå]�! ]LEPÌ                  PÐ                  4      R­ R® l4       tæ]�! ]LEPÎ                  PÐ                  4      ]�! ]LEPÐ                  PÐ                  4      ]�! ]LEPÒ                  PÐ                  4      ]�! ]LEPÔ                  PÐ                  4      ]�! ]LEPÖ                  PÐ                  4      R¯ R° l4       4       4       4       4       tì]�! ]LEPÚ                  PÐ                  4      R± R² l4       tî]�! ]LEPÐ                  PÒ                  4      ]�! ]LEPÔ                  PÒ                  4      R³ R´ l4       4       tï]�! ]LEPà                  PÐ                  4      ]�! ]LEPâ                  PÐ                  4      Rµ R¶ l4       4       tò]�! ]LEP                   PÐ                  4      ]�! ]LEP                   PÒ                  4      ]�! ]LEPæ                  PÐ                  4      ]�! ]LEPè                  PÐ                  4      R· R¸ l4       4       4       4       tõ]�! ]ˆ U u. uF~  p V ]LEP
                  PÐ                  ]LEP                  EP                  ]LEP                  EP                  ]LEP                   PÐ                  ]LEP                   PÒ                  39  g   K|  V NK€  	  up 4      R¹ Rº l4       tö]�! ]LEPî                  PÐ                  ]LEPð                  PÐ                  ]LEPð                  EPò                  ]LEPô                  PÐ                  .4      R» R¼ l4       tû]�! ]P–                  P˜                  EPø                  PÐ                  4      RÚR½ R¾ ll4       tü]�! ]P–                  P˜                  EPú                  PÐ                  4      R¿ RÀ l4       týRÁ RÂ ltþ]�! ]LEPþ                  PÐ                  4      RÃ RÄ l4       Et / EtRÅ RÆ lEtRÇ RÈ lEt]%EP                  3RÉ RÊ llEtR×RË RÌ llEtRÍ RÎ lEt]EP                  RÏ RÐ l4       EtR# u up i )Ûé    )ÚannotationsN©Úreduce)ÚAnyÚcastÚTYPE_CHECKINGÚTypeVar)Ú	ParamSpec)Ú_unwrap_for_gradÚ_wrap_for_gradÚis_functorch_wrapped_tensorÚTransformType)Úno_python_dispatcher)Ú&retrieve_current_functorch_interpreter)Ú%enable_single_level_autograd_function)Ú
OpOverload)Úcanonicalize_dimÚelementwise_dtypesÚELEMENTWISE_TYPE_PROMOTION_KINDÚis_boolean_dtypeÚis_contiguousÚ(is_contiguous_for_memory_format_or_falseÚis_contiguous_or_falseÚis_float_dtypeÚis_integer_dtypeÚmake_contiguous_strides_forÚ	ShapeType)ÚDataDependentOutputExceptionÚDynamicOutputShapeExceptionÚ
FakeTensorÚin_kernel_invocation_managerÚis_fake_tensorÚrun_fallback_kernelÚUnsupportedOperatorException)Ú_normalize_function_or_error©Úcount_label)ÚCallableÚSequence)ÚFakeTensorMode)ÚIntLikeTypeÚ_PÚ_RÚ_TÚ	MkldnnCPUc               ó    € V ^8„  d   QhRRRR/# )é   Úitemsr.   Úreturnzdict[_T, bool]© )Úformats   "Ú]/home/luca/screen-checking/.venv/lib/python3.14/site-packages/torch/_subclasses/fake_impls.pyÚ__annotate__r7   m   s   € ÷ &ñ &˜ð &˜~ñ &ó    c                 ó.   € \         P                  V R 4      # )T)ÚdictÚfromkeys)r2   s   *r6   Úordered_setr<   m   s   € Ü�=‰=˜ Ó%Ð%r8   c               ó    € V ^8„  d   QhRRRR/# )r1   Údeviceútorch.devicer3   Úboolr4   )r5   s   "r6   r7   r7   s   s   € ÷  ñ   |ð  ¸ñ  r8   c                ó    € V P                   R 8g  # )Úhpu)Útype©r>   s   &r6   Úis_noncontiguous_supportedrE   s   s   € Ø�;‰;˜%ÑÐr8   c               ó$   € V ^8„  d   QhRRRRRR/# )r1   Úar?   Úbr3   r@   r4   )r5   s   "r6   r7   r7   w   s&   € ÷ Dñ D¨ð D¸,ð DÈ4ñ Dr8   c                óÆ   € V P                   VP                   8w  d   R # V P                  RJ ;'       g0    VP                  RJ ;'       g    V P                  VP                  8H  # ©FN)rC   Úindex)rG   rH   s   &&r6   Ú!_same_device_or_unspecified_indexrL   w   sH   € Ø‡v�v�—‘ÔÙØ�7‰7�dˆ?×CÐC˜aŸg™g¨˜o×CÐC°·±¸A¿G¹GÑ1CÐCr8   c               ó    € V ^8„  d   QhRRRR/# )r1   Útype_r   r3   r@   r4   )r5   s   "r6   r7   r7   ¹   s   € ÷ ñ  ð ¨ñ r8   c                ó$  € \         P                  P                  P                  4       pV P	                  V4      ;'       gQ    \
        ;QJ d*    R  V P                  4        4       F  '       g   K   R# 	  R# ! R  V P                  4        4       4      # )c              3  ó8   "  € T F  p\        V4      x € K  	  R # 5i©N)Úcontains_tensor_types)Ú.0Úes   & r6   Ú	<genexpr>Ú(contains_tensor_types.<locals>.<genexpr>»   s   é € ð 1Ù*@ QÔ˜a× Ð Ó*@ùó   ‚TF)ÚtorchÚ_CÚ
TensorTypeÚgetÚisSubtypeOfÚanyÚcontainedTypes)rN   Útensor_types   & r6   rR   rR   ¹   s~   € Ü—(‘(×%Ñ%×)Ñ)Ó+€KØ×Ñ˜[Ó)÷ ð ¯S«Sñ 1Ø*/×*>Ñ*>Ô*@ó1¯S¬Sð ªSð ¨Sñ 1Ø*/×*>Ñ*>Ô*@ó1ó .ð r8   c               ó    € V ^8„  d   QhRRRR/# ©r1   Úfuncr   r3   r@   r4   )r5   s   "r6   r7   r7   Á   s   € ÷ 	ñ 	 ð 	°ñ 	r8   c                óÞ  € \        V \        4      '       g   \        R \        V 4       24      hV P                  p\
        ;QJ d&    R VP                   4       F  '       g   K   RM	  RM! R VP                   4       4      '       d   R# \        VP                  4      ^8H  ;'       dF    VP                  ^ ,          P                  \        P                  P                  P                  4       J # )z func must be an OpOverload, got c              3  óL   "  € T F  p\        VP                  4      x € K  	  R # 5irQ   )rR   rC   )rS   Úargs   & r6   rU   Ú)_is_tensor_constructor.<locals>.<genexpr>Å   s   é € Ð
GÑ6F¨sÔ  §¡×*Ð*Ó6Fùs   ‚"$TF)Ú
isinstancer   ÚAssertionErrorrC   Ú_schemar]   Ú	argumentsÚlenÚreturnsrX   rY   rZ   r[   )rb   Úschemas   & r6   Ú_is_tensor_constructorrn   À   s¦   € ä�dœJ×'Ò'ÜÐ?ÄÀTÃ
¸|ÐLÓMÐMØ�\‰\€Fß
ƒsÑ
G°f×6FÒ6FÓ
G‡s‡s‚sÑ
G°f×6FÒ6FÓ
G×GÒGÙô 	ˆF�N‰NÓ˜qÑ ×XÐX V§^¡^°AÕ%6×%;Ñ%;¼u¿x¹x×?RÑ?R×?VÑ?VÓ?XÐ%Xðr8   c               ó    € V ^8„  d   QhRRRR/# ra   r4   )r5   s   "r6   r7   r7   Î   s   € ÷ 
ñ 
˜*ð 
¨ñ 
r8   c                ó\  aa€ \         P                  P                  P                  4       o\         P                  P	                  S4      o\
        ;QJ d4    VV3R  lV P                  P                   4       F  '       g   K   R# 	  R# ! VV3R  lV P                  P                   4       4      # )c              3  óÎ   <"  € T FZ  pVP                   R 8H  ;'       d?    VP                  P                  S4      ;'       g    VP                  P                  S4      x € K\  	  R# 5i)r>   N)ÚnamerC   r\   )rS   re   Údevice_typeÚoptional_device_types   & €€r6   rU   Ú"_has_device_arg.<locals>.<genexpr>Ñ   sc   øé € ð ñ *ˆCð 	�‰�HÑ÷ 	
ð 	
à�H‰H× Ñ  Ó-÷ :ð :Ø�x‰x×#Ñ#Ð$8Ó9ô	
ó
 *ùs   ƒA%ž"A%Á$A%TF)rX   rY   ÚDeviceObjTyper[   ÚOptionalTyper]   ri   rj   )rb   rs   rt   s   &@@r6   Ú_has_device_argrx   Í   sƒ   ù€ ä—(‘(×(Ñ(×,Ñ,Ó.€KÜ Ÿ8™8×0Ñ0°Ó=Ðß‹3õ ð —<‘<×)Ò)ó�3Œ3ð Š3ð ˆ3õ ð —<‘<×)Ò)óó ð r8   c               ó    € V ^8„  d   QhRRRR/# )r1   Úrun_impl_checkzUCallable[[OpOverload], bool] | OpOverload | list[OpOverload] | tuple[OpOverload, ...]r3   ú.Callable[[Callable[_P, _R]], Callable[_P, _R]]r4   )r5   s   "r6   r7   r7   Û   s    € ÷ ñ ððð
 4ñr8   c                ó   a € R  V 3R llpV# )c               ó    € V ^8„  d   QhRRRR/# ©r1   Úop_implzCallable[_P, _R]r3   r4   )r5   s   "r6   r7   Ú&register_op_impl.<locals>.__annotate__á   s   € ÷ ñ Ð 0ð Ð5Eñ r8   c                óê  <€ \        S\        4      '       de   S\        9   d   \        R S 24      hV \        S&   SP                  p\
        P                  P                  VP                  VP                  4       V # \        S\        \        34      '       d   S F  p\        V4      ! V 4       K  	  V # \        S4      '       g   \        R\        S4       24      h\        P!                  SV 34       V # )zduplicate registration: z%run_impl_check must be callable, got )rg   r   Úop_implementations_dictrh   ri   rX   rY   Ú_fake_dispatch_register_op_implrr   Úoverload_nameÚlistÚtupleÚregister_op_implÚcallablerC   Úop_implementations_checksÚappend)r   rm   Úoprz   s   &  €r6   Úimpl_decoratorÚ(register_op_impl.<locals>.impl_decoratorá   sÝ   ø€ Ü�n¤j×1Ò1ØÔ!8Ô8Ü$Ð'?ÀÐ?OÐ%PÓQÐQØ6=Ô# NÑ3Ø#×+Ñ+ˆFÜ�H‰H×4Ñ4°V·[±[À&×BVÑBVÔWð ˆô ˜¬¬u¨×6Ò6Û$�Ü  Ô$ WÖ-ñ %ð ˆô ˜N×+Ò+Ü$Ø;¼DÀÓ<PÐ;QÐRóð ô &×,Ñ,¨n¸gÐ-FÔGàˆr8   r4   )rz   rŒ   s   f r6   r‡   r‡   Û   s   ø€ ÷ð ð& Ðr8   c               ó    € V ^8„  d   QhRRRR/# ©r1   r‹   r   r3   r@   r4   )r5   s   "r6   r7   r7   ÷   s   € ÷ )ñ ) zð )°dñ )r8   c                ó   € V \         9   # rQ   ©r‚   ©r‹   s   &r6   Ú_is_op_registered_to_fake_ruler“   ÷   s   € ØÔ(Ñ(Ð(r8   c               ó    € V ^8„  d   QhRRRR/# )r1   r‹   r   r3   ÚNoner4   )r5   s   "r6   r7   r7   û   s   € ÷ 	ñ 	˜Jð 	¨4ñ 	r8   c                ó2  € V \         9   d_   \         P                  V R 4       \        P                  P	                  V P
                  P                  V P
                  P                  4       \         F#  w  rWJ g   K  \        P                  W34        R # 	  R # rQ   )
r‚   ÚpoprX   rY   Ú!_fake_dispatch_deregister_op_implri   rr   r„   r‰   Úremove)r‹   ÚcheckÚimpls   &  r6   Ú_deregister_op_implrœ   û   sj   € Ø	Ô$Ô$Ü×#Ñ# B¨Ô-Ü�‰×2Ñ2Ø�J‰J�O‰O˜RŸZ™Z×5Ñ5ô	
÷ 1‰ˆØ�;Ü%×,Ñ,¨e¨]Ô;Úó 1r8   c          
     ó,   € V ^8„  d   QhRRRRRRRRRR/# ©	r1   Ú	fake_moder*   rb   r   Úargsr   Úkwargsr3   r4   )r5   s   "r6   r7   r7     s;   € ÷ Kñ KØðKØ%/ðKØ8;ðKØGJðKàñKr8   c                ó0   € \         V,          ! W.VO5/ VB # rQ   r‘   ©rŸ   rb   r    r¡   s   &&*,r6   Ú#dispatch_to_op_implementations_dictr¤     s   € ô # 4Ö(¨ÐJ¸4ÒJÀ6ÑJÐJr8   c          
     ó,   € V ^8„  d   QhRRRRRRRRRR	/# ©
r1   rŸ   r*   rb   r   r    r   r¡   r3   r    r4   )r5   s   "r6   r7   r7     s;   € ÷  Jñ  JØð JØ%/ð JØ8;ð JØGJð Jàñ Jr8   c                ó˜  € V\         9   d   \        R V 24      h\        WVRR7      w  rEV\        9   d'   VR,          P                  pVP                  R4      3pM\        P                  ! R4      pRp\        V4      pV'       d   VP                  RR4      MRpVe   TMTpV'       d   \        P                  ! R4      VR&   \        V 4      ;_uu_ 4        V! V/ VB p	RRR4       X	P                  P                  R8X  d   V P                  P                  W	V4      # V P                  P                  W	4      #   + '       g   i     Lb; i)	z8func must not be in _non_kwarg_device_constructors, got T©r    r¡   Únormalize_to_only_use_kwargsÚinputÚcpur>   NÚmetar4   )Ú_non_kwarg_device_constructorsrh   r%   Ú_like_tensor_constructorsr>   r—   rX   rx   r!   rC   Úfake_tensor_converterÚfrom_meta_and_deviceÚfrom_real_tensor)
rŸ   rb   r    r¡   Ú_Ú
new_kwargsÚdefault_deviceÚhas_device_argÚ
out_deviceÚrs
   &&*,      r6   Úconstructorsr¸     s+  € ð
 Ô-Ô-ÜØFÀtÀfÐMó
ð 	
ô 1Ø ÀTô�M€Að Ô(Ô(Ø# GÕ,×3Ñ3ˆà—‘˜wÓ'Ð)‰ô Ÿš eÓ,ˆØˆÜ$ TÓ*€Nß3A�—‘ ¨$Ô/Àt€JØ)Ò5‘¸>€JßÜ$Ÿ|š|¨FÓ3ˆ
�8Ñô 
& i×	0Õ	0Ù�$Ð%˜*Ñ%ˆ÷ 
1à‡x�x‡}�}˜ÔØ×.Ñ.×CÑCØ˜*ó
ð 	
ð ×*Ñ*×;Ñ;¸IÓIÐI÷ 
1×	0ús   Ã	D9Ä9E		c          
     ó,   € V ^8„  d   QhRRRRRRRRRR	/# )
r1   rŸ   r*   rb   r   r    r   r¡   r3   r@   r4   )r5   s   "r6   r7   r7   4  s4   € ÷ ñ ØðØ%/ðØ8;ðØGJðà	ñr8   c                ó¸   € \        WVR R7      w  rEVP                  R4      p\        V 4      ;_uu_ 4        V! V4      pRRR4       V#   + '       g   i     X# ; i)T©r©   rª   N)r%   r—   r!   )rŸ   rb   r    r¡   r²   r³   Úinpr·   s   &&*,    r6   Únon_kwarg_is_pinnedr½   3  sU   € ô 1Ø�F¸ô�M€Að �.‰.˜Ó
!€Cô 
& i×	0Õ	0Ù�‹Iˆ÷ 
1à€H÷ 
1Ö	0à€Hús   µ	AÁA	c          
     ó,   € V ^8„  d   QhRRRRRRRRR	R
/# )r1   rŸ   r*   rb   r   rr   Ústrr    úobject | Noner3   r    r4   )r5   s   "r6   r7   r7   E  s;   € ÷ 	Cñ 	CØð	CØ%/ð	CØ7:ð	CØBOð	Càñ	Cr8   c                óà   € \        V 4      ;_uu_ 4        V! W#4      pR R R 4       \        P                  ! XRR7      p\        W\        P                  ! R4      4      #   + '       g   i     LH; i)Nr¬   rD   r«   )r!   rX   Ú
empty_liker    r>   )rŸ   rb   rr   r    Úreal_handleÚmeta_handles   &&&&  r6   Ú_record_function_enterrÅ   D  sQ   € ô
 
& i×	0Õ	0Ù˜4Ó&ˆ÷ 
1ô ×"Ò" ;°vÔ>€Kä�i¬e¯lªl¸5Ó.AÓBÐB÷ 
1×	0ús   ”	AÁA-	c               ó(   € V ^8„  d   QhRRRRRRRR/# )	r1   rŸ   r*   rb   r   Úhandler   r3   r•   r4   )r5   s   "r6   r7   r7   R  s,   € ÷ 	ñ 	Øð	Ø%/ð	Ø9<ð	à	ñ	r8   c                ó   € R # rQ   r4   )rŸ   rb   rÇ   s   &&&r6   Ú_record_function_exitrÉ   Q  s   € ñ 	r8   c          
     ó,   € V ^8„  d   QhRRRRRRRRR	R
/# )r1   rŸ   r*   rb   r   rr   r¿   r    rÀ   r3   r   r4   )r5   s   "r6   r7   r7   [  s4   € ÷  ñ  Øð Ø%/ð Ø7:ð ØBOð àñ r8   c                óv   € \        V 4      ;_uu_ 4        V! W#4      uuR R R 4       #   + '       g   i     R # ; irQ   ©r!   )rŸ   rb   rr   r    s   &&&&r6   Ú_record_function_enter_newrÍ   Z  s&   € ô 
& i×	0Õ	0Ù�DÓ÷ 
1×	0×	0Ó	0úó   ”'§8	c          
     ó,   € V ^8„  d   QhRRRRRRRRRR	/# r¦   r4   )r5   s   "r6   r7   r7   f  s4   € ÷ ñ ØðØ%/ðØ8;ðØGJðàñr8   c                ól  € \        WVR R7      w  rEVR,          pV'       d   TMVR,          P                  p\        P                  ! R4      VR&   VP                  R4      p\	        V 4      ;_uu_ 4        V! V3/ VB p	RRR4       V P
                  P                  V X	V4      #   + '       g   i     L-; i)Tr»   r>   rª   r¬   N)r%   r>   rX   r—   r!   r¯   r°   )
rŸ   rb   r    r¡   r²   r³   Úinput_devicer¶   r¼   r·   s
   &&*,      r6   Únon_kwarg_torÒ   d  s¢   € ô
 1Ø�F¸ô�M€Að ˜hÕ'€Lß!-‘°:¸gÕ3F×3MÑ3M€JÜ Ÿ<š<¨Ó/€JˆxÑØ
�.‰.˜Ó
!€CÜ	% i×	0Õ	0Ù�Ñ#˜
Ñ#ˆ÷ 
1ð ×*Ñ*×?Ñ?Ø�1�jóð ÷ 
1×	0ús   Á4
B#Â#B3	c               ó    € V ^8„  d   QhRRRR/# r�   r4   )r5   s   "r6   r7   r7   x  s   € ÷ ñ ˜Jð ¨4ñ r8   c                ó   € R # ©Fr4   r’   s   &r6   Ústride_incorrect_oprÖ   x  s   € Ùr8   c          
     ó,   € V ^8„  d   QhRRRRRRRRRR	/# r¦   r4   )r5   s   "r6   r7   r7   ~  s4   € ÷ -ñ -Øð-Ø%/ð-Ø8;ð-ØGJð-àñ-r8   c           	     ó¶  a€ R  R loV P                   '       d·   \        ;QJ dA    V3R l\        P                  ! W#P	                  4       4       4       F  '       g   K   RM6	  RM2! V3R l\        P                  ! W#P	                  4       4       4       4      pV'       g1   \
        P                  W#34      w  rV\        V VVV\        R4      4      # \        V4      h)c               ó    € V ^8„  d   QhRRRR/# )r1   ÚxÚobjectr3   r@   r4   )r5   s   "r6   r7   Ú4workaround_stride_incorrect_op.<locals>.__annotate__ƒ  s   € ÷ ñ �vð  $ñ r8   c                óÂ   € \        V 4      '       d   V P                  # \        V \        P                  \        P
                  \        P                  34      '       d   R # R# ©TF)r"   Ú_has_symbolic_sizes_stridesrg   rX   ÚSymIntÚSymFloatÚSymBool©rÚ   s   &r6   Úis_symbolicÚ3workaround_stride_incorrect_op.<locals>.is_symbolicƒ  s?   € Ü˜!×ÒØ×0Ñ0Ð0Ü�aœ%Ÿ,™,¬¯©¼¿¹ÐF×GÒGÙÙr8   c              3  ó4   <"  € T F  pS! V4      x € K  	  R # 5irQ   r4   )rS   rÚ   rä   s   & €r6   rU   Ú1workaround_stride_incorrect_op.<locals>.<genexpr>Œ  s   øé € ð 
Ù$J˜q‰K˜�NˆNÓ$Jùó   ƒTFz2Cannot run fallback kernel for stride_incorrect_op)
Úallow_fallback_kernelsr]   Ú	itertoolsÚchainÚvaluesÚpytreeÚtree_flattenr#   ÚRuntimeErrorr$   )rŸ   rb   r    r¡   Úrequire_dynamicÚ	flat_argsÚ	args_specrä   s   &&*,   @r6   Úworkaround_stride_incorrect_opró   }  s«   ø€ õð ×'×'Ð'ß›#ô 
Ü$-§O¢O°D¿-¹-»/Ô$Jó
Ÿ#Ÿ#š#ô 
Ü$-§O¢O°D¿-¹-»/Ô$Jó
ó 
ˆ÷ Ü#)×#6Ñ#6¸°~Ó#FÑ ˆIÜ&ØØØØô ÐQÓRóð ô ' tÓ
,Ð,r8   c          
     ó,   € V ^8„  d   QhRRRRRRRRRR	/# r¦   r4   )r5   s   "r6   r7   r7   ¡  s4   € ÷ %ñ %Øð%Ø%/ð%Ø8;ð%ØGJð%àñ%r8   c                óv   € \        V 4      ;_uu_ 4        V! V/ VB uuR R R 4       #   + '       g   i     R # ; irQ   rÌ   r£   s   &&*,r6   Ú
resize_as_rö      s+   € ô 
& i×	0Õ	0Ù�TÐ$˜VÑ$÷ 
1×	0×	0Ó	0úrÎ   c          
     ó,   € V ^8„  d   QhRRRRRRRRRR	/# r¦   r4   )r5   s   "r6   r7   r7   ©  s4   € ÷ :ñ :Øð:Ø%/ð:Ø8;ð:ØGJð:àñ:r8   c                ó    € \        W.VO5/ VB # rQ   )r¸   r£   s   &&*,r6   Ú(_sparse_coo_tensor_with_dims_and_tensorsrù   ¨  s   € ô ˜	Ð9¨$Ò9°&Ñ9Ð9r8   c               ó    € V ^8„  d   QhRRRR/# )r1   ÚoffsetsÚFakeTensorLiker3   úlist[int] | Noner4   )r5   s   "r6   r7   r7   ¯  s   € ÷ Eñ E ^ð EÐ8Hñ Er8   c                ó   € \        V R R4      pVf   \        V RR4      p\        V4      '       d   R# Ve   VP                  P                  R8w  d   R# VP	                  R4      P                  4        Uu. uF  p\        V4      NK  	  up# u upi )ÚconstantNÚreal_tensorr«   éÿÿÿÿ)Úgetattrr"   r>   rC   ÚreshapeÚtolistÚint)rû   rÿ   Úoffsets   &  r6   Ú_spdiags_static_offsetsr  ¯  s~   € Ü�w 
¨DÓ1€HØÒÜ˜7 M°4Ó8ˆÜ�h×ÒÙØÒ˜8Ÿ?™?×/Ñ/°5Ô8ÙØ&.×&6Ñ&6°rÓ&:×&AÑ&AÔ&CÓDÑ&C˜FŒC�ŽKÑ&CÑDÐDùÒDs   Á4Bc          
     ó,   € V ^8„  d   QhRRRRRRRRRR/# )r1   rû   z	list[int]Úrowsr  ÚcolsÚ	diag_colsr3   r4   )r5   s   "r6   r7   r7   º  s/   € ÷ ñ ˜)ð ¨3ð °cð Àcð Ècñ r8   c                óÆ   a€ ^ p\        W#4      pV  FL  pV^ 8:  d   \        Wa,           V4      oMWV,
          o\        P                  ! S^ 8¬  V3R l4       VS,          pKN  	  V# )r   c                 ó   <€ R S  2# )z0Trying to create tensor with negative dimension r4   )Únnz_per_diags   €r6   Ú<lambda>Ú_spdiags_nnz.<locals>.<lambda>Ä  s   ø€ ÐFÀ|ÀnÑUr8   )ÚminrX   Ú_check)rû   r	  r
  r  ÚnnzÚpos_offset_limitr  r  s   &&&&   @r6   Ú_spdiags_nnzr  º  sd   ø€ Ø
€CÜ˜4Ó+ÐÛˆØ�QŒ;Ü˜v�}¨iÓ8‰Là+Õ4ˆLÜ�ŠØ˜AÑÜUô	
ð 	ˆ|ÕŠñ ð €Jr8   c               ó(   € V ^8„  d   QhRRRRRRRR/# )r1   r	  r  r
  r  r3   r4   )r5   s   "r6   r7   r7   Ê  s.   € ÷ @ñ @ Cð @¨sð @¸sð @Àsñ @r8   c                óh   € \        W4      p\        \        W4      ^,
          ^ 4      p\        W4^ 4      # ©é   ©r  Úmax)r	  r
  r  Únon_positive_offset_maxÚpositive_offset_maxs   &&&  r6   Ú_spdiags_max_nnz_per_diagr  Ê  s2   € Ü! $Ó2ÐÜœc $Ó2°QÕ6¸Ó:ÐÜÐ&¸QÓ?Ð?r8   c               ó(   € V ^8„  d   QhRRRRRRRR/# )	r1   rŸ   r*   rb   r   Úmax_sizeú
int | Noner3   ztorch.SymIntr4   )r5   s   "r6   r7   r7   Ð  s0   € ÷ ñ Øðà
ðð ð	ð
 ñr8   c               óÆ   € V P                   e   V P                   P                  '       g   \        V4      hT P                   P                  4       p^ RIHp V! V^ VR7       V# )N©Ú_constrain_range_for_sizer  )Ú	shape_envÚallow_dynamic_output_shape_opsr   Úcreate_unbacked_symintÚ%torch.fx.experimental.symbolic_shapesr$  )rŸ   rb   r   r  r$  s   &&$  r6   Ú_spdiags_dynamic_sizer)  Ð  sU   € ð 	×ÑÒ#Ø×"Ñ"×A×AÐAä)¨$Ó/Ð/à
×
Ñ
×
4Ñ
4Ó
6€CåOá˜c q¨hÕ7Ø€Jr8   c               ó    € V ^8„  d   QhRRRR/# )r1   ÚvaluerÛ   r3   r@   r4   )r5   s   "r6   r7   r7   ä  s   € ÷ Bñ B &ð B¨Tñ Br8   c                ó\   € \        V \        4      ;'       d    \        V \        4      '       * # rQ   )rg   r  r@   )r+  s   &r6   Ú_spdiags_is_static_intr-  ä  s!   € Ü�eœSÓ!×AÐA¬*°U¼DÓ*AÔ&AÐAr8   c               ó4   € V ^8„  d   QhRRRRRRRRRR	R
RRR/# )r1   rŸ   r*   rb   r   Ú	diagonalsrü   rû   ÚshapezSequence[int]Úlayoutútorch.layout | Noner3   r    r4   )r5   s   "r6   r7   r7   é  sW   € ÷ fñ fØðfà
ðfð ðfð ð	fð
 ðfð  ðfð ñfr8   c                ó6  aaaa€ VP                  4       p\        P                  ! VR9   R 4       \        P                  ! \        V4      ^8H  R 4       SP                  4       p\        P                  ! VR9   R 4       V^8X  d   ^MVP	                  ^ 4      oV^ 8X  d   ^MSP	                  ^ 4      o\        P                  ! SS8H  VV3R l4       SeL   \        P                  ! S\        P
                  \        P                  \        P                  39   V3R l4       \        P                  ! SP                  \        P                  8H  V3R l4       \        P                  ! VP                  P                  R8H  ;'       d    SP                  P                  R8H  R	 4       Vw  r‰V^8X  d   VP	                  ^ 4      MVP	                  ^4      p
\        ;QJ d    R
 W‰V
S3 4       F  '       d   K   RM	  RM! R
 W‰V
S3 4       4      p\        S4      pVe7   \        P                  ! \        V4      \        \        V4      4      8H  R 4       Se   SM\        P
                  pV'       d   V^ 8X  g   V	^ 8X  d   ^ pMUVe   V'       d   \        WÈWš4      pM<V'       d   S^ 8X  d   ^ pM*V'       d   S\!        W‰V
4      ,          MRp\#        WVR7      p\%        V 4      ;_uu_ 4        \        P&                  ! V3VP                  RR7      p\        P(                  P+                  R4      ;_uu_ 4        V\        P
                  8X  d•   \        P&                  ! ^V3\        P                  RR7      p\-        V\.        4      '       d   V^8*  MRp\        P0                  P2                  P4                  P7                  VVV\        P                  ! R4      VR7      pEM^V\        P                  8X  d¦   \        P&                  ! V^,           3\        P                  RR7      p\        P&                  ! V3\        P                  RR7      p\        P0                  P2                  P8                  P7                  VVVVV\        P                  ! R4      R7      pM¤\        P&                  ! V	^,           3\        P                  RR7      p\        P&                  ! V3\        P                  RR7      p\        P0                  P2                  P8                  P7                  VVVVV\        P                  ! R4      R7      pRRR4       RRR4       V P:                  P=                  V XVP                  4      #   + '       g   i     L?; i  + '       g   i     LJ; i)r  c                 ó   € R # )z"Diagonals must be vector or matrixr4   r4   r8   r6   r  Ú_spdiags.<locals>.<lambda>ò  s   € Ñ2Vr8   c                 ó   € R # )zOutput shape must be 2dr4   r4   r8   r6   r  r5  ó  s   € Ñ*Cr8   c                 ó   € R # )z Offsets must be scalar or vectorr4   r4   r8   r6   r  r5  ö  s   € Ñ0Rr8   c                 ó   <€ R S  RS R2# )zNumber of diagonals (z() does not match the number of offsets (Ú)r4   )Ún_diagsÚ	n_offsetss   €€r6   r  r5  ü  s   ø€ Ð'¨ yÐ0XÐYbÐXcÐcdÑer8   Nc                 ó   <€ R S  2# )zFOnly output layouts (Sparse, SparseCsc, SparseCsr) are supported, got r4   ©r1  s   €r6   r  r5    s   ø€ Ð\Ð]cÐ\dÑer8   c                 ó"   <€ R S P                    2# )z+Offset Tensor must have dtype Long but got ©Údtype)rû   s   €r6   r  r5    s   ø€ Ð=¸g¿m¹m¸_ÑMr8   r«   c                 ó   € R # )z,_spdiags is only implemented for CPU tensorsr4   r4   r8   r6   r  r5  
  s   € Ñ>r8   c              3  ó8   "  € T F  p\        V4      x € K  	  R # 5irQ   )r-  )rS   r+  s   & r6   rU   Ú_spdiags.<locals>.<genexpr>  s   é € ð Ù3U¨%Ô˜u×%Ð%Ó3UùrW   FTc                 ó   € R # )z'Offset tensor contains duplicate valuesr4   r4   r8   r6   r  r5    s   € Ñ=r8   )r   r¬   ©r@  r>   )r>   Úis_coalesced)r1  r>   )r  r1   )r   r  )ÚdimrX   r  rk   ÚsizeÚ
sparse_cooÚ
sparse_cscÚ
sparse_csrr@  Úlongr>   rC   Úallr  Úsetr  r  r)  r!   ÚemptyÚsparseÚcheck_sparse_tensor_invariantsrg   r  ÚopsÚatenÚ_sparse_coo_tensor_unsafeÚdefaultÚ _sparse_compressed_tensor_unsafer¯   r°   )rŸ   rb   r/  rû   r0  r1  Údiagonals_dimÚoffsets_dimr	  r
  r  Ústatic_sizesÚstatic_offsetsÚ
out_layoutr  Úmax_nnzrì   ÚindicesrF  ÚoutÚcrow_indicesÚcol_indicesÚccol_indicesÚrow_indicesr:  r;  s   &&&f&f                  @@r6   Ú_spdiagsrc  è  s:  û€ ð —M‘M“O€MÜ	‡L‚L� &Ñ(Ñ*VÔWÜ	‡L‚L”�U“˜q‘Ñ"CÔDà—+‘+“-€KÜ	‡L‚L� Ñ&Ñ(RÔSà  AÔ%‰a¨9¯>©>¸!Ó+<€GØ  AÔ%‘¨7¯<©<¸«?€IÜ	‡L‚LØ�9ÑÝeôð
 ÒÜ�ŠØ”u×'Ñ'¬×)9Ñ)9¼5×;KÑ;KÐLÑLÜeô	
ô 
‡L‚LØ�‰œŸ™Ñ#ÜMôô 
‡L‚LØ×Ñ×Ñ Ñ&×GÐG¨7¯>©>×+>Ñ+>À%Ñ+GÙ>ôð
 �J€DØ%2°aÔ%7�	—‘˜qÔ!¸Y¿^¹^ÈAÓ=N€Iß“3ñ Ø48À	È9Ñ3Uó—3—3’3ñ Ø48À	È9Ñ3Uóó €Lô -¨WÓ5€NØÒ!Ü�ŠÜ�Ó¤3¤s¨>Ó':Ó#;Ñ;Ù=ô	
ð
 "Ò-‘´5×3CÑ3C€Jß˜ œ d¨a¤iØ‰Ø	Ò	#¯Ü˜>°ÓA‰ß	˜) qœ.Ø‰÷ ð Ô1°$¸iÓHÖHàð 	ô
 $ I¸gÔFˆä	% i×	0Õ	0Ü—’˜c˜V¨9¯?©?À6ÔJˆÜ�\‰\×8Ñ8¸×?Õ?ØœU×-Ñ-Ô-ÜŸ+š+ q¨# h´e·j±jÈÔP�Ü+5°c¼3×+?Ò+?˜s ašxÀU�Ü—i‘i—n‘n×>Ñ>×FÑFØØØÜ Ÿ<š<¨Ó/Ø!-ð Gó ’ð œu×/Ñ/Ô/Ü$Ÿ{š{¨D°1­H¨;¼e¿j¹jÐQWÔX�Ü#Ÿkšk¨3¨&¼¿
¹
È6ÔR�Ü—i‘i—n‘n×EÑE×MÑMØ ØØØØ%Ü Ÿ<š<¨Ó/ð Nó ‘ô  %Ÿ{š{¨D°1­H¨;¼e¿j¹jÐQWÔX�Ü#Ÿkšk¨3¨&¼¿
¹
È6ÔR�Ü—i‘i—n‘n×EÑE×MÑMØ ØØØØ%Ü Ÿ<š<¨Ó/ð Nó �÷3 @÷ 
1ðH ×*Ñ*×?Ñ?Ø�3˜	×(Ñ(óð ÷E @×?ú÷ 
1×	0ús&   Ë*AVÌ6HU5	Ô>VÕ5VÖ VÖV	c               ó0   € V ^8„  d   QhRRRRRRRRR	R
RR/# )r1   rŸ   r*   rb   r   Úselfr    r@  útorch.dtype | NoneÚmasked_gradúbool | Noner3   r4   )r5   s   "r6   r7   r7   S  sD   € ÷ ñ Øðà
ðð ðð ð	ð
 ðð ñr8   c                ó`  € \        WW44      pV\        Jd   \        \        V4      # VP                  \
        P                  J dy   Ve   \        R4      h\        V 4      ;_uu_ 4        \
        P                  ! \        VP                  4      VP                  RR7      pR R R 4       \        V XVP                  4      # \        V 4      ;_uu_ 4        V! W#VR7      pR R R 4       V P                  P                  V XVP                  4      #   + '       g   i     Lt; i  + '       g   i     LJ; i)Nz2dtype argument is not supported by sparse_to_denser¬   rE  ©r@  rg  )Úmaybe_to_dense_mkldnnÚNotImplementedÚtyping_castr    r1  rX   rI  rï   r!   rO  r†   r0  r@  Úfake_devicer¯   r°   )rŸ   rb   re  r@  rg  Úmaybe_mkldnn_outr^  s   &&&&&  r6   Ú	_to_denserp  R  sê   € ô -¨Y¸eÓQÐØœ~Ó-Üœ:Ð'7Ó8Ð8à‡{�{”e×&Ñ&Ó&ØÒÜÐSÓTÐTÜ)¨)×4Õ4Ü—+’+Ü�d—j‘jÓ!Ø—j‘jØôˆC÷ 5ô ˜) S¨$×*:Ñ*:Ó;Ð;ä	% i×	0Õ	0Ù�4°+Ô>ˆ÷ 
1à×*Ñ*×?Ñ?Ø�3˜×(Ñ(óð ÷ 5×4ú÷ 
1×	0ús   Á'7D
ÃDÄ
D	ÄD-	c                ó   € \         P                  P                  V P                  9   ;'       dQ    V \        P
                  P                  \        P                  P                  \        P                  P                  39  # rQ   )
rX   ÚTagÚdynamic_output_shapeÚtagsrS  rK   ÚTensorÚnonzerorU  Úrepeat_interleave©rb   s   &r6   r  r  r  s\   € ”—‘×/Ñ/°4·9±9Ñ<÷ Tð TØÜ�J‰J×ÑœtŸ|™|×3Ñ3´T×5KÑ5K×5RÑ5RÐSñ	TðTr8   c          
     ó,   € V ^8„  d   QhRRRRRRRRRR	/# ©
r1   rŸ   r*   rb   r   r    r   r¡   r3   r•   r4   )r5   s   "r6   r7   r7   v  s4   € ÷ ,ñ ,Øð,Ø%/ð,Ø8;ð,ØGJð,à	ñ,r8   c                ó   € \        V4      hrQ   )r   r£   s   &&*,r6   Ú	dyn_shaper|  q  s   € ô & dÓ
+Ð+r8   FÚunique_consecutivec               ó<   € V ^8„  d   QhRRRRRRRRR	R
RR
RR
RR
RR/	# )r1   rŸ   r*   rb   r   re   r    rG  r!  Úsortedr@   Úreturn_inverseÚreturn_countsr}  r3   ú)tuple[FakeTensor, FakeTensor, FakeTensor]r4   )r5   s   "r6   r7   r7   |  sm   € ÷ Oñ OØðOà
ðOð 
ðOð 
ð	Oð
 ðOð ðOð ðOð ðOð /ñOr8   c               ó   € V P                   e   V P                   P                  '       g   \        V4      hV'       d   VP                  MVP                  pVf   VfÎ   ^ RIHp	Hp
 V
! VP                  4       4      '       g   VP                  4       ^ 8X  d   ^ pMxV P                   P                  4       p\        P                  ^,
          pVf   VP                  4       MVP                  V4      pV
! V4      '       g   \        V4      pV	! W‹R7       Vf   V'       d   W‚n        MW‚n        Vf   VP                  V34      .pM9VP                  ! . VP                  R V OVNVP                  V^,           R  O5!  .pVR J;'       d$    VP                   \"        P$                  ! R4      8H  pV'       g	   V'       dE   TP                  Vf   VP                  MVP                  V,          3\"        P&                  R7      pM!VP                  ^ \"        P&                  R7      pVP)                  V4       V'       g	   V'       dS   TP                  Vf   V^ ,          P                  MV^ ,          P                  V,          3\"        P&                  R7      pM!VP                  ^ \"        P&                  R7      pVP)                  V4       \+        V4      # )N©r$  Úhas_free_symbols©r  r«   r?  )r%  r&  r   Úunique_consecutive_memoÚunique_memor(  r$  r…  Únumelr'  ÚsysÚmaxsizerH  r  Ú	new_emptyr0  rn  rX   r>   Úint64rŠ   r†   )rŸ   rb   re   rG  r  r€  r�  r}  r  r$  r…  Úmaxvalr‰  ÚretÚreturn_if_dim_and_cpuÚinverseÚcountss   &&&&&&&$         r6   Ú_uniquer“  |  s!  € ð 	×ÑÒ#Ø×"Ñ"×A×AÐAô *¨$Ó/Ð/ç);ˆ#×
%Ò
%ÀÇÁ€Cð ‚˜#š+÷	
ñ
   §	¡	£×,Ò,°·±³ÀÔ1Að ‰Cà×%Ñ%×<Ñ<Ó>ˆCä—[‘[ 1•_ˆFà#&¢;�C—I‘I”K°C·H±H¸S³MˆEÙ# E×*Ò*Ü˜U›�á% cÕ6àŠ;ß!Ø.1Õ+à"%”à
‚{à�}‰}˜c˜VÓ$Ð%‰ð �}Š}ÐJ˜cŸi™i¨¨˜oÐJ¨sÐJ°S·Y±Y¸sÀQ½w¸yÐ5IÓJÐKˆà t˜O×VÐV°·±Ä5Ç<Â<ÐPUÓCVÑ0VÐß×.Ø—-‘-ØšˆC�IŠI¨3¯9©9°S­>Ð*;Ä5Ç;Á;ð  ó 
‰ð —-‘- ¬¯©�-Ó5ˆØ‡J�JˆwÔç×-Ø—‘ØšKˆC��F�LŠL¨c°!­f¯l©l¸3Õ.?Ð-AÌÏÉð ó 
‰ð —‘˜q¬¯©�Ó4ˆØ‡J�JˆvÔä�‹:Ðr8   c               ó4   € V ^8„  d   QhRRRRRRRRR	RR
RRR/# )r1   rŸ   r*   rb   r   re   r    r  r@   r€  r�  r3   r‚  r4   )r5   s   "r6   r7   r7   Ï  sW   € ÷ Vñ VØðVà
ðVð 
ðVð ð	Vð
 ðVð ðVð /ñVr8   c           	     ó    € \        WVR W4V4      # rQ   ©r“  )rŸ   rb   re   r  r€  r�  s   &&&&&&r6   Úunique2r—  Î  s   € ô �9 C¨¨vÀ}ÓUÐUr8   c               ó0   € V ^8„  d   QhRRRRRRRRR	RR
R/# )r1   rŸ   r*   rb   r   re   r    r  r@   r€  r3   útuple[FakeTensor, FakeTensor]r4   )r5   s   "r6   r7   r7   Û  sD   € ÷ 
ñ 
Øð
à
ð
ð 
ð
ð ð	
ð
 ð
ð #ñ
r8   c           	     ó,   € \        WVR W4R4      w  rVpWV3# )NFr–  )rŸ   rb   re   r  r€  Úuniquesr‘  Ú_countss   &&&&&   r6   Úuniquer�  Ú  s)   € ô !(Ø˜˜d F¸Eó!Ñ€G�gð ÐÐr8   c               ó0   € V ^8„  d   QhRRRRRRRRR	R
RR/# )r1   rŸ   r*   rb   r   re  r    rG  r  rK   r+   r3   r4   )r5   s   "r6   r7   r7   é  sL   € ÷ 5Eñ 5EØð5Eà
ð5Eð ð5Eð 
ð	5Eð
 ð5Eð ñ5Er8   c                óÈ  aaa€ ^ RI Hp SP                  '       d   \        # SP	                  4       p\
        P                  ! V^ 8g  R 4       S^ 8¼  d   SMSV,           oSP                  S4      pV! SV8¬  4      '       g   V! SV) 8  4      '       d   \
        P                  ! RVVV3R l4       \        SP                  4       4      p\        SP                  4       4      p	Rp
V! S^ 8¬  4      '       d'   SP                  4       SV	S,          ,          ,           p
M=V! S^ 8  4      '       d-   SP                  4       SV,           V	S,          ,          ,           p
V
fb   V P                  e/   V P                  P                  '       g   V P                  '       g   \        V4      hV P                  P                  4       p
VS V	S V
f   \        R4      hSP!                  W‰V
4      # )r   ©Úguard_or_falsec                 ó   € R # )z-select() cannot be applied to a 0-dim tensor.r4   r4   r8   r6   r  Úmeta_select.<locals>.<lambda>ø  s   € Ñ?r8   Fc                 óH   <€ R S R\        SP                  4       4       RS  2# )zselect(): index z! out of range for tensor of size z at dimension )r…   rH  )rG  rK   re  s   €€€r6   r  r£    s)   ø€ Ð& u gÐ-NÜ�D—I‘I“KÓ Ð! °¨uñ6r8   Nz#new_storage_offset must not be None)r(  r¡  Ú	is_sparserl  rG  rX   Ú_check_indexrH  r…   ÚstrideÚstorage_offsetr%  Úallow_scalar_outputsr   r'  rh   Ú
as_strided)rŸ   rb   re  rG  rK   r¡  ÚndimrH  Únew_sizeÚ
new_strideÚnew_storage_offsets   &&fff      r6   Úmeta_selectr¯  è  s™  ú€ õ Eà‡~‡~€~ÜÐà�8‰8‹:€DÜ	×ÒØ�‰	Ù?ôð
 ˜”‰#˜s T�z€CØ�9‰9�S‹>€Dá�e˜t‘m×$Ò$©°uÀ¸u±}×(EÒ(EÜ×ÒØö6ô	
ô �D—I‘I“KÓ €HÜ�d—k‘k“mÓ$€JàÐÙ�e˜q‘j×!Ò!Ø!×0Ñ0Ó2°U¸ZÈ½_Õ5LÕLÑÙ	˜ ™	×	"Ò	"Ø!×0Ñ0Ó2°e¸dµlÀjÐQTÅoÕ5UÕUÐàÒ!Ø×ÑÒ&Ø×#Ñ#×8×8Ð8Ø×2×2Ð2ä.¨tÓ4Ð4ð '×0Ñ0×GÑGÓIÐà�ˆØ�3ˆØÒ!ÜÐBÓCÐCà�?‰?˜8Ð1CÓDÐDr8   c               ó8   € V ^8„  d   QhRRRRRRRRR	R
RR
RR
RR/# )r1   rŸ   r*   rb   r   re   r    rG  r  r  r@   r€  r�  r3   r‚  r4   )r5   s   "r6   r7   r7   "  sX   € ÷ ñ Øðà
ðð 
ðð 
ð	ð
 ðð ðð ðð /ñr8   c           
     ól   € \        T TTV^ 8¼  d   TMV\        VP                  ^4      ,          VVV4      # ©r   )r“  r  r«  )rŸ   rb   re   rG  r  r€  r�  s   &&&&&&&r6   Ú
unique_dimr³  !  s>   € ô ØØØà�aŒx‰˜S¤3 s§x¡x°Ó#3Õ3ØØØó	ð 	r8   c               ó4   € V ^8„  d   QhRRRRRRRRR	RR
RRR/# )r1   rŸ   r*   rb   r   re   r    r€  r@   r�  rG  r!  r3   r‚  r4   )r5   s   "r6   r7   r7   8  sN   € ÷ ñ Øðà
ðð 
ðð ð	ð
 ðð 
ðð /ñr8   c                ó(   € \        V VVVR VVRR7      # )FT)r}  r–  )rŸ   rb   re   r€  r�  rG  s   &&&&&&r6   r}  r}  7  s)   € ô ØØØØØØØØô	ð 	r8   c          
     ó,   € V ^8„  d   QhRRRRRRRRRR/# )	r1   Ú	old_shapeúSequence[IntLikeType]Ú
old_strideÚ	new_shapeÚsize_obliviousr@   r3   zlist[IntLikeType] | Noner4   )r5   s   "r6   r7   r7   M  sA   € ÷ Lñ LØ$ðLà%ðLð %ðLð ð	Lð
 ñLr8   c                ó”  aaa€ ^ RI HoHoHp R VV3R llpR VV3R llp\	        V 4      ^ 8X  d   ^.\	        V4      ,          # \        \        P                  V ^4      pV! V^ 8H  4      pV'       d    V! V! W4      4      '       d   \        V4      # ^ .\	        V4      ,          p	V'       ds   \        \	        V4      ^,
          RR4       FO  p
V
\	        V4      ^,
          8X  d   ^Wš&   K   \        W*^,           ,          ^4      Wš^,           ,          ,          Wš&   KQ  	  V	# \	        V4      ^,
          p
VR,          p^p^p\        \	        V 4      ^,
          RR4       Fà  pWÀV,          ,          pV^ 8X  gG   V! W^,
          ,          ^8g  4      '       g   K9  V! W^,
          ,          WË,          8g  4      '       g   K_  V
^ 8¼  dL   V! WÜ8  4      '       g   V! W*,          ^8H  4      '       d%   WÛ,          Wš&   WÒV
,          ,          pV
^,          p
KR  V! WÜ8g  4      '       d    R# V^ 8”  g   KÍ  W^,
          ,          p^p^pKâ  	  V
R8w  d   R# V	# )r   )r¡  Úguard_or_trueÚsym_eqc               ó    € V ^8„  d   QhRRRR/# ©r1   rÚ   r   r3   r4   )r5   s   "r6   r7   Ú%_compute_stride.<locals>.__annotate__Y  s   € ÷ ñ  ð ¨ñ r8   c                ó(   <€ S'       d	   S! V 4      # V # rQ   r4   )rÚ   r¡  r»  s   &€€r6   Úmaybe_guard_or_falseÚ-_compute_stride.<locals>.maybe_guard_or_falseY  s   ø€ ßÙ! !Ó$Ð$àˆr8   c               ó    € V ^8„  d   QhRRRR/# rÀ  r4   )r5   s   "r6   r7   rÁ  _  s   € ÷ ñ ˜sð  sñ r8   c                ó(   <€ S'       d	   S! V 4      # V # rQ   r4   )rÚ   r½  r»  s   &€€r6   Úmaybe_guard_or_trueÚ,_compute_stride.<locals>.maybe_guard_or_true_  s   ø€ ßÙ  Ó#Ð#àˆr8   Nr  )r(  r¡  r½  r¾  rk   r   ÚoperatorÚmulr…   Úranger  )r·  r¹  rº  r»  r¾  rÃ  rÇ  r‰  Ú
zero_numelr­  Úview_dÚchunk_base_strideÚtensor_numelÚ
view_numelÚtensor_dr¡  r½  s   &&&f           @@r6   Ú_compute_striderÒ  M  s	  ú€ ÷ñ ÷ñ ÷ñ ô ˆ9ƒ~˜ÔØˆs”S˜“^Õ#Ð#ä”8—<‘< ¨AÓ.€EÙ% e¨q¡jÓ1€JßÑ*©6°)Ó+G×HÒHÜ�JÓÐà%& C¬#¨i«.Õ$8€JçÜœC 	›N¨QÕ.°°BÖ7ˆFØœ˜Y›¨!Õ+Ô+Ø%&�
Ó"ô ˜	¨1¥*Õ-¨qÓ1°JÈ½zÕ4JÕJð Ó"ñ	 8ð Ðä�‹^˜aÕ€Fà%/°¥^ÐØ !€LØ€Jäœ#˜i›.¨1Õ,¨b°"Ö5ˆØ (Õ+Õ+ˆà�qŒ=Ù 	°Q­,Õ 7¸1Ñ <×=Ô=Ù#Ø a�<Õ(¨LÕ,LÑL÷ô ð ˜A”+Ù# JÑ$=×>Ò>Ù'¨	Õ(9¸QÑ(>×?Ò?à%/Õ%C�
Ñ"Ø¨Õ/Õ/�
Ø˜!•’á" :Ñ#=×>Ò>Úà˜!Ž|Ø$.¸!­|Õ$<Ð!Ø �Ø’
ñ/ 6ð0 �„|ÙØÐr8   c               ó    € V ^8„  d   QhRRRR/# )r1   r+  r   r3   r!  r4   )r5   s   "r6   r7   r7   œ  s   € ÷ ñ  cð ¨jñ r8   c                ó�   € \        V 4      \        J d   V # \        V \        P                  4      '       d   ^ RIHp V! V RR7      # R# )r   )Úoptimization_hintN)Úfallback)rC   r  rg   rX   rà   r(  rÕ  )r+  rÕ  s   & r6   Ú_optimization_hint_or_noner×  œ  s7   € ÜˆEƒ{”cÓØˆÜ�%œŸ™×&Ò&ÝKá  °Ô6Ð6Ùr8   c               ó$   € V ^8„  d   QhRRRRRR/# )r1   Úlhsr   Úrhsr3   r@   r4   )r5   s   "r6   r7   r7   ¦  s!   € ÷ ñ �Cð ˜cð  dñ r8   c                ó²   € ^ RI Hp V! W8H  4      '       d   R# \        V 4      p\        V4      pVe   Ve   W48w  d   R# \        P                  ! W8H  4       R# )r   r   TF)r(  r¡  r×  rX   r  )rÙ  rÚ  r¡  Úlhs_hintÚrhs_hints   &&   r6   Ú
_hinted_eqrÞ  ¦  sO   € ÝDá�c‘j×!Ò!Ùä)¨#Ó.€HÜ)¨#Ó.€HØÒ˜8Ò+¨xÔ/CÙô
 
‡L‚L�‘ÔÙr8   c               ó    € V ^8„  d   QhRRRR/# ©r1   rG   útorch.Tensorr3   r@   r4   )r5   s   "r6   r7   r7   ¸  s   € ÷  ñ  ¨ð  ¸$ñ  r8   c           	     ó°  € ^ RI HpHp V! V P                  4       ^8  4      '       d   R# \	        V P                  4       4      pVf   R# V^8  d*   \
        P                  ! V P                  4       ^8  4       R# ^p^p\        \        \        V P                  V P                  4       4      4      4       FŸ  w  rgV! V^8H  4      '       d   K  \	        V4      pV^8X  d   \
        P                  ! V^8H  4       KE  \        Wt4      '       g   \        Wu4      '       g    R# YR! V4      '       d   TM\
        P                  ! V^4      ,          pWF,          pK¡  	  R# )r   )r¡  Úis_nested_intTF)r(  r¡  rã  r‰  r×  rX   r  Úreversedr†   Úzipr0  r§  rÞ  Úsym_max)	rG   r¡  rã  Ú
numel_hintÚexpected_strideÚexpected_stride_maxrH  r§  Ú	size_hints	   &        r6   Ú!_is_contiguous_with_hinted_checksrë  ¸  s  € ßSá�a—g‘g“i !‘m×$Ò$Ùä+¨A¯G©G«IÓ6€JØÒÙØ�A„~Ü�Š�Q—W‘W“Y ‘]Ô#Ùà€OØÐÜ ¤¤s¨1¯7©7°A·H±H³JÓ'?Ó!@ÖA‰ˆÙ˜$ !™)×$Ò$Ùä.¨tÓ4ˆ	Ø˜Œ>Ü�LŠL˜ ™Ô#Ùä˜&×2Ò2¼:Ø÷<
ò <
ò à }°T×':Ò':™tÄÇÂÈdÐTUÓ@VÕVÐØÕŠñ Bñ" r8   c               ó$   € V ^8„  d   QhRRRRRR/# )r1   rG   rá  r0  úShapeType | tuple[ShapeType]r3   r@   r4   )r5   s   "r6   r7   r7   Û  s$   € ÷ ñ ØðØ8ðà	ñr8   c                ó,  a€ ^ RI Ho \        P                  ! VRR7      p\        ;QJ d-    V3R lV P                  4        4       F  '       g   K   RM"	  RM! V3R lV P                  4        4       4      ;'       g™    \        ;QJ d-    V3R lV P                  4        4       F  '       g   K   RM"	  RM! V3R lV P                  4        4       4      ;'       g;    \        ;QJ d    V3R lV 4       F  '       g   K   R# 	  R# ! V3R lV 4       4      # )r   ©Úhas_guarding_hintF©Úvalidatec              3  ó>   <"  € T F  pS! V4      '       * x € K  	  R # 5irQ   r4   ©rS   Úsrð  s   & €r6   rU   Ú+_view_has_unbacked_input.<locals>.<genexpr>ã  s   øé € Ð7©h¨Ñ! !Ó$×$Ñ$«hùó   ƒTc              3  ó>   <"  € T F  pS! V4      '       * x € K  	  R # 5irQ   r4   rô  s   & €r6   rU   rö  ä  s   øé € Ð<±¨AÑ$ QÓ'×'Ñ'³ùr÷  c              3  ó>   <"  € T F  pS! V4      '       * x € K  	  R # 5irQ   r4   rô  s   & €r6   rU   rö  å  s   øé € Ð7±¨AÑ$ QÓ'×'Ñ'³ùr÷  )r(  rð  ÚutilsÚextract_shape_from_varargsr]   rH  r§  )rG   r0  rð  s   &&@r6   Ú_view_has_unbacked_inputrü  Û  sº   ø€ õ Hä×,Ò,¨U¸UÔC€E÷ 	‹Ô7¨a¯f©f¬hÓ7��ŠÔ7¨a¯f©f¬hÓ7Ó7÷ 	8ð 	8ß‹3Ô<°·±´Ó<�3�3Š3Ô<°·±´Ó<Ó<÷	8ð 	8ç‹3Ô7±Ó7�3Œ3ðò ðð Ô7±Ó7Ó7ðr8   c               ó    € V ^8„  d   QhRRRR/# rà  r4   )r5   s   "r6   r7   r7   é  s   € ÷ Wñ W \ð W¸Tñ Wr8   c                óJ  aa€ ^ RI p^ RIHp ^ RIHo R V3R llp^ RIpV! V P                  4       4      pV! V4      pV'       d	   V'       g   R# ^ RIHp V! \        4      p	\        V4      \        V4      ,            FC  p
WšP                  P                  ,          P                  V
P                  P                  V
4       KE  	  . pV	P                  4        F/  pVP                  4       vrÞV F  pVP!                  Wß34       K  	  K1  	  V'       g   R# V UUu/ uF0  w  pqÿP                  P                  VP                  P                  bK2  	  pppR o V! VP"                  V3R	 lV P                  4        4       ^4      pV! VP"                  V3R
 lV 4       ^4      pVP%                  VV,
          P'                  V4      4      pV^ 8w  d   R#  T F  w  pp\0        P2                  ! TT8H  4       K!  	  R# u uppi   \(        \*        \,        TP.                  3 d     R# i ; i)a�  
Collect candidate (x, y) pairs whose runtime hints match (so they
*could* be equal), then test whether substituting them into the
view's numel equation makes the equation symbolically zero.
Only commit the equalities (adds the real Eq guards via bool(x == y)
which triggers set_replacement) if the substitution actually solves
the view validity check.

This avoids polluting the shape env with spurious guards from probing.

Returns True if at least one equality was committed.

Conservative: only considers SymInts that appear as a top-level dim of
the input or target (skipping the -1 marker), and skips already-equal
pairs, and skips unbacked symbols.
Nr   )Úfree_unbacked_symbolsc               ó   € V ^8„  d   QhRR/# )r1   r3   zlist[torch.SymInt]r4   )r5   s   "r6   r7   Ú3try_duck_specialization_first.<locals>.__annotate__ÿ  s   € ÷ ñ Ð0ñ r8   c                ó  <€ . pV  F€  p\        V\        P                  4      '       g   K%  VP                  P                  pVP
                  p\        V4      ^8w  g   W49  d   K_  S! V4      '       d   Ko  VP                  V4       K‚  	  V# )z>Keep only SymInts whose expr is a single bare *backed* symbol.)rg   rX   rà   ÚnodeÚexprÚfree_symbolsrk   rŠ   )Údimsr^  rõ  r  Úfreerÿ  s   &    €r6   Ú_atomic_symsÚ3try_duck_specialization_first.<locals>._atomic_symsÿ  sq   ø€ à"$ˆÛˆAÜ˜a¤§¡×.Ò.ÙØ—6‘6—;‘;ˆDØ×$Ñ$ˆDÜ�4‹y˜AŒ~ Ô!1ÙÙ$ T×*Ò*ÙØ�J‰J�qŽMñ ð ˆ
r8   F)Údefaultdictc                ór   € \        V \        P                  4      '       d   V P                  P                  # T # rQ   )rg   rX   rà   r  r  )rõ  s   &r6   Ú_expr_ofÚ/try_duck_specialization_first.<locals>._expr_of1  s%   € Ü(¨¬E¯L©L×9Ò9ˆq�v‰v�{‰{Ð@¸qÐ@r8   c              3  ó4   <"  € T F  pS! V4      x € K  	  R # 5irQ   r4   ©rS   rõ  r  s   & €r6   rU   Ú0try_duck_specialization_first.<locals>.<genexpr>5  s   øé € Ð'F¹X¸©°¯¨»Xùrè   c              3  ó4   <"  € T F  pS! V4      x € K  	  R # 5irQ   r4   r  s   & €r6   rU   r  6  s   øé € Ð+GÁ¸A©H°Q¯K¨KÃùrè   T)rÉ  Ú	functoolsr   r(  rÿ  ÚsympyrH  Úcollectionsr
  r:   r…   r  ÚhintÚ
setdefaultr  rì   rŠ   rÊ  ÚsimplifyÚsubsÚ	TypeErrorÚ
ValueErrorÚAttributeErrorÚSympifyErrorrX   r  )rG   r0  rÉ  r   r  r  Úa_symsÚtarget_symsr
  Úbucketsrõ  Ú
candidatesÚmembersÚ	canonicalÚrestÚmÚcr  Úa_numelÚshape_numelÚdiffr  rÿ  s   &&                   @@r6   Útry_duck_specialization_firstr)  é  sÅ  ù€ ó" Ý åK÷ð ó á˜!Ÿ&™&›(Ó#€FÙ˜uÓ%€KßŸÙõ (á9DÄTÓ9J€GÜ�&‹\œD Ó-×-Ð-ˆð 	—‘—‘Õ×'Ñ'¨¯©¯©°QÖ7ñ .ð
 ;=€JØ—>‘>Ö#ˆØ"Ÿ>™>Ó+Ðˆ	ÛˆAØ×Ñ˜y˜nÖ-ó ñ $÷
 Ùñ .8ô*Ù-7¡T Q¨�‰�‰�Q—V‘V—[‘[Ò ©Zð 	ñ *ò
AðÙ˜Ÿ™Ô'F¸Q¿V¹V¼XÓ'FÈÓJˆÙ˜XŸ\™\Ô+GÁÓ+GÈÓKˆØ�~‰~˜w¨Õ4×:Ñ:¸4Ó@ÓAˆØ�1Œ9Ùð ó ‰ˆˆ1Ü�Š�Q˜!‘VÖñ áùó)*øô ”z¤>°5×3EÑ3EÐFô Úðús   Ä6G7ÅA8G= Ç=!H"È!H"c               ó0   € V ^8„  d   QhRRRRRRRRRRR	R/# )
r1   rG   rá  r0  rí  Úsize_oblivious_enabledr@   Ú
allow_copyÚtried_duck_specializer3   r4   )r5   s   "r6   r7   r7   C  sL   € ÷ iñ iØðià'ðið !ðið ð	ið
  ðið ñir8   c                ó.  a a€ ^ RI Hp ^ RIHpHp \
        P                  ! SRR7      o\
        P                  ! SS P                  4       4      oS P                  ^ 8X  dU   S pS F<  p	\        P                  ! V	^8H  4       \        P                  P                  VR4      pK>  	  VS J d	   V! S 4      # V# \        S4      ^ 8X  d_   S pS P                   F<  p	\        P                  ! V	^8H  4       \        P                  P!                  VR4      pK>  	  VS J d	   V! S 4      # V# \#        \$        P&                  S^4      p
\        P                  ! S P                  4       V
8H  V V3R l4       \        S4      \        S P                  4      8X  d(   V! V! SS P                  4      4      '       d	   V! S 4      # V'       d   \)        S 4      '       d0   M\+        S 4      '       d   \-        S4      pS P/                  SV4      # \1        S P3                  4       S P5                  4       SVR7      pVe   S P/                  SV4      # V'       dâ   \        P6                  P8                  P:                  P<                  '       g   \?        S S4      '       dœ   \        P6                  P8                  P:                  P@                  '       d+   V'       g#   \C        S S4      '       d   \E        S SRVRR7      # \G        S 4      '       d   \-        S4      pS P/                  SV4      # \E        S SRVR	7      # V'       d<   \-        S4      pS PI                  \        PJ                  R
7      P/                  SV4      # RS P                   RS P5                  4        RS R2p\M        V4      h)r   )Úview_of©r¡  r¾  Frñ  c                 ó*   <€ R S P                    RS R2# )z&Could not reshape a tensor with shape ú as a tensor with shape Ú!)r0  )rG   r0  s   €€r6   r  Ú%_view_unbacked_meta.<locals>.<lambda>n  s   ø€ Ð8¸¿¹¸	ÐAYÐZ_ÐY`Ð`aÑbr8   )r»  T)r+  r,  r-  )r+  r,  ©Úmemory_formatz Cannot view a tensor with shape z and strides r2  r3  r  )'Útorch._primsr/  r(  r¡  r¾  rú  rû  Ú
infer_sizer‰  r«  rX   r  Ú_refsÚ	unsqueezerk   r0  Úsqueezer   rÉ  rÊ  r   r   r   rª  rÒ  rH  r§  ÚfxÚexperimentalÚ_configÚbacked_size_obliviousrü  Úunify_view_symbols_bso_metar)  Ú_view_unbacked_metarë  ÚcloneÚcontiguous_formatr  )rG   r0  r+  r,  r-  r/  r¡  r¾  Ú_aÚlengthr'  ÚstridesÚnew_stridesÚmsgs   ff&&&         r6   rA  rA  C  sÝ  ù€ õ %ßLô ×,Ò,¨U¸UÔC€Eô ×Ò˜U A§G¡G£IÓ.€Eð 	‡v�v�„{ØˆÛˆFÜ�LŠL˜ 1™Ô%Ü—‘×&Ñ& r¨2Ó.ŠBñ ð �‹7Ù˜1“:ÐàˆIô ˆ5ƒz�Q„ØˆØ—g”gˆFÜ�LŠL˜ 1™Ô%Ü—‘×$Ñ$ R¨Ó,ŠBñ ð �‹7Ù˜1“:ÐàˆIäœŸ™ u¨aÓ0€Kä	‡L‚LØ	�‰‹	�[Ñ Ýbôô
 ˆ5ƒz”S˜Ÿ™“\Ô!¡n±V¸EÀ1Ç7Á7Ó5K×&LÒ&LÙ�q‹zÐç$:Ô˜a× Ó ÄÈa×@PÒ@PÜ-¨eÓ4ˆØ�|‰|˜E 7Ó+Ð+ä!Ø	�‰‹�!—(‘(“*˜eÐ4Jô€Kð ÒØ�|‰|˜E ;Ó/Ð/÷ Ü�‰×Ñ×%Ñ%×;×;Ð;Ü# A u×-Ò-ô �H‰H×!Ñ!×)Ñ)×E×EÐEß)Ü-¨a°×7Ò7ä&ØØØ'+Ø%Ø&*ôð ô -¨Q×/Ò/Ü1°%Ó8ˆGØ—<‘<  wÓ/Ð/ä"Øˆu¨U¸zô
ð 	
÷ Ü-¨eÓ4ˆà�w‰w¤U×%<Ñ%<ˆwÓ=×HÑHÈÐPWÓXÐXà,¨Q¯W©W¨I°]À1Ç8Á8Ã:À,ÐNfÐglÐfmÐmnÐ
o€CÜ
�S‹/Ðr8   c          
     ó,   € V ^8„  d   QhRRRRRRRRR	R
/# )r1   rŸ   r*   rb   r   rG   r    r0  r   r3   zFakeTensor | Exceptionr4   )r5   s   "r6   r7   r7   °  s4   € ÷ 
ñ 
Øð
Ø%/ð
Ø4>ð
ØHKð
àñ
r8   c                ó´  € VP                   '       g   VP                  '       d   \        # \        P                  ! . VOVP                  4       N5!  p\        V4      '       d=   \        WV.VO5!  p\        \        VP                  \        P                  R 7      4      # \        V V\        \        VP                  \        P                  R 7      4      .VO5!  # ©r5  )r¥  Ú	is_mkldnnrl  rú  r8  r‰  r   Ú
_view_metarm  r    rB  rX   rC  )rŸ   rb   rG   r0  Úviews   &&&* r6   Ú_reshape_copyrO  ¯  s´   € ð 	‡{‡{€{�a—k—k�kÜÐô ×ÒÐ/˜eÐ/ Q§W¡W£YÓ/€EÜ˜a× Ò Ü˜)¨1Ð5¨uÓ5ˆÜÜ˜Ÿ
™
´×1HÑ1H˜
ÓIó
ð 	
ô ØØÜœ
 A§G¡G¼%×:QÑ:Q GÓ$RÓSð
ð ó	
ð 	
r8   r,  c               ó0   € V ^8„  d   QhRRRRRRRRR	R
RR/# )r1   rŸ   r*   rb   r   rG   r    r0  r   r,  r@   r3   r4   )r5   s   "r6   r7   r7   È  sD   € ÷ 
ñ 
Øð
à
ð
ð ð
ð ð	
ð
 ð
ð ñ
r8   c          	     ó&  € \         P                  P                  P                  P                  '       g   \        W$4      '       d   \        \        \        W$VR 7      4      # \        \        \         P                  P                  ! V.VO5RV/ 4      # ))r,  r,  )rX   r<  r=  r>  r?  rü  rm  r    rA  r9  Ú_reshape_view_helper)rŸ   rb   rG   r,  r0  s   &&&$*r6   rM  rM  Æ  sz   € ô ‡x�x×Ñ×$Ñ$×:×:Ð:Ô>VØ	÷?ò ?ô ÜÔ+¨AÀÔLó
ð 	
ô ÜÜ�K‰K×,Ò,¨QÐN°ÒNÀ:ÑNó
ð 	
r8   r^  c               ó0   € V ^8„  d   QhRRRRRRRRR	R
RR/# )r1   rŸ   r*   rb   r   rG   r    r0  r+   r^  úFakeTensor | Noner3   r4   )r5   s   "r6   r7   r7   Ý  sD   € ÷ ñ Øðà
ðð ðð ð	ð
 
ðð ñr8   c               ó\   € \        WV.VO5R R/ pVe   V# \        P                  R V4      # )r,  Tc                óB   € V P                  \        P                  R 7      # rK  )rB  rX   rC  rã   s   &r6   r  Ú!_view_meta_copy.<locals>.<lambda>í  s   € �!—'‘'¬×(?Ñ(?�'Ô@r8   )rM  rí   Útree_map)rŸ   rb   rG   r^  r0  Úresults   &&&$* r6   Ú_view_meta_copyrZ  Ü  s;   € ô ˜	¨ÐD¨UÒD¸tÑD€Fà
‚Øˆä�?‰?Ù@Øóð r8   c          
     ó,   € V ^8„  d   QhRRRRRRRRR	R/# )
r1   rŸ   r*   rb   r   Úrepeatsr    Úoutput_sizeúIntLikeType | Noner3   r4   )r5   s   "r6   r7   r7   ó  s:   € ÷ *ñ *Øð*à
ð*ð ð*ð $ð	*ð
 ñ*r8   c                óæ   € Vf^   V P                   e   V P                   P                  '       g   \        V4      hT P                   P                  4       p^ RIHp V! V4       VP                  V4      # )Nr#  )r%  r&  r   r'  r(  r$  rŒ  )rŸ   rb   r\  r]  r$  s   &&&& r6   Úrepeat_interleave_tensorr`  ò  sf   € ð Òà×ÑÒ'Ø×&Ñ&×E×EÐEä-¨dÓ3Ð3à×)Ñ)×@Ñ@ÓBˆõ 	Tá! +Ô.à×Ñ˜[Ó)Ð)r8   c               ó(   € V ^8„  d   QhRRRRRRRR/# )	r1   rŸ   r*   rb   r   re   r    r3   zBint | float | bool | torch.SymInt | torch.SymFloat | torch.SymBoolr4   )r5   s   "r6   r7   r7     s,   € ÷ ñ ØðØ%/ðØ6@ðàGñr8   c                ó8  € VP                   ;pe   V# V P                  e/   V P                  P                  '       g   V P                  '       g   \        V4      h\	        VP
                  4      '       d   V P                  P                  4       pM„\        VP
                  4      '       d   V P                  P                  4       pMN\        VP
                  4      '       d   V P                  P                  4       pM\        RVP
                   24      hW2n         V# )Nz local_scalar_dense/item NYI for )Ú	item_memor%  r©  r   r   r@  Úcreate_unbacked_symfloatr   r'  r   Úcreate_unbacked_symboolÚNotImplementedError)rŸ   rb   re   r·   s   &&& r6   Úlocal_scalar_denserg  
  sÙ   € ð
 �]‰]ÐˆÒ'ØˆØ×ÑÒ"Ø×Ñ×4×4Ð4Ø×.×.Ð.ô +¨4Ó0Ð0Ü�c—i‘i× Ò Ø×Ñ×8Ñ8Ó:‰Ü	˜#Ÿ)™)×	$Ò	$Ø×Ñ×6Ñ6Ó8‰Ü	˜#Ÿ)™)×	$Ò	$Ø×Ñ×7Ñ7Ó9‰ä!Ð$DÀSÇYÁYÀKÐ"PÓQÐQØ„MØ€Hr8   c               ó(   € V ^8„  d   QhRRRRRRRR/# )	r1   rŸ   r*   rb   r   re   r    r3   úlist[FakeTensor]r4   )r5   s   "r6   r7   r7   $  s,   € ÷ 9ñ 9Øð9Ø%/ð9Ø6@ð9àñ9r8   c                ó†   € \         P                  P                  P                  P	                  V4      P                  ^4      # r  )rX   rR  rS  rv  rU  Úunbind)rŸ   rb   re   s   &&&r6   Únonzero_numpyrl  #  s.   € ô �9‰9�>‰>×!Ñ!×)Ñ)¨#Ó.×5Ñ5°aÓ8Ð8r8   c               ó(   € V ^8„  d   QhRRRRRRRR/# )r1   rŸ   r*   rb   r   re   r    r3   r4   )r5   s   "r6   r7   r7   +  s.   € ÷ /Pñ /P�~ð /P¨Zð /P¸jð /PÈZñ /Pr8   c                ó”  € V P                   e   V P                   P                  '       g   \        V4      hVP                  ;pEfQ   ^ RIHpHp ^ RIHp ^ RI	H
p V! VP                  4       4      '       g   VP                  4       ^ 8X  d   ^ pEMV P                   P                  4       p\        P                  ^,
          pV! VP                  4       4      '       g   \        VP                  4       4      pM‘\         P"                  ! VP$                  4      P&                  p	V! V	P(                  V	P                   P*                  4      p
\-        V
P.                  V4      '       d   \        P                  ^,
          pMV
P.                  pV! W8R7       W2n        VP1                  W2P3                  4       3^V3\4        P6                  R7      # )Nr„  ©ÚIntInfinity©Úbound_sympyr†  r?  )r%  r&  r   Únonzero_memor(  r$  r…  Útorch.utils._sympy.numbersrp  Útorch.utils._sympy.value_rangesrr  r‰  r'  rŠ  r‹  r  ÚmathÚprodr0  r  r  Úvar_to_rangerg   ÚupperÚnew_empty_stridedrG  rX   r�  )rŸ   rb   re   r  r$  r…  rp  rr  rŽ  Ú	prod_nodeÚ
prod_ranges   &&&        r6   rv  rv  *  sO  € ð 	×ÑÒ#Ø×"Ñ"×A×AÐAô *¨$Ó/Ð/à×ÑÐˆÓ(÷	
õ 	;Ý?á §	¡	£×,Ò,°·±³ÀÔ1Að ŠCà×%Ñ%×<Ñ<Ó>ˆCä—[‘[ 1•_ˆFá# C§I¡I£K×0Ò0Ü˜SŸY™Y›[Ó)‘ä ŸIšI c§i¡iÓ0×5Ñ5�	Ù(Ø—N‘N I×$7Ñ$7×$DÑ$Dó�
ô ˜j×.Ñ.°×<Ò<Ü Ÿ[™[¨1�_‘Fà'×-Ñ-�Fá% cÕ6àÔØ× Ñ  #§w¡w£yÐ!1°A°s°8Ä5Ç;Á;Ð ÓOÐOr8   c               ó0   € V ^8„  d   QhRRRRRRRRR	R
RR/# )r1   rŸ   r*   rb   r   Úpaddedr    rû   ri  Útotal_Lr^  r3   r4   )r5   s   "r6   r7   r7   ^  sD   € ÷ %*ñ %*Øð%*à
ð%*ð ð%*ð ð	%*ð
  ð%*ð ñ%*r8   c                ó  € \        V4      ^8w  d   \        R\        V4       R24      hVf¯   V P                  e   V P                  P                  '       g   \	        V4      hT P                  P                  4       p\        P                  ^,
          p^ RIH	pH
p V! VP                  4       4      '       g   \        VP                  4       4      pV! V^ VR7       V.VP                  R,          O5pVP                  V4      # )r  z&Only one jagged dim is supported, got z offsetsr„  r  :r1   NN)rk   rh   r%  r&  r   r'  rŠ  r‹  r(  r$  r…  r‰  r  r0  rŒ  )	rŸ   rb   r~  rû   r  rŽ  r$  r…  Úoutput_shapes	   &&&&&    r6   Ú_padded_dense_to_jagged_forwardr‚  ]  sÛ   € ô ˆ7ƒ|�qÔÜØ4´S¸³\°NÀ(ÐKó
ð 	
ð ‚à×ÑÒ'Ø×&Ñ&×E×EÐEô .¨dÓ3Ð3à×%Ñ%×<Ñ<Ó>ˆä—‘˜q•ˆ÷	
ñ
   §¡£×/Ò/Ü˜Ÿ™›Ó(ˆFá! '¨q°fÕ=àÐ/˜fŸl™l¨2Õ.Ñ/€LØ×Ñ˜LÓ)Ð)r8   c               ó$   € V ^8„  d   QhRRRRRR/# )r1   rH  r+   rK   r3   r^  r4   )r5   s   "r6   r7   r7   †  s"   € ÷ ñ ˜{ð °;ð ÐCUñ r8   c                óˆ  € ^ RI HpHp V! V! V^ 8¬  W8*  4      4      '       d   V# V! V! V^ 8  W) 8¬  4      4      '       d	   W,           # V! W) 8  4      '       d   ^ # V! W8„  4      '       d   V # V! V^ 8¬  4      '       d   \        P                  ! W4      # V! V^ 8  4      '       d   \        P
                  ! W,           ^ 4      # R# )r   )r¡  Úsym_andN)r(  r¡  r…  rX   Úsym_minræ  )rH  rK   r¡  r…  s   &&  r6   Ú_compute_slice_indexr‡  †  s«   € ßMá‘g˜e q™j¨%©-Ó8×9Ò9ØˆÙ	™ ¨¡	¨5°E©>Ó:×	;Ò	;Ø�|ÐÙ	˜ ™×	&Ò	&ÙÙ	˜™×	%Ò	%ØˆÙ	˜ ™
×	#Ò	#Ü�}Š}˜UÓ)Ð)Ù	˜ ™	×	"Ò	"Ü�}Š}˜U�\¨1Ó-Ð-ár8   c               ó8   € V ^8„  d   QhRRRRRRRRR	R
RR
RRRR/# )r1   rŸ   r*   rb   r   re  r    rG  r  Ústartr!  ÚendÚstepr3   r4   )r5   s   "r6   r7   r7   š  sb   € ÷ J?ñ J?ØðJ?à
ðJ?ð ðJ?ð 
ð	J?ð
 ðJ?ð 
ðJ?ð ðJ?ð ñJ?r8   c                óÖ  € ^ RI HpHp V P                  p	VP	                  4       p
V
^ 8X  d   \        R4      h\        VP	                  4       V4      p\        VP                  4       4      p\        VP                  4       4      pV^ 8:  d   \        R4      hVf   ^ M\        W³,          V4      pV! V\        P                  8H  4      '       g   Vf	   W³,          M\        W³,          V4      pRpVez   Vev   V! Wí8¬  4      '       d   Wí,
          V,           ^,
          V,          pMGV! WÞ8¬  4      '       d   ^ pM4\        P                  ! Wí,
          ^ 4      pVV,           ^,
          V,          pVfX   V	f   \        R4      hV	P!                  4       p\        P"                  ! V^ 8¬  4       \        P"                  ! WûV,          8*  4       WÃ,          V,          pVe&   VP%                  4       WÜV,          ,          ,           pM8V	f   \        R4      hV	P!                  4       p\        P"                  ! V^ 8¬  4       WûV&   VWÃ&   VP&                  '       d   \)        R4      hVP+                  W¼V4      # )r   )r¡  Ústatically_known_truez,slice() cannot be applied to a 0-dim tensor.zslice step must be positiveNz$Must have shape_env to create symintz<Slice decomposition for quantized tensors aren't implemented)r(  r¡  r�  r%  rG  rï   r   r…   rH  r§  r‡  rŠ  r‹  rX   ræ  rh   r'  r  r¨  Úis_quantizedrf  rª  )rŸ   rb   re  rG  r‰  rŠ  r‹  r¡  r�  r%  r«  ÚsizesrF  Ústart_indexÚ	end_indexr¬  r(  r­  r¨  s   &&&&&&&            r6   Úslice_forwardr’  ™  s  € ÷ð
 ×#Ñ#€IØ�8‰8‹:€DØˆq„yÜÐIÓJÐJÜ
˜4Ÿ8™8›: sÓ
+€CÜ�—‘“Ó€EÜ�4—;‘;“=Ó!€Gàˆq„yÜÐ8Ó9Ð9ð ’}‘!Ô*>¸u½zÈ5Ó*Q€Kñ ! ¬¯©Ñ!3×4Ò4¸ºð 	Ž
ä! %¥*¨cÓ2ð ð $(€HØÒ 9Ò#8Ù˜)Ñ2×3Ò3Ø!Õ/°$Õ6¸Õ:¸tÕC‰HÙ˜KÑ4×5Ò5Ø‰Hô
 —=’= Õ!8¸!Ó<ˆDØ˜t� a�¨DÕ0ˆHð ÒØÒÜ Ð!GÓHÐHØ×3Ñ3Ó5ˆÜ�Š�X ‘]Ô#Ü�Š�X s¥Ñ+Ô,ð • Õ$€Jð ÒØ×,Ñ,Ó.°Às½|Õ1KÕK‰àÒÜ Ð!GÓHÐHØ"×9Ñ9Ó;ˆÜ�Š�^ qÑ(Ô)àˆ#�JØ€G�LØ××ÐÜ!ØJó
ð 	
ð �‰˜u¨~Ó>Ð>r8   c          
     ó,   € V ^8„  d   QhRRRRRRRRRR/# )	r1   rŸ   r*   rb   r   re  r    Úmaskr3   r4   )r5   s   "r6   r7   r7   è  s4   € ÷ ("ñ ("Øð("Ø%/ð("Ø7Að("ØISð("àñ("r8   c                óÌ  € V P                   e   V P                   P                  '       g   \        V4      hT P                   P                  4       p\        P
                  ^,
          p^ RIHpHp ^ RI	H
p ^ RIHp	 V! VP                  4       4      '       g   \        VP                  4       4      p
M‘\        P                   ! VP"                  4      P$                  pV	! VP&                  VP                   P(                  4      p\+        VP,                  V4      '       d   \        P
                  ^,
          p
MVP,                  p
V
^8”  d   T
pV! WER7       VP/                  V34      # )Nr„  ro  rq  r†  )r%  r&  r   r'  rŠ  r‹  r(  r$  r…  rt  rp  ru  rr  r‰  r  rv  rw  r0  r  r  rx  rg   ry  rŒ  )rŸ   rb   re  r”  r  rŽ  r$  r…  rp  rr  Únum_elementsr{  r|  s   &&&&         r6   Úmasked_selectr—  ç  s  € ð
 	×ÑÒ#Ø×"Ñ"×A×AÐAô *¨$Ó/Ð/à
×
Ñ
×
4Ñ
4Ó
6€Cô �[‰[˜1�_€F÷õ 7Ý;ñ
 ˜DŸJ™J›L×)Ò)Ü˜4Ÿ:™:›<Ó(‰ä—I’I˜dŸj™jÓ)×.Ñ.ˆ	Ù  §¡°×1DÑ1D×1QÑ1QÓRˆ
Ü�j×&Ñ&¨×4Ò4ÜŸ;™;¨�?‰Là%×+Ñ+ˆLØ�aÔØˆá˜cÕ.à�>‰>˜3˜&Ó!Ð!r8   r>   r1  c               ó<   € V ^8„  d   QhRRRRRRRRR	RR
RRRRRRR/	# )r1   rŸ   r*   rb   r   Útr    rH  rý   r§  r@  rf  r>   ztorch.device | Noner1  r2  r3   r•   r4   )r5   s   "r6   r7   r7     sb   € ÷ #ñ #Øð#à
ð#ð ð#ð ð	#ð
 ð#ð ð#ð  ð#ð  ð#ð 
ñ#r8   c               ó.  € Ve>   VP                  4       \        V4      8w  d    \        RV RVP                  4        24      hVe>   VP                  4       \        V4      8w  d    \        RV RVP                  4        24      hVe-   VP                  V8w  d   \        RV RVP                   24      hVe-   VP
                  V8w  d   \        RV RVP
                   24      hVe/   VP                  V8w  d   \        RV RVP                   24      hR # R # )Nz Tensor size mismatch! Expected: z, Got: z"Tensor stride mismatch! Expected: z!Tensor dtype mismatch! Expected: z"Tensor layout mismatch! Expected: z"Tensor device mismatch! Expected: )rH  r†   rh   r§  r@  r1  r>   )rŸ   rb   r™  rH  r§  r@  r>   r1  s   &&&&&&$$r6   Úassert_tensor_metadatar›    s%  € ð ÒØ�6‰6‹8”u˜T“{Ô"Ü Ø2°4°&¸ÀÇÁÃ¸zÐJóð ð ÒØ�8‰8‹:œ˜v›Ô&Ü Ø4°V°H¸GÀAÇHÁHÃJÀ<ÐPóð ð ÒØ�7‰7�eÔÜ Ø3°E°7¸'À!Ç'Á'ÀÐKóð ð ÒØ�8‰8�vÔÜ Ø4°V°H¸GÀAÇHÁHÀ:ÐNóð ð ÒØ�8‰8�vÔÜ Ø4°V°H¸GÀAÇHÁHÀ:ÐNóð ñ ñ r8   c                óP   € \         P                  P                  V P                  9   # rQ   )rX   rr  Údata_dependent_outputrt  rx  s   &r6   r  r  ;  s   € œuŸy™y×>Ñ>À$Ç)Á)ÒKr8   c          
     ó,   € V ^8„  d   QhRRRRRRRRRR	/# rz  r4   )r5   s   "r6   r7   r7   <  ó4   € ÷ -ñ -Øð-Ø%/ð-Ø8;ð-ØGJð-à	ñ-r8   c                ó   € \        V4      hrQ   )r   r£   s   &&*,r6   Údata_depr¡  ;  s   € ô ' tÓ
,Ð,r8   c               ó(   € V ^8„  d   QhRRRRRRRR/# )	r1   rb   r   re  r    r]  zlist[FakeTensor | None]r3   r•   r4   )r5   s   "r6   r7   r7   D  s,   € ÷ 4ñ 4Ø
ð4Ø&ð4Ø1Hð4à	ñ4r8   c                ó˜   € V FC  pVf   K	  VP                   \        P                  \        P                  39   g   K:  \	        V 4      h	  R # rQ   )r@  rX   r@   Úuint8r   )rb   re  r]  rK   s   &&& r6   Úcheck_no_bool_index_tensorsr¥  D  s7   € ó ˆØÔ §¡´·±¼U¿[¹[Ð0IÖ!IÜ-¨dÓ3Ð3ó r8   c          
     ó,   € V ^8„  d   QhRRRRRRRRR	R
/# )r1   rŸ   r*   rb   r   r    ztuple[Any, ...]r¡   zdict[str, Any]r3   r    r4   )r5   s   "r6   r7   r7   L  s:   € ÷ 2ñ 2Øð2à
ð2ð ð2ð ð	2ð
 ñ2r8   c                óD  € \        WVR R7      w  rEVR,          P                  p\        V 4      ;_uu_ 4        V! V/ VB p\        V4      '       g   VP	                  VP
                  4      pRRR4       XVR,          J d   V# \        WV4      #   + '       g   i     L+; i)Tr¨   rª   N)r%   r>   r!   rE   rŒ  r0  r    )rŸ   rb   r    r¡   r²   r³   r¶   r^  s   &&&&    r6   Ú)run_and_return_new_tensor_of_input_devicer¨  L  s�   € ô 1Ø ÀTô�M€Að ˜GÕ$×+Ñ+€JÜ	% i×	0Õ	0Ù�DÐ#˜FÑ#ˆÜ)¨*×5Ò5Ø—-‘- §	¡	Ó*ˆC÷ 
1ð
 ˆj˜Õ!Ó!Øˆ
Ü�i jÓ1Ð1÷ 
1×	0ús   ·5BÂB	rS  ÚprimsÚprimc               ó    € V ^8„  d   QhRRRR/# r�   r4   )r5   s   "r6   r7   r7   d  s   € ÷ 2ñ 2�:ð 2 $ñ 2r8   c                ó(   € V P                   \        9   # rQ   )Ú	namespaceÚ_is_builtin_namespacesr’   s   &r6   Ú
is_builtinr¯  d  s   € Ø�<‰<Ô1Ñ1Ð1r8   c               ó    € V ^8„  d   QhRRRR/# ra   r4   )r5   s   "r6   r7   r7   h  s   € ÷ Xñ X�:ð X $ñ Xr8   c                ó^   € \         P                  P                  V P                  4       R 4      # )ÚMeta)rX   rY   Ú._dispatch_has_computed_kernel_for_dispatch_keyrr   rx  s   &r6   Úhas_metar´  h  s    € Ü�8‰8×BÑBÀ4Ç9Á9Ã;ÐPVÓWÐWr8   c          
     ó,   € V ^8„  d   QhRRRRRRRRR	R
/# )r1   rŸ   r*   rG   r    r@  rf  rg  rh  r3   rÛ   r4   )r5   s   "r6   r7   r7   l  s:   € ÷ &5ñ &5Øð&5àð&5ð ð&5ð ð	&5ð
 ñ&5r8   c           	     óJ  € \        V\        4      '       d   VP                  '       g   \        # Ve   TMVP                  pVP                  \
        9  d   \        R4      hV\
        9  d   \        R4      hVP                  \        9   d   WAP                  8w  d   \        R4      h\        VP                  4      p\        V 4      ;_uu_ 4        \        P                  ! V\        V4      VRR7      pR R R 4       \        V XVP                  4      #   + '       g   i     L'; i)NzVmkldnn_to_dense expects float, bfloat16, half, uint8, int8, float8_e4m3fn tensor inputzhmkldnn tensor only can be converted to be a float, bfloat16, Half, uint8, int8, float8_e4m3fn cpu tensorzPFor int8, uint8, float8 mkldnn_tensor input, we should not change the data type.r¬   rE  )rg   r    rL  rl  r@  Ú_MKLDNN_TO_DENSE_DTYPESrï   Ú&_MKLDNN_DTYPE_CHANGE_RESTRICTED_DTYPESr†   r0  r!   rX   Úempty_stridedr   rn  )rŸ   rG   r@  rg  Ú	out_dtyper0  r^  s   &&&&   r6   rk  rk  l  sô   € ô �qœ*×%Ò%Ø�{�{ˆ{äÐàÒ*‘°·±€IØ‡w�wÔ-Ô-Üð)ó
ð 	
ð Ô/Ô/Üð4ó
ð 	
ð 	‡w�wÔ8Ô8¸YÏ'É'Ô=QÜðó
ð 	
ô �!—'‘'‹N€EÜ	% i×	0Õ	0Ü×!Ò!ØÜ'¨Ó.ØØô	
ˆ÷ 
1ô �i  a§m¡mÓ4Ð4÷ 
1×	0ús   Ã$DÄD"	c                  óX   € ] tR tRt]R R l4       t]R R l4       t]R R l4       tRtR	# )
Ú_ToDenseMkldnni•  c               ó(   € V ^8„  d   QhRRRRRRRR/# ©r1   re  rá  r@  rf  rg  rh  r3   r4   )r5   s   "r6   r7   Ú_ToDenseMkldnn.__annotate__—  s6   € ÷ @ñ @Øð@à!ð@ð !ð@ð 
ñ	@r8   c                	óB   € \         P                  P                  WV4      # rQ   )rS  rp  rU  )re  r@  rg  s   &&&r6   ÚforwardÚ_ToDenseMkldnn.forward–  s   € ô �~‰~×%Ñ% d°;Ó?Ð?r8   c               ó(   € V ^8„  d   QhRRRRRRRR/# )	r1   Úctxr   Úinputsz4tuple[torch.Tensor, torch.dtype | None, bool | None]Úoutputrá  r3   r•   r4   )r5   s   "r6   r7   r¿  Ÿ  s0   € ÷ *ñ *Øð*àDð*ð ð*ð 
ñ	*r8   c                	óˆ   € V P                  R 4       V^ ,          P                  V n        V^ ,          P                  V n        R# rJ   )Úset_materialize_gradsrL  Úinput_is_mkldnnr@  Úinput_dtype)rÄ  rÅ  rÆ  s   &&&r6   Úsetup_contextÚ_ToDenseMkldnn.setup_contextž  s3   € ð 	×!Ñ! %Ô(Ø$ Q�i×1Ñ1ˆÔØ  �)Ÿ/™/ˆŽr8   c               ó$   € V ^8„  d   QhRRRRRR/# )r1   rÄ  r   Úgradútorch.Tensor | Noner3   z&tuple[torch.Tensor | None, None, None]r4   )r5   s   "r6   r7   r¿  ª  s$   € ÷ 	:ñ 	:Øð	:Ø+ð	:à	/ñ	:r8   c                	óÈ   € Vf   R# V P                   '       d-   \        P                  P                  WP                  4      R R 3# VP                  V P                  R7      R R 3# ©Nr?  ©NNN)rÉ  rS  Ú	to_mkldnnrU  rÊ  Úto)rÄ  rÎ  s   &&r6   ÚbackwardÚ_ToDenseMkldnn.backward¨  sY   € ð
 Š<Ø#Ð#Ø××ÐÜ—>‘>×)Ñ)¨$·±Ó@À$ÈÐLÐLð �w‰w˜SŸ_™_ˆwÓ-¨t°TÐ9Ð9r8   r4   N)	Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__ÚstaticmethodrÁ  rË  rÕ  Ú__static_attributes__r4   r8   r6   r¼  r¼  •  s>   † Øô@ó ð@ð ô*ó ð*ð ô	:ó ô	:r8   r¼  rg  c               ó(   € V ^8„  d   QhRRRRRRRR/# r¾  r4   )r5   s   "r6   r7   r7   ¹  s0   € ÷ (ñ (Ø
ð(àð(ð ð	(ð
 ñ(r8   c               ón  a€ V P                   oS\        P                  8X  d   Ve   V P                  VR7      # T # S\        P                  8X  d   \
        P                  WV4      # S\        9   d!   \        P                  P                  WV4      # \        P                  ! RV3R l4       \        R4      h)Nr?  Fc                 ó   <€ R S  2# )z!to_dense does not support layout r4   r=  s   €r6   r  Ú)to_dense_composite_impl.<locals>.<lambda>È  s   ø€ Ð"CÀFÀ8Ñ Lr8   Úunreachable)r1  rX   ÚstridedrÔ  Ú_mkldnnr¼  ÚapplyÚ_TO_DENSE_SPARSE_LAYOUTSrS  rp  rU  r  rh   )re  r@  rg  r1  s   &&$@r6   Úto_dense_composite_implræ  ¹  s�   ø€ ð �[‰[€Fð ”—‘ÔØ',Ò'8ˆt�w‰w˜UˆwÓ#ÐB¸dÐBØ”—‘ÔÜ×#Ñ# D°Ó=Ð=ØÔ)Ô)Ü�~‰~×%Ñ% d°;Ó?Ð?Ü	‡L‚L�ÔLÔMÜ
˜Ó
'Ð'r8   c               ó(   € V ^8„  d   QhRRRRRRRR/# r¾  r4   )r5   s   "r6   r7   r7   Ì  s0   € ÷ 6<ñ 6<Ø
ð6<àð6<ð ð	6<ð
 ñ6<r8   c          
     óÂ  aa€ \        4       oSP                  4       \        P                  8w  g   \	        V 4      '       gm   \
        P                  ! 4       ;_uu_ 4        SP                  4       ;_uu_ 4        \        P                  P                  WVR 7      uuRRR4       uuRRR4       # SP                  4       o ! VV3R lR\
        P                  P                  P                  4      p\        4       ;_uu_ 4        VP!                  WV4      uuRRR4       #   + '       g   i     M; iRRR4       K�    + '       g   i     L�; i  + '       g   i     R# ; i)rj  Nc                  óL   <€ ] tR tRt]R V V3R ll4       t]R R l4       tRtR# )Ú7to_dense_functorch_frontmode_impl.<locals>._ToDenseGradiÙ  c          
     ó,   € V ^8„  d   QhRRRRRRRRR	R/# )
r1   rÄ  r   re  rá  r@  rf  rg  rh  r3   r4   )r5   s   "r6   r7   ÚDto_dense_functorch_frontmode_impl.<locals>._ToDenseGrad.__annotate__Û  s:   € ÷ 	.ñ 	.Øð	.àð	.ð &ð	.ð %ð		.ð
 ñ	.r8   c           
     	ó6  <€ V P                  R 4       \        VS4      pV P                  V4       VP                  V n        VP
                  V n        W0n        \        P                  ! 4       ;_uu_ 4        SP                  4       ;_uu_ 4        VP
                  '       d   \        P                  WBV4      pM!\        P                  P                  WBVR7      pRRR4       RRR4       \!        XS4      #   + '       g   i     L$; i  + '       g   i     L/; i)Frj  N)rÈ  r   Úsave_for_backwardr@  rÊ  rL  rÉ  rg  rX   Úenable_gradÚlowerr¼  rä  rS  Úto_denserU  r   )rÄ  re  r@  rg  Úunwrapped_selfr^  ÚinterpreterÚlevels   &&&&  €€r6   rÁ  Ú?to_dense_functorch_frontmode_impl.<locals>._ToDenseGrad.forwardÚ  sÍ   ø€ ð ×%Ñ% eÔ,Ü-¨d°EÓ:ˆNØ×!Ñ! .Ô1Ø,×2Ñ2ˆCŒOØ"0×":Ñ":ˆCÔØ)ŒOÜ×"Ò"×$Õ$ k×&7Ñ&7×&9Õ&9Ø!×+×+Ð+Ü(×.Ñ.¨~ÀkÓR‘CäŸ-™-×/Ñ/Ø&Àð 0ó �C÷	 ':×$ô " # uÓ-Ð-÷ ':×&9ú×$×$ús%   Á5DÂAC5	ÃDÃ5DÄ DÄD	c               ó$   € V ^8„  d   QhRRRRRR/# )r1   rÄ  r   Úgradsr3   r4   )r5   s   "r6   r7   rì  ñ  s!   € ÷ 	ñ 	˜#ð 	 sð 	¨sñ 	r8   c                	óî   € Vw  pVf   R# V P                   '       d    VP                  V P                  R7      R R 3# V P                  w  p\        P
                  P                  W#V P                  4      R R 3# rÑ  )rÉ  rÔ  rÊ  Úsaved_tensorsrS  Úto_dense_backwardrU  rg  )rÄ  r÷  rÎ  rª   s   &*  r6   rÕ  Ú@to_dense_functorch_frontmode_impl.<locals>._ToDenseGrad.backwardð  su   € à‰GˆTØŠ|Ø'Ð'Ø×"×"Ð"ð —w‘w S§_¡_�wÓ5°t¸TÐAÐAØ×(Ñ(‰HˆUä×&Ñ&×.Ñ.¨t¸C¿O¹OÓLØØðð r8   r4   N)r×  rØ  rÙ  rÚ  rÛ  rÁ  rÕ  rÜ  )ró  rô  s   €€r6   Ú_ToDenseGradrê  Ù  s.   ø† Ø	÷	.ð 	.ó 
ð	.ð* 
ô	ó 
ô	r8   rü  )r   Úkeyr   ÚGradr   rX   rï  rð  rS  rñ  rU  rô  ÚautogradÚfunctionÚ_SingleLevelFunctionr   rä  )re  r@  rg  rü  ró  rô  s   &&$ @@r6   Ú!to_dense_functorch_frontmode_implr  Ì  sé   ù€ ô 9Ó:€KØ‡�ÓœM×.Ñ.Ô.Ô6QÐRV×6WÒ6WÜ×Ò× Õ  +×"3Ñ"3×"5Õ"5Ü—=‘=×(Ñ(¨ÈÐ(ÓT÷ #6Ñ"5× Ò ð ×ÑÓ€E÷%ð %”u—~‘~×.Ñ.×CÑCô %ôN 
/×	0Õ	0à×!Ñ! $¨{Ó;÷ 
1Ò	0÷Y #6×"5ú× × × Ñ ú÷X 
1×	0Ð	0ús0   ÁD:Á7!D	Â
D:Ä EÄD-Ä(D:Ä:E
	ÅE	ÚIMPLÚFuncTorchDynamicLayerFrontModerñ  c               ó(   € V ^8„  d   QhRRRRRRRR/# r¾  r4   )r5   s   "r6   r7   r7     s6   € ÷ Qñ QØ
ðQàðQð ð	Qð
 ñQr8   c               ó.  € ^ RI Hp \        V \        V34      '       d   \	        WVR7      # \
        P                  P                  \        4      ;_uu_ 4        \        P                  P                  WVR7      uuRRR4       #   + '       g   i     R# ; i)r   )ÚFunctionalTensorrj  N)Ú#torch._subclasses.functional_tensorr  rg   r    ræ  rX   rY   Ú_ExcludeDispatchKeyGuardÚ_PYTHON_TLS_SNAPSHOT_KEYSETrS  rñ  rU  )re  r@  rg  r  s   &&$ r6   Úto_dense_python_tls_implr    se   € õ Eä�$œÐ%5Ð6×7Ò7Ü& tÀkÔRÐRä	�‰×	*Ñ	*Ô+F×	GÕ	GÜ�}‰}×$Ñ$ TÀKÐ$ÓP÷ 
H×	G×	GÓ	Gús   Á!BÂB	ÚPythonTLSSnapshotc          
     ó,   € V ^8„  d   QhRRRRRRRRR	R
/# )r1   rŸ   r*   rb   r   rG   r    r@  rf  r3   rÛ   r4   )r5   s   "r6   r7   r7   )  s:   € ÷ )ñ )Øð)à
ð)ð ð)ð ð	)ð
 ñ)r8   c           
     óp  € \        V\        4      '       g   \        # Ve   TMVP                  pVP                  P
                  R8w  d   \        R4      hVP                  \        P                  8w  d   \        R4      hVP                  \        9  d   \        R4      hVP                  4       ^8”  d   \        R4      hVP                  \        P                  \        P                  39   d   WBP                  8w  d   \        R4      hV\        9  d   \        R4      h\        VP                  4      p\!        V 4      ;_uu_ 4        \        P"                  ! VRR\%        V4      ^,
          ,          ,           VRR	7      pR R R 4       \        V XVP                  \&        R
7      #   + '       g   i     L-; i)Nr«   z(dense_to_mkldnn expects CPU tensor inputz,dense_to_mkldnn expects strided tensor inputzGdense_to_mkldnn expects float, bfloat16, half, uint8, int8 tensor inputz:Can't convert cpu tensor with the number of dimensions > 5zEFor int8, uint8 cpu_tensor input, we should not change the data type.zYcpu tensor only can be converted to be a float, bfloat16, half, uint8, int8 mkldnn tensorr¬   rE  ©Údispatch_keysr  r²  )rg   r    rl  r@  rn  rC   rï   r1  rX   râ  Ú_MKLDNN_DTYPESrG  r¤  Úint8r†   r0  r!   r¹  rk   Ú_MKLDNN_DISPATCH_KEYS)rŸ   rb   rG   r@  rº  r0  r^  s   &&&&   r6   rÓ  rÓ  (  s[  € ô �aœ×$Ò$ÜÐàÒ*‘°·±€IØ‡}�}×Ñ˜UÔ"ÜÐEÓFÐFØ‡x�x”5—=‘=Ô ÜÐIÓJÐJØ‡w�w”nÔ$ÜØUó
ð 	
ð 	‡u�uƒw�„{ÜÐWÓXÐXØ‡w�w”5—;‘;¤§
¡
Ð+Ô+°	¿W¹WÔ0DÜØSó
ð 	
ð œÔ&Üð(ó
ð 	
ô �!—'‘'‹N€EÜ	% i×	0Õ	0ô ×!Ò!ØØ�4œ3˜u›:¨�>Õ*Õ*ØØô	
ˆ÷ 
1ô Ø�3˜Ÿ™Ô5Jôð ÷ 
1×	0ús   Å9F%Æ%F5	c                óŒ   € \        V 4      ;'       d3    V P                  4       P                  R 4      ;'       d    \        V 4      # )zaten::_foreach_)r¯  rr   Ú
startswithr´  rx  s   &r6   r  r  W  s>   € ”˜DÓ!÷ ð Ø�	‰	‹×ÑÐ0Ó1÷ð ä�‹ðr8   c          
     ó,   € V ^8„  d   QhRRRRRRRRRR	/# )
r1   rŸ   r*   rb   r   r    r   r¡   r3   zlist[FakeTensor] | Noner4   )r5   s   "r6   r7   r7   [  s4   € ÷  ñ  Øð Ø%/ð Ø8;ð ØGJð àñ r8   c           	     óê  € \         P                  ! W#P                  4       4       Uu. uF_  p\        V\        \
        34      '       g   K!  \        V4      '       g   K4  \        V^ ,          \        P                  4      '       g   K]  VNKa  	  pp \        V 4      ;_uu_ 4        V! V/ VB pRRR4       X'       g   T# T'       g   \        R4      h. p\        T4       F^  w  r‰\        P                  ! Y U
u. uF  qªT,          NK  	  up
4      w  r¼TP!                  T P"                  P%                  Y	T4      4       K`  	  T# u upi   + '       g   i     L£; i  \         d
    \        u # i ; iu up
i )r   Nztensor_lists must not be empty)rê   rë   rì   rg   r…   r†   rk   rX   ru  r!   rf  rl  rh   Ú	enumerater    Ú_find_common_devicerŠ   r¯   r°   )rŸ   rb   r    r¡   re   Útensor_listsÚout_metaÚout_fakeÚiÚmeta_tÚtlr>   r²   s   &&*,         r6   Ú foreach_run_and_map_input_devicer   V  s7  € ô —?’? 4¯©«Ô9óá9ˆCÜ�cœD¤%˜=×)ô 	ô ��Hô 	ô �s˜1•vœuŸ|™|×,÷	 	ˆÙ9ð ð ðÜ)¨)×4Õ4Ù˜TÐ, VÑ,ˆH÷ 5÷
 ØˆçÜÐ=Ó>Ð>Ø€Hä˜xÖ(‰	ˆÜ×2Ò2°4È,Ó9WÉ,ÀB¸Q¿%¸%É,Ñ9WÓX‰	ˆØ�‰Ø×+Ñ+×@Ñ@Ø 6óö	
ñ )ð €Oùò;÷ 5×4ûäô ÜÒðüò :XsM   §EÁ
EÁ$EÂEÂE Â"	EÂ+E Ã6E0ÅE	ÅE ÅE ÅE-Å,E-c          
     ó,   € V ^8„  d   QhRRRRRRRRRR	/# r¦   r4   )r5   s   "r6   r7   r7   ‚  s4   € ÷ "ñ "Øð"Ø%/ð"Ø8;ð"ØGJð"àñ"r8   c                óØ   € ^ RI Hp \        WVRR7      w  rVVR,          P                  pV ;_uu_ 4        V! V/ VB pVP	                  V4      uuRRR4       #   + '       g   i     R# ; i)r   )Úmeta_index_TensorTr¨   rª   N)Útorch._meta_registrationsr#  r%   r>   rÔ  )	rŸ   rb   r    r¡   r#  r²   r³   r¶   r^  s	   &&*,     r6   Úindex_tensorr%  �  sX   € õ <ä0Ø ÀTô�M€Að ˜GÕ$×+Ñ+€Jç	ŠÙ Ð0¨Ñ0ˆØ�v‰v�jÓ!÷ 
��‹ús   ´AÁA)	c          
     ó,   € V ^8„  d   QhRRRRRRRRRR	/# )
r1   rŸ   r*   rb   r   r    r   r¡   r3   z5tuple[FakeTensor, FakeTensor, FakeTensor, FakeTensor]r4   )r5   s   "r6   r7   r7   •  s4   € ÷ 3ñ 3Øð3Ø%/ð3Ø8;ð3ØGJð3à:ñ3r8   c                óp   € ^ RI Hp V ;_uu_ 4        V! V/ VB uuRRR4       #   + '       g   i     R# ; i)r   )Úmeta_embedding_bagN)r$  r(  )rŸ   rb   r    r¡   r(  s   &&*, r6   Úembedding_bagr)  ”  s%   € õ =ç	ŠÙ! 4Ð2¨6Ñ2÷ 
��‹ús   ‘$¤5	c          
     ó,   € V ^8„  d   QhRRRRRRRRRR/# rž   r4   )r5   s   "r6   r7   r7   Ÿ  s;   € ÷ Hñ HØðHØ%/ðHØ8;ðHØGJðHàñHr8   c           
     ó~  € ^ RI Hp \        WVRR7      w  rVVR,          pVR,          pVP                  VP                  8w  d=   VP                  P                  R8w  d"   VP                  P                  R8w  d   \
        # V ;_uu_ 4        \        \        V! V/ VB 4      uuRRR4       #   + '       g   i     R# ; i)r   )Ú	embeddingTr¨   Úweightr]  r¬   N)r$  r,  r%   r>   rC   rl  rm  r    )	rŸ   rb   r    r¡   Úmeta_embeddingr²   r³   r-  r]  s	   &&*,     r6   r,  r,  ž  s�   € õ Fä0Ø ÀTô�M€Að ˜Õ!€FØ˜Õ#€Gà�‰˜Ÿ™Ô'Ø�M‰M×Ñ &Ô(Ø�N‰N×Ñ 6Ô)äÐç	ŠÜœ:¡~°tÐ'F¸vÑ'FÓG÷ 
��‹ús   Â
B+Â+B<	c          
     ó,   € V ^8„  d   QhRRRRRRRRRR	/# r¦   r4   )r5   s   "r6   r7   r7   º  s;   € ÷ Tñ TØðTØ%/ðTØ8;ðTØGJðTàñTr8   c                ó   € \        WW#4      # rQ   )r¨  r£   s   &&*,r6   Úmulti_device_op_defaultr1  µ  s   € ô 5°YÀdÓSÐSr8   c          
     ó,   € V ^8„  d   QhRRRRRRRRRR	/# r¦   r4   )r5   s   "r6   r7   r7   Á  ó4   € ÷ 
ñ 
Øð
Ø%/ð
Ø8;ð
ØGJð
àñ
r8   c                óâ   € \        WVR R7      w  rEVR,          P                  p\        V 4      ;_uu_ 4        V! V/ VB  RRR4       WeR,          n        VR,          #   + '       g   i     L&; i)Tr¨   ÚsourceNrª   )r%   r>   r!   rn  )rŸ   rb   r    r¡   r²   r³   Úsource_devices   &&*,   r6   r²   r²   À  se   € ô 1Ø ÀTô�M€Að ˜xÕ(×/Ñ/€MÜ	% i×	0Õ	0ÙˆdÐ�fÒ÷ 
1à&3ˆwÕÔ#Ø�gÕÐ÷ 
1×	0ús   ·	AÁA.	c          
     ó,   € V ^8„  d   QhRRRRRRRRRR	/# r¦   r4   )r5   s   "r6   r7   r7   Ñ  r3  r8   c                ó¢   € \        V 4      ;_uu_ 4        V! V/ VB  R R R 4       \        WVRR7      w  rEVR,          #   + '       g   i     L); i)NTr¨   rª   )r!   r%   )rŸ   rb   r    r¡   r²   r³   s   &&*,  r6   Úmulti_device_op_outr9  Ï  sL   € ô
 
& i×	0Õ	0ÙˆdÐ�fÒ÷ 
1ô 1Ø ÀTô�M€Að �gÕÐ÷ 
1×	0ús	   ”	>¾A	c          
     ó,   € V ^8„  d   QhRRRRRRRRRR	/# r¦   r4   )r5   s   "r6   r7   r7   à  s4   € ÷ ñ ØðØ%/ðØ8;ðØGJðàñr8   c                ó„  aaa€ \        SW#R R7      w  rEVR,          oVR,          P                  o\        P                  ! SSP                  8H  ;'       g+    SP                  ^ 8H  ;'       d    SP                  4       ^8H  VVV3R l4       \        V SW#4      pS\        P                  P                  J d
   VR,          # V# )Tr¨   rì   rª   c                 ó0   <€ R S  RS RSP                    R2# )zMismatching z device between self (z) and values (r9  rD   )rb   Úself_devicerì   s   €€€r6   r  Ú index_put_impl.<locals>.<lambda>ê  s$   ø€ �,˜t˜fÐ$:¸;¸-À~ÐV\×VcÑVcÐUdÐdeÑfr8   )
r%   rn  rX   r  r«  r‰  r¨  rS  Ú
index_put_rU  )	rŸ   rb   r    r¡   r²   r³   r^  r=  rì   s	   &f*,   @@r6   Úindex_put_implr@  Þ  s¨   ú€ ô
 1Ø�4ÀTô�M€Að ˜Õ!€FØ˜WÕ%×1Ñ1€KÜ	‡L‚LØ�v×)Ñ)Ñ)×WÐW¨f¯k©k¸QÑ.>×.VÐ.VÀ6Ç<Á<Ã>ÐUVÑCVÞfôô
 4°I¸tÀTÓ
R€CØŒt�‰×&Ñ&Ó&Ø˜'Õ"Ð"àˆ
r8   c          
     ó,   € V ^8„  d   QhRRRRRRRRRR	/# rz  r4   )r5   s   "r6   r7   r7   ø  rŸ  r8   c                ó   € \        V4      hrQ   )r$   r£   s   &&*,r6   Únested_tensors_unsupportedrC  ô  s   € ô ' tÓ
,Ð,r8   c          
     ó,   € V ^8„  d   QhRRRRRRRRRR	/# rz  r4   )r5   s   "r6   r7   r7     s0   € ÷ -ñ -�>ð -¨ð -¸Cð -È3ð -ÐSWñ -r8   c                ó8   € V\         9   d   \        R V 24      hR# )zNYI: N)Ú_device_not_kwarg_opsrh   r£   s   &&*,r6   ÚnyirG  þ  s#   € ð  Ô$Ô$Ü˜u T F˜^Ó,Ð,ñ %r8   c          
     ó,   € V ^8„  d   QhRRRRRRRRRR	/# )
r1   rŸ   r*   rb   r   r    r   r¡   r3   zKFakeTensor | tuple[FakeTensor | None, FakeTensor | None, FakeTensor | None]r4   )r5   s   "r6   r7   r7     s;   € ÷ {ñ {Øð{Ø%/ð{Ø8;ð{ØGJð{àPñ{r8   c                ó¶  a aa€ \        WVR R7      w  rER R lpV! RVR,          4      pV! RVR,          4      pVP                  oV\        P                  P                  \        P
                  P                  \        P
                  P                  39   df   VP                  VP                  8w  dK   VP                  '       g9   S P                  '       g'   \        RVP                   RVP                   R24      hVP                  4        Fi  w  rš\        V
\        P                  4      '       g   K'  V! Wš4      p\        VP                  S4      '       d   KM  \        R	V	 R
VP                   RS 24      h	  S ;_uu_ 4        VP                   p^ RIHo \&        ;QJ d)    V3R lVP(                   4       F  '       d   K   RM	  R M! V3R lVP(                   4       4      ;'       dO    \&        ;QJ d)    V3R lVP(                   4       F  '       d   K   RM	  R M! V3R lVP(                   4       4      pV'       g   RpEM!VP+                  4       V^,
          8X  d   RpEMVP-                  R4      p\/        VR,          VR,          VR,          VR,          VR,          VR,          VR7      pVf   VP-                  R4      VR&   \        P0                  P2                  ! Wx3/ VB pV^8X  dU   VP                  '       gC   VP4                  '       g1   VP7                  4       P9                  ^4      pVP9                  ^4      p\        P0                  P;                  WxV4      pRRR4       R VV 3R llp\=        S 4      ;_uu_ 4        V! R/ VB pV\        P                  P                  \        P
                  P                  \        P
                  P                  39   d   V! VX4      uuRRR4       # V! V^ ,          X4      V! V^,          V4      V! V^,          R4      3uuRRR4       #   + '       g   i     LÔ; i  + '       g   i     R# ; i)Tr¨   c               ó$   € V ^8„  d   QhRRRRRR/# )r1   rr   r¿   r+  rÛ   r3   r    r4   )r5   s   "r6   r7   Úconv.<locals>.__annotate__!  s!   € ÷ ñ  ð ¨Vð ¸
ñ r8   c                óz   € \        V\        4      '       g%   \        R V  R\        V4      P                   24      hV# )zBExpected fake convolution tensor arguments to be FakeTensors, but z was )rg   r    rh   rC   r×  )rr   r+  s   &&r6   Úexpect_fake_tensorÚ conv.<locals>.expect_fake_tensor!  sC   € Ü˜%¤×,Ò,Ü ðØ�f˜E¤$ u£+×"6Ñ"6Ð!7ð9óð ð ˆr8   rª   r-  zInput type (z) and weight type (z) should be the samez7Expected all tensors to be on the same device, but got z is on z", different from other tensors on rï  c              3  ó4   <"  € T F  pS! V4      x € K  	  R # 5irQ   r4   rô  s   & €r6   rU   Úconv.<locals>.<genexpr>N  s   øé € ÐD±|°!Ñ*¨1×-Ð-³|ùrè   Fc              3  ó4   <"  € T F  pS! V4      x € K  	  R # 5irQ   r4   rô  s   & €r6   rU   rP  N  s   øé € ð M
Ù*6 QÑ˜a× Ð «,ùrè   NÚbiasr§  ÚpaddingÚdilationÚ
transposedÚoutput_paddingÚgroups)r§  rS  rT  rU  rV  rW  rR  Ú
bias_sizesc               ó$   € V ^8„  d   QhRRRRRR/# )r1   r™  rÏ  Úmem_fmtztorch.memory_format | Noner3   rT  r4   )r5   s   "r6   r7   rK  z  s$   € ÷ 0ñ 0Øð0Ø)Cð0à	ñ0r8   c                ó  <€ V f   V # Ven   V P                  4       ^8X  dG   V\        P                  8X  d2   V P                  ^4      P	                  VR7      P                  ^4      p MV P	                  VR7      p \        SV S4      # )Nr5  )rG  rX   Úchannels_lastr:  rÔ  r;  r    )r™  rZ  r>   rŸ   s   &&€€r6   ÚconvertÚconv.<locals>.convertz  st   ø€ ð Š9ØˆHØÒà�u‰u‹w˜!Œ| ¬5×+>Ñ+>Ô >Ø—K‘K “N×%Ñ%°GÐ%Ó<×DÑDÀQÓG‘à—D‘D w�DÓ/�Ü˜) Q¨Ó/Ð/r8   r4   )r%   rn  rS  ÚconvolutionrU  Ú_convolutionÚ
deprecatedr@  rL  Úallow_non_fake_inputsrï   r2   rg   rX   ru  rL   r«  r(  rð  rM  r0  rG  r[   r:   rY   Ú_select_conv_backendÚis_xpuÚ
contiguousr:  Ú%_conv_determine_backend_memory_formatr!   )rŸ   rb   r    r¡   r²   r³   rM  Úinput_r-  rr   r+  Ú
fake_valueÚkÚ
all_hintedrZ  rR  Úselect_kwargsÚconv_backendr]  r^  r>   rð  s   f&*,                @@r6   Úconvrm    s¦  ú€ ô 1Ø ÀTô�M€Aõñ   ¨°GÕ)<Ó=€FÙ ¨*°XÕ*>Ó?€FØ×Ñ€Fð 	ä×Ñ×$Ñ$Ü×Ñ×%Ñ%Ü×Ñ×(Ñ(ð
ô	
ð �L‰L˜FŸL™LÔ(Ø× × Ð Ø×/×/Ð/äØ˜6Ÿ<™<˜.ð )Ø—‘ˆ~Ð1ð3ó
ð 	
ð "×'Ñ'Ö)‰ˆÜ�eœUŸ\™\×*Ô*Ù+¨DÓ8ˆJÜ4°Z×5KÑ5KÈV×TÔTÜ"ØMØ�f˜G J×$:Ñ$:Ð#;ð <(Ø(. xð1óð ñ	 *÷ 
Šà�K‰Kˆõ 	Lç“SÔD°v·|²|ÓD—S—S’SÔD°v·|²|ÓDÓD÷ 
ð 
ÏËô M
Ø*0¯,ª,óM
ÏÏÊô M
Ø*0¯,ª,óM
ó J
ˆ
÷ ð ŠGØ�Z‰Z‹\˜Q �UÔ"ð ŠGð —>‘> &Ó)ˆDÜ/3Ø! (Õ+Ø" 9Õ-Ø# JÕ/Ø% lÕ3Ø)Ð*:Õ;Ø! (Õ+Øô0ˆMð Š|Ø.8¯n©n¸\Ó.J�˜lÑ+Ü Ÿ8™8×8Ò8ØñØ"/ñˆLð �AŒv˜f×.×.Ð.°v·}·}°}à×*Ñ*Ó,×6Ñ6°qÓ9�Ø×)Ñ)¨!Ó,�Ü—h‘h×DÑDØ óˆG÷_ 
÷f0ñ 0ô 
& i×	0Õ	0ÙÑ �ZÑ ˆàÜ×Ñ×$Ñ$Ü×Ñ×%Ñ%Ü×Ñ×(Ñ(ð
ô 
ñ
 ˜3 Ó(÷ 
1Ò	0ñ ˜˜A� Ó(Ù˜˜A� Ó(Ù˜˜A� Ó%ð÷ 
1Ò	0÷A 
�ú÷@ 
1×	0Ð	0úsK   Æ<P4Ç(P4Ç,P4Ç8P4È)P4ÉCP4ÌP4ÌAP4ÎA#QÏ;.QÐ4Q	ÑQ	c               ó0   € V ^8„  d   QhRRRRRRRRR	R
RR/# )r1   rŸ   r*   rb   r   rÅ  r    ÚweightsrT  Ú	minlengthr+   r3   r4   )r5   s   "r6   r7   r7   ™  sD   € ÷ %4ñ %4Øð%4à
ð%4ð ð%4ð ð	%4ð
 ð%4ð ñ%4r8   c                ód  € V P                   e   V P                   P                  '       g   \        V4      h^ RIHpHp V! VP                  4       4      '       g7   VP                  4       ^ 8X  d"   VP                  V\        P                  R7      # V P                   P                  4       pV! V4       \        P                  ! Wt8¬  4       Vf"   VP                  V\        P                  R7      # VP                  P                  R8X  d\   VP                  \        P                  \        P                   \        P"                  39   d   VP                  M\        P                   pM;VP                  \        P                  8X  d   VP                  M\        P$                  pVP                  WxR7      # )Nr„  r?  Úmps)r%  r&  r   r(  r$  r…  r‰  rŒ  rX   r�  r'  r  r>   rC   r@  Úfloat32Úint32Úfloat16Úfloat64)	rŸ   rb   rÅ  ro  rp  r$  r…  r¬  r@  s	   &&&&&    r6   Úbincountrw  ˜  s4  € ð 	×ÑÒ#Ø×"Ñ"×A×AÐAô *¨$Ó/Ð/÷ñ
 ˜FŸL™L›N×+Ò+°·±³À!Ô0CØ×Ñ 	´·±ÐÓ=Ð=à×"Ñ"×9Ñ9Ó;€Há˜hÔ'Ü	‡L‚L�Ñ&Ô'Ø‚Ø×Ñ ´·±ÐÓ<Ð<à‡~�~×Ñ˜eÔ#ð �}‰}¤§¡´·±¼U¿]¹]Ð KÔKð �MŠMä—‘ñ 	ð ")§¡´%·-±-Ô!?�—’ÄUÇ]Á]ˆØ×Ñ˜XÐÓ3Ð3r8   c               ó0   € V ^8„  d   QhRRRRRRRRRR	R
R/# )r1   rŸ   r*   rb   r   rÅ  r    ÚlengthsÚbatch_firstr@   r3   r™  r4   )r5   s   "r6   r7   r7   Â  sD   € ÷ %ñ %Øð%à
ð%ð ð%ð ð	%ð
 ð%ð #ñ%r8   c                ób  € V P                   e   V P                   P                  '       g   \        V4      hT P                   P                  4       p^ RIHp V! V4       V'       g   VP                  ^ ^4      pVP                  R,          pVP                  V4      pVP                  V34      p	W‰3# )Nr#  :r  NN)	r%  r&  r   r'  r(  r$  Ú	transposer0  rŒ  )
rŸ   rb   rÅ  ry  rz  Únew_batch_sizer$  Úres_sizeÚpacked_dataÚ
batch_sizes
   &&&&&     r6   Ú_pack_padded_sequencer�  Á  s�   € ð 	×ÑÒ#Ø×"Ñ"×A×AÐAô *¨$Ó/Ð/à×(Ñ(×?Ñ?ÓA€NåOá˜nÔ-çà×!Ñ! ! QÓ'ˆà�|‰|˜BÕ€HØ×"Ñ" 8Ó,€KØ×!Ñ! >Ð"3Ó4€JØÐ$Ð$r8   c               ó$   € V ^8„  d   QhRRRRRR/# ©r1   rŸ   r*   rÚ   r    r3   r4   )r5   s   "r6   r7   r7   à  s&   € ÷ Oñ O˜>ð O¨jð O¸Zñ Or8   c           	     ó@  € \        4       ;_uu_ 4        \        V 4      ;_uu_ 4        \        P                  P	                  V4      pR R R 4       R R R 4       \        V XVP                  VP                  R7      #   + '       g   i     L;; i  + '       g   i     LF; i)Nr  )r   r!   rS  ÚaliasrU  r    r>   r  )rŸ   rÚ   r^  s   && r6   Ú_fake_aliasr†  à  s_   € Ü	×	Õ	Ô!=¸i×!HÕ!HÜ�j‰j× Ñ  Ó#ˆ÷ "I×	ô �i  a§h¡h¸a¿o¹oÔNÐN÷	 "I×!Hú×	×	ús"   “B§ A:	ÁBÁ:B
ÂBÂB	c               ó(   € V ^8„  d   QhRRRRRRRR/# )	r1   rŸ   r*   rb   r   rÚ   r    r3   zFakeTensor | objectr4   )r5   s   "r6   r7   r7   é  s,   € ÷ %ñ %Øð%Ø%/ð%Ø4>ð%àñ%r8   c                óP   € \        V\        4      '       g   \        # \        W4      # rQ   )rg   r    rl  r†  )rŸ   rb   rÚ   s   &&&r6   Ú
fake_aliasr‰  è  s"   € ô �aœ×$Ò$ÜÐÜ�yÓ$Ð$r8   c               ó    € V ^8„  d   QhRRRR/# )r1   rb   r   r3   r{   r4   )r5   s   "r6   r7   r7   ÷  s   € ÷ ñ Ø
ðà3ñr8   c                ó   a € R  V 3R llpV# )c               ó    € V ^8„  d   QhRRRR/# r~   r4   )r5   s   "r6   r7   Ú+register_fast_op_impl.<locals>.__annotate__ú  s   € ÷ ñ Ð 0ð Ð5Eñ r8   c                ó   <€ V \         S&   V # rQ   )ÚFAST_OP_IMPLEMENTATIONS)r   rb   s   &€r6   rŒ   Ú-register_fast_op_impl.<locals>.impl_decoratorú  s   ø€ Ø(/Ô Ñ%Øˆr8   r4   )rb   rŒ   s   f r6   Úregister_fast_op_implr‘  ÷  s   ø€ ÷ð ð Ðr8   c               ó$   € V ^8„  d   QhRRRRRR/# )r1   rG   r¸  rH   r3   ztuple[IntLikeType, ...]r4   )r5   s   "r6   r7   r7   	  s$   € ÷ " ñ " Øð" Ø!6ð" àñ" r8   c                ó  a
aa€ ^ RI Hp \        V 4      p\        V4      p\        W44      p^ .V,          p\	        V^,
          RR4       F³  o
V^,
          S
,
          pV^,
          V,
          pV^,
          V,
          p	V^ 8¼  d	   W,          M^oV	^ 8¼  d	   W,          M^o\
        P                  ! V! S^8H  4      ;'       g    V! S^8H  4      ;'       g    SS8H  V
VV3R l4       V! S^8H  4      '       d   SMSVS
&   Kµ  	  \        V4      # )r   r   c                 ó   <€ R S RS RS  R2# )zThe size of tensor a (z#) must match the size of tensor b (z) at non-singleton dimension r9  r4   )r  ÚsizeAÚsizeBs   €€€r6   r  Úinfer_size.<locals>.<lambda>	  s%   ø€ Ð,¨U¨Gð 40Ø05¨wð 7*Ø*+¨¨Añ/r8   r  )r(  r¡  rk   r  rË  rX   r  r†   )rG   rH   r¡  ÚdimsAÚdimsBr«  ÚexpandedSizesr  ÚdimAÚdimBr  r•  r–  s   &&        @@@r6   r8  r8  	  sô   ú€ õ Eä�‹F€EÜ�‹F€EÜˆuÓ€DØ() s¨T¥z€MÜ�4˜!•8˜R Ö$ˆØ˜•˜A•ˆØ�q�y˜6Õ!ˆØ�q�y˜6Õ!ˆØ 1œ9�–¨!ˆØ 1œ9�–¨!ˆô 	�ŠÙ˜5 A™:Ó&×VÐV©.¸À!¹Ó*D×VÐVÈÐQVÉö/ô	
ñ %3°5¸A±:×$>Ò$>™5ÀEˆ�aÓñ1 %ô2 �ÓÐr8   c               ó$   € V ^8„  d   QhRRRRRR/# )r1   Úslow_refzCallable[..., Any]Útype_promotion_kindr   r3   zCallable[..., FakeTensor]r4   )r5   s   "r6   r7   r7   '	  s+   € ÷ Qñ QØ ðQà8ðQð ñQr8   c                ó   a a€ R  V V3R llpV# )c               ó(   € V ^8„  d   QhRRRRRRRR/# )r1   Úmoder*   r    r   r¡   r3   r    r4   )r5   s   "r6   r7   Ú+make_fast_binary_impl.<locals>.__annotate__+	  s.   € ÷ K+ñ K+˜~ð K+°cð K+ÀSð K+ÈZñ K+r8   c           
     óè  <a aa€ R  VVV V3R llp\        R4       SpRpV FB  p\        V\        P                  4      '       d   VP                  MRpVf   Tp\        WW4      pKD  	  Vf   \        R4      h^ RIHpH	p	 V Fk  p\        V\        P                  4      '       g   K%  \        VP                  4      \        V4      8X  g   KJ  V! V	! VP                  V4      4      '       g   Kk   M
	  V! R4      # \        P                  ! R4      p
T
pRpRpV F“  p\        V\        P                  4      '       g   R	pK'  Wº8X  d(   VP                  P                  R8w  d   VP                  pVf(   S\        P                  8w  d   R	pKq  VP                  pK  WÆP                  8w  g   K‘  R	pK•  	  V'       d   \!        VR
S/ w  rì^ p^pV Fˆ  p\        V\        P                  4      '       g   K%  Wº8w  dC   VP#                  4       ^ 8X  d.   VP                  V
8X  d   VV8¼  d   V! R4      u # V^,          pKm  VP                  V8w  g   K€  V! R4      u # 	  R	pR	p\%        V4      '       dv   V Fo  p\        V\        P                  4      '       g   K%  T;'       d    \'        V\        P(                  R7      pT;'       d    \'        V\        P*                  R7      pKq  	  V'       d@   \        R4       \-        S \        P.                  ! VVR\        P(                  R7      VR7      # V'       d@   \        R4       \-        S \        P.                  ! VVR\        P*                  R7      VR7      # V! R4      # )c               ó    € V ^8„  d   QhRRRR/# )r1   rH  r¿   r3   r    r4   )r5   s   "r6   r7   ÚEmake_fast_binary_impl.<locals>.fast_binary_impl.<locals>.__annotate__,	  s   € ÷ 	1ñ 	1�cð 	1˜jñ 	1r8   c                ó‚   <€ \        R V  24       S;_uu_ 4        S! S/ SB uuRRR4       #   + '       g   i     R# ; i)zslow Nr&   )rH  r    r¡   r¢  rž  s   &€€€€r6   ÚslowÚ=make_fast_binary_impl.<locals>.fast_binary_impl.<locals>.slow,	  s/   ø€ Ü˜% ˜u˜Ô&ß’Ù Ð0¨Ñ0÷ ——“ús   š-­>	zattempt fastNzfinal_shape must not be Noner0  z#both tensors nontrivially broadcastr«   FTrŸ  Úerrorr5  zfast is_contiguousr¬   )r@  r>   r6  rD   zfast channels_lastzno contiguity matchr4   )r'   rg   rX   ru  r0  r8  rh   r(  r¡  r¾  rk   r>   rC   r   ÚDEFAULTr@  r   rG  rE   r   rC  r\  r    rO  )r¢  r    r¡   r¨  ÚoperandsÚfinal_shaper‹   r0  r¡  r¾  r«   Úcommon_deviceÚcommon_dtypeÚhas_different_input_dtypesr²   Úcurrent_cpu_scalars_on_non_cpuÚmax_cpu_scalars_on_non_cpuÚdefinitely_contiguousÚdefinitely_channels_lastrž  rŸ  s   fjl                €€r6   Úfast_binary_implÚ/make_fast_binary_impl.<locals>.fast_binary_impl+	  s  û€ ÷	1ó 	1ô
 	�NÔ#ð ˆð )-ˆÛˆBÜ+5°b¼%¿,¹,×+GÒ+G˜rŸxšxÈRˆEØÒ"Ø#�ô
 % [Ó8ŠKñ ð ÒÜ Ð!?Ó@Ð@çPó ˆBä˜2œuŸ|™|×,Ô,Ü˜Ÿ™“M¤S¨Ó%5Ö5á"¡6¨"¯(©(°KÓ#@×AÔAáñ ñ Ð=Ó>Ð>ô �lŠl˜5Ó!ˆØ&)ˆØ+/ˆØ%*Ð"ÛˆBÜ˜b¤%§,¡,×/Ò/à-1Ð*ÙØÔ#¨¯	©	¯©¸%Ô(?Ø "§	¡	�ØÒ#Ø&Ô*I×*QÑ*QÔQØ15Ò.à#%§8¡8’LØ§¡Ö)Ø-1Ò*ñ ÷ &ô 1ØðØ/Bñ‰OˆAð *+Ð&Ø%&Ð"ÛˆBÜ˜b¤%§,¡,×/Ò/ÙØÔ#¨¯©«°A¬¸"¿)¹)ÀsÔ:JØ1Ð5OÔOÙ ›=Ò(Ø.°!Õ3Ò.Ø—‘˜mÖ+Ù˜G“}Ò$ñ ð !%ÐØ#'Ð ô
 & m×4Ò4Û�Ü! "¤e§l¡l×3Ò3Ùà)÷ ð Ü@Ø¬%×*AÑ*Aôð &ð -÷ ð Ü@Ø¬%×*=Ñ*=ôò )ñ ÷ !äÐ,Ô-ÜØÜ—’ØØ&Ø!Ü"'×"9Ñ"9ô	ð %ô	ð 	÷ $ÜÐ,Ô-äØÜ—’ØØ&Ø!Ü"'×"5Ñ"5ô	ð %ô	ð 	ñ Ð)Ó*Ð*r8   r4   )rž  rŸ  rµ  s   ff r6   Úmake_fast_binary_implr·  '	  s   ù€ ÷K+ñ K+ðZ Ðr8   c               ó(   € V ^8„  d   QhRRRRRRRR/# )	r1   rŸ   zFakeTensorMode | NonerÚ   zFakeTensor | torch.TensorÚinclude_realr@   r3   rá  r4   )r5   s   "r6   r7   r7   ½	  s6   € ÷ Mñ MØ$ðMà ðMð ðMð ñ	Mr8   c           	     ó  € \        V\        4      '       d   V f   \        R4      h\        4       ;_uu_ 4        \	        V 4      ;_uu_ 4        \
        P                  P                  P                  P                  V4      pR R R 4       R R R 4       VP                  pV'       d%   \        V XVP                  VP                  VR7      # \        V XVP                  VR7      #   + '       g   i     Li; i  + '       g   i     Lt; i)Nz?type widening added for cpp faketensor but this is not used yet)r   r  r  )rg   r    rh   r   r!   rX   rR  rS  ÚdetachrU  r  r>   r   )rŸ   rÚ   r¹  r^  r  s   &&&  r6   Úfast_detachr¼  ½	  s¼   € ô �qœ*×%Ò%ØÒäØMó
ð 	
ô 
×	Õ	Ô!=¸i×!HÕ!HÜ�i‰i�n‰n×#Ñ#×+Ñ+¨AÓ.ˆ÷ "I×	à—O‘O€MßÜØØØ�H‰HØŸ™Ø'ô
ð 	
ô �i  a§h¡h¸mÔLÐL÷ "I×!Hú×	×	ús#   ¸C4Á4C!	Â C4Ã!C1Ã,C4Ã4D	c               ó$   € V ^8„  d   QhRRRRRR/# rƒ  r4   )r5   s   "r6   r7   r7   ×	  s!   € ÷ %ñ %˜.ð %¨Zð %¸Jñ %r8   c                ó   € \        W4      # rQ   )r†  )rŸ   rÚ   s   &&r6   Ú
fast_aliasr¿  ×	  s   € Ü�yÓ$Ð$r8   c               ó   € V ^8„  d   QhRR/# )r1   r3   z$dict[OpOverload, Callable[..., Any]]r4   )r5   s   "r6   r7   r7   Ü	  s   € ÷ #ñ #Ð?ñ #r8   c                 óÚ  € ^ RI p \        V P                  P                  P                  P
                  4      ! \        V P                  P                  4      4       \        V P                  P                  P                  P
                  4      ! \        V P                  P                  4      4       \        V P                  P                  P                  P
                  4      ! \        V P                  P                  4      4       \        V P                  P                  P                  P
                  4      ! \        V P                  P                  \        P                  R7      4       \        V P                  P                  P                  P                  4      ! \        4       \        V P                  P                  P                   P                  4      ! \"        4       \$        # )r   N)rŸ  )Útorch._refsr‘  rR  rS  Úaddru  r·  r9  ÚsubrÊ  Údivr   ÚINT_TO_FLOATr»  rU  r¼  r…  r¿  r�  )rX   s    r6   Úget_fast_op_implsrÇ  Û	  s%  € ãä˜%Ÿ)™)Ÿ.™.×,Ñ,×3Ñ3Ô4Ü˜eŸk™kŸo™oÓ.ôô ˜%Ÿ)™)Ÿ.™.×,Ñ,×3Ñ3Ô4Ü˜eŸk™kŸo™oÓ.ôô ˜%Ÿ)™)Ÿ.™.×,Ñ,×3Ñ3Ô4Ü˜eŸk™kŸo™oÓ.ôô ˜%Ÿ)™)Ÿ.™.×,Ñ,×3Ñ3Ô4ÜØ�K‰K�O‰OÜ ?× LÑ Lô	
ôô ˜%Ÿ)™)Ÿ.™.×/Ñ/×7Ñ7Ô8¼ÔEÜ˜%Ÿ)™)Ÿ.™.×.Ñ.×6Ñ6Ô7¼
ÔCÜ"Ð"r8   )r‰   rÇ  rÖ   r´  rQ   )NN)TFFrÞ   )FFNrÕ   )r   NNr  rÒ  )Nr   (	  Ú
__future__r   r  rê   rv  rÉ  rŠ  r   Útypingr   r   rm  r   r	   Útyping_extensionsr
   rX   Útorch._custom_opÚtorch._loggingÚtorch._prims_commonÚ_prims_commonrú  Útorch._C._functorchr   r   r   r   Útorch._dispatch.pythonr   Útorch._functorch.pyfunctorchr   Útorch._functorch.utilsr   Ú
torch._opsr   r   r   r   r   r   r   r   r   r   r   r   Útorch._subclasses.fake_tensorr   r   r    r!   r"   r#   r$   Útorch.fx.operator_schemasr%   Útorch.utils._statsr'   Úcollections.abcr(   r)   r*   Útorch.typesr+   ru  rü   r,   r-   r.   Ú_pytreerí   Ú__all__r‚   r‰   Ú_opsrR  rS  rY   ÚDispatchKeySetÚ_dispatch_key_parser  rs  Úbfloat16ru  r¤  r  r  Úfloat8_e4m3fnr·  r¸  Ú	frozensetrI  rK  rJ  Ú
sparse_bsrÚ
sparse_bscrå  ÚDispatchKeyr  r
  r<   rE   rL   rÂ   rU  r^  Ú	full_likeÚ	ones_likeÚ	rand_likeÚ	generatorÚgenerator_outÚ
randn_likeÚrandint_likeÚTensor_generatorÚ
Tensor_outÚTensor_generator_outÚ	low_dtypeÚlow_generator_dtypeÚlow_dtype_outÚlow_generator_dtype_outÚ
zeros_likerŒ  rz  Únew_fullÚ	new_zerosÚnew_onesr®   Ú_resize_output_Ú_nested_tensor_from_tensor_listÚ
pin_memoryrÔ  r>   Úprim_DeviceÚ	is_pinnedÚ_pin_memoryÚ_resize_outputrF  Ú_list_to_tensorr­   rR   Úcachern   rx   r‡   r“   rœ   Ú__contains__r¤   r¸   r½   ÚprofilerrÅ   rÉ   rÍ   rÒ   rÖ   ró   rö   rù   r  r  r  r)  r-  rc  rp  r|  r“  Ú_unique2r—  r�  Úselectr  r¯  r³  r}  rÒ  r×  rÞ  rë  rü  r)  rA  rO  rN  Ú_unsafe_viewrM  Ú	view_copyrZ  rw  r`  ÚitemÚ_local_scalar_denserg  rl  rv  r‚  r‡  Úslicer’  r—  Ú_assert_tensor_metadatar›  r¡  r¥  r¨  r®  r¯  r´  rk  rÿ  ÚFunctionr¼  ræ  r  ÚlibraryÚLibraryÚ_to_dense_functorch_libr›   r  Ú_to_dense_python_tls_librñ  Úpy_implÚCompositeImplicitAutogradrÓ  r   rK   r%  Ú_embedding_bagr)  r,  Ú_unsafe_index_putÚcopyÚcopy_Úslice_scatterÚdiagonal_scatterr1  Úshallow_copy_data_r²   r9  Ú	index_putr?  r@  Ú_nested_view_from_bufferÚ_nested_view_from_buffer_copyrC  rG  r_  r`  ra  Úconvolution_backwardrm  rw  r�  r†  r…  r‰  r�  r‘  r8  r«  r·  r¼  r¿  rÇ  rã   s   0r6   Ú<module>r     s¤  ðÝ "ã Û Û Û Û 
Ý ß CÓ CÝ 'ã Û Û Ý #÷ó õ 8Ý OÝ HÝ !÷÷ ÷ ñ ÷÷ ñ õ CÝ *÷ ß2å<Ý'ð ˜eŸl™lÕ*€Ùˆtƒ_€ÙˆTƒ]€ÙˆTƒ]€à	�‰×	Ñ	€ò€ð Ð àÐ à‡z�z‡~�~×Ñ€ØŸ™×/Ñ/Ø	‡H�H× Ñ  Ó-óÐ ð 
‡M�MØ	‡N�NØ	‡M�MØ	‡K�KØ	‡J�Jð€ð )¨E×,?Ñ,?Ð+@Õ@Ð à	‡K�KØ	‡J�JØ	×Ñð*Ð &ñ
 %à×ÑØ×ÑØ×ÑØ×ÑØ×ÑðóÐ ð $Ÿh™h×5Ñ5Ø	‡H�H×Ñ×*Ñ*óÐ õ
&õ õDñ (ð 'Ø‡O�O×Ñð'à‡O�O×Ñð'ð 	‡N�N×Ñð'ð 	‡N�N×Ñð	'ð
 	‡N�N×Ñð'ð 	‡N�N×Ñð'ð 	‡N�N×Ñð'ð 	‡N�N×Ñð'ð 	‡N�N×Ñð'ð 	‡N�N× Ñ ð'ð 	‡O�O×Ñð'ð 	‡O�O×Ñð'ð 	‡O�O×Ñð'ð 	‡O�O×!Ñ!ð'ð 	×Ñ×Ñð'ð  	×Ñ×Ñð!'ð" 	×Ñ×Ñð#'ð$ 	×Ñ×&Ñ&ð%'ð& 	×Ñ× Ñ ð''ð( 	×Ñ×*Ñ*ð)'ð* 	×Ñ×Ñð+'ð, 	×Ñ×#Ñ#ð-'ð. 	×Ñ×Ñð/'ð0 	×Ñ×)Ñ)ð1'ð2 	×Ñ×#Ñ#ð3'ð4 	×Ñ×-Ñ-ð5'ð6 	‡O�O×Ñð7'ð8 	‡O�O×Ñð9'ð: 	‡N�N×Ñð;'ð< 	‡N�N×Ñð='ð> 	×Ñ×"Ñ"ð?'ð@ 	×Ñ×ÑðA'ðB 	‡M�M×ÑðC'ðD 	‡M�M×ÑðE'ðF 	‡N�N×ÑðG'ðH 	‡N�N×ÑðI'ðJ 	‡M�M×ÑðK'ðL 	‡M�M×ÑóM'Ð ñT $Ø×Ñ× Ñ Ø×(Ò(×0Ñ0Ø×(Ò(×,Ñ,Ø‡O‚O×ÑØ‡G‚G‡N‚NØ‡G‚G×ÒØ‡N‚N×ÑØ×Ò×ÑØ×Ò×ÑØ×Ò×ÑØ×Ò×ÑóÐ ð #'×"6Ò"6Ð!8Ð õð ‡‚ô	ó ð	ð ‡‚ô
ó ð
õõ8)õ	ñ Ð)×6Ò6Ó7ôKó 8ðKñ Ð(Ó)ÙÐ.Ð-Ð.Ó/ô Jó 0ó *ð JñF �$—.’.×(Ñ(Ó)ôó *ðñ  �%—)‘)×$Ò$×;Ò;×CÑCÓDö	Có Eð	Cñ �%—)‘)×$Ò$×:Ò:×BÑBÓCô	ó Dð	ñ �%—)‘)×$Ò$×?Ò?×GÑGÓHö ó Ið ñ �$—'’'×%Ò%Ó&Ù�$—'’'—.’.Ó!ôó "ó 'ðõ$ñ
 Ð%Ó&ô-ó 'ð-ñD �$—/’/×)Ñ)Ó*ô%ó +ð%ñ �$×?Ò?×GÑGÓHô:ó Ið:õEõõ @õõ(Bñ �$—-’-×'Ñ'Ó(öfó )ðfñR �$—.’.×(Ñ(Ó)öó *ðñ< ñTóô
,óð
,ñOð  %÷Oð Oñd �$—-’-×'Ñ'Ó(öVó )ðVñ �$—,’,×&Ñ&Ó'ö
ó (ð
ñ �$—+’+—/’/Ó"ô5Eó #ð5Eñp �$—/’/×)Ñ)Ó*öó +ðñ* �$×)Ò)×1Ñ1Ó2öó 3ð÷*Lõ^õõ$ õFõW÷tiñX �$×$Ò$×,Ñ,Ó-ô
ó .ð
ñ, �$—)’)×#Ñ#Ó$Ù�$×#Ò#×+Ñ+Ó,ð
ð
 ö
ó -ó %ð
ñ( �$—.’.×(Ñ(Ó)ðð
 "öó *ðñ* �$×(Ò(×/Ñ/Ó0ö*ó 1ð*ñ. �%—)‘)—.‘.×%Ò%×-Ñ-Ó.Ù�%—)‘)—.‘.×4Ò4×<Ñ<Ó=ôó >ó /ðñ. �%—)‘)—.‘.×.Ò.×6Ñ6Ó7ô9ó 8ð9ñ �%—)‘)—.‘.×(Ò(×0Ñ0Ó1ô/Pó 2ð/Pñd �%—)‘)—.‘.×@Ò@×HÑHÓIö%*ó Jð%*õPñ& �%—)‘)—.‘.×&Ò&×-Ñ-Ó.öJ?ó /ðJ?ñZ �%—)‘)—.‘.×.Ò.×6Ñ6Ó7ô("ó 8ð("ñV �%—)‘)—.‘.×8Ò8×@Ñ@ÓAñ#ð #'ð#ð #'÷#ó Bð#ñN ÑKÓLô-ó Mð-õ4õ2ñ* % V¨W°fÓ=Ð õ2õX÷&5ôR:�U—^’^×,Ò,ô :ñH(ð  $÷	(ð (ñ&6<ð  $÷	6<ð 6<ðr  Ÿ-š-×/Ò/Ø
ˆFÐ4óÐ ð × Ò ˜ZÐ)JÔ KñQð  $÷	Qð Qð$ !Ÿ=š=×0Ò0°¸ÐATÓUÐ Ø × Ò ˜jÐ*BÔ Cð
 ‡‚× Ñ × Ò ˜eŸh™h×2Ñ2×LÒLÔ MØôñ
 �$—.’.×(Ñ(Ó)ö)ó *ð)ñZ ñóô
 óð
 ñL �$—*’*×#Ñ#Ó$ô"ó %ð"ñ$ �$×%Ò%×-Ñ-Ó.ô3ó /ð3ñ �$—.’.×(Ñ(Ó)ôHó *ðHñ, �$×(Ò(×0Ñ0Ó1Ù�$—)’)×#Ñ#Ó$Ù�$—*’*×$Ñ$Ó%Ù�$×$Ò$×,Ñ,Ó-Ù�$×'Ò'×/Ñ/Ó0ôTó 1ó .ó &ó %ó 2ð
Tñ �$×)Ò)×1Ñ1Ó2ô
ó 3ð
ñ �$—)’)—-‘-Ó Ù�$×$Ò$×(Ñ(Ó)ô
ó *ó !ð
ñ �$—.’.×(Ñ(Ó)Ù�$—/’/×)Ñ)Ó*ôó +ó *ðñ( �$×6Ò6×>Ñ>Ó?Ù�$×6Ò6×:Ñ:Ó;Ù�$×/Ò/×7Ñ7Ó8Ù�$×4Ò4×<Ñ<Ó=ô-ó >ó 9ó <ó @ð-ñ ñ 'óá&ˆAØð �NŠN×"Ñ"Ø�GŠG�NŠNØ�GŠG×ÒØ×0Ò0×8Ñ8Ø×0Ò0×4Ñ4ð
ñ
÷ 	
ˆÙ&ñóô-óð-ñ
 à×Ò× Ñ Ø×Ò×!Ñ!Ø×Ò×$Ò$Ø×!Ò!×)Ñ)ð	óô{óð{ñ| �%—)‘)—.‘.×)Ò)×1Ñ1Ó2ö%4ó 3ð%4ñP �%—)‘)—.‘.×6Ò6×>Ñ>Ó?ô%ó @ð%õ<Oñ �$—*’*×$Ñ$Ó%ô%ó &ñ%ð Ñ ö
ö" ðN <[×;bÒ;b÷Qð Q÷lMð Mö4%ð ‡‚ô#ó ó#ùò{s   ÁBA9AI;ÁD	AI;