
    y                         S SK r S SKJr  S SKrS SKr\R
                  R                  S5      r\" \S5      r	\R                  S:  r\ R                  " S/ SQ5      rS rS	 rS
 rS r\(       a  S SKJr  OS SKrS rg)    N)utilwinpypy_version_info)      ArgSpec)argsvarargskeywordsdefaultsc                 ~   [         R                  " U 5      (       a  U R                  n [         R                  " U 5      (       d  [	        U < S35      eU R
                  n[         R                  " U5      (       d  [	        U< S35      eUR                  nUR                  nUR                  n[        USU 5      nX$-  nSnUR                  [         R                  -  (       a  UR                  U   nUS-   nSnUR                  [         R                  -  (       a  UR                  U   n[        XVXpR                  5      $ )zBgetargspec based on fully vendored getfullargspec from Python 3.3.z is not a Python functionz is not a code objectN   )inspectismethod__func__
isfunction	TypeError__code__iscodeco_argcountco_varnamesco_kwonlyargcountlistco_flags
CO_VARARGSCO_VARKEYWORDSr   __defaults__)funcconargsnamesnkwargsr	   r
   varkws           lib/third_party/mako/compat.pyinspect_getargspecr%      s    }}d##4(";<==	B>>"2& 5677NNENNE""GfuD	EG	{{W'''..'	E	{{W+++u%4%):):;;    c                     [         R                  " X5      n[         R                  " U5      nUR                  R	                  U5        U$ N)r   spec_from_file_locationmodule_from_specloaderexec_module)	module_idpathspecmodules       r$   load_moduler1   2   s9    ''	8D""4(FKKF#Mr&   c                  2    [         R                  " 5       S   $ )Nr   )sysexc_info r&   r$   exception_asr6   9   s    <<>!r&   c                 .    U R                   R                  $ r(   )	__class____name__)excs    r$   exception_namer;   =   s    ==!!!r&   )metadatac                     [         R                  " 5       n[        US5      (       a  UR                  U S9$ UR	                  U S5      $ )Nselect)groupr5   )importlib_metadataentry_pointshasattrr>   get)r?   eps     r$   importlib_metadata_getrE   G   s?    		(	(	*Br8yyuy%%vveR  r&   )collections	importlibr   r   r3   platform
startswithwin32rB   pypyversion_infopy38
namedtupler   r%   r1   r6   r;   r<   r@   rE   r5   r&   r$   <module>rO      s~       
&s'(
6!

 
 :
<:" 8!r&   