
    }tf                     ,    d dl mZ d Z G d de      Zy)    )	TraitTypec                 P   | j                   j                  d| j                   j                   }g }g }|D ],  }||v r|j                  ||          |j                  |       . |r>t	        dj                  | j                   j                  dj                  |                   | | S )z
    Call callback with only the args it wants from args

    Example
    >>> def cb(a):
    ...    return a * 5

    >>> print(call_with_asked_args(cb, {'a': 4, 'b': 8}))
    20
    Nz-{}() missing required positional argument: {}z, )__code__co_varnamesco_argcountappend	TypeErrorformatco_namejoin)callbackargsasked_arg_namesasked_arg_valuesmissing_argsasked_arg_names         d/var/www/html/software/conda/envs/higlass/lib/python3.12/site-packages/jupyter_server_proxy/utils.pycall_with_asked_argsr      s     ''334Sh6G6G6S6STOL) 0T!##D$89/	0
 ;BB!!))499\+B
 	

 %&&    c                       e Zd ZdZdZd Zy)CallablezwA trait which is callable.
    Notes
    -----
    Classes are callable, as are instances
    with a __call__() method.z
a callablec                 B    t        |      r|S | j                  ||       y )N)callableerror)selfobjvalues      r   validatezCallable.validate/   s    E?LJJsE"r   N)__name__
__module____qualname____doc__	info_textr    r   r   r   r   &   s    ! I#r   r   N)	traitletsr   r   r   r$   r   r   <module>r&      s    'D#y #r   