
    wi_	                        d dl mZ d dlZd dlmZ 	 	 dddZ G d de          Z G d de          Z G d de          Z	dS )    )annotationsN)OpRundata
np.ndarraystartsendsaxesnp.ndarray | Nonestepsreturnc                   t          |t                    rt          j        |          }t          |t                    rt          j        |          }t          |t                    rt          j        |          }t          |t                    rt          j        |          }t	          |j                  dk    rt          j        |g          }t	          |j                  dk    rt          j        |g          }|=|d t          ||d          D             }nd t          |||d          D             }n|?d | j        D             }t          |||d          D ]\  }}}t          ||          ||<   nAd | j        D             }t          ||||d          D ]\  }}}}	t          |||	          ||<   	 | t          |                   S # t          $ r!}t          d|d	| j        d
          |d }~ww xY w)Nr   c                4    g | ]\  }}t          ||          S  slice).0ses      k/root/.openclaw/workspace/chatterbox_venv_py311/lib/python3.11/site-packages/onnx/reference/ops/op_slice.py
<listcomp>z_slice.<locals>.<listcomp>    s$    NNNdaeAqkkNNN    F)strictc                8    g | ]\  }}}t          |||          S r   r   )r   r   r   ds       r   r   z_slice.<locals>.<listcomp>"   s5       #*1aaA  r   c                .    g | ]}t          d |          S r   r   r   as     r   r   z_slice.<locals>.<listcomp>'        666aeAqkk666r   c                .    g | ]}t          d |          S r   r   r   s     r   r   z_slice.<locals>.<listcomp>+   r   r   zUnable to extract slice z for shape .)

isinstancelistnparraylenshapezipr   tuple	TypeError)
r   r   r   r	   r   slicesr   r   r   r   s
             r   _slicer,      s=    &$ "&!!$ x~~$ x~~%  
6<A6(##
4:!x|=NNc&$u.M.M.MNNNFF .1&$e.T.T.T  FF =664:666FvtT%@@@ ( (1a!!QKKq		( 764:666F!&$eEJJJ + +
1a!!QNNq		E&MM""   KvKKDJKKK
 
	s   G 
H G<<Hc                      e Zd ZddZdS )SliceCommonNc                .    t          |||||          }|fS N)r,   )selfr   r   r   r	   r   ress          r   _runzSliceCommon._run7   s    T64u55vr   NN)__name__
__module____qualname__r3   r   r   r   r.   r.   6   s(             r   r.   c                      e Zd Zd ZdS )Slice_10c                >    t                               | ||           d S r0   )r.   __init__)r1   	onnx_node
run_paramss      r   r;   zSlice_10.__init__=   s     T9j99999r   N)r5   r6   r7   r;   r   r   r   r9   r9   <   s#        : : : : :r   r9   c                      e Zd Zd ZddZdS )Slice_1c                    t                               | ||           dD ]U}t          | |          st          | |          2t	          t          | |                    dk    rt          | |d            Vd S )N)r   r   r   r	   r   )r.   r;   hasattrgetattrr&   setattr)r1   r<   r=   fs       r   r;   zSlice_1.__init__B   s    T9j9994 	' 	'A4## tQ+GD!4D4D0E0E0J0Ja&&&		' 	'r   Nc                >    t                               | ||||          S r0   )r.   r3   )r1   r   r	   r   r   s        r   r3   zSlice_1._runJ   s    dFD$???r   )NNN)r5   r6   r7   r;   r3   r   r   r   r?   r?   A   s=        ' ' '@ @ @ @ @ @r   r?   r4   )r   r   r   r   r   r   r	   r
   r   r
   r   r   )

__future__r   numpyr$   onnx.reference.ops._opr   r,   r.   r9   r?   r   r   r   <module>rI      s    # " " " " "     ( ( ( ( ( ( ##( ( ( ( (V    %   : : : : :{ : : :

@ 
@ 
@ 
@ 
@k 
@ 
@ 
@ 
@ 
@r   