
    /j                    N    d dl mZ d dlZd dlmZ d dlmZ  G d de          ZdS )    )annotationsN)OpRun)_conv_implementationc                  &    e Zd Z	 	 	 	 	 	 	 	 ddZdS )ConvIntegerNc                   t          |j                  dk     rt          d|j         d          |p| j        }|p| j        }|p| j        }|p| j        }|	p| j        }	|
p| j        }
|	                    t          j                  }|||z  }|	                    t          j                  }|%||j        dk    r|nt          j        |d          z  }t          ||d |||||	|
	  	        	                    t          j                  fS )N   z3X must have at least 3 dimensions but its shape is .r   )      r	   )lenshape
ValueErrorauto_pad	dilationsgroupkernel_shapepadsstridesastypenpint32ndimexpand_dimsr   )selfXWx_zero_pointw_zero_pointr   r   r   r   r   r   s              g/home/longshao/multi-rider-rag/.venv/lib/python3.11/site-packages/onnx/reference/ops/op_conv_integer.py_runzConvInteger._run   s)    qw<<!PagPPP   ,t}/	##8t'8 ty)T\HHRX#AHHRX#$)) ^L)<<A !1dHidG fRX
 	
    )NNNNNNNN)__name__
__module____qualname__r!    r"   r    r   r      sB        
 '
 '
 '
 '
 '
 '
r"   r   )	
__future__r   numpyr   onnx.reference.op_runr   onnx.reference.ops.op_convr   r   r&   r"   r    <module>r+      s}    # " " " " "     ' ' ' ' ' ' ; ; ; ; ; ;(
 (
 (
 (
 (
% (
 (
 (
 (
 (
r"   