Ë
    ÌÓ^jØŒ  ã                   ó6  — d dl Z d dlmZ d dlZddlmZ ddlmZmZ ej                  j                  j                  «       r;	 	 	 ddee   dedee   dz  d	ed
ee   f
d„Zdee   d
ee   fd„Zdee   d
ee   fd„Zy	 	 	 ddee   dedee   dz  d	ed
ee   f
d„Zy)é    N)ÚSequenceé   )ÚMACOS_VERSION)ÚDecorateInfoÚOpInfoÚopsÚdevice_typeÚxfail_exclusionÚsparseÚreturnc                 óÒ   ‡— |€g }h d£}dt         j                  gi}i dd “dd “dd “dd “dd “dd “d	d “d
d “dd “dd “dd “dd “dd “dd “dd “dd “dd “i dt         j                  g“dt         j                  g“dt         j                  g“dd “dd “dd “dt         j                  t         j                  t         j
                  t         j                  t         j                  g“dt         j                  g“dd “dt         j                  g“dt         j                  t         j                  t         j                  t         j                  t         j
                  g“dd “d t         j                  t         j
                  t         j                  t         j                  t         j                  g“d!t         j                  t         j
                  t         j                  t         j                  t         j                  g“d"t         j                  t         j
                  t         j                  t         j                  g“d#t         j                  t         j                  t         j                  t         j                  t         j
                  g“d$d “¥i d%d “d&t         j
                  t         j                  t         j                  t         j                  t         j                  g“d't         j                  t         j                  t         j                  t         j                  t         j
                  g“d(d “d)t         j                  t         j
                  t         j                  t         j                  t         j                  t         j                  g“d*t         j                  t         j
                  t         j                  t         j                  t         j                  t         j                  g“d+d “d,d “d-t         j                  g“d.d “d/t         j                  t         j                  t         j
                  t         j                  t         j                  g“d0t         j                  t         j
                  t         j                  t         j                  t         j                  g“d1t         j                  t         j                  t         j                  t         j                  t         j
                  t         j                  g“d2t         j                  g“d3t         j                  g“d4t         j                  t         j
                  t         j                  t         j                  t         j                  t         j                  g“d5t         j                  t         j
                  t         j                  t         j                  t         j                  t         j                  g“¥i d6t         j                  t         j
                  t         j                  t         j                  t         j                  t         j                  g“d7t         j                  t         j
                  t         j                  t         j                  t         j                  t         j                  g“d8t         j                  t         j
                  t         j                  t         j                  t         j                  t         j                  g“d9t         j                  t         j
                  t         j                  t         j                  t         j                  t         j                  g“d:t         j
                  t         j                  t         j                  t         j                  t         j                  g“d;d “d<t         j                  t         j                  t         j
                  t         j                  t         j                  g“d=t         j                  t         j                  t         j
                  t         j                  g“d>t         j                  t         j
                  t         j                  t         j                  t         j                  t         j                  g“d?t         j                  g“d@d “dAt         j                  g“dBd “dCt         j                  t         j
                  t         j                  t         j                  g“dDt         j
                  t         j                  t         j                  t         j                  t         j                  g“dEd “dFd “¥i dGt         j                  t         j                  t         j                  t         j
                  t         j                  g“dHt         j                  g“dId “dJd “dKd “dLd “dMd “dNd “dOd “dPd “dQd “dRd “dSd “dTd “dUd “dVd “dWd “¥i dXd “dYt         j                  t         j                  g“dZd “d[d “d\d “d]d “d^d “d_t         j                  g“d`t         j                  g“dad “dbd “dct         j                  t         j                  t         j
                  t         j                  t         j                  t         j                  g“ddd “ded “dfd “dgd “dhd “¥t         j                  gt         j                  gt         j                  gt         j                  gt         j                  t         j                  gt         j                  t         j                  t         j                  gt         j                  t         j
                  t         j                  t         j                  t         j                  gt         j                  t         j
                  t         j                  t         j                  t         j                  gt         j                  t         j
                  t         j                  t         j                  t         j                  gdiœ	¥}d d d d d djœ}|r|j                  |«       t         j                  gt         j                  gt         j                  gt         j                  gt         j                  gt         j                  t         j                  t         j                  gt         j                  t         j                  t         j
                  t         j                  gt         j                  t         j                  t         j                  gt         j                  t         j                  t         j                  gt         j                  t         j                  t         j
                  t         j                  t         j                  t         j                  gd t         j                  t         j                  t         j                  gdkœ}d t         j                  gt         j                  t         j                  t         j                  t         j                  t         j                  gt         j                  t         j                  t         j                  t         j                  t         j                  gdlœ}	d d d d d d dmœ}
d t         j                  t         j                  gdnœ}dot        dpt        dqd fˆfdr„}| D �]¥  }|j                  |j                  z   } ||t        t         j"                  t         j$                  t         j&                  g¬s«      «       |r6 ||t        t!        j(                  dt«      t         j*                  g¬s«      «       ||
v r* ||t        t!        j(                  du«      |
|   ¬s«      «       ||v r* ||t        t!        j(                  dv«      ||   ¬s«      «       |||	fD ]1  }||v sŒ||vsŒ ||t        t         j"                  ||   ¬s«      «       Œ3 ||v r2||vr.t,        dwk  r% ||t        t         j"                  ||   ¬s«      «       ||vs�Œf ||t        t         j"                  t         j.                  t         j                  g¬s«      «       �Œ¨ | S )xN>7  úfft.fftúfft.fft2úfft.fftnúfft.hfftúfft.ifftú	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ú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.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únn.functional.padreplicateúnn.functional.pixel_shuffleúspecial.spherical_bessel_j0únn.functional.pixel_unshuffleúnn.functional.softminwith_dtypeú!nn.functional.triplet_margin_lossú/nn.functional.triplet_margin_with_distance_lossú0nn.functional.feature_alpha_dropoutwithout_trainÚ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ÚuniformÚ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Ú	rand_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Ú
randn_likeÚ
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Únormalin_placeÚ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.hfft2úspecial.zetaúnn.functional.conv1dúnn.functional.conv2dúnn.functional.linearúlinalg.householder_productúnn.functional.conv_transpose1dúnn.functional.conv_transpose2dúnn.functional.conv_transpose3dúnn.functional.pairwise_distancer;  ÚlogspaceÚlogspacetensor_overloadú
linalg.eigúlinalg.eigvalsÚputÚfrexpÚgeqrfÚhash_tensorÚ	heavisidez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.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_reduceprodÚ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.ndtrir~   Úsvd_lowrankÚsymeigÚtakeÚtoÚ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_pool2d)	r=  r>  únn.functional.conv3drA  rB  rC  r?  ÚmatÚbincount)rE  rF  rG  rH  rI  )Úpca_lowrankr  ÚrandintÚrandint_likeúnn.functional.dropoutz*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!  )rj  znn.functional.grid_sampleÚopÚdr   c                 óB   •— ‰�‰|_         | j                  |fz   | _        y ©N)r	   Ú
decorators)r}  r~  r	   s     €úm/var/www/ramen.bs-engineer-server.com/venv/lib/python3.12/site-packages/torch/testing/_internal/common_mps.pyÚaddDecoratorz&mps_ops_modifier.<locals>.addDecorator  s"   ø€ ØÐ&Ø +�”àŸM™M¨Q¨DÑ0ˆB�Mó    ©Údtypesz4Skipped due to MPS not supporting complex128 tensorszSkipping empty ops.zSkipped!gÍÌÌÌÌÌ,@)ÚtorchÚ	complex64Úfloat32Úint8Úint16Úint32Úint64Úuint8ra   Úfloat16rÕ   Úupdater   r   ÚnameÚvariant_test_nameÚunittestÚexpectedFailurerg  rf  ÚskipÚ
complex128r   Ú	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òz!
Ðð|	 œ%Ÿ/™/Ð*ð'
Ð#ðu;
à˜ðu;
ð & tðu;
ð ˜$ð	u;
ð
 ˜dðu;
ð �4ðu;
ð �Tðu;
ð �Tðu;
ð ˜4ðu;
ð ˜ðu;
ð ˜4ðu;
ð ˜4ðu;
ð ˜tðu;
ð   ðu;
ð  # Dð!u;
ð"  ð#u;
ð$ ˜Dð%u;
ð& (¨ñ'u;
ð( !¤5§=¡= /ð)u;
ð* œEŸM™M˜?ð+u;
ð, .´·±¨ð-u;
ð. ˜dð/u;
ð0 ˜Tð1u;
ð2 ˜$ð3u;
ð4 /Ü—
‘
Ü—‘Ü—‘Ü—‘Ü—‘ð1ð5u;
ðB ”u—z‘z�lðCu;
ðD �DðEu;
ðF œ%Ÿ*™*˜ðGu;
ðH  Ü—‘Ü—
‘
Ü—
‘
Ü—‘Ü—‘ð"ðIu;
ðV �tðWu;
ðX 'Ü—‘Ü—‘Ü—‘Ü—
‘
Ü—
‘
ð)ðYu;
ðf 'Ü—‘Ü—‘Ü—‘Ü—
‘
Ü—
‘
ð)ðgu;
ðt 'Ü—‘Ü—‘Ü—‘Ü—
‘
ð	)ðuu;
ð@ 'Ü—‘Ü—
‘
Ü—
‘
Ü—‘Ü—‘ð)ðAu;
ðN 2°4òOu;
ðP 2°4ðQu;
ðR  Ü—‘Ü—‘Ü—
‘
Ü—
‘
Ü—‘ð"ðSu;
ð` 'Ü—‘Ü—
‘
Ü—
‘
Ü—‘Ü—‘ð)ðau;
ðn 0°ðou;
ðp 0Ü—‘Ü—‘Ü—‘Ü—‘Ü—
‘
Ü—
‘
ð2ðqu;
ð@ 0Ü—‘Ü—‘Ü—‘Ü—‘Ü—
‘
Ü—
‘
ð2ðAu;
ðP 0°ðQu;
ðR ,¨TðSu;
ðT /´·±°ðUu;
ðV % dðWu;
ðX 0Ü—
‘
Ü—‘Ü—‘Ü—‘Ü—
‘
ð2ðYu;
ðf 'Ü—‘Ü—‘Ü—‘Ü—
‘
Ü—
‘
ð)ðgu;
ðt 'Ü—‘Ü—
‘
Ü—
‘
Ü—‘Ü—‘Ü—‘ð)ðuu;
ðD '¬¯©¨ðEu;
ðF '¬¯©¨ðGu;
ðH )Ü—‘Ü—‘Ü—‘Ü—‘Ü—
‘
Ü—
‘
ð+ðIu;
ðX -Ü—‘Ü—‘Ü—‘Ü—‘Ü—
‘
Ü—
‘
ð/òYu;
ðh )Ü—‘Ü—‘Ü—‘Ü—‘Ü—
‘
Ü—
‘
ð+ðiu;
ðx -Ü—‘Ü—‘Ü—‘Ü—‘Ü—
‘
Ü—
‘
ð/ðyu;
ðH )Ü—‘Ü—‘Ü—‘Ü—‘Ü—
‘
Ü—
‘
ð+ðIu;
ðX -Ü—‘Ü—‘Ü—‘Ü—‘Ü—
‘
Ü—
‘
ð/ðYu;
ðh !Ü—‘Ü—‘Ü—
‘
Ü—
‘
Ü—‘ð#ðiu;
ðv .¨tðwu;
ðx 3Ü—
‘
Ü—‘Ü—‘Ü—‘Ü—‘ð5ðyu;
ðF 8Ü—
‘
Ü—‘Ü—‘Ü—‘ð	:ðGu;
ðR %Ü—‘Ü—‘Ü—‘Ü—‘Ü—
‘
Ü—
‘
ð'ðSu;
ðb 2´E·J±J°<ðcu;
ðd " 4ðeu;
ðf !¤5§:¡: ,ðgu;
ðh " 4ðiu;
ðj !Ü—‘Ü—‘Ü—‘Ü—
‘
ð	#ðku;
ðv %Ü—‘Ü—‘Ü—
‘
Ü—
‘
Ü—‘ð'ðwu;
ðD ! $ðEu;
ðF �TòGu;
ðH Ü—‘Ü—
‘
Ü—‘Ü—‘Ü—‘ð ðIu;
ð^ !¤5§;¡; -ð_u;
ð` ˜dðau;
ðb ˜tðcu;
ðd ˜dðeu;
ðf % dðgu;
ðh & tðiu;
ðj & tðku;
ðl % dðmu;
ðn % dðou;
ðp ˜ðqu;
ðr # Dðsu;
ðt ˜tðuu;
ðv ˜tðwu;
ðx ,¨Tðyu;
ðz ,¨Tð{u;
ð|  ò}u;
ð~ ˜Tðu;
ð@ ”U—]‘]¤E§N¡NÐ3ðAu;
ðB ˜4ðCu;
ðD �dðEu;
ðF �DðGu;
ðH �$ðIu;
ðJ ˜tðKu;
ðL &¬¯© }ðMu;
ðN %¤u§{¡{ mðOu;
ðP �tðQu;
ðR �dðSu;
ðT $Ü—‘Ü—
‘
Ü—‘Ü—‘Ü—‘Ü—‘ð&ðUu;
ðd ˜4ðeu;
ðf *¨4ðgu;
ðh # Dðiu;
ðl 0°ðmu;
ðn 0°ñou;
ôr &+§[¡[ MÜ%*§[¡[ MÜ%*§[¡[ MÜ/4¯{©{¨mÜ/4¯{©{¼E¿N¹NÐ.Kä—‘Ü—‘Ü—‘ð/ô —‘Ü—‘Ü—‘Ü—‘Ü—
‘
ð%ô —K‘K¤§¡¬e¯k©k¼5¿;¹;ÌÏ
É
ÐSô —‘Ü—‘Ü—‘Ü—‘Ü—
‘
ðò]	u;
Ððn	 Ø'+ØØ"ØñB
Ð&ñ Ø#×*Ñ*Ð+IÔJô "ŸM™M˜?ô #Ÿ_™_Ð-ô Ÿ
™
�|Ü"ŸZ™Z˜Lô ',§o¡oÐ%6ô —‘Ü—‘Ü—‘ð;ô Ÿ™¤U§[¡[´%·+±+¼u¿{¹{ÐKÜŸ™¤u§}¡}´e·n±nÐEÜ Ÿ=™=¬%¯-©-¼¿¹ÐHô —
‘
Ü—‘Ü—‘Ü—‘Ü—‘Ü—
‘
ðð (,ô —‘Ü—‘Ü—‘ð;ñi97
Ðð| #'ä—{‘{�mô —‘Ü—
‘
Ü—‘Ü—
‘
Ü—‘ðô —
‘
Ü—‘Ü—
‘
Ü—‘Ü—‘ðñ3 4
ÐðL Ø!%Ø!ð ØØ"ñ
Ðð$ %)ô +0¯-©-¼¿¹Ð)Hñ
ˆð	1œVð 	1¬ð 	1¸õ 	1ð ó F	ˆBØ—'‘'˜B×0Ñ0Ñ0ˆCÙØÜÜ×,Ñ,äŸ™ÜŸ™ðôô	ñ ñ ØÜ Ü Ÿ™ØRóô "×,Ñ,ð ô	ô
ð Ð(Ñ(ÙØÜ Ü Ÿ™Ð&;Ó<Ø1°#Ñ6ôôð �h‰ÙØœ¤X§]¡]°:Ó%>ÀxÐPSÁ}ÔUôð (Ø#Ø ðò 	�	ð
 ˜)Ò#¨°?Ò(BÙ ØÜ$¤X×%=Ñ%=ÀiÐPSÁnÔUõð	ð Ð2Ñ2Ø˜Ñ.Ü" TÒ)áØÜ Ü ×0Ñ0Ø:¸3Ñ?ôôð Ð/Ó/ÙØÜ Ü ×0Ñ0Ü %§¡´·±ÐAôöðAF	ðP ˆ
r„  c           
      ó’	  — i dt         j                  t         j                  g“dt         j                  t         j                  g“dd “dd “dt         j                  g“dd “dt         j                  t         j                  g“dt         j                  t         j                  g“d	t         j                  t         j                  g“d
d “dd “dt         j                  g“dt         j                  g“dt         j                  g“dt         j                  t         j                  g“dt         j                  t         j                  g“dt         j                  t         j                  g“i dt         j                  t         j                  g“dt         j                  t         j                  g“dt         j                  g“dd “dt         j                  t         j                  g“dt         j                  t         j                  g“dt         j                  t         j                  g“dt         j                  t         j                  g“dt         j                  t         j                  g“dt         j                  t         j                  g“dt         j                  t         j                  g“dt         j                  g“dt         j                  g“dt         j                  g“d t         j                  g“d!t         j                  g“d"t         j                  g“¥t         j                  gt         j                  gt         j                  gt         j                  gt         j                  gt         j                  t         j                  gd d d#œ¥}t         j                  gt         j                  gt         j                  gt         j                  gt         j                  gt         j                  gt         j                  gt         j                  gd$œ}d t         j                  gd%œ}d&t        d't        d(d fd)„}| D ]—  }|j
                  |j                  z   }||v r% ||t	        t        j                  ||   ¬*«      «       ||v r% ||t	        t        j                  ||   ¬*«      «       ||v sŒs ||t	        t        j                  ||   ¬*«      «       Œ™ | S )+NÚ_segment_reducerï   rd  re  r^  r@  Úunique_consecutiver  zmasked.scatterÚigammaÚigammacz
special.i1zspecial.i1eÚmsortrp  znn.functional.dropout2dznn.functional.dropout3dznn.functional.alpha_dropoutz-nn.functional.feature_alpha_dropoutwith_trainrm  r<  Úfloor_divideÚhistogramddÚ	histogramrÓ   r�   ro   rš   zsignal.windows.bartlettzsignal.windows.blackmanzsignal.windows.cosinezsignal.windows.exponentialzsignal.windows.gaussianzsignal.windows.general_cosine)zsignal.windows.general_hammingzsignal.windows.hammingzsignal.windows.hannzsignal.windows.kaiserzsignal.windows.nuttallrS   Ú	to_sparseÚunique)ÚtopkrD  r=  r>  rj  rA  rB  rC  )rv  rj  r}  r~  r   c                 ó.   — | j                   |fz   | _         y r€  ©r�  ©r}  r~  s     r‚  rƒ  z+mps_ops_grad_modifier.<locals>.addDecoratorÂ  ó   € ØŸM™M¨Q¨DÑ0ˆB�Mr„  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}  € ðI
à¤§¡¬u¯}©}Ð=ðI
ð œ5Ÿ=™=¬%¯-©-Ð8ðI
ð & tð	I
ð
 % dðI
ð ¤§¡˜ðI
ð )¨$ðI
ð !¤5§=¡=´%·-±-Ð"@ðI
ð œeŸm™m¬U¯]©]Ð;ðI
ð œuŸ}™}¬e¯m©mÐ<ðI
ð �dðI
ð �tðI
ð œ5Ÿ=™=˜/ðI
ð œEŸM™M˜?ðI
ð( ”e—m‘m�_ð)I
ð: $¤e§m¡m´U·]±]Ð%Cð;I
ð< &¬¯©´u·}±}Ð'Eð=I
ð> &¬¯©´u·}±}Ð'Eñ?I
ð@ *¬E¯M©M¼5¿=¹=Ð+IðAI
ðB <Ü—‘Ü—‘ð>ðCI
ðP œEŸM™M˜?ðQI
ðV ˜DðWI
ðZ œUŸ]™]¬E¯M©MÐ:ð[I
ð^ œEŸM™M¬5¯=©=Ð9ð_I
ðb œ%Ÿ-™-¬¯©Ð7ðcI
ðf œŸ™¬¯©Ð6ðgI
ðh ”e—m‘m¤U§]¡]Ð3ðiI
ðl ”U—]‘]¤E§M¡MÐ2ðmI
ðp ”e—m‘m¤U§]¡]Ð3ðqI
ðr &¬¯© ðsI
ðt &¬¯© ðuI
ðv $¤e§m¡m _ðwI
ðx )¬5¯=©=¨/ðyI
ðz &¬¯© ð{I
ð| ,¬e¯m©m¨_ñ}I
ô~ 05¯}©}¨oÜ',§}¡} oÜ$)§M¡M ?Ü&+§m¡m _Ü',§}¡} oÜ—M‘M¤5§=¡=Ð1ààòQI
ˆô^ —]‘]�OÜ05·±¨ä%*§]¡] OÜ%*§]¡] OÜ%*§]¡] OÜ/4¯}©}¨oÜ/4¯}©}¨oÜ/4¯}©}¨oñ
ˆð$ #'ä%*§]¡] Oñ
Ðð	1œVð 	1¬ð 	1¸ó 	1ð ò 	ˆBØ—'‘'˜B×0Ñ0Ñ0ˆCØ�nÑ$ÙØÜ ¤×!9Ñ!9À.ÐQTÑBUÔVôð
 �mÑ#Ù˜R¤¬h¯m©mÀMÐRUÑDVÔ!WÔXàÐ&Ò&ÙØÜ Ü ×0Ñ0Ð9IÈ#Ñ9Nôõð	ð& ˆ
r„  c                 ó¼   — h d£}dt         dt        dd fd„}| D ]@  }|j                  |j                  z   }||v sŒ! ||t        t        j
                  «      «       ŒB | S )N>	   ÚamaxÚaminÚaminmaxÚ__rmod__rq  rÒ   Ú	clamp_maxÚ	clamp_minr"  r}  r~  r   c                 ó.   — | j                   |fz   | _         y r€  r°  r±  s     r‚  rƒ  z3mps_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¿  Ú  sn   € ò
ˆ	ð	1œVð 	1¬ð 	1¸ó 	1ð ò 	IˆBØ—'‘'˜B×0Ñ0Ñ0ˆCØ�iÒÙ˜R¤¬h×.FÑ.FÓ!GÕHð	Ið
 ˆ
r„  c                 ó   — | S 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Úlistra   r¢  rµ  r¿  rÁ  r„  r‚  ú<module>rÊ     s  ðÛ Ý $ã å 'ß -ð 	‡>�>×Ñ×"Ñ"Ô$ð !Ø,0Øñ	QØ�fÑðQàðQð ˜c™ TÑ)ðQð ð	Qð
 
�&Ñ	óQðfy 8¨FÑ#3ð y¸ÀÑ8Hó yðv¨8°FÑ+;ð ÀÈÑ@Pô ð: !Ø,0Øñ	Ø�fÑðàðð ˜c™ TÑ)ðð ð	ð
 
�&Ñ	ôr„  