File: //lib/python3.12/__pycache__/stringprep.cpython-312.pyc
�
    )!�hu2  �            	       �F  � d Z ddlmZ ej                  dk(  sJ �d� Z eg d� e edd�      �      z   �      Zd� Z	i d	d
�dd�d
d�dd�dd�dd�dd�dd�dd�dd�dd�dd �d!d"�d#d$�d%d&�d'd(�d)d*�i d+d,�d-d.�d/d0�d1d�d2d3�d4d5�d6d7�d8d9�d:d;�d<d=�d>d?�d@dA�dBdC�dDdE�dFdG�dHdI�dJdK��i dLdM�dNdO�dPdQ�dRdS�dTdU�dVdW�dXdY�dZdK�d[dM�d\dO�d]dQ�d^dS�d_dU�d`dW�dadY�dbdc�ddde��i dfdg�dhdi�djdk�dldm�dndo�dpdq�drdc�dsde�dtdg�dudi�dvdk�dwdm�dxdo�dydq�dzd{�d|d}�d~d��i d�d��d�d��d�d��d�d��d�d��d�d{�d�d}�d�d�d�d��d�d��d�d��d�d��d�d��d�d��d�d��d�d��d�d���i d�d��d�d��d�d�d�d��d�d��d�d��d�d��d�d��d�d��d�d��d�d�d�d��d�d��d�d��d�d�d�d��d�d���i d�d��d�d��d�d��d�d��d�d��d�dd�d��d�dœd�dǓd�dɓd�d˓d�d͓d�dϓd�dϓd�dϓd�dӓd�dӓ�i d�d֓d�dؓd�dړd�dܓd�dޓd�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�dǓd�d�d�d��i d�d�d�d��d�d,�d�d��d�d��d�d��d�d���d �d��d�d��d�d��d�d��d�d	��d
�d��d�d
��d�d��d�d��d�d��i �d�d��d�d��d�d��d�d��d�d��d�d��d �d��d!�d"��d#�d$��d%�d&��d'�d(��d)�d*��d+�d,��d-�d.��d/�d0��d1�d.��d2�d3��i �d4�d5��d6�d7��d8�d9��d:�d;��d<�d9��d=�d>��d?�d@��dA�dB��dC�dD��dE�dF��dG�dH��dI�dJ��dK�dL��dM�dN��dO�dP��dQ�dR��dS�dT��i �dU�dV��dW�dX��dY�dZ��d[�d\��d]�d^��d_�d`��da�db��dc�dd��de�df��dg�df��dh�di��dj�dk��dl�dm��dn�do��dp�dq��dr�ds��dtd��i �dudǓ�dvd���dwd��dxd��dy�dz��d{dϓ�d|dӓ�d}�d~��d�d���d�d֓�d�d��d�dؓ�d��d���d�dܓ�d�dޓ�d�d��d�d��i �d��d���d��d���d��d���d��d���d��d���d��d���d�d��d��ds��d�d��d�dǓ�d�d���d�d��d�d��d��dz��d�dϓ�d�dӓ�d��d~��i �d��d���d�d֓�d�d��d�dؓ�d��d���d�dܓ�d�dޓ�d�d��d�d��d��d���d��d���d��d���d��d���d��d���d��d���d�d��d��ds��i �d�d��d�dǓ�d�d���d�d��d�d��d��dz��d�dϓ�d�dӓ�d��d~��d��d���d�d֓�d�d��d�dؓ�d��d���d�dܓ�d�dޓ�d�d��i �d�d��dĐd���dŐd���dƐd���dǐd���dȐd���dɐd���d�d��dːds��d�dǓ�d�d���dΐdz��dϐd~��dАd���d�dؓ�dҐd���d�dܓ�i �d�dޓ�d�d��dd���dאd���dؐd���dِd���dڐd���dېd���d�d��dݐds��d�d��d�dǓ�d�d���d�d��d�d��d�dz��d�dϓ�i �d�dӓ�d�d~��d�d���d�d֓�d�d��d�dؓ�d�d���d�dܓ�d�dޓ�d�d��d�d��d�d���d�d���d�d���d�d���d�d���d��d���i �d�d��d��ds��d�d��d�d���d�d��d�d��d��dz��d��d~��d��d���d�d֓�d d��ddؓ�d�d���ddܓ�ddޓ�dd��d�d���i �d�d���d�d���d	�d���d
�d���d�d���d�ds��d
d��dd���dd��dd��d�dz��ddӓ�d�d~��d�d���dd֓�dd��d�d���i �dd��d�d���d�d���d�d���d�d���d�d���d�d���d�ds��d d��d!dǓ�d"d���d#d��d$d��d%�dz��d&dϓ�d'dӓ�d(�d~��i �d)�d���d*d֓�d+d��d,dؓ�d-�d���d.dܓ�d/dޓ�d0d��d1d��d2�d���d3�d���d4�d���d5�d���d6�d���d7�d���d8d��d9�ds��i �d:d��d;dǓ�d<d���d=d��d>d��d?�dz��d@dϓ�dAdӓ�dB�d~��dC�d���dDd֓�dEd��dFdؓ�dG�d���dHdܓ�dIdޓ�dJd��i �dKd��dL�d���dM�d���dN�d���dO�d���dP�d���dQ�d���dRd��dS�ds��dTd��dUdǓ�dVd���dWd��dXd��dY�dz��dZdϓ�d[dӓ�i �d\�d~��d]�d���d^d֓�d_d��d`dؓ�da�d���dbdܓ�dcdޓ�ddd��ded��df�d���dg�d���dh�d���di�d���dj�d���dk�d���dld��i �dm�ds��dnd��dodǓ�dpd���dqd��drd��ds�dz��dtdϓ�dudӓ�dv�d~��dw�d���dxd֓�dyd��dzdؓ�d{�d���d|dܓ�d}dޓ�i �d~d��dd��d��d���d��d���d��d���d��d���d��d���d��d���d�d��d��ds��d�d��d�dǓ�d�d���d�d��d�d��d��dz��d�dϓ�i �d�dӓ�d��d~��d��d���d�d֓�d�d��d�dؓ�d��d���d�dܓ�d�dޓ�d�d��d�d��d��d���d��d���d��d���d��d���d��d���d��d���i �d�d��d��ds��d�d��d�dǓ�d�d���d�d��d�d��d��dz��d�dϓ�d�dӓ�d��d~��d��d���d�d֓�d�d��d�dؓ�d��d���d�dܓ�i �d�dޓ�d�d��d�d��d��d���d��d���d��d���d��d���d��d���d��d���d�d��d��d���d�d ��d�d���d��d���d�d3��ddÓ�dĐdœ�i �d�d"��d�d��d�d.��dɐdʓ�d�d
��d̐d͓�dΐdϓ�dАdѓ�d�d,��d�d0��d�d"��d�d��ddד�d�d$��d�d*��dڐdۓ�dܐdݓ�i �dސdߓ�d�d��d�d���d�d ��d�d���d�d���d�d3��d�dÓ�d�dœ�d�d"��d�d��d�d.��d�dʓ�d�d
��d�d͓�d�dϓ�d�dѓ�i �d�d,��d�d0��d�d"��d�d��d�dד�d�d$��d�d*��d��dۓ�d��dݓ�d��dߓ�d�d��d��d���d�d ��d�d���d��d���d�d3��d �dÓ�i �d�dœ�dd"��dd��dd.��d�dʓ�dd
��d�d͓�d�dϓ�d	�dѓ�d
d,��dd0��dd"��d
d��d�dד�dd$��dd*��d�dۓ�i �d�dݓ�d�dߓ�dd��d�d���dd ��dd���d�d���dd3��d�dÓ�d�dœ�dd"��dd��dd.��d�dʓ�d d
��d!�d͓�d"�dϓ�i �d#�dѓ�d$d,��d%d0��d&d"��d'd��d(�dד�d)d$��d*d*��d+�dۓ�d,�dݓ�d-�dߓ�d.d��d/�d���d0d ��d1d���d2�d���d3d3��i �d4�dÓ�d5�dœ�d6d"��d7d��d8d.��d9�dʓ�d:d
��d;�d͓�d<�dϓ�d=�dѓ�d>d,��d?d0��d@d"��dAd��dB�dד�dCd$��dDd*���dېdݐd�d�dE��Z
�dF� Z�dG� Z�dH� Z
�dI� Z�dJ� Z�dK� Z eg �dL� e e�dM�dN�      �      z    e e�dO�dP�      �      z    e e�dQ�dR�      �      z    e e�dS�dT�      �      z   �      Z�dU� Z�dV� Z�dW� Z�dX� Z�dY� Z e e�dQ�dZ�      �      Z�d[� Z e e�d\�d]�      �      Z�d^� Z eg �d_� e e�d`�da�      �      z    e e�dO�dP�      �      z   �      Z�db� Z e�dcg e e�dd�de�      �      z   �      Z�df� Z�dg� Z�dh� Z �yi(j  z�Library that exposes various tables found in the StringPrep RFC 3454.
There are two kinds of tables: sets, for which a member test is provided,
and mappings, for which a mapping function is provided.
�    )�	ucd_3_2_0z3.2.0c                 �r   � t        j                  | �      dk7  ryt        | �      }d|cxk  rdk  ry |dz  dvS )N�CnF��  ��  �  ��  r   )�unicodedata�category�ord��code�cs     �!/usr/lib/python3.12/stringprep.py�in_table_a1r      sB   � ����D�!�T�)�%��D�	�A�
���V��E��
��J�/�/�/�    )�   iO  i  i  i  i
  i   �   �
   �`   �  i �  i�  c                 �$   � t        | �      t        v S �N)r
   �b1_set�r   s    r   �in_table_b1r      �   � ��t�9���r   �   u   μ��   �ssi0  u   i̇iI  u   ʼni  �si�  u   ǰiE  u   ιiz  u    ιi�  u   ΐi�  u   ΰi�  u   σi�  u   βi�  u   θi�  u   υi�  u   ύi�  u   ϋi�  u   φi�  u   πi�  u   κi�  u   ρi�  i�  u   εi�  u   եւi�  u   ẖi�  u   ẗi�  u   ẘi�  u   ẙi�  u   aʾi�  u   ṡiP  u   ὐiR  u   ὒiT  u   ὔiV  u   ὖi�  u   ἀιi�  u   ἁιi�  u   ἂιi�  u   ἃιi�  u   ἄιi�  u   ἅιi�  u   ἆιi�  u   ἇιi�  i�  i�  i�  i�  i�  i�  i�  i�  u   ἠιi�  u   ἡιi�  u   ἢιi�  u   ἣιi�  u   ἤιi�  u   ἥιi�  u   ἦιi�  u   ἧιi�  i�  i�  i�  i�  i�  i�  i�  i�  u   ὠιi�  u   ὡιi�  u   ὢιi�  u   ὣιi�  u   ὤιi�  u   ὥιi�  u   ὦιi�  u   ὧιi�  i�  i�  i�  i�  i�  i�  i�  i�  u   ὰιi�  u   αιi�  u   άιi�  u   ᾶi�  u   ᾶιi�  i�  i�  u   ὴιi�  u   ηιi�  u   ήιi�  u   ῆi�  u   ῆιi�  i�  u   ῒi�  i�  u   ῖi�  u   ῗi�  u   ῢi�  i�  u   ῤi�  u   ῦi�  u   ῧi�  u   ὼιi�  u   ωιi�  u   ώιi�  u   ῶi�  u   ῶιi�  i�   �rsi!  r   i!  u   °ci!  u   ɛi	!  u   °fi!  �hi!  i
!  i!  �ii!  i!  �li!  �ni!  �noi!  �pi!  �qi!  �ri!  i!  i !  �smi!!  �teli"!  �tmi$!  �zi(!  i,!  �bi-!  i0!  �ei1!  �fi3!  �mi>!  u   γi?!  iE!  �diq3  �hpais3  �auiu3  �ovi�3  �pai�3  �nai�3  u   μai�3  �mai�3  �kai�3  �kbi�3  �mbi�3  �gbi�3  �pfi�3  �nfi�3  u   μfi�3  �hzi�3  �khzi�3  �mhzi�3  �ghzi�3  �thzi�3  i�3  �kpai�3  �mpai�3  �gpai�3  �pvi�3  �nvi�3  u   μvi�3  �mvi�3  �kvi�3  i�3  �pwi�3  �nwi�3  u   μwi�3  �mwi�3  �kwi�3  i�3  u   kωi�3  u   mωi�3  �bqi�3  u   c∕kgi�3  zco.i�3  �dbi�3  �gyi�3  �hpi�3  �kki�3  �kmi�3  �phi�3  �ppmi�3  �pri�3  �svi�3  �wbi �  �ffi�  �fii�  �fli�  �ffii�  �ffli�  �sti�  i�  u   մնi�  u   մեi�  u   միi�  u   վնi�  u   մխi � �ai� i� i� i� i� i� �gi� i� i	� �ji
� �ki� i� i
� i� �oi� i� i� i� i� �ti� �ui� �vi� �wi� �xi� �yi� i4� i5� i6� i7� i8� i9� i:� i;� i<� i=� i>� i?� i@� iA� iB� iC� iD� iE� iF� iG� iH� iI� iJ� iK� iL� iM� ih� ii� ij� ik� il� im� in� io� ip� iq� ir� is� it� iu� iv� iw� ix� iy� iz� i{� i|� i}� i~� i� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i� i� i� i� i	� i
� i
� i� i� i� i� i� i� i� i� i� i� i� i� i� i� i8� i9� i;� i<� i=� i>� i@� iA� iB� iC� iD� iF� iJ� iK� iL� iM� iN� iO� iP� il� im� in� io� ip� iq� ir� is� it� iu� iv� iw� ix� iy� iz� i{� i|� i}� i~� i� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i� i	� i
� i� i� i
� i� i� i� i� i� i� i� i� i� i� i� i� i� i� i� i� i� i� i � i!� i<� i=� i>� i?� i@� iA� iB� iC� iD� iE� iF� iG� iH� iI� iJ� iK� iL� iM� iN� iO� iP� iQ� iR� iS� iT� iU� ip� iq� ir� is� it� iu� iv� iw� ix� iy� iz� i{� i|� i}� i~� i� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� u   αi�� i�� i�� u   δi�� i�� u   ζi�� u   ηi�� i�� i�� i�� u   λi�� i�� u   νi�� u   ξi�� u   οi�� i�� i�� i�� i�� u   τi�� i�� i�� u   χi�� u   ψi�� u   ωi�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i
� i� i� i� i� i � i!� i"� i#� i$� i%� i&� i'� i(� i)� i*� i+� i,� i-� i.� i/� i0� i1� i2� i3� i4� iG� iV� iW� iX� iY� iZ� i[� i\� i]� i^� i_� i`� ia� ib� ic� id� ie� if� ig� ih� ii� ij� ik� il� im� in� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� i�� )i�� i�� i�� i�� c                 �f   � t         j                  t        | �      �      }|�|S | j                  �       S r   )�
b3_exceptions�getr
   �lower)r   r+   s     r   �map_table_b3rq   �   s+   � ����#�d�)�$�A��}�Q�h��:�:�<�r   c                 ��   � t        | �      }t        j                  d|�      }dj                  |D �cg c]
  }t        |�      �� c}�      }t        j                  d|�      }||k7  r|S |S c c}w )N�NFKC� )rq   r   �	normalize�join)rb   �alr0   �ch�blr   s         r   �map_table_b2rz   �   sc   � �	�a��B����f�b�)�A�	���Q�/�r�,�r�"�/�	0�B����f�b�)�A��A�v����	�� 0s   �A)c                 �   � | dk(  S )N� � r   s    r   �in_table_c11r~   �   s   � ��3�;�r   c                 �@   � t        j                  | �      dk(  xr | dk7  S )N�Zsr|   �r   r   r   s    r   �in_table_c12r�   �   s!   � �����%��-�=�$�#�+�=r   c                 �2   � t        j                  | �      dk(  S )Nr�   r�   r   s    r   �in_table_c11_c12r�   �   �   � �����%��-�-r   c                 �R   � t        | �      dk  xr t        j                  | �      dk(  S )N�   �Cc)r
   r   r   r   s    r   �in_table_c21r�   �   s%   � ��t�9�s�?�A�{�3�3�D�9�T�A�Ar   )i�  i  i  r   r   i(   i)   r   r   id   ij   ip   i��  i��  is� i{� c                 �f   � t        | �      }|dk  ryt        j                  | �      dk(  ry|t        v S )Nr�   Fr�   T)r
   r   r   �c22_specialsr   s     r   �in_table_c22r�   �   s4   � ��D�	�A��3�w�u����D�!�T�)�$����r   c                 �X   � t        j                  | �      dk(  xs t        | �      t        v S )Nr�   )r   r   r
   r�   r   s    r   �in_table_c21_c22r�   �   s+   � �����%��-� %��t�9��$�%r   c                 �2   � t        j                  | �      dk(  S )N�Cor�   r   s    r   �in_table_c3r�   �   r�   r   c                 �P   � t        | �      }|dk  ry|dk  ryt        | �      dz  dv S )Nr   Fr   Tr   r	   )r
   r   s     r   �in_table_c4r�   �   s2   � ��D�	�A��6�z�%��6�z�$���I���#3�3�3r   c                 �2   � t        j                  | �      dk(  S )N�Csr�   r   s    r   �in_table_c5r�   �   r�   r   r
   c                 �$   � t        | �      t        v S r   )r
   �c6_setr   s    r   �in_table_c6r�   �   r   r   i�/  i�/  c                 �$   � t        | �      t        v S r   )r
   �c7_setr   s    r   �in_table_c7r�   �   r   r   )i@  iA  i   i   i*   i/   c                 �$   � t        | �      t        v S r   )r
   �c8_setr   s    r   �in_table_c8r�     r   r   i  i   i�  c                 �$   � t        | �      t        v S r   )r
   �c9_setr   s    r   �in_table_c9r�     r   r   c                 �0   � t        j                  | �      dv S )N)�R�AL�r   �
bidirectionalr   s    r   �in_table_d1r�     s   � ��$�$�T�*�j�8�8r   c                 �2   � t        j                  | �      dk(  S )N�Lr�   r   s    r   �in_table_d2r�     s   � ��$�$�T�*�c�1�1r   N)!�__doc__r   r   �unidata_versionr   �set�list�ranger   r   rn   rq   rz   r~   r�   r�   r�   r�   r�   r�   r�   r�   r�   r�   r�   r�   r�   r�   r�   r�   r�   r�   r�   r}   r   r   �<module>r�      s�&