관리-도구
편집 파일: idna.cpython-36.opt-2.pyc
3 �Qg�# � @ s� d dl Z d dlZd dlZd dlmZ ejd�ZdZdZdd� Z dd � Z d d� ZG dd � d ej�ZG dd� dej �ZG dd� dej�ZG dd� deej�ZG dd� deej�Zdd� ZdS )� N)� ucd_3_2_0u [.。.。]s xn--zxn--c C s g }x(| D ] }t j|�rq |jt j|�� q W dj|�} tjd| �} xr| D ]j}t j|�s�t j|�s�t j |�s�t j |�s�t j|�s�t j|�s�t j |�s�t j|�s�t j|�rJtd| ��qJW dd� | D �}t|��rtdd� | D ��r�td��|d p�|d �rtd��| S ) N� �NFKCzInvalid character %rc S s g | ]}t j|��qS � )� stringprepZin_table_d1)�.0�xr r �&/usr/lib64/python3.6/encodings/idna.py� <listcomp>) s znameprep.<locals>.<listcomp>c s s | ]}t j|�V qd S )N)r Zin_table_d2)r r r r r � <genexpr>1 s znameprep.<locals>.<genexpr>zViolation of BIDI requirement 2r � zViolation of BIDI requirement 3���)r Zin_table_b1�appendZmap_table_b2�join�unicodedata� normalizeZin_table_c12Zin_table_c22Zin_table_c3Zin_table_c4Zin_table_c5Zin_table_c6Zin_table_c7Zin_table_c8Zin_table_c9�UnicodeError�any)�labelZnewlabel�cZRandALr r r �nameprep s2 r c C s� y| j d�} W n tk r" Y n*X dt| � k o:dk n rD| S td��t| �} y| j d�} W n tk rv Y n*X dt| � k o�dk n r�| S td��| jt�r�td��| j d�} t| } dt| � k o�dk n r�| S td��d S )N�asciir �@ zlabel empty or too longzLabel starts with ACE prefix�punycode)�encoder �lenr � startswith�sace_prefix� ace_prefix)r r r r �ToASCII<