???<!-- GIF89;a -->
123123123123
.....................................................................................................................................???<!-- GIF89;a -->
123123123123
.....................................................................................................................................B
    YI~d&                 @   s  d dl Z dd ZeeZedd ZeejZeejZee j	Z
dd Zee Zdd	 Ze ZeeZe  d
d Ze ZeeZG dd dZee jZeeZeg jZeejZee jZeejZ ee!jd Z"ee Z#ye$W n: e$k
r,   e % d Z&ee&Z'ee&j(Z)dZ&[&Y nX eejZ*eej+Z,[ [[[[[d!ddZ-dd Z.d"ddZ/dd Z0G dd dZ1G dd dZ2dd Z3dd  e4 D Z5dS )#    Nc               C   s   d S )N r   r   r   */opt/alt/python37/lib64/python3.7/types.py_f       r   c               C   s   d S )Nr   r   r   r   r   <lambda>   r   r   c               c   s
   dV  d S )N   r   r   r   r   r   _g   s    r   c                  s   d S )Nr   r   r   r   r   _c   r   r	   c               C  s
   d V  d S )Nr   r   r   r   r   _ag   s    r
   c               @   s   e Zd Zdd ZdS )_Cc             C   s   d S )Nr   )selfr   r   r   _m!   r   z_C._mN)__name__
__module____qualname__r   r   r   r   r   r       s   r   fromkeys   r   c             C   sJ   t |}t| ||\}}}|d k	r*|| ||k	r:||d< || ||f|S )N__orig_bases__)resolve_basesprepare_class)namebaseskwds	exec_bodyresolved_basesmetansr   r   r   	new_class>   s    r   c             C   s   t | }d}d}xvt| D ]j\}}t|tr.qt|ds:q|| }d}t|ts\tdq|||| || d < |t|d 7 }qW |s| S t|S )NFr   __mro_entries__Tz#__mro_entries__ must return a tupler   )	list	enumerate
isinstancetypehasattrr   tuple	TypeErrorlen)r   	new_basesupdatedshiftibasenew_baser   r   r   r   H   s"    




r   c             C   s~   |d kri }nt |}d|kr*|d}n|r<t|d }nt}t|trTt||}t|drp|j| |f|}ni }|||fS )N	metaclassr   __prepare__)dictpopr"   r!   _calculate_metar#   r.   )r   r   r   r   r   r   r   r   r   ]   s    


r   c             C   sB   | }x8|D ]0}t |}t||r"q
t||r2|}q
tdq
W |S )Nzxmetaclass conflict: the metaclass of a derived class must be a (non-strict) subclass of the metaclasses of all its bases)r"   
issubclassr%   )r   r   winnerr+   	base_metar   r   r   r1   }   s    


r1   c               @   sH   e Zd ZdddZdddZdd Zdd	 Zd
d Zdd Zdd Z	dS )DynamicClassAttributeNc             C   s>   || _ || _|| _|p|j| _|d k| _tt|dd| _d S )N__isabstractmethod__F)fgetfsetfdel__doc__overwrite_docboolgetattrr6   )r   r7   r8   r9   docr   r   r   __init__   s    
zDynamicClassAttribute.__init__c             C   s6   |d kr| j r| S t n| jd kr,td| |S )Nzunreadable attribute)r6   AttributeErrorr7   )r   instance
ownerclassr   r   r   __get__   s    
zDynamicClassAttribute.__get__c             C   s"   | j d krtd|  || d S )Nzcan't set attribute)r8   r@   )r   rA   valuer   r   r   __set__   s    
zDynamicClassAttribute.__set__c             C   s    | j d krtd|  | d S )Nzcan't delete attribute)r9   r@   )r   rA   r   r   r   
__delete__   s    
z DynamicClassAttribute.__delete__c             C   s8   | j r|jnd }t| || j| j|p(| j}| j |_ |S )N)r;   r:   r"   r8   r9   )r   r7   fdocresultr   r   r   getter   s    zDynamicClassAttribute.getterc             C   s$   t | | j|| j| j}| j|_|S )N)r"   r7   r9   r:   r;   )r   r8   rH   r   r   r   setter   s    zDynamicClassAttribute.setterc             C   s$   t | | j| j|| j}| j|_|S )N)r"   r7   r8   r:   r;   )r   r9   rH   r   r   r   deleter   s    zDynamicClassAttribute.deleter)NNNN)N)
r   r   r   r?   rC   rE   rF   rI   rJ   rK   r   r   r   r   r5      s   


	r5   c               @   s   e Zd Zdd Zdd Zdd Zdd Zed	d
 Zedd Z	edd Z
edd ZeZe	Ze
ZeZdd Zdd ZeZdS )_GeneratorWrapperc             C   s2   || _ |jtk| _t|dd | _t|dd | _d S )Nr   r   )_GeneratorWrapper__wrapped	__class__GeneratorType_GeneratorWrapper__isgenr=   r   r   )r   genr   r   r   r?      s    z_GeneratorWrapper.__init__c             C   s   | j |S )N)rM   send)r   valr   r   r   rR      s    z_GeneratorWrapper.sendc             G   s   | j j|f| S )N)rM   throw)r   tprestr   r   r   rT      s    z_GeneratorWrapper.throwc             C   s
   | j  S )N)rM   close)r   r   r   r   rW      s    z_GeneratorWrapper.closec             C   s   | j jS )N)rM   gi_code)r   r   r   r   rX      s    z_GeneratorWrapper.gi_codec             C   s   | j jS )N)rM   gi_frame)r   r   r   r   rY      s    z_GeneratorWrapper.gi_framec             C   s   | j jS )N)rM   
gi_running)r   r   r   r   rZ      s    z_GeneratorWrapper.gi_runningc             C   s   | j jS )N)rM   gi_yieldfrom)r   r   r   r   r[      s    z_GeneratorWrapper.gi_yieldfromc             C   s
   t | jS )N)nextrM   )r   r   r   r   __next__   s    z_GeneratorWrapper.__next__c             C   s   | j r| jS | S )N)rP   rM   )r   r   r   r   __iter__   s    z_GeneratorWrapper.__iter__N)r   r   r   r?   rR   rT   rW   propertyrX   rY   rZ   r[   cr_codecr_frame
cr_runningcr_awaitr]   r^   	__await__r   r   r   r   rL      s   rL   c                s   t stdjtkrtdd jtkrjj}|d@ r@S |d@ rj}t|j|j	|j
|j|jdB |j|j|j|j|j|j|j|j|j|j_S dd l}dd l | fdd}|S )	Nz$types.coroutine() expects a callable__code__i         r   c                 sR   | |}|j tks*|j tkr.|jjd@ r.|S t| jrNt| jsNt|S |S )Nrg   )	rN   CoroutineTyperO   rX   co_flagsr!   	Generator	CoroutinerL   )argskwargscoro)_collections_abcfuncr   r   wrapped  s    

zcoroutine.<locals>.wrapped)callabler%   rN   FunctionTyper=   CodeTypere   ri   co_argcountco_kwonlyargcount
co_nlocalsco_stacksizeco_code	co_constsco_namesco_varnamesco_filenameco_nameco_firstlineno	co_lnotabco_freevarsco_cellvars	functoolsro   wraps)rp   ri   cor   rq   r   )ro   rp   r   	coroutine   s,    

r   c             C   s    g | ]}|d d dkr|qS )Nr   _r   ).0nr   r   r   
<listcomp>'  s    r   )r   NN)r   N)6sysr   r"   rs   
LambdaTypere   rt   __dict__MappingProxyTypeimplementationSimpleNamespacer   rO   r	   rh   rW   r
   AsyncGeneratorTyper   r   
MethodTyper&   BuiltinFunctionTypeappendBuiltinMethodTypeobjectr?   WrapperDescriptorType__str__MethodWrapperTypestrjoinMethodDescriptorTyper/   ClassMethodDescriptorType
ModuleTyper%   exc_infotbTracebackTypetb_frame	FrameTypeGetSetDescriptorType__globals__MemberDescriptorTyper   r   r   r1   r5   rL   r   globals__all__r   r   r   r   <module>   sV   







 




 :%: