a
XC?h� � @ s� d dl Z d dlmZmZ g d�Zdd� Zdd� Zdd � Zd
d� Zdd
� Z e
� ZG dd� d�ZG dd� de
�ZdZG dd� de�ZG dd� ded�ZG dd� dee�Zdd� ZG dd� de�ZG dd� dee�Zdd � Zd!d"� Zd#d$� ZdS )%� N)�MappingProxyType�DynamicClassAttribute)�EnumMeta�Enum�IntEnum�Flag�IntFlag�auto�uniquec C s t | d�pt | d�pt | d�S )z?
Returns True if obj is a descriptor, False otherwise.
�__get__�__set__�
__delete__)�hasattr)�obj� r �)/opt/alt/python39/lib64/python3.9/enum.py�_is_descriptor s
��r c C sL t | �dkoJ| dd� | dd� ko.dkn oJ| d dkoJ| d dkS )z=
Returns True if a __dunder__ name, False otherwise.
� N� ������__�_�������len��namer r r �
_is_dunder s &�
�
�r c C sL t | �dkoJ| d | d ko&dkn oJ| dd� dkoJ| dd� dkS )z;
Returns True if a _sunder_ name, False otherwise.
r r �����r � r r r r r r �
_is_sunder! s ���r c C sT d| f }t |�dkrL|�|�rL|t |� dkrL|d dksH|d dkrLdS dS d S )Nz_%s__� r r r TF)r �
startswith)�cls_namer �patternr r r �_is_private, s
���
�
�r% c C s dd� }|| _ d| _dS )z,
Make the given class un-picklable.
c S s t d| ��d S )Nz%r cannot be pickled)� TypeError��self�protor r r �_break_on_call_reduce= s z6_make_class_unpicklable.