U
    Ç9%eµ  ã                [   @   sÚ  U d dl Z d dlZd dlZd dlmZ d dlmZmZ d dlZd dl	m
  mZ ddlmZmZmZmZmZ daeeeef  ed< eejjejjejjejjejjejjfZedfedfed	fed
fedfedfedfejdfej dfej!dfej"dfej#dfej$dfej%dfej&dfej'dfej(dfej)dfej*dfej+dfej,dfej-dfej.dfej/dfej0dfej1dfej2d fej3d!fej4d"fej5d#fej6d$fej7d%fej8d&fej9d'fej:d(fej;d)fej0dfej1dfej<d*fej=d+fej>d,fej?d-fej@d.fejAd/fejBd0fejCd1fe j/dfe jDd2fe jAd/fe jEd3fe jFd4fe j*dfe j+dfe j.dfe j$dfe j:d(fe j;d)fe j9d'fe j6d$fe j5d#fe j7d%fe j3d!fe j2d fe j4d"fe j0dfe j<d*fe j1dfejGd5fejHd6fejIjJd7fejIjKd8fejjLd9fejMjNjOd:fejMjNjPd;fejMjQjRd<fejMjQjSd=fejMjQjTd>fejMjQjUd?fejjVd@fejjWdAfejXdBfejYjZdCfejYj[dDfejYj\dEfejYj]dFfejYj^dGfejYj_dHfejYj`dIfejYjadJfejYjbdKfgZZcdLdM„ Zdedƒ ZedNdO„ ZfdPdQ„ ZgdRdS„ ZhdTdU„ ZidS )Vé    N)ÚOrderedDict)ÚDictÚOptionalé   )Ú_list_with_defaultÚ_pairÚ
_quadrupleÚ_singleÚ_tripleÚ_builtin_tablezaten::_pairzaten::_quadruplezaten::_singlezaten::_triplezaten::list_with_defaultz
aten::dictzaten::cudnn_is_acceptablez
aten::ceilzaten::copysignz	aten::erfz
aten::erfcz	aten::expzaten::expm1z
aten::fabszaten::floorzaten::gammazaten::lgammaz	aten::logzaten::log10zaten::log1pz	aten::powz
aten::sqrtzaten::isnanzaten::asinhzaten::atanhz
aten::coshz
aten::sinhz
aten::tanhz
aten::acosz
aten::asinz
aten::atanzaten::atan2z	aten::cosz	aten::sinz	aten::tanzaten::acoshz
aten::fmodz
aten::modfzaten::factorialzaten::frexpzaten::isinfzaten::degreeszaten::radiansúaten::isfinitezaten::anglezaten::polarzaten::ldexpzaten::_assertz
aten::gradzaten::backwardzaten::_infer_sizez aten::_no_grad_embedding_renorm_zaten::_assert_int_or_pairzaten::_no_grad_fill_zaten::_no_grad_normal_zaten::_no_grad_uniform_zaten::_no_grad_zero_zaten::_get_tracing_statezaten::_get_cpu_capabilityz
aten::warnz
aten::stftzaten::istftzaten::cdistz
aten::normzaten::unique_dimzaten::unique_consecutivezaten::nuclear_normzaten::frobenius_normzaten::tensordotc                  C   s"   ddddddddg} d	d
„ | D ƒS )NÚstftÚistftZluÚcdistÚnormÚuniqueÚunique_consecutiveÚ	tensordotc                 S   s   h | ]}t tj|ƒ’qS © )ÚgetattrÚtorchÚ
functional)Ú.0Únamer   r   úR/var/www/html/Darija-Ai-API/env/lib/python3.8/site-packages/torch/jit/_builtins.pyÚ	<setcomp>ƒ   s     z7_gen_torch_functional_registered_ops.<locals>.<setcomp>r   )Zopsr   r   r   Ú$_gen_torch_functional_registered_opst   s    ø
r   c                 C   s   | t kS ©N)Ú_functional_registered_ops©Úfnr   r   r   Ú_is_special_functional_bound_op‰   s    r!   c                  C   s²   t d k	rt S i a dd„ } tD ]}| |ƒ qt tjdf¡ t tjdf¡ t tjdf¡ dd lm	  m
} | ¡ r”t |jdf¡ t |jdf¡ tD ]\}}|t t|ƒ< q˜t S )	Nc                 S   sf   t | ƒD ]X}t| |ƒ}t|ƒrt|ƒs|tjk	r|tjk	r|dkrN|dd … }t |d| f¡ qd S )NZ_segment_reduceé   zaten::)	Údirr   Úcallabler!   r   Zno_gradZautocastÚ_builtin_opsÚappend)Úmodr   Úvr   r   r   Úregister_all”   s    
ÿþýüz(_get_builtin_table.<locals>.register_allz	aten::gcdr   zaten::mathremainderr   zaten::get_gradientszaten::dist_backward)r   Ú_modules_containing_builtinsr%   r&   ÚmathÚgcdÚisfiniteÚ	remainderZtorch.distributed.autogradÚdistributedÚautogradZis_availableZget_gradientsÚbackwardÚid)r)   r'   Zdist_autogradÚbuiltinZaten_opr   r   r   Ú_get_builtin_tableŽ   s     
r4   c                 C   s   |t ƒ t| ƒ< d S r   )r4   r2   )r    Úopr   r   r   Ú_register_builtin¶   s    r6   c                 C   s   t ƒ  t| ƒ¡S r   )r4   Úgetr2   r   r   r   r   Ú_find_builtinº   s    r8   )jZcmathr+   ÚwarningsÚcollectionsr   Útypingr   r   r   Ztorch.backends.cudnnÚbackendsZcudnnZnn.modules.utilsr   r   r   r	   r
   r   ÚintÚstrÚ__annotations__Z_CZ_nnZ_fftZ_linalgZ_nestedZ_sparseÚ_specialr*   ÚdictZis_acceptableÚceilÚcopysignÚerfÚerfcÚexpÚexpm1ÚfabsÚfloorÚgammaÚlgammaÚlogÚlog10Úlog1pÚpowÚsqrtÚisnanÚasinhÚatanhÚcoshÚsinhÚtanhÚacosÚasinÚatanÚatan2ÚcosÚsinÚtanÚacoshÚfmodÚmodfÚ	factorialÚfrexpÚisinfÚdegreesÚradiansr-   ZphaseÚrectÚldexpZ_assertr0   Zgradr1   Z_infer_sizeÚnnr   Z_no_grad_embedding_renorm_Zassert_int_or_pairÚinitZ_no_grad_fill_Z_no_grad_normal_Z_no_grad_uniform_Z_no_grad_zero_Z_get_tracing_stateZ_get_cpu_capabilityÚwarnZ_VFr   r   r   r   Z
unique_dimr   Znuclear_normZfrobenius_normr   r%   r   r   r!   r4   r6   r8   r   r   r   r   Ú<module>   sÖ    *













¥c(