\ d Z ddgZddlZddlZddlZddlmZmZ ddlm Z ddlm Z ddlmZm Z dd lmZ dd lmZ ej ZdZ ej d Zd ZddZd Zd Zd Z G d d Z G d de Z G d de ZdS )z8Basic message object for the email package object model.MessageEmailMessage N)BytesIOStringIO)utils)errors)Policycompat32charset)decode_bz; z[ \(\)<>@,;:\\"/\[\]\?=]c t | d \ }}}|s| d fS | | fS )N;)str partitionstrip)paramasepbs 4/opt/alt/python311/lib64/python3.11/email/message.py_splitparamr sX E $$S))IAsA wwyy$7799aggii Tc |t | dk rt |t r4| dz } t j |d |d |d }| d|S | d n2# t $ r% | dz } t j |dd }| d|cY S w xY w|st | r| d t j | dS | d|S | S )a~ Convenience function to format and return a key=value pair. This will quote the value if needed or if quote is true. If value is a three tuple (charset, language, value), it will be encoded according to RFC2231 rules. If it contains non-ascii characters it will likewise be encoded according to RFC2231 rules, using the utf-8 charset and a null language. Nr * =asciizutf-8 z="") len isinstancetupler encode_rfc2231encodeUnicodeEncodeError tspecialssearchquote)r valuer* s r _formatparamr, ' s# SZZ!^^ eU## 0SLE(q58U1XFFE#eeUU++ 0W%%%%% 0 0 0,UGR@@"'%%//// 0 ,I$$U++ , %u{5'9'9'9'9::#eeUU++s A6 6,B%$B%c dt | z } g }d}| d| |k rT|dz }| d| }|d}}|dk r]|| d|| | d|| z z }|dz dk rn!|| d|dz }}|dk ]|dk rt | }| d|| }|dk r| || }nQ| || dz | |dz | z }| | |}| d| |k T|S ) Nr r r r! z\"r r ) r findcountr" rstriplowerlstripappendr )spliststartendinddiffifs r _parseparamr= I s c!ffAE E &&e % % ffS% 1TAggAGGCc**QWWUC-E-EEEDax1}}AFF3a00C Agg 77a&&C FF3s##77%)AA%' !!##))++c1Aac#gJ4E4E4G4GGA QWWYY# &&e % %$ Lr c t | t r)| d | d t j | d fS t j | S )Nr r r )r# r$ r unquote)r+ s r _unquotevaluer@ c sI % $Qxq5=q#:#:::}U###r c g }t | }|D ]g}| d rP| d d \ }}} t |d n # t $ r Y cw xY wht d |D ]}|st d | d dk r nt t j | }nH# t j $ r6 |d d z dz dz d z dz }t j |d| }Y nw xY w| | d | S )zDecode uuencoded data.s begin )basez`begin` line not foundzTruncated inputs s endr ? Nr ) iter splitlines startswithremoveprefixr int ValueErrorr binasciia2b_uuErrorr4 join) encoded decoded_linesencoded_lines_iterlinemode_pathdecoded_linenbytess r _decode_uur] n s Mg002233" 3 3??9%% --i88BB4HHMD!T Dq!!!! 1222" + + ./// ZZ % % / /E :#?400LL~ : : :Q b(A-1a7F#?4=99LLL : \****88M"""s% *A== B B C##AD('D(c V e Zd ZdZefdZd Zd7dZd Zd8d Z d Z d Zd Zd Z d9dZd:dZd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd:dZd Zd Zd:dZd Zd Z d! Z!d" Z"d# Z#d$ Z$d% Z%d&