
    [Th                     2    S SK r S SKJr  SS jrSS jrS rg)    N)reducec                 z    U(       a  U R                  5       U:X  a  U $ U R                  5       R                  U5      $ )N)size
contiguousview)tensorr   check_same_sizes      W/var/www/auris/envauris/lib/python3.13/site-packages/torch/autograd/_functions/utils.py
maybe_viewr      s1    6;;=D0##D))    c                    U(       a  U R                  5       U:X  a  U $ U R                  5       [        U5      -
  n[        [	        U R                  5       US  U5      5       VVVs/ s H  u  nu  pVXV:w  d  M  UPM     nnnn[        U5       H  nU R                  SSS9n M     U H  nU R                  USS9n M     U $ s  snnnf )Nr   F)keepdimT)r   dimlen	enumerateziprangesum)	r   old_sizer	   num_unsqueezedr   expandedoriginalexpanded_dims_s	            r
   maybe_unexpandr      s    6;;=H4ZZ\CM1N *3no.9*
*
%C%( 	 	*
   >"Au- #C. Ms   $B=6B=c                    SnSn[        U 5      n[        U5      n[        [        R                  U5      nXE:  a  SnUS:w  a  SnO*XE:  a  SnUS:w  a  XU-
  S  U:w  a  SnOX:w  a
  SnUS:w  a  SnU(       d  [	        SU  SU 35      eU$ )NFT   zCNumpy style broadcasting is not supported in ONNX. Input dims are: z, )r   r   operatormul
ValueError)dims1dims2	broadcast	supportedlen1len2numel2s          r
   check_onnx_broadcastr(   &   s    IIu:Du:DHLL%(F{	Q;I		Q;5/58I>I{!	QRWQXXZ[`Zab
 	
 r   )T)r   	functoolsr   r   r   r(    r   r
   <module>r+      s     *4r   