
    bIg                    h    d dl mZ d dlZd dlmZ d Zd Zd Zd Z	 G d d	e      Z
 G d
 de      Zy)    )annotationsN)OpRunc                V    t        j                  | |      |z  }||dk7  r|||z  z  }|S Nr   )npdotabcalphabetaos         W/var/www/html/answerous/venv/lib/python3.12/site-packages/onnx/reference/ops/op_gemm.py_gemm00r      s3    
q!uA}	QXH    c                j    t        j                  | |j                        |z  }||dk7  r|||z  z  }|S r   r   r   Tr	   s         r   _gemm01r      s7    
q!##A}	QXHr   c                j    t        j                  | j                  |      |z  }||dk7  r|||z  z  }|S r   r   r	   s         r   _gemm10r      s7    
qssAA}	QXHr   c                ~    t        j                  | j                  |j                        |z  }||dk7  r|||z  z  }|S r   r   r	   s         r   _gemm11r       s<    
qssACC5 A}	QXHr   c                       e Zd Z	 	 	 	 	 	 ddZy)Gemm_6Nc	                   |dk(  r|r|rt         nt        }	n|rt        nt        }	 |	||d ||      }
||
j	                  |j
                        fS |j                  |
j                  k7  r&t        d|j                   d|
j                   d      |
|z   fS |r|rt         nt        }	n|rt        nt        }	 |	|||||      j	                  |j
                        fS )Nr   zUnable to add shape z
 to shape z without broadcast.)r   r   r   r   astypedtypeshape
ValueError)selfr
   r   r   r   r   transAtransB	broadcast_methress              r   _runzGemm_6._run(   s     >#)w#)w1dE40Cy

177+--ww#))# *177):cii[H[\  !G:%G7E%G7EaAud+22177;==r   )NNNNNN__name__
__module____qualname__r(    r   r   r   r   '   s    
 >r   r   c                      e Zd ZddZy)Gemm_7Nc                    |r|rt         nt        }n|rt        nt        } ||||||      j	                  |j
                        fS )N)r   r   r   r   r   r   )	r"   r
   r   r   r   r   r#   r$   r&   s	            r   r(   zGemm_7._runH   s<    %G7E%G7EaAud+22177;==r   )NNNNNr)   r-   r   r   r/   r/   G   s    >r   r/   )
__future__r   numpyr   onnx.reference.op_runr   r   r   r   r   r   r/   r-   r   r   <module>r4      s=    #  '>U >@>U >r   