o
    öXœi°  ã                   @   sP  g d ¢Z ddl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mZ ddlmZmZ ddlmZmZ ddlmZmZmZ ddlmZmZ ddlmZ dd	lmZm Z m!Z!m"Z" dd
l#m$Z$m%Z%m&Z&m'Z' ddl(m)Z) ddl*m+Z+m,Z,m-Z-m.Z. ddl/m0Z0m1Z1m2Z2m3Z3 ddl4m5Z5m6Z6m7Z7m8Z8m9Z9m:Z: ddl;m<Z<m=Z= ddl>m?Z?m@Z@mAZAmBZB dS ))3Ú
add_0_ruleÚaffine_conv_fusion_ruleÚcast_cast_ruleÚcast_constant_of_shape_ruleÚ)cast_constant_of_shape_without_value_ruleÚcollapse_slice_ruleÚcollapse_slice2_ruleÚconv_affine_fusion_ruleÚdiv_by_1_ruleÚdropout_inference_ruleÚdropout_zero_ruleÚflatten_to_reshape_ruleÚfuse_batchnorm_into_conv_ruleÚ'fuse_batchnorm_into_conv_transpose_ruleÚfuse_batchnorm_into_gemm_ruleÚfuse_hardswish_rulesÚfuse_pad_into_conv_integer_ruleÚfuse_pad_into_conv_ruleÚmin_min_ruleÚmax_max_ruleÚmin_max_ruleÚmax_min_ruleÚgemm_to_matmul_add_ruleÚmatmul_add_to_gemm_ruleÚmul_by_1_ruleÚno_op_cast_ruleÚno_op_dynamic_scatter_nd_ruleÚno_op_expand_ruleÚno_op_static_scatter_nd_ruleÚno_op_transpose_ruleÚ&normalize_pad_format_conv_integer_ruleÚnormalize_pad_format_conv_ruleÚone_reshape_matmul_reshape_ruleÚ#remove_optional_bias_from_conv_ruleÚ-remove_optional_bias_from_conv_transpose_ruleÚ#remove_optional_bias_from_gemm_ruleÚ+remove_optional_bias_from_qlinear_conv_ruleÚreshape_reshape_ruleÚslice_split_ruleÚsqueeze_reshape_1d_ruleÚ
sub_0_ruleÚsuccessive_clip_relu_ruleÚsuccessive_clip_ruleÚsuccessive_relu_clip_ruleÚsuccessive_relu_ruleÚ#transpose_a_matmul_add_to_gemm_ruleÚ$transpose_ab_matmul_add_to_gemm_ruleÚ#transpose_b_matmul_add_to_gemm_ruleÚtranspose_transpose_ruleÚ two_reshapes_matmul_reshape_ruleÚunsqueeze_unsqueeze_ruleé    )
r   r   r   r   r   r&   r'   r(   r1   r3   )r!   r2   )r   r   )r   r   )r   r   r   )r   r   )r   )r   r   r   r    )r*   r+   r,   r-   )r   )r   r.   r/   r0   )r   r   r   r   )r   r	   r
   r   r   r)   )r   r   )r"   r#   r$   r%   N)CÚ__all__Ú-onnxscript.rewriter.rules.common._basic_rulesr   r   r   r   r   r&   r'   r(   r1   r3   Ú5onnxscript.rewriter.rules.common._broadcast_to_matmulr!   r2   Ú8onnxscript.rewriter.rules.common._cast_constant_of_shaper   r   Ú1onnxscript.rewriter.rules.common._collapse_slicesr   r   Ú0onnxscript.rewriter.rules.common._fuse_batchnormr   r   r   Ú2onnxscript.rewriter.rules.common._fuse_conv_affiner   r   Ú0onnxscript.rewriter.rules.common._fuse_hardswishr   Ú4onnxscript.rewriter.rules.common._fuse_pad_into_convr   r   r   r    Ú2onnxscript.rewriter.rules.common._fuse_relus_clipsr*   r+   r,   r-   Ú4onnxscript.rewriter.rules.common._gemm_to_matmul_addr   Ú4onnxscript.rewriter.rules.common._matmul_add_to_gemmr   r.   r/   r0   Ú1onnxscript.rewriter.rules.common._min_max_to_clipr   r   r   r   Ú'onnxscript.rewriter.rules.common._no_opr   r	   r
   r   r   r)   Ú6onnxscript.rewriter.rules.common._redundant_scatter_ndr   r   Ú6onnxscript.rewriter.rules.common._remove_optional_biasr"   r#   r$   r%   © rE   rE   ú]/home/ubuntu/.local/lib/python3.10/site-packages/onnxscript/rewriter/rules/common/__init__.pyÚ<module>   s    06 