Ë
    f^(h  ã                   ól  — U d dl Z d dl mZ e j                  j                  Zd dlZd dlZd dlmZmZm	Z	 d dl
mZ d dlmZ i Zeee j"                  j$                  f   ed<    e«       Zee   ed<    e	d«      Z ed	«      Zd
„ Zd„ Z	 dde j4                  j6                  deeee j"                  j$                  f      deeeef   geeef   f   fd„Z eej:                  j<                  «      	 	 	 ddedeee       dee   de!def
d„«       Z" eej:                  jF                  «      ddede!defd„«       Zy)é    N)ÚTensor)ÚCallableÚOptionalÚTypeVar)Ú	ParamSpec)ÚNumberÚdecomposition_tableÚfunction_name_setÚ_TÚ_Pc                 ó2  — t         j                  }t        j                  | «      }|j                  j	                  «       D ]2  }|j
                  |k7  rŒJ d|j                  › d| j                  › �«       ‚ |j                  |k7  sJ d| j                  › �«       ‚y )NzNo signature on param z for function z"No return annotation for function )ÚinspectÚ_emptyÚ	signatureÚ
parametersÚvaluesÚ
annotationÚnameÚreturn_annotation)ÚfÚinspect_emptyÚsigÚparams       úW/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/torch/jit/_decompositions.pyÚ(check_decomposition_has_type_annotationsr      s™   € Ü—N‘N€MÜ
×
Ñ
˜AÓ
€CØ—‘×&Ñ&Ó(ò Gˆà×Ñ Ó-ð	Gà# E§J¡J <¨~¸a¿f¹f¸XÐFó	GØ-ðGð 	×Ñ Ò.ð5à	+¨A¯F©F¨8Ð4ó5Ù.ó    c                 ó  — | j                   }|j                   }t        |«      t        |«      k7  ryt        |j                  «       |j                  «       «      D ]Œ  \  }}t        j
                  }dD ]G  }|dk(  r$|j                  dk(  rt        j                  d«       t        ||«      t        ||«      k7  sŒF  y |j                  }|j                  }	||k7  sŒ€|	|k7  sŒ†||	k7  sŒŒ y | j                  |j                  k(  S )NF)r   r   r   Úselfz4PyTorch uses 'input' instead of 'self' on public api)r   ÚlenÚzipr   r   r   r   ÚwarningsÚwarnÚgetattrÚdefaultr   )
Údecomposition_sigÚtorch_op_sigÚdecomp_paramsÚ	op_paramsÚdecomp_paramÚop_paramr   ÚfieldÚdecomp_defaultÚ
op_defaults
             r   Úsignatures_matchr.   #   sú   € Ø%×0Ñ0€MØ×'Ñ'€Iä
ˆ=ÓœS ›^Ò+Øä"% m×&:Ñ&:Ó&<¸i×>NÑ>NÓ>PÓ"Qò Ñˆ�hô
  Ÿ™ˆØ+ò 	ˆEØ˜Š <×#4Ñ#4¸Ò#>Ü—‘ÐTÔUä�| UÓ+¬w°xÀÓ/GÓGÚð	ð &×-Ñ-ˆØ×%Ñ%ˆ
ð ˜]Ó*¨z¸]Ó/JØ Ó+Ùð'ð* ×.Ñ.°,×2PÑ2PÑPÐPr   Úaten_opÚregistryÚreturnc                 ód   ‡ ‡— dt         t        t        f   dt         t        t        f   fˆ ˆfd„}|S )Nr   r1   c                 ór  •— ‰€t         Št        ‰t        j                  j                  «      sJ ‚| j
                  t        vsJ d| j
                  › �«       ‚t        j                  | j
                  «       t        j                  j                  | «      }t        j                  j                  |j                  «       t        d«      D ]T  }t        j                  j                  |j                  «       t        j                  j                  |j                  «       ŒV |‰t!        ‰j"                  «      <   | S )NzDuplicated function name é   )r	   Ú
isinstanceÚtorchÚ_opsÚ
OpOverloadÚ__name__r
   ÚaddÚjitÚscriptÚ_CÚ_jit_pass_inlineÚgraphÚrangeÚ_jit_pass_peepholeÚ_jit_pass_constant_propagationÚstrÚ_schema)r   Úscripted_funcÚ_r/   r0   s      €€r   Údecomposition_decoratorz7register_decomposition.<locals>.decomposition_decoratorF   sï   ø€ àÐÜ*ˆHä˜'¤5§:¡:×#8Ñ#8Ô9Ð9Ð9ð �J‰JÔ/Ñ/ð	4à& q§z¡z lÐ3ó	4Ø/ä×Ñ˜aŸj™jÔ)äŸ	™	×(Ñ(¨Ó+ˆÜ�‰×!Ñ! -×"5Ñ"5Ô6ä�q“ò 	IˆAÜ�H‰H×'Ñ'¨×(;Ñ(;Ô<Ü�H‰H×3Ñ3°M×4GÑ4GÕHð	Ið *7ˆ”�W—_‘_Ó%Ñ&Øˆr   )r   r   r   )r/   r0   rG   s   `` r   Úregister_decompositionrH   B   s0   ù€ ð¤8¬B´¨FÑ#3ð ¼ÄÄRÀÑ8Hö ð. #Ð"r   ÚinputÚdimÚ
correctionÚkeepdimc                 óð  — |€g }|}t        |t        t        f«      rt        |«      dk(  r| j	                  «       }nd}|D ]  }|| j
                  |   z  }Œ t        j                  | |d«      }| |z
  }||z  }t        j                  |||«      }	|€t        |dz
  «      }
nIt        |t        «      rt        ||z
  «      }
n*t        |t        «      rt        |«      |z
  }
nt        d«      ‚|	t        d|
«      z  S )Nr   é   Tzcorrection must be int or float)r5   ÚtupleÚlistr   ÚnumelÚshapeÚatenÚmeanÚsumÚfloatÚintÚRuntimeErrorÚmax)rI   rJ   rK   rL   Údim_iÚnrT   ÚsubÚsqrU   Údenoms              r   Úvar_decompositionr_   c   sõ   € ð €{ØˆØˆä�#œœt�}Ô%¬#¨c«(°aª-Ø�K‰K‹M‰àˆØò 	$ˆEØ�—‘˜UÑ#Ñ#‰Að	$ô �9‰9�U˜C Ó&€DØ
�$‰,€CØ	ˆs‰€BÜ
�(‰(�2�s˜GÓ
$€CàÐÜ�a˜!‘e“‰ä�j¤#Ô&Ü˜!˜j™.Ó)‰EÜ˜
¤EÔ*Ü˜!“H˜zÑ)‰EäÐ@ÓAÐAà”�Q˜“ÑÐr   Úunbiasedc                 ó.   — t        | |rd¬«      S d¬«      S )NrN   r   )rK   )r_   )rI   r`   s     r   Úvarrb   ‡   s   € ä˜U±X°ÔFÐFÀ1ÔFÐFr   )N)NNF)T)$r6   r   ÚopsrS   r   r!   Útypingr   r   r   Útyping_extensionsr   Útorch.typesr   r	   ÚdictrC   r;   ÚScriptFunctionÚ__annotations__Úsetr
   r   r   r   r.   r7   r8   rH   rb   rK   rP   rW   Úboolr_   r$   © r   r   ú<module>rm      sŒ  ðä Ý ð ‡y�y‡~�~€Û Û ß .Ñ .Ý 'å ð <>Ð �T˜#˜uŸy™y×7Ñ7Ð7Ñ8Ó =Ù!›eÐ �3�s‘8Ó #áˆTƒ]€Ùˆtƒ_€ò
5òQðB ?Cñ#Ø�Z‰Z×"Ñ"ð#à�t˜C §¡×!9Ñ!9Ð9Ñ:Ñ;ð#ð ˆx˜˜B˜ÑÐ  (¨2¨r¨6Ñ"2Ð2Ñ3ó#ñB ˜Ÿ™×+Ñ+Ó,ð  $Ø#'Øñ	 Øð à	�$�s‘)Ñ	ð ð ˜Ñ ð ð ð	 ð
 ò ó -ð ñF ˜Ÿ™×(Ñ(Ó)ñGˆvð G ð G°ò Gó *ñGr   