
    Χg                        d Z ddlZddlmZmZ g Zej        j        j        ej        j        j	        ej        j        j
        ej        j        j        ej        j        j        ej        j        j        ej        j        j        ej        j        j        ej        j        j        ej        j        j        ej        j        j        ej        j        j        ej        j        j        ej        j        j        ej        j        j        ej        j        j        ej        j        j        ej        j        j        ej        j        j        gZd Zd ZdS )z
These are functions that should simply be applied to both mask and data.
Take select or stack as an example. This operation can be applied to
both the mask and data of a MaskedTensor and the result wrapped into
a new MaskedTensor as a result.
    N   _map_mt_args_kwargs_wrap_resultc                     | t           v S N)PASSTHROUGH_FNS)fns    a/var/www/html/ai-engine/env/lib/python3.11/site-packages/torch/masked/maskedtensor/passthrough.py_is_pass_through_fnr   )   s          c                     t          ||d           \  }} | |i |}t          ||d           \  }} | |i |}t          ||          S )Nc                 *    |                                  S r   )get_dataxs    r   <lambda>z(_apply_pass_through_fn.<locals>.<lambda>.        r   c                 *    |                                  S r   )get_maskr   s    r   r   z(_apply_pass_through_fn.<locals>.<lambda>0   r   r   r   )	r
   argskwargs	data_argsdata_kwargsresult_data	mask_argsmask_kwargsresult_masks	            r   _apply_pass_through_fnr   -   sn    0v?U?UVVI{"i/;//K0v?U?UVVI{"i/;//K[111r   )__doc__torchcorer   r   __all__opsatenselect	transposesplittsliceslice_backwardselect_backwardindexexpandview_unsafe_view_reshape_aliascat	unsqueezeunfoldunfold_backwardim2colcol2imstackr	   r   r    r   r   <module>r:      s(     3 3 3 3 3 3 3 3  
IN	IN	IN	IN	IN	IN!	IN"	IN	IN	IN	IN	IN!	IN	IN	IN	IN"	IN	IN	IN'.! ! !2 2 2 2 2r   