
    '}h                     \   d Z ddlZddlmZ ddlmZ ddlmZ ddlm	Z	m
Z
 dgZ ej                  e
j                  d	      Z ed
       ej                  dddddd      e	j                   dej"                  dej"                  dej"                  dee   dee   dee   fd                     Zy)a  This file exports ONNX ops for opset 18.

Note [ONNX Operators that are added/updated in opset 18]

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
https://github.com/onnx/onnx/blob/main/docs/Changelog.md#version-18-of-the-default-onnx-operator-set
New operators:
    CenterCropPad
    Col2Im
    Mish
    OptionalGetElement
    OptionalHasElement
    Pad
    Resize
    ScatterElements
    ScatterND
    N)Sequence)_C)symbolic_helper)	_beartyperegistrationcol2im   )opsetzaten::col2imvisinputoutput_sizekernel_sizedilationpaddingstridec           	          g }|D ]#  }t        d      D ]  }	|j                  |        % t        j                  |      d   }
|sddg|
z  }|sdg|
z  }|sdg|
z  }| j	                  d||||||      S )N   r      Col2Im)dilations_ipads_i	strides_i)rangeappendr   _get_tensor_sizesop)gr   r   r   r   r   r   adjusted_paddingpad_num_dimensional_axiss              Z/var/www/html/test/engine/venv/lib/python3.12/site-packages/torch/onnx/symbolic_opset18.pyr   r   "   s      )q 	)A##C(	)) +<<[I!Lq6$883--++44       )__doc__	functoolstypingr   torchr   
torch.onnxr   torch.onnx._internalr   r   __all__partialonnx_symbolic_onnx_symbolic
parse_argsbeartypeValueintr    r$   r#   <module>r4      s   $    & 8
 *"""<#=#=RH Cc4t<
!88! ! 	!
 sm! c]! SM!  =  !r$   