+
    ˜°³j.5  ã                   ó>  € ^ RI t ^ RIHt ^ RIHt ^ RIHu Ht ^ RIH	t	  ! R R] P                  4      t ! R R]4      t ! R	 R
]4      t ! R R]4      t ! R R]4      t ! R R] P                  4      t ! R R] P                  4      t ! R R4      tR t] P                  ]! R] P(                  R7      ]]! RR R7      ]	]! RR R7      ]]! RR R7      ]]! RR R R!7      ]]! R"R# R R!7      ]]! R$R% R R!7      ]]! R&R' R7      /t ! R( R)] P                  4      tR# )*é    N)Údeepcopy)Útree_map)ÚLoggingTensorc                   óF   a € ] tR t^t o ]R 4       t]R 4       tR tRt	V t
R# )ÚWrapperTensorc                ót  € V P                   ! V/ VB w  r2R V9  d   VP                  4       pMVR ,          pVR  RV9  d   VP                  VR&   RV9  d   VP                  VR&   RV9  d   VP                  VR&   RV9  d   RVR&   \
        P                  P                  ! W3/ VB pVP                  4        V# )ÚsizeÚdtypeÚlayoutÚdeviceÚrequires_gradF)	Úget_wrapper_propertiesr	   r
   r   r   ÚtorchÚTensorÚ_make_wrapper_subclassÚ_validate_methods)ÚclsÚargsÚkwargsÚtr	   Úwrappers   &*,   Úh/home/luca/screen-checking/.venv/lib/python3.14/site-packages/torch/testing/_internal/common_subclass.pyÚ__new__ÚWrapperTensor.__new__   s»   € à×.Ò.°Ð?¸Ñ?‰	ˆØ˜ÔØ—6‘6“8‰Dà˜&•>ˆDØ�v�Ø˜&Ô ØŸg™gˆF�7‰OØ˜6Ô!Ø Ÿx™xˆF�8ÑØ˜6Ô!Ø Ÿx™xˆF�8ÑØ &Ô(Ø&+ˆF�?Ñ#ô —,‘,×5Ò5°cÑJÀ6ÑJˆØ×!Ñ!Ô#Øˆó    c                ó   € \        R 4      h)z,You need to implement get_wrapper_properties)ÚNotImplementedError)r   r   r   s   &*,r   r   Ú$WrapperTensor.get_wrapper_properties&   s   € ô
 "Ð"PÓQÐQr   c                óÐ   € . ROpV F[  p\        V P                  V4      \        \        P                  V4      Jg   K7  \	        RV P                  P
                   RV R24      h	  R# )r	   z	Subclass z is overwriting the property zN but this is not allowed as such change would not be reflected to c++ callers.N)r	   Ústrider
   r   r   r   )ÚgetattrÚ	__class__r   r   ÚRuntimeErrorÚ__name__)ÚselfÚforbidden_overridesÚels   &  r   r   ÚWrapperTensor._validate_methods-   sj   € ò
 _ÐÛ%ˆBÜ�t—~‘~ rÓ*´'¼%¿,¹,ÈÓ2KÕKÜ" Y¨t¯~©~×/FÑ/FÐ.Gð H/Ø/1¨dð 3Fð$Fó Gð Gó &r   © N)r$   Ú
__module__Ú__qualname__Ú__firstlineno__Ústaticmethodr   Úclassmethodr   r   Ú__static_attributes__Ú__classdictcell__©Ú__classdict__s   @r   r   r      s9   ø‡ € Øñó ðð, ñRó ðR÷
Gð 
Gr   r   c                   ód   a a€ ] tR t^:t o]RR l4       tRR lt]RR l4       tV 3R ltRt	Vt
V ;t# )ÚWrapperTensorWithCustomSizesc                ó   € VR VRR/3# )r   Údispatch_sizes_strides_policyÚsizesr)   ©r   r   r   s   &&&r   r   Ú3WrapperTensorWithCustomSizes.get_wrapper_properties;   s   € à�? MÐ3RÐT[Ð\Ð\Ð\r   c                ó   € Wn         R # ©N©r   ©r%   r   r   s   &&&r   Ú__init__Ú%WrapperTensorWithCustomSizes.__init__?   ó   € ØŽr   c                ó  a € \         ;QJ d    V 3R  lV 4       F  '       d   K   RM	  RM! V 3R  lV 4       4      '       g   \        # Vf   / pR pR p\        Ya! \        WS4      / \        YT;'       g    / 4      B 4      pV# )c              3   ó<   <"  € T F  p\        SV4      x € K  	  R # 5ir;   ©Ú
issubclass©Ú.0r   r   s   & €r   Ú	<genexpr>ÚBWrapperTensorWithCustomSizes.__torch_dispatch__.<locals>.<genexpr>D   ó   øé € Ð5©u¨!”:˜c 1×%Ð%«uùó   ƒFTc                 óJ   € \        V \        4      '       d   V P                  # T # r;   )Ú
isinstancer4   r   ©Úes   &r   ÚunwrapÚ?WrapperTensorWithCustomSizes.__torch_dispatch__.<locals>.unwrapJ   s   € Ü$ QÔ(D×EÒE�1—3‘3ÐLÈ1ÐLr   c                 ó\   € \        V \        P                  4      '       d   \        V 4      # T # r;   )rL   r   r   r4   rM   s   &r   ÚwrapÚ=WrapperTensorWithCustomSizes.__torch_dispatch__.<locals>.wrapM   s$   € Ü6@ÀÄEÇLÁL×6QÒ6QÔ/°Ó2ÐXÐWXÐXr   ©ÚallÚNotImplementedr   ©r   ÚfuncÚtypesr   r   rO   rR   Úrss   f&&&&   r   Ú__torch_dispatch__Ú/WrapperTensorWithCustomSizes.__torch_dispatch__B   sn   ø€ ç‹sÔ5©uÓ5�s�sŠsÔ5©uÓ5×5Ò5Ü!Ð!àŠ>ØˆFò	Mò	Yô �d˜D¤(¨6Ó"8Ð[¼HÀVÏ\È\ÐWYÓ<ZÑ[Ó\ˆØˆ	r   c                ó>   <€ \         SV `  R V P                   2R7      # ©zt=©Útensor_contents©ÚsuperÚ__repr__r   ©r%   r"   s   &€r   rc   Ú%WrapperTensorWithCustomSizes.__repr__S   ó    ø€ Ü‰wÑ°"°T·V±V°H°ÐÓ>Ð>r   r<   ©F©r)   N©r$   r*   r+   r,   r.   r   r>   r[   rc   r/   r0   Ú__classcell__©r"   r2   s   @@r   r4   r4   :   s<   ù‡ € Øó]ó ð]ôð óó ð÷ ?õ ?r   r4   c                   ód   a a€ ] tR t^Wt o]RR l4       tRR lt]RR l4       tV 3R ltRt	Vt
V ;t# )ÚWrapperTensorWithCustomStridesc                ó   € VR VRR/3# )r   r6   Ústridesr)   r8   s   &&&r   r   Ú5WrapperTensorWithCustomStrides.get_wrapper_propertiesX   s   € à�? MÐ3RÐT]Ð^Ð^Ð^r   c                ó   € Wn         R # r;   r<   r=   s   &&&r   r>   Ú'WrapperTensorWithCustomStrides.__init__\   r@   r   c                ó  a € \         ;QJ d    V 3R  lV 4       F  '       d   K   RM	  RM! V 3R  lV 4       4      '       g   \        # Vf   / pR pR p\        Ya! \        WS4      / \        YT;'       g    / 4      B 4      pV# )c              3   ó<   <"  € T F  p\        SV4      x € K  	  R # 5ir;   rC   rE   s   & €r   rG   ÚDWrapperTensorWithCustomStrides.__torch_dispatch__.<locals>.<genexpr>a   rI   rJ   FTc                 óJ   € \        V \        4      '       d   V P                  # T # r;   )rL   rm   r   rM   s   &r   rO   ÚAWrapperTensorWithCustomStrides.__torch_dispatch__.<locals>.unwrapg   s   € Ü$ QÔ(F×GÒG�1—3‘3ÐNÈQÐNr   c                 ó\   € \        V \        P                  4      '       d   \        V 4      # T # r;   )rL   r   r   rm   rM   s   &r   rR   Ú?WrapperTensorWithCustomStrides.__torch_dispatch__.<locals>.wrapj   s$   € Ü8BÀ1ÄeÇlÁl×8SÒ8SÔ1°!Ó4ÐZÐYZÐZr   rT   rW   s   f&&&&   r   r[   Ú1WrapperTensorWithCustomStrides.__torch_dispatch___   sn   ø€ ç‹sÔ5©uÓ5�s�sŠsÔ5©uÓ5×5Ò5Ü!Ð!àŠ>ØˆFò	Oò	[ô �d˜D¤(¨6Ó"8Ð[¼HÀVÏ\È\ÐWYÓ<ZÑ[Ó\ˆØˆ	r   c                ó>   <€ \         SV `  R V P                   2R7      # r^   ra   rd   s   &€r   rc   Ú'WrapperTensorWithCustomStrides.__repr__p   rf   r   r<   rg   rh   ri   rk   s   @@r   rm   rm   W   s<   ù‡ € Øó_ó ð_ôð óó ð÷ ?õ ?r   rm   c                   óh   a a€ ] tR t^tt o]RR l4       tRR lt/ t]RR l4       tV 3R lt	Rt
VtV ;t# )ÚDiagTensorBelowc                óª   € VP                   ^8w  d   \        RVP                    24      hVRVP                  4       VP                  4       ,           RV/3# )é   zExpected diag.ndim == 1, got r	   r   )ÚndimÚAssertionErrorr	   )r   Údiagr   s   &&&r   r   Ú&DiagTensorBelow.get_wrapper_propertiesu   sI   € à�9‰9˜Œ>Ü Ð#@ÀÇÁÀÐ!LÓMÐMØ�f˜dŸi™i›k¨D¯I©I«KÕ7¸È-ÐXÐXÐXr   c                ó   € Wn         R # r;   ©rƒ   )r%   rƒ   r   s   &&&r   r>   ÚDiagTensorBelow.__init__{   s   € ØŽ	r   c                óz  a € \         ;QJ d    V 3R  lV 4       F  '       d   K   RM	  RM! V 3R  lV 4       4      '       g   \        # S P                  P                  VP                  R4      pV'       d   T! T/ T;'       g    / B # R pR p\        Yq! \        Wc4      / \        Yd;'       g    / 4      B 4      pV# )c              3   ó<   <"  € T F  p\        SV4      x € K  	  R # 5ir;   rC   rE   s   & €r   rG   Ú5DiagTensorBelow.__torch_dispatch__.<locals>.<genexpr>‚   rI   rJ   FTNc                 óf   € \        V \        4      '       d   V P                  P                  4       # T # r;   )rL   r~   rƒ   rM   s   &r   rO   Ú2DiagTensorBelow.__torch_dispatch__.<locals>.unwrapŽ   s#   € Ü(2°1´o×(FÒ(F�q—v‘v—{‘{“}ÐMÈAÐMr   c                 ót  € \        V \        P                  4      '       d   V P                  ^8X  d   \	        V 4      # \        V \        P                  4      '       d\   V P                  ^8X  dK   V P                  4       V P                  4       P                  4       8X  d   \	        V P                  4       4      # V # ©r€   )rL   r   r   r�   r~   Úcount_nonzerorƒ   rM   s   &r   rR   Ú0DiagTensorBelow.__torch_dispatch__.<locals>.wrap‘   sz   € Ü˜a¤§¡×.Ò.°1·6±6¸Q´;Ü*¨1Ó-Ð-Ü˜a¤§¡×.Ò.°1·6±6¸Q´;À1Ç?Á?ÓCTÐXY×X^ÑX^ÓX`×XnÑXnÓXpÔCpÜ*¨1¯6©6«8Ó4Ð4Ø�r   )rU   rV   Úhandled_opsÚgetr$   r   )	r   rX   rY   r   r   ÚfnrO   rR   rZ   s	   f&&&&    r   r[   Ú"DiagTensorBelow.__torch_dispatch__€   sš   ø€ ç‹sÔ5©uÓ5�s�sŠsÔ5©uÓ5×5Ò5Ü!Ð!ð �_‰_× Ñ  §¡°Ó5ˆßÙ�tÐ. § ¨"Ñ.Ð.òNòô ˜$ ¤h¨vÓ&<Ð _ÄÈ×Q]ÐQ]Ð[]Ó@^Ñ _Ó`ˆBØˆIr   c                ó>   <€ \         SV `  R V P                   2R7      # )zdiag=r_   )rb   rc   rƒ   rd   s   &€r   rc   ÚDiagTensorBelow.__repr__›   s!   ø€ Ü‰wÑ°%¸¿	¹	°{Ð0CÐÓDÐDr   r†   rg   rh   )r$   r*   r+   r,   r.   r   r>   r‘   r[   rc   r/   r0   rj   rk   s   @@r   r~   r~   t   sC   ù‡ € ØóYó ðYô
ð €Kàóó ð÷4Eõ Er   r~   c                   óŽ   a a€ ] tR t^Ÿt o]R	R l4       tR	R ltV 3R ltR t]	R 4       t
]R
R l4       t/ t]R 4       tRtVtV ;t# )ÚSparseTensorc                ó’   € VP                   VP                   8w  d&   \        R VP                    RVP                    24      hVRVRV/3# )z.Expected values.device == indices.device, got z != r	   r   )r   r‚   )r   r	   ÚvaluesÚindicesr   s   &&&&&r   r   Ú#SparseTensor.get_wrapper_properties    sP   € à�=‰=˜GŸN™NÔ*Ü Ð#QÐRX×R_ÑR_ÐQ`Ð`dÐel×esÑesÐdtÐ!uÓvÐvØ˜  o°}ÐEÐEÐEr   c                ó   € W n         W0n        R # r;   )rš   r›   )r%   r	   rš   r›   r   s   &&&&&r   r>   ÚSparseTensor.__init__¦   s   € ØŒØŽr   c                óX   <€ \         SV `  R V P                   RV P                   2R7      # )zvalues=z
, indices=r_   )rb   rc   rš   r›   rd   s   &€r   rc   ÚSparseTensor.__repr__ª   s/   ø€ Ü‰wÑ°'¸$¿+¹+¸ÀjÐQU×Q]ÑQ]ÐP^Ð0_ÐÓ`Ð`r   c                óÈ   € \         P                  ! V P                  4       V P                  P                  R 7      pV P                  WP
                  P                  ^4      &   V# ))r
   )r   Úzerosr	   rš   r
   r›   Úunbind)r%   Úress   & r   Úsparse_to_denseÚSparseTensor.sparse_to_dense­   sB   € Ü�kŠk˜$Ÿ)™)›+¨T¯[©[×->Ñ->Ô?ˆØ&*§k¡kˆ�L‰L×Ñ Ó"Ñ#Øˆ
r   c                ó„   € V P                  4       pWP                  ^4      ,          p\        V P                  4       W!4      # rŽ   )Únonzeror£   r˜   r	   )r   r›   rš   s   &  r   Ú
from_denseÚSparseTensor.from_dense²   s1   € à—)‘)“+ˆØ—>‘> !Ó$Õ%ˆÜ˜AŸF™F›H fÓ6Ð6r   c                óÞ   € VP                    R VP                   2pV P                  WSV4      pV\        Jd   V# R pR p\	        Y�! \	        Ws4      / \	        Yt;'       g    / 4      B 4      p	V	# )Ú.c                 óR   € \        V \        4      '       d   V P                  4       # T # r;   )rL   r˜   r¥   rM   s   &r   rO   Ú/SparseTensor.__torch_dispatch__.<locals>.unwrapÂ   s"   € Ü*4°Q¼×*EÒ*E�1×$Ñ$Ó&ÐLÈ1ÐLr   c                 óp   € \        V \        P                  4      '       d   \        P	                  V 4      # T # r;   )rL   r   r   r˜   r©   rM   s   &r   rR   Ú-SparseTensor.__torch_dispatch__.<locals>.wrapÆ   s)   € ä1;¸A¼u¿|¹|×1LÒ1L”<×*Ñ*¨1Ó-ÐSÐRSÐSr   )r*   r$   Ú_try_call_special_implrV   r   )
r   rX   rY   r   r   Ú	func_namer¤   rO   rR   rZ   s
   &&&&&     r   r[   ÚSparseTensor.__torch_dispatch__¸   st   € à—‘Ð' q¨¯©¨Ð8ˆ	à×(Ñ(¨¸&ÓAˆØ”nÓ$ØˆJò	Mò	Tô �d˜D¤(¨6Ó"8Ð[¼HÀVÏ\È\ÐWYÓ<ZÑ[Ó\ˆØˆ	r   c                ó`   € WP                   9  d   \        # V P                   V,          ! W#4      # r;   )Ú_SPECIAL_IMPLSrV   )r   rX   r   r   s   &&&&r   r±   Ú#SparseTensor._try_call_special_implÐ   s*   € à×)Ñ)Ô)Ü!Ð!Ø×!Ñ! $Ö'¨Ó5Ð5r   )r›   rš   rg   rh   )r$   r*   r+   r,   r.   r   r>   rc   r¥   r-   r©   r[   rµ   r±   r/   r0   rj   rk   s   @@r   r˜   r˜   Ÿ   so   ù‡ € ØóFó ðFô
õaòð
 ñ7ó ð7ð
 óó ðð* €Nàñ6ó ÷6ð 6r   r˜   c                   óL   a a€ ] tR t^Øt oR t]RV 3R ll4       tR tRtVt	V ;t
# )ÚNonWrapperTensorc                óV   € \         P                  P                  W4      pR R/Vn        V# )Úlast_func_calledN)r   r   Ú_make_subclassÚextra_state)r   Údatar   s   && r   r   ÚNonWrapperTensor.__new__Ù   s+   € Ü�L‰L×'Ñ'¨Ó2ˆà ð
ˆŒð ˆr   c                óò   <€ \         SV `  WW44      p\        WP4      '       dU   V\        P                  P
                  J d$   \        V^ ,          P                  4      Vn        V# RVP                  /Vn        V# )r   rº   )	rb   Ú__torch_function__rL   r   r   Ú__deepcopy__r   r¼   r$   )r   rX   rY   r   r   Úresultr"   s   &&&&& €r   rÀ   Ú#NonWrapperTensor.__torch_function__à   sm   ø€ ä‘Ñ+¨D¸ÓFˆä�f×"Ò"ð ”u—|‘|×0Ñ0Ó0Ü%-¨d°1­g×.AÑ.AÓ%B�Ô"ð ˆð '¨¯©ð&�Ô"ð ˆr   c                óL   € \        V 4      ! \        P                  ! V4      4      # r;   )Útyper   Úempty)r%   Úshapes   &&r   Ú	new_emptyÚNonWrapperTensor.new_emptyñ   s   € Ü�DŒzœ%Ÿ+š+ eÓ,Ó-Ð-r   r)   rh   )r$   r*   r+   r,   r   r.   rÀ   rÈ   r/   r0   rj   rk   s   @@r   r¸   r¸   Ø   s(   ù‡ € òð öó ð÷ .ò .r   r¸   c                   óV   a a€ ] tR t^õt oR.tRR ltV 3R lt]RR l4       tRt	Vt
V ;t# )ÚRedispatchTensorÚcall_logc                ó‚   € \         P                  P                  WVP                  R 7      pVe	   W#n        V# . Vn        V# ))Úrequire_grad)r   r   r»   r   rÌ   )r   r½   rÌ   r   s   &&& r   r   ÚRedispatchTensor.__new__ø   s>   € Ü�L‰L×'Ñ'¨À×@RÑ@RÐ'ÓSˆØ!)Ò!5�XŒ
Øˆð <>ˆŒ
Øˆr   c                óª   <€ \         P                  P                  4       ;_uu_ 4        \        SV `  4       uuR R R 4       #   + '       g   i     R # ; ir;   )r   Ú_CÚDisableTorchFunctionrb   rc   rd   s   &€r   rc   ÚRedispatchTensor.__repr__ý   s0   ø€ Ü�X‰X×*Ñ*×,Õ,Ü‘7Ñ#Ó%÷ -×,×,Ó,ús   ¨AÁA	c                ó  a a
€ VP                   V3pR o
V
3R lp\        Wc4      pV'       d   S
f   \        Wd4      pS
e   S
P                  V4       \        P                  P                  WW44      pV
V 3R lp	\        W˜4      # )Nc                 ó\   <€ \        V \        4      '       d   Sf   V P                  oR # R # R # r;   )rL   rË   rÌ   )ÚxrÌ   s   &€r   Úfind_logÚ5RedispatchTensor.__torch_function__.<locals>.find_log  s(   ø€ ä˜!Ô-×.Ò.°8Ò3CØŸ:™:’ñ 4DÑ.r   c                 óˆ   <€ \        V \        P                  4      '       d!   \        V \        4      '       g   S! V SR 7      # V # ))rÌ   )rL   r   r   rË   )rÖ   rÌ   r   s   &€€r   rR   Ú1RedispatchTensor.__torch_function__.<locals>.wrap  s3   ø€ Ü˜!œUŸ\™\×*Ò*´:¸aÔAQ×3RÒ3RÙ˜1 xÔ0Ð0ØˆHr   )r+   r   Úappendr   Ú	overridesÚredispatch_function)r   rX   rY   r   r   Úcall_log_entryr×   Ú_ÚretrR   rÌ   s   f&&&&     @r   rÀ   Ú#RedispatchTensor.__torch_function__  su   ù€ à×+Ñ+¨UÐ3ˆàˆõ	&ô
 �XÓ$ˆß�hÒ&Ü˜Ó*ˆAàÒØ�O‰O˜NÔ+ä�o‰o×1Ñ1°$¸tÓLˆö	ô ˜Ó"Ð"r   r)   r;   )r$   r*   r+   r,   Ú	__slots__r   rc   r.   rÀ   r/   r0   rj   rk   s   @@r   rË   rË   õ   s/   ù‡ € Ø�€Iôõ
&ð ó#ó ÷#ð #r   rË   c                   ó2   a € ] tR tRt o . ROtRR ltRtV tR# )ÚSubclassInfoi  c                ó*   € Wn         W n        W0n        R # r;   ©ÚnameÚ	create_fnÚclosed_under_ops)r%   rç   rè   ré   s   &&&&r   r>   ÚSubclassInfo.__init__!  s   € ØŒ	Ø"ŒØ 0Ör   )ré   rè   rç   Nræ   )T)r$   r*   r+   r,   râ   r>   r/   r0   r1   s   @r   rä   rä     s   ø‡ € â9€I÷1ò 1r   rä   c                 ó~   € V ! \         P                  ! V4      4      pVP                  4        VP                  4        V# r;   )r   Úrandnr	   r    )r   rÇ   Úsubs   && r   Ú_create_and_access_shaperî   (  s.   € Ù
Œe�kŠk˜%Ó Ó
!€Cð
 ‡H�H„JØ‡J�J„LØ€Jr   Úbase_tensor)rè   Únon_wrapper_tensorc                 ó@   € \        \        P                  ! V 4      4      # r;   )r¸   r   rì   ©rÇ   s   &r   Ú<lambda>ró   9  ó   € Ô 0´·²¸UÓ1CÔ Dr   Úlogging_tensorc                 ó@   € \        \        P                  ! V 4      4      # r;   )r   r   rì   rò   s   &r   ró   ró   =  s   € ¤¬e¯kªk¸%Ó.@Ô Ar   Úsparse_tensorc                 óp   € \         P                  \        P                  ! V 4      P	                  4       4      # r;   )r˜   r©   r   rì   Úrelurò   s   &r   ró   ró   A  s!   € ¤× 7Ñ 7¼¿ºÀEÓ8J×8OÑ8OÓ8QÔ Rr   Údiag_tensor_belowc                 ó@   € \        \        P                  ! V 4      4      # r;   )r~   r   rì   rò   s   &r   ró   ró   E  s   € ¤´·²¸EÓ0BÔ Cr   F)rè   ré   Úwrapper_with_custom_sizesc                 ó"   € \        \        V 4      # r;   )rî   r4   rò   s   &r   ró   ró   J  s   € Ô 8Ô9UÐW\Ô ]r   Úwrapper_with_custom_stridesc                 ó"   € \        \        V 4      # r;   )rî   rm   rò   s   &r   ró   ró   O  s   € Ô 8Ô9WÐY^Ô _r   Úredispatch_tensorc                 ó@   € \        \        P                  ! V 4      4      # r;   )rË   r   rì   rò   s   &r   ró   ró   T  rô   r   c                   ób   a € ] tR tRt o ]R 4       tR tR tR t]	R 4       t
]	R 4       tRtV tR	# )
ÚSubclassWithTensorFactoryiX  c                ó(  € VP                   p/ pVP                  4       VR &   VP                  4       VR&   VP                  VR&   VP                  VR&   VP
                  VR&   VP                  VR&   \        P                  P                  ! W3/ VB pV# )ro   Ústorage_offsetr   r   r   r
   )
rÇ   r    r  r   r   r   r
   r   r   r   )r   ÚsrcrÇ   r   Úouts   &&   r   r   Ú!SubclassWithTensorFactory.__new__Y  s‹   € à—	‘	ˆØˆØŸJ™J›LˆˆyÑØ#&×#5Ñ#5Ó#7ˆÐÑ ØŸ:™:ˆˆxÑØŸ:™:ˆˆxÑØ"%×"3Ñ"3ˆˆÑØŸ)™)ˆˆw‰Ü�l‰l×1Ò1°#ÑGÀÑGˆØˆ
r   c                ó   € Wn         R # r;   ©r  )r%   r  s   &&r   r>   Ú"SubclassWithTensorFactory.__init__f  s   € ØŽr   c                ó0   € V P                   P                   # r;   )r"   r$   ©r%   s   &r   rc   Ú"SubclassWithTensorFactory.__repr__i  s   € Ø—.‘.×)Ñ)Ð*Ð+r   c                ó   € R .R3# )r  Nr)   r  s   &r   Ú__tensor_flatten__Ú,SubclassWithTensorFactory.__tensor_flatten__l  s   € Øˆw˜ˆ}Ðr   c                ó$   € VR ,          pV ! V4      # r
  r)   )r   Úinner_tensorsÚmetaÚ
outer_sizeÚouter_strider  s   &&&&& r   Ú__tensor_unflatten__Ú.SubclassWithTensorFactory.__tensor_unflatten__o  s   € à˜EÕ"ˆÙ�3‹xˆr   c                óX  € Vf   / pR p\         P                  ! WV4      p\         P                  ! WV4      pV! V/ VB p\         P                  ! V4      w  ršV	 Uu. uF-  p\        V\        P
                  4      '       d	   V ! V4      MTNK/  	  pp\         P                  ! WÊ4      # u upi )Nc                 óâ   € V P                   P                  \        P                  8X  d<   V P                   \        P                  ! V P                   P
                  4      ,          # V P                   # r;   )r  r
   r   Úfloat32ÚonesrÇ   )rÖ   s   &r   Ú_fnÚ9SubclassWithTensorFactory.__torch_dispatch__.<locals>._fny  sA   € Ø67·e±e·k±kÄUÇ]Á]Ô6R�1—5‘5œ5Ÿ:š: a§e¡e§k¡kÓ2Õ2Ð]ÐXY×X]ÑX]Ð]r   )ÚpytreeÚtree_map_onlyÚtree_flattenrL   r   r   Útree_unflatten)r   rX   rY   r   r   r  Ú_argsÚ_kwargsÚ_outÚ	_out_flatÚ	_out_specÚoÚout_flats   &&&&&        r   r[   Ú,SubclassWithTensorFactory.__torch_dispatch__t  sž   € àŠ>ØˆFò	^ô ×$Ò$ S¨tÓ4ˆÜ×&Ò& s°Ó8ˆá�UÐ&˜gÑ&ˆä%×2Ò2°4Ó8Ñˆ	áJSÓTÉ)ÀQœj¨¬E¯L©L×9Ò9‘C˜”F¸qÒ@É)ˆÐTÜ×$Ò$ XÓ9Ð9ùò Us   Á3B'r
  N)r$   r*   r+   r,   r-   r   r>   rc   r  r.   r  r[   r/   r0   r1   s   @r   r  r  X  sN   ø‡ € Øñ
ó ð
òò,òð ñó ðð ñ:ó ö:r   r  )r   Úcopyr   Útorch.utils._pytreer   ÚutilsÚ_pytreer  Ú&torch.testing._internal.logging_tensorr   r   r   r4   rm   r~   r˜   r¸   rË   rä   rî   rì   Úsubclass_dbr  r)   r   r   Ú<module>r1     sK  ðó Ý Ý (ß $Ð $õ Aô)G�E—L‘Lô )GôX? =ô ?ô:? ]ô ?ô:(E�mô (EôV56�=ô 56ôr.�u—|‘|ô .ô:$#�u—|‘|ô $#÷P1ñ 1òð 
‡L�L‘,Ø §¡ôð ‘lØÙDôð ‘<ØÙAôð ‘,ØÙRôð ‘\ØÙCØôð
 !¡,Ø#Ù]Øô#ð
 #¡LØ%Ù_Øô%ð
 ‘lØÙDôð?#€ôJ,: §¡ö ,:r   