Ë
    ÄÓ^jé%  ã                  óf  — d dl mZ d dlmZ d dlmZ d dlmZmZm	Z	 d dl
Z
d dlmZ d dlmZ d dlmZ d d	lmZ e	rd d
lmZ d dlmZ  G d„ de«      Z G d„ de«      Ze
j4                  j6                  Ze
j4                  j:                  Ze
j4                  j>                  Z dd„Z!dd„Z" G d„ de«      Z#y)é    )Úannotations)Údeepcopy)Úcombinations)ÚAnyÚ
NamedTupleÚTYPE_CHECKINGN)Ú_normalize_function_or_error)Ú_pytree)ÚTorchDispatchMode)Útree_map)ÚIterable)Ú
OpOverloadc                  ó"   — e Zd ZU ded<   ded<   y)ÚMutationÚstrÚop_nameÚarg_nameN©Ú__name__Ú
__module__Ú__qualname__Ú__annotations__© ó    ún/var/www/ramen.bs-engineer-server.com/venv/lib/python3.12/site-packages/torch/_subclasses/schema_check_mode.pyr   r      s   … ØƒLØ„Mr   r   c                  ó,   — e Zd ZU ded<   ded<   ded<   y)ÚAliasingr   r   r   Úoutput_numberNr   r   r   r   r   r      s   … ØƒLØƒMØÔr   r   c                óÒ   — t        | t        j                  «      ry	 t        | «      dk(  ryt	        | «      D ]  }t        |t        j                  «      rŒ y 	 y# t
        $ r Y yw xY w)NFr   T)Ú
isinstanceÚtorchÚTensorÚlenÚiterÚ	TypeError)ÚiterableÚts     r   Úis_iterable_of_tensorsr(   0   sd   € ä�(œEŸL™LÔ)Øðäˆx‹=˜AÒØÜ�h“ò 	ˆAÜ˜a¤§¡Õ.Ùñ	ð
 øô ò Ùðús"   �A ¬(A ÁA ÁA Á	A&Á%A&c                ób  — g }| D ]¢  }t        |t        j                  «      r.|j                  |j	                  «       j                  «       «       ŒKt        |«      r<|j                  |D �cg c]   }|j	                  «       j                  «       ‘Œ" c}«       Œ’|j                  |«       Œ¤ |S c c}w ©N)r    r!   r"   ÚappendÚdetachÚcloner(   )ÚargsÚinputsÚargr'   s       r   Úclone_inputsr1   @   s…   € Ø€Fàò ˆÜ�cœ5Ÿ<™<Ô(Ø�M‰M˜#Ÿ*™*›,×,Ñ,Ó.Õ/Ü# CÔ(Ø�M‰M°sÖ;°!˜1Ÿ8™8›:×+Ñ+Õ-Ò;Õ<à�M‰M˜#Õðð €Mùò	 <s   Á*%B,
c                  óD   — e Zd Zdd„Zdd„Zdd„Z	 	 d	 	 	 	 	 	 	 	 	 dd„Zy)	ÚSchemaCheckModec                ó.   — g | _         g | _        g | _        y r*   )ÚopsÚmutatedÚaliasing©Úselfs    r   Ú__init__zSchemaCheckMode.__init__O   s   € ð !ˆŒØ')ˆŒØ(*ˆ�r   c                ó    — | j                   j                  «        | j                  j                  «        | j                  j                  «        y r*   )r5   Úclearr6   r7   r8   s    r   Úreset_cachezSchemaCheckMode.reset_cacheW   s0   € Ø�‰�‰ÔØ�‰×ÑÔØ�‰×ÑÕr   c                ó.   — t        | j                  ddiŽ y )NÚsepú,)Úprintr5   r8   s    r   Údisplay_opszSchemaCheckMode.display_ops\   s   € Üˆt�x‰xÐ!˜SÓ!r   Nc                ój
  ‡‡— dd„Š	 	 	 	 	 	 	 	 dˆfd„Šdd„}dd„}dd„}dd„}| j                   j                  |j                  j                  «       t	        |||d¬«      j
                  }	t        t        |	j                  «       t        |	j                  «       «      «      «      }
|
D �ci c]  }|t        ||
j                  |«      «      “Œ  }}|	D ��ci c];  }|t        j                  |	j                  |«      «      D �cg c]
  } ||«      ‘Œ c}“Œ= }}} ||i |¤Ž}|	D �ci c]  }|t        ||	j                  |«      «      “Œ  }}t        |t         «      r|n|f}t        ||«      }t#        |j                  «      }|j%                  |	«       t'        t)        |j                  j*                  «      «      D �]Ä  }|j                  j*                  |   } ||j                  «      }|j                  |«      €ŒA|j                  |«      }|j                  |«      }|j                  |«      }t'        t)        |«      «      D �]}  }d	} |||   |«      r¦|j                  j                  |vrŽ|j-                  t/        t0        j2                  |«      t/        t0        j4                  |«      «      st7        d
|› d�«      ‚| j8                  j                  t;        |j                  j                  |d|› �«      «       |||   u sŒÀt        |t<        j>                  «      sŒÛ|jA                  t/        t0        j4                  |«      «      r�Œ|t<        j                   jB                  jD                  jF                  t<        j                   jB                  jH                  jF                  fvs�Œft7        dtK        |«      › d|› �«      ‚ |€�ŒtM        ˆfd„t        t        j                  |«      t        j                  |«      |«      D «       «      s�ŒT|jA                  t/        t0        j4                  |«      «      st7        d
|› d�«      ‚| jN                  j                  tQ        |j                  j                  |«      «       �ŒÇ tS        t'        t)        |j                  jT                  «      «      d«      D ]i  \  }} |||   ||   «      sŒ|j-                  t/        t0        j2                  |«      t/        t0        j2                  |«      «      rŒYt7        d|› d|› d�«      ‚ |S c c}w c c}w c c}}w c c}w )Nc                óv   — | j                   rt        j                  | |«      S t        j                  | |d¬«      S )NT)Ú	equal_nan)Úis_quantizedr!   ÚequalÚallclose)ÚlhsÚrhss     r   Úbitwise_equalz9SchemaCheckMode.__torch_dispatch__.<locals>.bitwise_equalf   s1   € Ø×Òô —{‘{ 3¨Ó,Ð,ä—~‘~ c¨3¸$Ô?Ð?r   c                óÈ  •— t        | «      t        j                  u xr t        |«      t        j                  u }|r§| j                  t        j                  k7  rŠ|j                  t        j                  k7  rm|d uxrg | j                  «       |j                  «       k(  xrC  ‰| |«      xr8 |d   |j                  «       k(  xr  |d   |j                  «       j                  k(   S y)Nr   é   F)	Útyper!   r"   ÚlayoutÚ
sparse_csrÚsizeÚstrideÚ_typed_storageÚ_cdata)ÚbeforeÚafterÚmdÚare_tensorsrK   s       €r   Úhas_mutatedz7SchemaCheckMode.__torch_dispatch__.<locals>.has_mutatedn   sÇ   ø€ ô ˜v›,¬%¯,©,Ð6ÒV¼4À»;Ì%Ï,É,Ð;VˆKáØ—M‘M¤U×%5Ñ%5Ò5Ø—L‘L¤E×$4Ñ$4Ò4à �~ò Ø—K‘K“M U§Z¡Z£\Ñ1ò ?Ù% f¨eÓ4ò?à˜1™ §¡£Ñ/ò?ð ˜1™ ×!5Ñ!5Ó!7×!>Ñ!>Ñ>ð	+ð ð r   c                ó¨   — 	 t         j                  j                  | |«      S # t        $ r&}t	        |«      j                  d«      rY d }~y|‚d }~ww xY w)NzCannot inspect value of type F)r!   Ú_CÚ	_overlapsÚ	Exceptionr   Ú
startswith)rI   rJ   Ú	exceptions      r   Úhas_aliasedz7SchemaCheckMode.__torch_dispatch__.<locals>.has_aliased   sI   € ð$ä—x‘x×)Ñ)¨#¨sÓ3Ð3øÜò $Ü�y“>×,Ñ,Ð-LÔMÜ à#�Oûð	$ús   ‚" ¢	A«AÁ
AÁAc                ó   — | dk7  r| S dS )Nr9   Úinputr   )Únames    r   Ústandardize_namez<SchemaCheckMode.__torch_dispatch__.<locals>.standardize_name‰   s   € Ø 6š>�4Ð6¨wÐ6r   c                ó¬   — t        | t        j                  «      r(t        | «      t        j                  ur	 | j                  S | S # t
        $ r | cY S w xY wr*   )r    r!   r"   rN   ÚelemÚAttributeError)Úes    r   Úunwrapz2SchemaCheckMode.__torch_dispatch__.<locals>.unwrapŒ   sJ   € Ü˜!œUŸ\™\Ô*¬t°A«w¼e¿l¹lÑ/JðàŸ6™6�Mð ˆHøô &ò Ø’Hðús   ·A ÁAÁAc                ó¬  — t        | t        j                  «      r«t        | «      t        j                  ur@	 | j                  }t        |j                  «       «      |j                  «       j                  fS | j                  t        j                  k7  r3t        | j                  «       «      | j                  «       j                  fS y # t        $ r Y y w xY wr*   )r    r!   r"   rN   rf   r   rR   rS   rT   rg   rO   rP   )rh   Úcurrents     r   Úparse_metadataz:SchemaCheckMode.__torch_dispatch__.<locals>.parse_metadata•   s©   € Ü˜!œUŸ\™\Ô*Ü˜“7¤%§,¡,Ñ.ð$à"#§&¡&˜ä$ W§^¡^Ó%5Ó6Ø#×2Ñ2Ó4×;Ñ;ð ð ð —X‘X¤×!1Ñ!1Ò1Ü$ Q§X¡X£ZÓ0°!×2BÑ2BÓ2D×2KÑ2KÐLÐLØøô *ò $Ù#ð$ús   ·>C Ã	CÃCT)Únormalize_to_only_use_kwargs)zaten::_unsafe_viewzaten::unsafe_splitz	Argument z0 is not defined to alias output but was aliasingÚoutput_zoDispatcher operators below autograd are not allowed to directly return inputs.
However, we found that `outputs[z] is c              3  ó:   •K  — | ]  \  }}} ‰|||«      –— Œ y ­wr*   r   )Ú.0ÚaÚbÚcrY   s       €r   ú	<genexpr>z5SchemaCheckMode.__torch_dispatch__.<locals>.<genexpr>ë   s(   øè ø€ ò *á˜˜1˜añ    1 a×(ñ*ùs   ƒz* is not defined as mutable but was mutatedé   zOutputs z and z alias unexpectedly)rI   útorch.TensorrJ   rv   ÚreturnÚbool)rU   r   rV   r   rW   ú"tuple[tuple[int, ...], int] | Nonerw   rx   )rI   r   rJ   r   rw   rx   )rc   r   rw   r   )rh   r   rw   r   )rh   r   rw   ry   )+r5   r+   Ú_schemarc   r	   ÚkwargsÚdictÚzipÚkeysr1   Úvaluesr   ÚgetÚpytreeÚtree_leavesr    ÚtupleÚ
SchemaInfoÚadd_argument_valuesÚranger#   Ú	argumentsÚmay_contain_aliasÚSchemaArgumentÚSchemaArgTypeÚoutputrb   ÚRuntimeErrorr7   r   r!   r"   Ú
is_mutableÚatenÚliftÚdefaultÚ
lift_freshr   Úanyr6   r   r   Úreturns)r9   ÚfuncÚtypesr.   r{   r`   rd   ri   rl   Úpre_argumentsÚc_p_argsrc   Úcloned_argumentsrq   Úcloned_metadataÚoutr‡   Ú	tuple_outÚschema_infoÚir0   rU   rW   rV   ÚjÚ
unsafe_opsrK   rY   s                             @@r   Ú__torch_dispatch__z"SchemaCheckMode.__torch_dispatch___   sÏ  ù€ ó	@ð	Øð	Ø #ð	Ø)Kð	àõ	ó"	$ó	7ó	ó	ð" 	�‰�‰˜Ÿ™×)Ñ)Ô*ô 5Ø�$˜¸Tô
ç
‰&ð 	ô œ˜M×.Ñ.Ó0´,¸}×?SÑ?SÓ?UÓ2VÓWÓXˆàCKö
Ø;?ˆD”(˜6 8§<¡<°Ó#5Ó6Ñ6ð
Ðð 
ð &÷	
ð ð Ü+1×+=Ñ+=¸m×>OÑ>OÐPTÓ>UÓ+VöØ&'‘˜qÕ!òñ ð
ˆñ 
ñ �DÐ#˜FÑ#ˆàHUö
Ø@DˆD”(˜6 =×#4Ñ#4°TÓ#:Ó;Ñ;ð
ˆ	ð 
ô & c¬5Ô1‘C¸°vˆ	Ü˜V YÓ/ˆ	ä  §¡Ó.ˆà×'Ñ'¨Ô6ô ”s˜4Ÿ<™<×1Ñ1Ó2Ó3ó 4	OˆAØ—,‘,×(Ñ(¨Ñ+ˆCÙ# C§H¡HÓ-ˆDØ�}‰}˜TÓ"Ñ.Ø)×-Ñ-¨dÓ3�Ø$×(Ñ(¨Ó.�Ø!Ÿ™ dÓ+�Üœs 9›~Ó.ó �Aà!M�Já# I¨a¡L°%Ô8Ø ŸL™L×-Ñ-°ZÑ?ð  +×<Ñ<Ü*¬=×+?Ñ+?ÀÓCÜ*¬=×+>Ñ+>ÀÓBô ô #/Ø"+¨D¨6Ð1aÐ bó#ð ð !ŸM™M×0Ñ0Ü (¨¯©×):Ñ):¸DÀGÈAÈ3À-Ó Pôð  	¨!¡Ò,´¸EÄ5Ç<Á<Õ1Pà*×5Ñ5Ü*¬=×+>Ñ+>ÀÓBö à"Ü!ŸI™IŸN™N×/Ñ/×7Ñ7Ü!ŸI™IŸN™N×5Ñ5×=Ñ=ð+ó ô #/ð%!ä!$ Q£ ¨¨d¨Vð!7ó#ð ð7ð@ ’>¤có *ä#&Ü×*Ñ*¨6Ó2´F×4FÑ4FÀuÓ4MÈró$ô*ö 'ð '×1Ñ1Ü&¤}×':Ñ':¸AÓ>ôô +Ø'¨ vÐ-WÐXóð ð Ÿ™×+Ñ+¬H°T·\±\×5FÑ5FÈÓ,MÖNði4	Oôn !¤¤s¨4¯<©<×+?Ñ+?Ó'@Ó!AÀ1ÓEò 	R‰DˆAˆqÙ˜9 Q™<¨°1©Õ6à"×4Ñ4Ü"¤=×#7Ñ#7¸Ó;Ü"¤=×#7Ñ#7¸Ó;õô '¨°!°°E¸!¸Ð<OÐ'PÓQÐQð	Rð ˆ
ùòm
ùòùó
ùò
s$   Â+#T Ã,T*ÄT%ÄT*Ä$#T0Ô%T*)rw   ÚNone)r   N)
r”   r   r•   ztuple[type[Any], ...]r.   ztuple[Any, ...]r{   zdict[str, Any] | Nonerw   r   )r   r   r   r:   r=   rB   r    r   r   r   r3   r3   N   sT   „ ó+óó
"ð !#Ø(,ðeàðeð %ðeð ð	eð
 &ðeð 
ôer   r3   )r&   úIterable[Any]rw   rx   )r.   r¢   rw   z	list[Any])$Ú
__future__r   Úcopyr   Ú	itertoolsr   Útypingr   r   r   r!   Útorch.fx.operator_schemasr	   Útorch.utilsr
   r�   Útorch.utils._python_dispatchr   Útorch.utils._pytreer   Úcollections.abcr   Ú
torch._opsr   r   r   r[   Ú_SchemaArgumentr‰   Ú_SchemaArgTyperŠ   Ú_SchemaInfor„   r(   r1   r3   r   r   r   ú<module>r°      sŽ   ðÝ "å Ý "ß 1Ñ 1ã Ý BÝ )Ý :Ý (ñ Ý(å%ôˆzô ô
ˆzô ð —‘×)Ñ)€à—‘×'Ñ'€Ø�X‰X×!Ñ!€
óó ôvÐ'õ vr   