ÿØÿà JFIF      ÿÛ „ 	 ( %!1!%)+//.383,7(-.+



-%%-////---/-.+/--+------/------/--0+--/-/-----.-----ÿÀ  ¥2" ÿÄ               ÿÄ J  	     ! 1AQ"aq2‘#BR‚¡ÁÑ3br’¢±Âð$CSƒ²á4c“%DsÓñÿÄ              ÿÄ *        !1AQa‘"2q3±ð#b¡ÿÚ   ? ¼QxJQaÍuò¸Zö Úü8,ÐÚú
"SSn<rçù–´âE—^ªBÖ9À\†¸ÔÁT­ÃÛ5
ëd´³Í#Ý;Þ38œî ¶H£M:wÎ3…³…âpÔF&‚FK¸9„â4àGEõªfÿ ‘ñ(ßw­pŽF|È¥ù®häðÍÑ¶¹‘[ÒinÙW¶ùñY˜Q{›K"išÒ[Ú8žë\F¹@-?v"ÔU”,ìöžkÿ {I‡£šÍ?e
ríV
..............................................................................................................................................................................
.............................................................................                                                  
                                                                                                                                                                                     ÿØÿà JFIF      ÿÛ „ 	 ( %!1!%)+//.383,7(-.+



-%%-////---/-.+/--+------/------/--0+--/-/-----.-----ÿÀ  ¥2" ÿÄ               ÿÄ J  	     ! 1AQ"aq2‘#BR‚¡ÁÑ3br’¢±Âð$CSƒ²á4c“%DsÓñÿÄ              ÿÄ *        !1AQa‘"2q3±ð#b¡ÿÚ   ? ¼QxJQaÍuò¸Zö Úü8,ÐÚú
"SSn<rçù–´âE—^ªBÖ9À\†¸ÔÁT­ÃÛ5
ëd´³Í#Ý;Þ38œî ¶H£M:wÎ3…³…âpÔF&‚FK¸9„â4àGEõªfÿ ‘ñ(ßw­pŽF|È¥ù®häðÍÑ¶¹‘[ÒinÙW¶ùñY˜Q{›K"išÒ[Ú8žë\F¹@-?v"ÔU”,ìöžkÿ {I‡£šÍ?e
ríV
..............................................................................................................................................................................
.............................................................................                                                  
                                                                                                                                                                                     U
    e5dE                     @   s  d dl Zd dlZdZd dlmZmZmZ d dlm	Z	 d dlm
Z d dlmZ d dlmZmZ d dlmZ d d	lmZ eekred
eeejdkrd dlmZ eZejdkrejdkree jdd  dk reZd dlmZmZm Z!m"Z# d|ddZ$d}ddZ%i Z&dd Z'ejdkrXd dlm(Z) d dlm*Z+ i Z,dd Z-e-j.rpe'j./dde-_.nejdkrpd dlm0Z) d dlm1Z1m2Z2m3Z3m4Z4m5Z5 d dlm6Z6m7Z7 d dlm8Z8 d~d d!Z9G d"d# d#e8Z:e9e:d$ G d%d& d&e8Z;e9e; G d'd( d(e8Z<e9e< G d)d* d*e8Z=e9e= G d+d, d,e8Z>e9e> ed-ed.krHe=Z?e>Z@n0G d/d0 d0e8Z?e9e? G d1d2 d2e8Z@e9e@ G d3d4 d4e8ZAe9eA G d5d6 d6e8ZBe9eB G d7d8 d8e8ZCe1eCe1eBkreBZCed.ed9kre=ZDe>ZEn0G d:d; d;e8ZDe9eD G d<d= d=e8ZEe9eE G d>d? d?e8ZFeF eF_GeF_He9eF G d@dA dAe8ZIeI eI_GeI_He9eI G dBdC dCe8ZJeJ eJ_GeJ_He9eJ G dDdE dEe8ZKe9eKd$ G dFdG dGe8ZLeLZMe9eL G dHdI dIe8ZNd dJlmOZOmPZPmQZQ G dKdL dLe8ZRG dMdN dNe8ZSdOdP ZTddQdRZUdSdT ZVdUdV ZWG dWdX dXeXZYG dYdZ dZeYZZejdkrG d[d\ d\eYZ[d d]lm\Z\m8Z8 G d^d_ d_e8Z]G d`da daeYZ^G dbdc dceXZ_e_eYZ`e_eZZaejdkreZdddejbZcn,ejdekreZdfejdddg  ZcneZdZcejdkr4e_e[Zee_e^ZfeejgjhZhd dhlmiZimjZj ddidjZke1e@e1eLkrPe@Zle?Zmn6e1e>e1eLkrle>Zle=Zmne1eEe1eLkreEZleDZmd dklmnZnmoZompZpmqZq e'eLeLeLelenZre'eLeLe?eleoZsdldm Ztete:eLe:e:eqZudndo Zvete:eLe?epZwddqdrZxzd dslmyZy W n ezk
r$   Y nX ete:eLe?eyZ{ddtduZ|ejdkr\dvdw Z}dxdy Z~d dzlmZmZ eIZeFZe;e?e=eDfD ]@Ze1edgkreZn&e1ed{kreZne1edkreZqe<e@e>eEfD ]@Ze1edgkreZn&e1ed{kreZne1edkreZq[eT  dS )    Nz1.1.0)Union	StructureArray)_Pointer)CFuncPtr)__version__)
RTLD_LOCALRTLD_GLOBAL)ArgumentErrorcalcsizezVersion number mismatchnt)FormatErrorposixdarwin.   )FUNCFLAG_CDECLFUNCFLAG_PYTHONAPIFUNCFLAG_USE_ERRNOFUNCFLAG_USE_LASTERRORc                 C   sz   t | trD|d krt| d }td| | t| }| }| |_|S t | trntdd |  t|  }| }|S t| d S )N   zctypes.create_string_buffer)	
isinstancebyteslen_sysauditc_charvalueint	TypeErrorinitsizeZbuftypeZbuf r$   '/usr/lib64/python3.8/ctypes/__init__.pycreate_string_buffer/   s    

r&   c                 C   s
   t | |S N)r&   )r"   r#   r$   r$   r%   c_bufferC   s    r(   c                    s   t |ddrtO |ddr,tO |r@td|  zt f W S  tk
r   G  fdddt}|t f< | Y S X d S )N	use_errnoFuse_last_error!unexpected keyword argument(s) %sc                       s   e Zd Z ZZZdS )z CFUNCTYPE.<locals>.CFunctionTypeN__name__
__module____qualname__
_argtypes_	_restype__flags_r$   argtypesflagsrestyper$   r%   CFunctionTypee   s   r7   )	_FUNCFLAG_CDECLpop_FUNCFLAG_USE_ERRNO_FUNCFLAG_USE_LASTERROR
ValueErrorkeys_c_functype_cacheKeyError	_CFuncPtr)r6   r4   kwr7   r$   r3   r%   	CFUNCTYPEK   s    rB   )LoadLibrary)FUNCFLAG_STDCALLc                    s   t |ddrtO |ddr,tO |r@td|  zt f W S  tk
r   G  fdddt}|t f< | Y S X d S )Nr)   Fr*   r+   c                       s   e Zd Z ZZZdS )z$WINFUNCTYPE.<locals>.WinFunctionTypeNr,   r$   r3   r$   r%   WinFunctionType}   s   rE   )	_FUNCFLAG_STDCALLr9   r:   r;   r<   r=   _win_functype_cacher?   r@   )r6   r4   rA   rE   r$   r3   r%   WINFUNCTYPEq   s    rH   )dlopen)sizeofbyref	addressof	alignmentresize)	get_errno	set_errno)_SimpleCDatac                 C   sJ   ddl m} |d kr| j}t| || }}||krFtd| ||f d S )Nr   r   z"sizeof(%s) wrong: %d instead of %d)structr   _type_rJ   SystemError)typtypecoder   ZactualZrequiredr$   r$   r%   _check_size   s    rW   c                       s    e Zd ZdZ fddZ  ZS )	py_objectOc                    s4   zt   W S  tk
r.   dt| j  Y S X d S )Nz
%s(<NULL>))super__repr__r<   typer-   self	__class__r$   r%   r[      s    zpy_object.__repr__)r-   r.   r/   rS   r[   __classcell__r$   r$   r_   r%   rX      s   rX   Pc                   @   s   e Zd ZdZdS )c_shorthNr-   r.   r/   rS   r$   r$   r$   r%   rc      s   rc   c                   @   s   e Zd ZdZdS )c_ushortHNre   r$   r$   r$   r%   rf      s   rf   c                   @   s   e Zd ZdZdS )c_longlNre   r$   r$   r$   r%   rh      s   rh   c                   @   s   e Zd ZdZdS )c_ulongLNre   r$   r$   r$   r%   rj      s   rj   iri   c                   @   s   e Zd ZdZdS )c_intrl   Nre   r$   r$   r$   r%   rm      s   rm   c                   @   s   e Zd ZdZdS )c_uintINre   r$   r$   r$   r%   rn      s   rn   c                   @   s   e Zd ZdZdS )c_floatfNre   r$   r$   r$   r%   rp      s   rp   c                   @   s   e Zd ZdZdS )c_doubledNre   r$   r$   r$   r%   rr      s   rr   c                   @   s   e Zd ZdZdS )c_longdoublegNre   r$   r$   r$   r%   rt      s   rt   qc                   @   s   e Zd ZdZdS )
c_longlongrv   Nre   r$   r$   r$   r%   rw      s   rw   c                   @   s   e Zd ZdZdS )c_ulonglongQNre   r$   r$   r$   r%   rx      s   rx   c                   @   s   e Zd ZdZdS )c_ubyteBNre   r$   r$   r$   r%   rz      s   rz   c                   @   s   e Zd ZdZdS )c_bytebNre   r$   r$   r$   r%   r|      s   r|   c                   @   s   e Zd ZdZdS )r   cNre   r$   r$   r$   r%   r      s   r   c                   @   s   e Zd ZdZdd ZdS )c_char_pzc                 C   s   d| j jt| jf S Nz%s(%s)r`   r-   c_void_pZfrom_bufferr   r]   r$   r$   r%   r[      s    zc_char_p.__repr__Nr-   r.   r/   rS   r[   r$   r$   r$   r%   r      s   r   c                   @   s   e Zd ZdZdS )r   rb   Nre   r$   r$   r$   r%   r      s   r   c                   @   s   e Zd ZdZdS )c_bool?Nre   r$   r$   r$   r%   r      s   r   )POINTERpointer_pointer_type_cachec                   @   s   e Zd ZdZdd ZdS )	c_wchar_pZc                 C   s   d| j jt| jf S r   r   r]   r$   r$   r%   r[      s    zc_wchar_p.__repr__Nr   r$   r$   r$   r%   r      s   r   c                   @   s   e Zd ZdZdS )c_wcharuNre   r$   r$   r$   r%   r     s   r   c                   C   sF   t   t  tjdkr"t  tjtt	_t
jtt_tt d < d S )Nr   )r   clearr>   _osnamerG   r   Z
from_paramr   r   r   r   r   r$   r$   r$   r%   _reset_cache  s    
r   c                 C   s   t | trh|d krBttdkr6tdd | D d }nt| d }td| | t| }| }| |_|S t | t	rtdd |  t|  }| }|S t
| d S )N   c                 s   s"   | ]}t |d krdndV  qdS )i  r   r   N)ord).0r~   r$   r$   r%   	<genexpr>  s     z(create_unicode_buffer.<locals>.<genexpr>r   zctypes.create_unicode_buffer)r   strrJ   r   sumr   r   r   r   r   r    r!   r$   r$   r%   create_unicode_buffer  s     

r   c                 C   sL   t |d d k	rtdt| t kr,td| | | t |< t t| = d S )Nz%This type already exists in the cachezWhat's this???)r   getRuntimeErroridZset_type)r   clsr$   r$   r%   SetPointerType.  s    
r   c                 C   s   | | S r'   r$   )rU   r   r$   r$   r%   ARRAY8  s    r   c                   @   sL   e Zd ZeZeZdZdZdZ	e
ddddfddZdd Zd	d
 Zdd ZdS )CDLLz<uninitialized>r   NFc           	         s   |_ j |r tO  |r$ tO  tjdrV|rV|drVd|krV|tj	tj
B O }tjdkr|d k	rn|}n6dd l}|j}d|ksd|kr|j _ ||jO }G  fdd	d	t}|_|d krtj |_n|_d S )
NZaix)z.a(r   r   /\c                       s   e Zd Z ZjZdS )zCDLL.__init__.<locals>._FuncPtrN)r-   r.   r/   r2   _func_restype_r1   r$   r5   r^   r$   r%   _FuncPtro  s   r   )_name_func_flags_r:   r;   r   platform
startswithendswithr   ZRTLD_MEMBERRTLD_NOWr   r   Z!_LOAD_LIBRARY_SEARCH_DEFAULT_DIRSZ_getfullpathnameZ!_LOAD_LIBRARY_SEARCH_DLL_LOAD_DIRr@   r   _dlopen_handle)	r^   r   modeZhandler)   r*   Zwinmoder   r   r$   r   r%   __init__S  s,    

zCDLL.__init__c                 C   s8   d| j j| j| jtjd d @ t| tjd d @ f S )Nz<%s '%s', handle %x at %#x>r   r   )r`   r-   r   r   r   maxsizer   r]   r$   r$   r%   r[   y  s    
zCDLL.__repr__c                 C   s6   | dr|drt|| |}t| || |S )N__)r   r   AttributeError__getitem__setattr)r^   r   funcr$   r$   r%   __getattr__  s
    
zCDLL.__getattr__c                 C   s"   |  || f}t|ts||_|S r'   )r   r   r   r-   )r^   Zname_or_ordinalr   r$   r$   r%   r     s    
zCDLL.__getitem__)r-   r.   r/   r8   r   rm   r   r   r   r   DEFAULT_MODEr   r[   r   r   r$   r$   r$   r%   r   >  s   
&r   c                   @   s   e Zd ZeeB ZdS )PyDLLN)r-   r.   r/   r8   _FUNCFLAG_PYTHONAPIr   r$   r$   r$   r%   r     s   r   c                   @   s   e Zd ZeZdS )WinDLLN)r-   r.   r/   rF   r   r$   r$   r$   r%   r     s   r   )_check_HRESULTrQ   c                   @   s   e Zd ZdZeZdS )HRESULTri   N)r-   r.   r/   rS   r   Z_check_retval_r$   r$   r$   r%   r     s   
r   c                   @   s   e Zd ZeZeZdS )OleDLLN)r-   r.   r/   rF   r   r   r   r$   r$   r$   r%   r     s   r   c                   @   s,   e Zd Zdd Zdd Zdd Zdd Zd	S )
LibraryLoaderc                 C   s
   || _ d S r'   _dlltype)r^   Zdlltyper$   r$   r%   r     s    zLibraryLoader.__init__c                 C   s.   |d dkrt || |}t| || |S )Nr   _)r   r   r   )r^   r   Zdllr$   r$   r%   r     s
    
zLibraryLoader.__getattr__c                 C   s
   t | |S r'   )getattrr^   r   r$   r$   r%   r     s    zLibraryLoader.__getitem__c                 C   s
   |  |S r'   r   r   r$   r$   r%   rC     s    zLibraryLoader.LoadLibraryN)r-   r.   r/   r   r   r   rC   r$   r$   r$   r%   r     s   r   z
python dllcygwinzlibpython%d.%d.dllr   )get_last_errorset_last_errorc                 C   s0   | d krt  } |d kr"t|  }td |d | S r'   )GetLastErrorr   stripOSError)codeZdescrr$   r$   r%   WinError  s
    r   )_memmove_addr_memset_addr_string_at_addr
_cast_addrc                    s   G  fdddt }|S )Nc                       s   e Zd Z ZZeeB ZdS )z!PYFUNCTYPE.<locals>.CFunctionTypeN)r-   r.   r/   r0   r1   r8   r   r2   r$   r4   r6   r$   r%   r7     s   r7   )r@   )r6   r4   r7   r$   r   r%   
PYFUNCTYPE  s    r   c                 C   s   t | | |S r'   )_cast)objrU   r$   r$   r%   cast  s    r   c                 C   s
   t | |S r'   )
_string_atZptrr#   r$   r$   r%   	string_at  s    r   )_wstring_at_addrc                 C   s
   t | |S r'   )_wstring_atr   r$   r$   r%   
wstring_at
  s    r   c                 C   sB   zt dt t dg}W n tk
r.   Y dS X || ||S d S )Ncomtypes.server.inprocserver*i)
__import__globalslocalsImportErrorDllGetClassObject)ZrclsidZriidZppvccomr$   r$   r%   r     s
    r   c                  C   s8   zt dt t dg} W n tk
r.   Y dS X |  S )Nr   r   r   )r   r   r   r   DllCanUnloadNow)r   r$   r$   r%   r     s
    r   )BigEndianStructureLittleEndianStructure   )N)N)N)N)NN)r   )r   )osr   sysr   r   Z_ctypesr   r   r   r   r   r@   Z_ctypes_versionr   r	   r
   rR   r   Z	_calcsize	Exceptionr   r   r   r   r   unamereleasesplitr   r8   r   r   r   r:   r   r;   r&   r(   r>   rB   rC   r   rD   rF   rG   rH   __doc__replacerI   rJ   rK   rL   rM   rN   rO   rP   rQ   rW   rX   rc   rf   rh   rj   rm   rn   rp   rr   rt   rw   rx   rz   Z__ctype_le__Z__ctype_be__r|   r   r   r   Zc_voidpr   r   r   r   r   r   r   r   r   r   objectr   r   r   r   r   r   r   ZcdllZpydllZ	dllhandleZ	pythonapiversion_infoZwindllZoledllZkernel32r   r   r   r   Zc_size_tZ	c_ssize_tr   r   r   r   ZmemmoveZmemsetr   r   r   r   r   r   r   r   r   r   r   Zctypes._endianr   r   Zc_int8Zc_uint8ZkindZc_int16Zc_int32Zc_int64Zc_uint16Zc_uint32Zc_uint64r$   r$   r$   r%   <module>   s2  


!




N	


      