Ë
    òT•j\)  ã                   óF  — d dl Z d dlZd dlZd dlZd dlmZ  G d„ d«      Z e«       Zdd„Zej                  de«       d„ Z
dj                  «       D ]  Zej                  ee
«       Œ [d	„ Zd
j                  «       D ]  Zej                  dez   e«       Œ [d„ Zej                  de«       d„ Zd„ Zd„ Zd„ Z	 	 	 dd„Zej+                  ee«       	 	 	 dd„Zej+                  ej0                  j2                  e«       	 	 	 dd„ZeeefD ]  Zej+                  ee«       Œ [y)é    N)Ú
quoprimimec                   ó0   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zy)ÚContentManagerc                 ó    — i | _         i | _        y ©N)Úget_handlersÚset_handlers)Úselfs    ú+/usr/lib/python3.12/email/contentmanager.pyÚ__init__zContentManager.__init__	   s   € ØˆÔØˆÕó    c                 ó"   — || j                   |<   y r   )r   )r
   ÚkeyÚhandlers      r   Úadd_get_handlerzContentManager.add_get_handler   s   € Ø!(ˆ×Ñ˜#Òr   c                 óB  — |j                  «       }|| j                  v r | j                  |   |g|¢­i |¤ŽS |j                  «       }|| j                  v r | j                  |   |g|¢­i |¤ŽS d| j                  v r | j                  d   |g|¢­i |¤ŽS t        |«      ‚)NÚ )Úget_content_typer   Úget_content_maintypeÚKeyError)r
   ÚmsgÚargsÚkwÚcontent_typeÚmaintypes         r   Úget_contentzContentManager.get_content   s¹   € Ø×+Ñ+Ó-ˆØ˜4×,Ñ,Ñ,Ø2�4×$Ñ$ \Ñ2°3ÐD¸ÒDÀÑDÐDØ×+Ñ+Ó-ˆØ�t×(Ñ(Ñ(Ø.�4×$Ñ$ XÑ.¨sÐ@°TÒ@¸RÑ@Ð@Ø�×"Ñ"Ñ"Ø(�4×$Ñ$ RÑ(¨Ð:¨tÒ:°rÑ:Ð:Ü�|Ó$Ð$r   c                 ó"   — || j                   |<   y r   )r	   )r
   Útypekeyr   s      r   Úadd_set_handlerzContentManager.add_set_handler   s   € Ø%,ˆ×Ñ˜'Ò"r   c                 óž   — |j                  «       dk(  rt        d«      ‚| j                  ||«      }|j                  «         |||g|¢­i |¤Ž y )NÚ	multipartz"set_content not valid on multipart)r   Ú	TypeErrorÚ_find_set_handlerÚclear_content)r
   r   Úobjr   r   r   s         r   Úset_contentzContentManager.set_content   sS   € Ø×#Ñ#Ó%¨Ò4ô Ð@ÓAÐAØ×(Ñ(¨¨cÓ2ˆØ×ÑÔÙ��SÐ&˜4Ò& 2Ó&r   c                 ó  — d }t        |«      j                  D ]¾  }|| j                  v r| j                  |   c S |j                  }t	        |dd«      }|rdj                  ||f«      n|}|€|}|| j                  v r| j                  |   c S || j                  v r| j                  |   c S |j                  }|| j                  v sŒ¯| j                  |   c S  d | j                  v r| j                  d    S t        |«      ‚)NÚ
__module__r   ú.)ÚtypeÚ__mro__r	   Ú__qualname__ÚgetattrÚjoinÚ__name__r   )	r
   r   r%   Úfull_path_for_errorÚtypÚqnameÚmodnameÚ	full_pathÚnames	            r   r#   z ContentManager._find_set_handler'   s  € Ø"ÐÜ˜“9×$Ñ$ò 	/ˆCØ�d×'Ñ'Ñ'Ø×(Ñ(¨Ñ-Ò-Ø×$Ñ$ˆEÜ˜c <°Ó4ˆGÙ6=˜Ÿ™ '¨5Ð!1Ô2À5ˆIØ"Ð*Ø&/Ð#Ø˜D×-Ñ-Ñ-Ø×(Ñ(¨Ñ3Ò3Ø˜×)Ñ)Ñ)Ø×(Ñ(¨Ñ/Ò/Ø—<‘<ˆDØ�t×(Ñ(Ò(Ø×(Ñ(¨Ñ.Ò.ð	/ð �4×$Ñ$Ñ$Ø×$Ñ$ TÑ*Ð*ÜÐ*Ó+Ð+r   N)	r/   r(   r,   r   r   r   r   r&   r#   © r   r   r   r      s    „ òò)ò	%ò-ò'ó,r   r   c                 óp   — | j                  d¬«      }| j                  dd«      }|j                  ||¬«      S )NT©ÚdecodeÚcharsetÚASCII)Úerrors)Úget_payloadÚ	get_paramr9   )r   r<   Úcontentr:   s       r   Úget_text_contentr@   @   s5   € Ø�o‰o TˆoÓ*€GØ�m‰m˜I wÓ/€GØ�>‰>˜'¨&ˆ>Ó1Ð1r   Útextc                 ó&   — | j                  d¬«      S )NTr8   ©r=   ©r   s    r   Úget_non_text_contentrE   G   s   € Ø�?‰? $ˆ?Ó'Ð'r   zaudio image video applicationc                 ó$   — | j                  d«      S ©Nr   rC   rD   s    r   Úget_message_contentrH   N   s   € Ø�?‰?˜1ÓÐr   zrfc822 external-bodyzmessage/c                 ó6   — t        | j                  d«      «      S rG   )Úbytesr=   rD   s    r   Ú%get_and_fixup_unknown_message_contentrK   U   s   € ô �—‘ Ó#Ó$Ð$r   Úmessagec                 óæ  — dj                  ||f«      | d<   |rzt        |d   d«      s8| j                  }|D �cg c]!  } |j                  |j	                  |g«      Ž ‘Œ# }}	 |D ],  }|j
                  r|j
                  d   ‚|| |j                  <   Œ. y y c c}w # t        j                  j                  $ r:}t        dj                  j                  | j                  ¬«      «      «      |‚d }~ww xY w)Nú/zContent-Typer   r5   zInvalid header: {})Úpolicy)r.   ÚhasattrrO   Úheader_factoryÚheader_source_parseÚdefectsr5   Úemailr<   ÚHeaderDefectÚ
ValueErrorÚformatÚfold)r   r   ÚsubtypeÚheadersÚmpÚheaderÚexcs          r   Ú_prepare_setr^   a   sÿ   € ØŸ(™( H¨gÐ#6Ó7€CˆÑÙÜ�w˜q‘z 6Ô*Ø—‘ˆBà%,ö.Ø!ð )�r×(Ñ(¨"×*@Ñ*@À&ÀÓ*JÒKð .ˆGð .ð	JØ!ò *�Ø—>’>Ø Ÿ.™.¨Ñ+Ð+Ø#)��F—K‘KÒ ñ*ð ùò.øô �|‰|×(Ñ(ò 	JÜÐ1×8Ñ8Ø &§¡°3·:±: Ó >ó@ó AØFIðJûð	Jús   ¸&BÁ!1B ÂC0Â65C+Ã+C0c                 ó´   — |€|�d}|�|| d<   |�| j                  d|dd¬«       |�|| d<   |�+|j                  «       D ]  \  }}| j                  ||«       Œ y y )NÚ
attachmentzContent-DispositionÚfilenameT)r\   Úreplacez
Content-ID)Ú	set_paramÚitems)r   Údispositionra   ÚcidÚparamsr   Úvalues          r   Ú_finalize_setri   r   sˆ   € ØÐ˜xÐ3Ø"ˆØÐØ%0ˆÐ!Ñ"ØÐØ�‰�jØØ2Ø"ð 	ô 	$ð €ØˆˆLÑØÐØ Ÿ,™,›.ò 	&‰JˆC�Ø�M‰M˜#˜uÕ%ñ	&ð r   c                 óä   — g }|dz  dz  }t        dt        | «      |«      D ]=  }| |||z    }|j                  t        j                  |«      j                  d«      «       Œ? dj                  |«      S )Né   é   r   Úasciir   )ÚrangeÚlenÚappendÚbinasciiÚ
b2a_base64r9   r.   )ÚdataÚmax_line_lengthÚencoded_linesÚunencoded_bytes_per_lineÚiÚthislines         r   Ú_encode_base64ry   ‡   s}   € Ø€MØ.°!Ñ3°aÑ7ÐÜ�1”c˜$“iÐ!9Ó:ò LˆØ˜˜!Ð4Ñ4Ð5ˆØ×ÑœX×0Ñ0°Ó:×AÑAÀ'ÓJÕKðLð �7‰7�=Ó!Ð!r   c                 óì  ‡— | j                  |«      j                  «       }|j                  j                  d«      Šˆfd„}d„ }|€¸t        d„ |D «       d¬«      |j                  k  r	 d ||«      j                  d«      fS  ||d d
 «      }t        j                  |j                  d«      |j                  «      }t        j                  |«      }	t        |«      t        |	«      kD  rd}nd}t        |«      d
k  r||fS |dk(  r ||«      j                  d«      }
||
fS |dk(  r ||«      j                  dd	«      }
||
fS |dk(  r9t        j                   ||«      j                  d«      |j                  «      }
||
fS |dk(  r t         ||«      |j                  «      }
||
fS t        dj                  |«      «      ‚# t        $ r Y nw xY w|j                  dk(  s�Œ[d ||«      j                  dd	«      fS )Nrm   c                 ó,   •— ‰j                  | «      ‰z   S r   ©r.   )ÚlinesÚlineseps    €r   Úembedded_bodyz#_encode_text.<locals>.embedded_body“   s   ø€  W§\¡\°%Ó%8¸7Ñ%BÐBr   c                 ó*   — dj                  | «      dz   S )Nó   
r|   )r}   s    r   Únormal_bodyz!_encode_text.<locals>.normal_body”   s   €  5§:¡:¨eÓ#4°uÑ#<Ð<r   c              3   ó2   K  — | ]  }t        |«      –— Œ y ­wr   )ro   )Ú.0Úxs     r   ú	<genexpr>z_encode_text.<locals>.<genexpr>—   s   è ø€ Ò&˜1”�A—Ñ&ùs   ‚r   )ÚdefaultÚ7bitÚ8bitÚsurrogateescapeé
   zlatin-1Úbase64úquoted-printablez$Unknown content transfer encoding {})ÚencodeÚ
splitlinesr~   Úmaxrt   r9   ÚUnicodeDecodeErrorÚcte_typer   Úbody_encoderq   rr   ro   ry   rV   rW   )Ústringr:   ÚcterO   r}   r   r‚   ÚsniffÚsniff_qpÚsniff_base64rs   r~   s              @r   Ú_encode_textr™   �   s  ø€ Ø�M‰M˜'Ó"×-Ñ-Ó/€EØ�n‰n×#Ñ# GÓ,€GÜBÚ<Ø
€{äÑ& Ô&°Ô2°f×6LÑ6LÒLðØ™{¨5Ó1×8Ñ8¸ÓAÐAÐAñ
 ˜e C R˜jÓ)ˆÜ×)Ñ)¨%¯,©,°yÓ*AØ*0×*@Ñ*@óBˆä×*Ñ*¨5Ó1ˆäˆx‹=œ3˜|Ó,Ò,Ø‰Cà$ˆCÜ�5‹z˜RÒØ˜H�}Ð$Ø
ˆf‚}Ù˜5Ó!×(Ñ(¨Ó1ˆð �ˆ9Ðð 
�ŠÙ˜5Ó!×(Ñ(¨Ð2CÓDˆð �ˆ9Ðð 
Ð"Ò	"Ü×%Ñ%¡k°%Ó&8×&?Ñ&?À	Ó&JØ&,×&<Ñ&<ó>ˆð �ˆ9Ðð	 
�ŠÜ™m¨EÓ2°F×4JÑ4JÓKˆð �ˆ9Ðô Ð?×FÑFÀsÓKÓLÐLøô3 &ò Ùðúà�‰ &Ô(Ø™{¨5Ó1×8Ñ8¸ÐBSÓTÐTÐTs   Á(F< Æ<	GÇGc
                 ó  — t        | d||	«       t        |||| j                  «      \  }}
| j                  |
«       | j	                  dt
        j                  j                  j                  ||«      d¬«       || d<   t        | ||||«       y )NrA   r:   T©rb   úContent-Transfer-Encoding)
r^   r™   rO   Úset_payloadrc   rT   r:   ÚALIASESÚgetri   )r   r”   rY   r:   r•   re   ra   rf   rg   rZ   Úpayloads              r   Úset_text_contentr¡   ·   sƒ   € ô ��f˜g wÔ/Ü ¨°°c·j±jÓA�L€CˆØ‡O�O�GÔØ‡M�M�)Ü—-‘-×'Ñ'×+Ñ+¨G°WÓ=Øð ô  ð (+€CÐ#Ñ$Ü�#�{ H¨c°6Õ:r   c	                 ó4  — |dk(  rt        d«      ‚|dk(  r%|dvrt        dj                  |«      «      ‚|€dn|}n*|dk(  r!|dvrt        d	j                  |«      «      ‚d
}n|€d
}t        | d||«       | j                  |g«       || d<   t	        | ||||«       y )NÚpartialz4message/partial is not supported for Message objectsÚrfc822)Nrˆ   r‰   Úbinaryz*message/rfc822 parts do not support cte={}r‰   zexternal-body)Nrˆ   z1message/external-body parts do not support cte={}rˆ   rL   rœ   )rV   rW   r^   r�   ri   )	r   rL   rY   r•   re   ra   rf   rg   rZ   s	            r   Úset_message_contentr¦   Å   sÈ   € ð �)ÒÜÐOÓPÐPØ�(ÒØÐ6Ñ6äØ<×CÑCÀCÓHóJð Jð ˜‰f¨‰Ø	�OÒ	#Ø�nÑ$äØC×JÑJÈ3ÓOóQð Qà‰Ø	ˆð ˆÜ��i ¨'Ô2Ø‡O�O�W�IÔØ'*€CÐ#Ñ$Ü�#�{ H¨c°6Õ:r   c
                 ór  — t        | |||	«       |dk(  r"t        || j                  j                  ¬«      }n]|dk(  r+t	        j
                  |ddd¬«      }|j                  d«      }n-|dk(  r|j                  d«      }n|d	v r|j                  dd
«      }| j                  |«       || d<   t        | ||||«       y )NrŒ   )rt   r�   FT)Úistextr\   Ú	quotetabsrm   rˆ   )r‰   r¥   rŠ   rœ   )	r^   ry   rO   rt   rq   Úb2a_qpr9   r�   ri   )
r   rs   r   rY   r•   re   ra   rf   rg   rZ   s
             r   Úset_bytes_contentr«   æ   s²   € ô ��h ¨Ô1Ø
ˆh‚Ü˜d°C·J±J×4NÑ4NÔO‰Ø	Ð"Ò	"ô �‰˜t¨E¸%È4ÔPˆØ�{‰{˜7Ó#‰Ø	�ŠØ�{‰{˜7Ó#‰Ø	Ð"Ñ	"Ø�{‰{˜7Ð$5Ó6ˆØ‡O�O�DÔØ'*€CÐ#Ñ$Ü�#�{ H¨c°6Õ:r   r›   )Úplainzutf-8NNNNNN)r¤   NNNNNN)rŒ   NNNNN)rq   Úemail.charsetrT   Úemail.messageÚemail.errorsr   r   Úraw_data_managerr@   r   rE   Úsplitr   rH   rY   rK   r^   ri   ry   r™   r¡   r   Ústrr¦   rL   ÚMessager«   rJ   Ú	bytearrayÚ
memoryviewr1   r6   r   r   ú<module>r¶      sn  ðÛ Û Û Û Ý ÷3,ñ 3,ñl "Ó#Ð ó2ð ×  Ñ   Ð)9Ô :ò(à/×5Ñ5Ó7ò E€HØ×$Ñ$ XÐ/CÕDðEàòà%×+Ñ+Ó-ò N€GØ×$Ñ$ Z°Ñ%7Ð9LÕMðNàò%ð ×  Ñ   Ø!FôHòJò"&ò*"ò$ðN IMØ:>Ø*.ó
;ð ×  Ñ   Ð&6Ô 7ð =AØ<@Ø,0ó;ð< ×  Ñ   §¡×!6Ñ!6Ð8KÔ Lð 9AØ:>Ø*.ó;ð& �9˜jÐ)ò =€CØ×$Ñ$ SÐ*;Õ<ð=ár   