
    3j                     L   S SK r S SKJr  S SKrSSKJr  SSKJrJr  \R                  R                  R                  5       (       a?     SS\\   S\S\\   S-  S	\S
\\   4
S jjrS\\   S
\\   4S jrS\\   S
\\   4S jrg   SS\\   S\S\\   S-  S	\S
\\   4
S jjrg)    N)Sequence   )MACOS_VERSION)DecorateInfoOpInfoopsdevice_typexfail_exclusionsparsereturnc                 j+  ^ Uc  / n1 SknS[         R                  /0n0 SS _SS _SS _SS _SS _SS _S	S _S
S _SS _SS _SS _SS _SS _SS _SS _SS _SS _0 SS _SS _S[         R                  /_S[         R                  /_S[         R                  /_SS _SS _SS _S[         R                  [         R                  [         R
                  [         R                  [         R                  /_S[         R                  /_SS _S[         R                  /_S [         R                  [         R                  [         R                  [         R                  [         R
                  /_S!S _S"[         R                  [         R
                  [         R                  [         R                  [         R                  /_S#[         R                  [         R
                  [         R                  [         R                  [         R                  /_S$[         R                  [         R
                  [         R                  [         R                  /_E0 S%[         R                  [         R                  [         R                  [         R                  [         R
                  /_S&S _S'S _S([         R                  [         R
                  /_S)[         R
                  [         R                  [         R                  [         R                  [         R                  /_S*[         R                  [         R                  [         R                  [         R                  [         R
                  /_S+S _S,[         R                  [         R
                  [         R                  [         R                  [         R                  [         R                  /_S-[         R                  [         R
                  [         R                  [         R                  [         R                  [         R                  /_S.S _S/S _S0[         R                  /_S1S _S2[         R                  [         R                  [         R
                  [         R                  [         R                  /_S3[         R                  [         R
                  [         R                  [         R                  [         R                  /_S4[         R                  [         R                  [         R                  [         R                  [         R
                  [         R                  /_S5[         R                  /_E0 S6[         R                  /_S7[         R                  [         R
                  [         R                  [         R                  [         R                  [         R                  /_S8[         R                  [         R
                  [         R                  [         R                  [         R                  [         R                  /_S9[         R                  [         R
                  [         R                  [         R                  [         R                  [         R                  /_S:[         R                  [         R
                  [         R                  [         R                  [         R                  [         R                  /_S;[         R                  [         R
                  [         R                  [         R                  [         R                  [         R                  /_S<[         R                  [         R
                  [         R                  [         R                  [         R                  [         R                  /_S=[         R
                  [         R                  [         R                  [         R                  [         R                  /_S>S _S?[         R                  [         R                  [         R
                  [         R                  [         R                  /_S@[         R                  [         R                  [         R
                  [         R                  /_SA[         R                  [         R
                  [         R                  [         R                  [         R                  [         R                  /_SB[         R                  /_SCS _SD[         R                  /_SES _SF[         R                  [         R
                  [         R                  [         R                  /_E0 SG[         R
                  [         R                  [         R                  [         R                  [         R                  /_SHS _SIS _SJ[         R                  [         R                  [         R                  [         R
                  [         R                  /_SK[        SL:  a   [         R
                  [         R                  /O[         R                  /_SM[        SL:  a   [         R
                  [         R                  /O[         R                  /_SN[         R                  /_SOS _SPS _SQS _SRS _SSS _STS _SUS _SVS _SWS _SXS _E0 SYS _SZS _S[S _S\S _S]S _S^S _S_[         R                  [         R                  /_S`S _SaS _SbS _ScS _Sd[         R                  [         R                  [         R
                  [         R                  [         R                  /_Se[         R                  [         R                  [         R
                  [         R                  [         R                  /_Sf[         R                  [         R                  [         R
                  [         R                  [         R                  /_Sg[         R                  [         R                  [         R
                  [         R                  [         R                  /_ShS _Si[         R                  /_E0 Sj[         R                  /_SkS _SlS _Sm[         R                  [         R                  [         R
                  [         R                  [         R                  [         R                  /_SnS _SoS _SpS _SqS _SrS _Ss[         R                  /_St[         R                  /_Su[         R                  /_Sv[         R                  /_Sw[         R                  [         R                  /_Sx[         R                  [         R                  [         R                  /_Sy[         R                  [         R
                  [         R                  [         R                  [         R                  /_Sz[         R                  [         R
                  [         R                  [         R                  [         R                  /_ES{[         R                  [         R
                  [         R                  [         R                  [         R                  /0EnS S S S S S|.n[        SL:  a  UR                  S S S}.5        U(       a  UR                  U5        0 S~[         R                  [         R
                  [         R                  [         R                  [         R                  /_S[         R                  [         R                  [         R                  /_S[         R                  [         R                  [         R                  /_S[         R                  [         R                  [         R                  /_SS _SS _SS _SS _S[         R                  [         R                  [         R                  /_S[         R                  [         R                  [         R                  /_S[         R                  [         R                  [         R                  /_S[         R                  [         R                  [         R                  /_S[         R                  [         R                  [         R                  [         R
                  [         R                  [         R                  [         R                  [         R                  /_S[         R                  [         R                  [         R                  /_S[         R                  [         R                  [         R                  /_S[         R                  [         R                  [         R                  /_S[         R                  [         R                  [         R                  /_[         R                  [         R                  [         R                  /[         R                  [         R                  [         R                  [         R                  /[         R                  [         R                  [         R                  /[         R                  [         R                  [         R                  /[         R                  [         R                  [         R                  /[         R                  [         R                  [         R
                  [         R                  /[         R                  [         R                  [         R                  /[         R                  [         R                  [         R                  /[         R                  [         R                  [         R
                  [         R                  [         R                  [         R                  /S [         R                  [         R                  [         R                  /S.EnS [         R                  /[         R                  [         R                  [         R                  [         R                  [         R                  /[         R                  [         R                  [         R                  [         R                  [         R                  /S.n	S S S S S S S.n
SuS 0nS[        S[        SS 4U4S jjnU  GH  nUR                  UR                   -   nU" U[        ["        R$                  [         R&                  [         R(                  /S95        U(       a4  U" U[        ["        R*                  " S5      [         R,                  /S95        X;   a'  U" U[        ["        R*                  " S5      X   S95        X;   a'  U" U[        ["        R*                  " S5      X   S95        UUU	4 H2  nX;   d  M
  X;  d  M  U" U[        ["        R$                  X   S95        M4     X;   a0  X;  a+  [        S:  a!  U" U[        ["        R$                  X^   S95        X;  d  GMe  U" U[        ["        R$                  [         R.                  [         R                  /S95        GM     U $ )N>3  HTteqmHmTmmmvneabsaddallanybmmcatcoscovdivdotexpeyeintlogmulnegsgnsinsubsumsvdtanacosasinatanboolbytecharconjcoshdiagdiffdistexp2fillflipfullhalfimagitemkronlerplog2longmeannormonesprodrealrollrsubsincsinhsqrtstfttanhtiletriltriuvdotviewacoshaddmvangleasinhatanhchalfchunkclonecrossemptyequalexpm1floatinnerisinfisnanistftldexplog10log1pouterrandnravelrot90rsqrtshortslicesplitstacktracetrapzwherezero_zerosaddbmmcfloatcumsumdsplitdstackeinsumexpandfliplrflipudgatherhsplithstackisrealmatmulnarrowrepeatselectsquaret_copyunbindunfoldvsplitvstackaddcdivaddcmulbaddbmmcumprodflattenisclosemovedimnonzeronormfronorminfpermutereshapescattersigmoidsqueezeview_as__radd____rdiv____rmul____rsub__allcloseargwherebfloat16corrcoefdiagflatdiagonalgradientisfinitelinspacenew_fullnew_onespinversepositive	expand_as	full_like	index_add	index_put	logaddexp	logsumexp	new_zeros	ones_like	tensordot	transpose	trapezoid	unflatten	unsqueeze	view_copy
_chunk_cat
alias_copy
as_strided
atleast_1d
atleast_2d
atleast_3d
block_diag
contiguous
diag_embed
index_copy
index_fill
logaddexp2
logical_or
reciprocal
reshape_as
zeros_like__getitem____rmatmul__expand_copylogical_andlogical_notlogical_xormasked_fillnarrow_copyresolve_negscatter_addsum_to_sizetrue_divideunbind_copyunfold_copybroadcast_tocolumn_stackcombinationsindex_selectlogcumsumexppermute_copyresolve_conjsqueeze_copytensor_splitunsafe_chunkunsafe_splitview_as_realconj_physicalcount_nonzerodiagonal_copyempty_stridedmasked_selectscalar_tensorcartesian_prodempty_permutedmasked_scatternonzero_staticsplitlist_argstake_along_dimtranspose_copyunsqueeze_copyaddmmdecomposedas_strided_copyconstant_pad_ndsqueezemultiplediagonal_scattersplit_with_sizesbroadcast_tensorsrepeat_interleavesoftmaxwith_dtypeas_strided_scatterdivno_rounding_mode_unsafe_masked_indexcumulative_trapezoidsplit_with_sizes_copylinspacetensor_overloadmeshgridlist_of_tensorsmeshgridvariadic_tensors#_unsafe_masked_index_put_accumulatefft.fftfft.fft2fft.fftnfft.hfftfft.ifft	fft.hfft2	fft.hfftn	fft.ifft2	fft.ifftn	fft.irfft
fft.irfft2
fft.irfftn
linalg.svd
masked.std
masked.sum
masked.varlinalg.pinvmasked.meanmasked.prodfft.fftshiftlinalg.crossspecial.entrspecial.zetafft.ifftshiftlinalg.vanderlinalg.vecdotmasked.cumsummasked.cumprodlinalg.diagonalspecial.xlog1pylinalg.multi_dotmasked.logsumexpmasked.normalizelinalg.vector_normnn.functional.conv1dnn.functional.conv2dnn.functional.linearnn.functional.unfoldnn.functional.l1_lossnn.functional.rms_normnn.functional.softsignnn.functional.normalizenn.functional.padreflectnn.functional.tanhshrinknn.functional.padcircularnn.functional.padconstantlinalg.householder_productnn.functional.padreplicatenn.functional.pixel_shufflespecial.spherical_bessel_j0nn.functional.pixel_unshufflenn.functional.conv_transpose1dnn.functional.conv_transpose2dnn.functional.conv_transpose3dnn.functional.pairwise_distancenn.functional.softminwith_dtype!nn.functional.triplet_margin_loss/nn.functional.triplet_margin_with_distance_loss0nn.functional.feature_alpha_dropoutwithout_trainr  logspacelogspacetensor_overload
linalg.eiglinalg.eigvalsputfrexpgeqrfznn.functional.grid_samplehash_tensor	heavisidelcmzlinalg.condzlinalg.eighzlinalg.eigvalshzlinalg.ldl_factorzlinalg.ldl_factor_exzlinalg.ldl_solvezlinalg.lstsqzlinalg.lstsqgrad_orientedzlinalg.matrix_normzlinalg.normzlinalg.normsubgradients_at_zerozlinalg.svdvalszmasked.median
matrix_exp max_pool2d_with_indices_backwardmedianmode	nanmediannative_batch_normnormnucznn.functional.avg_pool1dznn.functional.avg_pool2dznn.functional.avg_pool3dznn.functional.batch_normz#nn.functional.fractional_max_pool2dz#nn.functional.fractional_max_pool3dznn.functional.group_normznn.functional.gluznn.functional.huber_lossz!nn.functional.adaptive_avg_pool3dz!nn.functional.adaptive_max_pool1dz!nn.functional.adaptive_max_pool2dz!nn.functional.adaptive_max_pool3dznn.functional.interpolateareaz nn.functional.interpolatebicubicznn.functional.ctc_lossz!nn.functional.local_response_normznn.functional.logsigmoidznn.functional.max_pool1dznn.functional.max_pool2dznn.functional.max_pool3dznn.functional.max_unpool1dznn.functional.max_unpool1dgradznn.functional.max_unpool2dznn.functional.max_unpool2dgradznn.functional.max_unpool3dznn.functional.max_unpool3dgradznn.functional.mishznn.functional.multi_margin_lossz$nn.functional.multilabel_margin_lossz)nn.functional.multilabel_soft_margin_lossznn.functional.nll_lossz#nn.functional.padreplicate_negativeznn.functional.pdistznn.functional.reluznn.functional.rreluznn.functional.siluznn.functional.softplusznn.functional.normormqrrounddecimals_0scatter_reduceamaxg      .@scatter_reduceaminscatter_reducemeansegment_reducez_segment.reducezsegment.reducesegment_reduce_offsets_segment_reduce_offsets_segment_reduce_lengths_segment_reducelengths_segment_reduceoffsetsz	sparse.mmzsparse.sampled_addmmsparse.mmreducezspecial.airy_aizspecial.laguerre_polynomial_lzspecial.legendre_polynomial_pzspecial.log_ndtrzspecial.ndtrirM   svd_lowranksymeigtaketovar_meanunbiasedvar_meanstd_meanstd_meanunbiasedsegment_reduce__upsample_bilinear2d_aa_upsample_bicubic2d_aacdoubledoublelog_softmaxwith_dtypefloat_powerzlinalg.matrix_rankhermitianzlinalg.pinvhermitianz!nn.functional.adaptive_avg_pool1dz!nn.functional.adaptive_avg_pool2dr(  r)  nn.functional.conv3dr9  r:  r;  r*  matbincount)rA  rB  rC  rD  rE  )quantilenanquantiletopkmultinomialuniform	rand_likerandintrandint_likeri   
randn_like	bernoulliexponential
log_normalcauchy	geometricz-nn.functional.feature_alpha_dropoutwith_trainnormalnormalin_placenormalnumber_mean)znn.functional.alpha_dropoutznn.functional.dropoutznn.functional.dropout2dznn.functional.dropout3dz*nn.functional.multi_head_attention_forward__rpow__resize_
resize_as_addras_stridedpartial_viewsz*nn.functional.scaled_dot_product_attention)linalg.matrix_rankarangeargsortsort)	new_emptynew_empty_stridedr   r]   
empty_liker   opdr   c                 D   > Tb  TUl         U R                  U4-   U l        g N)r	   
decorators)r  r  r	   s     \/home/wildlama/miniconda3/lib/python3.13/site-packages/torch/testing/_internal/common_mps.pyaddDecorator&mps_ops_modifier.<locals>.addDecoratorD  s"    & +MMQD0BM    dtypesz4Skipped due to MPS not supporting complex128 tensorszSkipping empty ops.zSkipped!g,@)torch	complex64float32int8int16int32int64uint8r0   r   float16r   updater   r   namevariant_test_nameunittestexpectedFailurerj  ri  skip
complex128	complex32)r   r	   r
   r   SUPPORTED_COMPLEX_OPSMACOS_BEFORE_14_4_XFAILLISTUNIMPLEMENTED_XFAILLISTUNIMPLEMENTED_XFAILLIST_SPARSEUNDEFINED_XFAILLISTON_MPS_XFAILLISTEMPTY_OPS_SKIPLISTSKIPLISTr  r  key	xfaillists    `              r  mps_ops_modifierr     s    " Ot!
p	 %//*'
#J;
J;
 &tJ;
 $	J;

 dJ;
 4J;
 TJ;
 TJ;
 (J;
 4J;
 J;
 4J;
 4J;
 4J;
  t!J;
"  #J;
$ #D%J;
& 'J;
( D)J;
* (+J;
, !5==/-J;
. EMM?/J;
0 .1J;
2 d3J;
4 T5J;
6 $7J;
8 /

19J;
F uzzlGJ;
H DIJ;
J %**KJ;
L  



"MJ;
Z t[J;
\ '



)]J;
j '



)kJ;
x '

	)yJ;
D '



)EJ;
R 24SJ;
T 24UJ;
V 'ekk(BWJ;
X  



"YJ;
f '



)gJ;
t 0uJ;
v 0



2wJ;
F 0



2GJ;
V 0WJ;
X ,TYJ;
Z /[J;
\ %d]J;
^ 0



2_J;
l '



)mJ;
z '



){J;
J 'KJ;
L 'MJ;
N )



+OJ;
^ -



/_J;
n )



+oJ;
~ -



/J;
N )



+OJ;
^ -



/_J;
n !



#oJ;
| .t}J;
~ 3

5J;
L 8

	:MJ;
X %



'YJ;
h 2EJJ<iJ;
j "4kJ;
l !5::,mJ;
n "4oJ;
p !

	#qJ;
| %



'}J;
J !$KJ;
L TMJ;
N 

 OJ;
\ !t# $);;"<++aJ;
b !t# $);;"<++gJ;
h !5::,iJ;
j dkJ;
l tmJ;
n doJ;
p %dqJ;
r &tsJ;
t &tuJ;
v %dwJ;
x %dyJ;
z {J;
| #D}J;
~ tJ;
@ tAJ;
B ,TCJ;
D ,TEJ;
F GJ;
H TIJ;
J U]]ENN3KJ;
L 4MJ;
N dOJ;
P DQJ;
R $SJ;
T 



!UJ;
b ejj%++u{{EJJWcJ;
d ejj%++u{{EJJWeJ;
f 



!gJ;
t tuJ;
v &}wJ;
x %u{{myJ;
z t{J;
| d}J;
~ $

&J;
N	 4O	J;
P	 *4Q	J;
R	 #DS	J;
V	 0W	J;
X	 0Y	J;
\	 #U[[M]	J;
^	 #U[[M_	J;
`	 #U[[Ma	J;
b	 -u{{mc	J;
d	 -u{{ENN.Ke	J;
f	 -/g	J;
t	 #

%u	J;
B
 EKKekk5;;

SC
J;
F
 

G
J;
X
 '+"B
& 4#** $#' #**+IJ\7
 

\7
 \7
" u}}ennE#\7
$ %--G%\7
& t'\7
( D)\7
* T+\7
, $-\7
. %--G/\7
0 EMM5==%..I1\7
2 5==%--H3\7
4 u}}emmU^^D5\7
6 

	7\7
J <>K\7
T u}}emmU^^DU\7
V u}}emmU^^LW\7
X  %--!OY\7
\ , 	& ).u}}enn'U(-u}}enn'U ; U[[%++u{{Ku}}ennE ==%--H 



 (, ;o\7
B #'{{m 



 



3 4
L !%! "
$ #D
	1V 	1 	1 	1 B''B000C,,	    R ",, 	
 (  &;<16 X]]:%>x}U (# 	
 #(B $X%=%=inU 2."T)  00:? /  00 %AA P 
r  c                 	   0 S[         R                  [         R                  /_S[         R                  [         R                  /_SS _SS _S[         R                  /_SS _S[         R                  [         R                  /_S[         R                  [         R                  /_S	S _S
[         R                  [         R                  /_SS _SS _SS _SS _S[         R                  /_S[         R                  /_S[         R                  /_0 S[         R                  [         R                  /_S[         R                  [         R                  /_S[         R                  [         R                  /_S[         R                  [         R                  /_SS _SS _S[         R                  [         R                  /_S[         R                  [         R                  /_S[         R                  [         R                  /_S[         R                  [         R                  /_S[         R                  [         R                  /_S[         R                  [         R                  /_S[         R                  [         R                  /_S[         R                  /_S [         R                  /_S![         R                  /_S"[         R                  /_E[         R                  /[         R                  /[         R                  /[         R                  /[         R                  /[         R                  /[         R                  /[         R                  [         R                  /S S S#.
En[         R                  /[         R                  /[         R                  /[         R                  /[         R                  /[         R                  /[         R                  /S$.nS [         R                  /S%.nS&[        S'[        S(S 4S) jnU  H  nUR
                  UR                  -   nXa;   a!  U" U[	        [        R                  X   S*95        Xb;   a!  U" U[	        [        R                  X&   S*95        Xc;   d  Mo  U" U[	        [        R                  X6   S*95        M     U $ )+N_segment_reducer   rg  rh  r]  r4  unique_consecutiver   cdistzmasked.scattergrid_sampler_2dgrid_sampler_3digammaigammacz
special.i1zspecial.i1emsortrz  r{  r|  r}  r  	nextafterfloor_dividehistogramdd	histogramr   r^   r>   ri   zsignal.windows.bartlettzsignal.windows.blackmanzsignal.windows.cosinezsignal.windows.exponential)
zsignal.windows.gaussianzsignal.windows.general_cosinezsignal.windows.general_hammingzsignal.windows.hammingzsignal.windows.hannzsignal.windows.kaiserzsignal.windows.nuttallr"   	to_sparseunique)r<  r(  r)  rm  r9  r:  r;  )r  rm  r  r  r   c                 .    U R                   U4-   U l         g r  r  r  r  s     r  r  +mps_ops_grad_modifier.<locals>.addDecorator      MMQD0BMr  r  )
r  r  r  r   r   r  r  r  r  r  )r   XFAILLIST_GRADSKIPLIST_GRADr  r  r  r  s          r  mps_ops_grad_modifierr    s!   ?
u}}=?
 5==%--8?
 &t	?

 %d?
 ?
 )$?
 !5==%--"@?
 emmU]];?
 T?
 u}}emm<?
 t?
 t?
 d?
 t?
  5==/!?
" EMM?#?
. emm_/?
2 EMM5==93?
4 5==%--85?
6 u}}emm47?
8 %--79?
> D??
B C?
F U]]EMM:G?
J EMM5==9K?
N %--7O?
R 6S?
T emmU]]3U?
X U]]EMM2Y?
\ emmU]]3]?
^ &_?
` &a?
b $emm_c?
d )5==/e?
f )..3mm_/4}}o',}}o$)MM?&+mm_',}}oMM5==1}?
D 16%*]]O%*]]O%*]]O/4}}o/4}}o/4}}o	
 #'%*]]O
	1V 	1 	1 	1 B''B000C$ !9!9.BUV
 #RhmmMDV!WX&  009I9N & 
r  c                     1 SknS[         S[        SS 4S jnU  HC  nUR                  UR                  -   nXA;   d  M#  U" U[        [        R
                  5      5        ME     U $ )N>	   amaxaminaminmax__rmod__r  r   	clamp_max	clamp_minr   r  r  r   c                 .    U R                   U4-   U l         g r  r  r  s     r  r  3mps_ops_error_inputs_modifier.<locals>.addDecorator  r  r  )r   r   r  r  r  r  )r   	XFAILLISTr  r  r  s        r  mps_ops_error_inputs_modifierr    se    
		1V 	1 	1 	1 B''B000CRh.F.F!GH 
 
r  c                     U $ r   )r   r	   r
   r   s       r  r  r    s	     
r  )mpsNF)r  collections.abcr   r  common_utilsr   opinfo.corer   r   backendsr  is_availablestrlistr0   r  r  r  r  r  r  <module>r     s    $  ' - 	>>""$$ !,0	FfFF cT)F 	F
 
&	FPk8F#3 k8H kZ8F+; @P : !,0	f cT) 	
 
&	r  