Sindbad~EG File Manager

Current Path : /home/infinitibizsol/mypythonenv/lib/python3.6/site-packages/idna/__pycache__/
Upload File :
Current File : /home/infinitibizsol/mypythonenv/lib/python3.6/site-packages/idna/__pycache__/core.cpython-36.pyc

3

,Ĝg�3�@sddlZddlZddlZddlmZmZddlmZddlm	Z	dZ
dZejd�Z
Gd	d
�d
e�ZGdd�de�ZGd
d�de�ZGdd�de�Zeed�dd�Zeeed�dd�Zeed�dd�Zeed�dd�Zeeefed�dd�Zeeefeed�d d!�ZdBeeed#�d$d%�Zeed�d&d'�Zeed�d(d)�Zedd�d*d+�Z eeed,�d-d.�Z!dCeeeed/�d0d1�Z"eeee#fdd�d2d3�Z$eed�d4d5�Z%eeee#fed�d6d7�Z&dDeeeed9�d:d;�Z'dEeeee#feeeeed<�d=d>�Z(dFeeee#feeeed?�d@dA�Z)dS)G�N)�Optional�Union�)�idnadata)�intranges_contain�	sxn--u[.。.。]c@seZdZdZdS)�	IDNAErrorz5Base exception for all IDNA-encoding related problemsN)�__name__�
__module__�__qualname__�__doc__�r
r
�)/tmp/pip-build-fsllo_ck/idna/idna/core.pyrsrc@seZdZdZdS)�
IDNABidiErrorz;Exception when bidirectional requirements are not satisfiedN)r	r
rrr
r
r
rrsrc@seZdZdZdS)�InvalidCodepointz<Exception when a disallowed or unallocated codepoint is usedN)r	r
rrr
r
r
rrsrc@seZdZdZdS)�InvalidCodepointContextzCException when the codepoint is not valid in the context it is usedN)r	r
rrr
r
r
rr sr)�cp�returncCs0tjt|��}|dkr,tjt|��s,td��|S)Nrz Unknown character in unicodedata)�unicodedata�	combining�chr�name�
ValueError)r�vr
r
r�_combining_class&s
r)r�scriptrcCstt|�tj|�S)N)r�ordr�scripts)rrr
r
r�
_is_script.sr)�srcCs
|jd�S)N�punycode)�encode)rr
r
r�	_punycode2sr"cCs
dj|�S)NzU+{:04X})�format)rr
r
r�_unot6sr$)�labelrcCst|�dkrdSdS)N�?FT)�len)r%r
r
r�valid_label_length:sr()r%�trailing_dotrcCst|�|rdndkrdSdS)N��FT)r')r%r)r
r
r�valid_string_length@sr,F)r%�	check_ltrrc	Csnd}xHt|d�D]:\}}tj|�}|dkr>tdjt|�|���|dkrd}qW|r^|r^dStj|d	�}|dkrzd}n |d
kr�d}ntdjt|����d}d}x�t|d�D]�\}}tj|�}|�r$|dkr�tdj|���|dk�r�d}n|dk�r�d}|dk�rX|�s|}n||k�rXtd��q�|dk�r<tdj|���|dk�rLd}q�|dkr�d}q�W|�sjtd��dS)NFr�z1Unknown directionality in label {} at position {}�R�AL�ANTr�Lz=First codepoint in label {} must be directionality L, R or AL�EN�ES�CS�ET�ON�BN�NSMzGInvalid direction for codepoint at position {} in a right-to-left labelz2Can not mix numeral types in a right-to-left labelzGInvalid direction for codepoint at position {} in a left-to-right labelz0Label ends with illegal codepoint directionality)r/r0r1)r/r0)
r/r0r1r3r4r5r6r7r8r9)r/r0r3r1)r1r3)r2r3r4r5r6r7r8r9)r2r3)�	enumerater�
bidirectionalrr#�repr)	r%r-�
bidi_label�idxr�	direction�rtl�valid_ending�number_typer
r
r�
check_bidiFsd








rCcCs"tj|d�ddkrtd��dS)Nr�Mz0Label begins with an illegal combining characterT)r�categoryr)r%r
r
r�check_initial_combiner�srFcCs<|dd�dkrtd��|ddks0|d
dkr8td��d	S)N��z--z4Label has disallowed hyphens in 3rd and 4th positionr�-rz)Label must not start or end with a hyphenT���)r)r%r
r
r�check_hyphen_ok�s
rKcCstjd|�|krtd��dS)N�NFCz%Label must be in Normalization Form C)r�	normalizer)r%r
r
r�	check_nfc�srN)r%�posrcCsHt||�}|dk�r
|dkr:tt||d��tkr:dSd}xZt|ddd�D]F}tjjt||��}|td�krxqPqP|td�td�gkr�d}PqPPqPW|s�dSd}x^t|dt|��D]H}tjjt||��}|td�kr�q�q�|td	�td�gk�rd}Pq�Pq�W|S|d
k�r@|dk�r<tt||d��tk�r<dSdSdSdS)
Ni rrTF�Tr2�Dr/i
 rJrJ)rr�_virama_combining_class�ranger�
joining_types�getr')r%rO�cp_value�ok�i�joining_typer
r
r�valid_contextj�s@


rZ)r%rO�	exceptionrcCs�t||�}|dkrdd|ko.t|�dknr`t||d�dkr`t||d�dkr`dSdS|dkr�|t|�dkr�t|�dkr�t||dd�SdS|d	ks�|d
kr�|dkr�t||dd�SdS|dk�rx<|D]4}|d
kr�q�t|d��st|d��st|d�r�dSq�WdSd|k�o,dkn�rlx2|D]*}dt|�k�oVdkn�r:dS�q:WdSd|k�o�dkn�r�x2|D]*}dt|�k�o�dkn�r�dS�q�WdSdS)N�rr�lTFiu�Greeki�i��Hebrewi�0u・�Hiragana�Katakana�Hani`iii�i�)rr'r)r%rOr[rVrr
r
r�valid_contexto�s@ (

"
 

 
rcc
CsRt|ttf�r|jd�}t|�dkr,td��t|�t|�t|��x�t	|�D]�\}}t
|�}t|tj
d�rtqPqPt|tj
d�r�y,t||�s�tdjt|�|dt|����Wn2tk
r�tdjt|�|dt|����YnXqPt|tj
d	��r$t||��sBtd
jt|�|dt|����qPtdjt|�|dt|����qPWt|�dS)Nzutf-8rzEmpty Label�PVALID�CONTEXTJz*Joiner {} not allowed at position {} in {}rz<Unknown codepoint adjacent to joiner {} at position {} in {}�CONTEXTOz-Codepoint {} not allowed at position {} in {}z-Codepoint {} at position {} of {} not allowed)�
isinstance�bytes�	bytearray�decoder'rrNrKrFr:rrr�codepoint_classesrZrr#r$r<rrcrrC)r%rOrrVr
r
r�check_label�s6

   rlcCsdy&|jd�}t|�t|�s$td��|Stk
r:YnXt|�tt|�}t|�s`td��|S)N�asciizLabel too long)r!�ulabelr(r�UnicodeEncodeErrorrl�_alabel_prefixr")r%�label_bytesr
r
r�alabels
rrcCs�t|ttf�s<y|jd�}Wq@tk
r8t|�|SXn|}|j�}|jt�r�|t	t�d�}|snt
d��|jd�ddkr�t
d��nt|�|jd�Sy|jd�}Wntk
r�t
d��YnXt|�|S)	Nrmz5Malformed A-label, no Punycode eligible content foundrrIz"A-label must not end with a hyphenr zInvalid A-labelrJ)
rgrhrir!rorl�lower�
startswithrpr'rrj�UnicodeError)r%rqr
r
rrn/s,


rnT)�domain�
std3_rules�transitionalrc
Cs4ddlm}d}�xt|�D�]\}}t|�}y�||dkr>|ntj||df�d}|d}	d}
t|�dkrt|d}
|	d	ks�|	d
kr�|s�|	dkr�|r�|
dkr�||7}nB|
dk	r�|	dks�|	dkr�|s�|	d
kr�|r�||
7}n|	d
kr�t��Wqtk
�r"tdjt	|�|dt
|����YqXqWtjd|�S)zBRe-map the characters in the string according to UTS46 processing.r)�	uts46datar.��ZN�rG�VrQ�3rD�Iz-Codepoint {} not allowed at position {} in {}rL)
ryr:r�bisect�bisect_leftr'�
IndexErrorrr#r$r<rrM)rvrwrxry�outputrO�char�
code_point�uts46row�status�replacementr
r
r�uts46_remapLs.$
"

&r�)r�strict�uts46rwrxrc	Cs�t|t�s6yt|d�}Wntk
r4td��YnX|rFt|||�}d}g}|r^|jd�}n
tj|�}|sx|dgkr�td��|d
dkr�|d=d}x,|D]$}t|�}|r�|j|�q�td	��q�W|r�|jd
�dj	|�}t
||�s�td��|S)NrmzGshould pass a unicode string to the function rather than a byte string.F�.r.zEmpty domainrTzEmpty label��.zDomain too longrJrJ)rg�str�UnicodeDecodeErrorrr��split�_unicode_dots_rerr�append�joinr,)	rr�r�rwrxr)�result�labelsr%r
r
rr!ns8





r!)rr�r�rwrcCs�yt|t�st|d�}Wntk
r4td��YnX|rFt||d�}d}g}|s^tj|�}n
|jd�}|sx|dgkr�td��|d
s�|d=d}x,|D]$}t|�}|r�|j|�q�td	��q�W|r�|jd�dj	|�S)NrmzInvalid ASCII in A-labelFr�r.zEmpty domainrTzEmpty labelrJrJ)
rgr�r�rr�r�r�rnr�r�)rr�r�rwr)r�r�r%r
r
rrj�s2



rj)F)F)TF)FFFF)FFF)*r��rer�typingrrr.r�	intrangesrrRrp�compiler�rurrrr�intrr��boolrrhr"r$r(r,rCrFrKrNrZrcrirlrrrnr�r!rjr
r
r
r�<module>sJ
F,*'$#

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