o
    4³cÇ  ã                   @   sÚ  d dl Z d dlZd dlZejdkZejdk ZejdkZej d¡Z	ej d¡Z
eedƒZe  dg d	¢¡Zd
d„ Zernd dlmZ d dlZd dlmZmZ d dlmZmZ efZeZeZd dlmZ  dd„ Z!dd„ Z"dd„ Z#n<d dl$Zzd dl%mZ W n
   d dlmZ Y eZ d dl&mZmZ d dl'mZmZ e(fZeZe)Zdd„ Z!dd„ Z"dd„ Z#erÃd dl*m+Z+m,Z, ee,dƒr¾dd„ Z-ndd„ Z-nd dl.Z.dd„ Z-erÓd*dd „Z/ne0d!ƒ d"d#„ Z1e2Z2d$d%„ Z3e4fd&d'„Z5d(d)„ Z6dS )+é    N)é   r   )r   )é   é   ÚjavaÚwinÚpypy_version_infoÚArgSpec)ÚargsÚvarargsÚkeywordsÚdefaultsc                 C   sÄ   t  | ¡r| j} t  | ¡std | ¡ƒ‚| j}t  |¡s#td |¡ƒ‚|j}|j	}t
r.|jnd}t|d|… ƒ}||7 }d}|jt j@ rM|j	| }|d }d}|jt j@ rZ|j	| }t|||| jƒS )zBgetargspec based on fully vendored getfullargspec from Python 3.3.z{!r} is not a Python functionz{!r} is not a code objectr   Né   )ÚinspectÚismethodÚ__func__Ú
isfunctionÚ	TypeErrorÚformatÚ__code__ÚiscodeÚco_argcountÚco_varnamesÚpy3kÚco_kwonlyargcountÚlistÚco_flagsÚ
CO_VARARGSÚCO_VARKEYWORDSr   Ú__defaults__)ÚfuncÚcoÚnargsÚnamesÚnkwargsr	   r
   Úvarkw© r%   úA/var/www/html/gps/gps/lib/python3.10/site-packages/mako/compat.pyÚinspect_getargspec   s(   




r'   )ÚStringIO)Ú
quote_plusÚunquote_plus)Úcodepoint2nameÚname2codepoint)ÚBytesIOc                 C   ó   | S ©Nr%   ©Úsr%   r%   r&   Úu@   ó   r2   c                 C   s
   |   d¡S )Nzlatin-1)Úencoder0   r%   r%   r&   ÚbC   ó   
r5   c                 C   ó   t d|  ƒS )NÚ0o©Úeval©Úlitr%   r%   r&   ÚoctalF   ó   r=   c                 C   s
   t | dƒS )Nzutf-8)Úunicoder0   r%   r%   r&   r2   [   r6   c                 C   r.   r/   r%   r0   r%   r%   r&   r5   ^   r3   c                 C   r7   )NÚ0r9   r;   r%   r%   r&   r=   a   r>   )Ú	machineryÚutilÚmodule_from_specc                 C   s&   t  | |¡}t  |¡}|j |¡ |S r/   )rB   Úspec_from_file_locationrC   ÚloaderÚexec_module)Ú	module_idÚpathÚspecÚmoduler%   r%   r&   Úload_modulej   s   
rK   c                 C   s   t  | |¡ ¡ }tj| = |S r/   )rA   ÚSourceFileLoaderrK   ÚsysÚmodules)rG   rH   rJ   r%   r%   r&   rK   p   s   c                 C   s:   t |dƒ}zt | ||¡}tj| = |W | ¡  S | ¡  w )NÚrb)ÚopenÚimpÚload_sourcerM   rN   Úclose)rG   rH   ÚfprJ   r%   r%   r&   rK   x   s   
c                 C   s&   |d ur||_ |j|ur| |¡‚|‚r/   )Ú	__cause__Ú__traceback__Úwith_traceback)ÚtpÚvalueÚtbÚcauser%   r%   r&   Úreraise„   s
   

r\   zEdef reraise(tp, value, tb=None, cause=None):
    raise tp, value, tb
c                   C   s   t  ¡ d S )Nr   )rM   Úexc_infor%   r%   r%   r&   Úexception_as“   r>   r^   c                 C   s   | j jS r/   )Ú	__class__Ú__name__)Úexcr%   r%   r&   Úexception_nameš   s   rb   c                 C   s   | d| j  |fi ƒS )z%Create a base class with a metaclass.z%sBase)r`   )ÚmetaÚbaser%   r%   r&   Úwith_metaclass¡   s   re   c                 C   s   t | dƒr| jS t| ƒS )zxGets the string name of a kwarg or vararg
    In Python3.4 a function's args are
    of _ast.arg type not _ast.name
    Úarg)Úhasattrrf   Ústr)Úfunc_argr%   r%   r&   Úarg_stringname©   s   
rj   )NN)7Úcollectionsr   rM   Úversion_infor   Úpy2kÚpy27ÚplatformÚ
startswithÚjythonÚwin32rg   ÚpypyÚ
namedtupler   r'   Úior(   ÚbuiltinsÚcompat_builtinsÚurllib.parser)   r*   Úhtml.entitiesr+   r,   rh   Ústring_typesÚbytesÚbinary_typeÚ	text_typer-   Úbyte_bufferr2   r5   r=   Ú__builtin__Ú	cStringIOÚurllibÚhtmlentitydefsÚ
basestringr?   Ú	importlibrA   rB   rK   rQ   r\   Úexecr^   Úallrb   Úobjectre   rj   r%   r%   r%   r&   Ú<module>   sp   



ÿ




	ÿ