Viewing File: /opt/alt/python38/lib/python3.8/site-packages/idna/__pycache__/core.cpython-38.opt-1.pyc

U

'X~,@s>ddlmZddlZddlZddlZddlZddlmZdZdZ	e
dZejddkr`e
ZeZGd	d
d
eZGdddeZGd
ddeZGdddeZddZddZddZddZddZddZd7ddZd d!Zd"d#Zd$d%Zd&d'Z d8d(d)Z!d*d+Z"d,d-Z#d.d/Z$d9d1d2Z%d:d3d4Z&d;d5d6Z'dS)<)idnadataN)intranges_contain	sxn--u[.。.。]c@seZdZdZdS)	IDNAErrorz7 Base exception for all IDNA-encoding related problems N__name__
__module____qualname____doc__r
r
:/opt/alt/python38/lib/python3.8/site-packages/idna/core.pyrsrc@seZdZdZdS)
IDNABidiErrorz= Exception when bidirectional requirements are not satisfied Nrr
r
r
rrsrc@seZdZdZdS)InvalidCodepointz> Exception when a disallowed or unallocated codepoint is used Nrr
r
r
rrsrc@seZdZdZdS)InvalidCodepointContextzE Exception when the codepoint is not valid in the context it is used Nrr
r
r
rrsrcCstt|SN)unicodedataZ	combiningunichr)cpr
r
r_combining_class$srcCstt|tj|Sr)rordrZscripts)rZscriptr
r
r
_is_script'srcCs
|dS)Npunycode)encodesr
r
r	_punycode*srcCs
d|S)Nz	U+{0:04X})formatrr
r
r_unot-srcCst|dkrdSdS)N?FTlenlabelr
r
rvalid_label_length1sr%cCst||rdndkrdSdS)NFTr!)r$trailing_dotr
r
rvalid_string_length8sr)Fc	Csbd}t|dD]>\}}t|}|dkr<tdt|||dkrd}qNq|sZ|sZdSt|d}|dkrvd}n |d	krd}ntd
t|d}d}t|dD]\}}t|}|r|dkrtd||d
krd}n|dkrd}|dkrN|s|}n||krNtdq|dkr2td||dkrBd}q|dkrd}q|s^tddS)NFrz3Unknown directionality in label {0} at position {1})RALANTr)r+r,Lz>First codepoint in label {0} must be directionality L, R or AL)
r+r,r-ENESCSETONBNNSMzHInvalid direction for codepoint at position {0} in a right-to-left label)r+r,r/r-r5)r-r/z2Can not mix numeral types in a right-to-left label)r.r/r0r1r2r3r4r5zHInvalid direction for codepoint at position {0} in a left-to-right label)r.r/z0Label ends with illegal codepoint directionality)	enumeraterZ
bidirectionalrrrepr)	r$Z	check_ltrZ
bidi_labelidxr	directionZrtlZvalid_endingZnumber_typer
r
r
check_bidi?sR






r:cCs"t|dddkrtddS)NrMz0Label begins with an illegal combining characterT)rcategoryrr#r
r
rcheck_initial_combiner|sr=cCs<|dddkrtd|ddks0|ddkr8tdd	S)
Nz--z4Label has disallowed hyphens in 3rd and 4th positionr-z)Label must not start or end with a hyphenT)rr#r
r
rcheck_hyphen_oks
rBcCstd||krtddS)NNFCz%Label must be in Normalization Form C)r	normalizerr#r
r
r	check_nfcsrEcCs4t||}|dkr|dkr8tt||dtkr8dSd}t|dddD]B}tjt||}|tdkrrqL|tdtd	fkrLd}qqL|sdSd}t|dt|D]B}tjt||}|tdkrq|td
td	fkrd}qq|S|dkr,|dkr(tt||dtkr(dSdSdSdS)Ni rrTFrATr.Dr+i
 )rr_virama_combining_classrangerZ
joining_typesgetr")r$poscp_valueokiZjoining_typer
r
rvalid_contextjs<

rOcCst||}|dkrdd|kr0t|dkr`nn,t||ddkr`t||ddkr`dSdS|dkr|t|dkrt|dkrt||ddSdS|d	ks|d
kr|dkrt||ddSdS|dkr|D]6}|d
krqt|ds
t|ds
t|drdSqdSd|kr.dkrhnn6|D],}dt|krVdkr6nndSq6dSd|krdkrnn6|D],}dt|krdkrnndSqdSdS)NrrlTFiuZGreekiiZHebrewi0u・ZHiraganaZKatakanaZHani`iiii)rr"r)r$rKZ	exceptionrLrr
r
rvalid_contextos> (
" 
 
rRcCst|ttfr|d}t|dkr,tdt|t|t|t	|D]\}}t
|}t|tj
drpqLqLt|tj
drt||stdt||dt|qLt|tj
drt||std	t||dt|qLtd
t||dt|qLt|dS)Nzutf-8rzEmpty LabelZPVALIDZCONTEXTJz-Joiner {0} not allowed at position {1} in {2}rZCONTEXTO0Codepoint {0} not allowed at position {1} in {2}z0Codepoint {0} at position {1} of {2} not allowed)
isinstancebytes	bytearraydecoder"rrErBr=r6rrrZcodepoint_classesrOrrrr7rRrr:)r$rKrrLr
r
rcheck_labels&

 
  rXcCszP|d}zt|Wn"tk
r:td|YnXt|sLtd|WStk
rdYnX|srtdt|}t|t|}t	|}t|std|S)Nasciiz$The label {0} is not a valid A-labelzLabel too longzNo Input)
rulabelrrr%UnicodeEncodeErrorunicoderXr_alabel_prefixr#r
r
ralabels(
r^cCst|ttfs>z|d}Wn tk
r<t||YSX|}|trb|t	td}nt||
dS|
d}t||S)NrYr)rTrUrVrr[rXlower
startswithr]r"rWr#r
r
rrZs



rZTc
Cs(ddlm}d}zt|D]\}}t|}||dkr8|nt||dfd}|d}	t|dkrj|dnd}
|	d	ks|	d
kr|r|	dkr|r|
dkr||7}q|
dk	r|	dks|	dkr|s|	d
kr|r||
7}q|	d
krtqtd|WStk
r"t	d
t||dt|YnXdS)zBRe-map the characters in the string according to UTS46 processing.r)	uts46datar*Zrr>NVrG3r;IrCrS)
rar6rbisectZbisect_leftr"
IndexErrorrrDrrrr7)Zdomain
std3_rulestransitionalraoutputrKcharZ
code_pointZuts46rowZstatusZreplacementr
r
ruts46_remap3sV

rmc	Cst|ttfr|d}|r(t|||}d}g}|r@|d}n
t|}|r^|ds^|d=qJ|sjtd|ddkr|d=d}|D]}|t	|q|r|d	d

|}t||std|S)NrYF.rEmpty domainrAr*T.zDomain too long)rTrUrVrWrmsplit_unicode_dots_rerappendr^joinr))	rstrictuts46rirjr(resultlabelsr$r
r
rrOs0




rcCst|ttfr|d}|r(t||d}d}g}|s@t|}n
|d}|r^|ds^|d=qJ|sjtd|ds||d=d}|D]}|t	|q|r|dd
|S)	NrYFrnrrorATr*)rTrUrVrWrmrsrrrrtrZru)rrvrwrir(rxryr$r
r
rrWls*


rW)F)F)TF)FFFF)FFF)(r*rrgrresysZ	intrangesrrHr]compilersversion_infostrr\chrrUnicodeErrorrrrrrrrrr%r)r:r=rBrErOrRrXr^rZrmrrWr
r
r
r<module>sB

=	,
)


Back to Directory File Manager