
    =Og                        	 d  Z  G d de          Z G d de          Z G d de          Z	 ddlmZm	Z	m
Z
mZmZmZmZmZ  G d	 d
e          Zn# e$ r ddlmZmZ de_        Y nw xY wd Z G d de          ZdS )c                     	 d| _         | S NT)__isabstractmethod__)funcobjs    /usr/lib64/python3.11/abc.pyabstractmethodr      s      $(G N    c                   $     e Zd Z	 dZ fdZ xZS )abstractclassmethodTc                 X    d|_         t                                          |           d S r   r   super__init__selfcallable	__class__s     r   r   zabstractclassmethod.__init__+   )    (,%"""""r   __name__
__module____qualname__r   r   __classcell__r   s   @r   r
   r
      E        
  # # # # # # # # #r   r
   c                   $     e Zd Z	 dZ fdZ xZS )abstractstaticmethodTc                 X    d|_         t                                          |           d S r   r   r   s     r   r   zabstractstaticmethod.__init__?   r   r   r   r   s   @r   r   r   0   r   r   r   c                       e Zd Z	 dZdS )abstractpropertyTN)r   r   r   r    r   r   r   r   D   s        
  r   r       )get_cache_token	_abc_init_abc_register_abc_instancecheck_abc_subclasscheck	_get_dump_reset_registry_reset_cachesc                   F     e Zd Z	  fdZd Zd Zd Zd	dZd Zd Z	 xZ
S )
ABCMetac                `     t                      j        | |||fi |}t          |           |S N)r   __new__r#   )mclsnamebases	namespacekwargsclsr   s         r   r.   zABCMeta.__new__i   s6    !%''/$eYII&IICcNNNJr   c                 $    	 t          | |          S r-   )r$   r4   subclasss     r   registerzABCMeta.registern   s     !h///r   c                 $    	 t          | |          S r-   )r%   )r4   instances     r   __instancecheck__zABCMeta.__instancecheck__u       9%c8444r   c                 $    	 t          | |          S r-   )r&   r6   s     r   __subclasscheck__zABCMeta.__subclasscheck__y   r<   r   Nc                 R   	 t          d| j         d| j         |           t          dt                       |           t	          |           \  }}}}t          d||           t          d||           t          d||           t          d||           d S )	NzClass: .)filezInv. counter: z_abc_registry: z_abc_cache: z_abc_negative_cache: z_abc_negative_cache_version: )printr   r   r"   r'   )r4   rA   _abc_registry
_abc_cache_abc_negative_cache_abc_negative_cache_versions         r   _dump_registryzABCMeta._dump_registry}   s    9?CN??S-=??dKKKK6?#4#466TBBBB,5cNN*]J(;(5M55DAAAA///d;;;;A*=AAMMMMQ2MQQ     r   c                 &    	 t          |            d S r-   )r(   r4   s    r   _abc_registry_clearzABCMeta._abc_registry_clear   s    @C     r   c                 &    	 t          |            d S r-   )r)   rI   s    r   _abc_caches_clearzABCMeta._abc_caches_clear   s    >#r   r-   )r   r   r   r.   r8   r;   r>   rG   rJ   rL   r   r   s   @r   r+   r+   \   s        		 	 	 	 	
	0 	0 	0	5 	5 	5	5 	5 	5
	 
	 
	 
		! 	! 	!	 	 	 	 	 	 	r   r+   )r+   r"   abcc                    	 t          | d          s| S t                      }| j        D ]M}t          |dd          D ]9}t          | |d           }t          |dd          r|                    |           :N| j                                        D ]+\  }}t          |dd          r|                    |           ,t          |          | _        | S )N__abstractmethods__r    r   F)	hasattrset	__bases__getattradd__dict__items	frozensetrO   )r4   	abstractssclsr0   values        r   update_abstractmethodsr[      s     3-..  
I  $ $D"7<< 	$ 	$DCt,,Eu4e<< $d###	$
 |))++    e50%88 	 MM$'	22CJr   c                       e Zd Z	 dZdS )ABCr    N)r   r   r   	__slots__r    r   r   r]   r]      s         IIIr   r]   )	metaclassN)r   classmethodr
   staticmethodr   propertyr   _abcr"   r#   r$   r%   r&   r'   r(   r)   typer+   ImportError_py_abcr   r[   r]   r    r   r   <module>rg      s   :  *# # # # #+ # # #(# # # # #< # # #(         x       ;6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 63 3 3 3 3$ 3 3 3 3	    00000000Gt# # #L    G      s   A A*)A*