<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/css/bootstrap.min.css" rel="stylesheet"
        integrity="sha384-GLhlTQ8iRABdZLl6O3oVMWSktQOp6b7In1Zl3/Jr59b6EGGoI1aFkw7cmDA6j6gD" crossorigin="anonymous">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.3.0/css/all.min.css"
        integrity="sha512-SzlrxWUlpfuzQ+pcUCosxcglQRNAq/DZjVsC0lE40xsADsfeQoEypE+enwcOiGjk/bSuGGKHEyjSoQ1zVisanQ=="
        crossorigin="anonymous" referrerpolicy="no-referrer" />
</head>
</html>
3
2a#                 @   s   d dl Z d dlZd dlZd dlmZ ejdZdZdZdd Z	dd	 Z
d
d ZG dd dejZG dd dejZG dd dejZG dd deejZG dd deejZdd ZdS )    N)	ucd_3_2_0u   [.。．｡]s   xn--zxn--c             C   s  g }x(| D ] }t j|rq
|jt j| q
W dj|} tjd| } xr| D ]j}t j|st j|st j	|st j
|st j|st j|st j|st j|st j|rJtd| qJW dd | D }xH|D ]@}|rtdd | D rtd|d	  s|d  rtdqW | S )N ZNFKCzInvalid character %rc             S   s   g | ]}t j|qS  )
stringprepZin_table_d1).0xr   r   )/opt/alt/python36/lib64/python3.6/idna.py
<listcomp>)   s    znameprep.<locals>.<listcomp>c             s   s   | ]}t j|V  qd S )N)r   Zin_table_d2)r   r   r   r   r   	<genexpr>2   s    znameprep.<locals>.<genexpr>zViolation of BIDI requirement 2r      zViolation of BIDI requirement 3)r   Zin_table_b1appendZmap_table_b2joinunicodedata	normalizeZin_table_c12Zin_table_c22Zin_table_c3Zin_table_c4Zin_table_c5Zin_table_c6Zin_table_c7Zin_table_c8Zin_table_c9UnicodeErrorany)labelZnewlabelcZRandALr   r   r   nameprep   s4    













r   c             C   s   y| j d} W n tk
r"   Y n*X dt|   k o:dk n  rD| S tdt| } y| j d} W n tk
rv   Y n*X dt|   k odk n  r| S td| jtrtd| j d} t|  } dt|   k odk n  r| S tdd S )Nasciir   @   zlabel empty or too longzLabel starts with ACE prefixpunycode)encoder   lenr   
startswithsace_prefix
ace_prefix)r   r   r   r   ToASCII>   s,    

r   c             C   s   t | trd}n,y| jd} d}W n tk
r:   d}Y nX |stt| } y| jd} W n tk
rr   tdY nX | jtst| dS | ttd  }|j	d}t
|}t| dj t|dkrtd| ||S )NTr   FzInvalid character in IDN labelr   zIDNA does not round-trip)
isinstancebytesr   r   r   r   r   strr   decoder   lower)r   Z
pure_asciiZlabel1resultZlabel2r   r   r   	ToUnicodei   s*    





r%   c               @   s    e Zd ZdddZdddZdS )	Codecstrictc             C   s  |dkrt d| |sdS y|jd}W n tk
r>   Y njX |jd}x8|d d D ](}dt|  k ordk n  sXt d	qXW t|d dkrt d
|t|fS t }tj|}|r|d  rd}|d= nd}x(|D ] }|r|jd |jt| qW t	|| t|fS )Nr'   zunsupported error handling     r   r      .r   r   zlabel empty or too longzlabel too long)r(   r   r   r   r   r   )
r   r   UnicodeEncodeErrorsplitr   	bytearraydotsextendr   r    )selfinputerrorsr$   labelsr   trailing_dotr   r   r   r      s4    



zCodec.encodec             C   s   |dkrt d| |sd	S t|ts.t|}t|kr^y|jdt|fS  tk
r\   Y nX |jd}|rt|d
 dkrd}|d= nd}g }x|D ]}|jt	| qW dj
|| t|fS )Nr'   zUnsupported error handling r   r   r   r)   r   .)r   r   r   r   )r   r   r    r   r"   r   UnicodeDecodeErrorr+   r   r%   r   )r/   r0   r1   r2   r3   r$   r   r   r   r   r"      s(    


zCodec.decodeN)r'   )r'   )__name__
__module____qualname__r   r"   r   r   r   r   r&      s   
%r&   c               @   s   e Zd Zdd ZdS )IncrementalEncoderc       	      C   s   |dkrt d| |sdS tj|}d}|rT|d sBd}|d	= n|sT|d
= |rTd}t }d}x<|D ]4}|r~|jd |d7 }|jt| |t|7 }qdW ||7 }|t|7 }t||fS )Nr'   zunsupported error handling r(   r   r   r)   )r(   r   r   r   r   )r   r-   r+   r,   r.   r   r   r    )	r/   r0   r1   finalr2   r3   r$   sizer   r   r   r   _buffer_encode   s2    


z!IncrementalEncoder._buffer_encodeN)r6   r7   r8   r<   r   r   r   r   r9      s   r9   c               @   s   e Zd Zdd ZdS )IncrementalDecoderc       	      C   s   |dkrt d| |sdS t|tr2tj|}nt|d}|jd}d}|rt|d	 sbd}|d
= n|st|d= |rtd}g }d}x2|D ]*}|jt| |r|d7 }|t|7 }qW dj|| }|t|7 }||fS )Nr'   zUnsupported error handling r   r   r   r4   r   )r   r   r   r   r   )	r   r   r!   r-   r+   r   r%   r   r   )	r/   r0   r1   r:   r2   r3   r$   r;   r   r   r   r   _buffer_decode   s6    



z!IncrementalDecoder._buffer_decodeN)r6   r7   r8   r>   r   r   r   r   r=      s   r=   c               @   s   e Zd ZdS )StreamWriterN)r6   r7   r8   r   r   r   r   r?   $  s   r?   c               @   s   e Zd ZdS )StreamReaderN)r6   r7   r8   r   r   r   r   r@   '  s   r@   c            	   C   s    t jdt jt jttttdS )NZidna)namer   r"   incrementalencoderincrementaldecoderstreamwriterstreamreader)	codecs	CodecInfor&   r   r"   r9   r=   r?   r@   r   r   r   r   getregentry,  s    rH   )r   rerF   r   r   compiler-   r   r   r   r   r%   r&   BufferedIncrementalEncoderr9   BufferedIncrementalDecoderr=   r?   r@   rH   r   r   r   r   <module>   s   
0+)H#'