/usr/lib64/python3.6/email/__pycache__
NameSizeModeActions
base64mime.cpython-36.opt-1.pyc32200644editdlrm
base64mime.cpython-36.opt-2.pyc14430644editdlrm
base64mime.cpython-36.pyc32200644editdlrm
charset.cpython-36.opt-1.pyc114760644editdlrm
charset.cpython-36.opt-2.pyc51410644editdlrm
charset.cpython-36.pyc115130644editdlrm
contentmanager.cpython-36.opt-1.pyc72900644editdlrm
contentmanager.cpython-36.opt-2.pyc72900644editdlrm
contentmanager.cpython-36.pyc72900644editdlrm
encoders.cpython-36.opt-1.pyc16420644editdlrm
encoders.cpython-36.opt-2.pyc12910644editdlrm
encoders.cpython-36.pyc16420644editdlrm
errors.cpython-36.opt-1.pyc63500644editdlrm
errors.cpython-36.opt-2.pyc47690644editdlrm
errors.cpython-36.pyc63500644editdlrm
feedparser.cpython-36.opt-1.pyc104920644editdlrm
feedparser.cpython-36.opt-2.pyc88270644editdlrm
feedparser.cpython-36.pyc106460644editdlrm
generator.cpython-36.opt-1.pyc132690644editdlrm
generator.cpython-36.opt-2.pyc95730644editdlrm
generator.cpython-36.pyc132690644editdlrm
header.cpython-36.opt-1.pyc164820644editdlrm
header.cpython-36.opt-2.pyc108580644editdlrm
header.cpython-36.pyc164820644editdlrm
headerregistry.cpython-36.opt-1.pyc212240644editdlrm
headerregistry.cpython-36.opt-2.pyc154530644editdlrm
headerregistry.cpython-36.pyc212800644editdlrm
iterators.cpython-36.opt-1.pyc19120644editdlrm
iterators.cpython-36.opt-2.pyc12900644editdlrm
iterators.cpython-36.pyc19120644editdlrm
message.cpython-36.opt-1.pyc379940644editdlrm
message.cpython-36.opt-2.pyc214020644editdlrm
message.cpython-36.pyc379940644editdlrm
parser.cpython-36.opt-1.pyc57270644editdlrm
parser.cpython-36.opt-2.pyc27070644editdlrm
parser.cpython-36.pyc57270644editdlrm
policy.cpython-36.opt-1.pyc96200644editdlrm
policy.cpython-36.opt-2.pyc34030644editdlrm
policy.cpython-36.pyc96200644editdlrm
quoprimime.cpython-36.opt-1.pyc76820644editdlrm
quoprimime.cpython-36.opt-2.pyc42050644editdlrm
quoprimime.cpython-36.pyc76820644editdlrm
utils.cpython-36.opt-1.pyc132070644editdlrm
utils.cpython-36.opt-2.pyc94270644editdlrm
utils.cpython-36.pyc132070644editdlrm
_encoded_words.cpython-36.opt-1.pyc55860644editdlrm
_encoded_words.cpython-36.opt-2.pyc37000644editdlrm
_encoded_words.cpython-36.pyc55860644editdlrm
_header_value_parser.cpython-36.opt-1.pyc761220644editdlrm
_header_value_parser.cpython-36.opt-2.pyc596310644editdlrm
_header_value_parser.cpython-36.pyc761740644editdlrm
_parseaddr.cpython-36.opt-1.pyc124990644editdlrm
_parseaddr.cpython-36.opt-2.pyc95390644editdlrm
_parseaddr.cpython-36.pyc124990644editdlrm
_policybase.cpython-36.opt-1.pyc152880644editdlrm
_policybase.cpython-36.opt-2.pyc60160644editdlrm
_policybase.cpython-36.pyc152880644editdlrm
__init__.cpython-36.opt-1.pyc16710644editdlrm
__init__.cpython-36.opt-2.pyc10620644editdlrm
__init__.cpython-36.pyc16710644editdlrm
Edit: /usr/lib64/python3.6/email/__pycache__/_encoded_words.cpython-36.pyc (5586B)
3 \F!@sdZddlZddlZddlZddlZddlmZmZddlm Z ddddd d d d gZ ej ej d j ddZddZGdddeZeZdeed<ddZdd ZddZddZdd ZeedZdd ZeedZeedZddd ZdS) z Routines for manipulating RFC2047 encoded words. This is currently a package-private API, but will be considered for promotion to a public API if there is demand. N) ascii_lettersdigits)errorsdecode_qencode_qdecode_bencode_blen_qlen_bdecodeencodes=([a-fA-F0-9]{2})cCstt|jddgS)N)bytesintgroup)mr,/usr/lib64/python3.6/email/_encoded_words.pyAsrcCs|jdd}t|gfS)N_ )replace_q_byte_subber)encodedrrrrCs c@s,eZdZdejdejdZddZdS) _QByteMaps-!*+/asciicCs.||jkrt|||<ndj|||<||S)Nz={:02X})safechrformat)selfkeyrrr __missing__Ms z_QByteMap.__missing__N)__name__ __module__ __qualname__rr rrr"rrrrrIsr_ cCsdjdd|DS)Ncss|]}t|VqdS)N) _q_byte_map).0xrrr Zszencode_q..)join)bstringrrrrYscCstdd|DS)Ncss|]}tt|VqdS)N)lenr))r*r+rrrr,]szlen_q..)sum)r.rrrr \scCst|d}|r ddd|nd}y$tj||dd|rDtjgngfStjk rytj|ddtjgfStjk ry"tj|dddtjtjgfStjk r|tjgfSXYnXYnXdS)Ns===T)ZvalidateFs==) r/base64Z b64decoderZInvalidBase64PaddingDefectbinasciiErrorZInvalidBase64CharactersDefectZInvalidBase64LengthDefect)rZpad_errZmissing_paddingrrrrds     cCstj|jdS)Nr)r3Z b64encoder )r.rrrrscCs&tt|d\}}|d|r dndS)Nr1r)divmodr/)r.Z groups_of_3Zleftoverrrrr s)qbc Cs|jd\}}}}}|jd\}}}|j}|jdd}t||\}}y|j|}Wnvtk r|jtj dj ||j|d}YnBt k r|jdd}|jdkr|jtj dj |YnX||||fS)aDecode encoded word and return (string, charset, lang, defects) tuple. An RFC 2047/2243 encoded word has the form: =?charset*lang?cte?encoded_string?= where '*lang' may be omitted but the other parts may not be. This function expects exactly such a string (that is, it does not check the syntax and may raise errors if the string is not well formed), and returns the encoded_string decoded first from its Content Transfer Encoding and then from the resulting bytes into unicode using the specified charset. If the cte-decoded string does not successfully decode using the specified character set, a defect is added to the defects list and the unknown octets are replaced by the unicode 'unknown' character \uFDFF. The specified charset and language are returned. The default for language, which is rarely if ever encountered, is the empty string. ?*rsurrogateescapez:Encoded word contains bytes not decodable using {} charsetz unknown-8bitzsB$    &+