+
    wi	                     Z    ^ RI t ^ RIHt ^ RIHtHtHt ]! R4      t]! R4      tR R lt	R# )    N)Callable)AnyTypeVarget_type_hintsTRc                    V ^8  d   QhR\         R\        3,          R\        \        ,          R\         \        .\        3,          /# )   func.request_typereturn)r   r   typer   )formats   "W/home/ubuntu/.local/lib/python3.14/site-packages/mcp/server/lowlevel/func_inspection.py__annotate__r   	   s=     - -hsAv. -d1g -(TUSVXYSYJZ -    c                V  a   \         P                  ! S 4      p\        S 4      pTP                  P                  4        F  w  rETP                  \         P                  P                  8X  g   K0  TP                  T4      pYa8X  g   KI  TP                  \         P                  P                  Jd	   T 3R lu # T 3R lu # 	  TP                  P                  4        F  w  rETP                  \         P                  P                  \         P                  P                  39   g   KJ  TP                  T4      pYa8X  g   Kc  TP                  \         P                  P                  Jd	   T 3R lu # R T 3R llpT! T4      u # 	  T 3R l#   \        \        \
        3 d
    T 3R lu # i ; i)a  
Create a wrapper function that knows how to call func with the request object.

Returns a wrapper function that takes the request and calls func appropriately.

The wrapper handles three calling patterns:
1. Positional-only parameter typed as request_type (no default): func(req)
2. Positional/keyword parameter typed as request_type (no default): func(**{param_name: req})
3. No request parameter or parameter with default: func()
c                    < S! 4       # N _r   s   &r   <lambda>%create_call_wrapper.<locals>.<lambda>   s    r   c                    < S! 4       # r   r   r   s   &r   r   r   !       TVr   c                    < S! V 4      # r   r   )reqr   s   &r   r   r   #   s	    49r   c                    < S! 4       # r   r   r   s   &r   r   r   ,   r   r   c                T    V ^8  d   QhR\         R\        \        .\        3,          /# )r
   namer   )strr   r   )r   s   "r   r   )create_call_wrapper.<locals>.__annotate__0   s%     ; ;s ;xs
7K ;r   c                    <a  VV 3R  l# )c                    < S! R/ SV /B # )Nr   r   )r   r   r!   s   &r   r   Ccreate_call_wrapper.<locals>.make_keyword_wrapper.<locals>.<lambda>1   s    t':tSk':r   r   )r!   r   s   fr   make_keyword_wrapper1create_call_wrapper.<locals>.make_keyword_wrapper0   s	    ::r   c                    < S! 4       # r   r   r   s   &r   r   r   6   s    TVr   )inspect	signaturer   
ValueError	TypeError	NameError
parametersitemskind	ParameterPOSITIONAL_ONLYgetdefaultemptyPOSITIONAL_OR_KEYWORDKEYWORD_ONLY)r   r   sig
type_hints
param_nameparam
param_typer'   s   f&      r   create_call_wrapperr>   	   sB    %#D)

 !^^113
::**:::#
3J)==(9(9(?(??++,, 4 !^^113
::'++AA7CTCTCaCabb#
3J)==(9(9(?(??++; ; ,J77 4  ? 	9-   s   !F	 	F('F()
r*   collections.abcr   typingr   r   r   r   r   r>   r   r   r   <module>rA      s(     $ / /CLCL-r   