
     j                     $    d dl Z d dlZd ZddZdS )    Nc                 t     t          j        dd          t          j                    fd            }|S )ze
    Wrap a method such that when it is called, the args and kwargs are
    saved on the method.
    args_and_kwargszargs kwargsc                j    dj         z   } ||          }t          | ||            | g|R i |S )N_saved_)__name__setattr)selfargskwargs	attr_nameattrr   methods        Y/lsinfo/ai/hellotax_ai/base_platform/venv/lib/python3.11/site-packages/zipp/_functools.pywrapperz!save_method_args.<locals>.wrapper   sR    /	tV,,i&&&vd,T,,,V,,,    )collections
namedtuple	functoolswraps)r   r   r   s   ` @r   save_method_argsr      sS    
 ",->NNO_V- - - - - - Nr   c                     | |n| S )zT
    >>> none_as(None, 'foo')
    'foo'
    >>> none_as('bar', 'foo')
    'bar'
     )valuereplacements     r   none_asr      s      -;;U2r   )N)r   r   r   r   r   r   r   <module>r      sJ             $3 3 3 3 3 3r   