
    -hh<                         S SK r S SKJr  S SKJr  S SKJr  / SQr " S S5      rS r	S	 r
 " S
 S\\ R                  S9r\
 " S S\5      5       r\" 5       rg)    N)header)charset)_has_surrogates)PolicyCompat32compat32c                   @   ^  \ rS rSrU 4S jrS rS rS rS rSr	U =r
$ )_PolicyBase   c                    > UR                  5        HV  u  p#[        X5      (       a  [        [        U ]  X#5        M*  [        SR                  X R                  R                  5      5      e   g Nz*{!r} is an invalid keyword argument for {})	itemshasattrsuperr
   __setattr__	TypeErrorformat	__class____name__)selfkwnamevaluer   s       :/opt/python-3.13.8/usr/lib/python3.13/email/_policybase.py__init___PolicyBase.__init__)   sY     88:KDt""k$3D@@GGnn5578 8	 &    c                     U R                   R                  5        VVs/ s H  u  pSR                  X5      PM     nnnSR                  U R                  R                  SR                  U5      5      $ s  snnf )Nz{}={!r}z{}({})z, )__dict__r   r   r   r   join)r   r   r   argss       r   __repr___PolicyBase.__repr__7   sd    $(MM$7$7$9<$9[T !!$.$9 	 <t~~66		$HH<s   A3c                    U R                   R                  U R                   5      nU R                  R                  5        H  u  p4[        R                  X#U5        M     UR                  5        HY  u  p4[        X5      (       d.  [        SR                  X0R                   R                  5      5      e[        R                  X#U5        M[     U$ r   )
r   __new__r   r   objectr   r   r   r   r   )r   r   	newpolicyattrr   s        r   clone_PolicyBase.clone<   s     NN**4>>:	==..0KDy6 188:KD4&&@GGnn5578 8 y6 & r   c                     [        X5      (       a  SnOSn[        UR                  U R                  R                  U5      5      e)Nz'{!r} object attribute {!r} is read-onlyz!{!r} object has no attribute {!r})r   AttributeErrorr   r   r   )r   r   r   msgs       r   r   _PolicyBase.__setattr__N   s7    4;C5CSZZ(?(?FGGr   c                 :    U R                   " S0 UR                  D6$ )N )r)   r   )r   others     r   __add___PolicyBase.__add__U   s     zz+ENN++r   r0   )r   
__module____qualname____firstlineno__r   r"   r)   r   r2   __static_attributes____classcell__)r   s   @r   r
   r
      s#    .8I
$H, ,r   r
   c                 f    U R                  SS5      S   n UR                  SS5      S   nU S-   U-   $ )N
   r   )rsplitsplit)doc	added_docs     r   _append_docr@   ^   s;    
**T1
a
 Ca(+I:	!!r   c                 "   U R                   (       aR  U R                   R                  S5      (       a2  [        U R                  S   R                   U R                   5      U l         U R                  R                  5        H  u  pUR                   (       d  M  UR                   R                  S5      (       d  M:  S U R                   5        H<  n[        [        X15      S5      nU(       d  M!  [        XBR                   5      Ul           M     M     U $ )N+r   c              3   R   #    U  H  oR                  5         H  o"v   M     M     g 7fN)mro).0basecs      r   	<genexpr>%_extend_docstrings.<locals>.<genexpr>h   s     FMD88:aa:aMs   %'__doc__)rK   
startswithr@   	__bases__r   r   getattr)clsr   r(   rH   r>   s        r   _extend_docstringsrP   c   s    
{{s{{--c22!#--"2":":CKKHll((*
<<<DLL33C88FCMMFga.	:3#.sLL#ADL	 G + Jr   c                       \ rS rSrSrSrSrSrSrSr	Sr
S rS	 rS
 r\R                  S 5       r\R                  S 5       r\R                  S 5       r\R                  S 5       r\R                  S 5       rSrg)r   p   Fr:   8bitN   NTc                 L    U R                   (       a  UeU R                  X5        g rD   )raise_on_defectregister_defectr   objdefects      r   handle_defectPolicy.handle_defect   s      LS)r   c                 :    UR                   R                  U5        g rD   )defectsappendrX   s      r   rW   Policy.register_defect   s     	6"r   c                     g rD   r0   )r   r   s     r   header_max_countPolicy.header_max_count   s    " r   c                     [         erD   NotImplementedError)r   sourceliness     r   header_source_parsePolicy.header_source_parse   
     "!r   c                     [         erD   re   r   r   r   s      r   header_store_parsePolicy.header_store_parse   s
    
 "!r   c                     [         erD   re   rl   s      r   header_fetch_parsePolicy.header_fetch_parse   s
     "!r   c                     [         erD   re   rl   s      r   foldPolicy.fold   s
     "!r   c                     [         erD   re   rl   s      r   fold_binaryPolicy.fold_binary  rj   r   r0   )r   r4   r5   r6   rV   linesepcte_typemax_line_lengthmangle_from_message_factoryverify_generated_headersr[   rW   rb   abcabstractmethodrh   rm   rp   rs   rv   r7   r0   r   r   r   r   p   s    r OGHOLO#*&#& 	" " 	" " 	" " 		" 	" 	" "r   r   )	metaclassc                   B    \ rS rSrSrS rS rS rS rS r	S r
S	 rS
rg)r   i  Tc                     [        U[        5      (       d  U$ [        U5      (       a$  [        R                  " U[
        R                  US9$ U$ )Nr   header_name)
isinstancestrr   r   Header_charsetUNKNOWN8BITrl   s      r   _sanitize_headerCompat32._sanitize_header!  sF     %%%L5!!==0D0D-13 3 Lr   c                     US   R                  SS5      u  p#SR                  U/USS  Q75      R                  S5      nX#R                  S5      4$ )Nr   :r;    z 	
z
)r=   r    lstriprstrip)r   rg   r   r   s       r   rh   Compat32.header_source_parse-  sU     "!n**321QR1299)Dll6*++r   c                     X4$ rD   r0   rl   s      r   rm   Compat32.header_store_parse9  s     }r   c                 $    U R                  X5      $ rD   )r   rl   s      r   rp   Compat32.header_fetch_parse?  s    
 $$T11r   c                 "    U R                  XSS9$ )NTsanitize)_foldrl   s      r   rs   Compat32.foldF  s     zz$z55r   c                 `    U R                  XU R                  S:H  S9nUR                  SS5      $ )N7bitr   asciisurrogateescape)r   ry   encode)r   r   r   foldeds       r   rv   Compat32.fold_binaryP  s1     D$--2GH}}W&788r   c                    / nUR                  SU-  5        [        U[        5      (       ae  [        U5      (       a@  U(       a%  [        R
                  " U[        R                  US9nO+UR                  U5        S nO[        R
                  " X!S9nOUnUbD  SnU R                  b  U R                  nUR                  UR                  U R                  US95        UR                  U R                  5        SR                  U5      $ )Nz%s: r   )r   r   )rx   
maxlinelenr   )r_   r   r   r   r   r   r   r   rz   r   rx   r    )r   r   r   r   partshr   s          r   r   Compat32._fold\  s    Vd]#eS!!u%%e.6.B.B268A LL'AMM%: A= J##/!11
LL$,,:NOT\\"wwu~r   r0   N)r   r4   r5   r6   r{   r   rh   rm   rp   rs   rv   r   r7   r0   r   r   r   r     s,     L

,26
9r   r   )r~   emailr   r   r   email.utilsr   __all__r
   r@   rP   ABCMetar   r   r   r0   r   r   <module>r      sn      % 'I, I,X"

d"[CKK d"N cv c cL :r   