Sindbad~EG File Manager

Current Path : /usr/local/lib/python3.11/test/__pycache__/
Upload File :
Current File : //usr/local/lib/python3.11/test/__pycache__/test_enum.cpython-311.pyc

�

SԚg���f
�ddlZddlZddlZddlZddlZddlZddlZddlZddlZddl	Z	ddl
Zddlm
Z
ddlmZddlmZmZmZmZmZmZmZmZmZddlmZmZmZmZmZmZddlmZm Z m!Z!m"Z"m#Z#ddlm$Z$m%Z%m&Z&ddl'm(Z(dd	l)m*Z*m+Z+m,Z,m-Z-dd
l.m/Z/ddl0m1Z1m2Z2ddl0m3Z3dd
l4m5Z5ddlm6Z6ej7dd�Z8d�Z9e:Z;e;�<d��dZ=	Gd�de��Z>n#e?$rZ@e@Z>YdZ@[@ndZ@[@wwxYw	Gd�deAe��ZBn#e?$rZ@e@ZBYdZ@[@ndZ@[@wwxYw	Gd�deCe��ZDn#e?$rZ@e@ZDYdZ@[@ndZ@[@wwxYw	Gd�de��ZEn#e?$rZ@e@ZEYdZ@[@ndZ@[@wwxYwGd�de��ZFGd�de��ZGGd�d e��ZHGd!�d"e��ZI	ed#d$e:�%��ZJn#e?$rZ@e@ZJYdZ@[@ndZ@[@wwxYw	ed&d'��ZKn#e?$rZ@e@ZKYdZ@[@ndZ@[@wwxYw	ed(d)d*�+��ZLn#e?$rZ@e@ZLYdZ@[@ndZ@[@wwxYw	Gd,�d-e��ZMn#e?$rYnwxYwd�d.�ZNd/�ZOGd0�d1ejP��ZQGd2�d3��ZRejSGd4�d5eej�6����ZTejSGd7�d8eej�6����ZUejSGd9�d:e����ZVGd;�d<��ZWGd=�d>��ZXGd?�d@��ZYGdA�dB��ZZGdC�dD��Z[GdE�dFeWeXejP��Z\GdG�dHeWeXe[ejP��Z]GdI�dJeWeZejP��Z^GdK�dLeWeZejP��Z_GdM�dNeWeZe[ejP��Z`GdO�dPeWeYejP��ZaGdQ�dReWeYejP��ZbGdS�dTeWeYe[ejP��ZcGdU�dVeWeYejP��ZdGdW�dXeWeZejP��ZeGdY�dZeWeYejP��ZfGd[�d\eWeZejP��ZgGd]�d^ejP��ZhGd_�d`ejP��ZiGda�dbejP��ZjGdc�ddejP��ZkGde�dfejP��ZlGdg�dhejP��ZmGdi�djejP��ZnGdk�dlejP��ZoGdm�dnejP��ZpdoZqdpZrGdq�drejP��ZsGds�dtejP��ZtduZuduZvduZwduZxduZyduZzduZ{duZ|duZ}duZ~duZduZ�dvZ�dwZ�duZ�dxZ�dyZ�dzZ�d{Z�d|Z�Gd}�d~��Z�Gd�d�ejP��Z�d��Z�d��Z�e���Z�e:d�krej���dSdS)��N)�OrderedDict��date)	�Enum�EnumMeta�IntEnum�StrEnum�EnumType�Flag�IntFlag�unique�auto)�STRICT�CONFORM�EJECT�KEEP�_simple_enum�_test_simple_enum)�verify�UNIQUE�
CONTINUOUS�NAMED_FLAGS�ReprEnum)�member�	nonmember�_iter_bits_lsb)�StringIO)�dumps�loads�
PicklingError�HIGHEST_PROTOCOL)�support)�	ALWAYS_EQ�	REPO_ROOT)�threading_helper)�dedent)�	timedelta�c�r�|�tjt����tj�td��}tj�|��rA|�tj	|dtj
tjz�����tj�td��}tj�|��rA|�tj	|dtj
tjz�����|S)NzDoc/library/enum.rstF)�module_relative�optionflagszDoc/howto/enum.rst)�addTests�doctest�DocTestSuite�enum�os�path�joinr$�exists�DocFileSuite�ELLIPSIS�NORMALIZE_WHITESPACE)�loader�tests�ignore�	lib_tests�howto_testss     �+/usr/local/lib/python3.11/test/test_enum.py�
load_testsr=s���	�N�N�7�'��-�-�.�.�.�����Y�(>�?�?�I�	�w�~�~�i� � ��
���w�+�� %�#�,�W�-I�I����	�	�	�
�'�,�,�y�*>�?�?�K�	�w�~�~�k�"�"��
���w�+�� %�#�,�W�-I�I����	�	�	�
�L��.���c��eZdZdZdZdZdS)�Stooges�r(�N��__name__�
__module__�__qualname__�LARRY�CURLY�MOE�r>r<rBrB4��������������r>rBc��eZdZdZdZdZdS)�
IntStoogesrCr(rDNrErLr>r<rOrO<rMr>rOc��eZdZdZdZdZdS)�FloatStoogesg=
ףp=�?g�(\��@g�R$_	$	@NrErLr>r<rQrQDs�������������r>rQc��eZdZdZdZdZdZdS)�FlagStoogesrCr(��N�rFrGrHrIrJrK�BIGrLr>r<rSrSLs"���������������r>rSc�"�eZdZdZdZdZdZdZdS)�FlagStoogesWithZerorrCr(rTrUN�rFrGrH�NOFLAGrIrJrKrWrLr>r<rYrYT�'������
�F�
�E�
�E�
�C�

�C�C�Cr>rYc��eZdZdZdZdZdZdS)�IntFlagStoogesrCr(rTrUNrVrLr>r<r^r^[s"������
�E�
�E�
�C�

�C�C�Cr>r^c�"�eZdZdZdZdZdZdZdS)�IntFlagStoogesWithZerorrCr(rTrUNrZrLr>r<r`r`ar\r>r`c��eZdZdZdZdS)�Name�Guido van RossumzBarry WarsawN)rFrGrH�BDFL�FLUFLrLr>r<rbrbis�������D��E�E�Er>rb�Questionzwho what when where why��module�Answerzhim this then there because�Theoryzrule law supposition�spanish_inquisition)�qualnamec��eZdZdZdZdZdS)�FruitrCr(rDN)rFrGrH�TOMATO�BANANA�CHERRYrLr>r<rnrn~s�������������r>rnc	��|�|}ttdz��D]*}|tt||�����|���+dS�NrC)�protocol)�ranger!rr)�	assertion�source�targetrts    r<�test_pickle_dump_loadry�sa��
�~����*�Q�.�/�/�C�C���	�%��f�x�8�8�8�9�9�6�B�B�B�B�C�Cr>c��ttdz��D]6}||��5t||���ddd��n#1swxYwY�7dSrs)rur!r)rv�	exception�objrts    r<�test_pickle_exceptionr}�s����*�Q�.�/�/�*�*��
�Y�y�
!�
!�	*�	*��#��)�)�)�)�	*�	*�	*�	*�	*�	*�	*�	*�	*�	*�	*����	*�	*�	*�	*��*�*s�A�A	�
A	c�@�eZdZdZdZdZdZdZd�Zd�Z	d�Z
d	�Zd
�ZdS)�TestHelpers��_bad_�_good_�	_what_ho_��__mal__�__bien__�__que_que__��_MyEnum__private�_MyEnum__still_private��_MyEnum__private_�_MyEnum__also_private_��okay�
_semi_private�_weird__�	_MyEnum__c��Gd�d��}dD]k}|��}|�tj|����t||d��|�tj|�����ldS)Nc��eZdZdS)�+TestHelpers.test_is_descriptor.<locals>.fooN�rFrGrHrLr>r<�foor����������Dr>r�)�__get__�__set__�
__delete__rC)�assertFalser/�_is_descriptor�setattr�
assertTrue)�selfr��attrr|s    r<�test_is_descriptorzTestHelpers.test_is_descriptor�s���	�	�	�	�	�	�	�	�6�	6�	6�D��#�%�%�C����T�0��5�5�6�6�6��C��q�!�!�!��O�O�D�/��4�4�5�5�5�5�		6�	6r>c��|j|jzD]-}|�tj|��d|z���.|j|jz|jzD]-}|�tj|��d|z���.dD])}|�tj|�����*dD])}|�tj|�����*dS)N�%r is a not sunder name?�%r is a sunder name?)�_a_�_aa_)
�a�a_�_a�__a�a__�__a__�_a__�__a_�_�__�___�____�_____�	�sunder_names�private_and_sunder_namesr�r/�
_is_sunder�dunder_names�
private_names�random_namesr��r��name�ss   r<�test_sunderzTestHelpers.test_sunder�s����%��(E�E�	V�	V�D��O�O�D�O�D�1�1�3M�PT�3T�U�U�U�U��%��(:�:�T�=N�N�	S�	S�D����T�_�T�2�2�4J�T�4Q�R�R�R�R� �	0�	0�A��O�O�D�O�A�.�.�/�/�/�/�/�	1�	1�A����T�_�Q�/�/�0�0�0�0�	1�	1r>c��|jD]-}|�tj|��d|z���.|j|jz|jz|jzD]-}|�tj|��d|z���.dD])}|�tj|�����*dD])}|�tj|�����*dS)N�%r is a not dunder name?�%r is a dunder name?)r��__aa__)
r�r�r�r�r�r�r�r�r�r�r�r�r��	r�r�r/�
_is_dunderr�r�r�r�r�r�s   r<�test_dunderzTestHelpers.test_dunder�s����%�	V�	V�D��O�O�D�O�D�1�1�3M�PT�3T�U�U�U�U��%��(:�:�T�=Z�Z�]a�]n�n�	S�	S�D����T�_�T�2�2�4J�T�4Q�R�R�R�R�$�	0�	0�A��O�O�D�O�A�.�.�/�/�/�/�/�	1�	1�A����T�_�Q�/�/�0�0�0�0�	1�	1r>c��|j|jzD]+}|�tjd|��d���,|j|jz|jzD]+}|�tjd|��d���,dS�N�MyEnumz%r is a not private name?z%r is a private name?�	r�r�r�r/�_is_privater�r�r�r��r�r�s  r<�test_is_privatezTestHelpers.test_is_private�����&��)F�F�	[�	[�D��O�O�D�,�X�t�<�<�>Y�Z�Z�Z�Z��%��(9�9�D�<M�M�	X�	X�D����T�-�h��=�=�?V�W�W�W�W�	X�	Xr>c���|�ttd����gd���|�tdttd����dS)N��rCr(rTz-8 is not a positive integeri����)�assertEqual�listr�assertRaisesRegex�
ValueError�r�s r<�test_iter_bits_lsbzTestHelpers.test_iter_bits_lsb�sW������n�Q�/�/�0�0�)�)�)�<�<�<����z�+I�4�Q_�`b�Qc�Qc�d�d�d�d�dr>N)
rFrGrHr�r�r�r�r�r�r�r�r�r�rLr>r<rr�s�������2�L�7�L�@�M�L��C�L�6�6�6�	1�	1�	1�	1�	1�	1�X�X�X�e�e�e�e�er>rc��eZdZdd�Zd�ZdS)�
classpropertyNc�T�||_||_||_|�	|�|j}||_dS�N)�fget�fset�fdel�__doc__)r�r�r�r��docs     r<�__init__zclassproperty.__init__�s3����	���	���	��;�4�+��,�C�����r>c�,�|�|��Sr�)r�)r��instance�
ownerclasss   r<r�zclassproperty.__get__�s���y�y��$�$�$r>)NNNN)rFrGrHr�r�rLr>r<r�r��s7����������%�%�%�%�%r>r�c�N�eZdZdZe��Ze��Ze��ZdS)�HeadlightsKrN)rFrGrH�OFF_Kr�
LOW_BEAM_K�HIGH_BEAM_K�FOG_KrLr>r<r�r���4������
�E�����J��$�&�&�K��D�F�F�E�E�Er>r���boundaryc�N�eZdZdZe��Ze��Ze��ZdS)�HeadlightsCrN)rFrGrH�OFF_Cr�
LOW_BEAM_C�HIGH_BEAM_C�FOG_CrLr>r<r�r��r�r>r�c��eZdZdZdZdS)�NoNamerCr(N�rFrGrH�ONE�TWOrLr>r<r�r��s������
�C�
�C�C�Cr>r�c�<�eZdZdZdZd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Ze
jedkd��d
���Ze
jedkd��d���Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Z d�Z!d �Z"d!�Z#d"�Z$d#�Z%d$�Z&dS)%�
_EnumTestszX
    Test for behavior that is the same across the different types of enumerations.
    Nc���Gd�d�j��}G�fd�d|��}|�_Gd�d�j��}|�_Gd�d�j��}|�_Gd	�d
�j��}|�_Gd�d�j��}Gd
�d|��}|�_d�_gd��_t|t��r
�j�_
nc|jtur
gd��_
nKt�jt��r!gd��_
d�_|d���_n�j
pgd��_
t�dd��s�j
�_dSdS)Nc�.�eZdZejd���ZdS)�"_EnumTests.setUp.<locals>.BaseEnumc��d|jzS)Nz%s is first!�r�r�s r<�firstz(_EnumTests.setUp.<locals>.BaseEnum.first�s��%��	�1�1r>N)rFrGrHr/�propertyrrLr>r<�BaseEnumr��s/������
�]�
2�
2��]�
2�
2�
2r>rc�z��eZdZe��Ze��Ze��Ze�je	��rdZ
dSeZ
dS)�"_EnumTests.setUp.<locals>.MainEnumrDN)rFrGrHrr�second�third�
issubclass�	enum_typer�duper�s�r<�MainEnumr�sT��������D�F�F�E��T�V�V�F��D�F�F�E��z�$�.�$�/�/�
��������r>r
c�(�eZdZd�Ze��ZdS)�$_EnumTests.setUp.<locals>.NewStrEnumc�4�|j���Sr��r��upperr�s r<�__str__z,_EnumTests.setUp.<locals>.NewStrEnum.__str__����y���(�(�(r>N)rFrGrHrrrrLr>r<�
NewStrEnumr�(������
)�
)�
)��D�F�F�E�E�Er>rc�(�eZdZd�Ze��ZdS)�'_EnumTests.setUp.<locals>.NewFormatEnumc�4�|j���Sr�r�r��specs  r<�
__format__z2_EnumTests.setUp.<locals>.NewFormatEnum.__format__
rr>N)rFrGrHrrrrLr>r<�
NewFormatEnumr	rr>rc�.�eZdZd�Zd�Ze��ZdS)�*_EnumTests.setUp.<locals>.NewStrFormatEnumc�4�|j���Sr��r��titler�s r<rz2_EnumTests.setUp.<locals>.NewStrFormatEnum.__str__rr>c�P�d�t|j����S�N��r2�reversedr�rs  r<rz5_EnumTests.setUp.<locals>.NewStrFormatEnum.__format__����w�w�x��	�2�2�3�3�3r>N)rFrGrHrrrrrLr>r<�NewStrFormatEnumrs7������
)�
)�
)�
4�
4�
4��D�F�F�E�E�Er>r&c��eZdZd�Zd�ZdS)�%_EnumTests.setUp.<locals>.NewBaseEnumc�4�|j���Sr�rr�s r<rz-_EnumTests.setUp.<locals>.NewBaseEnum.__str__rr>c�P�d�t|j����Sr!r#rs  r<rz0_EnumTests.setUp.<locals>.NewBaseEnum.__format__r%r>N)rFrGrHrrrLr>r<�NewBaseEnumr(s2������
)�
)�
)�
4�
4�
4�
4�
4r>r+c�"�eZdZe��ZdS)�$_EnumTests.setUp.<locals>.NewSubEnumN)rFrGrHrrrLr>r<�
NewSubEnumr-s�������D�F�F�E�E�Er>r.F)rrr)�1�2�3r�T��rCr(rD�
source_values)rr
rrr&r.�is_flag�namesrr	�values�
_member_type_�strr�dupe2�getattrr4)r�rr
rrr&r+r.s`       r<�setUpz_EnumTests.setUp�s-���	2�	2�	2�	2�	2�t�~�	2�	2�	2�	�	�	�	�	�	�	�x�	�	�	�!��
�	�	�	�	�	���	�	�	�%���	�	�	�	�	�D�N�	�	�	�+���	�	�	�	�	�t�~�	�	�	�!1���	4�	4�	4�	4�	4�$�.�	4�	4�	4�
	�	�	�	�	��	�	�	�$������1�1�1��
��h��(�(�		3��*�D�K�K�
�
#�s�
*�
*�)�/�/�D�K�K�
����
-�
-�	3�#�)�)�D�K��D�L�!��!���D�J�J��+�2����D�K��t�_�e�4�4�	-�!%��D����	-�	-r>c��|�|�|��|�|j����dSr�)r��format�value�r�rrs   r<�assertFormatIsValuez_EnumTests.assertFormatIsValue0s8��������V�,�,�d�k�k�&�,�.G�.G�H�H�H�H�Hr>c��|�|�|��|�t|������dSr�)r�r>r9r@s   r<�assertFormatIsStrz_EnumTests.assertFormatIsStr3s<��������V�,�,�d�k�k�#�f�+�+�.F�.F�G�G�G�G�Gr>c��Gd�d|j��}|�t|d����|`|�t|d����|�t��5|`ddd��n#1swxYwY|�t��5|`ddd��n#1swxYwY|�t��5|j`	ddd��dS#1swxYwYdS)Nc�P�eZdZe��Ze��Ze��Zd�ZdS)�2_EnumTests.test_attribute_deletion.<locals>.Seasonc��dSr�rL)�clss r<�spamz7_EnumTests.test_attribute_deletion.<locals>.Season.spam<����r>N)rFrGrHr�SPRING�SUMMER�AUTUMNrIrLr>r<�SeasonrF7sD�������T�V�V�F��T�V�V�F��T�V�V�F�
�
�
�
�
r>rNrI)
rr��hasattrrIr��assertRaises�AttributeErrorrK�DRYr��r�rNs  r<�test_attribute_deletionz"_EnumTests.test_attribute_deletion6s���	�	�	�	�	�T�^�	�	�	�	
������/�/�0�0�0��K�������0�0�1�1�1�
�
�
�~�
.�
.�	�	��
�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�
�
�
�~�
.�
.�	�	��
�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�
�
�
�~�
.�
.�	#�	#��
�"�	#�	#�	#�	#�	#�	#�	#�	#�	#�	#�	#�	#����	#�	#�	#�	#�	#�	#s6�6B�B	�B	�*B9�9B=�B=�C3�3C7�:C7c��|�td��5Gd�d|j��}ddd��dS#1swxYwYdS)Nzhas no members definedc�"��eZdZ�fd�ZdZ�xZS)�/_EnumTests.test_bad_new_super.<locals>.BadSuperc�L��t���||��}|Sr���super�__new__)rHr?r|�	__class__s   �r<r[z7_EnumTests.test_bad_new_super.<locals>.BadSuper.__new__Ps����'�'�/�/�#�u�5�5�C��Jr>rC)rFrGrHr[�failed�
__classcell__�r\s@r<�BadSuperrWOs3�����������������r>r`)r��	TypeErrorr)r�r`s  r<�test_bad_new_superz_EnumTests.test_bad_new_superJs���
�
#�
#��(���	�	�
�
�
�
�
�4�>�
�
�
�		�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�	�	��=�A�Ac�h�|j}|jr�|�t|��d��|�t	|��d��|�t|��d��|�|d��|ju��ni|�t|��d��|�t	|��d��|�t|��d��|�t|��|j	|j
|jg��|�d�|D��|j��|�d�|D��|j
��|�d�|D��gd���t||jd�	��D]!\}}|�|||���"t||j
d�	��D]$\}}|�||��|���%t!|t"��r5|�|j|d
��cxuo	|dunc��dS|jtur5|�|j|d��cxuo	|dunc��dSt!|t(��r5|�|j|d
��cxuo	|dunc��dS|�|j||j
d��cxuo	|dunc��dS)Nz<flag 'MainEnum'>r2z<enum 'MainEnum'>c��g|]	}|j��
SrLr���.0�ms  r<�
<listcomp>z*_EnumTests.test_basics.<locals>.<listcomp>bs��$�$�$�A���$�$�$r>c��g|]	}|j��
SrL�r?rfs  r<riz*_EnumTests.test_basics.<locals>.<listcomp>f���%�%�%�Q���%�%�%r>c��g|]	}|j��
SrL)rrfs  r<riz*_EnumTests.test_basics.<locals>.<listcomp>jrlr>)zfirst is first!zsecond is first!zthird is first!T��strictrr	r1rDr()r
r5r��reprr9r>r�r:r�rrrr6r7�zip�assertIsrr	r	r8r)r��TErr�r?s     r<�test_basicsz_EnumTests.test_basicsUsh��
�]���<�	>����T�"�X�X�':�;�;�;����S��W�W�&9�:�:�:����V�B�Z�Z�)<�=�=�=��O�O�B�B�q�E�E�T�Z�/�0�0�0�0����T�"�X�X�':�;�;�;����S��W�W�&9�:�:�:����V�B�Z�Z�)<�=�=�=�����b���B�H�b�i���#B�C�C�C����$�$��$�$�$��
�	�	�	�	
���%�%�"�%�%�%���	�	�	�	
���%�%�"�%�%�%�J�J�J�	�	�	� ��D�J�t�<�<�<�	,�	,�L�F�D��M�M�"�T�(�F�+�+�+�+� ��T�[��>�>�>�	-�	-�M�F�E��M�M�"�"�U�)�)�V�,�,�,�,��b�'�"�"�	I��O�O�B�G�r�r�'�{�{�@�@�@�@�b��j�@�@�@�@�A�A�A�A�A�
�
��
$�
$��O�O�B�G�r�r�#�w�w�<�<�<�<�"�V�*�<�<�<�<�=�=�=�=�=�
��D�
!�
!�	I��O�O�B�G�r�r�!�u�u�:�:�:�:��6�
�:�:�:�:�;�;�;�;�;��O�O�B�G�r�r�$�+�a�.�'9�'9�G�G�G�G�R��Z�G�G�G�G�H�H�H�H�Hr>c���Gd�d|j��}|�|��|�|j��|jD]}|�|���dS)Nc��eZdZdS)�+_EnumTests.test_bool_is_true.<locals>.EmptyNr�rLr>r<�Emptyrw{r�r>rx)rr�r
)r�rxrs   r<�test_bool_is_truez_EnumTests.test_bool_is_truezs���	�	�	�	�	�D�N�	�	�	������������
�&�&�&��m�	$�	$�F��O�O�F�#�#�#�#�	$�	$r>c��|j}|�t��5d|j_ddd��dS#1swxYwYdS)Nzreally first)r
rPrQr)r�r
s  r<�test_changing_member_failsz%_EnumTests.test_changing_member_fails�s����=��
�
�
�~�
.�
.�	2�	2�#1�D�M� �	2�	2�	2�	2�	2�	2�	2�	2�	2�	2�	2�	2����	2�	2�	2�	2�	2�	2s�
<�A�A�rD��2__contains__ now returns True/False for all inputsc��|j}|�|j|��|�t��5|�t��5|jd|vddd��n#1swxYwYddd��n#1swxYwY|�t��5|�t��5d|vddd��n#1swxYwYddd��n#1swxYwY|j}|�||��Gd�dt��}|�
|j|��dS)NrCrc�6�eZdZe��Ze��ZdS)�._EnumTests.test_contains_er.<locals>.OtherEnumN�rFrGrHr�one�tworLr>r<�	OtherEnumr���$�������$�&�&�C��$�&�&�C�C�Cr>r�)r
�assertInrrPra�assertWarns�DeprecationWarningr4r	r�assertNotInr��r�r
�valr�s    r<�test_contains_erz_EnumTests.test_contains_er�sN��
�=���
�
�h�n�h�/�/�/�
�
�
�y�
)�
)�	2�	2��!�!�"4�5�5�
2�
2��"�1�%��1�1�
2�
2�
2�
2�
2�
2�
2�
2�
2�
2�
2����
2�
2�
2�
2�	2�	2�	2�	2�	2�	2�	2�	2�	2�	2�	2����	2�	2�	2�	2��
�
�y�
)�
)�	$�	$��!�!�"4�5�5�
$�
$��8�#�#�
$�
$�
$�
$�
$�
$�
$�
$�
$�
$�
$����
$�
$�
$�
$�	$�	$�	$�	$�	$�	$�	$�	$�	$�	$�	$����	$�	$�	$�	$��m���
�
�c�8�$�$�$�	�	�	�	�	��	�	�	�	
������1�1�1�1�1sk�B�A4�(B�4A8	�8B�;A8	�<B�B�B�0C3�C�C3�C 	� C3�#C 	�$C3�3C7�:C7z6__contains__ works only with enum memmbers before 3.12c�R�|j}|�|j|��|�|jd|v��|�d|v��|j}|�||��Gd�dt��}|�|j	|��dS)Nrrc�6�eZdZe��Ze��ZdS)�._EnumTests.test_contains_tf.<locals>.OtherEnumNr�rLr>r<r�r��r�r>r�)
r
r�rr�r4r�r	rr�r�r�s    r<�test_contains_tfz_EnumTests.test_contains_tf�s���
�=���
�
�h�n�h�/�/�/�����*�1�-��9�:�:�:�����H�,�-�-�-��m���
�
�c�8�$�$�$�	�	�	�	�	��	�	�	�	
������1�1�1�1�1r>c��|j}|�tt|����tt	|������dSr�)r
r��set�dir�enum_dir�r�rss  r<�test_dir_on_classz_EnumTests.test_dir_on_class�s?��
�]������S��W�W���s�8�B�<�<�'8�'8�9�9�9�9�9r>c��|j}|�tt|j����tt|j������dSr�)r
r�r�r�r�
member_dirr�s  r<�test_dir_on_itemz_EnumTests.test_dir_on_item�sG��
�]������S���]�]�+�+�S��B�H�1E�1E�-F�-F�G�G�G�G�Gr>c���Gd�d|j��}|�dt|��v��|�dt|j��v��dS)Nc�<�eZdZe��Ze��Zd�ZdS)�5_EnumTests.test_dir_with_added_behavior.<locals>.Testc��d|jzS)NzWowser! I'm %s!r�r�s r<�wowserz<_EnumTests.test_dir_with_added_behavior.<locals>.Test.wowser�s��)�D�I�5�6r>N)rFrGrHr�this�theser�rLr>r<�Testr��s9�������4�6�6�D��D�F�F�E�
7�
7�
7�
7�
7r>r�r�)rr�r�r�)r�r�s  r<�test_dir_with_added_behaviorz'_EnumTests.test_dir_with_added_behavior�sr��	7�	7�	7�	7�	7�4�>�	7�	7�	7�
	
�����D�	�	�1�2�2�2�����C��	�N�N�2�3�3�3�3�3r>c���Gd�d|j��}Gd�d|��}|�dt|��v��|�dt|j��v��dS)Nc��eZdZd�ZdS)�D_EnumTests.test_dir_on_sub_with_behavior_on_super.<locals>.SuperEnumc��dS)Nzdid you see me?rLr�s r<�	invisiblezN_EnumTests.test_dir_on_sub_with_behavior_on_super.<locals>.SuperEnum.invisible�s��(�(r>N)rFrGrHr�rLr>r<�	SuperEnumr��s#������
)�
)�
)�
)�
)r>r�c�"�eZdZe��ZdS)�B_EnumTests.test_dir_on_sub_with_behavior_on_super.<locals>.SubEnumN)rFrGrHr�samplerLr>r<�SubEnumr��s�������T�V�V�F�F�Fr>r�r��rr�r�r��r�r�r�s   r<�&test_dir_on_sub_with_behavior_on_superz1_EnumTests.test_dir_on_sub_with_behavior_on_super�s���	)�	)�	)�	)�	)���	)�	)�	)�	�	�	�	�	�i�	�	�	�����3�w�<�<�7�8�8�8�����s�7�>�':�':�:�;�;�;�;�;r>c���G�fd�d�j��}G�fd�d|��}��dt|��v����dt|j��vt|j����dS)Nc���eZdZ�fd�ZdS)�\_EnumTests.test_dir_on_sub_with_behavior_including_instance_dict_on_super.<locals>.SuperEnumc����jjj}�jjtur||��}n1t	|dt
��r|d\}n|}||g|�R�}t
|��dkr|dn||_d|_|S)NrrCztest description)	rr8r[�object�
isinstance�tuple�len�_value_�description)rHr?�kwds�newr|�create_valuer�s      �r<r[zd_EnumTests.test_dir_on_sub_with_behavior_including_instance_dict_on_super.<locals>.SuperEnum.__new__�s�����n�2�:���>�/�6�9�9��#�c�(�(�C�C�!�%��(�E�2�2�-�(-�a�����',���#�c�1�L�1�1�1�C�*-�e�*�*��/�/�e�A�h�h�u���"4����
r>N�rFrGrHr[r�s�r<r�r��s.�������
�
�
�
�
�
�
r>r�c�*��eZdZ�jdZdS)�Z_EnumTests.test_dir_on_sub_with_behavior_including_instance_dict_on_super.<locals>.SubEnumrCN)rFrGrHr4r�r�s�r<r�r��s��������'��*�F�F�Fr>r�r�r�r�s`  r<�>test_dir_on_sub_with_behavior_including_instance_dict_on_superzI_EnumTests.test_dir_on_sub_with_behavior_including_instance_dict_on_super�s����
	�
	�
	�
	�
	�
	�
	���
	�
	�
	�	+�	+�	+�	+�	+�	+�	+�i�	+�	+�	+����
�S��\�\�9�:�:�:����
��W�^�)<�)<�<�c�'�.�>Q�>Q�R�R�R�R�Rr>c�f�|j}|�||j��|j��dSr�)r
rrr)r��Mains  r<�test_enum_in_enum_outz _EnumTests.test_enum_in_enum_out�s1���}���
�
�d�d�4�:�&�&��
�3�3�3�3�3r>c��|j}i}d||j<d||j<d||j<|�||jd��dS)N�1225�0315�0704)r
rrrr�)r�r
�mappings   r<�	test_hashz_EnumTests.test_hash�sU���=����"(�����#)���� �"(�����������1�6�:�:�:�:�:r>c��|�t��5Gd�d|j��}ddd��n#1swxYwY|�t��5Gd�d|j��}ddd��n#1swxYwY|�t��5Gd�d|j��}ddd��n#1swxYwY|�t��5Gd�d|j��}ddd��n#1swxYwY|�t��5Gd�d|j��}ddd��dS#1swxYwYdS)Nc��eZdZdZdS��,_EnumTests.test_invalid_names.<locals>.Wrong�	N)rFrGrH�mrorLr>r<�Wrongr������������r>r�c��eZdZdZdS)r��N)rFrGrH�_create_rLr>r<r�z,_EnumTests.test_invalid_names.<locals>.Wrong�s���������r>c��eZdZdZdSr�)rFrGrH�_get_mixins_rLr>r<r�z,_EnumTests.test_invalid_names.<locals>.Wrong�s������ ���r>c��eZdZdZdS)r�rCN)rFrGrH�
_find_new_rLr>r<r�z,_EnumTests.test_invalid_names.<locals>.Wrong���������
�
�
r>c��eZdZdZdSr�)rFrGrH�
_any_name_rLr>r<r�z,_EnumTests.test_invalid_names.<locals>.Wrong�r�r>)rPr�r�r�r�s  r<�test_invalid_namesz_EnumTests.test_invalid_names�s��
�
�
�z�
*�
*�	�	�
�
�
�
�
���
�
�
�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	��
�
�z�
*�
*�	�	�
�
�
�
�
���
�
�
�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	��
�
�z�
*�
*�	!�	!�
!�
!�
!�
!�
!���
!�
!�
!�	!�	!�	!�	!�	!�	!�	!�	!�	!�	!�	!����	!�	!�	!�	!��
�
�z�
*�
*�	�	�
�
�
�
�
���
�
�
�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	��
�
�z�
*�
*�	�	�
�
�
�
�
���
�
�
�	�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�	�	sU�;�?�?� B�B�B�%C�C	�C	�*D
�
D�D�/E�E�Ec���G�fd�d�j��}��t|j��d��dS)z=check that setting __str__ to object's is not reset to Enum'sc�>��eZdZ�jdZd�ZejZdS)�4_EnumTests.test_object_str_override.<locals>.Genericr(c��|j�d�S)Nz.test��_name_r�s r<�__repr__z=_EnumTests.test_object_str_override.<locals>.Generic.__repr__�s��$(�K�K�K�2�2r>N)rFrGrHr4�itemr�r�rr�s�r<�Genericr��s2��������%�a�(�D�
3�
3�
3��n�G�G�Gr>r�z	item.testN)rr�r9r��r�r�s` r<�test_object_str_overridez#_EnumTests.test_object_str_override�sa���	%�	%�	%�	%�	%�	%�	%�d�n�	%�	%�	%�
	
����W�\�*�*�K�8�8�8�8�8r>c�$�|j}|�t|j��|jj�����|�t
|j��|jj�����dSr�)rr�r9rr�rr>)r��NSs  r<�test_overridden_strz_EnumTests.test_overridden_strsm��
�_������R�X�����
�(;�(;�(=�(=�>�>�>�������)�)�2�8�=�+>�+>�+@�+@�A�A�A�A�Ar>c�@�|j}|�t|j��|jj�����|�t
|j��d�t|jj������dSr!)	r&r�r9rr�rr>r2r$)r��NSFs  r<�test_overridden_str_formatz%_EnumTests.test_overridden_str_format	sv���#������S�Y������)=�)=�)?�)?�@�@�@������	�*�*�B�G�G�H�S�Y�^�4L�4L�,M�,M�N�N�N�N�Nr>c�@�|j}|�t|j��|jj�����|�t
|j��d�t|jj������dSr!)	r.r�r9rr�rr>r2r$)r��NSEs  r<�$test_overridden_str_format_inheritedz/_EnumTests.test_overridden_str_format_inheritedsu���o������S�Y������)=�)=�)?�)?�@�@�@������	�*�*�B�G�G�H�S�Y�^�4L�4L�,M�,M�N�N�N�N�Nr>c��|�dd��}t|��}|�t|��t|����|�t|��d|��|�|j|j|jg|��|j}|jturgd�}td�
��|��D]�\}}||}|�|j|t|����|�|j|��|j
tur,t||j
��r|�||��n|�||��|�||��|�t'|��|��|�|||������dS)N�	MinorEnum�june july augustrD��june�july�august�rr�r�r�r�r�r�r7r	rq�splitr?r�r8r�r�assertNotEqualr�rr�type�r�r��lstr7�month�av�es       r<�!test_programmatic_function_stringz,_EnumTests.test_programmatic_function_strings����N�N�;�0B�C�C�	��9�o�o������S���3�y�>�>�2�2�2�����Y����I�6�6�6���������1A�B��	�	�	�����>�W�$�$�-�-�-�F��/�5�5�7�7��@�@�
	,�
	,�I�E�2��%� �A����Q�W�b�$�y�/�/�:�:�:����Q�V�U�+�+�+��&�f�4�4��I�y�Of�9g�9g�4�� � ��B�'�'�'�'��#�#�A�r�*�*�*��M�M�!�Y�'�'�'��M�M�$�q�'�'�9�-�-�-��M�M�!�Y�Y�r�]�]�+�+�+�+�
	,�
	,r>c��|�dgd���}t|��}|�t|��t|����|�t|��d|��|�|j|j|jg|��|j}|jturgd�}td�
��|��D]�\}}||}|�|j|��|�|j|��|j
tur,t||j
��r|�||��n|�||��|�||��|�t'|��|��|�|||������dS)Nr�r�rDr�r�r�s       r<�&test_programmatic_function_string_listz1_EnumTests.test_programmatic_function_string_list+s����N�N�;�0J�0J�0J�K�K�	��9�o�o������S���3�y�>�>�2�2�2�����Y����I�6�6�6���������1A�B��	�	�	�����>�W�$�$�-�-�-�F��/�5�5�7�7��@�@�
	,�
	,�I�E�2��%� �A����Q�W�b�)�)�)����Q�V�U�+�+�+��&�f�4�4��I�y�Of�9g�9g�4�� � ��B�'�'�'�'��#�#�A�r�*�*�*��M�M�!�Y�'�'�'��M�M�$�q�'�'�9�-�-�-��M�M�!�Y�Y�r�]�]�+�+�+�+�
	,�
	,r>c���|�dd|jdfd|jdfd|jdff��}t|��}|�t	|��t	|����|�t	|��d|��|�|j|j|jg|��td	�	��|j
��D]�\}}||}|�|j|��|�|j|��|j
tur,t||j
��r|�||��n|�||��|�||��|�t'|��|��|�|||������dS�
Nr�r�rr�rCr�r(rDr�)rr4r�r�r�r�r�r�rqr�r7r?r�r8r�rr�r�rrr��r�r�r�rrrs      r<�#test_programmatic_function_iterablez._EnumTests.test_programmatic_function_iterableCs����N�N���$�,�Q�/�0�6�4�;M�a�;P�2Q�T\�^b�^p�qr�^s�St�u���	��9�o�o������S���3�y�>�>�2�2�2�����Y����I�6�6�6���������1A�B��	�	�	��/�5�5�7�7���E�E�
	,�
	,�I�E�2��%� �A����Q�W�b�)�)�)����Q�V�U�+�+�+��&�f�4�4��I�y�Of�9g�9g�4�� � ��B�'�'�'�'��#�#�A�r�*�*�*��M�M�!�Y�'�'�'��M�M�$�q�'�'�9�-�-�-��M�M�!�Y�Y�r�]�]�+�+�+�+�
	,�
	,r>c
�p�|�dtd|jdfd|jdfd|jdff����}t|��}|�t|��t|����|�t|��d|��|�|j|j|jg|��td	�
��|j��D]�\}}||}|jtur,t||j��r|�||��n|�||��|�||��|�t%|��|��|�|||������dSr)rrr4r�r�r�r�r�r�rqr�r7r8r�rr�r�rrr�rs      r<�$test_programmatic_function_from_dictz/_EnumTests.test_programmatic_function_from_dict[s����N�N���f�d�&8��&;�<�v�t�GY�Z[�G\�>]�`h�jn�j|�}~�j�`A�B�C�C���	��9�o�o������S���3�y�>�>�2�2�2�����Y����I�6�6�6���������1A�B��	�	�	��/�5�5�7�7���E�E�	,�	,�I�E�2��%� �A��&�f�4�4��I�y�Of�9g�9g�4�� � ��B�'�'�'�'��#�#�A�r�*�*�*��M�M�!�Y�'�'�'��M�M�$�q�'�'�9�-�-�-��M�M�!�Y�Y�r�]�]�+�+�+�+�	,�	,r>c	���|j}|jr}|�t|d����d��|�t|j��d��|�t|j��d��n{t
|t��r)|�t|j��d��n=|�t|j��d|jd�d�|j	��t|j|j|d	�
��D]:\}}}|�t|��d|j�d|j
�d����;dS)
Nrz
<MainEnum: 0>z<MainEnum.dupe: 3>z<MainEnum.first|third: 5>z<MainEnum.third: 'third'>z<MainEnum.third: r(�>Trnz
<MainEnum.z: )r
r5r�rpr	r:rr	r7�_value_repr_rqr6r�r?�r�rsr�r?rs     r<�	test_reprz_EnumTests.test_reprqsO��
�]���<�	j����T�"�"�Q�%�%�[�[�/�:�:�:����T�"�'�]�]�,@�A�A�A����T�$�*�-�-�/J�K�K�K�K�
��G�
$�
$�	j����T�"�'�]�]�,G�H�H�H�H����T�"�'�]�]�]�d�k�RS�n�n�n�,W�Y[�Yh�i�i�i�#&�t�z�4�;��4�#P�#P�#P�	^�	^��D�%�����T�&�\�\�\�&�+�+�+�v�|�|�|�+\�]�]�]�]�	^�	^r>c�|�Gd�d|j��}|�t|j��d��dS)Nc�P�eZdZe��Ze��Ze��Zd�ZdS)�._EnumTests.test_repr_override.<locals>.Genericc��d|jzS)Nz!don't you just love shades of %s?r�r�s r<r�z7_EnumTests.test_repr_override.<locals>.Generic.__repr__�s��:�T�Y�F�Fr>N)rFrGrHrrrrr�rLr>r<r�rsI�������D�F�F�E��T�V�V�F��D�F�F�E�
G�
G�
G�
G�
Gr>r�z$don't you just love shades of third?)rr�rprr�s  r<�test_repr_overridez_EnumTests.test_repr_override~sj��	G�	G�	G�	G�	G�d�n�	G�	G�	G�	
����W�]�#�#�6�	�	�	�	�	r>c��Gd�d|j��}Gd�d|��}|�t|j��d��dS)Nc��eZdZd�ZdS)�._EnumTests.test_inherited_repr.<locals>.MyEnumc��d|jzS)NzMy name is %s.r�r�s r<r�z7_EnumTests.test_inherited_repr.<locals>.MyEnum.__repr__�s��'�$�)�3�3r>N�rFrGrHr�rLr>r<r�r��#������
4�
4�
4�
4�
4r>r�c�J�eZdZe��Ze��Ze��ZdS)�1_EnumTests.test_inherited_repr.<locals>.MySubEnumN)rFrGrHrr��that�theotherrLr>r<�	MySubEnumr�s/�������4�6�6�D��4�6�6�D��t�v�v�H�H�Hr>r zMy name is that.)rr�rpr)r�r�r s   r<�test_inherited_reprz_EnumTests.test_inherited_repr�s���	4�	4�	4�	4�	4�T�^�	4�	4�	4�	�	�	�	�	��	�	�	�	
����i�n�-�-�/A�B�B�B�B�Br>c��Gd�dt���}Gd�d|t��}|�t|j��d��dS)Nc��eZdZdS)�C_EnumTests.test_multiple_superclasses_repr.<locals>._EnumSuperClassNr�rLr>r<�_EnumSuperClassr$�r�r>r%��	metaclassc��eZdZdZdS)�5_EnumTests.test_multiple_superclasses_repr.<locals>.ErCN)rFrGrH�ArLr>r<�Er)���������A�A�Ar>r+z<E.A: 1>)rrr�rpr*)r�r%r+s   r<�test_multiple_superclasses_reprz*_EnumTests.test_multiple_superclasses_repr�s���	�	�	�	�	��	�	�	�	�	�	�	�	�	���	�	�	�����a�c���J�/�/�/�/�/r>c��|�tt|j����|jj|jj|jjg��dSr�)r�r�r$r
rrrr�s r<�test_reversed_iteration_orderz(_EnumTests.test_reversed_iteration_order�sR������X�d�m�,�,�-�-���$�d�m�&:�D�M�<O�P�	�	�	�	�	r>)'rFrGrHr�r7r<rArCrTrbrtryr{�unittest�skipIf�python_versionr�r�r�r�r�r�r�r�r�r�r�r�r�r�rrr	rrrr!r-r/rLr>r<r�r��sf���������F�:-�:-�:-�xI�I�I�H�H�H�#�#�#�(	�	�	�#I�#I�#I�J$�$�$�2�2�2�
�X�_��g�%�@���2�2�	��2�"�X�_��W�$�D���2�2�	��2�:�:�:�H�H�H�4�4�4�<�<�<�S�S�S�*4�4�4�;�;�;����"9�9�9�B�B�B�
O�O�O�
O�O�O�
,�,�,�0,�,�,�0,�,�,�0,�,�,�,^�^�^�
�
�
�C�C�C�0�0�0�����r>r�c�&�eZdZd�Zd�Zd�Zd�ZdS)�_PlainOutputTestsc�
�|j}|jr}|�t|d����d��|�t|j��d��|�t|j��d��n(|�t|j��d��t
|j|j|d���D]1\}}}|�t|��d|j	�����2dS)	NrzMainEnum(0)�
MainEnum.dupe�MainEnum.first|third�MainEnum.thirdTrn�	MainEnum.�
r
r5r�r9r	r:rqr6r7r�rs     r<�test_strz_PlainOutputTests.test_str�s���
�]���<�	=����S���A���Z�Z��7�7�7����S���\�\�?�;�;�;����S���_�_�.D�E�E�E�E����S���\�\�+;�<�<�<�#&�t�z�4�;��4�#P�#P�#P�	K�	K��D�%�����S��[�[�[�6�;�;�*I�J�J�J�J�	K�	Kr>c��|j}|jrQ|�t|j��d��|�t|j��d��n(|�t|j��d��t
|j|j|d���D]1\}}}|�t|��d|j	�����2dS�Nr6r7r8Trnr9�
r
r5r�r>r	r:rqr6r7r�rs     r<�test_formatz_PlainOutputTests.test_format�����
�]���<�	@����V�B�G�_�_�o�>�>�>����V�D�J�/�/�1G�H�H�H�H����V�B�G�_�_�.>�?�?�?�#&�t�z�4�;��4�#P�#P�#P�	N�	N��D�%�����V�F�^�^�^�f�k�k�-L�M�M�M�M�	N�	Nr>c���|j}|�t|j��d|j�d|j����|�t|j��d��dS)N�NewFormatEnum.first� �FIRST)rr�r9rrr>�r��NFs  r<�test_overridden_formatz(_PlainOutputTests.test_overridden_format�sc��
�
������R�X���(=�"�*�*�*�VX�V^�V^�?_�`�`�`�������)�)�7�3�3�3�3�3r>c��|j}|�d|j��|�d|j��|�d|j��|�d|j��|�d|j��|�d|j��|�d|j��dS�N�{}�{:}�{:20}�{:^20}�{:>20}�{:<20}�{:5.2})r
rCrr�s  r<�test_format_specsz#_PlainOutputTests.test_format_specs�s���
�]�����t�R�Y�/�/�/����u�b�i�0�0�0����w��	�2�2�2����x���3�3�3����x���3�3�3����x���3�3�3����x���3�3�3�3�3r>N�rFrGrHr;r?rGrQrLr>r<r4r4�sV������	K�	K�	K�N�N�N�4�4�4�
4�4�4�4�4r>r4c�&�eZdZd�Zd�Zd�Zd�ZdS)�_MixedOutputTestsc��|j}|jrQ|�t|j��d��|�t|j��d��n(|�t|j��d��t
|j|j|d���D]1\}}}|�t|��d|j	�����2dSr=r:rs     r<r;z_MixedOutputTests.test_str�s���
�]���<�	=����S���\�\�?�;�;�;����S���_�_�.D�E�E�E�E����S���\�\�+;�<�<�<�#&�t�z�4�;��4�#P�#P�#P�	K�	K��D�%�����S��[�[�[�6�;�;�*I�J�J�J�J�	K�	Kr>c��|j}|jrQ|�t|j��d��|�t|j��d��n(|�t|j��d��t
|j|j|d���D]1\}}}|�t|��d|j	�����2dSr=r>rs     r<r?z_MixedOutputTests.test_format�r@r>c��|j}|�t|j��d��|�t	|j��d��dS)NrBrD)rr�r9rr>rEs  r<rGz(_MixedOutputTests.test_overridden_format�sO��
�
������R�X���(=�>�>�>�������)�)�7�3�3�3�3�3r>c��|j}|�d|j��|�d|j��|�d|j��|�d|j��|�d|j��|�d|j��|�d|j��dSrI)r
rCrr�s  r<rQz#_MixedOutputTests.test_format_specs�s���
�]�����t�R�X�.�.�.����u�b�h�/�/�/����w���1�1�1����x���2�2�2����x���2�2�2����x���2�2�2����x���2�2�2�2�2r>NrRrLr>r<rTrT�sV������K�K�K�N�N�N�4�4�4�
3�3�3�3�3r>rTc�2�eZdZd�Zd�Zd�Zd�Zd�Zd�ZdS)�_MinimalOutputTestsc���|j}|jrQ|�t|j��d��|�t|j��d��n@|�t|j��t|jd����t|j|j|d���D]6\}}}|�t|��t|�����7dS�Nr1�5r(Trn)	r
r5r�r9r	r:r7rqr6rs     r<r;z_MinimalOutputTests.test_str�s���
�]���<�	@����S���\�\�3�/�/�/����S���_�_�c�2�2�2�2����S���\�\�3�t�{�1�~�+>�+>�?�?�?�#&�t�z�4�;��4�#P�#P�#P�	6�	6��D�%�����S��[�[�#�e�*�*�5�5�5�5�	6�	6r>c���|j}|jrQ|�t|j��d��|�t|j��d��n@|�t|j��t|jd����t|j|j|d���D]6\}}}|�t|��t|�����7dSr\)	r
r5r�r>r	r:r7rqr6rs     r<r?z_MinimalOutputTests.test_format�s���
�]���<�	F����V�B�G�_�_�c�2�2�2����V�D�J�/�/��5�5�5�5����V�B�G�_�_�f�T�[��^�.D�.D�E�E�E�#&�t�z�4�;��4�#P�#P�#P�	<�	<��D�%�����V�F�^�^�V�E�]�]�;�;�;�;�	<�	<r>c���|j}|�t|j��t|jd����|�t|j��d��dS)NrrD)rr�r9rr7r>rEs  r<rGz*_MinimalOutputTests.test_overridden_formats\��
�
������R�X����D�K��N�(;�(;�<�<�<�������)�)�7�3�3�3�3�3r>c��|j}|�d|j��|�d|j��|�d|j��|�d|j��|�d|j��|�d|j��|jturS|�d|j��|�d|j��|�d	|j��dSdS)
NrJrKrLrMrNrOz{:n}rPz{:f})r
rArr8�floatr�s  r<rQz%_MinimalOutputTests.test_format_specs	s���
�]��� � ��r�x�0�0�0�� � ����1�1�1�� � ��"�(�3�3�3�� � ��2�8�4�4�4�� � ��2�8�4�4�4�� � ��2�8�4�4�4�
��u�$�$��$�$�V�R�X�6�6�6��$�$�X�r�x�8�8�8��$�$�V�R�X�6�6�6�6�6�%�$r>c��|j}tj|��}|�||��|�||��tj|��}|�||��|�||��dSr�)r
�copyr�rr�deepcopy�r�rs�copied�deeps    r<�	test_copyz_MinimalOutputTests.test_copys��
�]����2���������$�$�$��
�
�f�b�!�!�!��}�R� � ������r�"�"�"��
�
�d�B�����r>c���|j}tj|j��}|�||j��tj|j��}|�||j��dSr�)r
rcrrrrdres    r<�test_copy_memberz$_MinimalOutputTests.test_copy_members]��
�]����2�8�$�$���
�
�f�b�h�'�'�'��}�R�X�&�&���
�
�d�B�H�%�%�%�%�%r>N)	rFrGrHr;r?rGrQrhrjrLr>r<rZrZ�sn������6�6�6�<�<�<�4�4�4�
7�7�7� � � �&�&�&�&�&r>rZc� �eZdZd�Zd�Zd�ZdS)�
_FlagTestsc���|�td��5}|�d��ddd��n#1swxYwY|�|jjd��dS)Nz'RED' is not a valid �RED)r�r�r
rrr{�__context__)r��ctxs  r<�*test_default_missing_with_wrong_type_valuez5_FlagTests.test_default_missing_with_wrong_type_value(s���
�
#�
#��#���	!���M�M�%� � � �		!�	!�	!�	!�	!�	!�	!�	!�	!�	!�	!����	!�	!�	!�	!�
	
�
�
�c�m�/��6�6�6�6�6s�>�A�Ac��Gd�d|j��}|\}}|j}|�||��|�||��|�||z|d����|�||d����|�|d��||z��Gd�d|j��}|\}}}|j}	|�|||z��|�|||z��|�|||z��|�||z|��|�||z|��|�||z|��|�||z|z|d����|�|	|d����|�|d��||z|z��dS)Nc��eZdZdZdZdZdS)�<_FlagTests.test_closed_invert_expectations.<locals>.ClosedABrCr(rDN�rFrGrHr*�B�MASKrLr>r<�ClosedABrt1s�������A��A��D�D�Dr>rxrc��eZdZdZdZdZdZdS)�=_FlagTests.test_closed_invert_expectations.<locals>.ClosedXYZrTr(rCr�N�rFrGrH�X�Y�ZrwrLr>r<�	ClosedXYZrz>s"�������A��A��A��D�D�Dr>r)rrwrr)
r�rxr*rv�AB_MASKrr|r}r~�XYZ_MASKs
          r<�test_closed_invert_expectationsz*_FlagTests.test_closed_invert_expectations0s��	�	�	�	�	�t�~�	�	�	����1��-���
�
�q�b�!�����
�
�q�b�!�����
�
��!��f�h�h�q�k�k�*�*�*��
�
�w�h������,�,�,��
�
�x�x��{�{�l�Q�q�S�*�*�*�	�	�	�	�	���	�	�	�
���1�a��>���
�
�q�b�!�A�#�����
�
�q�b�!�A�#�����
�
�q�b�!�A�#�����
�
��!��f�a� � � ��
�
��!��f�a� � � ��
�
��!��f�a� � � ��
�
��!��A��h�	�	�!���-�-�-��
�
�x�i���1���.�.�.��
�
�y�y��|�|�m�a��c�!�e�-�-�-�-�-r>c��Gd�d|j��}|\}}|j}|jttfvr�|�||d����|�||d����|�||z|d����|�||d����|�|d��|��n�|�||��|�||��|�||z|d����|�||d����|�|d��||z��Gd�d|j��}|\}}}|j}	|jttfv�r1|�||d	����|�||d
����|�||d����|�||z|d����|�||z|d
����|�||z|d����|�||z|z|d����|�|	|d����|�|d��|	��dS|�|||z��|�|||z��|�|||z��|�||z|��|�||z|��|�||z|��|�||z|z|d����|�|	|d����|�|d��||z|z��dS)Nc��eZdZdZdZdZdS)�8_FlagTests.test_open_invert_expectations.<locals>.OpenABrCr(�NrurLr>r<�OpenABr�Qs�������A��A��D�D�Dr>r����rc��eZdZdZdZdZdZdS)�9_FlagTests.test_open_invert_expectations.<locals>.OpenXYZrTr(rC�Nr{rLr>r<�OpenXYZr�es"�������A��A��A��D�D�Dr>r��������)rrw�
_boundary_rrrrr�)
r�r�r*rvr�r�r|r}r~r�s
          r<�test_open_invert_expectationsz(_FlagTests.test_open_invert_expectationsPs��	�	�	�	�	�T�^�	�	�	����1��+������
�-�-��M�M�1�"�f�f�S�k�k�*�*�*��M�M�1�"�f�f�S�k�k�*�*�*��M�M�A�a�C�&�&�&��+�+�.�.�.��M�M�7�(�F�F�1�I�I�.�.�.��M�M�6�6�!�9�9�*�g�.�.�.�.��M�M�1�"�a� � � ��M�M�1�"�a� � � ��M�M�A�a�C�&�&�&��)�)�,�,�,��M�M�7�(�F�F�1�I�I�.�.�.��M�M�6�6�!�9�9�*�q��s�,�,�,�	�	�	�	�	�d�n�	�	�	�
���1�a��<����%���.�.��M�M�1�"�g�g�b�k�k�*�*�*��M�M�1�"�g�g�b�k�k�*�*�*��M�M�1�"�g�g�b�k�k�*�*�*��M�M�A�a�C�&�'�'�"�+�+�.�.�.��M�M�A�a�C�&�'�'�"�+�+�.�.�.��M�M�A�a�C�&�'�'�"�+�+�.�.�.��M�M�A�a�C��E�(�G�G�B�K�K�0�0�0��M�M�8�)�W�W�Q�Z�Z�0�0�0��O�O�W�W�Q�Z�Z�K��2�2�2�2�2��M�M�1�"�a��c�"�"�"��M�M�1�"�a��c�"�"�"��M�M�1�"�a��c�"�"�"��M�M�A�a�C�&�!�$�$�$��M�M�A�a�C�&�!�$�$�$��M�M�A�a�C�&�!�$�$�$��M�M�A�a�C��E�(�G�G�A�J�J�/�/�/��M�M�8�)�W�W�Q�Z�Z�0�0�0��O�O�W�W�Q�Z�Z�K�!�A�#�a�%�1�1�1�1�1r>N)rFrGrHrqr�r�rLr>r<rlrl&sB������7�7�7�.�.�.�@02�02�02�02�02r>rlc��eZdZeZdS)�
TestPlainEnumN)rFrGrHrrrLr>r<r�r��s�������I�I�Ir>r�c��eZdZeZd�ZdS)�
TestPlainFlagc��Gd�dt��}|�|jjd��|�|jjd��|�td��5|j|jzddd��n#1swxYwY|�td��5|j|jzddd��n#1swxYwY|�td��5|j|jzddd��n#1swxYwY|�td��5|jddd��dS#1swxYwYdS)Nc��eZdZdZdZdS)�:TestPlainFlag.test_none_member.<locals>.FlagWithNoneMemberrCN)rFrGrHr*r+rLr>r<�FlagWithNoneMemberr��s�������A��A�A�Ar>r�rCzA'FlagWithNoneMember.E' cannot be combined with other flags with |zA'FlagWithNoneMember.E' cannot be combined with other flags with &zB'FlagWithNoneMember.E' cannot be combined with other flags with \^z)'FlagWithNoneMember.E' cannot be inverted)rr�r*r?rrr+r�ra)r�r�s  r<�test_none_memberzTestPlainFlag.test_none_member�sg��	�	�	�	�	��	�	�	�	
���+�-�3�Q�7�7�7��
�
�(�*�0�$�7�7�7�
�
#�
#�I�/s�
t�
t�	8�	8�� �#5�#7�7�7�	8�	8�	8�	8�	8�	8�	8�	8�	8�	8�	8����	8�	8�	8�	8�
�
#�
#�I�/s�
t�
t�	8�	8�� �#5�#7�7�7�	8�	8�	8�	8�	8�	8�	8�	8�	8�	8�	8����	8�	8�	8�	8�
�
#�
#�I�/t�
u�
u�	8�	8�� �#5�#7�7�7�	8�	8�	8�	8�	8�	8�	8�	8�	8�	8�	8����	8�	8�	8�	8�
�
#�
#�I�/[�
\�
\�	"�	"�
�
!�!�!�	"�	"�	"�	"�	"�	"�	"�	"�	"�	"�	"�	"����	"�	"�	"�	"�	"�	"sH�/B�B�B�1C
�
C�C�3D�D�D�5	E�E�EN)rFrGrHrrr�rLr>r<r�r��s(�������I�"�"�"�"�"r>r�c��eZdZeZdS)�TestIntEnumN)rFrGrHrrrLr>r<r�r����������I�I�Ir>r�c��eZdZeZdS)�TestStrEnumN)rFrGrHr	rrLr>r<r�r��r�r>r�c��eZdZeZdS)�TestIntFlagN)rFrGrHrrrLr>r<r�r��r�r>r�c�,�eZdZGd�dee��ZdS)�TestMixedIntc��eZdZdS)�TestMixedInt.enum_typeNr�rLr>r<rr����������r>rN)rFrGrH�intrrrLr>r<r�r���,������$�$�$�$�$�C��$�$�$�$�$r>r�c�,�eZdZGd�dee��ZdS)�TestMixedStrc��eZdZdS)�TestMixedStr.enum_typeNr�rLr>r<rr��r�r>rN)rFrGrHr9rrrLr>r<r�r��r�r>r�c�,�eZdZGd�dee��ZdS)�TestMixedIntFlagc��eZdZdS)�TestMixedIntFlag.enum_typeNr�rLr>r<rr��r�r>rN)rFrGrHr�rrrLr>r<r�r��r�r>r�c��eZdZeddd��eddd��eddd	��gZgd
�ZGd�dee��Zd
S)�
TestMixedDate��r}r���rD���r�r��)r�r}r�)r�rDr�)r�r�r�c��eZdZd�ZdS)�TestMixedDate.enum_typec��gd�}||S)Nr�rL�r��start�count�last_valuesr7s     r<�_generate_next_value_z-TestMixedDate.enum_type._generate_next_value_�s��D�D�D�F��%�=� r>N�rFrGrHr�rLr>r<rr���#������	!�	!�	!�	!�	!r>rN)rFrGrHrr7r4rrrLr>r<r�r��s��������d�4��R� � �$�$�t�Q��"3�"3�T�T�$��B�5G�5G�
H�F�C�C�C�M�!�!�!�!�!�D�$�!�!�!�!�!r>r�c��eZdZeddd��eddd��eddd��gZgd�ZGd	�d
ee��ZdS)�TestMinimalDate��r}rC��r(r����)r�r}rC)r�r(r�)r�rCrCc��eZdZd�ZdS)�TestMinimalDate.enum_typec��gd�}||S)Nr�rLr�s     r<r�z/TestMinimalDate.enum_type._generate_next_value_�s��A�A�A�F��%�=� r>Nr�rLr>r<rr��r�r>rN)rFrGrHrr7r4rrrLr>r<r�r��s��������d�4��Q�����d�A�r�!2�!2�D�D��q�!�4D�4D�
E�F�@�@�@�M�!�!�!�!�!�D�(�!�!�!�!�!r>r�c�4�eZdZgd�ZGd�dee��ZdS)�TestMixedFloat�g�������?g������@gffffff
@c��eZdZd�ZdS)�TestMixedFloat.enum_typec��gd�}||S)Nr�rLr�s     r<r�z.TestMixedFloat.enum_type._generate_next_value_����$�_�_�F��%�=� r>Nr�rLr>r<rr��r�r>rN)rFrGrHr7rarrrLr>r<r�r��sI������
�_�_�F�!�!�!�!�!�E�4�!�!�!�!�!r>r�c�4�eZdZgd�ZGd�dee��ZdS)�TestMinimalFloat�g������@g@gffffff@c��eZdZd�ZdS)�TestMinimalFloat.enum_typec��gd�}||S)Nr�rLr�s     r<r�z0TestMinimalFloat.enum_type._generate_next_value_�r�r>Nr�rLr>r<rr��r�r>rN)rFrGrHr7rarrrLr>r<r�r��sI������
�_�_�F�!�!�!�!�!�E�8�!�!�!�!�!r>r�c���eZdZdZd�Zd�Zd�Zejd��d���Z	d�Z
d�Zd	�Zd
�Z
ejedkd��d
���Zejedkd��d���Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Z d�Z!d �Z"d!�Z#d"�Z$d#�Z%d$�Z&d%�Z'd&�Z(d'�Z)d(�Z*d)�Z+d*�Z,d+�Z-d,�Z.d-�Z/d.�Z0d/�Z1d0�Z2d1�Z3d2�Z4d3�Z5d4�Z6d5�Z7d6�Z8d7�Z9d8�Z:d9�Z;d:�Z<d;�Z=d<�Z>d=�Z?d>�Z@d?�ZAd@�ZBdA�ZCdB�ZDdC�ZEdD�ZFdE�ZGdF�ZHdG�ZIdH�ZJdI�ZKdJ�ZLdK�ZMdL�ZNdM�ZOdN�ZPdO�ZQdP�ZRdQ�ZSdR�ZTdS�ZUdT�ZVdU�ZWdV�ZXdW�ZYdX�ZZdY�Z[dZ�Z\d[�Z]d\�Z^d]�Z_d^�Z`d_�Zad`�Zbda�Zcdb�Zddc�ZeddS)e�TestSpecialzM
    various operations that are not attributable to every possible enum
    c���Gd�dt��}||_Gd�dt��}||_Gd�dtt��}||_ddlm}Gd	�d
|t��}||_dS)Nc��eZdZdZdZdZdZdS)�!TestSpecial.setUp.<locals>.SeasonrCr(rDrTN)rFrGrHrKrLrM�WINTERrLr>r<rNr���"�������F��F��F��F�F�Fr>rNc�"�eZdZdZdZdZdZdZdS)�!TestSpecial.setUp.<locals>.Gradesr2rTrDr(rN�rFrGrHr*rv�C�D�FrLr>r<�Gradesr���'�������A��A��A��A��A�A�Ar>r�c��eZdZdZdZdZdZdS)�&TestSpecial.setUp.<locals>.Directional�east�west�north�southN)rFrGrH�EAST�WEST�NORTH�SOUTHrLr>r<�Directionalr��s"�������D��D��E��E�E�Er>r�rrc��eZdZdZdZdS)�"TestSpecial.setUp.<locals>.Holiday)��rCrC)r�rDr�N)rFrGrH�NEW_YEAR�
IDES_OF_MARCHrLr>r<�Holidayr��s������!�H�'�M�M�Mr>r�)	rrNrr�r9r��datetimerr�)r�rNr�r�rr�s      r<r<zTestSpecial.setUp�s���	�	�	�	�	�T�	�	�	�
���	�	�	�	�	�W�	�	�	����	�	�	�	�	�#�t�	�	�	�
'���!�!�!�!�!�!�	(�	(�	(�	(�	(�d�D�	(�	(�	(�����r>c��Gd�dt��}|�|j��|�|j��Gd�dt��}|�|j��|�|j��Gd�dt
t��}|�|j��|�|j��dS)Nc��eZdZdZdZdS)�$TestSpecial.test_bool.<locals>.LogicTFN�rFrGrH�true�falserLr>r<�Logicrs�������D��E�E�Er>rc��eZdZdZdZd�ZdS)�(TestSpecial.test_bool.<locals>.RealLogicTFc�*�t|j��Sr�)�boolr�r�s r<�__bool__z1TestSpecial.test_bool.<locals>.RealLogic.__bool__
����D�L�)�)�)r>N)rFrGrHrrr
rLr>r<�	RealLogicrs-�������D��E�
*�
*�
*�
*�
*r>rc��eZdZdZdZdS)�'TestSpecial.test_bool.<locals>.IntLogicrCrNrrLr>r<�IntLogicr��������D��E�E�Er>r)rr�rrr�r�)r�rrrs    r<�	test_boolzTestSpecial.test_bool�s
��	�	�	�	�	�D�	�	�	�	
����
�#�#�#������$�$�$�	*�	*�	*�	*�	*��	*�	*�	*�
	
���	��'�'�'������)�)�)�	�	�	�	�	�s�D�	�	�	�	
����
�&�&�&������(�(�(�(�(r>c�4�|j}|�t��5|j|jkddd��n#1swxYwY|�t��5|jdkddd��n#1swxYwY|�|jd��Gd�dt��}|�|j|j��|�t��5|j|jkddd��dS#1swxYwYdS)NrTrCc��eZdZdZdZdZdS)�*TestSpecial.test_comparisons.<locals>.PartrCr(rDN)rFrGrHrK�CLIP�BARRELrLr>r<�Partrs�������F��D��F�F�Fr>r)rNrPrarKr�r�rr)r�rNrs   r<�test_comparisonszTestSpecial.test_comparisonss������
�
�
�y�
)�
)�	*�	*��M�F�M�)�)�	*�	*�	*�	*�	*�	*�	*�	*�	*�	*�	*����	*�	*�	*�	*�
�
�
�y�
)�
)�	�	��M�A���	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�	
���F�M�1�-�-�-�	�	�	�	�	�4�	�	�	�
	
���F�M�4�;�7�7�7�
�
�
�y�
)�
)�	&�	&��M�D�I�%�%�	&�	&�	&�	&�	&�	&�	&�	&�	&�	&�	&�	&����	&�	&�	&�	&�	&�	&s3�?�A�A�$A<�<B�B�/D
�
D�Dz
to-do listc���Gd�dt��}t|��}|�d|��|�d|��|�d|��|�d|��Gd�dt��}t|��}|�d|��|�d|��|�d|��|�d|��dS)	Nc��eZdZdS)�;TestSpecial.test_dir_with_custom_dunders.<locals>.PlainEnumNr�rLr>r<�	PlainEnumr)r�r>rr�rrr�c�&�eZdZd�Zd�Zd�Zd�ZdS)�8TestSpecial.test_dir_with_custom_dunders.<locals>.MyEnumc�6�t�|��Sr��r�r�r�s r<r�zATestSpecial.test_dir_with_custom_dunders.<locals>.MyEnum.__repr__2������t�,�,�,r>c�6�t�|��Sr�r r�s r<rz@TestSpecial.test_dir_with_custom_dunders.<locals>.MyEnum.__str__4r!r>c�6�t�|��Sr�r r�s r<rzCTestSpecial.test_dir_with_custom_dunders.<locals>.MyEnum.__format__6r!r>c��dSr�rLr�s r<r�zATestSpecial.test_dir_with_custom_dunders.<locals>.MyEnum.__init__8rJr>N)rFrGrHr�rrr�rLr>r<r�r1sP������
-�
-�
-�
-�
-�
-�
-�
-�
-�
�
�
�
�
r>r�)rr�r�r�)r�r�cls_dirr�s    r<�test_dir_with_custom_dundersz(TestSpecial.test_dir_with_custom_dunders's��	�	�	�	�	��	�	�	��i�.�.������W�-�-�-�����G�,�,�,�����w�/�/�/�����W�-�-�-�	�	�	�	�	�T�	�	�	��f�+�+���
�
�j�'�*�*�*��
�
�i��)�)�)��
�
�l�G�,�,�,��
�
�j�'�*�*�*�*�*r>c��|�t��5Gd�dt��}ddd��n#1swxYwY|�t��5Gd�dt��}ddd��n#1swxYwY|�t��5Gd�dt��}ddd��dS#1swxYwYdS)Nc��eZdZdZdZdZdZdS)�4TestSpecial.test_duplicate_name_error.<locals>.ColorrCr(rDrTN�rFrGrH�red�green�bluerLr>r<�Colorr)Bs"���������������r>r.c� �eZdZdZdZdZd�ZdS)r)rCr(rDc��dS)Nr+rLr�s r<r+z8TestSpecial.test_duplicate_name_error.<locals>.Color.redMs�� �5r>Nr*rLr>r<r.z4TestSpecial.test_duplicate_name_error.<locals>.ColorIs2������������!�!�!�!�!r>c�:�eZdZejd���ZdZdZdZdS)r)c��dS)N�redderrLr�s r<r+z8TestSpecial.test_duplicate_name_error.<locals>.Color.redRs��#�8r>rCr(rDN)rFrGrHr/rr+r,r-rLr>r<r.z4TestSpecial.test_duplicate_name_error.<locals>.ColorQs8��������$�$���$��������r>�rPrar�r�r.s  r<�test_duplicate_name_errorz%TestSpecial.test_duplicate_name_error@s���
�
�
�y�
)�
)�	�	�
�
�
�
�
��
�
�
�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	��
�
�y�
)�
)�	!�	!�
!�
!�
!�
!�
!��
!�
!�
!�	!�	!�	!�	!�	!�	!�	!�	!�	!�	!�	!����	!�	!�	!�	!��
�
�y�
)�
)�	�	�
�
�
�
�
��
�
�
�	�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�	�	s1�;�?�?� B�B�B�%C�C
�
C
c��ttt��rt�|�tjd��dS)Nrk)r�rj�	Exceptionr�rHr�s r<� test_enum_function_with_qualnamez,TestSpecial.test_enum_function_with_qualnameYs9���f�i�(�(�	��L�����,�.C�D�D�D�D�Dr>c�t����Gd�dt��}|�|jjt��|�|jjt��|�|jjt��Gd�d���Gd�d���G��fd�dt��}|�|j	j���|�|j
j���Gd	�d
���G�fd�dt��}|�|jj���d
S)�2Support using Enum to refer to types deliberately.c��eZdZeZeZeZdS)�/TestSpecial.test_enum_of_types.<locals>.MyTypesN)	rFrGrHr��ira�fr9r�rLr>r<�MyTypesr=`s�������A��A��A�A�Ar>r@c��eZdZdS)�+TestSpecial.test_enum_of_types.<locals>.FooNr�rLr>r<�FoorBgr�r>rCc��eZdZdS)�+TestSpecial.test_enum_of_types.<locals>.BarNr�rLr>r<�BarrEir�r>rFc���eZdZ�Z�ZdS)�0TestSpecial.test_enum_of_types.<locals>.MyTypes2N)rFrGrHr��b�rFrCs��r<�MyTypes2rHks��������A��A�A�Ar>rKc��eZdZdS)�8TestSpecial.test_enum_of_types.<locals>.SpamEnumNotInnerNr�rLr>r<�SpamEnumNotInnerrMpr�r>rNc���eZdZ�ZdS)�0TestSpecial.test_enum_of_types.<locals>.SpamEnumN)rFrGrHrI)rNs�r<�SpamEnumrPrs�������#�D�D�Dr>rQN)rr�r>r?r�r?rar�r9r�rIrI)r�r@rKrQrFrCrNs    @@@r<�test_enum_of_typeszTestSpecial.test_enum_of_types^s������	�	�	�	�	�d�	�	�	�	
������#�.�.�.�������%�0�0�0�������#�.�.�.�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�t�	�	�	�	
�����)�3�/�/�/������)�3�/�/�/�	�	�	�	�	�	�	�	�	$�	$�	$�	$�	$�	$�	$�t�	$�	$�	$������,�.>�?�?�?�?�?r>c��Gd�dt��}|�|jjtjt��|�|jjtt��|�t|j��d��|�t|j��d��dS)Nc�8�eZdZejeZeeZdS)�3TestSpecial.test_enum_of_generic_aliases.<locals>.EN)	rFrGrH�typing�Listr�r�r�rIrLr>r<r+rUws#��������C� �A��S�	�A�A�Ar>r+z<E.a: typing.List[int]>z<E.b: list[int]>)
rr�r�r?rVrWr�rIr�rp)r�r+s  r<�test_enum_of_generic_aliasesz(TestSpecial.test_enum_of_generic_aliasesvs���	�	�	�	�	��	�	�	�	
������F�K��$4�5�5�5�������D��I�.�.�.�����a�c���$=�>�>�>�����a�c���$6�7�7�7�7�7r>�rD�
zinner classes are not membersc�z�|�td��5Gd�dt��}ddd��n#1swxYwY|�t	|j|����|�|jjd��|�|jjj	jd��|�t|jj��|jjj	|jjjg��|�t|��|j|j|jg��dS)z-
        Check for warnings pre-3.13
        zwill not become a memberc�2�eZdZdZdZGd�de��ZdS)�BTestSpecial.test_nested_classes_in_enum_are_members.<locals>.OuterrCr(c��eZdZdZdZdS)�HTestSpecial.test_nested_classes_in_enum_are_members.<locals>.Outer.Inner�
r�N�rFrGrHr��barrLr>r<�Innerr_�s�������C��C�C�Cr>rcN�rFrGrHr�rIrrcrLr>r<�Outerr]�sH���������������D�����r>reNrCr`)
�assertWarnsRegexr�rr�r�rcr�r�r?r�r�rbrI�r�res  r<�'test_nested_classes_in_enum_are_membersz3TestSpecial.test_nested_classes_in_enum_are_membersss���
"�
"�#5�7Q�
R�
R�	�	�
�
�
�
�
��
�
�
�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�	
���
�5�;��6�6�7�7�7��������*�*�*������*�.�4�b�9�9�9�������"�#�#�
�[�
�
"�E�K�$5�$9�:�	�	�	�	
�����K�K�
�W�e�g�u�{�+�	�	�	�	�	��<�A�Azinner classes are still membersc���Gd�dt��}|�t|jt����|�|jjd��|�|jjjd��|�t|j��|jj|jj
g��|�t|��|j|jg��dS)�'Support locally-defined nested classes.c�2�eZdZdZdZGd�de��ZdS)�FTestSpecial.test_nested_classes_in_enum_are_not_members.<locals>.OuterrCr(c��eZdZdZdZdS)�LTestSpecial.test_nested_classes_in_enum_are_not_members.<locals>.Outer.Innerr`r�NrarLr>r<rcro�s�����������r>rcNrdrLr>r<rerm�sH�������A��A�
�
�
�
�
��
�
�
�
�
r>rerCr`N�rr�r�rcr�r�r�r?r�r�rbrIrgs  r<�+test_nested_classes_in_enum_are_not_membersz7TestSpecial.test_nested_classes_in_enum_are_not_members�s���	�	�	�	�	�D�	�	�	�	
���
�5�;��5�5�6�6�6��������*�*�*�������.��3�3�3���������
�[�_�e�k�o�.�	�	�	�	
�����K�K�
�W�e�g��	�	�	�	�	r>c���Gd�dt��}|�t|jt����|�|jjd��|�|jjjd��|�t|j��|jj|jj
g��|�t|��|j|jg��dS)Nc�B�eZdZdZdZeGd�de����ZdS)�ETestSpecial.test_nested_classes_in_enum_with_nonmember.<locals>.OuterrCr(c��eZdZdZdZdS)�KTestSpecial.test_nested_classes_in_enum_with_nonmember.<locals>.Outer.Innerr`r�NrarLr>r<rcrv�������������r>rcN)rFrGrHr�rIrrrcrLr>r<rert�sR�������A��A�
�
�
�
�
�
��
�
��Y�
�
�
r>rerCr`rprgs  r<�*test_nested_classes_in_enum_with_nonmemberz6TestSpecial.test_nested_classes_in_enum_with_nonmember�s���	�	�	�	�	�D�	�	�	�	
���
�5�;��5�5�6�6�6��������*�*�*�������.��3�3�3���������
�[�_�e�k�o�.�	�	�	�	
�����K�K�
�W�e�g��	�	�	�	�	r>c�\����Gd�dt��}|�|jjt��|�|jtu��|�|jjt��Gd�d���Gd�d���G��fd�dt��}|�|j
j���|�|j�u��Gd	�d
���G�fd�dt��}|�|j�u��d
S)r;c�,�eZdZeZee��ZeZ	dS)�>TestSpecial.test_enum_of_types_with_nonmember.<locals>.MyTypesN)
rFrGrHr�r>rrar?r9r�rLr>r<r@r{�s'�������A��	�%� � �A��A�A�Ar>r@c��eZdZdS)�:TestSpecial.test_enum_of_types_with_nonmember.<locals>.FooNr�rLr>r<rCr}�r�r>rCc��eZdZdS)�:TestSpecial.test_enum_of_types_with_nonmember.<locals>.BarNr�rLr>r<rFr�r�r>rFc�*��eZdZ�Ze���ZdS)�?TestSpecial.test_enum_of_types_with_nonmember.<locals>.MyTypes2N)rFrGrHr�rrIrJs��r<rKr��s!��������A��	�#���A�A�Ar>rKc��eZdZdS)�FTestSpecial.test_enum_of_types_with_nonmember.<locals>.SpamEnumIsInnerNr�rLr>r<�SpamEnumIsInnerr��r�r>r�c�&��eZdZe���ZdS)�?TestSpecial.test_enum_of_types_with_nonmember.<locals>.SpamEnumN)rFrGrHrrI)r�s�r<rQr��s��������9�_�-�-�D�D�Dr>rQN)
rr�r>r?r�r�r?rar�r9r�rIrI)r�r@rKrQrFrCr�s    @@@r<�!test_enum_of_types_with_nonmemberz-TestSpecial.test_enum_of_types_with_nonmember�s������	�	�	�	�	�d�	�	�	�	
������#�.�.�.�����	�U�*�+�+�+�������#�.�.�.�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�t�	�	�	�	
�����)�3�/�/�/�����
�c�)�*�*�*�	�	�	�	�	�	�	�	�	.�	.�	.�	.�	.�	.�	.�t�	.�	.�	.�����
��8�9�9�9�9�9r>c��Gd�dt��}|�t|j|����|�|jjd��|�|jjjjd��|�t|jj��|jjj|jjj	g��|�t|��|j|j
|jg��dS)rkc�B�eZdZdZdZeGd�de����ZdS)�BTestSpecial.test_nested_classes_in_enum_with_member.<locals>.OuterrCr(c��eZdZdZdZdS)�HTestSpecial.test_nested_classes_in_enum_with_member.<locals>.Outer.Innerr`r�NrarLr>r<rcr��rwr>rcN)rFrGrHr�rIrrrcrLr>r<rer��sR�������A��A�
�
�
�
�
�
��
�
��V�
�
�
r>rerCr`N)rr�r�rcr�r�r?r�r�rbrIrgs  r<�'test_nested_classes_in_enum_with_memberz3TestSpecial.test_nested_classes_in_enum_with_member�s��	�	�	�	�	�D�	�	�	�	
���
�5�;��6�6�7�7�7��������*�*�*������*�.�4�b�9�9�9�������"�#�#�
�[�
�
"�E�K�$5�$9�:�	�	�	�	
�����K�K�
�W�e�g�u�{�+�	�	�	�	�	r>c�Z�Gd�dt��}|�t|��|j|jg��|�t
|j��|��|�|jjd��|�|jjd��dS)Nc��eZdZdZdZdS)�2TestSpecial.test_enum_with_value_name.<locals>.HuhrCr(N)rFrGrHr�r?rLr>r<�Huhr��rr>r�r�rC)rr�r�r�r?rrr�)r�r�s  r<�test_enum_with_value_namez%TestSpecial.test_enum_with_value_name�s���	�	�	�	�	�$�	�	�	�	
����c���S�X�s�y�$9�:�:�:��
�
�d�3�8�n�n�c�*�*�*��������/�/�/��������+�+�+�+�+r>c���Gd�dt��}Gd�d|tj��}|�t	|j��d��|t
��d<|t
��d<t|j|j��t|j|��Gd�d|��}Gd�d	|tj��}|�|j	|��|t
��d<|t
��d	<t|j|j
��t|j|��Gd
�dt��}Gd�d
|t��}|�|j	|��|�|d��|j��|t
��d<|t
��d
<t|j|j��t|j|��dS)Nc��eZdZdZd�ZdS)�4TestSpecial.test_inherited_data_type.<locals>.HexInt�HexIntc� �t|��Sr���hexr�s r<r�z=TestSpecial.test_inherited_data_type.<locals>.HexInt.__repr__�����4�y�y� r>NrrLr>r<r�r��s(������#�L�
!�
!�
!�
!�
!r>r�c��eZdZdZdZdZdZdS)�4TestSpecial.test_inherited_data_type.<locals>.MyEnumr�rCr(rDN�rFrGrHr*rvr�rLr>r<r�r�s"������#�L��A��A��A�A�Ar>r�z<MyEnum.A: 0x1>c��eZdZdZdS)�6TestSpecial.test_inherited_data_type.<locals>.SillyInt�SillyIntNr�rLr>r<r�r�s������%�L��Dr>r�c��eZdZdZdZdZdZdS)�9TestSpecial.test_inherited_data_type.<locals>.MyOtherEnum�MyOtherEnumrTr2�N)rFrGrHr�r+r�rLr>r<r�r�s"������(�L��A��A��A�A�Ar>r�c��eZdZdZd�ZdS)�9TestSpecial.test_inherited_data_type.<locals>.UnBrokenInt�UnBrokenIntc�8�t�||��Sr�)r�r[)rHr?s  r<r[zATestSpecial.test_inherited_data_type.<locals>.UnBrokenInt.__new__s���{�{�3��.�.�.r>Nr�rLr>r<r�r�s(������(�L�
/�
/�
/�
/�
/r>r�c��eZdZdZdZdZdZdS)�<TestSpecial.test_inherited_data_type.<locals>.MyUnBrokenEnum�MyUnBrokenEnumr��r�N)rFrGrH�G�H�IrLr>r<r�r�s"������+�L��A��A��A�A�Ar>r�r�)
r�r/rr�rpr*�globalsryrrr8r+r�r�)r�r�r�r�r�r�r�s       r<�test_inherited_data_typez$TestSpecial.test_inherited_data_type�sJ��	!�	!�	!�	!�	!�S�	!�	!�	!�	�	�	�	�	�V�T�Y�	�	�	�
	
����f�h���):�;�;�;�$��	�	�(��$��	�	�(���d�m�V�X�6�6�6��d�m�V�4�4�4�	�	�	�	�	�v�	�	�	�	�	�	�	�	�(�D�I�	�	�	�
	
�
�
�k�/��:�:�:� (��	�	�*��#.��	�	�-� ��d�m�[�]�;�;�;��d�m�[�9�9�9�	/�	/�	/�	/�	/�#�	/�	/�	/�	�	�	�	�	�[�$�	�	�	�
	
�
�
�n�2�K�@�@�@��
�
�n�n�Q�'�'��)9�:�:�:�#.��	�	�-� �&4��	�	�"�#��d�m�^�-=�>�>�>��d�m�^�<�<�<�<�<r>c��t�tjj��}|�t�|��tj��t�tjjdz��}|�t��5t�|��ddd��dS#1swxYwYdS)Ng{�G�z�?)	rar�rQrKr?rr�fromhexrPr�)r��hs  r<�test_floatenum_fromhexz"TestSpecial.test_floatenum_fromhex+s����I�I�l�&�,�-�-���
�
�l�*�*�1�-�-�|�/?�@�@�@��I�I�l�&�,�t�3�4�4��
�
�
�z�
*�
*�	$�	$�� � ��#�#�#�	$�	$�	$�	$�	$�	$�	$�	$�	$�	$�	$�	$����	$�	$�	$�	$�	$�	$s�(C�C�Cc��tddt���}t|��}|�t	|��t	|����|�t	|��d|��|�|j|j|jg|��td�	��d��D]z\}}||��}|�||��|�|j
|��|�||��|�t|��|���{dS)Nr�r�)r�rDrC�rr�r�r�r�r�r�r��	enumerater�r�r�rrr��r�r�r�r>rrs      r<�test_programmatic_function_typez+TestSpecial.test_programmatic_function_type2s0����&8�s�C�C�C�	��9�o�o������S���3�y�>�>�2�2�2�����Y����I�6�6�6���������1A�B��	�	�	�"�"4�":�":�"<�"<�a�@�@�	.�	.�H�A�u��	�!���A����Q��"�"�"����Q�V�U�+�+�+��M�M�!�Y�'�'�'��M�M�$�q�'�'�9�-�-�-�-�	.�	.r>c���tddd���}t|��}|�t|��t|����|�t|��d|��|�|j|j|jg|��td���d��D]�\}}||��}|�t|j
��|��|�||��|�|j|��|�
||��|�t|��|����dS)Nr�r�r`�r�rD�rr�r�r�r�r�r�r�r�r�r?r�r�r�rrr�r�s      r<�,test_programmatic_function_string_with_startz8TestSpecial.test_programmatic_function_string_with_startBsN����&8��C�C�C�	��9�o�o������S���3�y�>�>�2�2�2�����Y����I�6�6�6���������1A�B��	�	�	�"�"4�":�":�"<�"<�b�A�A�	.�	.�H�A�u��	�!���A����S���\�\�1�-�-�-�����1�%�%�%����Q�V�U�+�+�+��M�M�!�Y�'�'�'��M�M�$�q�'�'�9�-�-�-�-�
	.�	.r>c��tddtd���}t|��}|�t	|��t	|����|�t	|��d|��|�|j|j|jg|��td�	��d��D]z\}}||��}|�||��|�|j
|��|�||��|�t|��|���{dS)Nr�r�r�)r�r�rDr�r�s      r<�*test_programmatic_function_type_with_startz6TestSpecial.test_programmatic_function_type_with_startSs2����&8�s�"�M�M�M�	��9�o�o������S���3�y�>�>�2�2�2�����Y����I�6�6�6���������1A�B��	�	�	�"�"4�":�":�"<�"<�b�A�A�	.�	.�H�A�u��	�!���A����Q��"�"�"����Q�V�U�+�+�+��M�M�!�Y�'�'�'��M�M�$�q�'�'�9�-�-�-�-�	.�	.r>c���tdgd�d���}t|��}|�t|��t|����|�t|��d|��|�|j|j|jg|��td���d��D]�\}}||��}|�t|j
��|��|�||��|�|j|��|�
||��|�t|��|����dS)Nr�r��r�rDr�r�r�s      r<�1test_programmatic_function_string_list_with_startz=TestSpecial.test_programmatic_function_string_list_with_startcsT����&@�&@�&@��K�K�K�	��9�o�o������S���3�y�>�>�2�2�2�����Y����I�6�6�6���������1A�B��	�	�	�"�"4�":�":�"<�"<�b�A�A�	.�	.�H�A�u��	�!���A����S���\�\�1�-�-�-�����1�%�%�%����Q�V�U�+�+�+��M�M�!�Y�'�'�'��M�M�$�q�'�'�9�-�-�-�-�
	.�	.r>c�v�tdd��}t|��}|�t|��t|����|�t|��d|��|�|j|j|jg|��td���d��D]z\}}||��}|�||��|�|j	|��|�
||��|�t|��|���{dS)Nr�r�rDrC�
rr�r�r�r�r�r�r�r�r�r�rrr�r�s      r<�-test_programmatic_function_type_from_subclassz9TestSpecial.test_programmatic_function_type_from_subclassts+���K�);�<�<�	��9�o�o������S���3�y�>�>�2�2�2�����Y����I�6�6�6���������1A�B��	�	�	�"�"4�":�":�"<�"<�a�@�@�	.�	.�H�A�u��	�!���A����Q��"�"�"����Q�V�U�+�+�+��M�M�!�Y�'�'�'��M�M�$�q�'�'�9�-�-�-�-�	.�	.r>c�z�tddd���}t|��}|�t|��t|����|�t|��d|��|�|j|j|jg|��td���d��D]z\}}||��}|�||��|�|j	|��|�
||��|�t|��|���{dS)Nr�r��(r�rDr�r�s      r<�8test_programmatic_function_type_from_subclass_with_startzDTestSpecial.test_programmatic_function_type_from_subclass_with_start�s0���K�);�2�F�F�F�	��9�o�o������S���3�y�>�>�2�2�2�����Y����I�6�6�6���������1A�B��	�	�	�"�"4�":�":�"<�"<�b�A�A�	.�	.�H�A�u��	�!���A����Q��"�"�"����Q�V�U�+�+�+��M�M�!�Y�'�'�'��M�M�$�q�'�'�9�-�-�-�-�	.�	.r>c��|�t�dd��tj��|�t
��5t�dd��ddd��dS#1swxYwYdS)Ns�bigs)rrrO�
from_bytesrKrPr�r�s r<�test_intenum_from_bytesz#TestSpecial.test_intenum_from_bytes�s����
�
�j�+�+�K��?�?���P�P�P�
�
�
�z�
*�
*�	6�	6��!�!�+�u�5�5�5�	6�	6�	6�	6�	6�	6�	6�	6�	6�	6�	6�	6����	6�	6�	6�	6�	6�	6s�A=�=B�Bc��|�td��5Gd�dt��}ddd��dS#1swxYwYdS)Nz-_sunder_ names, such as ._bad_., are reservedc��eZdZdZdS)�3TestSpecial.test_reserved_sunder_error.<locals>.BadrCN)rFrGrHr�rLr>r<�Badr��s���������r>r�)r�r�r)r�r�s  r<�test_reserved_sunder_errorz&TestSpecial.test_reserved_sunder_error�s���
�
#�
#��?���	�	�
�
�
�
�
�d�
�
�
�		�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�	�	rcc��|�td��5Gd�dttt��}ddd��n#1swxYwYGd�dt��}Gd�dt��}|�td��5Gd�d||t��}ddd��dS#1swxYwYdS)	Nztoo many data typesc��eZdZdZdS��1TestSpecial.test_too_many_data_types.<locals>.HuhrCN�rFrGrH�OnerLr>r<r�r��r�r>r�c��eZdZd�ZdS)�3TestSpecial.test_too_many_data_types.<locals>.MyStrc��d|zS)Nz	hello, %srLr�s r<�helloz9TestSpecial.test_too_many_data_types.<locals>.MyStr.hello�s
��"�T�)�)r>N�rFrGrHr�rLr>r<�MyStrr��s#������
*�
*�
*�
*�
*r>r�c��eZdZd�ZdS)�3TestSpecial.test_too_many_data_types.<locals>.MyIntc� �t|��Sr�r�r�s r<rpz8TestSpecial.test_too_many_data_types.<locals>.MyInt.repr�r�r>N)rFrGrHrprLr>r<�MyIntr���#������
!�
!�
!�
!�
!r>r�c��eZdZdZdSr�r�rLr>r<r�z1TestSpecial.test_too_many_data_types.<locals>.Huh�r�r>)r�rar9r�r)r�r�r�r�s    r<�test_too_many_data_typesz$TestSpecial.test_too_many_data_types�s���
�
#�
#�I�/D�
E�
E�	�	�
�
�
�
�
�c�3��
�
�
�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�	*�	*�	*�	*�	*�C�	*�	*�	*�	!�	!�	!�	!�	!�C�	!�	!�	!��
#�
#�I�/D�
E�
E�	�	�
�
�
�
�
�e�U�D�
�
�
�	�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�	�	s#� A�A�A�B7�7B;�>B;c��ttt��rt�t|jtj��t|jt��dSr�)r�rBr8ryrrrJr�s r<�test_pickle_enumzTestSpecial.test_pickle_enum�sE���g�y�)�)�	��M��d�m�W�]�;�;�;��d�m�W�5�5�5�5�5r>c��ttt��rt�t|jtj��t|jt��dSr�)r�rOr8ryrrrJr�s r<�test_pickle_intzTestSpecial.test_pickle_int�sG���j�)�,�,�	����d�m�Z�-=�>�>�>��d�m�Z�8�8�8�8�8r>c��ttt��rt�t|jtj��t|jt��dSr�)r�rQr8ryrrrJr�s r<�test_pickle_floatzTestSpecial.test_pickle_float�sG���l�I�.�.�	����d�m�\�-?�@�@�@��d�m�\�:�:�:�:�:r>c��ttt��rt�t|jtj��t|jt��dSr�)r�rir8ryrr�himr�s r<�test_pickle_enum_functionz%TestSpecial.test_pickle_enum_function�sE���f�i�(�(�	��L��d�m�V�Z�8�8�8��d�m�V�4�4�4�4�4r>c��ttt��rt�t|jtj��t|jt��dSr�)r�rfr8ryrr�whor�s r<�%test_pickle_enum_function_with_modulez1TestSpecial.test_pickle_enum_function_with_module�sE���h�	�*�*�	��N��d�m�X�\�:�:�:��d�m�X�6�6�6�6�6r>c��Gd�dt��}||j_d|jjz|j_t|j|jj��dS)Nc��eZdZdZdZdS)�8TestSpecial.test_pickle_nested_class.<locals>.NestedEnum�common�rareN)rFrGrH�twigs�shinyrLr>r<�
NestedEnumr��s�������E��E�E�Er>r�z
%s.NestedEnum)rr\r�rFrHryrrr�)r�r�s  r<�test_pickle_nested_classz$TestSpecial.test_pickle_nested_class�si��	�	�	�	�	��	�	�	�%/���!�'6���9P�'P���$��d�m�T�_�-B�C�C�C�C�Cr>c���Gd�dt��}tj|_t	t
��D]0}|�|j�|��d���1dS)Nc��eZdZdZdZdS)�9TestSpecial.test_pickle_by_name.<locals>.ReplaceGlobalIntrCr(Nr�rLr>r<�ReplaceGlobalIntr����������C��C�C�Cr>r�r�)rr/�_reduce_ex_by_global_name�
__reduce_ex__rur!r�r�)r�r��protos   r<�test_pickle_by_namezTestSpecial.test_pickle_by_name�s���	�	�	�	�	�w�	�	�	�*.�)G��&��+�,�,�	O�	O�E����-�1�?�?��F�F��N�N�N�N�	O�	Or>c���tddt���}|t��d<tj|��t|jt|j��t|jt|��dS)N�	BadPicklezdill sweet bread-n-butterrg)
rrFr�r/�_make_class_unpicklabler}rPra�dillr )r�rs  r<�test_pickle_explodesz TestSpecial.test_pickle_explodes�sr����8��K�K�K�	�!*��	�	�+���$�Y�/�/�/��d�/��I�N�K�K�K��d�/��	�J�J�J�J�Jr>c�n�Gd�dtt��}|�|jd��dS)Nc��eZdZdZdZdZdS)�0TestSpecial.test_string_enum.<locals>.SkillLevelz'what is the sound of one hand clapping?z#why did the chicken cross the road?�
knock, knock!N)rFrGrH�master�
journeyman�
apprenticerLr>r<�
SkillLevelr�s������>�F�>�J�(�J�J�Jr>rr)r9rr�r)r�rs  r<�test_string_enumzTestSpecial.test_string_enum�sO��	)�	)�	)�	)�	)��d�	)�	)�	)�	
����.��@�@�@�@�@r>c��Gd�dt��}|�|d��|j��|�t|d��|j��|�|d|j��dS)Nc��eZdZdZdZdZdZdS)�0TestSpecial.test_getattr_getitem.<locals>.PeriodrCr(rDrTN)rFrGrH�morning�noon�evening�nightrLr>r<�Periodr�s"�������G��D��G��E�E�Er>rr(rr)rrrrr;rr�r�rs  r<�test_getattr_getitemz TestSpecial.test_getattr_getitem�s���	�	�	�	�	�T�	�	�	�
	
�
�
�f�f�Q�i�i���-�-�-��
�
�g�f�g�.�.���=�=�=��
�
�f�Y�'���8�8�8�8�8r>c�Z�|j}|�t|d����dS)N�__eq__)rNr�r;rSs  r<�test_getattr_dunderzTestSpecial.test_getattr_dunder�s+�����������1�1�2�2�2�2�2r>c��Gd�dt��}|�t|��|j|j|j|jg��dS)Nc��eZdZdZdZdZdZdS)�0TestSpecial.test_iteration_order.<locals>.Seasonr(rTrDrCN)rFrGrHrLr�rMrKrLr>r<rNr!�r�r>rN)rr�r�rLr�rMrKrSs  r<�test_iteration_orderz TestSpecial.test_iteration_order�sm��	�	�	�	�	�T�	�	�	�
	
����V������
�v�}�f�m�L�	�	�	�	�	r>c��ttt��rt�|�tjd��|�tjtd����|�tjttd����t|jtj��dS)Nrcrd)	r�rbr8r�rdr�rrr;ryr�s r<�test_subclassingzTestSpecial.test_subclassing	s����d�I�&�&�	��J������$6�7�7�7�����	�4�(:�#;�#;�<�<�<��
�
�d�i���v�!6�!6�7�7�7��d�m�T�Y�7�7�7�7�7r>c��Gd�dt��}|�t��5Gd�d|��}ddd��n#1swxYwY|�td��5Gd�d|t��}ddd��n#1swxYwY|�td��5|d	d
��ddd��dS#1swxYwYdS)Nc��eZdZdZdZdZdS)�)TestSpecial.test_extending.<locals>.ColorrCr(rDNr*rLr>r<r.r'��������C��E��D�D�Dr>r.c��eZdZdZdZdZdS)�-TestSpecial.test_extending.<locals>.MoreColorrTr2r�N�rFrGrH�cyan�magenta�yellowrLr>r<�	MoreColorr*��������������r>r/z3<enum .EvenMoreColor.> cannot extend <enum .Color.>c��eZdZdZdS)�1TestSpecial.test_extending.<locals>.EvenMoreColorr�N)rFrGrH�
chartrueserLr>r<�
EvenMoreColorr2r�r>r4z)<enum .Foo.> cannot extend <enum .Color.>rC)�pink�black)rrPrar�r)r�r.r/r4s    r<�test_extendingzTestSpecial.test_extendings���	�	�	�	�	�D�	�	�	�
�
�
�y�
)�
)�	�	�
�
�
�
�
�E�
�
�
�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	��
#�
#�I�/d�
e�
e�	�	�
�
�
�
�
��w�
�
�
�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	��
#�
#�I�/Z�
[�
[�	,�	,��E�%�*�+�+�+�	,�	,�	,�	,�	,�	,�	,�	,�	,�	,�	,�	,����	,�	,�	,�	,�	,�	,s5�A	�	A
�A
�/B�B�B�6
C�C�Cc���Gd�dt��}|�t|j��|��|�|j���d��dS)Nc��eZdZdZdZd�ZdS)�2TestSpecial.test_exclude_methods.<locals>.whateverr�thosec��d|jzS)Nz
no, not %srkr�s r<�reallyz9TestSpecial.test_exclude_methods.<locals>.whatever.really(s��#�d�j�0�0r>N)rFrGrHr�r�r=rLr>r<�whateverr:%s-�������D��E�
1�
1�
1�
1�
1r>r>zno, not that)r�assertIsNotr�r=r�r�)r�r>s  r<�test_exclude_methodsz TestSpecial.test_exclude_methods$sx��	1�	1�	1�	1�	1�t�	1�	1�	1�
	
����h�o�.�.��9�9�9������-�-�/�/��@�@�@�@�@r>c��|�t��5Gd�dtt��}ddd��dS#1swxYwYdS)Nc��eZdZdZdS)�7TestSpecial.test_wrong_inheritance_order.<locals>.Wrongzerror before this pointN)rFrGrH�NotHererLr>r<r�rC/s������3���r>r�)rPrarr9r�s  r<�test_wrong_inheritance_orderz(TestSpecial.test_wrong_inheritance_order-s���
�
�
�y�
)�
)�	4�	4�
4�
4�
4�
4�
4��c�
4�
4�
4�	4�	4�	4�	4�	4�	4�	4�	4�	4�	4�	4�	4����	4�	4�	4�	4�	4�	4s�A�A�	Ac��Gd�dt��}Gd�dt��}|�|j|j��|�|j|j��|�|j|j��dS)Nc��eZdZdZdZdZdS)�5TestSpecial.test_intenum_transitivity.<locals>.numberrCr(rDN�rFrGrHr�r��threerLr>r<�numberrH3��������C��C��E�E�Er>rKc��eZdZdZdZdZdS)�5TestSpecial.test_intenum_transitivity.<locals>.numerorCr(rDN)rFrGrH�uno�dos�tresrLr>r<�numerorN7��������C��C��D�D�Dr>rR)rr�r�rOr�rPrJrQ)r�rKrRs   r<�test_intenum_transitivityz%TestSpecial.test_intenum_transitivity2s���	�	�	�	�	�W�	�	�	�	�	�	�	�	�W�	�	�	�	
�����V�Z�0�0�0������V�Z�0�0�0������v�{�3�3�3�3�3r>c��Gd�dt��}Gd�dt��}|�t||j��dS)Nc��eZdZdZdZdS)�7TestSpecial.test_wrong_enum_in_call.<locals>.MonochromerrCN�rFrGrHr6�whiterLr>r<�
MonochromerW@��������E��E�E�Er>rZc��eZdZdZdZdS)�3TestSpecial.test_wrong_enum_in_call.<locals>.GenderrrCN�rFrGrH�male�femalerLr>r<�Genderr]C��������D��F�F�Fr>ra)rrPr�r_�r�rZras   r<�test_wrong_enum_in_callz#TestSpecial.test_wrong_enum_in_call?sx��	�	�	�	�	��	�	�	�	�	�	�	�	�T�	�	�	�	
���*�j�&�+�>�>�>�>�>r>c��Gd�dt��}Gd�dt��}|�t||j��dS)Nc��eZdZdZdZdS)�=TestSpecial.test_wrong_enum_in_mixed_call.<locals>.MonochromerrCNrXrLr>r<rZrgIr[r>rZc��eZdZdZdZdS)�9TestSpecial.test_wrong_enum_in_mixed_call.<locals>.GenderrrCNr^rLr>r<rariLrbr>ra)rrrPr�r_rcs   r<�test_wrong_enum_in_mixed_callz)TestSpecial.test_wrong_enum_in_mixed_callHsx��	�	�	�	�	��	�	�	�	�	�	�	�	�T�	�	�	�	
���*�j�&�+�>�>�>�>�>r>c��Gd�dt��}Gd�dt��}|�||j��|j��dS)Nc��eZdZdZdZdS)�9TestSpecial.test_mixed_enum_in_call_1.<locals>.MonochromerrCNrXrLr>r<rZrmRr[r>rZc��eZdZdZdZdS)�5TestSpecial.test_mixed_enum_in_call_1.<locals>.GenderrrCNr^rLr>r<raroUrbr>ra)rrrr`rYrcs   r<�test_mixed_enum_in_call_1z%TestSpecial.test_mixed_enum_in_call_1Qs���	�	�	�	�	��	�	�	�	�	�	�	�	�W�	�	�	�	
�
�
�j�j���/�/��1A�B�B�B�B�Br>c��Gd�dt��}Gd�dt��}|�||j��|j��dS)Nc��eZdZdZdZdS)�9TestSpecial.test_mixed_enum_in_call_2.<locals>.MonochromerrCNrXrLr>r<rZrs[r[r>rZc��eZdZdZdZdS)�5TestSpecial.test_mixed_enum_in_call_2.<locals>.GenderrrCNr^rLr>r<raru^rbr>ra)rrrrr_r6rcs   r<�test_mixed_enum_in_call_2z%TestSpecial.test_mixed_enum_in_call_2Zs���	�	�	�	�	��	�	�	�	�	�	�	�	�W�	�	�	�	
�
�
�j�j���-�-�z�/?�@�@�@�@�@r>c��Gd�dt��}Gd�d|��}|�t|j��d��dS)Nc��eZdZd�ZdS)�-TestSpecial.test_flufl_enum.<locals>.Fluflnumc�*�t|j��Sr�)r�r?r�s r<�__int__z5TestSpecial.test_flufl_enum.<locals>.Fluflnum.__int__es���4�:���&r>N)rFrGrHr{rLr>r<�Fluflnumryd�#������
'�
'�
'�
'�
'r>r|c��eZdZdZdZdZdS)�3TestSpecial.test_flufl_enum.<locals>.MailManOptionsrCr(rDN)rFrGrH�option1�option2�option3rLr>r<�MailManOptionsrgs�������G��G��G�G�Gr>r�rC)rr�r�r�)r�r|r�s   r<�test_flufl_enumzTestSpecial.test_flufl_enumcs��	'�	'�	'�	'�	'�t�	'�	'�	'�	�	�	�	�	�X�	�	�	�	
����^�3�4�4�a�8�8�8�8�8r>c�"�Gd�dt��}|�|jjt��|�|jt��Gd�dt
t��}|�|jjt
��|�|jt
��Gd�dt��}|�|jjt��|�|jt��dS)Nc��eZdZdZdZdS)�.TestSpecial.test_introspection.<locals>.Number�d��N�rFrGrHr�r�rLr>r<�Numberr�ns�������C��C�C�Cr>r�c��eZdZdZdZdZdS)�.TestSpecial.test_introspection.<locals>.String�soft�rough�hardN)rFrGrH�yarn�rope�wirerLr>r<�Stringr�ss�������D��D��D�D�Dr>r�c��eZdZdZdZdS)�-TestSpecial.test_introspection.<locals>.PlainrYrCN)rFrGrH�vanillar�rLr>r<�Plainr�ys�������G��C�C�Cr>r�)
rrrr�r8r�r9rr�r�r�)r�r�r�r�s    r<�test_introspectionzTestSpecial.test_introspectionms��	�	�	�	�	�W�	�	�	�	
�
�
�f�j�.��4�4�4��
�
�f�*�C�0�0�0�	�	�	�	�	�S�$�	�	�	�	
�
�
�f�k�/��5�5�5��
�
�f�*�C�0�0�0�	�	�	�	�	�D�	�	�	�	
�
�
�e�m�1�6�:�:�:��
�
�e�)�6�2�2�2�2�2r>c��Gd�dt��}|�t��5|d��ddd��n#1swxYwY|�t��5|dddd��dS#1swxYwYdS)Nc��eZdZdZdZdZdS)�3TestSpecial.test_no_such_enum_member.<locals>.ColorrCr(rDNr*rLr>r<r.r��r(r>r.rT�
chartreuse)rrPr��KeyErrorr5s  r<�test_no_such_enum_memberz$TestSpecial.test_no_such_enum_members'��	�	�	�	�	�D�	�	�	��
�
�z�
*�
*�	�	��E�!�H�H�H�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�
�
�
�x�
(�
(�	 �	 ��,���	 �	 �	 �	 �	 �	 �	 �	 �	 �	 �	 �	 ����	 �	 �	 �	 �	 �	 s#�A�A
�
A
�+	B�B�Bc����G�fd�dtt�����Gd�dt����}Gd�dt����}Gd�d	|��}Gd
�d|��}dS)Nc�"���eZdZ��fd�Z�xZS)�6TestSpecial.test_multiple_mixin_mro.<locals>.auto_enumc�R��t|����}||_t|j��}d}|jD]"}||}|tur|}n|}|dz
}|||<�#|���D]\}}||vr|||<�t
�
|���||||��S�NrrC)r��	_cls_namer��
_member_names�Ellipsis�itemsrZr[)�metaclsrH�bases�	classdict�tempr6r>�k�vr\�	auto_enums         ��r<r[z>TestSpecial.test_multiple_mixin_mro.<locals>.auto_enum.__new__�s����&�t�I���(�(��!$����I�3�4�4����"�0� � �A�!�!��A��H�}�}��������F�A��D��G�G�%�O�O�-�-�$�$�D�A�q���~�~�"#��Q����Y��0�0�8�8���e�T�3�3�3r>�rFrGrHr[r^)r\r�s@�r<r�r��s>��������
3�
3�
3�
3�
3�
3�
3�
3�
3�
3r>r�c��eZdZdS)�=TestSpecial.test_multiple_mixin_mro.<locals>.AutoNumberedEnumNr�rLr>r<�AutoNumberedEnumr��r�r>r�r&c��eZdZdS)�8TestSpecial.test_multiple_mixin_mro.<locals>.AutoIntEnumNr�rLr>r<�AutoIntEnumr��r�r>r�c��eZdZdZdZdZdS)�;TestSpecial.test_multiple_mixin_mro.<locals>.TestAutoNumber.rDN�rFrGrHr�rI�crLr>r<�TestAutoNumberr����������A��A��A�A�Ar>r�c��eZdZdZdZdZdS)�8TestSpecial.test_multiple_mixin_mro.<locals>.TestAutoInt.rDNr�rLr>r<�TestAutoIntr��r�r>r�)r�rr)r�r�r�r�r�r�s     @r<�test_multiple_mixin_mroz#TestSpecial.test_multiple_mixin_mro�s����	3�	3�	3�	3�	3�	3�	3��T�
�
�	3�	3�	3�(	�	�	�	�	�t�y�	�	�	�	�	�	�	�	�	�'�Y�	�	�	�	�	�	�	�	�	�-�	�	�	�
	�	�	�	�	�+�	�	�	�	�	r>c�V��G�fd�dt���Gd�d�t��}|�|jtj��|�t|j|jz��d���t��d<|t��d<�dd��}|�|d��t|j|d��|�|jj
d��t|j|j��t|j|��dS)	Nc�V��eZdZdZd�Zd�Zejd���Zd�Zd�Z�fd�Z	dS)	�=TestSpecial.test_subclasses_with_getnewargs.<locals>.NamedInt�NamedIntc��|}|^}}t|��dkrtd���tj|g|�R�}||_||_|S�Nr� name and value must be specified�r�rar�r[�_intname�_args�rH�argsr�r�r�s     r<r[zETestSpecial.test_subclasses_with_getnewargs.<locals>.NamedInt.__new__��X����"���t��t�9�9��>�>�#�$F�G�G�G��{�3�.��.�.�.�� $��
�"��
��r>c��|jSr��r�r�s r<�__getnewargs__zLTestSpecial.test_subclasses_with_getnewargs.<locals>.NamedInt.__getnewargs__�s
���z�!r>c��|jSr��r�r�s r<rFzFTestSpecial.test_subclasses_with_getnewargs.<locals>.NamedInt.__name__��
���}�$r>c��d�t|��j|jt�|����S�Nz{}({!r}, {})�r>r�rFr�r�r�s r<r�zFTestSpecial.test_subclasses_with_getnewargs.<locals>.NamedInt.__repr__��:��%�,�,��T�
�
�+��
����T�*�*���r>c�z�t}|j}|jtur|�|��S||��Sr��r�r�__objclass__r�r��r��base�base_strs   r<rzETestSpecial.test_subclasses_with_getnewargs.<locals>.NamedInt.__str__��<�����<���(�F�2�2��=�=��.�.�.��x��~�~�%r>c����t|��t|��z}t|���r:t|���r*�d�|j|j��|��S|S�Nz({0} + {1})�r�r�r>rF�r��otherr�r�s   �r<�__add__zETestSpecial.test_subclasses_with_getnewargs.<locals>.NamedInt.__add__��q����4�y�y�3��;�;�.���d�H�-�-� �*�U�H�2M�2M� �#�8�%�,�,�T�]�E�N�K�K�����
 �Kr>N)
rFrGrHr[r��bltnsrr�rr��r�s�r<r�r��s��������%�L�
�
�
�
"�
"�
"�
�^�
%�
%��^�
%�
�
�
�
&�
&�
&�
 �
 �
 �
 �
 �
 �
 r>r�c��eZdZdZdZdZdS)�8TestSpecial.test_subclasses_with_getnewargs.<locals>.NEI�NEI�zthe-xrC�zthe-yr(N�rFrGrH�x�yrLr>r<r�r��������� �L��A��A�A�Ar>r��NamedInt('(the-x + the-y)', 3)�testr2r(�r�rrrr[r�rpr�r�r�ryr?�r�r��NI5r�s   @r<�test_subclasses_with_getnewargsz+TestSpecial.test_subclasses_with_getnewargs��C���(	 �(	 �(	 �(	 �(	 �(	 �(	 �s�(	 �(	 �(	 �T	�	�	�	�	�(�D�	�	�	�	
�
�
�c�k�4�<�0�0�0�����c�e�c�e�m�,�,�.N�O�O�O� (��	�	�*����	�	�%���h�v�q�!�!������a� � � ��d�.��Q�7�7�7�������a�(�(�(��d�m�S�U�3�3�3��d�m�S�1�1�1�1�1r>c�V��G�fd�dt���Gd�d�t��}|�|jtj��|�t|j|jz��d���t��d<|t��d<�dd��}|�|d��t|j|d��|�|jj
d��t|j|j��t|j|��dS)	Nc�V��eZdZdZd�Zd�Zejd���Zd�Zd�Z�fd�Z	dS)	�@TestSpecial.test_subclasses_with_getnewargs_ex.<locals>.NamedIntr�c��|}|^}}t|��dkrtd���tj|g|�R�}||_||_|Sr�r�r�s     r<r[zHTestSpecial.test_subclasses_with_getnewargs_ex.<locals>.NamedInt.__new__�r�r>c��|jifSr�r�r�s r<�__getnewargs_ex__zRTestSpecial.test_subclasses_with_getnewargs_ex.<locals>.NamedInt.__getnewargs_ex__�s���z�2�~�%r>c��|jSr�r�r�s r<rFzITestSpecial.test_subclasses_with_getnewargs_ex.<locals>.NamedInt.__name__�r�r>c��d�t|��j|jt�|����Sr�r�r�s r<r�zITestSpecial.test_subclasses_with_getnewargs_ex.<locals>.NamedInt.__repr__�r�r>c�z�t}|j}|jtur|�|��S||��Sr�r�r�s   r<rzHTestSpecial.test_subclasses_with_getnewargs_ex.<locals>.NamedInt.__str__r�r>c����t|��t|��z}t|���r:t|���r*�d�|j|j��|��S|Sr�r�r�s   �r<r�zHTestSpecial.test_subclasses_with_getnewargs_ex.<locals>.NamedInt.__add__
r�r>N)
rFrGrHr[r�r�rr�rr�r�s�r<r�r��s��������%�L�
�
�
�
&�
&�
&�
�^�
%�
%��^�
%�
�
�
�
&�
&�
&�
 �
 �
 �
 �
 �
 �
 r>r�c��eZdZdZdZdZdS)�;TestSpecial.test_subclasses_with_getnewargs_ex.<locals>.NEIr�r�r�Nr�rLr>r<r�rr�r>r�r�r�r2r(r�r�s   @r<�"test_subclasses_with_getnewargs_exz.TestSpecial.test_subclasses_with_getnewargs_ex�r�r>c�V��G�fd�dt���Gd�d�t��}|�|jtj��|�t|j|jz��d���t��d<|t��d<�dd��}|�|d��t|j|d��|�|jj
d��t|j|j��t|j|��dS)	Nc�V��eZdZdZd�Zd�Zejd���Zd�Zd�Z�fd�Z	dS)	�9TestSpecial.test_subclasses_with_reduce.<locals>.NamedIntr�c��|}|^}}t|��dkrtd���tj|g|�R�}||_||_|Sr�r�r�s     r<r[zATestSpecial.test_subclasses_with_reduce.<locals>.NamedInt.__new__+r�r>c��|j|jfSr��r\r�r�s r<�
__reduce__zDTestSpecial.test_subclasses_with_reduce.<locals>.NamedInt.__reduce__4����~�t�z�1�1r>c��|jSr�r�r�s r<rFzBTestSpecial.test_subclasses_with_reduce.<locals>.NamedInt.__name__6r�r>c��d�t|��j|jt�|����Sr�r�r�s r<r�zBTestSpecial.test_subclasses_with_reduce.<locals>.NamedInt.__repr__9r�r>c�z�t}|j}|jtur|�|��S||��Sr�r�r�s   r<rzATestSpecial.test_subclasses_with_reduce.<locals>.NamedInt.__str__@r�r>c����t|��t|��z}t|���r:t|���r*�d�|j|j��|��S|Sr�r�r�s   �r<r�zATestSpecial.test_subclasses_with_reduce.<locals>.NamedInt.__add__Ir�r>N)
rFrGrHr[rr�rr�rr�r�s�r<r�r)��������%�L�
�
�
�
2�
2�
2�
�^�
%�
%��^�
%�
�
�
�
&�
&�
&�
 �
 �
 �
 �
 �
 �
 r>r�c��eZdZdZdZdZdS)�4TestSpecial.test_subclasses_with_reduce.<locals>.NEIr�r�r�Nr�rLr>r<r�rSr�r>r�r�r�r2r(r�r�s   @r<�test_subclasses_with_reducez'TestSpecial.test_subclasses_with_reduce(r�r>c�V��G�fd�dt���Gd�d�t��}|�|jtj��|�t|j|jz��d���t��d<|t��d<�dd��}|�|d��t|j|d��|�|jj
d��t|j|j��t|j|��dS)	Nc�V��eZdZdZd�Zd�Zejd���Zd�Zd�Z�fd�Z	dS)	�<TestSpecial.test_subclasses_with_reduce_ex.<locals>.NamedIntr�c��|}|^}}t|��dkrtd���tj|g|�R�}||_||_|Sr�r�r�s     r<r[zDTestSpecial.test_subclasses_with_reduce_ex.<locals>.NamedInt.__new__gr�r>c��|j|jfSr�r
�r�rs  r<rzJTestSpecial.test_subclasses_with_reduce_ex.<locals>.NamedInt.__reduce_ex__prr>c��|jSr�r�r�s r<rFzETestSpecial.test_subclasses_with_reduce_ex.<locals>.NamedInt.__name__rr�r>c��d�t|��j|jt�|����Sr�r�r�s r<r�zETestSpecial.test_subclasses_with_reduce_ex.<locals>.NamedInt.__repr__ur�r>c�z�t}|j}|jtur|�|��S||��Sr�r�r�s   r<rzDTestSpecial.test_subclasses_with_reduce_ex.<locals>.NamedInt.__str__|r�r>c����t|��t|��z}t|���r:t|���r*�d�|j|j��|��S|Sr�r�r�s   �r<r�zDTestSpecial.test_subclasses_with_reduce_ex.<locals>.NamedInt.__add__�r�r>N)
rFrGrHr[rr�rr�rr�r�s�r<r�rerr>r�c��eZdZdZdZdZdS)�7TestSpecial.test_subclasses_with_reduce_ex.<locals>.NEIr�r�r�Nr�rLr>r<r�r �r�r>r�r�r�r2r(r�r�s   @r<�test_subclasses_with_reduce_exz*TestSpecial.test_subclasses_with_reduce_exdsC���(	 �(	 �(	 �(	 �(	 �(	 �(	 �s�(	 �(	 �(	 �T	�	�	�	�	�(�D�	�	�	�
	
�
�
�c�k�4�<�0�0�0�����c�e�c�e�m�,�,�.N�O�O�O� (��	�	�*����	�	�%���h�v�q�!�!������a� � � ��d�.��Q�7�7�7�������a�(�(�(��d�m�S�U�3�3�3��d�m�S�1�1�1�1�1r>c����G�fd�dt���Gd�d�t��}|�|jtj��|�t|j|jz��d���t��d<|t��d<�dd��}|�|d��|�|jj	d��|�
td	��5t|j|j��ddd��n#1swxYwYtj|_t|j|j��t|j|��dS)
Nc�P��eZdZdZd�Zejd���Zd�Zd�Z�fd�ZdS)�KTestSpecial.test_subclasses_without_direct_pickle_support.<locals>.NamedIntr�c��|}|^}}t|��dkrtd���tj|g|�R�}||_||_|Sr�r�r�s     r<r[zSTestSpecial.test_subclasses_without_direct_pickle_support.<locals>.NamedInt.__new__�r�r>c��|jSr�r�r�s r<rFzTTestSpecial.test_subclasses_without_direct_pickle_support.<locals>.NamedInt.__name__�r�r>c��d�t|��j|jt�|����Sr�r�r�s r<r�zTTestSpecial.test_subclasses_without_direct_pickle_support.<locals>.NamedInt.__repr__�r�r>c�z�t}|j}|jtur|�|��S||��Sr�r�r�s   r<rzSTestSpecial.test_subclasses_without_direct_pickle_support.<locals>.NamedInt.__str__�r�r>c����t|��t|��z}t|���r:t|���r*�d�|j|j��|��S|Sr�r�r�s   �r<r�zSTestSpecial.test_subclasses_without_direct_pickle_support.<locals>.NamedInt.__add__�sq����4�y�y�3��;�;�.���d�H�-�-� �*�U�H�2M�2M� �#�8�%�,�,�T�]�E�N�K�K����� �Kr>N�	rFrGrHr[r�rr�rr�r�s�r<r�r$�s}�������%�L�
�
�
��^�
%�
%��^�
%�
�
�
�
&�
&�
&�
 �
 �
 �
 �
 �
 �
 r>r�c��eZdZdZdZdZdS)�FTestSpecial.test_subclasses_without_direct_pickle_support.<locals>.NEIr�r�r�Nr�rLr>r<r�r,�r�r>r�r�r�r2r(r�)r�rrrr[r�rpr�r�r�r?r�raryr/�pickle_by_enum_namerr�s   @r<�-test_subclasses_without_direct_pickle_supportz9TestSpecial.test_subclasses_without_direct_pickle_support�s����%	 �%	 �%	 �%	 �%	 �%	 �%	 �s�%	 �%	 �%	 �N	�	�	�	�	�(�D�	�	�	�	
�
�
�c�k�4�<�0�0�0�����c�e�c�e�m�,�,�.N�O�O�O� (��	�	�*����	�	�%���h�v�q�!�!������a� � � �������a�(�(�(�
�
#�
#�I�/Q�
R�
R�	8�	8�!�$�-���7�7�7�	8�	8�	8�	8�	8�	8�	8�	8�	8�	8�	8����	8�	8�	8�	8�!�4����d�m�S�U�3�3�3��d�m�S�1�1�1�1�1s�?D&�&D*�-D*c�*��G�fd�dt���Gd�d�t��}|�|jtj��|�t|j|jz��d���t��d<|t��d<�dd��}|�|d��|�|jj	d��t|j|j��t|j|��dS)	Nc�P��eZdZdZd�Zejd���Zd�Zd�Z�fd�ZdS)�HTestSpecial.test_subclasses_with_direct_pickle_support.<locals>.NamedIntr�c��|}|^}}t|��dkrtd���tj|g|�R�}||_||_|Sr�r�r�s     r<r[zPTestSpecial.test_subclasses_with_direct_pickle_support.<locals>.NamedInt.__new__�r�r>c��|jSr�r�r�s r<rFzQTestSpecial.test_subclasses_with_direct_pickle_support.<locals>.NamedInt.__name__�r�r>c��d�t|��j|jt�|����Sr�r�r�s r<r�zQTestSpecial.test_subclasses_with_direct_pickle_support.<locals>.NamedInt.__repr__�r�r>c�z�t}|j}|jtur|�|��S||��Sr�r�r�s   r<rzPTestSpecial.test_subclasses_with_direct_pickle_support.<locals>.NamedInt.__str__�r�r>c����t|��t|��z}t|���r:t|���r*�d�|j|j��|��S|Sr�r�r�s   �r<r�zPTestSpecial.test_subclasses_with_direct_pickle_support.<locals>.NamedInt.__add__�r�r>Nr*r�s�r<r�r1�s}�������%�L�
�
�
��^�
%�
%��^�
%�
�
�
�
&�
&�
&�
 �
 �
 �
 �
 �
 �
 r>r�c� �eZdZdZdZdZd�ZdS)�CTestSpecial.test_subclasses_with_direct_pickle_support.<locals>.NEIr�r�r�c�,�t|j|jffSr�)r;r\r�rs  r<rzQTestSpecial.test_subclasses_with_direct_pickle_support.<locals>.NEI.__reduce_ex__s������� =�=�=r>N)rFrGrHr�r�rrLr>r<r�r8s2������ �L��A��A�
>�
>�
>�
>�
>r>r�r�r�r2r()r�rrrr[r�rpr�r�r�r?ryr�s   @r<�*test_subclasses_with_direct_pickle_supportz6TestSpecial.test_subclasses_with_direct_pickle_support�s.���&	 �&	 �&	 �&	 �&	 �&	 �&	 �s�&	 �&	 �&	 �P	>�	>�	>�	>�	>�(�D�	>�	>�	>�	
�
�
�c�k�4�<�0�0�0�����c�e�c�e�m�,�,�.N�O�O�O� (��	�	�*����	�	�%���h�v�q�!�!������a� � � �������a�(�(�(��d�m�S�U�3�3�3��d�m�S�1�1�1�1�1r>c�T�Gd�dtt��}|�t|j��|��|�|jt��|�|jd��|t��d<t|j|j��dS)Nc��eZdZdZdZdZdZdS)�2TestSpecial.test_tuple_subclass.<locals>.SomeTuple�	SomeTuple)rCz
for the money)r(zfor the show�rDz
for the musicN)rFrGrHrrrrLr>r<r>r=s"������&�L�(�E�(�F�(�E�E�Er>r>r?)r�rrrr�r�assertIsInstancerr�rr�ry)r�r>s  r<�test_tuple_subclasszTestSpecial.test_tuple_subclasss���	)�	)�	)�	)�	)��t�	)�	)�	)�
	
�
�
�d�9�?�+�+�Y�7�7�7����i�.��6�6�6������*>�?�?�?�!*��	�	�+���d�m�Y�_�=�=�=�=�=r>c�n�Gd�dt��}|�t|��|j|j|jg��|�t
|j��d��|�|jjd��|�|d��|j��dS)Nc�&�eZdZdZdZdZd�Zd�ZdS)�LTestSpecial.test_duplicate_values_give_unique_enum_items.<locals>.AutoNumberrLc�v�t|j��dz}t�|��}||_|S�NrC�r��__members__r�r[r��rHr?r|s   r<r[zTTestSpecial.test_duplicate_values_give_unique_enum_items.<locals>.AutoNumber.__new__$�3���C�O�,�,�q�0���n�n�S�)�)��#����
r>c�*�t|j��Sr��r�r�r�s r<r{zTTestSpecial.test_duplicate_values_give_unique_enum_items.<locals>.AutoNumber.__int__)����4�<�(�(�(r>N)rFrGrHrrrr[r{rLr>r<�
AutoNumberrD sA�������E��F��E�
�
�
�

)�
)�
)�
)�
)r>rNr(rDrC)	rr�r�rrrr�r?rr)r�rNs  r<�,test_duplicate_values_give_unique_enum_itemsz8TestSpecial.test_duplicate_values_give_unique_enum_itemss���
	)�
	)�
	)�
	)�
	)��
	)�
	)�
	)�	
����Z� � ��!�:�#4�j�6F�G�	�	�	�	
����Z�.�/�/��3�3�3�����)�/��3�3�3��
�
�j�j��m�m�Z�%5�6�6�6�6�6r>c�"�Gd�dt��}Gd�d|��}|�t|��|j|j|jg��|�tt
t|����gd���dS)Nc��eZdZd�Zd�ZdS)�ETestSpecial.test_inherited_new_from_enhanced_enum.<locals>.AutoNumberc�v�t|j��dz}t�|��}||_|SrFrGrIs   r<r[zMTestSpecial.test_inherited_new_from_enhanced_enum.<locals>.AutoNumber.__new__5rJr>c�*�t|j��Sr�rLr�s r<r{zMTestSpecial.test_inherited_new_from_enhanced_enum.<locals>.AutoNumber.__int__:rMr>N)rFrGrHr[r{rLr>r<rNrR4s2������
�
�
�

)�
)�
)�
)�
)r>rNc��eZdZdZdZdZdS)�@TestSpecial.test_inherited_new_from_enhanced_enum.<locals>.ColorrLNr*rLr>r<r.rV<��������C��E��D�D�Dr>r.r3)rr�r�r+r,r-�mapr��r�rNr.s   r<�%test_inherited_new_from_enhanced_enumz1TestSpecial.test_inherited_new_from_enhanced_enum3s���	)�	)�	)�	)�	)��	)�	)�	)�	�	�	�	�	�J�	�	�	�	
����e���u�y�%�+�u�z�&J�K�K�K�����c�#�u�o�o�.�.�	�	�	�:�:�:�:�:r>c�"�Gd�dt��}Gd�d|��}|�t|��|j|j|jg��|�tt
t|����gd���dS)Nc��eZdZd�ZdS)�BTestSpecial.test_inherited_new_from_mixed_enum.<locals>.AutoNumberc�x�t|j��dz}t�||��}||_|SrF)r�rHr�r[r�rIs   r<r[zJTestSpecial.test_inherited_new_from_mixed_enum.<locals>.AutoNumber.__new__Es5���C�O�,�,�q�0���k�k�#�u�-�-��#����
r>Nr�rLr>r<rNr]D�#������
�
�
�
�
r>rNc��eZdZdZdZdZdS)�=TestSpecial.test_inherited_new_from_mixed_enum.<locals>.ColorrLNr*rLr>r<r.raJrWr>r.r3)rr�r�r+r,r-rXr�rYs   r<�"test_inherited_new_from_mixed_enumz.TestSpecial.test_inherited_new_from_mixed_enumCs���	�	�	�	�	��	�	�	�	�	�	�	�	�J�	�	�	�	
����e���u�y�%�+�u�z�&J�K�K�K�����c�#�u�o�o�.�.�	�	�	�:�:�:�:�:r>c��Gd�dt��}|�t|j��|�|jt��dS)Nc��eZdZdZdS)�/TestSpecial.test_equality.<locals>.OrdinaryEnumrCN)rFrGrHr�rLr>r<�OrdinaryEnumreRr,r>rf)rr�r#r�)r�rfs  r<�
test_equalityzTestSpecial.test_equalityQsb��	�	�	�	�	�4�	�	�	�����L�N�3�3�3�������3�3�3�3�3r>c���Gd�dt��}Gd�d|��}|�|j|j��|�|j|j��|�|j|j��|�	|j|j��|�
|j|j��|�|j|j��dS)Nc�&�eZdZd�Zd�Zd�Zd�ZdS)�3TestSpecial.test_ordered_mixin.<locals>.OrderedEnumc�L�|j|jur|j|jkStSr��r\r��NotImplemented�r�r�s  r<�__ge__z:TestSpecial.test_ordered_mixin.<locals>.OrderedEnum.__ge__Y�&���>�U�_�4�4��<�5�=�8�8�%�%r>c�L�|j|jur|j|jkStSr�rlrns  r<�__gt__z:TestSpecial.test_ordered_mixin.<locals>.OrderedEnum.__gt__]�&���>�U�_�4�4��<�%�-�7�7�%�%r>c�L�|j|jur|j|jkStSr�rlrns  r<�__le__z:TestSpecial.test_ordered_mixin.<locals>.OrderedEnum.__le__arpr>c�L�|j|jur|j|jkStSr�rlrns  r<�__lt__z:TestSpecial.test_ordered_mixin.<locals>.OrderedEnum.__lt__ersr>N)rFrGrHrorrrurwrLr>r<�OrderedEnumrjXsP������
&�
&�
&�
&�
&�
&�
&�
&�
&�
&�
&�
&�
&�
&r>rxc�"�eZdZdZdZdZdZdZdS)�-TestSpecial.test_ordered_mixin.<locals>.Grader2rTrDr(rCNr�rLr>r<�Graderzir�r>r{)r�
assertGreaterr*rv�assertLessEqualr�r��
assertLessr��assertGreaterEqualr�r�)r�rxr{s   r<�test_ordered_mixinzTestSpecial.test_ordered_mixinWs���	&�	&�	&�	&�	&�$�	&�	&�	&�"	�	�	�	�	�K�	�	�	�	
���5�7�E�G�,�,�,����U�W�e�g�.�.�.��������)�)�)��������1�1�1������%�'�*�*�*����E�G�U�W�-�-�-�-�-r>c���Gd�dt��}Gd�d|��}|�t��5Gd�d|��}ddd��dS#1swxYwYdS)Nc��eZdZd�ZdS)�*TestSpecial.test_extending2.<locals>.Shadec�.�t|j��dSr�)�printr�r�s r<�shadez0TestSpecial.test_extending2.<locals>.Shade.shadexs���d�i� � � � � r>N�rFrGrHr�rLr>r<�Shader�wr�r>r�c��eZdZdZdZdZdS)�*TestSpecial.test_extending2.<locals>.ColorrCr(rDNr*rLr>r<r.r�zr(r>r.c��eZdZdZdZdZdS)�.TestSpecial.test_extending2.<locals>.MoreColorrTr2r�Nr+rLr>r<r/r�r0r>r/)rrPra�r�r�r.r/s    r<�test_extending2zTestSpecial.test_extending2vs���	!�	!�	!�	!�	!�D�	!�	!�	!�	�	�	�	�	�E�	�	�	��
�
�y�
)�
)�	�	�
�
�
�
�
�E�
�
�
�	�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�	�	��A�A�Ac��Gd�dt��}Gd�d|��}Gd�d|��}|�|j���d��dS)Nc��eZdZd�ZdS)�*TestSpecial.test_extending3.<locals>.Shadec��|jSr�r�r�s r<r�z0TestSpecial.test_extending3.<locals>.Shade.shade�s
���y� r>Nr�rLr>r<r�r��r�r>r�c��eZdZd�ZdS)�*TestSpecial.test_extending3.<locals>.Colorc��d|jzS)Nz
%s hexlified!rkr�s r<r�z.TestSpecial.test_extending3.<locals>.Color.hex�s��&���3�3r>N)rFrGrHr�rLr>r<r.r��rr>r.c��eZdZdZdZdZdS)�.TestSpecial.test_extending3.<locals>.MoreColorrTr2r�Nr+rLr>r<r/r��s�������D��G��F�F�Fr>r/z5 hexlified!)rr�r-r�r�s    r<�test_extending3zTestSpecial.test_extending3�s���	!�	!�	!�	!�	!�D�	!�	!�	!�	4�	4�	4�	4�	4�E�	4�	4�	4�	�	�	�	�	��	�	�	�	
����*�.�.�0�0�.�A�A�A�A�Ar>c��Gd�dt��}Gd�d|��}|�t|j��|��dS)Nc��eZdZd�ZdS)�6TestSpecial.test_subclass_duplicate_name.<locals>.Basec��dSr�rLr�s r<r�z;TestSpecial.test_subclass_duplicate_name.<locals>.Base.test�rJr>N�rFrGrHr�rLr>r<�Baser���#������
�
�
�
�
r>r�c��eZdZdZdS)�6TestSpecial.test_subclass_duplicate_name.<locals>.TestrCNr�rLr>r<r�r����������D�D�Dr>r�)rrrr�r�)r�r�r�s   r<�test_subclass_duplicate_namez(TestSpecial.test_subclass_duplicate_name�sx��	�	�	�	�	�4�	�	�	�	�	�	�	�	�4�	�	�	��
�
�d�4�9�o�o�t�,�,�,�,�,r>c���ddlm�G�fd�dt��}Gd�d|��}|�|jjd��|�|jjd��Gd	�d
t��}Gd�d|��}|�|jjd��|�|jjd��dS)
Nr��DynamicClassAttributec�&��eZdZ�d���ZdS)�>TestSpecial.test_subclass_duplicate_name_dynamic.<locals>.Basec��dS)N�dynamicrLr�s r<r�zCTestSpecial.test_subclass_duplicate_name_dynamic.<locals>.Base.test�s�� �yr>Nr�r�s�r<r�r��s/�������
"�
!�
!�#�
"�
!�
!�
!r>r�c��eZdZdZdS��>TestSpecial.test_subclass_duplicate_name_dynamic.<locals>.TestrCNr�rLr>r<r�r��r�r>r�r�rCc�.�eZdZejd���ZdS)�?TestSpecial.test_subclass_duplicate_name_dynamic.<locals>.Base2c��dS)N�flashy dynamicrLr�s r<�flashzETestSpecial.test_subclass_duplicate_name_dynamic.<locals>.Base2.flash�s��'�'r>N)rFrGrHr/rr�rLr>r<�Base2r��s/������
�]�
(�
(��]�
(�
(�
(r>r�c��eZdZdZdSr�)rFrGrHr�rLr>r<r�z>TestSpecial.test_subclass_duplicate_name_dynamic.<locals>.Test�s�������E�E�Er>r�)�typesr�rr�r�r?r�)r�r�r�r�r�s    @r<�$test_subclass_duplicate_name_dynamicz0TestSpecial.test_subclass_duplicate_name_dynamic�s8���/�/�/�/�/�/�	!�	!�	!�	!�	!�	!�	!�4�	!�	!�	!�	�	�	�	�	�4�	�	�	��������3�3�3�������!�,�,�,�	(�	(�	(�	(�	(�D�	(�	(�	(�	�	�	�	�	�5�	�	�	������)�+;�<�<�<������)�1�-�-�-�-�-r>c���Gd�dt��}Gd�d|��}|�t��5Gd�d|��}ddd��dS#1swxYwYdS)Nc��eZdZd�ZdS)�2TestSpecial.test_no_duplicates.<locals>.UniqueEnumc����j}t�fd�|D����r1�j}|�j��j}t	d|�d|�����dS)Nc3�8�K�|]}�j|jkV��dSr�rk)rgrr�s  �r<�	<genexpr>zNTestSpecial.test_no_duplicates.<locals>.UniqueEnum.__init__.<locals>.<genexpr>�s,�����:�:��t�z�Q�W�,�:�:�:�:�:�:r>z$aliases not allowed in UniqueEnum:  z --> )r\�anyr�r?r�)r�r�rHr�rs`    r<r�z;TestSpecial.test_no_duplicates.<locals>.UniqueEnum.__init__�sv����n���:�:�:�:�c�:�:�:�:�:���	�A���D�J���,�A�$�*� �q�q�!�!�%�����r>N�rFrGrHr�rLr>r<�
UniqueEnumr��s#������
�
�
�
�
r>r�c��eZdZdZdZdZdS��-TestSpecial.test_no_duplicates.<locals>.ColorrCr(rDNr*rLr>r<r.r��r(r>r.c��eZdZdZdZdZdZdSr�)rFrGrHr+r,r-�grenerLr>r<r.z-TestSpecial.test_no_duplicates.<locals>.Color�s"���������������r>)rrPr�)r�r�r.s   r<�test_no_duplicateszTestSpecial.test_no_duplicates�s���		�		�		�		�		��		�		�		�	�	�	�	�	�J�	�	�	��
�
�z�
*�
*�	�	�
�
�
�
�
�
�
�
�
�	�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�	�	r�c���Gd�dt��}|�t|jjd��d��|�|jjd��dS)Nc�T�eZdZdZdZdZdZdZdZdZ	dZ
d	�Zej
d
���ZdS)�%TestSpecial.test_init.<locals>.Planet)gI�Tf|�Dg
�BA)g�QX4Eg�WA�g�o��Eg�TXA)g���	��Dg(�IA)g�c�����Eg���A)g�[�\h}Eg,A)g#'?�T�QEg��_xA)g�J��-UEg��wAc�"�||_||_dSr���mass�radius)r�r�r�s   r<r�z.TestSpecial.test_init.<locals>.Planet.__init__�s�� ��	�$����r>c�:�d}||jz|j|jzzS)Ng
yдW�=r�)r�r�s  r<�surface_gravityz5TestSpecial.test_init.<locals>.Planet.surface_gravity�s#�� ���4�9�}���d�k�(A�B�Br>N)rFrGrH�MERCURY�VENUS�EARTH�MARS�JUPITER�SATURN�URANUS�NEPTUNEr�r/rr�rLr>r<�Planetr��sm������+�G�+�E�,�E�+�D�+�G�+�F�+�F�+�G�
%�
%�
%��]�
C�
C��]�
C�
C�
Cr>r�r(g������#@r�)rr��roundr�r�r?)r�r�s  r<�	test_initzTestSpecial.test_init�s}��	C�	C�	C�	C�	C�T�	C�	C�	C�"	
����v�|�;�Q�?�?��F�F�F������+�-C�D�D�D�D�Dr>c���Gd�dtt��}|�t|d����|�t|d����|�t|d����|�t|jt����|�|j|ju��|�|j	|j
u��dS)Nc���eZdZdZd�ZdZe��Zed��D]Z	e	dzdfede	z<�ed��D]Z	e	d	zd
fede	z<�ed��D]Z	e	d
fede	z<�
e
ZeZ
eZdS)�'TestSpecial.test_ignore.<locals>.Periodz3
            different lengths of time
            c�L�tj||��}||_||_|Sr�)r'r[r��period)rHr?r�r|s    r<r[z/TestSpecial.test_ignore.<locals>.Period.__new__�s'���'��U�3�3��#���#��
��
r>zPeriod irZr�rzmonth_%d�5r��weekzweek_%d� �dayzday_%dN)rFrGrHr�r[�_ignore_�varsrrur>�day_1�OneDay�week_1�OneWeek�month_1�OneMonthrLr>r<rr��s�������
�
�
�
�
�
"�H��T�V�V�F��U�2�Y�Y�
7�
7��)*�2��w���z�A�~�&�&��U�2�Y�Y�
4�
4��()�!��V���y�1�}�%�%��U�2�Y�Y�
0�
0��'(�%�x��x�!�|�$�$��F��G��H�H�Hr>rr�r>)r'rr�rOr�r�r�r��day_30�week_4�day_28rs  r<�test_ignorezTestSpecial.test_ignore�s���	�	�	�	�	�Y��	�	�	�(	
������4�4�5�5�5�������2�2�3�3�3�������-�-�.�.�.����
�6�<��;�;�<�<�<������&�-�7�8�8�8�����
���6�7�7�7�7�7r>c�z�Gd�dt��}Gd�d|��}|�t|��|j|j|jg��t
|td����D]F\}}|dz
}|�|j|g��|�	||g��|���GdS)Nc��eZdZd�ZdS)�9TestSpecial.test_nonhash_value.<locals>.AutoNumberInAListc�x�t|j��dzg}t�|��}||_|SrFrGrIs   r<r[zATestSpecial.test_nonhash_value.<locals>.AutoNumberInAList.__new__�s6���S�_�-�-��1�2���n�n�S�)�)��#����
r>Nr�rLr>r<�AutoNumberInAListr��r_r>r�c��eZdZdZdZdZdS)�4TestSpecial.test_nonhash_value.<locals>.ColorInAListrLNr*rLr>r<�ColorInAListr��rWr>r�rDrC)
rr�r�r+r,r-rqrur?rr)r�r�r�r/r?s     r<�test_nonhash_valuezTestSpecial.test_nonhash_value�s���	�	�	�	�	��	�	�	�	�	�	�	�	�,�	�	�	�	
����l�+�+�l�.>��@R�T`�Te�-f�g�g�g��|�U�1�X�X�6�6�	7�	7�K�D�%��Q�J�E����T�Z�%��1�1�1��M�M�,�,��w�/�/��6�6�6�6�	7�	7r>c�0�Gd�dtt��}Gd�d|��}|�t|��|j|jg��|�|jd��|�|d��|j��dS)Nc��eZdZd�ZdS)�KTestSpecial.test_conflicting_types_resolved_in_new.<locals>.LabelledIntEnumc�b�|\}}t�||��}||_||_|Sr�)r�r[�labelr�)rHr�r?r�r|s     r<r[zSTestSpecial.test_conflicting_types_resolved_in_new.<locals>.LabelledIntEnum.__new__	s1��#���u��k�k�#�u�-�-��!��	�#����
r>Nr�rLr>r<�LabelledIntEnumr�	s#������
�
�
�
�
r>r�c��eZdZdZdZdS)�HTestSpecial.test_conflicting_types_resolved_in_new.<locals>.LabelledList)rC�Unprocessed)r(zPayment CompleteN)rFrGrH�unprocessed�payment_completerLr>r<�LabelledListr
	s������,�K�6���r>rrC)r�rr�r�rr)r�r�rs   r<�&test_conflicting_types_resolved_in_newz2TestSpecial.test_conflicting_types_resolved_in_new	s���	�	�	�	�	�c�4�	�	�	�	7�	7�	7�	7�	7�?�	7�	7�	7�	
����l�+�+�l�.F��He�-f�g�g�g�����1�1�5�5�5������a���,�*B�C�C�C�C�Cr>c���Gd�dt��}	|d��td���#t$r'}|�|jdu��Yd}~dSd}~wwxYw)Nc��eZdZdZdZdZdS)�DTestSpecial.test_default_missing_no_chained_exception.<locals>.ColorrCr(rDN)rFrGrHrn�GREEN�BLUErLr>r<r.r		r(r>r.r��Exception not raised.)rr8r�r�ro�r�r.�excs   r<�)test_default_missing_no_chained_exceptionz5TestSpecial.test_default_missing_no_chained_exception	s���	�	�	�	�	�D�	�	�	�	5��E�!�H�H�H��3�4�4�4���	5�	5�	5��O�O�C�O�t�3�4�4�4�4�4�4�4�4�4�����	5���s�/�
A �A�A c��Gd�dt��}|�|d��|j��	|d��td���#t$r&}|�|jdu��Yd}~nd}~wwxYw	|d��td���#t$r7}|�t|jt����Yd}~nd}~wwxYw	|d��td���#t$r8}|�t|jt����Yd}~dSd}~wwxYw)Nc�0�eZdZdZdZdZed���ZdS)�0TestSpecial.test_missing_override.<locals>.ColorrCr(rDc�J�|dkr|jS|dkrdS|dkrt�dS)NrJ�
bad returnr2�	error out)r-�ZeroDivisionError)rHr�s  r<�	_missing_z:TestSpecial.test_missing_override.<locals>.Color._missing_&	s:���7�?�?��8�O��\�)�)��1��[�(�(�+�+� �4r>N)rFrGrHr+r,r-�classmethodrrLr>r<r.r"	s<�������C��E��D�
�

 �

 ��[�

 �

 �

 r>r.rJr�rrr)
rrrr-r8r�r�rorar�rr
s   r<�test_missing_overridez!TestSpecial.test_missing_override!	s���	 �	 �	 �	 �	 �D�	 �	 �	 � 	
�
�
�e�e�G�n�n�e�j�1�1�1�	5��E�!�H�H�H��3�4�4�4���	5�	5�	5��O�O�C�O�t�3�4�4�4�4�4�4�4�4�����	5����	5��E�,�����3�4�4�4���	E�	E�	E��O�O�J�s��
�C�C�D�D�D�D�D�D�D�D�����	E����	5��E�+�����3�4�4�4��!�	E�	E�	E��O�O�J�s��
�C�C�D�D�D�D�D�D�D�D�D�����	E���sG�A�
B�A>�>B�B!�!
C"�+-C�C"�&D�
E�
-D=�=Ec���ddl}ddl}Gd�dtj���Gd�d��}G�fd�d��}|�|����}|�|����}|���|�|��d��|�|��d��dS)Nrc��eZdZdZdZdS)�;TestSpecial.test_missing_exceptions_reset.<locals>.TestEnum�val1�val2N)rFrGrH�VAL1�VAL2rLr>r<�TestEnumrJ	s�������D��D�D�Dr>r!c��eZdZd�ZdS)�9TestSpecial.test_missing_exceptions_reset.<locals>.Class1c�B�	t���#t$rYdSwxYwr��r�r�s r<r�zBTestSpecial.test_missing_exceptions_reset.<locals>.Class1.__init__O	s3���$�,�,�&��!�����D�D����s��
�Nr�rLr>r<�Class1r#N	s#������
�
�
�
�
r>r&c���eZdZ�fd�ZdS)�9TestSpecial.test_missing_exceptions_reset.<locals>.Class2c�B��	�d��dS#t$rYdSwxYw)N�
invalid_valuer%)r�r!s �r<r�zBTestSpecial.test_missing_exceptions_reset.<locals>.Class2.__init__W	s@�����H�_�-�-�-�-�-��!�����D�D����s��
�Nr�)r!s�r<�Class2r(V	s.�������
�
�
�
�
�
�
r>r+)�gc�weakrefr/r�ref�collectrr)r�r,r-r&r+�class_1_ref�class_2_refr!s       @r<�test_missing_exceptions_resetz)TestSpecial.test_missing_exceptions_resetF	s����	�	�	�����	�	�	�	�	�t�y�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	��k�k�&�&�(�(�+�+���k�k�&�&�(�(�+�+��
	�
�
�����
�
�k�k�m�m�T�*�*�*��
�
�k�k�m�m�T�*�*�*�*�*r>c�|�
�Gd�d��}Gd�d���
Gd�dt��}Gd�dt��}Gd	�d
|t��}|�|jjd��|�|jjd��|�|jjd
��|�|jd
��|�t|j��d��G�
fd�d
|�
t��}|�|jjd��|�|jjd��|�|jjd
��|�|jd
��|�t|j��d��G�
fd�d
�
|t��}|�|jjd��|�|jjd��|�|jjd
��|�|jd
��|�t|j��d��G�
fd�d�
|t��}|�|jjd��|�|jjd��|�|jjd
��|�t|j��d��|�|j���d��G�
fd�d�
|t��}|�|jjd��|�|jjd��|�|jjd
��|�t|j��d��|�|j���d��|�|j�	��d��G�
fd�d�
||��}|�|jjd��|�|jjd��|�|jjd
��|�t|j��d��|�|j���d��|�|j�	��d��G�
fd�d�
||��}|�|jjd��|�|jjd��|�|jjd
��|�t|j��d��|�|j���d��|�|j�	��d��G�
fd�d�
t||��}	|�|	jjd��|�|	jjd��|�|	jjd
��|�t|	j��d��|�|	j���d��|�|j�	��d��|�t|	t����dS)Nc�$�eZdZed���ZdS)�1TestSpecial.test_multiple_mixin.<locals>.MaxMixinc�2�t|��}||_|Sr�)r��MAX)rH�maxs  r<r7z5TestSpecial.test_multiple_mixin.<locals>.MaxMixin.MAXj	s���#�h�h������
r>N)rFrGrHr�r7rLr>r<�MaxMixinr5i	s-������
�
�
��]�
�
�
r>r9c��eZdZd�ZdS)�1TestSpecial.test_multiple_mixin.<locals>.StrMixinc�4�|j���Sr��r��lowerr�s r<rz9TestSpecial.test_multiple_mixin.<locals>.StrMixin.__str__p	����{�(�(�*�*�*r>N�rFrGrHrrLr>r<�StrMixinr;o	�#������
+�
+�
+�
+�
+r>rAc��eZdZd�ZdS)�1TestSpecial.test_multiple_mixin.<locals>.SomeEnumc��dS)N�booyahrLr�s r<�behaviorz:TestSpecial.test_multiple_mixin.<locals>.SomeEnum.behaviors	����xr>N)rFrGrHrGrLr>r<�SomeEnumrDr	s#������
 �
 �
 �
 �
 r>rIc��eZdZd�Zd�ZdS)�4TestSpecial.test_multiple_mixin.<locals>.AnotherEnumc��dS)N�nuhuh!rLr�s r<rGz=TestSpecial.test_multiple_mixin.<locals>.AnotherEnum.behaviorv	rHr>c��dS)N�
what's up?rLr�s r<�socialz;TestSpecial.test_multiple_mixin.<locals>.AnotherEnum.socialx	s��#�|r>N)rFrGrHrGrPrLr>r<�AnotherEnumrKu	s2������
 �
 �
 �
$�
$�
$�
$�
$r>rQc�J�eZdZe��Ze��Ze��ZdS��.TestSpecial.test_multiple_mixin.<locals>.ColorN�rFrGrHrrnr
rrLr>r<r.rTz	�/�������$�&�&�C��D�F�F�E��4�6�6�D�D�Dr>r.rCr(rD�
Color.BLUEc�Z��eZdZe��Ze��Ze��Z�jZdSrS�rFrGrHrrnr
rr�rAs�r<r.z.TestSpecial.test_multiple_mixin.<locals>.Color�	�8��������$�&�&�C��D�F�F�E��4�6�6�D��&�G�G�Gr>r-c�Z��eZdZe��Ze��Ze��Z�jZdSrSrYrZs�r<r.z.TestSpecial.test_multiple_mixin.<locals>.Color�	r[r>c�Z��eZdZe��Ze��Ze��Z�jZdS)�2TestSpecial.test_multiple_mixin.<locals>.CoolColorNrYrZs�r<�	CoolColorr^�	r[r>r_rFc�Z��eZdZe��Ze��Ze��Z�jZdS)�4TestSpecial.test_multiple_mixin.<locals>.CoolerColorNrYrZs�r<�CoolerColorra�	r[r>rbrMrOc�Z��eZdZe��Ze��Ze��Z�jZdS)�5TestSpecial.test_multiple_mixin.<locals>.CoolestColorNrYrZs�r<�CoolestColorrd�	r[r>rec�Z��eZdZe��Ze��Ze��Z�jZdS)�6TestSpecial.test_multiple_mixin.<locals>.ConfusedColorNrYrZs�r<�
ConfusedColorrg�	r[r>rhc�Z��eZdZe��Ze��Ze��Z�jZdS)�6TestSpecial.test_multiple_mixin.<locals>.ReformedColorNrYrZs�r<�
ReformedColorrj�	r[r>rk)rr�rnr?r
rr7r9rGrPrr�rr�)r�r9rIrQr.r_rbrerhrkrAs          @r<�test_multiple_mixinzTestSpecial.test_multiple_mixinh	s����	�	�	�	�	�	�	�	�	+�	+�	+�	+�	+�	+�	+�	+�	 �	 �	 �	 �	 �t�	 �	 �	 �	$�	$�	$�	$�	$�$�	$�	$�	$�
	�	�	�	�	�H�d�	�	�	�	
������!�,�,�,������*�A�.�.�.������)�1�-�-�-������A�&�&�&�����U�Z���,�7�7�7�	'�	'�	'�	'�	'�	'�	'�H�h��	'�	'�	'�
	
������!�,�,�,������*�A�.�.�.������)�1�-�-�-������A�&�&�&�����U�Z���&�1�1�1�	'�	'�	'�	'�	'�	'�	'�H�h��	'�	'�	'�
	
������!�,�,�,������*�A�.�.�.������)�1�-�-�-������A�&�&�&�����U�Z���&�1�1�1�	'�	'�	'�	'�	'�	'�	'��(�D�	'�	'�	'�
	
�����,�a�0�0�0������.��2�2�2������-�q�1�1�1�����Y�^�,�,�f�5�5�5������/�/�1�1�8�<�<�<�	'�	'�	'�	'�	'�	'�	'�(�K��	'�	'�	'�
	
�����.��2�2�2�����*�0�!�4�4�4�����)�/��3�3�3�����[�-�.�.��7�7�7������1�1�3�3�X�>�>�>������/�/�1�1�<�@�@�@�	'�	'�	'�	'�	'�	'�	'�8�X�{�	'�	'�	'�
	
����)�/��3�3�3�����+�1�1�5�5�5�����*�0�!�4�4�4�����\�.�/�/��8�8�8�����)�2�2�4�4�h�?�?�?�����)�0�0�2�2�L�A�A�A�	'�	'�	'�	'�	'�	'�	'�H�k�8�	'�	'�	'�
	
����*�0�!�4�4�4�����,�2�A�6�6�6�����+�1�1�5�5�5�����]�/�0�0�&�9�9�9�����*�3�3�5�5�x�@�@�@�����*�1�1�3�3�\�B�B�B�	'�	'�	'�	'�	'�	'�	'�H�g�x��	'�	'�	'�
	
����*�0�!�4�4�4�����,�2�A�6�6�6�����+�1�1�5�5�5�����]�/�0�0�&�9�9�9�����*�3�3�5�5�x�@�@�@�����*�1�1�3�3�\�B�B�B����
�=�#�6�6�7�7�7�7�7r>c��tGd�dt����}Gd�dt��}tGd�d|����}dS)Nc��eZdZdZdZdZdS)�<TestSpecial.test_multiple_inherited_mixin.<locals>.Decision1�REVERT�
REVERT_ALL�RETRYN�rFrGrHrprqrrrLr>r<�	Decision1ro�	��������F�%�J��E�E�Er>rtc��eZdZdS)�9TestSpecial.test_multiple_inherited_mixin.<locals>.MyEnumNr�rLr>r<r�rw�	r�r>r�c��eZdZdZdZdZdS)�<TestSpecial.test_multiple_inherited_mixin.<locals>.Decision2rprqrrNrsrLr>r<�	Decision2ry�	rur>rz)r
r	)r�rtr�rzs    r<�test_multiple_inherited_mixinz)TestSpecial.test_multiple_inherited_mixin�	s���	�	�	�	�	�	��	�	�
��	�	�	�	�	�	�W�	�	�	�	�	�	�	�	�	��	�	�
��	�	�	r>c����Gd�dt��}Gd�d���G�fd�d�|tj��}Gd�d|��}|�t	|j|����|�|j|��|�t|j��d	��Gd
�d|��}|�|jd��dS)
Nc���eZdZ�fd�Z�xZS)�8TestSpecial.test_multiple_mixin_inherited.<locals>.MyIntc�H��t���||��Sr�rY)rHr?r\s  �r<r[z@TestSpecial.test_multiple_mixin_inherited.<locals>.MyInt.__new__�	s����w�w���s�E�2�2�2r>r�r_s@r<r�r~�	s8�������
3�
3�
3�
3�
3�
3�
3�
3�
3r>r�c��eZdZd�ZdS)�;TestSpecial.test_multiple_mixin_inherited.<locals>.HexMixinc� �t|��Sr�r�r�s r<r�zDTestSpecial.test_multiple_mixin_inherited.<locals>.HexMixin.__repr__�	r�r>NrrLr>r<�HexMixinr��	r�r>r�c���eZdZ�jZdS)�<TestSpecial.test_multiple_mixin_inherited.<locals>.MyIntEnumNr)r�s�r<�	MyIntEnumr��	s��������(�H�H�Hr>r�c��eZdZdZdS)�6TestSpecial.test_multiple_mixin_inherited.<locals>.FoorCN)rFrGrH�TESTrLr>r<rCr��	r�r>rC�0x1c��eZdZdZd�ZdS)�6TestSpecial.test_multiple_mixin_inherited.<locals>.FeerCc�T�|dz
}t�||��}||_|SrF�r�r[r�)rHr?rs   r<r[z>TestSpecial.test_multiple_mixin_inherited.<locals>.Fee.__new__�	s*����
�����S�%�0�0��!&����
r>N)rFrGrHr�r[rLr>r<�Feer��	s(�������D�
�
�
�
�
r>r�r()	r�r/rr�r�r�r�r8rp)r�r�r�rCr�r�s     @r<�test_multiple_mixin_inheritedz)TestSpecial.test_multiple_mixin_inherited�	sX���	3�	3�	3�	3�	3�C�	3�	3�	3�	!�	!�	!�	!�	!�	!�	!�	!�	)�	)�	)�	)�	)�	)�	)��%���	)�	)�	)�	�	�	�	�	�)�	�	�	����
�3�8�U�3�3�4�4�4�����*�E�2�2�2�����c�h����/�/�/�	�	�	�	�	�)�	�	�	�	
�����1�%�%�%�%�%r>c���Gd�dtt��}Gd�dtt��}Gd�d||��}|}|�t|��|j|j|jg��|�|jd��|�|jjd��|�|d��|j��|�	|jj
��|d	��}|�t|��|j|j|jg��|�|jd��|�|jjd��|�|d��|j��|�	|jj
��|�	t||����|�|j
��dS)
Nc�.��eZdZe�fd���Z�xZS)�UTestSpecial.test_multiple_mixin_with_common_data_type.<locals>.CaseInsensitiveStrEnumc����|j���D]5}|j���|���kr|cS�6t	���|��Sr�)�_member_map_r7r�r>rZr)rHr?rr\s   �r<rz_TestSpecial.test_multiple_mixin_with_common_data_type.<locals>.CaseInsensitiveStrEnum._missing_�	sh���!�.�5�5�7�7�&�&�F��~�+�+�-�-������>�>�%�
�
�
�?��w�w�(�(��/�/�/r>)rFrGrHrrr^r_s@r<�CaseInsensitiveStrEnumr��	sB�������
�
0�
0�
0�
0��[�
0�
0�
0�
0�
0r>r�c�J�eZdZd�Zed���Zejd���ZdS)�MTestSpecial.test_multiple_mixin_with_common_data_type.<locals>.LenientStrEnumc��d|_dS)NT��_valid)r�r�s  r<r�zVTestSpecial.test_multiple_mixin_with_common_data_type.<locals>.LenientStrEnum.__init__
s
��"����r>c��|j�||��}d|_|���|_||_||j|<|S)NF)r8r[r�rr�r�r�)rHr?�unknowns   r<rzWTestSpecial.test_multiple_mixin_with_common_data_type.<locals>.LenientStrEnum._missing_
sI���+�3�3�C��?�?��!&���!&�������"'���*1�� ��'��r>c��|jSr�r�r�s r<�validzSTestSpecial.test_multiple_mixin_with_common_data_type.<locals>.LenientStrEnum.valid
s
���{�"r>N)	rFrGrHr�rrr/rr�rLr>r<�LenientStrEnumr�
sY������
#�
#�
#�
�
�
��[�
��]�
#�
#��]�
#�
#�
#r>r�c��eZdZdZdZdZdS)�HTestSpecial.test_multiple_mixin_with_common_data_type.<locals>.JobStatus�active�pending�
terminatedN)rFrGrH�ACTIVE�PENDING�
TERMINATEDrLr>r<�	JobStatusr�
s�������F��G�%�J�J�Jr>r�r��Active�missing)
r9rr�r�r�r�r�r?rrr�r�r�r�)r�r�r�r��JSr�s      r<�)test_multiple_mixin_with_common_data_typez5TestSpecial.test_multiple_mixin_with_common_data_type�	s���	0�	0�	0�	0�	0�S�$�	0�	0�	0�
	#�
	#�
	#�
	#�
	#�S�$�
	#�
	#�
	#�	&�	&�	&�	&�	&�.��	&�	&�	&�
������i���2�9�b�j�"�-�*P�Q�Q�Q������H�-�-�-�������(�3�3�3��
�
�b�b��l�l�B�I�.�.�.�����	��(�(�(��"�Y�-�-������i���2�9�b�j�"�-�*P�Q�Q�Q������H�-�-�-�������(�3�3�3��
�
�b�b��l�l�B�I�.�.�.�����	��(�(�(����
�7�B�/�/�0�0�0������'�'�'�'�'r>c�V�d}t|dd��}i}i}t|||��dS)Nz8from enum import Enum; Enum('Animal', 'ANT BEE CAT DOG')z<string>�exec)�compiler�)r��code�	global_ns�local_lss    r<�test_empty_globalszTestSpecial.test_empty_globals$
s=��J���t�Z��0�0���	����T�9�h�'�'�'�'�'r>c�v�
�Gd�dt��}|�|jd��|�t|j��d��|�d�|j��d��|�|jt|j����|�|jd�|j����|�t|j��d��Gd�d���
G�
fd�d	�
t��}|�|jd
��|�t|j��d��Gd�d
t��}Gd�d|t��}|�|jd��|�|jt|j����Gd�d��}Gd�d||t��}|�|j	d��|�|j	t|j	����|�
td��5Gd�dt��}ddd��n#1swxYwY|�
td��5Gd�dt��}ddd��n#1swxYwY|�
td��5Gd�dt��}	ddd��n#1swxYwY|�
tdtj
����5Gd�dt��}	ddd��n#1swxYwY|�
td ��5Gd!�dt��}	ddd��dS#1swxYwYdS)"Nc��eZdZdZdZdZdZdS)�-TestSpecial.test_strenum.<locals>.GoodStrEnumr/r0��3�ascii��4�latin1roN�rFrGrHr�r�rJ�fourrLr>r<�GoodStrEnumr�.
�"�������C��C�!�E�+�D�D�Dr>r�r/rJz<GoodStrEnum.one: '1'>c��eZdZd�ZdS)�+TestSpecial.test_strenum.<locals>.DumbMixinc��dS�N�
don't do thisrLr�s r<rz3TestSpecial.test_strenum.<locals>.DumbMixin.__str__;
���&�r>Nr@rLr>r<�	DumbMixinr�:
r}r>r�c�*��eZdZdZdZdZ�jZdS)�-TestSpecial.test_strenum.<locals>.DumbStrEnumr]�6�7N�rFrGrH�five�six�sevenr�r�s�r<�DumbStrEnumr�=
�&��������D��C��E��'�G�G�Gr>r�r�r�c��eZdZd�ZdS)�+TestSpecial.test_strenum.<locals>.EnumMixinc�*�td|����dS�Nzhello from �r�r�s r<r�z1TestSpecial.test_strenum.<locals>.EnumMixin.helloF
�������0�1�1�1�1�1r>Nr�rLr>r<�	EnumMixinr�E
�#������
2�
2�
2�
2�
2r>r�c��eZdZdZdS)�+TestSpecial.test_strenum.<locals>.HelloEnum�8N�rFrGrH�eightrLr>r<�	HelloEnumr�H
��������E�E�Er>r�r�c��eZdZd�ZdS)�.TestSpecial.test_strenum.<locals>.GoodbyeMixinc�$�td��dS�Nz%s wishes you a fond farewellr�r�s r<�goodbyez6TestSpecial.test_strenum.<locals>.GoodbyeMixin.goodbyeN
����5�6�6�6�6�6r>N�rFrGrHr�rLr>r<�GoodbyeMixinr�M
�#������
7�
7�
7�
7�
7r>r�c��eZdZdZdS)�-TestSpecial.test_strenum.<locals>.GoodbyeEnum�9N�rFrGrH�ninerLr>r<�GoodbyeEnumr�P
��������D�D�Dr>r�r�z1 is not a stringc��eZdZdZdZdS)�4TestSpecial.test_strenum.<locals>.FirstFailedStrEnumrCr0Nr�rLr>r<�FirstFailedStrEnumr�V
s�����������r>r�z2 is not a stringc��eZdZdZdZdZdS)�5TestSpecial.test_strenum.<locals>.SecondFailedStrEnumr/�r(r1NrIrLr>r<�SecondFailedStrEnumr�Z
s�������������r>r�c��eZdZdZdZdS)�4TestSpecial.test_strenum.<locals>.ThirdFailedStrEnumr/r(Nr�rLr>r<�ThirdFailedStrEnumr�_
s�����������r>r�zencoding must be a string, not c�$�eZdZdZdejfZdS)r�r/�2N�rFrGrHr��sys�getdefaultencodingr�rLr>r<r�z4TestSpecial.test_strenum.<locals>.ThirdFailedStrEnumc
� ���������C�2�2���r>zerrors must be a string, not 9c��eZdZdZdZdS)r�r/�r�r�r�Nr�rLr>r<r�z4TestSpecial.test_strenum.<locals>.ThirdFailedStrEnumg
���������&���r>)r	r�r�r9r>rpr�rr�r�r�rarr)r�r�r�r�r�r�r�r�r�r�r�s          @r<�test_strenumzTestSpecial.test_strenum-
s����	,�	,�	,�	,�	,�'�	,�	,�	,�
	
�����#�.�.�.�����[�_�-�-�s�3�3�3�������[�_�5�5�s�;�;�;������#�k�o�*>�*>�?�?�?������$�+�+�k�o�*F�*F�G�G�G�����k�o�.�.�0H�I�I�I�	'�	'�	'�	'�	'�	'�	'�	'�	(�	(�	(�	(�	(�	(�	(�)�W�	(�	(�	(�
	
����*�C�0�0�0�����[�.�/�/��A�A�A�	2�	2�	2�	2�	2��	2�	2�	2�	�	�	�	�	�	�7�	�	�	������#�.�.�.������#�i�o�*>�*>�?�?�?�	7�	7�	7�	7�	7�	7�	7�	7�	�	�	�	�	�,�	�7�	�	�	�����)�3�/�/�/�����)�3�{�/?�+@�+@�A�A�A�
�
#�
#�I�/B�
C�
C�	�	�
�
�
�
�
�W�
�
�
�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	��
#�
#�I�/B�
C�
C�	�	�
�
�
�
�
�g�
�
�
�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�
�
#�
#�I�/B�
C�
C�	�	�
�
�
�
�
�W�
�
�
�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	��
#�
#�I�I�VY�Vl�Vl�/o�
p�
p�	3�	3�
3�
3�
3�
3�
3�W�
3�
3�
3�	3�	3�	3�	3�	3�	3�	3�	3�	3�	3�	3����	3�	3�	3�	3��
#�
#�I�/O�
P�
P�	'�	'�
'�
'�
'�
'�
'�W�
'�
'�
'�	'�	'�	'�	'�	'�	'�	'�	'�	'�	'�	'�	'����	'�	'�	'�	'�	'�	'sZ�(J�J�J�.K�K�K�4L�L�L�M'�'M+�.M+�
N.�.N2�5N2c�.��Gd�dtt��}Gd�d|��}|�|jd��|�t|j��d��|�d�|j��d��|�t|j��d��Gd	�d
���G�fd�d�|��}|�|jd
��|�t|j��d��Gd�dt��}Gd�d||��}|�|jd��|�t|j��d��Gd�d��}Gd�d|||��}|�|jd��|�t|j��d��Gd�d|��}Gd�d|��}	Gd�d |��}
|�	td!��5Gd"�d |��}
ddd��n#1swxYwY|�	td#��5Gd$�d |��}
ddd��dS#1swxYwYdS)%Nc��eZdZdS)�6TestSpecial.test_custom_strenum.<locals>.CustomStrEnumNr�rLr>r<�
CustomStrEnumr	l
r�r>r
c��eZdZdZdZdZdZdS)�1TestSpecial.test_custom_strenum.<locals>.OkayEnumr/r0r�r�Nr�rLr>r<�OkayEnumrn
r�r>r
r/zOkayEnum.onerJz<OkayEnum.one: '1'>c��eZdZd�ZdS)�2TestSpecial.test_custom_strenum.<locals>.DumbMixinc��dSr�rLr�s r<rz:TestSpecial.test_custom_strenum.<locals>.DumbMixin.__str__y
r�r>Nr@rLr>r<r�rx
r}r>r�c�*��eZdZdZdZdZ�jZdS)�4TestSpecial.test_custom_strenum.<locals>.DumbStrEnumr]r�r�Nr�r�s�r<r�r{
r�r>r�r�r�c��eZdZd�ZdS)�2TestSpecial.test_custom_strenum.<locals>.EnumMixinc�*�td|����dSr�r�r�s r<r�z8TestSpecial.test_custom_strenum.<locals>.EnumMixin.hello�
r�r>Nr�rLr>r<r�r�
r�r>r�c��eZdZdZdS)�2TestSpecial.test_custom_strenum.<locals>.HelloEnumr�Nr�rLr>r<r�r�
r�r>r�r�zHelloEnum.eightc��eZdZd�ZdS)�5TestSpecial.test_custom_strenum.<locals>.GoodbyeMixinc�$�td��dSr�r�r�s r<r�z=TestSpecial.test_custom_strenum.<locals>.GoodbyeMixin.goodbye�
r�r>Nr�rLr>r<r�r�
r�r>r�c��eZdZdZdS)�4TestSpecial.test_custom_strenum.<locals>.GoodbyeEnumr�Nr�rLr>r<r�r�
r�r>r�r�zGoodbyeEnum.ninec��eZdZdZdZdS)�;TestSpecial.test_custom_strenum.<locals>.FirstFailedStrEnumrCr0Nr�rLr>r<r�r�
s�������C��C�C�Cr>r�c��eZdZdZdZdZdS)�<TestSpecial.test_custom_strenum.<locals>.SecondFailedStrEnumr/r�r1NrIrLr>r<r�r �
s�������C��C��E�E�Er>r�c��eZdZdZdZdS)�;TestSpecial.test_custom_strenum.<locals>.ThirdFailedStrEnumr/r(Nr�rLr>r<r�r"�
s�������C��C�C�Cr>r�z.encoding. must be str, not c�$�eZdZdZdejfZdS)r"r/r�Nr�rLr>r<r�z;TestSpecial.test_custom_strenum.<locals>.ThirdFailedStrEnum�
rr>z.errors. must be str, not c��eZdZdZdZdS)r"r/rNr�rLr>r<r�z;TestSpecial.test_custom_strenum.<locals>.ThirdFailedStrEnum�
rr>)r9rr�r�r>rpr�r�r�r�ra)r�r
r
r�r�r�r�r�r�r�r�r�s           @r<�test_custom_strenumzTestSpecial.test_custom_strenumk
sO���	�	�	�	�	�C��	�	�	�	,�	,�	,�	,�	,�}�	,�	,�	,�
	
�����s�+�+�+�����X�\�*�*�N�;�;�;�������X�\�2�2�N�C�C�C�����h�l�+�+�-B�C�C�C�	'�	'�	'�	'�	'�	'�	'�	'�	(�	(�	(�	(�	(�	(�	(�)�]�	(�	(�	(�
	
����*�C�0�0�0�����[�.�/�/��A�A�A�	2�	2�	2�	2�	2��	2�	2�	2�	�	�	�	�	�	�=�	�	�	������#�.�.�.�����Y�_�-�-�/@�A�A�A�	7�	7�	7�	7�	7�	7�	7�	7�	�	�	�	�	�,�	�=�	�	�	�����)�3�/�/�/�����[�-�.�.�0B�C�C�C�	�	�	�	�	��	�	�	�	�	�	�	�	�-�	�	�	�	�	�	�	�	��	�	�	��
#�
#�I�/M�
N�
N�	3�	3�
3�
3�
3�
3�
3�]�
3�
3�
3�	3�	3�	3�	3�	3�	3�	3�	3�	3�	3�	3����	3�	3�	3�	3��
#�
#�I�/K�
L�
L�	'�	'�
'�
'�
'�
'�
'�]�
'�
'�
'�	'�	'�	'�	'�	'�	'�	'�	'�	'�	'�	'�	'����	'�	'�	'�	'�	'�	's$�-I�I�I�.J
�
J�Jc��|�td��5Gd�dtt��}ddd��dS#1swxYwYdS)Nz_value_ not set in __new__c�*�eZdZd�Zd�ZdZdZdZdZdS)�6TestSpecial.test_missing_value_error.<locals>.Combinedc���t�||��}d|vr/|�dd��\}}|�d��}n|}d}||_||_||_|S)N�(rCz ))r9r[r��strip�fis_name�segment�sequence)rHr?r.r/r,r-s      r<r[z>TestSpecial.test_missing_value_error.<locals>.Combined.__new__�
sm���;�;�s�E�2�2�D��e�|�|�,1�K�K��Q�,?�,?�)��'�")�-�-��"5�"5���#(��"&��$,�D�M�#*�D�L�$,�D�M��Kr>c�2�d|jj�d|j�d�S)N�<r?r
)r\rFr�r�s r<r�z?TestSpecial.test_missing_value_error.<locals>.Combined.__repr__�
s ���(,��(?�(?�(?�����M�Mr>)zAn$(1,2)r)zAn$(3,2)rC)zAn$(5,1)r()zBn$rDN)	rFrGrHr[r��key_type�
company_idr�r�rLr>r<�Combinedr(�
sE������ � � �N�N�N�!.�� -�
� -�� -���r>r3)r�rar9r)r�r3s  r<�test_missing_value_errorz$TestSpecial.test_missing_value_error�
s���
�
#�
#�I�/K�
L�
L�	.�	.�
.�
.�
.�
.�
.�3��
.�
.�
.�	.�	.�	.�	.�	.�	.�	.�	.�	.�	.�	.�	.����	.�	.�	.�	.�	.�	.s�A�A�
Ac��Gd�dt��}|�|jd��|�|jd��dS)Nc��eZdZdZdZdS)�FTestSpecial.test_private_variable_is_normal_attribute.<locals>.Private�Radar�HoolihanN)rFrGrH�_Private__corporal�_Private__major_rLr>r<�Privater7�
s������ �J�!�H�H�Hr>r<r8r9)rr�r:r;)r�r<s  r<�)test_private_variable_is_normal_attributez5TestSpecial.test_private_variable_is_normal_attribute�
sf��	"�	"�	"�	"�	"�d�	"�	"�	"�	
����3�W�=�=�=�����1�:�>�>�>�>�>r>c��Gd�dt��}|jj}|�||j��|�|j|d��|�|jjd��dS)Nc��eZdZdZdZdZdS)�6TestSpecial.test_member_from_member_access.<locals>.DirCrrDN)rFrGrH�YES�NOr�rLr>r<�Dir@�
s�������C��B��D�D�Dr>rCr�)rrArBrrr�r�)r�rC�warns   r<�test_member_from_member_accessz*TestSpecial.test_member_from_member_access�
s���	�	�	�	�	��	�	�	��v�y���
�
�d�B�E�"�"�"��
�
�b�g�r�&�z�*�*�*�������v�.�.�.�.�.r>c����dddd��G�fd�dt��}|�t|��|j|jg��|�|jjd��|�|j���d��|�td��5G�fd	�d
t��}ddd��dS#1swxYwYdS)N�aloof�friendlyr�)�FOO_CAT�BAR_DOG�	FOO_HORSEc���eZdZe���d�����D����d�ZdS)�ATestSpecial.test_dynamic_members_with_static_methods.<locals>.Fooc�D�i|]\}}|�d���||��S��FOO_��
startswith�rgr�r�s   r<�
<dictcomp>zLTestSpecial.test_dynamic_members_with_static_methods.<locals>.Foo.<dictcomp>�
s@�������1��|�|�F�+�+���q���r>c�4�|j���Sr��r?rr�s r<rzGTestSpecial.test_dynamic_members_with_static_methods.<locals>.Foo.upper�
s���z�'�'�)�)�)r>N�rFrGrHr��updater�r��foo_definess�r<rCrM�
sh��������D�F�F�M�M��� +� 1� 1� 3� 3����
�
�
�

*�
*�
*�
*�
*r>rCrWz$'FOO_CAT' already defined as 'aloof'c�~��eZdZe��jd�����D��fiddi��d�ZdS)�DTestSpecial.test_dynamic_members_with_static_methods.<locals>.FooBarc�D�i|]\}}|�d���||��SrOrQrSs   r<rTzOTestSpecial.test_dynamic_members_with_static_methods.<locals>.FooBar.<dictcomp>�
s@����� �A�q��<�<��/�/���1���r>rI�smallc�4�|j���Sr�rVr�s r<rzJTestSpecial.test_dynamic_members_with_static_methods.<locals>.FooBar.upper�
s���:�+�+�-�-�-r>NrWrYs�r<�FooBarr\�
s|������������
���$/�$5�$5�$7�$7������
%�g�.����.�.�.�.�.r>r`)	rr�r�rIrKr?rr�ra)r�rCr`rZs   @r<�(test_dynamic_members_with_static_methodsz4TestSpecial.test_dynamic_members_with_static_methods�
s[���")�j�u�U�U��	*�	*�	*�	*�	*�	*�	*�$�	*�	*�	*�	
����c���S�[�#�-�$@�A�A�A������*�G�4�4�4������,�,�.�.��6�6�6�
�
#�
#�I�/U�
V�
V�
	.�
	.�	
.�	
.�	
.�	
.�	
.�	
.�	
.��	
.�	
.�	
.�
	.�
	.�
	.�
	.�
	.�
	.�
	.�
	.�
	.�
	.�
	.�
	.����
	.�
	.�
	.�
	.�
	.�
	.s�4C�C�Cc��ddlm}|Gd�d����}Gd�d|t��}|�t	|j|����|�|j|u|j��|�|jj|d��k|jj��|�t|j��d��d	S)
z)ensure dataclass-mixin has correct repr()r)�	dataclassc��eZdZUdZeed<dS)�1TestSpecial.test_repr_with_dataclass.<locals>.FoorCr�N)rFrGrHr��__annotations__rLr>r<rCre�
s������� �L��F�F�F�F�Fr>rCc��eZdZdZdS)�5TestSpecial.test_repr_with_dataclass.<locals>.EntriesrCN�rFrGrH�ENTRY1rLr>r<�Entriesrh�
��������F�F�Fr>rkrCz<Entries.ENTRY1: Foo(a=1)>N)
�dataclassesrcrr�r�rjr8r?r�rp)r�rcrCrks    r<�test_repr_with_dataclassz$TestSpecial.test_repr_with_dataclass�
s��)�)�)�)�)�)�	�	�	�	�	�	�	�	�
��	�	�	�	�	�	�c�4�	�	�	����
�7�>�3�7�7�8�8�8�����-��4�g�6K�L�L�L������,���A���6���8L�M�M�M�����g�n�-�-�/K�L�L�L�L�Lr>c��Gd�d��}Gd�d|t��}|�t|j��d��dS)Nc��eZdZd�Zd�ZdS)�2TestSpecial.test_repr_with_init_mixin.<locals>.Fooc��||_dSr�)r�)r�r�s  r<r�z;TestSpecial.test_repr_with_init_mixin.<locals>.Foo.__init__�
s
������r>c��d|jzS)Nz	Foo(a=%r))r�r�s r<r�z;TestSpecial.test_repr_with_init_mixin.<locals>.Foo.__repr__�
s��"�T�\�1�1r>N)rFrGrHr�r�rLr>r<rCrq�
s2������
�
�
�
2�
2�
2�
2�
2r>rCc��eZdZdZdS)�6TestSpecial.test_repr_with_init_mixin.<locals>.EntriesrCNrirLr>r<rkrurlr>rkzFoo(a=1))rr�rprj�r�rCrks   r<�test_repr_with_init_mixinz%TestSpecial.test_repr_with_init_mixin�
s~��	2�	2�	2�	2�	2�	2�	2�	2�
	�	�	�	�	�c�4�	�	�	�	
����g�n�-�-�z�:�:�:�:�:r>c���Gd�d��}Gd�d|t��}|�t|j��d��|�t	|j��d��dS)Nc��eZdZd�Zd�ZdS)�=TestSpecial.test_repr_and_str_with_no_init_mixin.<locals>.Fooc��dS)NrCrLr�s r<r�zFTestSpecial.test_repr_and_str_with_no_init_mixin.<locals>.Foo.__repr__����ur>c��dS)N�ooFrLr�s r<rzETestSpecial.test_repr_and_str_with_no_init_mixin.<locals>.Foo.__str__
r|r>N)rFrGrHr�rrLr>r<rCrzs2������
�
�
�
�
�
�
�
r>rCc��eZdZdZdS)�ATestSpecial.test_repr_and_str_with_no_init_mixin.<locals>.EntriesrCNrirLr>r<rkr�rlr>rkr~)rr�rprjr9rvs   r<�$test_repr_and_str_with_no_init_mixinz0TestSpecial.test_repr_and_str_with_no_init_mixins���	�	�	�	�	�	�	�	�
	�	�	�	�	�c�4�	�	�	�	
����g�n�-�-�u�5�5�5�����W�^�,�,�e�4�4�4�4�4r>c��Gd�dt��}|�|jjd��|�|jjd��dS)Nc��eZdZd�ZdZdZdS)�2TestSpecial.test_value_backup_assign.<locals>.Somec�6�t�|��Sr��r�r[)rHr�s  r<r[z:TestSpecial.test_value_backup_assign.<locals>.Some.__new__����~�~�c�*�*�*r>rCr(N)rFrGrHr[r�r�rLr>r<�Somer�s'������
+�
+�
+��A��A�A�Ar>r�rCr()rr�r�r?r�)r�r�s  r<�test_value_backup_assignz$TestSpecial.test_value_backup_assignsh��	�	�	�	�	�4�	�	�	�
	
������q�)�)�)�������q�)�)�)�)�)r>c�
�Gd�dtt��}|�t|j|jz|��|j|jz��|�t|jdz|����dS)Nc��eZdZdZdZdZdS)�7TestSpecial.test_custom_flag_bitwise.<locals>.MyIntFlagrCr(rTN�rFrGrHr�r��FOURrLr>r<�	MyIntFlagr�rSr>r�r()r�rr�r�r�r�)r�r�s  r<�test_custom_flag_bitwisez$TestSpecial.test_custom_flag_bitwises���	�	�	�	�	��T�	�	�	�	
���
�9�=�9�=�#@�)�L�L�i�m�^g�^k�Nk�l�l�l����
�9�=�1�#4�i�@�@�A�A�A�A�Ar>c���Gd�dt��}|j|jz}tj|��}tj|��}|�||��|�||��|j|jzdz}tj|��}tj|��}|�||��|�||��|�|jd��dS)Nc��eZdZdZdZdZdS)�2TestSpecial.test_int_flags_copy.<locals>.MyIntFlagrCr(rTNr�rLr>r<r�r�%rSr>r�r�r�)rr�r�rcrdr�r?)r�r��flagsrfrgs     r<�test_int_flags_copyzTestSpecial.test_int_flags_copy$s��	�	�	�	�	��	�	�	�
�
�	�
�-����5�!�!���}�U�#�#�������'�'�'�����u�%�%�%��
�	�
�-��1����5�!�!���}�U�#�#�������'�'�'�����u�%�%�%������y�1�1�1�1�1r>c���ddlm}|dd���G�fd�dt��}|�t	|j��d��|�|jj�ddg�����|�d	�|D���ddg����d
ddg����ddgd
����g��dS)Nr)�
namedtuple�TTuplez
id a blistc�d��eZdZ�ddg��Z�dddg��Z�ddgd���ZdS)�4TestSpecial.test_namedtuple_as_value.<locals>.NTEnumrrCr(rT�rrCr(N)rFrGrH�NONEr*rv)r�s�r<�NTEnumr�:sN��������6�!�Q��#�#�D���q�!�a�S�!�!�A���q�!�Y�Y�Y�'�'�A�A�Ar>r�z*<NTEnum.NONE: TTuple(id=0, a=0, blist=[])>)�idr��blistc��g|]	}|j��
SrLrk)rgr�s  r<riz8TestSpecial.test_namedtuple_as_value.<locals>.<listcomp>As��)�)�)�Q���)�)�)r>rCr(rTr�)�collectionsr�rr�rpr�r?)r�r�r�r�s   @r<�test_namedtuple_as_valuez$TestSpecial.test_namedtuple_as_value7s$���*�*�*�*�*�*���H�l�3�3��	(�	(�	(�	(�	(�	(�	(�T�	(�	(�	(�	
����f�k�*�*�,X�Y�Y�Y������*�F�F�a�1�B�,G�,G�,G�H�H�H����)�)�&�)�)�)���1���,�,�,�f�f��Q�q�c�.J�.J�.J�F�F�VW�[\�dm�dm�dm�Ln�Ln�Ln�o�	�	�	�	�	r>c�J�Gd�dt��}|�|jd��|�|jd��|�|jd��|�|jdzd��Gd�dt
��}|�|jd��|�|jd��|�|jjd��|�|j|jzjd��Gd	�dtt
t�
��}|�|jd��|�|jd��|�|jd��|�|jdzd��dS)Nc�*�eZdZd�Zed��ZdS)�;TestSpecial.test_flag_with_custom_new.<locals>.FlagFromCharc�T�d|z}t�||��}||_|SrFr��rHr�r?r�s    r<r[zCTestSpecial.test_flag_with_custom_new.<locals>.FlagFromChar.__new__G�*���Q����{�{�3��.�.��$����r>r�N�rFrGrHr[�ordr�rLr>r<�FlagFromCharr�F�,������
�
�
���C���A�A�Ar>r�l�������l�rCl�c�.�eZdZd�Zed��ZdZdS)r�c�R�d|z}t�|��}||_|SrF)r�r[r�r�s    r<r[zCTestSpecial.test_flag_with_custom_new.<locals>.FlagFromChar.__new__Vs(���Q����~�~�c�*�*��$����r>r�rCN)rFrGrHr[r�r��zrLr>r<r�z;TestSpecial.test_flag_with_custom_new.<locals>.FlagFromCharUs1������
�
�
���C���A��A�A�Ar>l�c�*�eZdZd�Zed��ZdS)r�c�T�d|z}t�||��}||_|SrFr�r�s    r<r[zCTestSpecial.test_flag_with_custom_new.<locals>.FlagFromChar.__new__fr�r>r�Nr�rLr>r<r�z;TestSpecial.test_flag_with_custom_new.<locals>.FlagFromCharer�r>r�)
rr��
_all_bits_�_flag_mask_r�rr?r�r�r)r�r�s  r<�test_flag_with_custom_newz%TestSpecial.test_flag_with_custom_newEs���	�	�	�	�	�7�	�	�	�	
����0�2P�Q�Q�Q�����1�3Q�R�R�R������)G�H�H�H�������)�+I�J�J�J�	�	�	�	�	�4�	�	�	�	
����0�2P�Q�Q�Q�����1�3Q�R�R�R������-�/M�N�N�N����,�.���7�>�@^�_�_�_�	�	�	�	�	�3��t�	�	�	�	�	
����0�2P�Q�Q�Q�����1�3Q�R�R�R������)G�H�H�H�������)�+I�J�J�J�J�Jr>c�T��Gd�d���|�t��5Gd�d�tj��}ddd��n#1swxYwY|�t��5G�fd�d�tj��}ddd��dS#1swxYwYdS)Nc��eZdZd�Zd�ZdS)�-TestSpecial.test_init_exception.<locals>.Basec�6�t�|��Sr�r�)rHr�s  r<r[z5TestSpecial.test_init_exception.<locals>.Base.__new__ur�r>c�"�td|���)NzI don't liker%)r�r�s  r<r�z6TestSpecial.test_init_exception.<locals>.Base.__init__ws�� ���3�3�3r>N)rFrGrHr[r�rLr>r<r�r�ts2������
+�
+�
+�
4�
4�
4�
4�
4r>r�c��eZdZdZd�ZdS)�/TestSpecial.test_init_exception.<locals>.MyEnumr�c��||_dSr��r��r�r�s  r<r�z8TestSpecial.test_init_exception.<locals>.MyEnum.__init__|�
���D�F�F�Fr>N)rFrGrHr*r�rLr>r<r�r�zs(������������r>r�c�$��eZdZdZd�Z�fd�ZdS)r�r�c��||_dSr�r�r�s  r<r�z8TestSpecial.test_init_exception.<locals>.MyEnum.__init__�r�r>c�R����|��}�|��|_|Sr�)r[r�)rHr?rr�s   �r<r[z7TestSpecial.test_init_exception.<locals>.MyEnum.__new__�s(���!�\�\�#�.�.�F�%)�T�%�[�[�F�N�!�Mr>N)rFrGrHr*r�r[)r�s�r<r�z/TestSpecial.test_init_exception.<locals>.MyEnumsB������������"�"�"�"�"�"�"r>)rPrar/rr�)r�r�r�s  @r<�test_init_exceptionzTestSpecial.test_init_exceptionssv���	4�	4�	4�	4�	4�	4�	4�	4�
�
�
�y�
)�
)�	�	�
�
�
�
�
��t�y�
�
�
�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�
�
�
�z�
*�
*�	"�	"�
"�
"�
"�
"�
"�
"�
"��t�y�
"�
"�
"�	"�	"�	"�	"�	"�	"�	"�	"�	"�	"�	"�	"����	"�	"�	"�	"�	"�	"s#�A�A�A�4B�B!�$B!N)frFrGrHr�r<rrr0�skipr&r6r9rRrXr1r2rhrqrxr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rrrrrr"r$r7r@rErTrdrjrprvr�r�r�r�r�rrr!r.r:rArOrZrbrgr�r�r�r�r�r�r�r�r�rrrr2rlr{r�r�r�rr%r4r=rErarnrwr�r�r�r�r�r�r�rLr>r<r�r��sH�����������:)�)�)�,&�&�&�$�X�]�<� � �+�+�!� �+�0���2E�E�E�
@�@�@�08�8�8��X�_��g�%�+�����	���.�X�_��W�$�-�����	���(���(:�:�:�0���*,�,�,�-=�-=�-=�^$�$�$�.�.�.� .�.�.�".�.�.� .�.�.�".�.�.� .�.�.� 6�6�6�
���
�
�
�6�6�6�9�9�9�;�;�;�5�5�5�7�7�7�D�D�D�O�O�O�K�K�K�A�A�A�9�9�9�3�3�3�	�	�	�8�8�8�,�,�,�&A�A�A�4�4�4�
4�4�4�?�?�?�?�?�?�C�C�C�A�A�A�9�9�9�3�3�3�$ � � �#�#�#�J:2�:2�:2�x:2�:2�:2�x:2�:2�:2�x92�92�92�v82�82�82�t82�82�82�t
>�
>�
>�7�7�7�(;�;�;� ;�;�;�4�4�4�.�.�.�>���B�B�B�-�-�-�.�.�.�&���,E�E�E�*8�8�8�87�7�7�"D�D�D�"
5�
5�
5�#5�#5�#5�J +� +� +�De8�e8�e8�N���&�&�&�6*(�*(�*(�X(�(�(�<'�<'�<'�|9'�9'�9'�v.�.�.�4?�?�?�/�/�/�.�.�.�6M�M�M�	;�	;�	;�5�5�5�*�*�*�B�B�B�2�2�2�&���,K�,K�,K�\"�"�"�"�"r>r�c�<�eZdZdZd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	S)
�	TestOrderz%test usage of the `_order_` attributec�,�Gd�dt��}dS)Nc��eZdZdZdZdZdZdS)�*TestOrder.test_same_members.<locals>.Color�red green bluerCr(rDN�rFrGrH�_order_r+r,r-rLr>r<r.r��s"������&�G��C��E��D�D�Dr>r.�rr5s  r<�test_same_memberszTestOrder.test_same_members�s6��	�	�	�	�	�D�	�	�	�	�	r>c�,�Gd�dt��}dS)Nc�"�eZdZdZdZdZdZeZdS)�7TestOrder.test_same_members_with_aliases.<locals>.Colorr�rCr(rDN�rFrGrHr�r+r,r-�verderLr>r<r.r��s'������&�G��C��E��D��E�E�Er>r.r�r5s  r<�test_same_members_with_aliasesz(TestOrder.test_same_members_with_aliases�s6��	�	�	�	�	�D�	�	�	�	�	r>c��|�td��5Gd�dt��}ddd��dS#1swxYwYdS)N�#member order does not match _order_c��eZdZdZdZdZdZdS)�6TestOrder.test_same_members_wrong_order.<locals>.Colorr�rCrDr(N)rFrGrHr�r+r-r,rLr>r<r.r��s"������*���������r>r.�r�rarr5s  r<�test_same_members_wrong_orderz'TestOrder.test_same_members_wrong_order�s���
�
#�
#�I�/T�
U�
U�	�	�
�
�
�
�
��
�
�
�	�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�	�	rcc��|�td��5Gd�dt��}ddd��dS#1swxYwYdS)Nr�c��eZdZdZdZdZdZdS)�5TestOrder.test_order_has_extra_members.<locals>.Color�red green blue purplerCr(rDNr�rLr>r<r.r��s"������1���������r>r.r�r5s  r<�test_order_has_extra_membersz&TestOrder.test_order_has_extra_members�s���
�
#�
#�I�/T�
U�
U�	�	�
�
�
�
�
��
�
�
�	�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�	�	rcc��|�td��5Gd�dt��}ddd��dS#1swxYwYdS)Nr�c�"�eZdZdZdZdZdZeZdS)�BTestOrder.test_order_has_extra_members_with_aliases.<locals>.Colorr�rCr(rDNr�rLr>r<r.r��s'������1�����������r>r.r�r5s  r<�)test_order_has_extra_members_with_aliasesz3TestOrder.test_order_has_extra_members_with_aliases�s���
�
#�
#�I�/T�
U�
U�	�	�
�
�
�
�
��
�
�
�	�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�	�	rcc��|�td��5Gd�dt��}ddd��dS#1swxYwYdS)Nr�c�"�eZdZdZdZdZdZdZdS)�4TestOrder.test_enum_has_extra_members.<locals>.Colorr�rCr(rDrTN)rFrGrHr�r+r,r-�purplerLr>r<r.r��s'������*�����������r>r.r�r5s  r<�test_enum_has_extra_membersz%TestOrder.test_enum_has_extra_members�s���
�
#�
#�I�/T�
U�
U�	�	�
�
�
�
�
��
�
�
�	�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�	�	rcc��|�td��5Gd�dt��}ddd��dS#1swxYwYdS)Nr�c�&�eZdZdZdZdZdZdZeZdS)�ATestOrder.test_enum_has_extra_members_with_aliases.<locals>.Colorr�rCr(rDrTN)	rFrGrHr�r+r,r-r�r�rLr>r<r.r��s,������*�������������r>r.r�r5s  r<�(test_enum_has_extra_members_with_aliasesz2TestOrder.test_enum_has_extra_members_with_aliases�s���
�
#�
#�I�/T�
U�
U�	�	�
�
�
�
�
��
�
�
�	�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�	�	rcN)rFrGrHr�r�r�r�r�r�r�r�rLr>r<r�r��s�������+�+�����������������������r>r�c��eZdZdZGd�de��ZGd�de��ZGd�de��Zd�Zd	�Z	d
�Z
d�Zd�Zd
�Z
d�Zd�Zd�Zd�Zd�Zd�Zejedkd��d���Zejedkd��d���Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd �Z d!�Z!e"j#e"j$��d"�����Z%d#�Z&d$S)%�OldTestFlagzTests of the Flags.c��eZdZd\ZZZdS)�OldTestFlag.Perm)rTr(rCN�rFrGrH�R�Wr|rLr>r<�Permr��s���������1�a�a�ar>r�c�"�eZdZdZdZdZdZdZdS)�OldTestFlag.OpenrrCr(rD�N�rFrGrH�RO�WO�RW�AC�CErLr>r<�Openr���'������
��
��
��
��
���r>r�c�L�eZdZdZdZdZdZdZeezZeezezZ	eezezZ
dS)�OldTestFlag.ColorrrCr(rTN�rFrGrH�BLACKrn�ROJOr
r�PURPLE�WHITE�BLANCOrLr>r<r.r��J�����������������T����E�	�$����U��4����r>r.c	���|j}|D]�}|D]�}|�||z||j|jz����|�||zj|j|jz��|�t	||z��|������|D]}|�||z|���|j}|�|j|jz|j��dSr��r�r�r?rrr�r�r�r��r�r�r>�jr�s     r<�test_orzOldTestFlag.test_or�s����y���	1�	1�A��
1�
1��� � �!�a�%�$�$�q�w���/@�*A�*A�B�B�B�� � �!�a�%����!�'�0A�B�B�B��
�
�d�1�q�5�k�k�4�0�0�0�0�
1��	$�	$�A��M�M�!�a�%��#�#�#�#��y���
�
�d�g���'���1�1�1�1�1r>c��|j}|j|jz}|j|jz}|j|jz}|j|jz|jz}t	|��|||||d��gz}|D]X}|D]S}|�||zj|j|jz��|�t||z��|���T�Y|D]M}|�||z|��|�||z|��|�||z|���N|j	}	|�|	j
|	jz|	j
��dS�Nr)r�r�r�r|r�r�r?rrr�r�r�r��
r�r�r��RX�WX�RWXr7r>rr�s
          r<�test_andzOldTestFlag.test_and�sX���y��
�V�d�f�_��
�V�d�f�_��
�V�d�f�_���f�t�v�o���&���d���r�2�r�3���Q���8�8���	1�	1�A��
1�
1��� � �!�a�%����!�'�0A�B�B�B��
�
�d�1�q�5�k�k�4�0�0�0�0�
1��	&�	&�A��M�M�!�a�%��#�#�#��M�M�!�c�'�1�%�%�%��M�M�#��'�1�%�%�%�%��y���
�
�d�g���'���1�1�1�1�1r>c�
�|j}|D]X}|D]S}|�||zj|j|jz��|�t	||z��|���T�Y|D]F}|�||d��z|��|�|d��|z|���G|j}|�|j|jz|j��|�|j|jz|j��dSrr
rs     r<�test_xorzOldTestFlag.test_xor�s���y���	1�	1�A��
1�
1��� � �!�a�%����!�'�0A�B�B�B��
�
�d�1�q�5�k�k�4�0�0�0�0�
1��	*�	*�A��M�M�!�d�d�1�g�g�+�q�)�)�)��M�M�$�$�q�'�'�A�+�q�)�)�)�)��y���
�
�d�g���'���1�1�1��
�
�d�g���'���1�1�1�1�1r>c���|j}|D]}|�|���|j}|D]7}|�t	|j��t	|�����8dSr��r�r�r�r�r	r?�r�r�r?r�s    r<rzOldTestFlag.test_bool
�t���y���	�	�A��O�O�A������y���	5�	5�A����T�!�'�]�]�D��G�G�4�4�4�4�	5�	5r>c�T�|�tjjt��Gd�dtt
���}|�|jt
��Gd�dtt���}|�|jt��Gd�dtt���}|�|jt��Gd�d	tt���}|�td
|d��|�|d��|j
|jz��|�|d��|j��|�|d��d��|�
t|d����tu��|�t!|��|jg��|�|d
��|j��|�|d��|j��Gd�dtj��}|�
|j|j|jzv��|�td|d��Gd�dtj��}|�
|j|j|jzv��|�|d��jd��Gd�dt��}|�t1|j|jz��d��dS)Nc��eZdZdZdZdZdS)�'OldTestFlag.test_boundary.<locals>.IronrCr(r�N�rFrGrHr�r��EIGHTrLr>r<�IronrrLr>r r�c��eZdZdZdZdZdS)�(OldTestFlag.test_boundary.<locals>.WaterrCr(r�NrrLr>r<�Waterr"rLr>r#c��eZdZdZdZdZdS)�(OldTestFlag.test_boundary.<locals>.SpacerCr(r�NrrLr>r<�Spacer% rLr>r&c��eZdZdZdZdZdS)�*OldTestFlag.test_boundary.<locals>.BizarrerDrTr�N�rFrGrHrIr��drLr>r<�Bizarrer(&��������A��A��A�A�Ar>r+zinvalid value 7r����rDr�c� �eZdZdZdZdezZdS)�+OldTestFlag.test_boundary.<locals>.SkipFlagrCr(rTNr�rLr>r<�SkipFlagr/7�!�������A��A��A��A�A�Ar>r0zSkipFlag.. invalid value 42�*c� �eZdZdZdZdezZdS)�.OldTestFlag.test_boundary.<locals>.SkipIntFlagrCr(rTNr�rLr>r<�SkipIntFlagr4?r1r>r5c��eZdZdZdZdZdZdS)�-OldTestFlag.test_boundary.<locals>.MethodHint�rCr(r�N)rFrGrH�
HiddenText�
DigitsOnly�LettersOnly�OnlyMaskrLr>r<�
MethodHintr7Gs"�������J��J��K��H�H�Hr>r=z5MethodHint.HiddenText|DigitsOnly|LettersOnly|OnlyMask)rrr/rr�rrrrr�r�r�r�r�r�r�r�r�r�rIr*r�r*rr?r9r9r<)r�r r#r&r+r0r5r=s        r<�
test_boundaryzOldTestFlag.test_boundaryst���
�
�d�i�*�F�3�3�3�	�	�	�	�	�4�'�	�	�	�	�	
�
�
�d�o�w�/�/�/�	�	�	�	�	�D�6�	�	�	�	�	
�
�
�e�&��/�/�/�	�	�	�	�	�D�5�	�	�	�	�	
�
�
�e�&��.�.�.�	�	�	�	�	�d�T�	�	�	�	�
	
���z�+<�e�Q�G�G�G��
�
�d�d�1�g�g�t�x���0�1�1�1��
�
�d�d�2�h�h���)�)�)������q���1�%�%�%�����U�U�1�X�X���#�-�.�.�.�����g������4�4�4��
�
�g�g�a�j�j�'�)�,�,�,��
�
�g�g�a�j�j�'�)�,�,�,�	�	�	�	�	�t�y�	�	�	�
	
����
�x�z�(�*�'<�=�>�>�>����z�+H�(�TV�W�W�W�	�	�	�	�	�$�,�	�	�	�
	
����
�+�-��
�*E�F�G�G�G������R���.��3�3�3�	�	�	�	�	��	�	�	�	
����Z�2�:�3F�F�G�G�JA�	B�	B�	B�	B�	Br>c��|j}|j}|�t|��|j|j|jg��|�t|��|j|j|j	g��dSr��
r.r�r�r�rnr
rr�r�r��r�r.r�s   r<�	test_iterzOldTestFlag.test_iterP�h���
���y������e���u�y�%�+�u�z�&J�K�K�K�����d���d�g�t�w���%@�A�A�A�A�Ar>c���tdd��}t|��}|�t|��t|����|�t|��d|��|�||j|j|jg��td�����D]�\}}d|z}||��}|�|j	|��|�t|j	��t��|�|j|��|�
||��|�t|��|����dS�Nr��R W XrDrC�rr�r�r�r�r�r|r�r�r?r�r�r�r�rr�r�r�r�r>�nr�rs       r<� test_programatic_function_stringz,OldTestFlag.test_programatic_function_stringVsA���F�G�$�$���4�j�j������S���3�t�9�9�-�-�-�����T���A�t�,�,�,�����t�v�t�v�t�v�6�7�7�7��g�m�m�o�o�.�.�	)�	)�D�A�q��1��A���Q���A����Q�W�a�(�(�(����T�!�'�]�]�C�0�0�0����Q�V�Q�'�'�'��M�M�!�T�"�"�"��M�M�$�q�'�'�4�(�(�(�(�	)�	)r>c���tddd���}t|��}|�t|��t|����|�t|��d|��|�||j|j|jg��td�����D]�\}}d|z}||��}|�|j	|��|�t|j	��t��|�|j|��|�
||��|�t|��|����dS�Nr�rFr�r�rDrGrHs       r<�+test_programatic_function_string_with_startz7OldTestFlag.test_programatic_function_string_with_startesF���F�G�1�-�-�-���4�j�j������S���3�t�9�9�-�-�-�����T���A�t�,�,�,�����t�v�t�v�t�v�6�7�7�7��g�m�m�o�o�.�.�	)�	)�D�A�q��1��A���Q���A����Q�W�a�(�(�(����T�!�'�]�]�C�0�0�0����Q�V�Q�'�'�'��M�M�!�T�"�"�"��M�M�$�q�'�'�4�(�(�(�(�	)�	)r>c���tdgd���}t|��}|�t|��t|����|�t|��d|��|�||j|j|jg��td�����D]�\}}d|z}||��}|�|j	|��|�t|j	��t��|�|j|��|�
||��|�t|��|����dS�Nr�)r�r�r|rDrFrCrGrHs       r<�%test_programatic_function_string_listz1OldTestFlag.test_programatic_function_string_listtsE���F�O�O�O�,�,���4�j�j������S���3�t�9�9�-�-�-�����T���A�t�,�,�,�����t�v�t�v�t�v�6�7�7�7��g�m�m�o�o�.�.�	)�	)�D�A�q��1��A���Q���A����Q�W�a�(�(�(����T�!�'�]�]�C�0�0�0����Q�V�Q�'�'�'��M�M�!�T�"�"�"��M�M�$�q�'�'�4�(�(�(�(�	)�	)r>c���tdd��}t|��}|�t|��t|����|�t|��d|��|�||j|j|jg��td�����D]�\}}dd|zdzz}||��}|�|j	|��|�t|j	��t��|�|j|��|�
||��|�t|��|����dS�Nr�))r�r()r�r�)r|r�rDrFrCr(rGrHs       r<�"test_programatic_function_iterablez.OldTestFlag.test_programatic_function_iterable�sJ���F�;�<�<���4�j�j������S���3�t�9�9�-�-�-�����T���A�t�,�,�,�����t�v�t�v�t�v�6�7�7�7��g�m�m�o�o�.�.�	)�	)�D�A�q��A�a�C��E�
�A���Q���A����Q�W�a�(�(�(����T�!�'�]�]�C�0�0�0����Q�V�Q�'�'�'��M�M�!�T�"�"�"��M�M�$�q�'�'�4�(�(�(�(�	)�	)r>c��tdtd����}t|��}|�t	|��t	|����|�t	|��d|��|�||j|j|jg��td�	����D]�\}}dd|zdzz}||��}|�|j
|��|�t|j
��t��|�|j
|��|�||��|�t|��|����dSrR)rrr�r�r�r�r�r|r�r�r?r�r�r�r�rrrHs       r<�#test_programatic_function_from_dictz/OldTestFlag.test_programatic_function_from_dict�sR���F�K�(G�H�H�I�I���4�j�j������S���3�t�9�9�-�-�-�����T���A�t�,�,�,�����t�v�t�v�t�v�6�7�7�7��g�m�m�o�o�.�.�	)�	)�D�A�q��A�a�C��E�
�A���Q���A����Q�W�a�(�(�(����T�!�'�]�]�C�0�0�0����Q�V�Q�'�'�'��M�M�!�T�"�"�"��M�M�$�q�'�'�4�(�(�(�(�	)�	)r>c��ttt��rt�t|jtj��t|jtjtjz��t|jtjtjz��t|jt��t|jtj��t|jtjtjz��t|jtj��t|jtjtjz��t|jtj
��t|jtj��t|jtjtjz��t|jtj��t|jtjtjz��t|jtjtjzdz��t|jtd����t|jtd����t|jt��t|jtj��t|jtjdz��t|jtjtjz��t|jtj��t|jtjtjz��t|jtj
��t|jtj��t|jtjdz��t|jtjtjz��dS)N�0rrC)
r�rSr8ryrrrJr�rKrWrYr[r^r`r�s r<�test_picklezOldTestFlag.test_pickle�s)���k�9�-�-�	����d�m�[�->�?�?�?��d�.�#�)�+�/�9�	;�	;�	;��d�.�#�)�;�+<�*<�<�	>�	>�	>��d�m�[�9�9�9��d�.���@�@�@��d�.�#�)�+�/�9�	;�	;�	;�	�d�m�-@�-F�G�G�G��d�.�+�1�2E�2I�I�	K�	K�	K��d�m�-@�-G�H�H�H��d�.�0C�0G�H�H�H��d�.�+�1�2E�2I�I�	K�	K�	K�	�d�m�^�-A�B�B�B��d�.�&�,�^�-?�?�	A�	A�	A��d�.�&�,�^�-?�?��D�	F�	F�	F��d�.��q�0A�0A�B�B�B��d�.��t�0D�0D�E�E�E��d�m�^�<�<�<��d�.��0B�C�C�C��d�.��0B�1�0D�E�E�E��d�.�&�,�^�-?�?�	A�	A�	A�	�d�m�-C�-I�J�J�J��d�.�.�4�5K�5O�O�	Q�	Q�	Q��d�m�-C�-J�K�K�K��d�.�0F�0J�K�K�K��d�.�0F�0J�1�0L�M�M�M��d�.�.�4�5K�5O�O�	Q�	Q�	Q�	Q�	Qr>r|r~c���|j}|j}|�|j|v��|�|j|v��|�t��5|�t��5d|vddd��n#1swxYwYddd��n#1swxYwY|�t��5|�t��5d|vddd��n#1swxYwYddd��n#1swxYwY|�t��5|�t��5d|vddd��n#1swxYwYddd��n#1swxYwY|�t��5|�t��5d|vddd��n#1swxYwYddd��dS#1swxYwYdS�Nrr�rC)	r�r.r�rr�rPrar�r��r�r�r.s   r<r�zOldTestFlag.test_contains_er�s���
�y���
��������,�-�-�-������E�)�*�*�*�
�
�
�y�
)�
)�	!�	!��!�!�"4�5�5�
!�
!��5� � �
!�
!�
!�
!�
!�
!�
!�
!�
!�
!�
!����
!�
!�
!�
!�	!�	!�	!�	!�	!�	!�	!�	!�	!�	!�	!����	!�	!�	!�	!��
�
�y�
)�
)�	�	��!�!�"4�5�5�
�
�����
�
�
�
�
�
�
�
�
�
�
����
�
�
�
�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	��
�
�y�
)�
)�	�	��!�!�"4�5�5�
�
��U�
�
�
�
�
�
�
�
�
�
�
�
�
����
�
�
�
�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	��
�
�y�
)�
)�	�	��!�!�"4�5�5�
�
��T�	�	�
�
�
�
�
�
�
�
�
�
�
����
�
�
�
�	�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�	�	s��!B$�<B
�B$�
B	�B$�B	�B$�$B(�+B(�	D�$C5�)D�5C9	�9D�<C9	�=D�D�D�1E4�E�E4�E!	�!E4�$E!	�%E4�4E8�;E8�G�4G�9G�G		�	G�G		�
G�G!�$G!�6__contains__ only works with enum memmbers before 3.12c�J�|j}|j}|�|j|v��|�|j|v��|�d|v��|�d|v��|�d|v��|�d|v��dSrZ)r�r.r�rr�r�r[s   r<r�zOldTestFlag.test_contains_tf�s���
�y���
��������,�-�-�-������E�)�*�*�*�����E�)�*�*�*�������&�&�&�����U�
�#�#�#�����T�	�"�"�"�"�"r>c�v�|j}|\}}}||z}||z}||z}||z|z}|�||v��|�||v��|�||v��|�||v��|�||v��|�||v��|�||v��|�||v��|�||v��|�||v��|�||v��|�||v��dSr�)r�r�r��	r�r�r�r�r|r�rrrs	         r<�test_member_containsz OldTestFlag.test_member_contains�sP���y�����1�a�
��U��
��U��
��U���!�e�a�i������R�� � � �����R�� � � �����S��!�!�!�����R�� � � �����R�� � � �����S��!�!�!�����R�� � � �����R�� � � �����S��!�!�!�����b��!�!�!�����b��!�!�!�����b��!�!�!�!�!r>c�l�|j}|�t|j��g��|�t|j��|j|jg��|�t|j��|jg��|�t|j��|jg��|�t|j��|j|j|jg��|�t|j��|j|j|jg��dSr��	r.r�r�rrrnrr
rr5s  r<�test_member_iterzOldTestFlag.test_member_iter
s����
������e�k�*�*�B�/�/�/�����e�l�+�+�e�i���-D�E�E�E�����e�j�)�)�E�J�<�8�8�8�����e�k�*�*�U�[�M�:�:�:�����e�k�*�*�U�Y���U�Z�,P�Q�Q�Q�����e�k�*�*�U�Y���U�Z�,P�Q�Q�Q�Q�Qr>c���|�|j�|jj��d��|�|j�|jj��d��|�|j�|jj��d��|�|j�|jj��d��dS�NrrCr(rD�r�r.�__len__rr
rrr�s r<�test_member_lengthzOldTestFlag.test_member_length

��������+�+�D�J�,<�=�=�q�A�A�A������+�+�D�J�,<�=�=�q�A�A�A������+�+�D�J�,=�>�>��B�B�B������+�+�D�J�,=�>�>��B�B�B�B�Br>c��Gd�dt��}|�t|��|j|j|j|j|jg��|�|j|j	��|�|j	j
d��|�|jj
d��|�|jj
d��dS)Nc�z�eZdZdZe��Ze��Ze��ZdZe��Z	e��Z
dS)�AOldTestFlag.test_number_reset_and_order_cleanup.<locals>.ConfusedzONE TWO FOUR DOS EIGHT SIXTEENr(N)rFrGrHr�rr�r�r��DOSr�SIXTEENrLr>r<�Confusedrl
sO������6�G��$�&�&�C��$�&�&�C��4�6�6�D��C��D�F�F�E��d�f�f�G�G�Gr>ror(r�r8)rr�r�r�r�r�rrnrrrmr�)r�ros  r<�#test_number_reset_and_order_cleanupz/OldTestFlag.test_number_reset_and_order_cleanup
s���	�	�	�	�	�t�	�	�	�	
����X�����x�|�X�]�H�N�H�L\�]�	_�	_�	_�	
�
�
�h�l�H�L�1�1�1������-�q�1�1�1������/��3�3�3�����)�1�2�6�6�6�6�6r>c��|j}|�|d��jd��|�|djd��|�|d��jd��|�|djd��|�|j|j��|j}|�|d|j��dS�NrCrnrr�rrr��r.r�r�rrrrr�r�rAs   r<�test_aliaseszOldTestFlag.test_aliases$
�����
�������q�����.�.�.�����v��+�U�3�3�3������q�����0�0�0�����x��-�w�7�7�7��
�
�e�l�E�K�0�0�0��y���
�
�d�4�j�$�'�*�*�*�*�*r>c�V�Gd�dt��}|�t|��|j|j|jg��|�|jjd��|�|jjd��|�|jjd��dS)Nc�J�eZdZe��Ze��Ze��ZdS)�+OldTestFlag.test_auto_number.<locals>.ColorN�rFrGrHrr+r-r,rLr>r<r.rx/
�/�������$�&�&�C��4�6�6�D��D�F�F�E�E�Er>r.rCr(rT)rr�r�r+r-r,r?r5s  r<�test_auto_numberzOldTestFlag.test_auto_number.
���	�	�	�	�	�D�	�	�	�
	
����e���u�y�%�*�e�k�&J�K�K�K�������!�,�,�,������)�1�-�-�-������*�A�.�.�.�.�.r>c��|�td��5Gd�dt��}ddd��dS#1swxYwYdS)Nzinvalid flag value .not an int.c�&�eZdZdZe��ZdS)�3OldTestFlag.test_auto_number_garbage.<locals>.Colorz
not an intN�rFrGrHr+rr-rLr>r<r.r;
s������"���t�v�v���r>r.)r�rarr5s  r<�test_auto_number_garbagez$OldTestFlag.test_auto_number_garbage9
s���
�
#�
#�I�/P�
Q�
Q�	�	�
�
�
�
�
��
�
�
�	�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�	�	rcc��Gd�dt��}|�|j|j|jgt|����dS)Nc�N�eZdZe��xZZe��Ze��ZdS)�.OldTestFlag.test_duplicate_auto.<locals>.DupesN�rFrGrHrr�primerorrrLr>r<�Dupesr�@
�4������"�d�f�f�$�E�G��T�V�V�F��D�F�F�E�E�Er>r��rr�rrrr��r�r�s  r<�test_duplicate_autozOldTestFlag.test_duplicate_auto?
�]��	�	�	�	�	�D�	�	�	�	
���%�+�u�|�U�[�A�4��;�;�O�O�O�O�Or>c���Gd�d��}Gd�d���Gd�d|t��}|�|jjd��|�|jjd��|�|jjd	��|�|jjd
��|�t|j��d��G�fd�d|�t��}|�|jjd��|�|jjd��|�|jjd	��|�|jjd
��|�t|j��d
��G�fd�d�|t��}|�|jjd��|�|jjd��|�|jjd	��|�|jjd
��|�t|j��d
��dS)Nc�$�eZdZed���ZdS)�1OldTestFlag.test_multiple_mixin.<locals>.AllMixinc�n�t|��}d}|r|d}|dd�D]}||z}�||_|Sr��r��ALL�rH�members�	all_valuers    r<r�z5OldTestFlag.test_multiple_mixin.<locals>.AllMixin.ALLH
�S���s�)�)�� �	��,� '��
�I�")�!�"�"�+�,�,��!�V�+�	�	�#��� � r>N�rFrGrHr�r�rLr>r<�AllMixinr�G
�-������
�
!�
!��]�
!�
!�
!r>r�c��eZdZd�ZdS)�1OldTestFlag.test_multiple_mixin.<locals>.StrMixinc�4�|j���Sr�r=r�s r<rz9OldTestFlag.test_multiple_mixin.<locals>.StrMixin.__str__S
r?r>Nr@rLr>r<rAr�R
rBr>rAc�J�eZdZe��Ze��Ze��ZdS��.OldTestFlag.test_multiple_mixin.<locals>.ColorNrUrLr>r<r.r�U
rVr>r.rCr(rTr�rWc�Z��eZdZe��Ze��Ze��Z�jZdSr�rYrZs�r<r.z.OldTestFlag.test_multiple_mixin.<locals>.Color^
r[r>r-c�Z��eZdZe��Ze��Ze��Z�jZdSr�rYrZs�r<r.z.OldTestFlag.test_multiple_mixin.<locals>.Colorh
r[r>)rr�rnr?r
rr�r9�r�r�r.rAs   @r<rlzOldTestFlag.test_multiple_mixinF
s����
	!�
	!�
	!�
	!�
	!�
	!�
	!�
	!�	+�	+�	+�	+�	+�	+�	+�	+�	�	�	�	�	�H�d�	�	�	�	
������!�,�,�,������*�A�.�.�.������)�1�-�-�-�������!�,�,�,�����U�Z���,�7�7�7�	'�	'�	'�	'�	'�	'�	'�H�h��	'�	'�	'�
	
������!�,�,�,������*�A�.�.�.������)�1�-�-�-�������!�,�,�,�����U�Z���&�1�1�1�	'�	'�	'�	'�	'�	'�	'�H�h��	'�	'�	'�
	
������!�,�,�,������*�A�.�.�.������)�1�-�-�-�������!�,�,�,�����U�Z���&�1�1�1�1�1r>c�f�����Gd�dt���t���d����fd���fd�td��D��}tj|��5	ddd��n#1swxYwY|��d��|�dt���d	��dS)
Nc��eZdZe��Ze��Ze��Ze��Ze��Ze��Z	e��Z
e��Zd�Zd�Z
dS)�3OldTestFlag.test_unique_composite.<locals>.TestFlagc�
�||uSr�rLrns  r<rz:OldTestFlag.test_unique_composite.<locals>.TestFlag.__eq__�
����u�}�$r>c�*�t|j��Sr���hashr�r�s r<�__hash__z<OldTestFlag.test_unique_composite.<locals>.TestFlag.__hash__�
rr>N�rFrGrHrr�r�rJr�r�r�r�r�rr�rLr>r<�TestFlagr�w
��������$�&�&�C��$�&�&�C��D�F�F�E��4�6�6�D��4�6�6�D��$�&�&�C��D�F�F�E��D�F�F�E�
%�
%�
%�
*�
*�
*�
*�
*r>r�Fc���	td��D] }���|�����!dS#t$rd�YdSwxYw�N�T�ru�addr8�r>r�r]�seens ���r<�
cycle_enumz5OldTestFlag.test_unique_composite.<locals>.cycle_enum�
�j���
��s���*�*�A��H�H�X�X�a�[�[�)�)�)�)�*�*���
�
�
������
�����05�A�Ac�:��g|]}tj������S�)rx��	threading�Thread�rgr�r�s  �r<riz5OldTestFlag.test_unique_composite.<locals>.<listcomp>�
�7�������� �
�3�3�3���r>r��;at least one thread failed while creating composite membersr��"too many composite members created)rr�rur%�
start_threadsr�r�r��r��threadsr�r�r]r�s  @@@@r<�test_unique_compositez!OldTestFlag.test_unique_composites
sF������	*�	*�	*�	*�	*�t�	*�	*�	*��u�u����	�	�	�	�	�	�	������q��������
+�G�
4�
4�	�	��	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�	
����M�	O�	O�	O�	
����c�$�i�i�)M�N�N�N�N�N��A,�,A0�3A0c����G�fd�dt��}G�fd�d|���Gd�d���}Gd�d|��}���jd	d����|jd	d����|jd
d����|j�d	d������|j�d
d����Gd�d
|��}Gd�d|��}Gd�d|��}��|jd	d����|j�d	d������|jd
d
����|j�d	d������|j�d
d����dS)Nc�"���eZdZ��fd�Z�xZS)�.OldTestFlag.test_init_subclass.<locals>.MyEnumc���t��jdi|����|j�dd����d|_dS)N�_testFr�rL)rZ�__init_subclass__r��__dict__�get�_test1)rHr�r\r�s  ��r<r�z@OldTestFlag.test_init_subclass.<locals>.MyEnum.__init_subclass__�
sQ���)����)�1�1�D�1�1�1�� � ���!1�!1�'�5�!A�!A�B�B�B�%��
�
�
r>�rFrGrHr�r^)r\r�s@�r<r�r��
s>��������
&�
&�
&�
&�
&�
&�
&�
&�
&�
&r>r�c�"���eZdZ��fd�Z�xZS)�1OldTestFlag.test_init_subclass.<locals>.TheirEnumc�L��t�|��jdi|��d|_dS)N�	TheirEnumrL)rZr��_test2)rHr�r�r\s  ��r<r�zCOldTestFlag.test_init_subclass.<locals>.TheirEnum.__init_subclass__�
s1���7��i��%�%�7�?�?�$�?�?�?�(��
�
�
r>r�)r\r�s@�r<r�r��
s>��������
)�
)�
)�
)�
)�
)�
)�
)�
)�
)r>r�c��eZdZd�ZdS)�1OldTestFlag.test_init_subclass.<locals>.WhoseEnumc��dSr�rL�rHr�s  r<r�zCOldTestFlag.test_init_subclass.<locals>.WhoseEnum.__init_subclass__�
rJr>N�rFrGrHr�rLr>r<�	WhoseEnumr��
r�r>r�c��eZdZdZdS)�.OldTestFlag.test_init_subclass.<locals>.NoEnumrCN�rFrGrHr�rLr>r<�NoEnumr��
��������C�C�Cr>r�r�r�Fc��eZdZd�ZdS)�/OldTestFlag.test_init_subclass.<locals>.OurEnumc��d|_dS)N�OurEnum)r�r�s  r<r�zAOldTestFlag.test_init_subclass.<locals>.OurEnum.__init_subclass__�
s
��&��
�
�
r>Nr�rLr>r<r�r��
r}r>r�c��eZdZd�ZdS)�1OldTestFlag.test_init_subclass.<locals>.WhereEnumc��dSr�rLr�s  r<r�zCOldTestFlag.test_init_subclass.<locals>.WhereEnum.__init_subclass__�
rJr>Nr�rLr>r<�	WhereEnumr��
r�r>r�c��eZdZdZdS)�1OldTestFlag.test_init_subclass.<locals>.NeverEnumrCNr�rLr>r<�	NeverEnumr��
r�r>r�)rr�r�r�r�)r�r�r�r�r�r�r�r�s`      @r<�test_init_subclasszOldTestFlag.test_init_subclass�
s�����	&�	&�	&�	&�	&�	&�	&�T�	&�	&�	&�	)�	)�	)�	)�	)�	)�	)��	)�	)�	)�	�	�	�	�	�	�	�	�	�	�	�	�	�	�Y�	�	�	�����+�H�5�x�@�@�@�����+�H�5�x�@�@�@�����+�H�5�{�C�C�C������,�,�X�u�=�=�>�>�>������,�,�X�u�=�=�>�>�>�	'�	'�	'�	'�	'�f�	'�	'�	'�	�	�	�	�	��	�	�	�	�	�	�	�	�	�	�	�	�����)�(�3�X�>�>�>�����+�/�/��%�@�@�A�A�A�����+�H�5�y�A�A�A�����+�/�/��%�@�@�A�A�A�����+�/�/��%�@�@�A�A�A�A�Ar>N)'rFrGrHr�rr�r�r.r
rrrr>rBrJrMrPrSrUrXr0r1r2r�r�r`rcrhrprtr{r�r�rlr%�reap_threads�requires_working_threadingr�r�rLr>r<r�r��s��������������t���������t���� � � � � �� � � �
2�
2�
2�2�2�2�$2�2�2�5�5�5�;B�;B�;B�|B�B�B�
)�
)�
)�
)�
)�
)�
)�
)�
)�
)�
)�
)�
)�
)�
)�)Q�)Q�)Q�V�X�_��g�%�@�����	���$�X�_��W�$�D���#�#�	��#�"�"�"�(R�R�R�C�C�C�7�7�7�"+�+�+�	/�	/�	/����P�P�P�+2�+2�+2�Z�"�0��0�2�2�#O�#O�3�2�#�"�#O�J"B�"B�"B�"B�"Br>r�c���eZdZdZGd�de��ZGd�de��ZGd�de��ZGd�d	e��Zd
�Z	d�Z
d�Zd
�Zd�Z
d�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zejedkd��d���Zejedkd��d ���Zd!�Z d"�Z!d#�Z"d$�Z#d%�Z$d&�Z%e&j'e&j(��d'�����Z)d(S))�OldTestIntFlagzTests of the IntFlags.c��eZdZdZdZdZdS)�OldTestIntFlag.PermrTr(rCNr�rLr>r<r�r��
s�������������r>r�c�"�eZdZdZdZdZdZdZdS)�OldTestIntFlag.OpenrrCr(rDr�Nr�rLr>r<r�r��
r�r>r�c�L�eZdZdZdZdZdZdZeezZeezezZ	eezezZ
dS)�OldTestIntFlag.ColorrrCr(rTNrrLr>r<r.r��
rr>r.c��eZdZdZdZdZdS)�OldTestIntFlag.SkiprCr(r�N)rFrGrHrD�SECOND�EIGHTHrLr>r<�Skipr��
s�������������r>r�c��|j}|�|jtu��|j}|D]@}|�t||����|�||j���A|�t|j|j	z|����|�|j|j	zd��|D]@}|�t||����|�||j���A|�t|j
|jz|����|�|j
|jzd��dS�NrD)r�r�r8r�r�r�r�r?r�r|r�r�)r�r�r�r?s    r<�	test_typezOldTestIntFlag.test_type�
sB���y������*�c�1�2�2�2��y���	)�	)�A��O�O�J�q�$�/�/�0�0�0����Q���(�(�(�(����
�4�6�D�F�?�D�9�9�:�:�:������$�&��!�,�,�,��	)�	)�A��O�O�J�q�$�/�/�0�0�0����Q���(�(�(�(����
�4�7�T�W�#4�d�;�;�<�<�<������4�7�*�A�.�.�.�.�.r>c�^�|�ttd����dtz��|�ttd����ddtiz��|�ttd����ddtiz��dS)Nrz%s.OFF_KrZz%(m)s.LOW_BEAM_K|%(m)s.FOG_K|8rhr�z%(m)s.HeadlightsK(8))r�rpr��SHORT_MODULEr�s r<�test_global_repr_keepz$OldTestIntFlag.test_global_repr_keep�
s�������[��^�^�$�$��\�)�	�	�	�	
����[�!3�4�4�5�5�0�C��3F�F�	�	�	�	
����[��&�&�'�'�&�#�|�)<�<�	�	�	�	�	r>c�^�|�ttd����dtz��|�ttd����ddtiz��|�ttd����ddtiz��dS)Nrz%s.OFF_CrZz%(m)s.LOW_BEAM_C|%(m)s.FOG_Crhr�z%(m)s.OFF_C)r�rpr�r	r�s r<�test_global_repr_conform1z(OldTestIntFlag.test_global_repr_conform1�
s�������[��^�^�$�$��\�)�	�	�	�	
����[�!3�4�4�5�5�.�#�|�1D�D�	�	�	�	
����[��&�&�'�'���l� 3�3�	�	�	�	�	r>c��|�ttj��d��|�ttd����d��|�t	tjtjz��d��|�t	td����d��dS)Nz
test_enum.ONErztest_enum.NoName(0)z	NoName(0))r�rpr�r�r9r�r�s r<�test_global_enum_strz#OldTestIntFlag.test_global_enum_strs�������f�j�)�)�?�;�;�;�����f�Q�i�i���*?�@�@�@�����V�Z�&�*�4�5�5�{�C�C�C�����V�A�Y�Y����5�5�5�5�5r>c��|j}|�t|jd��d��|�t|j|jzd��d��Gd�dt
��}|�t|jd��d��|�t|j|jzd��d��dS)Nr"�4r]c� �eZdZdZdZdZd�ZdS)�+OldTestIntFlag.test_format.<locals>.NewPermrTr(rCc��|jSr�r�r�s r<rz3OldTestIntFlag.test_format.<locals>.NewPerm.__str__s
���{�"r>N)rFrGrHr�r�r|rrLr>r<�NewPermr		s2�������A��A��A�
#�
#�
#�
#�
#r>r	r�zR|X)r�r�r>r�r|r)r�r�r	s   r<r?zOldTestIntFlag.test_formats����y���������+�+�S�1�1�1�����������4�4�c�:�:�:�	#�	#�	#�	#�	#�g�	#�	#�	#�	
�����	�2�.�.��4�4�4������	�D�F� 2�B�7�7��?�?�?�?�?r>c���|j}|D�]k}|D]y}|�||z|j|jz��|�||zj|j|jz��|�t	||z��|���ztd��D]�}|�||z|j|z��|�||zj|j|z��|�t	||z��|��|�||z||jz��|�||zj||jz��|�t	||z��|���ݐ�m|D]M}|�||z|��|�|dz|��|�d|z|���N|j}|�|j|jz|j��dS�Nr�r�	r�r�r?rrr�rur�r�r�rs     r<r
zOldTestIntFlag.test_ors����y���	1�	1�A��
1�
1��� � ��Q����!�'�(9�:�:�:�� � �!�a�%����!�'�0A�B�B�B��
�
�d�1�q�5�k�k�4�0�0�0�0��1�X�X�
1�
1��� � ��Q����!��4�4�4�� � �!�a�%����!��<�<�<��
�
�d�1�q�5�k�k�4�0�0�0�� � ��Q���A�G��4�4�4�� � �!�a�%���A�G��<�<�<��
�
�d�1�q�5�k�k�4�0�0�0�0�

1��	$�	$�A��M�M�!�a�%��#�#�#��M�M�!�a�%��#�#�#��M�M�!�a�%��#�#�#�#��y���
�
�d�g���'���1�1�1�1�1r>c
���|j}|j|jz}|j|jz}|j|jz}|j|jz|jz}t	|��|||||d��gz}|D�]�}|D]�}|�||z|j|jzd|�d|����|�||zj|j|jzd|�d|����|�t||z��|d|�d|������td��D]�}|�||z|j|z��|�||zj|j|z��|�t||z��|��|�||z||jz��|�||zj||jz��|�t||z��|���ݐ��|D]M}|�||z|��|�|dz|��|�d|z|���N|j
}	|�|	j|	jz|	j��dS)Nrzi is z, j is r�r�)
r�r�r�r|r�r�r?rrr�rur�r�r�rs
          r<rzOldTestIntFlag.test_and1s����y��
�V�d�f�_��
�V�d�f�_��
�V�d�f�_���f�t�v�o���&���d���r�2�r�3���Q���8�8���	1�	1�A��
N�
N��� � ��Q����!�'�(9�(9�QR�QR�QR�TU�TU�;V�W�W�W�� � �!�a�%����!�'�0A�0A�YZ�YZ�YZ�\]�\]�C^�_�_�_��
�
�d�1�q�5�k�k�4�4�q�q�q�!�!�1L�M�M�M�M��1�X�X�
1�
1��� � ��Q����!��4�4�4�� � �!�a�%����!��<�<�<��
�
�d�1�q�5�k�k�4�0�0�0�� � ��Q���A�G��4�4�4�� � �!�a�%���A�G��<�<�<��
�
�d�1�q�5�k�k�4�0�0�0�0�

1��	$�	$�A��M�M�!�a�%��#�#�#��M�M�!�a�%��#�#�#��M�M�!�a�%��#�#�#�#��y���
�
�d�g���'���1�1�1�1�1r>c��|j}|D�]k}|D]y}|�||z|j|jz��|�||zj|j|jz��|�t	||z��|���ztd��D]�}|�||z|j|z��|�||zj|j|z��|�t	||z��|��|�||z||jz��|�||zj||jz��|�t	||z��|���ݐ�m|D]4}|�|dz|��|�d|z|���5|j}|�|j|jz|j��|�|j|jz|j��dSr
	r	rs     r<rzOldTestIntFlag.test_xorKs����y���	1�	1�A��
1�
1��� � ��Q����!�'�(9�:�:�:�� � �!�a�%����!�'�0A�B�B�B��
�
�d�1�q�5�k�k�4�0�0�0�0��1�X�X�
1�
1��� � ��Q����!��4�4�4�� � �!�a�%����!��<�<�<��
�
�d�1�q�5�k�k�4�0�0�0�� � ��Q���A�G��4�4�4�� � �!�a�%���A�G��<�<�<��
�
�d�1�q�5�k�k�4�0�0�0�0�

1��	$�	$�A��M�M�!�a�%��#�#�#��M�M�!�a�%��#�#�#�#��y���
�
�d�g���'���1�1�1��
�
�d�g���'���1�1�1�1�1r>c��|j}|j|jz}|j|jz}|j|jz}|j|jz|jz}t	|��|||||d��gz}|D][}|�||j��|�t|��|��|�||���\|D]}|�||���|j	}|�|j
|j
z|j��|�|j
|jz|j
z|j��dSr)
r�r�r�r|r�r�r?rrr�r�r�r�r�)	r�r�r�rrrr7r>r�s	         r<�test_invertzOldTestIntFlag.test_invert`sJ���y��
�V�d�f�_��
�V�d�f�_��
�V�d�f�_���f�t�v�o���&���d���r�2�r�3���Q���8�8���	%�	%�A����a�R�1�"��,�,�,��M�M�$��r�(�(�D�)�)�)����q�b�S�!�$�$�$�$��	"�	"�A��M�M�A�2�#�q�!�!�!�!��y���
�
�d�g����(�$�'�2�2�2��
�
�t�w�t�w��4�7�(�2�D�G�<�<�<�<�<r>c�~�|�tjjt��Gd�dtt���}Gd�dtt
���}|�|jt
��Gd�dtt���}|�|jt��Gd�d	tt���}|�|jt��Gd
�dtt���}|�td|d
��|�|d��|j
|jz��|�|d��|j��|�|d��d��|�
t|d����tu��|�t!|��|jg��|�|d��|j��|�|d��|j��|j|jz}|�|d��|�||��|�t-|��d��|�t/|��d��dS)Nc��eZdZdZdS)�,OldTestIntFlag.test_boundary.<locals>.SimplerCN)rFrGrH�SINGLErLr>r<�Simpler	srlr>r	r�c��eZdZdZdZdZdS)�*OldTestIntFlag.test_boundary.<locals>.IronrCr(r�NrrLr>r<r r	vrLr>r c��eZdZdZdZdZdS)�+OldTestIntFlag.test_boundary.<locals>.WaterrCr(r�NrrLr>r<r#r	|rLr>r#c��eZdZdZdZdZdS)�+OldTestIntFlag.test_boundary.<locals>.SpacerCr(r�NrrLr>r<r&r	�rLr>r&c��eZdZdZdZdZdS)�-OldTestIntFlag.test_boundary.<locals>.BizarrerDrTr�Nr)rLr>r<r+r	�r,r>r+zinvalid value 5r2r�r-rDr�z <Simple.SINGLE|<Iron.TWO: 2>: 3>r1)rrr/rr�rrrrr�r�r�r�r�r�r�r�r�r�rIr*r	r@rpr9)r�r	r r#r&r+�simples       r<r>zOldTestIntFlag.test_boundaryqs����
�
�d�l�-�t�4�4�4�	�	�	�	�	�W�t�	�	�	�	�	�	�	�	�	�7�V�	�	�	�	�	
�
�
�d�o�v�.�.�.�	�	�	�	�	�G�g�	�	�	�	�	
�
�
�e�&��0�0�0�	�	�	�	�	�G�e�	�	�	�	�	
�
�
�e�&��.�.�.�	�	�	�	�	�g��	�	�	�	�
	
���z�+<�d�A�F�F�F��
�
�e�e�A�h�h��	�%�)� 3�4�4�4��
�
�e�e�B�i�i���+�+�+������q���1�%�%�%�����U�U�1�X�X���#�-�.�.�.�����g������4�4�4��
�
�g�g�a�j�j�'�)�,�,�,��
�
�g�g�a�j�j�'�)�,�,�,�����)�������#�#�#����f�f�-�-�-�����f���'I�J�J�J�����V���c�*�*�*�*�*r>c��|j}|j}|�t|��|j|j|jg��|�t|��|j|j|j	g��dSr�r@rAs   r<rBzOldTestIntFlag.test_iter�rCr>c��tdd��}t|��}|�t|��t|����|�t|��d|��|�||j|j|jg��td�����D]�\}}d|z}||��}|�|j	|��|�t|j	��t��|�||��|�|j|��|�
||��|�t|��|����dSrE�rr�r�r�r�r�r|r�r�r?r�r�r�r�rrrHs       r<rJz/OldTestIntFlag.test_programatic_function_string�sW���v�w�'�'���4�j�j������S���3�t�9�9�-�-�-�����T���A�t�,�,�,�����t�v�t�v�t�v�6�7�7�7��g�m�m�o�o�.�.�	)�	)�D�A�q��1��A���Q���A����Q�W�a�(�(�(����T�!�'�]�]�C�0�0�0����Q��"�"�"����Q�V�Q�'�'�'��M�M�!�T�"�"�"��M�M�$�q�'�'�4�(�(�(�(�	)�	)r>c��tddd���}t|��}|�t|��t|����|�t|��d|��|�||j|j|jg��td�����D]�\}}d|z}||��}|�|j	|��|�t|j	��t��|�||��|�|j|��|�
||��|�t|��|����dSrLr#	rHs       r<rMz:OldTestIntFlag.test_programatic_function_string_with_start�s\���v�w�a�0�0�0���4�j�j������S���3�t�9�9�-�-�-�����T���A�t�,�,�,�����t�v�t�v�t�v�6�7�7�7��g�m�m�o�o�.�.�	)�	)�D�A�q��1��A���Q���A����Q�W�a�(�(�(����T�!�'�]�]�C�0�0�0����Q��"�"�"����Q�V�Q�'�'�'��M�M�!�T�"�"�"��M�M�$�q�'�'�4�(�(�(�(�	)�	)r>c��tdgd���}t|��}|�t|��t|����|�t|��d|��|�||j|j|jg��td�����D]�\}}d|z}||��}|�|j	|��|�t|j	��t��|�||��|�|j|��|�
||��|�t|��|����dSrOr#	rHs       r<rPz4OldTestIntFlag.test_programatic_function_string_list�s[���v����/�/���4�j�j������S���3�t�9�9�-�-�-�����T���A�t�,�,�,�����t�v�t�v�t�v�6�7�7�7��g�m�m�o�o�.�.�	)�	)�D�A�q��1��A���Q���A����Q�W�a�(�(�(����T�!�'�]�]�C�0�0�0����Q��"�"�"����Q�V�Q�'�'�'��M�M�!�T�"�"�"��M�M�$�q�'�'�4�(�(�(�(�	)�	)r>c��tdd��}t|��}|�t|��t|����|�t|��d|��|�||j|j|jg��td�����D]�\}}dd|zdzz}||��}|�|j	|��|�t|j	��t��|�||��|�|j|��|�
||��|�t|��|����dSrRr#	rHs       r<rSz1OldTestIntFlag.test_programatic_function_iterable�s`���v�>�?�?���4�j�j������S���3�t�9�9�-�-�-�����T���A�t�,�,�,�����t�v�t�v�t�v�6�7�7�7��g�m�m�o�o�.�.�	)�	)�D�A�q��A�a�C��E�
�A���Q���A����Q�W�a�(�(�(����T�!�'�]�]�C�0�0�0����Q��"�"�"����Q�V�Q�'�'�'��M�M�!�T�"�"�"��M�M�$�q�'�'�4�(�(�(�(�	)�	)r>c�4�tdtd����}t|��}|�t	|��t	|����|�t	|��d|��|�||j|j|jg��td�	����D]�\}}dd|zdzz}||��}|�|j
|��|�t|j
��t��|�||��|�|j
|��|�||��|�t|��|����dSrR)rrr�r�r�r�r�r|r�r�r?r�r�r�r�rrrHs       r<rUz2OldTestIntFlag.test_programatic_function_from_dict�sh���v�{�+J�K�K�L�L���4�j�j������S���3�t�9�9�-�-�-�����T���A�t�,�,�,�����t�v�t�v�t�v�6�7�7�7��g�m�m�o�o�.�.�	)�	)�D�A�q��A�a�C��E�
�A���Q���A����Q�W�a�(�(�(����T�!�'�]�]�C�0�0�0����Q��"�"�"����Q�V�Q�'�'�'��M�M�!�T�"�"�"��M�M�$�q�'�'�4�(�(�(�(�	)�	)r>c���tjdg��}t|��}|�t	|��t	|����|�t	|��d|��tjdg��}t|��}|�t	|��t	|����|�t	|��d|��dS)Nr�r�Thing�r/rr�r�r�r�r�r�r�r)	s    r<�)test_programatic_function_from_empty_listz8OldTestIntFlag.test_programatic_function_from_empty_list�s����|�F�B�'�'���4�j�j������S���3�t�9�9�-�-�-�����T���A�t�,�,�,��	�'�2�&�&���5�k�k������S���3�u�:�:�.�.�.�����U���Q��.�.�.�.�.r>c���tjdd��}t|��}|�t	|��t	|����|�t	|��d|��tjdd��}|�t	|��t	|����|�t	|��d|��dS)Nr�rLrr)	r*	r+	s    r<�*test_programatic_function_from_empty_tuplez9OldTestIntFlag.test_programatic_function_from_empty_tuples����|�F�B�'�'���4�j�j������S���3�t�9�9�-�-�-�����T���A�t�,�,�,��	�'�2�&�&������S���3�u�:�:�.�.�.�����U���Q��.�.�.�.�.r>r|r~c�D�|j}|j}|�|j|v��|�|j|v��|�|j|v��|�|j|v��|�t��5|�t��5d|vddd��n#1swxYwYddd��n#1swxYwY|�t��5|�t��5d|vddd��n#1swxYwYddd��n#1swxYwY|�t��5|�t��5d|vddd��n#1swxYwYddd��n#1swxYwY|�t��5|�t��5d|vddd��n#1swxYwYddd��dS#1swxYwYdS�Nr
r�r()
r�r.r�r
r�r�rPrar�r�r[s   r<r�zOldTestIntFlag.test_contains_er
s��
�y���
�������u�,�-�-�-������4��(�(�(�������,�-�-�-������E�)�*�*�*�
�
�
�y�
)�
)�	!�	!��!�!�"4�5�5�
!�
!��5� � �
!�
!�
!�
!�
!�
!�
!�
!�
!�
!�
!����
!�
!�
!�
!�	!�	!�	!�	!�	!�	!�	!�	!�	!�	!�	!����	!�	!�	!�	!��
�
�y�
)�
)�	�	��!�!�"4�5�5�
�
�����
�
�
�
�
�
�
�
�
�
�
����
�
�
�
�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	��
�
�y�
)�
)�	�	��!�!�"4�5�5�
�
��U�
�
�
�
�
�
�
�
�
�
�
�
�
����
�
�
�
�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	��
�
�y�
)�
)�	�	��!�!�"4�5�5�
�
��T�	�	�
�
�
�
�
�
�
�
�
�
�
����
�
�
�
�	�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�	�	s��C�4C�9C�C		�	C�C		�
C�C �#C �E�D-�!E�-D1	�1E�4D1	�5E�E�E�)F,�F�	F,�F	�F,�F	�F,�,F0�3F0�H�,G=�1H�=H	�H�H	�H�H�Hr\c��|j}|j}|�|j|v��|�|j|v��|�|j|v��|�|j|v��|�d|v��|�d|v��|�d|v��|�d|v��dSr0	)r�r.r�r
r�r�r[s   r<r�zOldTestIntFlag.test_contains_tf"s���
�y���
�������u�,�-�-�-������4��(�(�(������t�+�,�,�,������5�(�)�)�)�����E�)�*�*�*�������&�&�&�����U�
�#�#�#�����T�	�"�"�"�"�"r>c�
�|j}|\}}}||z}||z}||z}||z|z}|�||v��|�||v��|�||v��|�||v��|�||v��|�||v��|�||v��|�||v��|�||v��|�||v��|�||v��|�||v��|�t��5|�d|v��ddd��dS#1swxYwYdS)Nr�)r�r�r�rPrar_s	         r<r`z#OldTestIntFlag.test_member_contains2s����y�����1�a�
��U��
��U��
��U���!�e�a�i������R�� � � �����R�� � � �����S��!�!�!�����R�� � � �����R�� � � �����S��!�!�!�����R�� � � �����R�� � � �����S��!�!�!�����b��!�!�!�����b��!�!�!�����b��!�!�!�
�
�
�y�
)�
)�	+�	+����V�r�\�*�*�*�	+�	+�	+�	+�	+�	+�	+�	+�	+�	+�	+�	+����	+�	+�	+�	+�	+�	+s�E8�8E<�?E<c��|j}|�t|j��g��|�t|j��|j|jg��|�t|j��|jg��|�t|j��|jg��|�t|j��|j|j|jg��dSr�rbr5s  r<rczOldTestIntFlag.test_member_iterHs����
������e�k�*�*�B�/�/�/�����e�l�+�+�e�i���-D�E�E�E�����e�j�)�)�E�J�<�8�8�8�����e�k�*�*�U�[�M�:�:�:�����e�k�*�*�U�Y���U�Z�,P�Q�Q�Q�Q�Qr>c���|�|j�|jj��d��|�|j�|jj��d��|�|j�|jj��d��|�|j�|jj��d��dSrerfr�s r<rhz!OldTestIntFlag.test_member_lengthPrir>c��|j}|�|d��jd��|�|djd��|�|d��jd��|�|djd��|�|j|j��|j}|�|d|j��dSrrrsrAs   r<rtzOldTestIntFlag.test_aliasesVrur>c���|j}|D]}|�|���|j}|D]7}|�t	|j��t	|�����8dSr�rrs    r<rzOldTestIntFlag.test_bool`rr>c���Gd�d��}Gd�d���Gd�d|t��}|�|jjd��|�|jjd��|�|jjd	��|�|jjd
��|�t|j��d��G�fd�d|�t��}|�|jjd��|�|jjd��|�|jjd	��|�|jjd
��|�t|j��d
��G�fd�d�|t��}|�|jjd��|�|jjd��|�|jjd	��|�|jjd
��|�t|j��d
��dS)Nc�$�eZdZed���ZdS)�4OldTestIntFlag.test_multiple_mixin.<locals>.AllMixinc�n�t|��}d}|r|d}|dd�D]}||z}�||_|Sr�r�r�s    r<r�z8OldTestIntFlag.test_multiple_mixin.<locals>.AllMixin.ALLkr�r>Nr�rLr>r<r�r9	jr�r>r�c��eZdZd�ZdS)�4OldTestIntFlag.test_multiple_mixin.<locals>.StrMixinc�4�|j���Sr�r=r�s r<rz<OldTestIntFlag.test_multiple_mixin.<locals>.StrMixin.__str__vr?r>Nr@rLr>r<rAr<	urBr>rAc�J�eZdZe��Ze��Ze��ZdS��1OldTestIntFlag.test_multiple_mixin.<locals>.ColorNrUrLr>r<r.r@	xrVr>r.rCr(rTr�r	c�Z��eZdZe��Ze��Ze��Z�jZdSr?	rYrZs�r<r.z1OldTestIntFlag.test_multiple_mixin.<locals>.Color�r[r>r-c�Z��eZdZe��Ze��Ze��Z�jZdSr?	rYrZs�r<r.z1OldTestIntFlag.test_multiple_mixin.<locals>.Color�r[r>)rr�rnr?r
rr�r9r�s   @r<rlz"OldTestIntFlag.test_multiple_mixinis����
	!�
	!�
	!�
	!�
	!�
	!�
	!�
	!�	+�	+�	+�	+�	+�	+�	+�	+�	�	�	�	�	�H�g�	�	�	�	
������!�,�,�,������*�A�.�.�.������)�1�-�-�-�������!�,�,�,�����U�Z���#�.�.�.�	'�	'�	'�	'�	'�	'�	'�H�h��	'�	'�	'�
	
������!�,�,�,������*�A�.�.�.������)�1�-�-�-�������!�,�,�,�����U�Z���&�1�1�1�	'�	'�	'�	'�	'�	'�	'�H�h��	'�	'�	'�
	
������!�,�,�,������*�A�.�.�.������)�1�-�-�-�������!�,�,�,�����U�Z���&�1�1�1�1�1r>c�f�����Gd�dt���t���d����fd���fd�td��D��}tj|��5	ddd��n#1swxYwY|��d��|�dt���d	��dS)
Nc��eZdZe��Ze��Ze��Ze��Ze��Ze��Z	e��Z
e��Zd�Zd�Z
dS)�6OldTestIntFlag.test_unique_composite.<locals>.TestFlagc�
�||uSr�rLrns  r<rz=OldTestIntFlag.test_unique_composite.<locals>.TestFlag.__eq__�r�r>c�*�t|j��Sr�r�r�s r<r�z?OldTestIntFlag.test_unique_composite.<locals>.TestFlag.__hash__�rr>Nr�rLr>r<r�rE	�r�r>r�Fc���	td��D] }���|�����!dS#t$rd�YdSwxYwr�r�r�s ���r<r�z8OldTestIntFlag.test_unique_composite.<locals>.cycle_enum�r�r�c�:��g|]}tj������Sr�r�r�s  �r<riz8OldTestIntFlag.test_unique_composite.<locals>.<listcomp>�r�r>r�r�r�r�)rr�rur%r�r�r�r�r�s  @@@@r<r�z$OldTestIntFlag.test_unique_composite�sF������	*�	*�	*�	*�	*�w�	*�	*�	*��u�u����	�	�	�	�	�	�	������q��������
+�G�
4�
4�	�	��	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�	
����M�	O�	O�	O�	
����c�$�i�i�)M�N�N�N�N�Nr�N)*rFrGrHr�rr�r�r.r�r�r	r	r	r?r
rrr	r>rBrJrMrPrSrUr,	r.	r0r1r2r�r�r`rcrhrtrrlr%r�r�r�rLr>r<r�r��
s������� � ������w����
�����w���� � � � � �� � � ������w����

/�
/�
/�������6�6�6�@�@�@�2�2�2�*2�2�2�42�2�2�*=�=�=�",+�,+�,+�\B�B�B�)�)�)� )�)�)� )�)�)� )�)�)� )�)�)�"/�/�/�/�/�/��X�_��g�%�@�����	���(�X�_��W�$�D���
#�
#�	��
#�+�+�+�,R�R�R�C�C�C�+�+�+�5�5�5�+2�+2�+2�Z�"�0��0�2�2�#O�#O�3�2�#�"�#O�#O�#Or>r�c� �eZdZd�Zd�Zd�ZdS)�TestEmptyAndNonLatinStringsc��|�t��5tdd��}ddd��dS#1swxYwYdS)N�	empty_abc)r"rvr�)rPr�r)r�rM	s  r<�test_empty_stringz-TestEmptyAndNonLatinStrings.test_empty_string�s���
�
�
�z�
*�
*�	:�	:��[�.�9�9�I�	:�	:�	:�	:�	:�	:�	:�	:�	:�	:�	:�	:����	:�	:�	:�	:�	:�	:s
�9�=�=c�|�tdd��}t|d��}|�|jd��dS)N�	greek_abc)�αrvr�rQ	rC�rr;r�r?)r�rP	r�s   r<�test_non_latin_character_stringz;TestEmptyAndNonLatinStrings.test_non_latin_character_string�s?����&:�;�;�	��y�(�+�+�������Q�'�'�'�'�'r>c�|�tdd��}t|d��}|�|jd��dS)N�
hebrew_123)�אr0r1rV	rCrR	)r�rU	r�s   r<�test_non_latin_number_stringz8TestEmptyAndNonLatinStrings.test_non_latin_number_string�s?���,�(<�=�=�
��z�8�,�,�������Q�'�'�'�'�'r>N)rFrGrHrN	rS	rW	rLr>r<rK	rK	�sA������:�:�:�(�(�(�
(�(�(�(�(r>rK	c� �eZdZd�Zd�Zd�ZdS)�
TestUniquec��tGd�dt����}tGd�dt����}dS)Nc��eZdZdZdZdZdS)�+TestUnique.test_unique_clean.<locals>.CleanrCrP�@N�rFrGrHr�r�rQrLr>r<�Cleanr\	���������C��C��D�D�Dr>r_	c��eZdZdZdZdZdS)�-TestUnique.test_unique_clean.<locals>.CleanerrCr(rDN�rFrGrH�single�double�triplerLr>r<�Cleanerrb	���������F��F��F�F�Fr>rg	)r
rr�r�r_	rg	s   r<�test_unique_cleanzTestUnique.test_unique_clean�sv��	�	�	�	�	�	�D�	�	�
��	�

�	�	�	�	�	�g�	�	�
��	�	�	r>c�T�|�td��5tGd�dt����}ddd��n#1swxYwY|�td��5tGd�dt����}ddd��dS#1swxYwYdS)N�	tres.*onec��eZdZdZdZdZdS)�+TestUnique.test_unique_dirty.<locals>.DirtyrCrPNr^	rLr>r<�Dirtyrn	���������������r>ro	�double.*single.*turkey.*triplec��eZdZdZdZdZdZdS)�-TestUnique.test_unique_dirty.<locals>.DirtierrCrDN�rFrGrHrd	re	rf	�turkeyrLr>r<�Dirtierrs	��"���������������r>rv	)r�r�r
rr�r�ro	rv	s   r<�test_unique_dirtyzTestUnique.test_unique_dirty�sY��
�
#�
#�J��
<�
<�	�	�
�
�
�
�
�
��
�
��V�
�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	��
#�
#��0���		�		��
�
�
�
�
�'�
�
��V�
�		�		�		�		�		�		�		�		�		�		�		�		����		�		�		�		�		�		s#�!A	�	A
�A
�/!B�B!�$B!c��tt��Gd�dt����}tt��Gd�dt����}dS)Nc��eZdZdZdZdZdS)�/TestUnique.test_unique_with_name.<locals>.SillyrCrPrDN�rFrGrHr�r�r�rLr>r<�Sillyr|	���������C��C��D�D�Dr>r~	c��eZdZdZdZdZdZdS)�1TestUnique.test_unique_with_name.<locals>.SillierrCr(rDrTN�rFrGrHrd	r�rf	r?rLr>r<�Sillierr�	��"�������F��D��F��E�E�Er>r�	�rrrr�r�r~	r�	s   r<�test_unique_with_namez TestUnique.test_unique_with_name����	����	�	�	�	�	�D�	�	�
��	�

����	�	�	�	�	�g�	�	�
��	�	�	r>N)rFrGrHrj	ry	r�	rLr>r<rY	rY	�sA������������$����r>rY	c�2�eZdZd�Zd�Zd�Zd�Zd�Zd�ZdS)�
TestVerifyc��tt��Gd�dt����}tt��Gd�dt����}|�td��5tt��Gd�dt����}ddd��n#1swxYwY|�td��5tt��Gd	�d
t
����}ddd��n#1swxYwY|�td��5tt��Gd�d
t
����}ddd��dS#1swxYwYdS)Nc�^�eZdZe��Ze��Ze��Ze��ZdS)�(TestVerify.test_continuous.<locals>.AutoN)rFrGrHrrDr��THIRD�FORTHrLr>r<�Autor�	s:�������D�F�F�E��T�V�V�F��D�F�F�E��D�F�F�E�E�Er>r�	c��eZdZdZdZdZdZdS)�*TestVerify.test_continuous.<locals>.ManualrDrTr2r�N�rFrGrHrDr�r�	r�	rLr>r<�Manualr�	s"�������E��F��E��E�E�Er>r�	z<invalid enum .Missing.: missing values 5, 6, 7, 8, 9, 10, 12c��eZdZdZdZdZdZdS)�+TestVerify.test_continuous.<locals>.MissingrDrTr�rZNr�	rLr>r<�Missingr�	�"���������������r>r�	z,invalid flag .Incomplete.: missing values 32c��eZdZdZdZdZdZdS)�.TestVerify.test_continuous.<locals>.IncompleterTr�r8�@Nr�	rLr>r<�
Incompleter�	r�	r>r�	z1invalid flag .StillIncomplete.: missing values 16c��eZdZdZdZdZdZdS)�3TestVerify.test_continuous.<locals>.StillIncompleterTr�r�r�Nr�	rLr>r<�StillIncompleter�	 r�	r>r�	)rrrr�r�r)r�r�	r�	r�	r�	r�	s      r<�test_continuouszTestVerify.test_continuouss���	�
�	�	�	�	�	�	�	�4�	�	�
�	�	�
�
�	�	�	�	�	�	�	�T�	�	�
�	�	��
#�
#�J�0n�
o�
o�	�	�
�J�
�
�
�
�
�
�
�$�
�
� �
�
�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	��
#�
#�J�0^�
_�
_�	�	�
�J�
�
�
�
�
�
�
�T�
�
� �
�
�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	��
#�
#�J�0c�
d�
d�	�	�
�J�
�
�
�
�
�
�
�$�
�
� �
�
�	�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�	�	s6�6.B0�0B4�7B4�.D�D�D�6.E1�1E5�8E5c��Gd�dt��}|�t|��|jg��|�|jjd��|�|jjd��|�|jjd��|�td��5tt��Gd�dt����}ddd��n#1swxYwY|�tjd��dd	g��Gd
�dt��}|�t|��|jg��|�|jjd��|�|jjd��|�|jjd��|�td��5tt��Gd�dt����}ddd��n#1swxYwY|�tjd	��d	g��dS)
Nc��eZdZdZdZdZdS��*TestVerify.test_composite.<locals>.BizarrerDrTr�Nr)rLr>r<r+r�	)r,r>r+rDrTr�zyinvalid Flag 'Bizarre': aliases b and d are missing combined values of 0x3 .use enum.show_flag_values.value. for details.c��eZdZdZdZdZdSr�	r)rLr>r<r+z*TestVerify.test_composite.<locals>.Bizarre5s�������������r>rCr(c��eZdZdZdZdZdSr�	r)rLr>r<r+z*TestVerify.test_composite.<locals>.Bizarre<r,r>zcinvalid Flag 'Bizarre': alias d is missing value 0x2 .use enum.show_flag_values.value. for details.c��eZdZdZdZdS)r�	rTr�N)rFrGrHr�r*rLr>r<r+z*TestVerify.test_composite.<locals>.BizarreHs�����������r>)rr�r�r�rIr?r*r�r�rrr/�show_flag_valuesr)r�r+s  r<�test_compositezTestVerify.test_composite(s���	�	�	�	�	�d�	�	�	�	
����g������4�4�4�������!�,�,�,�������!�,�,�,�������!�,�,�,�
�
#�
#��L���	�	��K�
 �
 �
�
�
�
�
�$�
�
�!�
 �
�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�	
����.�q�1�1�A�q�6�:�:�:�	�	�	�	�	�g�	�	�	�	
����g������4�4�4�������!�,�,�,�������!�,�,�,�������!�,�,�,�
�
#�
#��u���	�	��K�
 �
 �
�
�
�
�
�'�
�
�!�
 �
�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�	
����.�q�1�1�A�3�7�7�7�7�7s$�8.C2�2C6�9C6�.H�H�Hc��tt��Gd�dt����}tt��Gd�dt����}dS)Nc��eZdZdZdZdZdS)�+TestVerify.test_unique_clean.<locals>.CleanrCrPr]	Nr^	rLr>r<r_	r�	Or`	r>r_	c��eZdZdZdZdZdS)�-TestVerify.test_unique_clean.<locals>.CleanerrCr(rDNrc	rLr>r<rg	r�	Urh	r>rg	r�	ri	s   r<rj	zTestVerify.test_unique_cleanNs���	����	�	�	�	�	�D�	�	�
��	�

����	�	�	�	�	�g�	�	�
��	�	�	r>c��|�td��5tt��Gd�dt����}ddd��n#1swxYwY|�td��5tt��Gd�dt
����}ddd��dS#1swxYwYdS)Nrl	c��eZdZdZdZdZdS)�+TestVerify.test_unique_dirty.<locals>.DirtyrCrPNr^	rLr>r<ro	r�	]rp	r>ro	rq	c��eZdZdZdZdZdZdS)�-TestVerify.test_unique_dirty.<locals>.DirtierrCrDNrt	rLr>r<rv	r�	frw	r>rv	)r�r�rrrrrx	s   r<ry	zTestVerify.test_unique_dirty[se��
�
#�
#�J��
<�
<�	�	�
�F�^�^�
�
�
�
�
��
�
��^�
�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	��
#�
#��0���		�		��F�^�^�
�
�
�
�
�'�
�
��^�
�		�		�		�		�		�		�		�		�		�		�		�		����		�		�		�		�		�		s#�.A�A�A�<.B7�7B;�>B;c��tt��Gd�dt����}tt��Gd�dt����}dS)Nc��eZdZdZdZdZdS)�/TestVerify.test_unique_with_name.<locals>.SillyrCrPrDNr}	rLr>r<r~	r�	nr	r>r~	c��eZdZdZdZdZdZdS)�1TestVerify.test_unique_with_name.<locals>.SillierrCr(rDrTNr�	rLr>r<r�	r�	tr�	r>r�	r�	r�	s   r<r�	z TestVerify.test_unique_with_namemr�	r>c�`�tt��Gd�dt����}dS)Nc��eZdZdZdZdZdZdS)�-TestVerify.test_negative_alias.<locals>.ColorrCr(rTr@N)rFrGrHrnr
rrrLr>r<r.r�	|s"�������C��E��D��E�E�Er>r.)rrrr5s  r<�test_negative_aliaszTestVerify.test_negative_alias{sI��	��	�	�	�	�	�	�	�D�	�	�
�	�	�	�	r>N)	rFrGrHr�	r�	rj	ry	r�	r�	rLr>r<r�	r�	�sp������%�%�%�P$8�$8�$8�L������$�������r>r�	c��eZdZdZdZdZdZdZd�Zd�Z	d�Z
d	�Zd
�Zd�Z
ejedkd
��d���Zejedkd
��d���Zejedkd��d���Zejedkd��d���Zd�Zd�Zejedkd��d���Zd�Zd�ZdS)�
TestInternalsr�r�r�r�r�c�
�|j|jzD]-}|�tj|��d|z���.|j|jz|jzD]-}|�tj|��d|z���.dS)Nr�r�r�r�s  r<r�zTestInternals.test_sunder�s����%��(E�E�	V�	V�D��O�O�D�O�D�1�1�3M�PT�3T�U�U�U�U��%��(:�:�T�=N�N�	S�	S�D����T�_�T�2�2�4J�T�4Q�R�R�R�R�	S�	Sr>c�
�|jD]-}|�tj|��d|z���.|j|jz|jz|jzD]-}|�tj|��d|z���.dS)Nr�r�r�r�s  r<r�zTestInternals.test_dunder�s����%�	V�	V�D��O�O�D�O�D�1�1�3M�PT�3T�U�U�U�U��%��(:�:�T�=Z�Z�]a�]n�n�	S�	S�D����T�_�T�2�2�4J�T�4Q�R�R�R�R�	S�	Sr>c��|j|jzD]+}|�tjd|��d���,|j|jz|jzD]+}|�tjd|��d���,dSr�r�r�s  r<r�zTestInternals.test_is_private�r�r>c�V�Gd�dt��}|�t|��|j|j|jg��|�|jjd��|�|jjd��|�|jjd��dS)Nc�J�eZdZe��Ze��Ze��ZdS)�-TestInternals.test_auto_number.<locals>.ColorNryrLr>r<r.r�	�rzr>r.rCr(rD�rr�r�r+r-r,r?r5s  r<r{zTestInternals.test_auto_number�r|r>c�V�Gd�dt��}|�t|��|j|j|jg��|�|jjd��|�|jjd��|�|jjd��dS)Nc�P�eZdZd�Ze��Ze��Ze��ZdS)�+TestInternals.test_auto_name.<locals>.Colorc��|Sr�rL�r�r�r��lasts    r<r�zATestInternals.test_auto_name.<locals>.Color._generate_next_value_�����r>N)rFrGrHr�rr+r-r,rLr>r<r.r�	�s>������
�
�
��$�&�&�C��4�6�6�D��D�F�F�E�E�Er>r.r+r-r,r�	r5s  r<�test_auto_namezTestInternals.test_auto_name�s���	�	�	�	�	�D�	�	�	�	
����e���u�y�%�*�e�k�&J�K�K�K�������%�0�0�0������)�6�2�2�2������*�G�4�4�4�4�4r>c�r�Gd�dt��}Gd�d|��}|�t|��|j|j|jg��|�|jjd��|�|jjd��|�|jjd��dS)Nc��eZdZd�ZdS)�:TestInternals.test_auto_name_inherit.<locals>.AutoNameEnumc��|Sr�rLr�	s    r<r�zPTestInternals.test_auto_name_inherit.<locals>.AutoNameEnum._generate_next_value_�r�	r>Nr�rLr>r<�AutoNameEnumr�	�s#������
�
�
�
�
r>r�	c�J�eZdZe��Ze��Ze��ZdS)�3TestInternals.test_auto_name_inherit.<locals>.ColorNryrLr>r<r.r�	�rzr>r.r+r-r,r�	)r�r�	r.s   r<�test_auto_name_inheritz$TestInternals.test_auto_name_inherit�s���	�	�	�	�	�4�	�	�	�	�	�	�	�	�L�	�	�	�
	
����e���u�y�%�*�e�k�&J�K�K�K�������%�0�0�0������)�6�2�2�2������*�G�4�4�4�4�4r>rYz+mixed types with auto() no longer supportedc���|�td��5Gd�dt��}ddd��n#1swxYwY|�|jjd��dS)N�&will require all values to be sortablec�&�eZdZdZe��ZdS)�1TestInternals.test_auto_garbage_ok.<locals>.Colorr+Nr�rLr>r<r.r�	�����������t�v�v���r>r.rC)rfr�rr�r-r?r5s  r<�test_auto_garbage_okz"TestInternals.test_auto_garbage_ok�s���
�
"�
"�#5�7_�
`�
`�	�	�
�
�
�
�
��
�
�
�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�	
�����)�1�-�-�-�-�-ric��|�td��5Gd�dt��}ddd��n#1swxYwY|�t	|��|j|j|j|jg��|�|jj	d��|�|jj	d��|�|jj	d��|�|jj	d��dS)Nr�	c�>�eZdZdZdZe��Ze��ZdS)�;TestInternals.test_auto_garbage_corrected_ok.<locals>.Colorr+r(N)rFrGrHr+r-rr,r.rLr>r<r.r�	�s.���������������������r>r.r+r(rDrT)
rfr�rr�r�r+r-r,r.r?r5s  r<�test_auto_garbage_corrected_okz,TestInternals.test_auto_garbage_corrected_ok�sE��
�
"�
"�#5�7_�
`�
`�	 �	 �
 �
 �
 �
 �
 ��
 �
 �
 �	 �	 �	 �	 �	 �	 �	 �	 �	 �	 �	 ����	 �	 �	 �	 �	
����e����)�U�Z���e�l�K�	M�	M�	M�������%�0�0�0������)�1�-�-�-������*�A�.�.�.������+�Q�/�/�/�/�/riz*mixed types with auto() will raise in 3.13c��|�td��5Gd�dt��}ddd��dS#1swxYwYdS)Nr�	c�&�eZdZdZe��ZdS)�3TestInternals.test_auto_garbage_fail.<locals>.Colorr+Nr�rLr>r<r.r�	�r�	r>r.r�r5s  r<�test_auto_garbage_failz$TestInternals.test_auto_garbage_fail�s���
�
#�
#�I�/W�
X�
X�	�	�
�
�
�
�
��
�
�
�	�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�	�	rcc��|�td��5Gd�dt��}ddd��dS#1swxYwYdS)Nr�	c�*�eZdZdZdZe��ZdS)�=TestInternals.test_auto_garbage_corrected_fail.<locals>.Colorr+r(N)rFrGrHr+r-rr,rLr>r<r.r�	�s#����������������r>r.r�r5s  r<� test_auto_garbage_corrected_failz.TestInternals.test_auto_garbage_corrected_fail�s���
�
#�
#�I�/W�
X�
X�	�	�
�
�
�
�
��
�
�
�	�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�	�	rcc��|�t��5Gd�dt��}ddd��dS#1swxYwYdS)Nc�P�eZdZe��Ze��Ze��Zd�ZdS)�,TestInternals.test_auto_order.<locals>.Colorc��|Sr�rLr�	s    r<r�zBTestInternals.test_auto_order.<locals>.Color._generate_next_value_�s���Kr>N)rFrGrHrr+r,r-r�rLr>r<r.r�	�sD�������d�f�f��������t�v�v�� � � � � r>r.r4r5s  r<�test_auto_orderzTestInternals.test_auto_order�s���
�
�
�y�
)�
)�	 �	 �
 �
 �
 �
 �
 ��
 �
 �
 �	 �	 �	 �	 �	 �	 �	 �	 �	 �	 �	 �	 ����	 �	 �	 �	 �	 �	 s�<�A�Ac�:��t���d�_G�fd�dt��}|�t	|��|j|jg��|�|jjd��|�|jjd��dS)Nzpathological casec�.��eZdZ�Zd�Ze��ZdS)�2TestInternals.test_auto_order_wierd.<locals>.Colorc��|Sr�rLr�	s    r<r�zHTestInternals.test_auto_order_wierd.<locals>.Color._generate_next_value_r�	r>N)rFrGrHr+r�rr-)�
weird_autos�r<r.r�	s.��������C�
�
�
��4�6�6�D�D�Dr>r.r-)rr?rr�r�r+r-)r�r.r�	s  @r<�test_auto_order_wierdz#TestInternals.test_auto_order_wierds�����V�V�
�.�
��	�	�	�	�	�	�	�D�	�	�	�
	
����e���u�y�%�*�&=�>�>�>�������*=�>�>�>������)�6�2�2�2�2�2r>z,auto() will return highest value + 1 in 3.13c�,�Gd�dt��}|�|j|j��|�|j|j��|�|j|j��|�|j|j��dS)Nc�R�eZdZe��Ze��ZeZeZe��ZdS)�3TestInternals.test_auto_with_aliases.<locals>.ColorN)	rFrGrHrr+r-�oxford�crimsonr,rLr>r<r.r�	s9�������$�&�&�C��4�6�6�D��F��G��D�F�F�E�E�Er>r.)rrrr�	r+r�	r-r?r,r5s  r<�test_auto_with_aliasesz$TestInternals.test_auto_with_aliases
s���
	�	�	�	�	�D�	�	�	�	
�
�
�e�m�U�Y�/�/�/��
�
�e�l�E�J�/�/�/������e�i�0�0�0������e�j�1�1�1�1�1r>c��Gd�dt��}|�|j|j|jgt|����dS)Nc�N�eZdZe��xZZe��Ze��ZdS)�0TestInternals.test_duplicate_auto.<locals>.DupesNr�rLr>r<r�r�	r�r>r�r�r�s  r<r�z!TestInternals.test_duplicate_autor�r>c�x�Gd�dt��}|�|jjd��|�|jjd��|�|jjd��Gd�dt��}|�|jjd��|�|jjd	��|�|jjd
��|�|jjd��|�|j	jd��|�|j	jd
��|�|j
jd��|�|j
jd��|�|jjd��|�|jjd��Gd�dt��}|�|jjd��|�|jjd��|�|jjd��dS)Nc��eZdZe��Ze��e��fZe��e��e��fZdS)�5TestInternals.test_multiple_auto_on_line.<locals>.HuhN)rFrGrHrr�r��THREErLr>r<r�r�	%sL�������$�&�&�C��$�&�&�$�$�&�&�.�C��D�F�F�D�D�F�F�D�D�F�F�*�E�E�Er>r�rC)r(rD)rTr2r�c��eZdZdd�Zd�Ze��Ze��Ze��dfZe��dfZ	e��Z
dS)�5TestInternals.test_multiple_auto_on_line.<locals>.HahNc��t�|��}||_|p|dd����|_|Sr�)r�r[r�r>�abbr)rHr?r
rs    r<r[z=TestInternals.test_multiple_auto_on_line.<locals>.Hah.__new__.s=������,�,��!&���"�7�e�B�Q�B�i�o�o�&7�&7����
r>c��|Sr�rLr�	s    r<r�zKTestInternals.test_multiple_auto_on_line.<locals>.Hah._generate_next_value_3r�	r>�WED�Thur�)rFrGrHr[r�r�MONDAY�TUESDAY�	WEDNESDAY�THURSDAY�FRIDAYrLr>r<�Hahr
-sr������
�
�
�
�

�
�
��T�V�V�F��d�f�f�G������
�I��t�v�v�u�}�H��T�V�V�F�F�Fr>r
r
�monr
�tuer	
r
r

r
r
�fric��eZdZd�Ze��Ze��e��fZe��e��e��fZdS)r�	c��|dzSrFrLr�	s    r<r�zKTestInternals.test_multiple_auto_on_line.<locals>.Huh._generate_next_value_Gs���Q�w�r>N)rFrGrHr�rr�r�r�	rLr>r<r�z5TestInternals.test_multiple_auto_on_line.<locals>.HuhFs[������
�
�
��$�&�&�C��$�&�&�$�$�&�&�.�C��D�F�F�D�D�F�F�D�D�F�F�*�E�E�Er>)r(r()rDrDrD)rr�r�r?r�r�	r
r
r
r	
r

r
)r�r�r
s   r<�test_multiple_auto_on_linez(TestInternals.test_multiple_auto_on_line$s4��	+�	+�	+�	+�	+�$�	+�	+�	+�	
�������*�*�*��������/�/�/�������)�4�4�4�
	�
	�
	�
	�
	�$�
	�
	�
	�	
�����)�8�4�4�4�������%�0�0�0������*�I�6�6�6������)�5�1�1�1������,�k�:�:�:������+�U�3�3�3������+�Z�8�8�8������*�E�2�2�2������)�8�4�4�4�������%�0�0�0�	+�	+�	+�	+�	+�$�	+�	+�	+�	
�������*�*�*��������/�/�/�������)�4�4�4�4�4r>N)rFrGrHr�r�r�r�r�r�r�r�r{r�	r�	r0r1r2r�	r�	r�	r�	r�	r�	r�	r�r
rLr>r<r�	r�	�s�������1�L�7�L�@�M�L��C�L�S�S�S�S�S�S�X�X�X�	/�	/�	/�5�5�5�5�5�5��X�_��g�%�9���.�.�	��.��X�_��g�%�9���
0�
0�	��
0��X�_��W�$�8�����	����X�_��W�$�8�����	��� � � �
3�
3�
3��X�_��W�$�:���
2�
2�	��
2�P�P�P�*5�*5�*5�*5�*5r>r�	c��eZdZdS)�TestEnumTypeSubclassingNr�rLr>r<r
r
Ps�������Dr>r
aAHelp on class Color in module %s:

class Color(enum.Enum)
 |  Color(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)
 |  
 |  Method resolution order:
 |      Color
 |      enum.Enum
 |      builtins.object
 |  
 |  Data and other attributes defined here:
 |  
 |  CYAN = <Color.CYAN: 1>
 |  
 |  MAGENTA = <Color.MAGENTA: 2>
 |  
 |  YELLOW = <Color.YELLOW: 3>
 |  
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from enum.Enum:
 |  
 |  name
 |      The name of the Enum member.
 |  
 |  value
 |      The value of the Enum member.
 |  
 |  ----------------------------------------------------------------------
 |  Static methods inherited from enum.EnumType:
 |  
 |  __contains__(member)
 |      Return True if member is a member of this enum
 |      raises TypeError if member is not an enum member
 |      
 |      note: in 3.12 TypeError will no longer be raised, and True will also be
 |      returned if member is the value of a member in this enum
 |  
 |  __getitem__(name)
 |      Return the member matching `name`.
 |  
 |  __iter__()
 |      Return members in definition order.
 |  
 |  __len__()
 |      Return the number of members (no aliases)
 |  
 |  ----------------------------------------------------------------------
 |  Readonly properties inherited from enum.EnumType:
 |  
 |  __members__
 |      Returns a mapping of member name->value.
 |      
 |      This mapping lists all enum members, including aliases. Note that this
 |      is a read-only view of the internal mapping.a�Help on class Color in module %s:

class Color(enum.Enum)
 |  Color(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)
 |  
 |  Method resolution order:
 |      Color
 |      enum.Enum
 |      builtins.object
 |  
 |  Data and other attributes defined here:
 |  
 |  CYAN = <Color.CYAN: 1>
 |  
 |  MAGENTA = <Color.MAGENTA: 2>
 |  
 |  YELLOW = <Color.YELLOW: 3>
 |  
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from enum.Enum:
 |  
 |  name
 |  
 |  value
 |  
 |  ----------------------------------------------------------------------
 |  Static methods inherited from enum.EnumType:
 |  
 |  __contains__(member)
 |  
 |  __getitem__(name)
 |  
 |  __iter__()
 |  
 |  __len__()
 |  
 |  ----------------------------------------------------------------------
 |  Readonly properties inherited from enum.EnumType:
 |  
 |  __members__c�F�eZdZdZGd�de��Zd�Zd�Zd�Zd�Z	dS)�
TestStdLibNc��eZdZdZdZdZdS)�TestStdLib.ColorrCr(rDN)rFrGrH�CYAN�MAGENTA�YELLOWrLr>r<r.r
�s�������������r>r.c�<�tj�ttz}nttz}t��}t
j|���}||j��|�	���
��}|�|||��dS)N)�output)r	r��!expected_help_output_without_docsrF�expected_help_output_with_docsr�pydoc�Helperr.�getvaluer+r�)r��
expected_textr
�helper�results     r<�
test_pydoczTestStdLib.test_pydoc�s����?�"�=��H�M�M�:�X�E�M�������V�,�,�,����t�z�������"�"�(�(�*�*��������7�7�7�7�7r>c��tdtfdd|jjfdtfd|jjfd|jjfd|jjfdtj	dfd	tj	d	fd
|jj
fd|jjfdd
|jjfddt|jd��fd|jjff��}ttj|j����}|�t%|�����t%|�������d}|���D]X}|dkr�	||||kr=t)��t)dd�d|�d||�d||�dd�d�d���d}�Y|r|�d��dSdS)Nr\)r��...rHrGr
r
r
r�r?rg�__contains__)rFr.�__getitem__)rHr
r��__iter__Fr��
�K===========================================================================z
     key: z
  result: z
expected: r"��sepT�/result does not equal expected, see print above)�dictr
r.rHrFr
r
r
rr�rgr)
r*
r;r+
�inspect�
getmembersr�r��keysr��fail)r�r7r%
r]r�s     r<�test_inspect_getmembersz"TestStdLib.test_inspect_getmembers�s�����h�'�"���
� 6�7��x�(��4�:�,�-��D�J�.�/�����)����v�.�/��$�-��0�1��D�J�.�/����!8�9�%���
� 6�7�4�$�g�d�j�:M�&N�&N�O��T�Z�0�1�!����$�g�(���4�4�5�5������V�[�[�]�]�+�+�S������-?�-?�@�@�@��������	�	�A��I�~�~���a�y�F�1�I�%�%�������!���1�1�1�f�Q�i�i�i������H�H�H�F�KM�O�O�O�O�����	I��I�I�G�H�H�H�H�H�	I�	Ir>c�t�ddlm}|ddtt���|ddt|jj���|dd|jd	���|d
dt|jj���|ddt|jj���|dd
tt|jd�����|ddt|jj	���|ddttj
���|dd|jt���|dd|jd���|dd|jd���|dd|j|jj���|dd|j|jj
���|dd|j|jj���|ddttjd���|ddttjd���g}|D])}	|j�#t$$rt'|��Y�&wxYw|�d����t+tj|j����}|�d����|�t1|��t1|��d�|D���dd �|D������d!}t3||��D]|\}}|jd"vrHd#D]D}t||��t||��kr t'd$d%�d$|�d$|�d$d%�d$�	d&�'��d(}�E�V||kr t'd$d%�d$|�d$|�d$d%�d$�	d&�'��d(}�}|r|�d)��dSdS)*Nr)�	Attributer\�data)r��kind�defining_classr�r)
�methodr�r(
r*
r+
r�zclass methodrgrHrrGrFr.rHr
r
r
r
r�r?c��|jSr�r��r�s r<�<lambda>z>TestStdLib.test_inspect_classify_class_attrs.<locals>.<lambda>���T�Y�r>)�keyc��|jSr�r�r>
s r<r?
z>TestStdLib.test_inspect_classify_class_attrs.<locals>.<lambda>r@
r>c��g|]	}|j��
SrLr��rgr�s  r<riz@TestStdLib.test_inspect_classify_class_attrs.<locals>.<listcomp>s��6�6�6�!�q�v�6�6�6r>z != c��g|]	}|j��
SrLr�rD
s  r<riz@TestStdLib.test_inspect_classify_class_attrs.<locals>.<listcomp>s��8P�8P�8P�A���8P�8P�8Pr>F)r�r�)r�r:
r;
r,
r-
r"r.
Tr0
)r2
r8
r�r
r.r)
r*
r+
r;rgrHrFr
r
r
rr�r�rQr��sortr��classify_class_attrsr�r�rqr5
)r�r8
r7r�r%
r]�rr�s        r<�!test_inspect_classify_class_attrsz,TestStdLib.test_inspect_classify_class_attrs�sV��%�%�%�%�%�%��	�{��#)�(�<�<�<��	�~�H�#+�D�J�4K�M�M�M��	�y�v�#'�:�e�=�=�=��	�}�8�#+�D�J�4J�L�L�L��	�z��#+�D�J�4G�I�I�I��	�2��#)�'�$�*�FY�2Z�2Z�\�\�\��	�y�x�#+�D�J�4F�H�H�H��	�}�:�#+�H�4H�J�J�J��	�|�&�#'�:�h�@�@�@��	�z��#'�:�g�?�?�?��	�~�F�#'�:�6H�J�J�J��	�x�f�#'�:�d�j�6G�I�I�I��	�y�v�#'�:�d�j�6H�J�J�J��	�v�F�#'�:�d�j�o�G�G�G��	�v�F�#'��
�f�0E�G�G�G��	�w�V�#'��
�g�0F�H�H�H�?!��D�	�	�A�
������!�
�
�
��a������
�������.�.��/�/�/��g�2�4�:�>�>�?�?�����.�.��/�/�/�����F���S��[�[�6�6�v�6�6�6�6�6�8P�8P��8P�8P�8P�8P�Q�	�	�	������'�'�	�	�D�A�q��v�9�9�9�=�&�&�D��q�$�'�'�7�1�d�+;�+;�;�;���h�h�h����1�1�1�h�h�h�O�UW�X�X�X�X�!%���&��a�����h�h�h����1�1�1�h�h�h�G�R�P�P�P�P�����	I��I�I�G�H�H�H�H�H�	I�	Is�G�G/�.G/c��tt��Gd�d����}Gd�dt��}|�t||��du��d|j_|�tdt||��Gd�dtt�	��}|}|�
t|��|j|j
|jg��ttt�	��Gd
�d����}|}|�
t|��|j|j
|jg��t||��dS)Nc�:�eZdZdZdZdZejd���ZdS)�5TestStdLib.test_test_simple_enum.<locals>.SimpleColorrCr(rDc��d|jzS�Nz	zeroed %sr�r�s r<�zerothz<TestStdLib.test_test_simple_enum.<locals>.SimpleColor.zeroth3���"�T�Y�.�.r>N�	rFrGrHr
r
r
r�rrO
rLr>r<�SimpleColorrL
.s>�������D��G��F�
�^�
/�
/��^�
/�
/�
/r>rR
c�:�eZdZdZdZdZejd���ZdS)�6TestStdLib.test_test_simple_enum.<locals>.CheckedColorrCr(rDc��d|jzSrN
r�r�s r<rO
z=TestStdLib.test_test_simple_enum.<locals>.CheckedColor.zeroth:rP
r>NrQ
rLr>r<�CheckedColorrT
6s>�������D��G��F�
�^�
/�
/��^�
/�
/�
/r>rV
r�z
enum mismatchc��eZdZdZdZdZdZdS)�8TestStdLib.test_test_simple_enum.<locals>.CheckedMissingr�	����N�rFrGrH�
SIXTY_FOUR�ONE_TWENTY_EIGHT�TWENTY_FORTY_EIGHTr�rLr>r<�CheckedMissingrX
Cs$�������J�"��!%��&�C�C�Cr>r`
r�c��eZdZdZdZdZdZdS)�1TestStdLib.test_test_simple_enum.<locals>.Missingr�	rY
rZ
r[
Nr\
rLr>r<r�	rb
Ks$�������J�"��!%��&�C�C�Cr>r�	)rrr�rr
r�r�rarrr�r�r]
r^
r_
)r�rR
rV
r`
�CMr�	�Ms       r<�test_test_simple_enumz TestStdLib.test_test_simple_enum-s���	�d�	�	�	/�	/�	/�	/�	/�	/�	/�
�	�	/�	/�	/�	/�	/�	/�4�	/�	/�	/�	
���)�,��D�D��L�M�M�M�&'���#�����?�!�<��	�	�	�	'�	'�	'�	'�	'�W�t�	'�	'�	'�	'�
������n�-�-��
�r�?R�TV�Ti�/j�k�k�k�	�g��	-�	-�	-�	'�	'�	'�	'�	'�	'�	'�
.�	-�	'�

������n�-�-���a�>P�RS�Rf�/g�h�h�h��.�'�2�2�2�2�2r>)
rFrGrH�maxDiffrr.r&
r6
rI
re
rLr>r<r
r
�s��������G����������

8�
8�
8� I� I� I�D?I�?I�?I�B'3�'3�'3�'3�'3r>r
c�,�eZdZd�Zd�Zd�Zd�Zd�ZdS)�MiscTestCasec�B�tj|tddh���dS)N�binr�	)�not_exported)r"�check__all__r/r�s r<�test__all__zMiscTestCase.test__all__Ys&����T�4�u�>P�6Q�R�R�R�R�R�Rr>c�b�Gd�dt��}|�|jd��dS)Nc��eZdZdZdS)�'MiscTestCase.test_doc_1.<locals>.SinglerCNr�rLr>r<�Singlerp
]r�r>rq
�rr�r�)r�rq
s  r<�
test_doc_1zMiscTestCase.test_doc_1\sJ��	�	�	�	�	�T�	�	�	�������.�.�.�.�.r>c�b�Gd�dt��}|�|jd��dS)Nc��eZdZdZdZdS)�'MiscTestCase.test_doc_2.<locals>.DoublerCr(Nr�rLr>r<�Doublerv
br�r>rw
rr
)r�rw
s  r<�
test_doc_2zMiscTestCase.test_doc_2asL��	�	�	�	�	�T�	�	�	�	
������.�.�.�.�.r>c�b�Gd�dt��}|�|jd��dS)Nc��eZdZdZdZdZdS)�'MiscTestCase.test_doc_3.<locals>.TriplerCr(rDN)rFrGrHr�r�r�	rLr>r<�Tripler{
hrLr>r|
rr
)r�r|
s  r<�
test_doc_3zMiscTestCase.test_doc_3gsL��	�	�	�	�	�T�	�	�	�	
������.�.�.�.�.r>c�b�Gd�dt��}|�|jd��dS)Nc��eZdZdZdZdZdZdS)�*MiscTestCase.test_doc_4.<locals>.QuadruplerCr(rDrTN)rFrGrHr�r�r�	r�rLr>r<�	Quadrupler�
os"�������C��C��E��D�D�Dr>r�
rr
)r�r�
s  r<�
test_doc_4zMiscTestCase.test_doc_4nsM��	�	�	�	�	��	�	�	�
	
����*�D�1�1�1�1�1r>N)rFrGrHrm
rs
rx
r}
r�
rLr>r<rh
rh
Wsb������S�S�S�/�/�/�
/�/�/�/�/�/�2�2�2�2�2r>rh
r2r�r��r�rCr?��?�@�@c��eZdZdZd�ZdS)�_ModuleWrapperz6We use this class as a namespace for swapping modules.c�D�|j�|j��dSr�)r�rX)r�rhs  r<r�z_ModuleWrapper.__init__�s ���
���V�_�-�-�-�-�-r>N)rFrGrHr�r�rLr>r<r�
r�
�s)������@�@�.�.�.�.�.r>r�
c�>�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	S)
�TestConvertc��t��}dD]}d|d|z<d|d|z<�dD]
\}}||d|z<�dD]
\}}||d|z<�d	D]
\}}||d
|z<�dS)N)r*rvr�r�r+r�r2zCONVERT_TEST_NAME_%szCONVERT_STRING_TEST_NAME_%s))r*r2)rvr�
)r�r?zUNCOMPARABLE_%s))r*r�
)rvr�
)r�r�
z
COMPLEX_%s))r/r�)r0r�zCONVERT_STR_TEST_%s)r�)r��g�suffixr?s    r<�tearDownzTestConvert.tearDown�s���
�I�I��4�	:�	:�F�12�A�$�v�-�.�89�A�+�f�4�5�5�F�	2�	2�M�F�E�,1�A��&�(�)�)�>�	-�	-�M�F�E�',�A�l�V�#�$�$�?�	6�	6�M�F�E�05�A�#�f�,�-�-�	6�	6r>c��tj�dtd����}|�|d��jd��dS)N�UnittestConvertc�,�|�d��S�N�
CONVERT_TEST_rQ�r�s r<r?
z@TestConvert.test_convert_value_lookup_priority.<locals>.<lambda>�������o�!>�!>�r>��filterr2�CONVERT_TEST_NAME_A)r/r�	_convert_�MODULEr�r��r�r�s  r<�"test_convert_value_lookup_priorityz.TestConvert.test_convert_value_lookup_priority�sV���L�*�*�!��>�>�+�@�@�	�	
�����1���*�,A�B�B�B�B�Br>c�P��tj�dtd�����|��j�j��|��jd��|��jd��|��j	d��|��j
d��tt��gd�z}�fd�t���D��}�fd�t���D��}|�||zgd|�d	|���
��dS)Nr�
c�,�|�d��Sr�
rQr�
s r<r?
z.TestConvert.test_convert_int.<locals>.<lambda>�r�
r>r�
r2)
r�
�CONVERT_TEST_NAME_B�CONVERT_TEST_NAME_C�CONVERT_TEST_NAME_D�CONVERT_TEST_NAME_E�CONVERT_TEST_NAME_F�CONVERT_TEST_SIGABRT�CONVERT_TEST_SIGIOT�CONVERT_TEST_EIO�CONVERT_TEST_EBUSc�6��g|]}|t���v�|��SrL�r��rgr�r�s  �r<riz0TestConvert.test_convert_int.<locals>.<listcomp>��+���T�T�T�$�D���@S�@S�4S�4S��4S�4S�4Sr>c�6��g|]}|t���v�|��SrL�r�r�
s  �r<riz0TestConvert.test_convert_int.<locals>.<listcomp>��)���V�V�V�D�4�s�9�~�~�;U�;U�4�;U�;U�;Ur>�
extra names: �;  missing names: ��msg)r/rr�
r�
r�r�
r�
r�
r�
r�
r�
r�r�r�)r��int_dir�extrar�r�s    @r<�test_convert_intzTestConvert.test_convert_int�sY����L�*�*�!��>�>�+�@�@�	�
	
����6�"�6�	8�	8�	8�����6��:�:�:�����6��:�:�:�����6��:�:�:�����6��:�:�:��c�(�(������U�T�T�T�#�i�.�.�T�T�T��V�V�V�V�H�Y�$7�$7�V�V�V����������=B�U�U�G�G�L�	�	�	�	�	�	r>c��tj�dtd����}|�t|��|j|j|jg��dS)N�Uncomparablec�,�|�d��S)N�
UNCOMPARABLE_rQr�
s r<r?
z7TestConvert.test_convert_uncomparable.<locals>.<lambda>�r�
r>r�
)	r/rr�
r�
r�r��UNCOMPARABLE_A�UNCOMPARABLE_B�UNCOMPARABLE_C�r��uncomps  r<�test_convert_uncomparablez%TestConvert.test_convert_uncomparable�sl����$�$���>�>�%�@�@��
	
�����L�L�
�
"�F�$9�6�;P�Q�	�	�	�	�	r>c��tj�dtd����}|�t|��|j|j|jg��dS)Nr�
c�,�|�d��S)N�COMPLEX_rQr�
s r<r?
z2TestConvert.test_convert_complex.<locals>.<lambda>�s��Q�\�\�*�5�5�r>r�
)	r/rr�
r�
r�r��	COMPLEX_A�	COMPLEX_B�	COMPLEX_Cr�
s  r<�test_convert_complexz TestConvert.test_convert_complex�sj����$�$���5�5�%�7�7��
	
�����L�L�
�
�v�/��1A�B�	�	�	�	�	r>c���tj�dtd�d����|��jd��|��jd��tt��ddgz}�fd	�t���D��}�fd
�t���D��}|�||zgd|�d|���
��|�t�j��dtz��|�t�j��d��|�t�j��d��dS)Nr�
c�,�|�d��S)N�CONVERT_STR_rQr�
s r<r?
z.TestConvert.test_convert_str.<locals>.<lambda>�s�����n�!=�!=�r>T�r�
�	as_globalr�r��CONVERT_STR_TEST_1�CONVERT_STR_TEST_2c�6��g|]}|t���v�|��SrLr�
r�
s  �r<riz0TestConvert.test_convert_str.<locals>.<listcomp>�r�
r>c�6��g|]}|t���v�|��SrLr�
r�
s  �r<riz0TestConvert.test_convert_str.<locals>.<listcomp>�r�
r>r�
r�
r�
z%s.CONVERT_STR_TEST_1)
r/r	r�
r�
r�r�
r�
r�r9r�rpr	r>)r��str_dirr�
r�r�s    @r<�test_convert_strzTestConvert.test_convert_str�sb����L�*�*�!��=�=��	+� � �	�	
����5�w�?�?�?�����5�y�A�A�A��c�(�(�2�4H�I�I��T�T�T�T�#�i�.�.�T�T�T��V�V�V�V�H�Y�$7�$7�V�V�V����������=B�U�U�G�G�L�	�	�	�	�
	
����i�:�;�;�=T�Wc�=c�d�d�d�����Y�9�:�:�I�F�F�F�����	� <�=�=�w�G�G�G�G�Gr>c��|�t��5tj�dt
d����ddd��dS#1swxYwYdS)Nr�
c�,�|�d��Sr�
rQr�
s r<r?
z0TestConvert.test_convert_raise.<locals>.<lambda>r�
r>r�
)rPrQr/r�_convertr�
r�s r<�test_convert_raisezTestConvert.test_convert_raise�s���
�
�
�~�
.�
.�	@�	@��L�!�!�!��>�>�
"�
@�
@�
@�	@�	@�	@�	@�	@�	@�	@�	@�	@�	@�	@�	@����	@�	@�	@�	@�	@�	@s�)A�A�Ac�X�tj�dtd�d���}|�t|j��dtz��|�t|j��d��|�t|j��d��dS)Nr�
c�,�|�d��S)N�CONVERT_STRING_TEST_rQr�
s r<r?
z7TestConvert.test_convert_repr_and_str.<locals>.<lambda>s�����.D�!E�!E�r>Tr�
z%s.CONVERT_STRING_TEST_NAME_Ar])
r/rr�
r�
r�rp�CONVERT_STRING_TEST_NAME_Ar	r9r>r�
s  r<�test_convert_repr_and_strz%TestConvert.test_convert_repr_and_strs����L�*�*�!��E�E��	+� � �	�
	
����i�B�C�C�Ed�gs�Es�t�t�t�����Y�A�B�B�C�H�H�H�����	� D�E�E�s�K�K�K�K�Kr>N)rFrGrHr�
r�
r�
r�
r�
r�
r�
r�
rLr>r<r�
r�
�s�������
6�
6�
6�C�C�C����8	�	�	�	�	�	�H�H�H�,@�@�@�L�L�L�L�Lr>r�
c�p�tgd�|jz��}|jtjur|�d��|jtjur|�d��|jturt|��Sttt|j����|z��S)N)
r\r)
r�r*
r+
rgrHrGrFrHr[r�)
r��_member_names_�_new_member_r�r[r�r�r8�sortedr�)rH�interestings  r<r�r�s�������
� �!���K���v�~�-�-����	�"�"�"�
��F�$<�<�<����+�,�,�,�
��F�"�"��k�"�"�"��c�#�c�/�0�0�1�1�K�?�@�@�@r>c��|jjturtgd���}ntt	|����}|j���D]�}|j���D]�\}}|ddkr�t|tj
��r<|j�	||jvr|�
|���R|�|���h||jvr|�
|������t|��S)N)r\r�rr�rGr�r?rr�)r\r8r�r�r�r�r�r�r�r/rr�r�r��discardr�
)r�allowedrHr�r|s     r<r�r�!s��
��%��/�/��c�c�c�d�d����c�&�k�k�"�"����#�#�%�%�
"�
"����+�+�-�-�		"�		"�I�D�#��A�w�#�~�~���#�t�}�-�-�
"��8�'�4�v�7J�+J�+J��K�K��%�%�%�%��O�O�D�)�)�)�)��V�0�0�0����D�!�!�!��		"��'�?�?�r>�__main__r�)�rcr/r-r2
r0r 
rr0r�rV�builtinsr�r�rr�rrrrr	r
rrr
rrrrrrrrrrrrrrr�ior�picklerrr r!r�r"�test.supportr#r$r%�textwrapr&r'�version_infor2r=rFr�
r�r	rBr8rr�rOrarQrSrYr^r`rbrfrirjrnryr}�TestCaserr��global_enumr�r�r�r�r4rTrZrlr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rK	rY	r�	r�	r
r
r
r
rh
r�
r�
r�
r�
r�
r�
�CONVERT_STRING_TEST_NAME_D�CONVERT_STRING_TEST_NAME_C�CONVERT_STRING_TEST_NAME_Br�
�CONVERT_STRING_TEST_NAME_E�CONVERT_STRING_TEST_NAME_Fr�
r�
r�
r�
r�
r�
r�
r�
r�
r�
r�r�r�r��mainrLr>r<�<module>r�
s�
������������������	�	�	�	�����
�
�
�
���������
�
�
�
�����#�#�#�#�#�#�������X�X�X�X�X�X�X�X�X�X�X�X�X�X�X�X�X�X�X�X�X�X�N�N�N�N�N�N�N�N�N�N�N�N�N�N�N�N�B�B�B�B�B�B�B�B�B�B�B�B�B�B�2�2�2�2�2�2�2�2�2�2�������@�@�@�@�@�@�@�@�@�@�@�@�������-�-�-�-�-�-�-�-�)�)�)�)�)�)��������������!�"�1�"�%�����&
���|�|�C� � ��$��������$�����������G�G�G�G�G�G���������������S�$�����������J�J�J�J�J�J���������������u�d�����������L�L�L�L�L�L���������������d������
�����K�K�K�K�K�K��������������$���������W���������W���������7������t�J� 9�(�K�K�K�H�H�������H�H�H�H�H�H����������
�T�(�9�
:�
:�F�F������
�F�F�F�F�F�F����������
�T�(�2�=R�
S�
S�
S�F�F������
�F�F�F�F�F�F���������	�������������	�	�	��D�	����C�C�C�C�*�*�*�
1e�1e�1e�1e�1e�(�#�1e�1e�1e�l%�%�%�%�%�%�%�%��������'�D�I��������������'�D�L��������������T������r�r�r�r�r�r�r�r�h
$4�$4�$4�$4�$4�$4�$4�$4�N#3�#3�#3�#3�#3�#3�#3�#3�L6&�6&�6&�6&�6&�6&�6&�6&�pZ2�Z2�Z2�Z2�Z2�Z2�Z2�Z2�z�����J� 1�8�3D����"�"�"�"�"�J� 1�:�x�?P�"�"�"�(�����*�1�8�3D���������*�1�8�3D���������*�1�:�x�?P����%�%�%�%�%�:�0�(�2C�%�%�%�%�%�%�%�%�:�0�(�2C�%�%�%�%�%�%�%�%�z�#4�j�(�BS�%�%�%�!�!�!�!�!�J� 1�8�3D�!�!�!�!�!�!�!�!�j�"5�x�7H�!�!�!�!�!�!�!�!�Z�!2�H�4E�!�!�!�!�!�!�!�!�z�#6��8I�!�!�!�i"�i"�i"�i"�i"�(�#�i"�i"�i"�X=<�<�<�<�<��!�<�<�<�~tB�tB�tB�tB�tB�(�#�tB�tB�tB�n|O�|O�|O�|O�|O�X�&�|O�|O�|O�~(�(�(�(�(�(�"3�(�(�(�"-�-�-�-�-��"�-�-�-�^C�C�C�C�C��"�C�C�C�NI5�I5�I5�I5�I5�H�%�I5�I5�I5�V	�	�	�	�	�h�/�	�	�	�6"8��p(%�!�T_3�_3�_3�_3�_3��"�_3�_3�_3�D2�2�2�2�2�8�$�2�2�2�D�����������������������������������	��	��	�.�.�.�.�.�.�.�.�
qL�qL�qL�qL�qL�(�#�qL�qL�qL�lA�A�A�$���$�&�(�(���z����H�M�O�O�O�O�O��s��C(�(C9�-C4�4C9�=D
�
D�D�D�"D2�2E�7D>�>E�E�E'�E"�"E'�#F2�2G�7F>�>G�G�G%�G � G%�)G8�8H	�=H�H	�
H�H$�#H$

Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists