o
    wÖi(  ã                   @  s4   d dl mZ d dlZd dlmZ G dd„ deƒZdS )é    )ÚannotationsN)ÚOpRunc                   @  s   e Zd Zdd„ ZdS )ÚQLinearMatMulc	                 C  sœ   |  tj¡}	|d ur|	|  tj¡8 }	|  tj¡}
|d ur$|
|  tj¡8 }
t |	|
¡}||| |  }|d urD||7 }t |¡  |j¡fS t |¡  |j¡fS )N)ÚastypeÚnpÚint32ÚmatmulÚrintÚdtype)ÚselfÚaÚa_scaleÚa_zero_pointÚbÚb_scaleÚb_zero_pointÚy_scaleÚy_zero_pointÚAÚBÚCÚD© r   úa/home/ubuntu/sommelier/.venv/lib/python3.10/site-packages/onnx/reference/ops/op_qlinear_matmul.pyÚ_run   s   zQLinearMatMul._runN)Ú__name__Ú
__module__Ú__qualname__r   r   r   r   r   r      s    r   )Ú
__future__r   Únumpyr   Úonnx.reference.op_runr   r   r   r   r   r   Ú<module>   s   