
    `i0                        d dl Zd dlZd dl mZ ddlmZmZ ddlmZ  ej                     ej	        ej
        ej        cZ	Z
Z G d de          Z G d d	e          Zdd
lmZ e                    ej        d          Z G d d          Zeej        fZ G d dej        e          Z G d deej                  Zd Zej        Zd Z ej        ej                  Zej        Z ej        ej                  Z ej        ej                   Z!ee_        e!e_         eej        _        ee_         ej        ej"                  ej        _"         ej        ej#                  ej        _#         eeej        ej$                   e`% ej        ej&                  e_&         ed            ed            ed            ed            ed            ed            ed            ed            ed            ed            ed            ed            ed d!"            ed#d!"            ed$d%            ed&d%            ed'd%            ed(d%            ed)d%            ed*d%            ed+d%            ed,d%            ed-d./            ed0d./            ed1d%            ed2dd.3            ed4dd.5            ed6dd.5            ed7dd.5            ed8dd.5            ed9dd.5            ed:dd.5            ed;dd.5            ed<ddd.=            ed>dd.5            eej'        j(        j)        dd.5          Z)dS )?    N)dim   )tree_flattentree_map)	wrap_typec                       e Zd ZdS )DimensionMismatchErrorN__name__
__module____qualname__     j/home/jaya/work/projects/VOICE-AGENT/VIET/agent-env/lib/python3.11/site-packages/functorch/dim/__init__.pyr	   r	              Dr   r	   c                       e Zd ZdS )DimensionBindErrorNr
   r   r   r   r   r      r   r   r   )op_propertiesTc                       e Zd Zed             Zd Z eej                  Z ej	        ej
                  Z
 ej	        ej                  Zd ZdS )_Tensorc                 >    t          d | j        D                       S )Nc              3   D   K   | ]}t          |t                    |V  d S N)
isinstanceDim).0ds     r   	<genexpr>z_Tensor.dims.<locals>.<genexpr>"   s1      CC1
1c0B0BCQCCCCCCr   )tuple_levelsselfs    r   dimsz_Tensor.dims    s!    CCCCCCCCr   c                     | j         S r   )ndimr!   s    r   r   z_Tensor.dim$   s
    yr   c                     | j         | j        | j        c}}| dt          fd|D                        dt          |                                           S )Nz
with dims=c              3   P   K   | ] }t          |t                    r|z   n|V  !d S r   )r   int)r   lr%   s     r   r   z#_Tensor.__repr__.<locals>.<genexpr>.   s<      +b+bVW
1c8J8J,QAHHPQ+b+b+b+b+b+br   z sizes=)_tensorr    r%   r   size)r"   tensorlevelsr%   s      @r   __repr__z_Tensor.__repr__,   s~    #|T\49  B  Be+b+b+b+b[a+b+b+b&b&b  B  Bkpqwq|q|q~q~kk  B  B  	Br   N)r   r   r   propertyr#   r   classmethod_C__torch_function___instancemethodexpandindexr.   r   r   r   r   r      s         D D XD   %R%:;;R	**FBrx((EB B B B Br   r   c                       e Zd Zej        ZdS )r   N)r   r   r   object
__format__r   r   r   r   r   4   s         "JJJr   r   c                   X    e Zd Z eej                  Z ej        ej                  Z	dS )TensorN)
r   r   r   staticmethodr1   Tensor_from_positionalfrom_positionalr3   
Tensor_sumsumr   r   r   r:   r:   :   s4        "l2#<==O
"
R]
+
+CCCr   r:   c                 l    t                      }t          | ||                              ||g|          S r   )r#   stackr5   )tensorsr   new_dimns       r   catrE   ?   s1    A!S!!''C':::r   c                     t          t          j        |           }t          t          | t          j        t          |g|R i |                     d S r   )getattrtorchr:   setattrr   r1   r3   _wrap)nameargskwargsorigs       r   _defrO   G   sN    5<&&DGT2-eD.J4.J.J.J6.J.JKKLLLLLr   meanr?   allamaxaminaminmaxanycount_nonzero	logsumexpnanmeannansumprodstd   )keepdim_offsetvarmax)
single_dimminargmaxargminkthvaluemedian	nanmedianmodesortF)reduceargsortunbindchunk)
dim_offsetri   cummax)r`   ri   cummincumprodcumprod_cumsumcumsum_logcumsumexprenorm)rm   r`   ri   softmax)*functorch._C	functorchrH   r   r1   r   r   r   _patch_tensor_classr#   DimListdimlists	Exceptionr	   r    r   dictfromkeys	pointwiser   r:   
TensorLiker   rE   rJ   rO   r3   __getitem__t__getitem__rA   split__setitem__t__setitem__r4   r5   r2   r%   ordernn
functionalrv   r   r   r   <module>r      sP        " " " " " " , , , , , , , ,                 '2:r{ gx	 	 	 	 	Y 	 	 		 	 	 	 	 	 	 	       MM-1488	B B B B B B B B* u|$
# # # # #"&' # # #, , , , ,Wbi , , ,
; ; ;
 	M M M
 "r!".11
28$$ "r!".11
 # "  (b(33 'R'11  		'5<!; < < <L""28,, V U U V V Y U _    [    Y X V U1     U1     Ut     Ut     X$     X$     ZD ! ! ! ! X$     [T " " " " V     VE     Yu     X$     W5 ) ) ) ) X$u - - - - X$u - - - - Y4 . . . . ZD / / / / X$u - - - - Y4 . . . . ^U 3 3 3 3 X!U ; ; ; ; Y4 . . . .
%#+U
K
K
Kr   