Viewing File: /opt/alt/python35/lib64/python3.5/email/__pycache__/quoprimime.cpython-35.opt-2.pyc



]&
@sdddddddddd	g
Zd
dlZd
dlmZmZmZd
ZdZdZdde	dDZ
e
ddZe
ddZx8dej
dej
dD]Zeeee<qWdeed<xdD]Zeeee<qWddZddZddZddZdddZd d	Zd!dZd"d#dZeddZxd$D]Zeeee<qWd%ed&dZed'dZeZeZd(d)Zd*dZdS)+body_decodebody_encodebody_lengthdecodedecodestring
header_decode
header_encode
header_lengthquoteunquoteN)
ascii_lettersdigits	hexdigitsz

cCsg|]}d|qS)z=%02X).0crr//opt/alt/python35/lib64/python3.5/quoprimime.py
<listcomp>7s	rs-!*+/ascii_ s_ !"#$%&'()*+,-./0123456789:;<>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~	cCst|t|kS)N)chr_QUOPRI_HEADER_MAP)octetrrrheader_checkJsrcCst|t|kS)N)r_QUOPRI_BODY_MAP)rrrr
body_checkOsrcCstdd|DS)Ncss|]}tt|VqdS)N)lenr)rrrrr	<genexpr>^sz header_length.<locals>.<genexpr>)sum)	bytearrayrrrrTs
cCstdd|DS)Ncss|]}tt|VqdS)N)r r)rrrrrr!hszbody_length.<locals>.<genexpr>)r")r#rrrrascCst|tst|}|s7|j|jnHt|dt||krl|d||7<n|j|jdS)Nr%)
isinstancestrrappendlstripr )Lsmaxlenextrarrr_max_appendks r.cCstt|dddS)Nr$)rint)r+rrrr
vscCstt|S)N)_QUOPRI_MAPord)rrrrr	{sz
iso-8859-1cCs0|s
dS|jdjt}d||fS)Nrlatin1z=?%s?q?%s?=)r	translater)Zheader_bytescharsetencodedrrrrss
Lc
Cs|dkrtd|s"|S|jt}d|}|d}g}|j}xv|jD]h}d}t|d|}	x||	kr)||}
||
ddkr||||
d|
d}q||
ddkr||||
|
d}q||||
d|
}qW|r|d
dkr||	}|dkrit|d}n1|dkr|d|}n|t|d
}|||d|qa|||dqaW|dtkr|d	|j|S)Nzmaxlinelen must be at least 4=r$rz 	r/rr%r%r%r%r%r%)	
ValueErrorr5_QUOPRI_BODY_ENCODE_MAPr(
splitlinesr r	CRLFjoin)
ZbodyZ
maxlineleneolZ
soft_breakZmaxlinelen1Zencoded_bodyr(linestartZ	laststartstopZroomqrrrrsD

	





cCsx|s
|Sd}x2|jD]$}|j}|sB||7}qd}t|}x||kr@||}|dkr||7}|d7}n|d|kr|d7}qWnw|d|kr||dtkr||dtkr|t|||d7}|d7}n||7}|d7}||krW||7}qWWqW|ddkrt|j|rt|dd	}|S)
Nrrr:r$r;r/z
r%r%)r>rstripr rr
endswith)r7rAZdecodedrBinrrrrrs8




8


cCs|jd}t|S)Nr)groupr
)matchr+rrr_unquote_matchsrLcCs.|jdd}tjdt|dtjS)Nrrz=[a-fA-F0-9]{2}flags)replaceresubrLASCII)r+rrrr#s) __all__rOstringrr
rr?NLZEMPTYSTRINGranger2rrencoderrr3rrrrr.r
r	rr=rrrrrLrrrrr<module>sN	'



O0
Back to Directory File Manager