o ?Og(@s ddlZddlZddlmZmZmZmZddlmZddl m Z ddl m Z ddl mZgdZedZeGd d d eZeZe`ejd d Zejd dZejd ddZejd dZdS)N)PolicyCompat32compat32_extend_docstrings)_has_surrogates)HeaderRegistry)raw_data_manager) EmailMessage)rrr EmailPolicydefaultstrictSMTPHTTPz\n|\rcsneZdZ eZdZdZeZe Z fddZ ddZ ddZ d d Zd d Zd dZddZdddZZS)r Flongc s.d|vr t|dttjdi|dS)Nheader_factory)object __setattr__rsuper__init__)selfkw __class__r3/opt/alt/python310/lib64/python3.10/email/policy.pyr]szEmailPolicy.__init__cCs |j|jSN)rZ max_count)rnamerrrheader_max_countds zEmailPolicy.header_max_countcCs@ |ddd\}}|dd|dd}||dfS)Nr:z  )splitlstripjoinrstrip)rZ sourcelinesrvaluerrrheader_source_parsevszEmailPolicy.header_source_parsecCsX t|dr|j|kr||fSt|tr$t|dkr$td||||fS)NrrzDHeader values may not contain linefeed or carriage return characters) hasattrrlower isinstancestrlen splitlines ValueErrorrrrr&rrrheader_store_parses  zEmailPolicy.header_store_parsecCs, t|dr|Sdt|}|||S)Nrr )r(r$linesep_splitterr"rr/rrrheader_fetch_parses   zEmailPolicy.header_fetch_parsecCs |j||ddS)NT refold_binary)_foldr/rrrfoldszEmailPolicy.foldcCs2 |j|||jdkd}|jrdnd}||dS)NZ7bitr3utf8asciisurrogateescape)r5Zcte_typer7encode)rrr&Zfoldedcharsetrrr fold_binarys  zEmailPolicy.fold_binarycst|dr |j|dS|jr|jntj|}|jdkp@|jdko@|r2t|dt|dkp@tfdd|d dD}|sI|rVt |rV| |d |j|dS|d |j ||j S) Nr)Zpolicyallrrc3s|] }t|kVqdSr)r,).0xmaxlenrr sz$EmailPolicy._fold..rr z: ) r(r6max_line_lengthsysmaxsizer- refold_sourcer,anyrrr$linesep)rrr&r4linesZrefoldrrArr5s     zEmailPolicy._fold)F)__name__ __module__ __qualname__r Zmessage_factoryr7rGrrrZcontent_managerrrr'r0r2r6r<r5 __classcell__rrrrr s:  r T)Zraise_on_defectr!)rI)rIrD)r7)rerEZemail._policybaserrrrZ email.utilsrZemail.headerregistryrZemail.contentmanagerrZ email.messager __all__compiler1r r rZcloner r rZSMTPUTF8rrrrs&     @