Ë
    Z^(h³i  ã                  ó  — U d dl mZ d dlZd dlZd dlZd dlmZ d dlmc m	Z	 d dl
mZ d dlmZmZmZmZmZmZmZmZmZmZmZ d dlmZ erd dlmZ  ej8                  «       Zded	<   	 	 	 	 d/d„Z e d«      Z!d0d„Z"	 	 	 	 d1d„Z# e d«      Z$ e d«      Z%d2d„Z&d2d„Z' e d«      Z( e d«      Z)d3d„Z*dZ+ ejX                  e+«      Z-ded<   d4d„Z.	 	 	 	 	 	 	 	 d5d„Z/d6d„Z0d6d„Z1ejd                  dejf                  dejh                  d ejj                  dejl                  dejn                  dejp                  d
iZ9	 	 	 	 d7d!„Z:d8d"„Z;d9d#„Z<d9d$„Z=	 	 	 	 	 	 d9d%„Z>	 	 	 	 	 	 d:d&„Z?	 	 	 	 	 	 d9d'„Z@ e d(«      ZAd;d)„ZBd<d*„ZC G d+„ d,«      ZD G d-„ d.«      ZEy)=é    )ÚannotationsN)ÚTYPE_CHECKING)Únative_function_manager)ÚArgumentÚBackendIndexÚBaseTyÚBaseTypeÚFunctionSchemaÚNativeFunctionsGroupÚNativeFunctionsViewGroupÚOptionalTypeÚSelfArgumentÚTensorOptionsArgumentsÚType)Úconfig)ÚSequencezlogging.LoggerÚloggerÚboolc                óT   — | D ]#  }t        |dd «      }|sŒt        |dd«      }|sŒ# y y)NÚ
annotationÚ	alias_set© TF)Úgetattr)Ú	argumentsÚargr   r   s       ú_/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/torchgen/static_runtime/generator.pyÚ	has_aliasr   !   s@   € ð ò ˆÜ˜S ,°Ó5ˆ
ÙØÜ˜J¨°RÓ8ˆ	ÚÙðð ó    )¹Úsparse_sampled_addmmÚhspmmÚlinalg_svdvalsÚsspaddmmÚcoalesceÚ_indicesÚindicesÚ_valuesÚvaluesÚcrow_indicesÚcol_indicesÚfloor_divideÚgerÚconj_physicalÚbinary_cross_entropyÚarccoshÚcholeskyÚlu_solveÚlinalg_choleskyÚlinalg_householder_productÚlinalg_ldl_solveÚ_compute_linear_combinationÚ
_make_dualÚ
_fw_primalÚ_index_reduceÚ!_new_zeros_with_same_feature_metaÚ_conj_physicalÚ binary_cross_entropy_with_logitsÚbincountÚconv_tbcÚcopyÚ
_copy_fromÚ_copy_from_and_resizeÚcount_nonzeroÚcudnn_affine_grid_generatorÚ$cudnn_affine_grid_generator_backwardÚcudnn_grid_samplerÚ
diag_embedÚ	embeddingÚembedding_dense_backwardÚ_embedding_bag_dense_backwardÚ*_embedding_bag_per_sample_weights_backwardÚgrid_sampler_2dÚ_grid_sampler_2d_cpu_fallbackÚgrid_sampler_3dÚisnanÚmkldnn_linearÚmedianÚ	nanmedianÚ_sparse_sparse_matmulÚbatch_norm_backward_elemtÚ_euclidean_distÚpixel_shuffleÚpixel_unshuffleÚchannel_shuffleÚ_reshape_nested_backwardÚreluÚpreluÚceluÚslice_scatterÚselect_scatterÚdiagonal_scatterÚsumÚ_mkldnn_transposeÚ_nested_tensor_from_maskÚ_nested_from_paddedÚ_nested_tensor_sizeÚ&_nested_from_padded_and_nested_exampleÚ_standard_gamma_gradÚ_dirichlet_gradÚnative_normÚ_sparse_softmaxÚ_sparse_softmax_backward_dataÚ_sparse_log_softmaxÚ!_sparse_log_softmax_backward_dataÚzeroÚ_sparse_addmmÚsparse_maskÚ_sparse_mask_projectionÚ	_to_denseÚ	_coalesceÚ
_coalescedÚcopy_sparse_to_sparseÚ	to_sparseÚto_sparse_csrÚto_sparse_cscÚ	to_mkldnnÚquantize_per_tensor_dynamicÚquantize_per_channelÚq_per_channel_scalesÚq_per_channel_zero_pointsÚint_reprÚ"_make_per_channel_quantized_tensorÚsetÚliftÚ
lift_freshÚlift_fresh_copyÚmasked_scatterÚ_masked_softmaxÚ_masked_softmax_backwardÚputÚindex_reduceÚtraceÚ_cholesky_solve_helperÚdistÚmaxÚ_torch_cuda_cu_linker_symbol_opÚglu_jvpÚglu_backward_jvpÚhardswish_backwardÚrrelu_with_noise_backwardÚ#mkldnn_adaptive_avg_pool2d_backwardÚ_adaptive_avg_pool2d_backwardÚ_adaptive_avg_pool3d_backwardÚisinfÚlinalg_lu_solveÚlinalg_vecdotÚlinalg_matrix_expÚlinalg_eigvalshÚ_test_warn_in_autogradÚ%_test_autograd_multiple_dispatch_viewÚ*_test_autograd_multiple_dispatch_view_copyÚ_segment_reduceÚ_segment_reduce_backwardÚ_fw_primal_copyÚ_make_dual_copyÚview_as_real_copyÚview_as_complex_copyÚ
_conj_copyÚ_neg_view_copyÚdiagonal_copyÚdetach_copyÚsqueeze_copyÚt_copyÚunsqueeze_copyÚ_indices_copyÚ_values_copyÚindices_copyÚvalues_copyÚcrow_indices_copyÚcol_indices_copyÚccol_indicesÚccol_indices_copyÚrow_indicesÚrow_indices_copyÚunfold_copyÚ
alias_copyÚ_triton_multi_head_attentionÚspecial_airy_aiÚspecial_bessel_j0Úspecial_bessel_j1Úspecial_bessel_y0Úspecial_bessel_y1Úspecial_chebyshev_polynomial_tÚspecial_chebyshev_polynomial_uÚspecial_chebyshev_polynomial_vÚspecial_chebyshev_polynomial_wÚspecial_hermite_polynomial_hÚspecial_hermite_polynomial_heÚspecial_laguerre_polynomial_lÚspecial_legendre_polynomial_pÚspecial_modified_bessel_i0Úspecial_modified_bessel_i1Úspecial_modified_bessel_k0Úspecial_modified_bessel_k1Ú!special_scaled_modified_bessel_k0Ú!special_scaled_modified_bessel_k1Ú&special_shifted_chebyshev_polynomial_tÚ&special_shifted_chebyshev_polynomial_uÚ&special_shifted_chebyshev_polynomial_vÚ&special_shifted_chebyshev_polynomial_wÚspecial_spherical_bessel_j0Ú_foobarÚ_nested_tensor_stridesÚ_nested_tensor_storage_offsetsÚ_nested_get_valuesÚ_nested_get_values_copyÚ_nested_view_from_jaggedÚ_nested_view_from_jagged_copyÚ_nested_view_from_bufferÚ_nested_view_from_buffer_copyÚ_int_mmÚ_to_sparse_cscÚ_to_sparse_csrÚsegment_reducec                ó‚  — d}d }t        | t        «      r-| j                  j                  }| j                  j                  }nJ| j
                  j                  j                  j                  j                  }| j
                  j                  }t        j                  | «      rt        j                  d|«       y|t        v rt        j                  d|«       y|j                  «       D ]1  }t        |j                  «      }|rŒt        j                  d|«        y t        | t        «      rSdt!        j"                  |j$                  d¬«      j'                  «       k7  r t        j                  dt)        |«      «       yy	| j*                  j                  j                  «       D ]E  }t        |j                  «      }|rŒt        j                  d| j*                  j                  «        y | j,                  sKt/        | d
«      r>t)        |«      j1                  d«      r$t)        |j                  «      j1                  d«      sydt!        j"                  |j$                  d¬«      j'                  «       k7  rt        j                  d|«       yt3        |j4                  j6                  «      rt        j                  d|«       yy	)NÚ zHAND WRITTEN: %sFzBLOCKED: %sz!NOT SUPPORTED TYPE CONVERTING: %sz
at::Tensor)ÚsymintzNON-TENSOR RET TYPE: %sTÚoutzTensor(a!) out) -> Tensor(a!)z.outzat::Tensor &zNON_TENSOR RET TYPE: %szINPUTS ALIAS: %s)Ú
isinstancer   ÚviewÚ	root_nameÚfuncrÛ   ÚnameÚbaser   Úis_hand_writtenr   ÚinfoÚBLOCKED_OPSÚschema_order_argumentsÚivalue_type_conversion_methodÚtypeÚcppÚreturns_typeÚreturnsÚcpp_typeÚstrÚ
functionalÚ
structuredÚhasattrÚendswithr   r   Únon_out)ÚgÚbase_op_namerß   r   Úmaybe_methods        r   Úis_supportedrõ   ö   s  € Ø€LØ€DÜ�!Ô-Ô.Ø—v‘v×'Ñ'ˆØ�v‰v�{‰{‰à—u‘u—z‘z—‘×+Ñ+×0Ñ0ˆØ�u‰u�z‰zˆÜ×Ñ˜aÔ Ü�‰Ð&¨Ô5ØØ”{Ñ"Ü�‰�M <Ô0ØØ×*Ñ*Ó,ò ˆÜ4°S·X±XÓ>ˆÚä�K‰KÐ;¸TÔBÙðô �!Ô-Ô.ð œ3×+Ñ+¨D¯L©LÀÔG×PÑPÓRÒRä�K‰KÐ1´3°t³9Ô=ØØð �|‰|× Ñ ×7Ñ7Ó9ò ˆÜ4°S·X±XÓ>ˆÚä�K‰KÐ;¸Q¿\¹\×=NÑ=NÔOÙðð �<Š<ô
 ˜˜5Ô!Ü�t“9×%Ñ%Ð&EÔFÜ�t—y‘y“>×*Ñ*¨6Ô2ààœ×)Ñ)¨$¯,©,¸uÔE×NÑNÓPÒPÜ�‰Ð-¨tÔ4ØÜ�—‘×'Ñ'Ô(ä�‰Ð&¨Ô5ØØr   c                óÒ  — t         j                  dt         j                  dt         j                  dt         j                  dt         j
                  dt         j                  di}d}t        | t        «      r| j                  }nCt        | t        «      r2t        | j                  t        «      sy| j                  j                  }ny||vry||   }t        | t        «      r|d   S |d	   S )
aD  
    Return the method call expression of `c10::ivalue' to convert its contained value to
    the expected value of `arg_type` type. For example, for `arg_type` == BaseTy.Tensor,
    this function returns ".toTensor()", so that it can be appended to the ivalue's
    variable name to get the value of the expected type.
    ))Tz
toTensor())FztoOptional<at::Tensor>()))FztoInt())FztoOptional<int64_t>()))FztoBool())FztoOptional<bool>()))Fz
toScalar())FztoOptional<at::Scalar>()))FztoScalarType())FztoOptional<at::ScalarType>()))FztoStringView())FztoOptional<c10::string_view>()Nr   é   )r   ÚTensorÚintr   ÚScalarÚ
ScalarTyperì   rÜ   r	   rà   r   Úelem)Úarg_typeÚtype_conversion_methodsÚbase_ty_objectÚmethodss       r   ræ   ræ   2  sË   € ô 	�‰ÐRÜ�
‰
ÐJÜ�‰ÐIÜ�‰ÐSÜ×Ñð 
ô 	�
‰
ð 
ðÐð €NÜ�(œHÔ%Ø!Ÿ™‰Ü	�HœlÔ	+Ü˜(Ÿ-™-¬Ô2àØ!Ÿ™×+Ñ+‰ààÐ4Ñ4ØØ% nÑ5€GÜ�(œHÔ%Ø�q‰zÐØ�1‰:Ðr   )Úbitwise_notÚbitwise_andÚ
bitwise_orÚbitwise_xorÚbitwise_left_shiftÚbitwise_right_shiftÚgcdÚlcmÚscatterÚgatherÚ _convert_indices_from_coo_to_csrÚ _convert_indices_from_csr_to_coo)Úview_as_realÚimagÚ_conjrì   c                ó   — | t         v S ©N)Úshould_use_int_tensor_ops_©Úop_names    r   Úshould_use_int_tensorr  p  s   € ØÔ0Ð0Ð0r   c                ó   — | t         v S r  )Úshould_use_complex_tensor_ops_r  s    r   Úshould_use_complex_tensorr  t  s   € ØÔ4Ð4Ð4r   )	ÚaddmvÚ	index_addr  r  Únll_loss_backwardÚdotÚvdotÚouterr+   )ÚaddmmÚmmÚnuclear_normÚdiagÚ_addmm_activationÚmatrix_HÚtrù   c                ó(   — | t         v ry| t        v ryy)Nr÷   é   é   )Útest_tensor_dim_ops_1_Útest_tensor_dim_ops_2_r  s    r   Útest_tensor_dimr+  Š  s   € ØÔ(Ñ(ØØÔ(Ñ(ØØr   z{"view_as_complex": "{2, 2}"}zdict[str, str]Útest_tensor_shape_jsonc                ó&   — | t         v r	t         |    S y)NrÙ   )r,  r  s    r   Útest_tensor_shaper.  –  s   € ØÔ(Ñ(Ü% gÑ.Ð.àr   c                óä  — t        |«      }|dk(  rb|dk(  rdnd}t        |«      }t        j                  |t	        |«      z  «      }||dz  z  }dj                  dj                  |› g|z  «      «      }t        |«      rd|› d	�}nt        |«      rd
|› d�}nd|› d�}t        j                  |t        j                  dt        j                  dt        j                  dt        j                  dt        j                  di}d }	t!        | t"        «      r| j$                  }	nBt!        | t&        «      rt!        | j(                  t"        «      sJ ‚| j(                  j$                  }	|	|v sJ d«       ‚||	   }
|
S )NrÙ   r   é   é@   r'  z{{{}}}ú,zat::randint(1, 100, z, at::kInt)z
at::randn(z, at::kComplexFloat)z	at::rand(ú)Ú1ÚfalseÚ2zat::ScalarType::Floatz"floor"znot expected type)r.  r+  ÚmathÚceilÚfloatÚformatÚjoinr  r  r   rø   rù   r   rú   rû   rì   rÜ   r	   rà   r   rü   )rý   Úindexr  Útensor_size_exÚnum_tensorsÚnum_dimÚsize_per_dimÚtensor_expressionÚvalue_expressionsrÿ   Úvalue_expressions              r   Útest_value_expressionrD  �  sn  € ô ' wÓ/€NØ˜ÒØ! QšJ‘b¨BˆÜ! 'Ó*ˆÜ—y‘y ¬u°W«~Ñ!=Ó>ˆØ˜ qÑ(Ñ(ˆØ!Ÿ™¨¯©°l°^Ð2EÈÑ2OÓ)PÓQˆÜ˜WÔ%Ø2°>Ð2BÀ+ÐNÑÜ	" 7Ô	+Ø(¨Ð(8Ð8LÐMÑà'¨Ð'7°qÐ9Ðô 	�‰Ð(Ü�
‰
�CÜ�‰�WÜ�‰�sÜ×ÑÐ2Ü�
‰
�IðÐð €NÜ�(œHÔ%Ø!Ÿ™‰ä˜(¤LÔ1´jØ�M‰Mœ8ô7
ð 	
ð 
ð "Ÿ™×+Ñ+ˆØÐ.Ñ.ÐCÐ0CÓCÐ.Ø(¨Ñ8ÐØÐr   c                óœ  — | j                  «       rJ ‚| j                  j                  j                  }i }| j                  «       D ](  }t	        |j
                  ||«      }|||j                  <   Œ* t        j                  |||«       g }|j                  «       D ]  \  }}|j                  d|› |› d|› �«       Œ  dj                  |«      dz   S )Nzauto z = ú;
    ú;)Ú	is_out_fnrà   rá   rå   rD  rç   r   Úoverride_test_valuesÚitemsÚappendr;  )	Úschemar<  Úschema_nameÚarg_mapr   Útest_value_expÚarg_populationsÚarg_nameÚ	arg_values	            r   Úgenerate_test_value_definitionsrS  Ä  sÎ   € Ø×ÑÔ!Ð!Ð!Ø—+‘+×"Ñ"×'Ñ'€KØ€GØ×,Ñ,Ó.ò +ˆÜ.¨s¯x©x¸ÀÓLˆØ*ˆ�—‘Òð+ô ×Ñ ¨°eÔ<Ø€OØ&Ÿ}™}›ò HÑˆ�)Ø×Ñ  x j°°°s¸9¸+ÐFÕGðHà�>‰>˜/Ó*¨SÑ0Ð0r   c                óx   ‡— | j                  «       rJ ‚dj                  ˆfd„| j                  «       D «       «      S )Nr2  c              3  ó>   •K  — | ]  }|j                   › ‰› �–— Œ y ­wr  ©rà   )Ú.0r   r<  s     €r   ú	<genexpr>z,generate_test_value_names.<locals>.<genexpr>Ô  s   øè ø€ ÒT¨S�s—x‘x�j  Ô(ÑTùs   ƒ)rH  r;  rå   )rL  r<  s    `r   Úgenerate_test_value_namesrY  Ò  s3   ø€ Ø×ÑÔ!Ð!Ð!Ø�8‰8ÓT°F×4QÑ4QÓ4SÔTÓTÐTr   rø   r9  c                ó\   — dd„}| j                  «       D �cg c]
  } ||«      ‘Œ c}S c c}w )Nc                ó   — | j                   }d}t        |t        «      r|j                  }d}t        |t        «      sJ ‚d }|j
                  t        v rt        |j
                     }|r|r|› d�}d| j
                  z   |fS )NFTú?ú%)rç   rÜ   r   rü   r	   rà   Ú/generate_test_ir_arguments_base_ty_to_type_str_)r   r%  Úadd_optionalÚtype_strs       r   Úir_argumentz/generate_test_ir_arguments.<locals>.ir_argumentå  s{   € Ø�H‰HˆØˆÜ�aœÔ&Ø—‘ˆAØˆLÜ˜!œXÔ&Ð&Ð&ØˆØ�6‰6ÔDÑDÜFÀqÇvÁvÑNˆHÙ™Ø"˜ 1�~ˆHØ�c—h‘h‘ Ð)Ð)r   )r   r   Úreturnztuple[str, str | None])rå   )rL  ra  r   s      r   Úgenerate_test_ir_argumentsrc  â  s+   € ó*ð )/×(EÑ(EÓ(GÖH ‰K˜ÕÒHÐHùÒHs   —)c                ó  — g }t        | j                  «       «      D ]P  \  }}t        |j                  «      }|sJ ‚|\  }}|rdnd}|j	                  d|› d|j
                  › d|› d|› �«       ŒR dj                  |«      dz   S )	Nú&rÙ   z
const autoú z = p_node->Input(z).rF  rG  )Ú	enumeraterå   ræ   rç   rK  rà   r;  )rL  rP  Úir   rô   Úis_referenceÚtype_conversion_methodÚ	references           r   Úgenerate_arg_extractionrl  ö  s™   € Ø€OÜ˜F×9Ñ9Ó;Ó<ò 
‰ˆˆ3Ü4°S·X±XÓ>ˆÙÐˆ|Ø/;Ñ,ˆÐ,Ù'‘C¨Rˆ	Ø×ÑØ˜˜ 1 S§X¡X JÐ.?À¸sÀ"ÐE[ÐD\Ð]õ	
ð
ð �>‰>˜/Ó*¨SÑ0Ð0r   c                ó¾   — |j                  | j                  «      }| j                  s|€)t        j                  | j                  j
                  «      S |j                  S r  )Ú
get_kernelrí   rî   rè   rà   rß   Úkernel©rò   Úbackend_indexro  s      r   Úget_kernel_namerr    sD   € Ø×%Ñ% a§l¡lÓ3€FØ‡|‚|�v�~Ü�x‰x˜Ÿ™×)Ñ)Ó*Ð*Ø�=‰=Ðr   c                ó¾   — |j                  | j                  «      }| j                  s|€)t        j                  | j                  j
                  «      S |j                  S r  )rn  rÛ   rî   rè   rà   rß   ro  rp  s      r   Úget_out_kernel_namert  
  sB   € Ø×%Ñ% a§e¡eÓ,€FØ‡|‚|�v�~Ü�x‰x˜Ÿ™Ÿ
™
Ó#Ð#Ø�=‰=Ðr   c                óî   — | j                   j                  }|j                  «       rJ ‚t        | |«      }d„ |j	                  «       D «       }| j
                  rdnd}d|› d|› ddj                  |«      › d�S )	Nc              3  ó4   K  — | ]  }|j                   –— Œ y ­wr  rV  ©rW  r   s     r   rX  z0generate_non_out_variant_call.<locals>.<genexpr>  ó   è ø€ ÒE˜c�—•ÑEùó   ‚ÚcpuÚnativeúat::ú::ú(r2  r3  )rí   rß   rH  rr  rå   rî   r;  )rò   rq  rL  Úkernel_nameÚ	arg_namesÚnamespace_names         r   Úgenerate_non_out_variant_callr‚    sw   € ð �\‰\×Ñ€FØ×ÑÔ!Ð!Ð!Ü! ! ]Ó3€KÙE V×%BÑ%BÓ%DÔE€IØŸlšl‘U°€NØ�.Ð!  K =°°#·(±(¸9Ó2EÐ1FÀaÐHÐHr   c                ó  — | j                   j                  }t        j                  |«      }|j	                  | j                   «      }|r|j
                  }d„ |j                  «       D «       }d}d|› d|› ddj                  |«      › d�S )Nc              3  ó4   K  — | ]  }|j                   –— Œ y ­wr  rV  rw  s     r   rX  z,generate_call_to_view_ops.<locals>.<genexpr>$  rx  ry  r{  r|  r}  r~  r2  r3  )rÝ   rß   rè   rà   rn  ro  rå   r;  )rò   rq  rL  r  ro  r€  r�  s          r   Úgenerate_call_to_view_opsr…    s}   € ð �V‰V�[‰[€FÜ—(‘(˜6Ó"€KØ×%Ñ% a§f¡fÓ-€FÙØ—m‘mˆÙE V×%BÑ%BÓ%DÔE€IØ€NØ�.Ð!  K =°°#·(±(¸9Ó2EÐ1FÀaÐHÐHr   c                ó
  — | j                   j                  }|j                  «       sJ ‚g }t        | |«      }| j                  r.|j
                  j                   D �cg c]  }|j                  ‘Œ }}ng }|j
                  j                  D ]e  }t        |t        «      r&|j                  |j                  j                  «       Œ9t        |t        «      sJ ‚|j                  |j                  «       Œg | j                  sVt        |j
                  j                   «      dk(  sJ ‚|j                  |j
                  j                   d   j                  «       dj                  |«      }| j                  rdnd}d|› d|› d|› d	�S c c}w )
Nr÷   r   r2  rz  r{  r|  r}  r~  r3  )rÛ   rß   rH  rt  rî   r   rà   rñ   rÜ   r   rK  Úargumentr   Úlenr;  )	rò   rq  rL  r€  r  Úout_argr   Úcpp_arg_namesr�  s	            r   Úgenerate_out_variant_callr‹  )  sL  € ð �U‰U�Z‰Z€FØ×ÑÔÐÐØ€IÜ% a¨Ó7€KØ‡|‚|à17×1AÑ1A×1EÑ1EÖF g�W—\“\ÐFˆ	ÑFàˆ	Ø×Ñ×'Ñ'ò 'ˆÜ�cœ<Ô(Ø×Ñ˜SŸ\™\×.Ñ.Õ/ä˜c¤8Ô,Ð,Ð,Ø×Ñ˜SŸX™XÕ&ð'ð �<Š<Ü�6×#Ñ#×'Ñ'Ó(¨AÒ-Ð-Ð-Ø×Ñ˜×)Ñ)×-Ñ-¨aÑ0×5Ñ5Ô6Ø—H‘H˜YÓ'€MØŸlšl‘U°€NØ�.Ð!  K =°°-°ÀÐBÐBùò Gs   ÁF )zisin.Scalar_Tensorr  r  r  r!  ÚhistcÚl1_lossÚmulti_margin_lossÚmultilabel_margin_lossÚnll_lossÚ
nll_loss2dÚprodc                óP   — t        | «      }|d |j                  d«       }|t        vS )Nr~  )rì   ÚfindÚno_memory_resize_ops)rL  Ú
schema_strÚtype_variant_op_names      r   Úshould_check_resizer˜  U  s.   € Ü�V“€JØ%Ð&<¨
¯©¸Ó(<Ð=ÐØÔ';Ð;Ð;r   c                ój   — | j                   j                  j                  j                  j                  S r  )rí   rß   rà   rá   )rò   s    r   Úop_name_from_grouprš  [  s$   € Ø�<‰<×Ñ×!Ñ!×&Ñ&×+Ñ+Ð+r   c                  ó\   — e Zd Z	 	 	 	 	 	 dd„Z	 	 	 	 	 	 dd„Z	 	 	 	 	 	 dd„Z	 	 	 	 	 	 d	d„Zy)
ÚGenOpDispatcherc                ó8  — |syg }|D ]X  }t        |«      5  t        |«      sJ ‚t        |t        «      sJ ‚| j	                  ||«      }|j                  |«       d d d «       ŒZ t        |d   «      }dj                  |«      }d|› d|› d|› d�}|S # 1 sw Y   Œ‘xY w)NrÙ   r   ú
z&
REGISTER_OPERATOR_FUNCTOR(
    aten::ú,
    aten_ú(,
    [](Node* n) -> SROperator {
      z9
      LogAndDumpSchema(n);
      return nullptr;
    })
)r   rõ   rÜ   r   Úout_variant_op_generatorrK  rš  r;  ©	ÚselfÚgroupsrq  Úgenerated_type_variantsrò   Úgenerated_type_variantr  ÚbodyÚ	generateds	            r   Úout_variantzGenOpDispatcher.out_variant`  sØ   € ñ ØØ"$ÐØò 	GˆAÜ(¨Ó+ñ GÜ# A”Ð&�Ü! !Ô%9Ô:Ð:Ð:Ø)-×)FÑ)FÀqÈ-Ó)XÐ&Ø'×.Ñ.Ð/EÔF÷	Gð Gð	Gô % V¨A¡YÓ/ˆØ�y‰yÐ0Ó1ˆðàˆ)ð 
Ø
ˆð à€fð ð	ˆ	ð Ð÷#Gð Gús   –ABÂB	c                óL  — |syg }|D ]X  }t        |«      5  t        |«      sJ ‚t        |t        «      sJ ‚| j	                  ||«      }|j                  |«       d d d «       ŒZ t        j                  |d   «      }dj                  |«      }d|› d|› d|› d�}|S # 1 sw Y   Œ›xY w)NrÙ   r   rž  z-
REGISTER_NATIVE_OPERATOR_FUNCTOR(
    aten::rŸ  r   z:
      LogAndDumpSchema(n);
      return nullptr;
    });
)	r   rõ   rÜ   r   Úview_op_generatorrK  r   Úfunc_name_base_strr;  r¢  s	            r   rÝ   zGenOpDispatcher.viewz  sÞ   € ñ ØØ"$ÐØò 	GˆAÜ(¨Ó+ñ GÜ# A”Ð&�Ü! !Ô%=Ô>Ð>Ð>Ø)-×)?Ñ)?ÀÀ=Ó)QÐ&Ø'×.Ñ.Ð/EÔF÷	Gð Gð	Gô ×+Ñ+¨F°1©IÓ6ˆØ�y‰yÐ0Ó1ˆðàˆ)ð 
Ø
ˆð à€fð ð	ˆ	ð Ð÷#Gð Gús   –ABÂB#	c                óÐ  — |j                   }t        |j                  «      }t        |j                   j                  «      }t	        ||«      }t        |j                  j                  j                  j                  «      dk(  sJ ‚t        |j                  j                  j                  j                  d   j                  «      }t        ||«      }d|› d|› d|› d|› d|› d|› d	�}	|	S )
Nr÷   r   ú+
      if (n->matches(torch::schema("aten::ú<"))) {
        return [](ProcessedNode* p_node) {
          zM
          if (p_node->Output(0).isNone()) {
            p_node->Output(0) = z2;
            return;
          }
          auto& z< = p_node->Output(0).toTensor();
          fastResizeToZero(z);
          ú;
        };
      })
rí   rì   rß   rl  r‚  rˆ  rÛ   r   rà   r‹  )
r£  rò   rq  rí   rL  Úpopulated_argumentÚfunctional_variant_callÚout_variable_nameÚout_variant_callr¨  s
             r   r¡  z(GenOpDispatcher.out_variant_op_generator”  sò   € ð —\‘\ˆ
Ü�Z—_‘_Ó%ˆÜ4°Q·\±\×5FÑ5FÓGÐÜ"?ÀÀ=Ó"QÐÜ�1—5‘5—:‘:×'Ñ'×+Ñ+Ó,°Ò1Ð1Ð1Ü §¡§
¡
× 4Ñ 4× 8Ñ 8¸Ñ ;× @Ñ @ÓAÐÜ4°Q¸ÓFÐð+Ø+1¨(ð 3àÐ
ð !à!8Ð 9ð :ð #Ð#ð $Ø-Ð.ð /ØÐ
ð 	ðˆ	ð Ðr   c                ó²   — t        |j                  j                  «      }t        |j                  j                  «      }t	        ||«      }d|› d|› d|› d�}|S )Nr®  r¯  z!
            p_node->Output(0) = r°  )rì   rÝ   rß   rl  r…  )r£  rò   rq  rL  r±  r²  r¨  s          r   r«  z!GenOpDispatcher.view_op_generator­  sj   € ô �Q—V‘V—[‘[Ó!ˆÜ4°Q·V±V·[±[ÓAÐÜ";¸A¸}Ó"MÐð+Ø+1¨(ð 3àÐ
ð !Ø!8Ð 9ð :	ð	ˆ	ð Ðr   N)r¤  úSequence[NativeFunctionsGroup]rq  r   rb  rì   )r¤  ú"Sequence[NativeFunctionsViewGroup]rq  r   rb  rì   ©rò   r   rq  r   rb  rì   ©rò   r   rq  r   rb  rì   )Ú__name__Ú
__module__Ú__qualname__r©  rÝ   r¡  r«  r   r   r   rœ  rœ  _  sv   „ ðØ4ðØEQðà	óð4Ø8ðØIUðà	óð4Ø%ðØ6Bðà	óð2Ø)ðØ:Fðà	ôr   rœ  c                  ó,   — e Zd Zdd„Zdd„Zdd„Zd	d„Zy)
ÚGenOpTestCasec                óþ   — |syg }|D ]W  }t        |«      5  t        |«      sJ ‚t        |t        «      sJ ‚| j	                  |«      }|j                  |«       d d d «       ŒY dj                  |«      S # 1 sw Y   ŒtxY w©NrÙ   rž  )r   rõ   rÜ   r   Ú"out_variant_op_test_case_generatorrK  r;  ©r£  r¤  r¥  rò   r¦  s        r   r©  zGenOpTestCase.out_variant¾  s–   € ÙØØ"$ÐØò 	GˆAÜ(¨Ó+ñ GÜ# A”Ð&�Ü! !Ô%9Ô:Ð:Ð:Ø)-×)PÑ)PÐQRÓ)SÐ&Ø'×.Ñ.Ð/EÔF÷	Gð Gð	Gð �y‰yÐ0Ó1Ð1÷Gð Gúó   –AA3Á3A<	c                óþ   — |syg }|D ]W  }t        |«      5  t        |«      sJ ‚t        |t        «      sJ ‚| j	                  |«      }|j                  |«       d d d «       ŒY dj                  |«      S # 1 sw Y   ŒtxY wrÀ  )r   rõ   rÜ   r   Úview_op_test_case_generatorrK  r;  rÂ  s        r   rÝ   zGenOpTestCase.viewÊ  s•   € ÙØØ"$ÐØò 	GˆAÜ(¨Ó+ñ GÜ# A”Ð&�Ü! !Ô%=Ô>Ð>Ð>Ø)-×)IÑ)IÈ!Ó)LÐ&Ø'×.Ñ.Ð/EÔF÷	Gð Gð	Gð �y‰yÐ0Ó1Ð1÷Gð GúrÃ  c                ó  — |j                   j                  }t        |«      }|j                  d«      dkD  sJ ‚|d |j                  d«       j	                  dd«      }t        |«      }|j                  |«      sJ ‚t        |«      }dj                  d„ |D «       «      }dj                  d„ |D «       «      }t        |j                  «      dk(  rZt        |j                  d   j                  t        «      r3|j                  d   j                  j                  t        j                   u sJ ‚t#        |d«      }	t%        |d«      }
t#        |d«      }t%        |d«      }t'        |«      rd	nd
}d|› d|› d|› d|› d|	› d|
› d|› d|› d|› d|› d�}|S )Nr~  r   ú.Ú_ú, c              3  ó8   K  — | ]  \  }}|€|n|› d|› �–— Œ y ­w©Nz: r   ©rW  rQ  rý   s      r   rX  zCGenOpTestCase.out_variant_op_test_case_generator.<locals>.<genexpr>à  ó1   è ø€ ò á&�H˜hð %Ð,‘°X°J¸bÀÀ
Ð2KÓKñùó   ‚c              3  ó&   K  — | ]	  \  }}|–— Œ y ­wr  r   ©rW  rQ  rÈ  s      r   rX  zCGenOpTestCase.out_variant_op_test_case_generator.<locals>.<genexpr>å  ó   è ø€ ÒE©K¨H°aœxÑEùó   ‚r÷   Útruer5  ú
TEST(StaticRuntime, autogen_ú1) {
  const std::string script = R"IR(
    graph(ú?):
        %bias: None = prim::Constant()
        %ret = aten::úQ)
        %cloned = aten::clone(%ret, %bias)
        return (%cloned)
  )IR";

  ú
  std::vector<IValue> args{zj};
  testStaticRuntime(script, args, {}, /*use_allclose=*/false, /*use_equalnan=*/false, /*check_resize=*/z);

  z
  std::vector<IValue> args2{zm};
  testStaticRuntime(script, args, args2, /*use_allclose=*/false, /*use_equalnan=*/false, /*check_resize=*/z);

}
)rí   rß   rì   r”  Úreplacerš  Ú
startswithrc  r;  rˆ  rê   rÜ   rç   r	   rà   r   rø   rS  rY  r˜  )r£  rò   rL  r–  r—  r  Ú	arg_typesÚarg_declarationsr€  Útest_value_definitionsÚtest_value_namesÚtest_value_definitions2Útest_value_names2Úcheck_resizer¨  s                  r   rÁ  z0GenOpTestCase.out_variant_op_test_case_generatorÖ  sË  € Ø—‘×"Ñ"ˆÜ˜“[ˆ
Ø�‰˜sÓ# aÒ'Ð'Ð'Ø)Ð*@¨J¯O©O¸CÓ,@ÐA×IÑIÈ#ÈsÓSÐÜ$ QÓ'ˆØ#×.Ñ.¨wÔ7Ð7Ð7ä.¨vÓ6ˆ	ØŸ9™9ñà*3ôó
Ðð —I‘IÑE¸9ÔEÓFˆ	ä�—‘Ó 1Ò$Ü˜6Ÿ>™>¨!Ñ,×1Ñ1´8Ô<Ø—‘˜qÑ!×&Ñ&×+Ñ+¬v¯}©}Ñ<ð	
ð=ô "AÀÈÓ!KÐÜ4°V¸QÓ?ÐÜ"AÀ&È!Ó"LÐÜ5°f¸aÓ@ÐÜ!4°VÔ!<‘vÀ'ˆðØ1Ð2ð 3àÐ
ð à�Y˜a 	˜{ð +ð
 Ðð Ø-Ð.ð /jØjvÐiwð xàÐð Ø/Ð0ð 1kØkwÐjxð yð!ˆ	ð( Ðr   c                óÆ  — |j                   j                  }t        |«      }|j                  d«      dkD  sJ ‚|d |j                  d«       j	                  dd«      }|j                   j
                  }|j                  |«      sJ ‚t        |«      }dj                  d„ |D «       «      }dj                  d„ |D «       «      }t        |j                  «      dk(  rZt        |j                  d   j                  t        «      r3|j                  d   j                  j                  t        j                   u sJ ‚t#        |d«      }	t%        |d«      }
d	|› d
|› d|› d|› d|	› d|
› d�}|S )Nr~  r   rÇ  rÈ  rÉ  c              3  ó8   K  — | ]  \  }}|€|n|› d|› �–— Œ y ­wrË  r   rÌ  s      r   rX  z<GenOpTestCase.view_op_test_case_generator.<locals>.<genexpr>  rÍ  rÎ  c              3  ó&   K  — | ]	  \  }}|–— Œ y ­wr  r   rÐ  s      r   rX  z<GenOpTestCase.view_op_test_case_generator.<locals>.<genexpr>  rÑ  rÒ  r÷   rÔ  rÕ  rÖ  r×  rØ  z(};
  testStaticRuntime(script, args);
}
)rÝ   rß   rì   r”  rÙ  rÞ   rÚ  rc  r;  rˆ  rê   rÜ   rç   r	   rà   r   rø   rS  rY  )r£  rò   rL  r–  r—  r  rÛ  rÜ  r€  rÝ  rÞ  r¨  s               r   rÅ  z)GenOpTestCase.view_op_test_case_generator  sv  € Ø—‘—‘ˆÜ˜“[ˆ
Ø�‰˜sÓ# aÒ'Ð'Ð'Ø)Ð*@¨J¯O©O¸CÓ,@ÐA×IÑIÈ#ÈsÓSÐØ—&‘&×"Ñ"ˆØ#×.Ñ.¨wÔ7Ð7Ð7ä.¨vÓ6ˆ	ØŸ9™9ñà*3ôó
Ðð —I‘IÑE¸9ÔEÓFˆ	ä�—‘Ó 1Ò$Ü˜6Ÿ>™>¨!Ñ,×1Ñ1´8Ô<Ø—‘˜qÑ!×&Ñ&×+Ñ+¬v¯}©}Ñ<ð	
ð=ô "AÀÈÓ!KÐÜ4°V¸QÓ?ÐðØ1Ð2ð 3àÐ
ð à�Y˜a 	˜{ð +ð
 Ðð Ø-Ð.ð /ðˆ	ð  Ðr   N)r¤  r¶  rb  rì   )r¤  r·  rb  rì   ©rò   r   rb  rì   )rò   r   rb  rì   )rº  r»  r¼  r©  rÝ   rÁ  rÅ  r   r   r   r¾  r¾  ½  s   „ ó
2ó
2ó.ô`'r   r¾  )r   z:Sequence[Argument | SelfArgument | TensorOptionsArguments]rb  r   )rò   z/NativeFunctionsGroup | NativeFunctionsViewGrouprb  r   )rý   úBaseType | OptionalType | Typerb  ztuple[bool, str] | None)r  rì   rb  r   )r  rì   rb  rù   )r  rì   rb  rì   )rý   ræ  r<  rù   r  rì   rb  rì   )rL  r
   r<  rù   rb  rì   )rL  r
   rb  zlist[tuple[str, str | None]])rL  r
   rb  rì   r¸  r¹  )rL  r
   rb  r   rå  )FÚ
__future__r   ÚjsonÚloggingr7  Útypingr   Útorchgen.api.cppÚapirè   Útorchgen.contextr   Útorchgen.modelr   r   r   r	   r
   r   r   r   r   r   r   Útorchgen.static_runtimer   Úcollections.abcr   Ú	getLoggerr   Ú__annotations__r   Ú	frozenseträ   rõ   ræ   r  r  r  r  r)  r*  r+  Útest_tensor_shapes_stringÚloadsr,  r.  rD  rS  rY  rø   rù   r9  rì   rú   rû   r   r^  rc  rl  rr  rt  r‚  r…  r‹  r•  r˜  rš  rœ  r¾  r   r   r   ú<module>rö     sJ  ðÞ "ã Û Û Ý  ç Ð Ý 4÷÷ ÷ ñ õ +ñ Ý(ð +˜×*Ñ*Ó,€ˆÓ ,ð
ØIð
à	ó
ñ ðCóE€óP9ðx(Ø,ð(àó(ñV 'ðóÐ ñ  "+Ð+LÓ!MÐ ó1ó5ñ #ð
óÐ ñ #ØQóÐ ó
ð <Ð Ø)3¨¯©Ð4MÓ)NÐ ˜Ó Nóð$Ø,ð$Ø58ð$ØCFð$àó$óN1óUð ‡M�M�8Ø
‡J�J�Ø
‡L�L�'Ø
‡J�J�Ø
‡M�M�5Ø
×Ñ�uØ
‡K�K�ð3Ð /ðIØðIà!óIó(
1óóðIØðIØ,8ðIàóIð
IØð
IØ0<ð
Iàó
IðCØðCØ,8ðCàóCñ4 !ðóÐ ó$<ó,÷[ñ [÷|pò pr   