
    JThi                    J   % S SK Jr  S SKrS SKrS SKrS SKJr  S SKJs  J	r	  S SK
Jr  S SKJrJrJrJrJrJrJrJrJrJrJr  S SKJr  \(       a  S SKJr  \R8                  " 5       rS\S	'       S/S jr\ " S5      r!S0S jr"    S1S jr#\ " S5      r$\ " S5      r%S2S jr&S2S jr'\ " S5      r(\ " S5      r)S3S jr*Sr+\RX                  " \+5      r-S\S'   S4S jr.        S5S jr/S6S jr0S6S jr1\Rd                  S\Rf                  S\Rh                  S \Rj                  S\Rl                  S\Rn                  S\Rp                  S
0r9    S7S! jr:S8S" jr;S9S# jr<S9S$ jr=      S9S% jr>      S:S& jr?      S9S' jr@\ " S(5      rAS;S) jrBS<S* jrC " S+ S,5      rD " S- S.5      rEg)=    )annotationsN)TYPE_CHECKING)native_function_manager)ArgumentBackendIndexBaseTyBaseTypeFunctionSchemaNativeFunctionsGroupNativeFunctionsViewGroupOptionalTypeSelfArgumentTensorOptionsArgumentsType)config)Sequencezlogging.Loggerloggerboolc                n    U  H/  n[        USS 5      nU(       d  M  [        USS5      nU(       d  M/    g   g)N
annotation	alias_set TF)getattr)	argumentsargr   r   s       Y/var/www/auris/envauris/lib/python3.13/site-packages/torchgen/static_runtime/generator.py	has_aliasr   !   s=     S,5
JR8	9      )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                   SnS n[        U [        5      (       a-  U R                  R                  nU R                  R                  nOJU R
                  R                  R                  R                  R                  nU R
                  R                  n[        R                  " U 5      (       a  [        R                  SU5        gU[        ;   a  [        R                  SU5        gUR                  5        H7  n[        UR                  5      nU(       a  M!  [        R                  SU5          g   [        U [        5      (       aR  S[         R"                  " UR$                  SS9R'                  5       :w  a   [        R                  S[)        U5      5        gg	U R*                  R                  R                  5        HK  n[        UR                  5      nU(       a  M!  [        R                  SU R*                  R                  5          g   U R,                  (       dZ  [/        U S
5      (       aH  [)        U5      R1                  S5      (       a)  [)        UR                  5      R1                  S5      (       d  gS[         R"                  " UR$                  SS9R'                  5       :w  a  [        R                  SU5        g[3        UR4                  R6                  5      (       a  [        R                  SU5        gg	)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!-..vv''vv{{uuzz++00uuzza  &5{"M<0**,4SXX>|KK;TB - !-.. 3++DLLGPPRRKK13t9= ||  7794SXX>|KK;Q\\=N=NO : <<
 5!!t9%%&EFFtyy>**622))$,,uENNPP-t4''((&5r   c                   [         R                  S[         R                  S[         R                  S[         R                  S[         R
                  S[         R                  S0nSn[        U [        5      (       a  U R                  nOM[        U [        5      (       a7  [        U R                  [        5      (       d  gU R                  R                  nOgX!;  a  gX   n[        U [        5      (       a  US   $ US	   $ )
a0  
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%%!	Hl	+	+(--22!++4%5G(H%%qz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                    U [         ;   $ N)should_use_int_tensor_ops_op_names    r   should_use_int_tensorr  p  s    000r   c                    U [         ;   $ 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                0    U [         ;   a  gU [        ;   a  gg)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                *    U [         ;   a	  [         U    $ g)Nr   )r,  r  s    r   test_tensor_shaper.    s    ((%g..r   c                   [        U5      nUS:X  ac  US:X  a  SOSn[        U5      n[        R                  " U[	        U5      -  5      nXfS-  -  nSR                  SR                  U /U-  5      5      n[        U5      (       a  SU S	3nO[        U5      (       a  S
U S3nOSU S3n[        R                  U[        R                  S[        R                  S[        R                  S[        R                  S[        R                  S0nS n	[!        U ["        5      (       a  U R$                  n	OL[!        U [&        5      (       a  [!        U R(                  ["        5      (       d   eU R(                  R$                  n	X;   d   S5       eX   n
U
$ )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    sx    'w/N!QJbB!'*yyuW~!=>q((!l^2E2O)PQW%%2>2B+N	"7	+	+((88LM''7q9 	(

CWs2

I N(H%%!(L11jMM87
 7
 	
 
 "++.C0CC.(8r   c                   U R                  5       (       a   eU R                  R                  R                  n0 nU R                  5        H'  n[	        UR
                  X5      nXSUR                  '   M)     [        R                  " X2U5        / nUR                  5        H  u  pxUR                  SU U SU 35        M      SR                  U5      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,,..sxxL* / e<O&}}xjs9+FG  />>/*S00r   c                   ^ U R                  5       (       a   eSR                  U4S jU R                  5        5       5      $ )Nr2  c              3  B   >#    U  H  oR                    T 3v   M     g 7fr  r   ).0r   r<  s     r   	<genexpr>,generate_test_value_names.<locals>.<genexpr>  s     T4SSxxj(4Ss   )rH  r;  r   )rL  r<  s    `r   generate_test_value_namesrZ    s6    !!!!88TF4Q4Q4STTTr   r   r9  c                b    SS jnU R                  5        Vs/ s H
  o!" U5      PM     sn$ s  snf )Nc                ,   U R                   nSn[        U[        5      (       a  UR                  nSn[        U[        5      (       d   eS nUR
                  [        ;   a  [        UR
                     nU(       a  U(       a  U S3nSU R
                  -   U4$ )NFT?%)r   r   r   r   r	   r   /generate_test_ir_arguments_base_ty_to_type_str_)r   r%  add_optionaltype_strs       r   ir_argument/generate_test_ir_arguments.<locals>.ir_argument  s    HHa&&AL!X&&&&66DDFqvvNH"1~Hchh))r   )r   r   returnztuple[str, str | None])r   )rL  rb  r   s      r   generate_test_ir_argumentsre    s1    * )/(E(E(GH(GK(GHHHs   ,c                   / n[        U R                  5       5       HY  u  p#[        UR                  5      nU(       d   eUu  pVU(       a  SOSnUR	                  SU SUR
                   SU SU 35        M[     SR                  U5      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_extractionrn    s    OF99;<4SXX>|/;,'CR	1SXXJ.?s"E[D\]	
 = >>/*S00r   c                    UR                  U R                  5      nU R                  (       d  Uc*  [        R                  " U R                  R
                  5      $ UR                  $ r  )
get_kernelr   r   r   r   r   kernelr   backend_indexrq  s      r   get_kernel_namert    sD    %%all3F||v~xx))**==r   c                    UR                  U R                  5      nU R                  (       d  Uc*  [        R                  " U R                  R
                  5      $ UR                  $ r  )rp  r   r   r   r   r   rq  rr  s      r   get_out_kernel_namerv  
  sB    %%aee,F||v~xx

##==r   c                    U R                   R                  nUR                  5       (       a   e[        X5      nS UR	                  5        5       nU R
                  (       a  SOSnSU SU SSR                  U5       S3$ )	Nc              3  8   #    U  H  oR                   v   M     g 7fr  rV  rW  r   s     r   rX  0generate_non_out_variant_call.<locals>.<genexpr>       E%Dc%D   cpunativeat::::(r2  r3  )r   r   rH  rt  r   r   r;  )r   rs  rL  kernel_name	arg_namesnamespace_names         r   generate_non_out_variant_callr    sx     \\F!!!!!!3KEV%B%B%DEIllUN.!K=#((92E1FaHHr   c                   U R                   R                  n[        R                  " U5      nUR	                  U R                   5      nU(       a  UR
                  nS UR                  5        5       nSnSU SU SSR                  U5       S3$ )Nc              3  8   #    U  H  oR                   v   M     g 7fr  rV  ry  s     r   rX  ,generate_call_to_view_ops.<locals>.<genexpr>$  r{  r|  r~  r  r  r  r2  r3  )r   r   r   r   rp  rq  r   r;  )r   rs  rL  r  rq  r  r  s          r   generate_call_to_view_opsr    s}     VV[[F((6"K%%aff-FmmEV%B%B%DEIN.!K=#((92E1FaHHr   c                P   U R                   R                  nUR                  5       (       d   e/ n[        X5      nU R                  (       a0  UR
                  R                    Vs/ s H  oUR                  PM     nnO/ nUR
                  R                   Hq  n[        U[        5      (       a'  UR                  UR                  R                  5        M?  [        U[        5      (       d   eUR                  UR                  5        Ms     U R                  (       dW  [        UR
                  R                   5      S:X  d   eUR                  UR
                  R                   S   R                  5        SR                  U5      nU R                  (       a  SOSnSU SU SU S	3$ s  snf )
Nr   r   r2  r}  r~  r  r  r  r3  )r   r   rH  rv  r   r   r   r   r   r   rK  argumentr   lenr;  )	r   rs  rL  r  r  out_argr   cpp_arg_namesr  s	            r   generate_out_variant_callr  )  sQ    UUZZFI%a7K||171A1A1E1EF1Eg\\1E	F		''c<((S\\../c8,,,,SXX& ( <<6##''(A---))--a0556HHY'MllU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                R    [        U 5      nUS UR                  S5       nU[        ;  $ )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    U R                   R                  R                  R                  R                  $ r  )r   r   r   r   )r   s    r   op_name_from_groupr  [  s$    <<!!&&+++r   c                  l    \ rS rSr      SS jr      S	S jr      S
S jr      SS jrSrg)GenOpDispatcheri_  c                d   U(       d  g/ nU Hb  n[        U5         [        U5      (       d   e[        U[        5      (       d   eU R	                  XB5      nUR                  U5        S S S 5        Md     [        US   5      nSR                  U5      nSU SU SU S3nU$ ! , (       d  f       M  = f)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groupsrs  generated_type_variantsr   generated_type_variantr  body	generateds	            r   out_variantGenOpDispatcher.out_variant`  s     "$A(+#A&!!%9::::)-)F)Fq)X&'../EF	 ,+  %VAY/yy01) 

 f 		 # ,+s   AB  
B/	c                z   U(       d  g/ nU Hb  n[        U5         [        U5      (       d   e[        U[        5      (       d   eU R	                  XB5      nUR                  U5        S S S 5        Md     [        R                  " US   5      nSR                  U5      nSU SU SU S3nU$ ! , (       d  f       M  = f)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   GenOpDispatcher.viewz  s     "$A(+#A&!!%=>>>>)-)?)?)Q&'../EF	 ,+  ++F1I6yy01) 

 f 		 # ,+s   AB++
B:	c                   UR                   n[        UR                  5      n[        UR                   R                  5      n[	        X5      n[        UR                  R                  R                  R                  5      S:X  d   e[        UR                  R                  R                  R                  S   R                  5      n[        X5      nSU SU SU SU SU SU S	3n	U	$ )
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   rn  r  r  r   r   r   r  )
r  r   rs  r   rL  populated_argumentfunctional_variant_callout_variable_nameout_variant_callr  s
             r   r  (GenOpDispatcher.out_variant_op_generator  s     \\
Z__%4Q\\5F5FG"?"Q155::''++,111

 4 4 8 8 ; @ @A4QF++1( 3
 !!8 9 : ## $-. /
 		 r   c                    [        UR                  R                  5      n[        UR                  R                  5      n[	        X5      nSU SU SU S3nU$ )Nr  r  z!
            p_node->Output(0) = r  )r   r   r   rn  r  )r  r   rs  rL  r  r  r  s          r   r  !GenOpDispatcher.view_op_generator  sh     QVV[[!4QVV[[A";A"M++1( 3
 !!8 9 :			 r   r   N)r  Sequence[NativeFunctionsGroup]rs  r   rd  r   )r  "Sequence[NativeFunctionsViewGroup]rs  r   rd  r   r   r   rs  r   rd  r   r   r   rs  r   rd  r   )	__name__
__module____qualname____firstlineno__r  r   r  r  __static_attributes__r   r   r   r  r  _  sv    4EQ	48IU	4%6B	2):F	r   r  c                  <    \ rS rSrSS jrS	S jrS
S jrSS jrSrg)GenOpTestCasei  c                ,   U(       d  g/ nU Hb  n[        U5         [        U5      (       d   e[        U[        5      (       d   eU R	                  U5      nUR                  U5        S S S 5        Md     SR                  U5      $ ! , (       d  f       M  = fNr   r  )r   r   r   r   "out_variant_op_test_case_generatorrK  r;  r  r  r  r   r  s        r   r  GenOpTestCase.out_variant  s    "$A(+#A&!!%9::::)-)P)PQR)S&'../EF	 ,+  yy011 ,+   AB
B	c                ,   U(       d  g/ nU Hb  n[        U5         [        U5      (       d   e[        U[        5      (       d   eU R	                  U5      nUR                  U5        S S S 5        Md     SR                  U5      $ ! , (       d  f       M  = fr  )r   r   r   r   view_op_test_case_generatorrK  r;  r  s        r   r   GenOpTestCase.view  s    "$A(+#A&!!%=>>>>)-)I)I!)L&'../EF	 ,+  yy011 ,+r  c                :   UR                   R                  n[        U5      nUR                  S5      S:  d   eUS UR                  S5       R	                  SS5      n[        U5      nUR                  U5      (       d   e[        U5      nSR                  S U 5       5      nSR                  S U 5       5      n[        UR                  5      S:X  a`  [        UR                  S   R                  [        5      (       a4  UR                  S   R                  R                  [        R                   L d   e[#        US5      n	[%        US5      n
[#        US5      n[%        US5      n['        U5      (       a  S	OS
nSU SU SU SU SU	 SU
 SU SU SU SU S3nU$ )Nr  r   ._, c              3  >   #    U  H  u  pUc  UOU SU 3v   M     g 7fNz: r   rW  rQ  r   s      r   rX  CGenOpTestCase.out_variant_op_test_case_generator.<locals>.<genexpr>  /      *3&H %,XJb
2KK*3   c              3  *   #    U  H	  u  pUv   M     g 7fr  r   rW  rQ  r  s      r   rX  r         E9KHx9   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  
startswithre  r;  r  r   r   r   r	   r   r   r   rS  rZ  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  0GenOpTestCase.out_variant_op_test_case_generator  s   ""[
s#a''')*@JOOC,@AII#sS$Q'#..w7777.v6	99*3
 IIE9EF	1$6>>!,118<<q!&&++v}}<	
= "A!K4VQ?"A&!"L5fa@!4V!<!<v'12 3
 Ya	{ +
  -. /jjviw x /0 1kkwjx y!	( r   c                   UR                   R                  n[        U5      nUR                  S5      S:  d   eUS UR                  S5       R	                  SS5      nUR                   R
                  nUR                  U5      (       d   e[        U5      nSR                  S U 5       5      nSR                  S U 5       5      n[        UR                  5      S:X  a`  [        UR                  S   R                  [        5      (       a4  UR                  S   R                  R                  [        R                   L d   e[#        US5      n	[%        US5      n
S	U S
U SU SU SU	 SU
 S3nU$ )Nr  r   r  r  r  c              3  >   #    U  H  u  pUc  UOU SU 3v   M     g 7fr  r   r  s      r   rX  <GenOpTestCase.view_op_test_case_generator.<locals>.<genexpr>  r  r  c              3  *   #    U  H	  u  pUv   M     g 7fr  r   r  s      r   rX  r    r  r  r   r  r  r  r  r  z(};
  testStaticRuntime(script, args);
}
)r   r   r   r  r  r   r  re  r;  r  r   r   r   r	   r   r   r   rS  rZ  )r  r   rL  r  r  r  r  r  r  r  r  r  s               r   r  )GenOpTestCase.view_op_test_case_generator  s|   [
s#a''')*@JOOC,@AII#sS&&""#..w7777.v6	99*3
 IIE9EF	1$6>>!,118<<q!&&++v}}<	
= "A!K4VQ?12 3
 Ya	{ +
  -. /	  r   r   N)r  r  rd  r   )r  r  rd  r   r   r   rd  r   )r   r   rd  r   )	r  r  r  r  r  r   r  r  r  r   r   r   r  r    s    
2
2.`'r   r  )r   z:Sequence[Argument | SelfArgument | TensorOptionsArguments]rd  r   )r   z/NativeFunctionsGroup | NativeFunctionsViewGrouprd  r   )r   BaseType | OptionalType | Typerd  ztuple[bool, str] | None)r  r   rd  r   )r  r   rd  r   )r  r   rd  r   )r   r  r<  r   r  r   rd  r   )rL  r
   r<  r   rd  r   )rL  r
   rd  zlist[tuple[str, str | None]])rL  r
   rd  r   r  r  )rL  r
   rd  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  rZ  r   r   r9  r   r   r   r   r_  re  rn  rt  rv  r  r  r  r  r  r  r  r  r   r   r   <module>r     sF   "        4    + ( !**, ,
I
	
 CEP9x(,((V '   "++L!M 15 #
  #Q 
 < )-4M)N  N$,$58$CF$$N1U MM8
JJ
LL'
JJ
MM5
u
KK3 /II!I(
1II,8II
I
I0<
I
ICC,8CC4 ! $<,[ [|p pr   