a
ä”|jœS ã @ sæ g d ¢Z ddlZddlZddlZddlZddlmZ ddlmZm Z ddl
mZ ddlm
Z
dZdZe d ¡Ze d
ej¡Ze d¡Ze d¡ZG d
d„ dƒZG dd„ deƒZdZG dd„ deƒZeeejd ƒƒZde ZejZdS ))Ú GeneratorÚDecodedGeneratorÚBytesGeneratoré N)Údeepcopy)ÚStringIOÚBytesIO)Ú_has_surrogates)ÚHeaderWriteErrorÚ_Ú
z
\r\n|\r|\nz^From z\r\n[^ \t]|\r[^ \n\t]|\n[^ \t]s \r\n[^ \t]|\r[^ \n\t]|\n[^ \t]c @ s¬ e Zd Zd&ddœdd„Zdd„ Zd'dd „Zd
d„ Zdd
„ Zdd„ Zdd„ Z dd„ Z
dd„ Zdd„ Zdd„ Z
e
Zdd„ Zdd„ Zdd„ Zd d!„ Zed(d"d#„ƒZed$d%„ ƒZdS ))r N©Úpolicyc C s6 |d u r|d u rdn|j }|| _|| _|| _|| _d S )NT)Úmangle_from_Ú_fpÚ
_mangle_from_Úmaxheaderlenr
)ÚselfÚoutfpr r r
© r ú'/usr/lib64/python3.9/email/generator.pyÚ__init__' s zGenerator.__init__c C s | j |¡ d S ©N)r Úwrite©r Úsr r r r G s zGenerator.writeFc C sä | j d u r|j n| j }|d ur*|j|d}| jd urB|j| jd}|j| _| | j¡| _d| _| | j¡| _| j }|j }zX|| _ ||_ |r¸| ¡ }|s¨dt
t
¡ ¡ }| || j ¡ |
|¡ W || _ ||_ n|| _ ||_ 0 d S )N)Úlinesep©Zmax_line_lengthÚ zFrom nobody )r
Úcloner r Ú_NLÚ_encodeÚ_encoded_NLZ_EMPTYÚ_encoded_EMPTYZget_unixfromÚtimeÚctimer Ú_write)r ÚmsgÚunixfromr r
Zold_gen_policyZold_msg_policyZufromr r r ÚflattenK s0
ÿzGenerator.flattenc C s | j || jd | jdS ©Nr )Ú __class__r r
)r Úfpr r r r | s
ýzGenerator.clonec C s t ƒ S r )r ©r r r r Ú_new_buffer s zGenerator._new_bufferc C s |S r r r r r r r ” s zGenerator._encodec C sT |sd S t |¡}|d d… D ]}| |¡ | | j¡ q|d rP| |d ¡ d S )Néÿÿÿÿ)ÚNLCREÚsplitr r )r ÚlinesÚliner r r Ú_write_lines˜ s
zGenerator._write_linesc C sÐ | j }z2d | _| ¡ | _ }| |¡ W || _ | j}| `n|| _ | j}| `0 |r”t|ƒ}| d¡d u rt|d |d<