Viewing File: /opt/alt/python311/lib64/python3.11/__pycache__/mailbox.cpython-311.opt-2.pyc



f3t	ddlZddlZddlZddlZddlZddlZddlZddlZddlZddl	Zddl
Z
ddlZddlm
Z
	ddlZn
#e$rdZYnwxYwgdZejdZGddZGddeZGd	d
eZGddeZGd
deZGddeZGddeZGddeZGddejjZGddeZGddeZGddeZGddeZ Gdd eZ!Gd!d"eZ"Gd#d$Z#Gd%d&e#Z$d8d(Z%d)Z&d*Z'd+Z(d,Z)d-Z*Gd.d/e+Z,Gd0d1e,Z-Gd2d3e,Z.Gd4d5e,Z/Gd6d7e,Z0dS)9N)GenericAlias)MailboxMaildirmboxMHBabylMMDFMessageMaildirMessagemboxMessage	MHMessageBabylMessageMMDFMessageErrorNoSuchMailboxError
NotEmptyErrorExternalClashErrorFormatErrorasciiceZdZ	d#dZdZdZdZdZdZd$d	Z	d
Z
dZdZd
Z
dZdZdZdZdZdZdZdZdZdZdZd$dZdZd$dZdZdZdZdZd Z d!Z!d%d"Z"e#e$Z%dS)&rNTc	tjtj||_||_dSN)ospathabspath
expanduser_path_factoryselfrfactorycreates    ./opt/alt/python311/lib64/python3.11/mailbox.py__init__zMailbox.__init__%s5,W__RW%7%7%=%=>>



c"	tdNz&Method must be implemented by subclassNotImplementedErrorr messages  r#addzMailbox.add*s2!"JKKKr%c"	tdr'r(r keys  r#removezMailbox.remove.sK!"JKKKr%c0||dSr)r0r.s  r#__delitem__zMailbox.__delitem__2sCr%cV		||dS#t$rYdSwxYwr)r0KeyErrorr.s  r#discardzMailbox.discard5sD5	KK			DD	s
((c"	tdr'r(r r/r+s   r#__setitem__zMailbox.__setitem__<sL!"JKKKr%cT		||S#t$r|cYSwxYwr)__getitem__r4)r r/defaults   r#getzMailbox.get@sBG	##C(((			NNN	s''c	|js||Stj||5}||cdddS#1swxYwYdSr)rget_message
contextlibclosingget_file)r r/files   r#r:zMailbox.__getitem__GsK}	+##C(((#DMM#$6$677
+4}}T**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+sA''A+.A+c"	tdr'r(r.s  r#r>zMailbox.get_messageOsB!"JKKKr%cv	tj||Sremailmessage_from_bytes	get_bytes	as_stringr.s  r#
get_stringzMailbox.get_stringSs2	*'s(;(;<<FFHHHr%c"	tdr'r(r.s  r#rHzMailbox.get_bytesZsF!"JKKKr%c"	tdr'r(r.s  r#rAzMailbox.get_file^sD!"JKKKr%c"	tdr'r(r s r#iterkeyszMailbox.iterkeysbs+!"JKKKr%cF	t|Sr)listrOrNs r#keyszMailbox.keysfs$DMMOO$$$r%c#vK	|D] }	||}n#t$rYwxYw|V!dSrrOr4r r/values   r#
itervalueszMailbox.itervaluesjse3==??		C
S	



KKKK		$
11c*|Sr)rWrNs r#__iter__zMailbox.__iter__ss   r%cF	t|Sr)rQrWrNs r#valueszMailbox.valuesvs:DOO%%&&&r%c#zK	|D]"}	||}n#t$rYwxYw||fV#dSrrTrUs   r#	iteritemszMailbox.iteritemszsm<==??		C
S	



,		rXcF	t|Sr)rQr^rNs r#itemsz
Mailbox.itemssGDNN$$%%%r%c"	tdr'r(r.s  r#__contains__zMailbox.__contains__sG!"JKKKr%c"	tdr'r(rNs r#__len__zMailbox.__len__s8!"JKKKr%c`	|D]}||dSr)rRr5r.s  r#clearz
Mailbox.clears;"99;;		CLL		r%cj		||}n#t$r|cYSwxYw|||Sr)r4r5)r r/r;results    r#popzMailbox.popsPA	#YFF			NNN	S
sc	|D]}|||fcStd)NzNo messages in mailbox)rOrir4r.s  r#popitemzMailbox.popitemsFD==??	5	5C#''''3444r%c	t|dr|}n't|dr|}n|}d}|D]\}}	|||<#t$rd}YwxYw|rtddS)Nr^r`FTzNo message with key(s))hasattrr^r`r4)r argsourcebad_keyr/r+s      r#updatezMailbox.updatesB3$$	]]__FF
S'
"
"	YY[[FFF"		LC
#S		



	53444	5	5sAA-,A-c"	tdr'r(rNs r#flushz
Mailbox.flushs4!"JKKKr%c"	tdr'r(rNs r#lockzMailbox.locks!"JKKKr%c"	tdr'r(rNs r#unlockzMailbox.unlocks1!"JKKKr%c"	tdr'r(rNs r#closez
Mailbox.closes*!"JKKKr%ch	|dS#t$rtdwxYw)Nrz?String input must be ASCII-only; use bytes or a Message instead)encodeUnicodeError
ValueErrorr*s  r#_string_to_byteszMailbox._string_to_bytessK	2>>'***	2	2	2122
2	2s1Fc	t|tjjrt	j}tj||d}|||	d|
}|dt}|
||jr6|ts|
tdSdSdSt|t t"tjfrt|tjr/t'jdt*d|}t|t r||}|r|dd}|dt}|
||jr6|ts|
tdSdSdSt1|dr-t1|dr"t'jd	t*d|j}d}	|}|dr|dddz}n"|d
r
|dddz}|snW|r"|dr
d|ddz}|dt}|
||}|jr8|r8|ts |
tdSdSdSdSt9dt;|z)Nr
8Use of StringIO input is deprecated, use BytesIO insteads
From s
>From readbufferDUse of text mode files is deprecated, use a binary mode file insteadT

From s>From Invalid message type: %s)
isinstancerFr+r
ioBytesIO	generatorBytesGeneratorflattenseekrreplacelinesepwrite_append_newlineendswithstrbytesStringIOwarningswarnDeprecationWarninggetvaluer~rmrreadline
startswith	TypeErrortype)	r r+targetmangle_from_rgendatalastlinelines	         r#
_dump_messagezMailbox._dump_messages3gu}4551	HZ\\F/00qIICKK   KKNNN;;==D<<w//DLL#
&DMM',B,B
&W%%%%%
&
&
&
&#ubk!:
;
;&	H'2;//
-
*+=qBBB!**,,'3''
9//88
C!//*kBBooeW55GLL!!!#
&G,<,<W,E,E
&W%%%%%
&
&
&
&Wf
%
%	Hw))
)
56H!MMM!.H

 ''))==))-9u,DD]]5))-9u,D0DOOH$=$=0$tABBx/D||E733T"""

 #
&
&9J9J79S9S
&W%%%%%
&
&
&
&
&
&6gFGGGr%NTrF)&__name__
__module____qualname__r$r,r0r2r5r8r<r:r>rJrHrArOrRrWrZr\r^r`rbrdrfrirkrqrsrurwryr~rrclassmethodr__class_getitem__r%r#rr"sE4    
LLLLLLLLL+++LLLIIILLLLLLLLL%%%!!!'''&&&LLLLLL
5555555"LLLLLLLLLLLL222O4H4H4H4Hl$L11r%rceZdZ	dZddZdZdZdZdZd	Z	d
Z
dZdZd
Z
dZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdS)r:NTct	t||||tj|jdtj|jdtj|jdd|_tj|jsb|rLtj|jd|j	D]}tj|dnt|ji|_ddd|_d|_
d|_dS)	Ntmpnewcur)rrrr)rrg?)rr$rrjoinr_pathsexistsmkdirr\r_toc_toc_mtimes
_last_read_skewfactor)r dirnamer!r"rs     r#r$zMaildir.__init__s,w8887<<
E227<<
E227<<
E22
w~~dj))	5
5U+++ K..00**DHT5))))*)444	#$Q//r%c	|}	|||n<#t$r/|t	j|jwxYwt|t|tr>|
}|j|z}||jkrd}nd}d}tj
|j|jd}tj
|j|||z}t|trPt	j|jtj
|j|f		t	j|j|t	j|jn1#t,t.f$rt	j|j|YnwxYwnS#t2$rF}t	j|j|jt4jkrt9d|zd}~wwxYw|S)Nrrz$Name clash with existing message: %s)_create_tmpr
BaseExceptionryrr0name_sync_closerr
get_subdircolonget_inforbasenamesplitrrutimegetatimeget_datelinkAttributeErrorPermissionErrorrenameOSErrorerrnoEEXISTr)r r+tmp_filesubdirsuffixuniqdestes        r#r,zMaildir.add$sV2##%%	w1111			NNIhm$$$		Hg~..	''))FZ'"2"2"4"44F##FFw
..44TZ@@Cw||DJv
>>g~..	LHX]g&&x}55w7G7G7I7IJ
L
L
L

	
)
t,,,	(-((((#O4
/
/
/	(-.....
/			Ihm$$$w%,&&()O+/*0111
	s@.9A'"G<H+HHHH
IAIIc	tjtj|j||dSr)rr0rrr_lookupr.s  r#r0zMaildir.removeNs9K
	"',,tz4<<+<+<==>>>>>r%cd		||dS#ttf$rYdSwxYwr)r0r4FileNotFoundErrorr.s  r#r5zMaildir.discardRsJ5	KK+,			DD	s//c	||}||}||}t|tr|}n|}tj|}|j|vr)|j||jdz}nd}|	|tj
|j|}	tj
|j|||z}
t|trFt	j|	tj
|	|ft	j|	|
dS)Nrr)rr,rrrrrrrr5rrrrrr)r r/r+old_subpathtemp_keytemp_subpathdominant_subpathrrtmp_pathnew_paths           r#r8zMaildir.__setitem__ZsVLll3''88G$$||H--g~..	++ +!122:)))Z"2"8"8"D"DR"HHFFFS7<<
L997<<
FC&LAAg~..	GHXg&&x00'2B2B2D2DE
G
G
G
		(H%%%%%r%c	||}ttj|j|d5}|jr||}nt|}dddn#1swxYwYtj|\}}|	||j
|vr3|||j
d|tj
tj|j||S)Nrbr)ropenrrrrrrr
set_subdirrset_infoset_dategetmtime)r r/subpathfmsgrrs       r#r>zMaildir.get_messageusJB,,s##
"',,tz733T
:
:	(a}
(mmA&&$Q''		(	(	(	(	(	(	(	(	(	(	(	(	(	(	(
w}}W--v:LLDJ//3444RW%%bgll4:w&G&GHHIII
s
-BB
Bc	ttj|j||d5}|tdcdddS#1swxYwYdS)Nrr)	rrrrrrrrrr r/rs   r#rHzMaildir.get_bytess@
"',,tz4<<+<+<==t
D
D	46688##GU33	4	4	4	4	4	4	4	4	4	4	4	4	4	4	4	4	4	4s-BB	Bc	ttj|j||d}t
|S)Nr)rrrrrr
_ProxyFilers   r#rAzMaildir.get_files>Ddj$,,s*;*;<<dCC!}}r%c#K	||jD]-}	||n#t$rY%wxYw|V.dSr)_refreshrrr4r.s  r#rOzMaildir.iterkeyssv+

9		C
S!!!!



IIII		s8
AAc>	|||jvSr)rrr.s  r#rbzMaildir.__contains__sG

dir%cT	|t|jSr)rlenrrNs r#rdzMaildir.__len__s 8

49~~r%c	dSrrrNs r#rsz
Maildir.flushs0	
r%c	dSrrrNs r#ruzMaildir.locks
r%c	dSrrrNs r#rwzMaildir.unlocks
1r%c	dSrrrNs r#ryz
Maildir.closes
*r%c@	g}tj|jD]}t|dkrk|ddkr_tjtj|j|r||dd|S)Nr.)rlistdirrrrisdirrappendr rhentrys   r#list_folderszMaildir.list_folderss,Z
++	)	)E5zzA~~%(c//w}}RW\\$*e<<==#2

eABBi(((
r%c~	ttj|jd|z|jdS)NrFr!r")rrrrrrr folders  r#
get_folderzMaildir.get_folders<=rw||DJf==#}#%%%	%r%c	tj|jd|z}t	||j}tj|d}tj|s?tjtj|tj	tj
zd|S)Nrr!
maildirfolder)rrrrrrrryrO_CREATO_WRONLY)r rrrhmaildirfolder_paths     r#
add_folderzMaildir.add_foldersLw||DJf55t}555W\\$@@w~~011	HRW/bk1I



r%c	tj|jd|z}tjtj|dtjtj|dzD]3}t|dks|ddkrt
d|z4tj|D]f}|dkr^|dkrX|dkrRtjtj||rt
d|d	|gtj|d
D]t\}}}|D]4}tj	tj||5|D]4}tj
tj||5utj
|dS)NrrrrrzFolder contains message(s): %srzFolder contains subdirectory 'z': F)topdown)rrrrrrrrwalkr0rmdir)r rrrrootdirsfiless       r#
remove_folderzMaildir.remove_folders;w||DJf55ZT5 9 9::ZT5 9 9::;	O	OE5zzA~~qS#$Dv$MNNN"1Z%%	5	5E~~%5..Ue^^w}}RW\\$66776D#m%+VVUU%4555!#u!=!=!=	4	4D$
5
5	"',,tU334444
4
4dE223333
4
r%cb	tj}tjtj|jdD]b}tj|jd|}|tj|z
dkrtj|cdS)Nri@)timerrrrrrr0)r nowrrs    r#cleanz
Maildir.cleans(ikkZTZ ? ?@@	 	 E7<<
E599DRW%%d+++f44	$	 	 r%rc	x	tj}tj}d|vr|dd}d|vr|dd}t	|dt	|dzdzdtjd	tjd
|	}t
j	
|jd|}	tj|nG#t$r:txjdz
c_	t|cYS#t$rYnwxYwYnwxYwt!d|z)
N/z\057rz\072z.Mrg.APQrrz&Name clash prevented file creation: %s)rsocketgethostnamerintrgetpidr_countrrrstatr_create_carefullyFileExistsErrorr)r r hostnamerrs     r#rzMaildir._create_tmpsTKikk%''(??''W55H(??''W55H$'HHHHc#'C-.@.@.@.@")++++$+NNNHH>w||DJt44	GDMMMM 			NNaNN
(....."



	!!I!%"&''	's6C##D'DD'
D!D' D!!D'&D'c	tj|jz
d|jzkrWd}|jD]I}tj|j|}||j|krd}||j|<J|sdSi|_|jD]}|j|}t	j	|D]}tj
||}tj|rB||j
d}tj
|||j|<tj|_dS)NFTr)rrrrrrrrrrrrrr)r refreshrmtimerrprs        r#rzMaildir._refreshsH/9;;(1t/?+???G*
1
1((V)<==4+F333"G+0 ((
	&	>	>F;v&DD))
>
>GLLu--7==##{{4:..q1"$',,vu"="=	$
>)++r%cb		tjtj|j|j|r
|j|Sn#t$rYnwxYw|	|j|S#t$rt
d|zdwxYwNNo message with key: %s)rrrrrrr4rr.s  r#rzMaildir._lookup&sK	w~~bgll4:ty~FFGG
&y~%
&			D	

	F9S>!	F	F	F4s:;;E	FsAA
A+*A+BB.c	t|ds||_		|t|jS#t$rYdSt
$rY4wxYw)N
_onetime_keys)rmrOr8next
StopIterationr4rNs r#r9zMaildir.next4s>t_--	1!%D	
D!34455 


tt



sA
A 	A A r)rrrrr$r,r0r5r8r>rHrArOrbrdrsrurwryrr
rrr!r*rrrr9rr%r#rrs(E((((T???&&&6


444

   




%%%&   F'''0"&"&"&HFFF




r%rcteZdZ	ddZdZdZdZdZdZd	Z	d
Z
dZdZd
Z
dZdZdZddZdZdS)_singlefileMailboxNTc	t||||	t|jd}n#t$r}|jt
jkr,|rt|jd}nJt|j|jt
jt
j	fvrt|jd}nYd}~nd}~wwxYw||_
d|_d|_d|_
d|_d|_d|_dS)Nrb+zwb+rrF)rr$rrrrENOENTrEACCESEROFS_filer	_next_key_pending
_pending_sync_locked_file_length)r rr!r"rrs      r#r$z_singlefileMailbox.__init__Ds/tWf555	TZ''AA						w%,&&9TZ//AA,TZ888U\5;777T**		
	
" s6
CA7B<<Cc	||||j|j<|xjdz
c_d|_|jdz
S)NrT)r_append_messagerrCrEr*s  r#r,z_singlefileMailbox.add[sU2$($8$8$A$A	$.!!"~!!r%cP	|||j|=d|_dSr)rrrDr.s  r#r0z_singlefileMailbox.removees+KSIcN


r%cz	|||||j|<d|_dSr)rrIrrDr7s   r#r8z_singlefileMailbox.__setitem__ks;LS--g66	#


r%c#rK	||jEd{VdSr)rrrRrNs r#rOz_singlefileMailbox.iterkeysqs@+9>>###########r%c>	|||jvSr)rrr.s  r#rbz_singlefileMailbox.__contains__vsGdir%cT	|t|jSr)rrrrNs r#rdz_singlefileMailbox.__len__{s 849~~r%cP	|jst|jd|_dSdSr)rF
_lock_filerBrNs r#ruz_singlefileMailbox.locks4|	 tz"""DLLL	 	 r%cP	|jrt|jd|_dSdSNF)rF_unlock_filerBrNs r#rwz_singlefileMailbox.unlocks41<	!$$$ DLLL	!	!r%c	:	|js$|jrt|jd|_dS|jdd|j}||jkrtd|j|fzt|j	}	i}|
|t|j
D]}|j|\}}|j||||}	|jt!d||jz
}|sn||[||f||<||||_n3#|t)j|jxYwt/||jt)j|j	j}	t)j|j|		t)j|j|j	nH#t8$r;t)j|j	t)j|j|j	YnwxYwt;|j	d|_||_d|_d|_|jrt?|jddSdS)	NFrr0z4Size of mailbox file changed (expected %i, found %i)Tr>)dotlock) rDrE_sync_flushrBrtellrGr_create_temporaryr_pre_mailbox_hooksortedrrR_pre_message_hookrminr_post_message_hookryrr0rrr+st_modechmodrr-rrFrP)
r cur_lennew_filenew_tocr/startstop	new_startrmodes
          r#rsz_singlefileMailbox.flushs0}	!
+DJ'''%*"F	
1*//##d'''$&?&*&7%A&BCC
C%TZ00	G""8,,,dinn..//
2
2"int
&&&&&x000$MMOO	+!Z__S15
8I8I1I.K.KLLF!NN6***+!*8==??;''1111 (

D	NNIhm$$$H
wtz""*
%%%	1IhmTZ0000	1	1	1Idj!!!IhmTZ00000	1$*e,,
	
"<	2tz5111111	2	2s D6G0H%JAK
	K
c	dSrrr rs  r#rZz$_singlefileMailbox._pre_mailbox_hook
:r%c	dSrrris  r#r\z$_singlefileMailbox._pre_message_hooks
;r%c	dSrrris  r#r^z%_singlefileMailbox._post_message_hookrjr%c		|	|jr||jdS#|jwxYw#	|jr||jw#|jwxYwxYwr)rsrFrwrBryrNs r#ryz_singlefileMailbox.closes*	#JJLLL
#<"KKMMM
  """""
  """"	
#<"KKMMM
  """"
  """"s.A,AA),C.B#	C#B>>Cc	|j||/	|j|S#t$rtd|zdwxYwdSr5)r
_generate_tocr4r.s  r#rz_singlefileMailbox._lookupsr59   ?
Jy~%
J
J
J83>??TI
J?s	-Ac8	|jdd|j}t|jdkr!|js||j	||j||}|	|jn)#t$r|j|wxYw|j|j|_
|S)Nrr0)rBrrXrrrDrZr\_install_messager^rtruncatersrG)r r+beforeoffsetss    r#rIz"_singlefileMailbox._append_messagesI
1""ty>>Qt}

""4:...	""4:...++G44G##DJ////			J'''		
 JOO--s
0A	B::&C rr)rrrr$r,r0r8rOrbrdrurwrsrZr\r^ryrrIrr%r#r<r<As !!!!."""$$$
   

   !!!>2>2>2@	#	#	#JJJJr%r<c8eZdZ	dZdZd	dZd	dZd	dZdZdS)
	_mboxMMDFTc	||\}}|j||jt
dd}|j||jz
}|	|t
d}|
|||dd|S)Nr%rrr)rrBrrrrdecoderrX_message_factoryset_unixfromset_from)r r/rdre	from_linestringrs       r#r>z_mboxMMDF.get_message	sBll3''t
J''))11'3??FFwOO	
(9(9!9::##FNN7E$B$BCC###Yqrr]###
r%Fc|	tj||||S)N)unixfromrE)r r/from_s   r#rJz_mboxMMDF.get_strings;A'NN3&&(((1	5	(A(A	Br%c<	||\}}|j||s|j|j||jz
}|tdSNr)rrBrrrrXrr)r r/rrdrer}s      r#rHz_mboxMMDF.get_bytessAll3''t
	"J!!!
(9(9!9::~~gu---r%c	||\}}|j||s|jt	|j|j|Sr)rrBrr_PartialFilerX)r r/rrdres     r#rAz_mboxMMDF.get_file"sjDll3''t
	"J!!!DJ
(9(94@@@r%c	d}t|tr||}t|trM|dr8|d}|dkr|d|}||dzd}n|}d}nt|tr-|d}d|z}nJt|tj
jr+|}||d}|:dtjtjz}|j}|j|t&z|||j|j|j}||fS)Nrrrrr%rsFrom MAILER-DAEMON )rrr~rrfind_mboxMMDFMessageget_fromr{rFr+r
get_unixfromrasctimegmtimerBrXrrr
_mangle_from_)r r+r|newlineauthorrdres       r#rqz_mboxMMDF._install_message*s?	gs##	5++G44Ggu%%	6'*<*<X*F*F	6ll5))G"}}#HWH-	!'A+,,/#	
!1
2
2	6%%''..w77F 6)II
!6
7
7	6,,..I$%,,W55	.dkmm1L1L1S1S1U1UUI
!!
W,---7DJ0BCCCz  t}r%Nr)	rrrrr>rJrHrArqrr%r#rvrvs~"M			BBBB
....AAAAr%rvc,eZdZ	dZdZddZdZdZdS)rTNcZ	t|_t||||dSr)rryrvr$rs    r#r$z
mbox.__init__P-) +4w77777r%c<	|tdSrrrris  r#r^zmbox._post_message_hookUs:	r%cF	gg}}d}|jd	|j}|j}|drzt|t|krB|r+||ttz
n||||d}nU|sC|r+||ttz
n||n|tkrd}nd}ttt|||_t|j|_|j|_
dS)NFrTr)rBrrXrrrrrdict	enumerateziprrCrG)r startsstopslast_was_emptyline_posrs      r#rozmbox._generate_tocYs{>B
	'z((H:&&((Dx((
'u::F++%/XG%<====
X...

h'''!&	
'!+LLCLL!89999LL***!%!&/	'03vu#5#56677	TY JOO--r%r)rrrrrr$r^rorr%r#rrGsU!MO8888
.....r%rc*eZdZ	ddZdZdZdZdS)r	NTcZ	t|_t||||dSr)rryrvr$rs    r#r$z
MMDF.__init__~rr%cB	|dtzdSNrris  r#r\zMMDF._pre_message_hooks#;	#g-.....r%cR	|tdztzdSrrris  r#r^zMMDF._post_message_hooks(:	--788888r%c0	gg}}|jdd}	|}|j}|j}|dt
zr||	|}|j}|j}|dt
zkr+||tt
z
n|s||nn|snttt|||_t|j|_|jdd|j|_
dS)NrTrr0)rBrrrXrrrrrrrrrCrG)r rrnext_posrrs      r#rozMMDF._generate_tocsw>B
	H:&&((Dz((H2W<==



h'''	'H:..00D#z00H2W<<<XG%<===!X...	
#	$3vu#5#56677	TY
1 JOO--r%r)rrrr$r\r^rorr%r#r	r	{sX8888
///999.....r%r	ceZdZ	ddZdZdZdZdZdZd	Z	d
Z
dZdZd
Z
dZdZdZdZdZdZdZdZdZdZdZdS)rNTc	t||||tj|js|rtj|jdtjtjtj	|jdtj
tjztjzdnt|jd|_dS)Nr
.mh_sequencesiF)rr$rrrrrryrrrO_EXCLrrrFrs    r#r$zMH.__init__s(tWf555w~~dj))	5
5U+++dj/!J!J!#bi!7"+!EuNNOOOO)444r%c	|}t|dkrd}nt|dz}tj|jt|}t|}d}	|j	rt|		|||nJ#t$r=|j	rt|t|d}tj|wxYwt!|t"r||||j	rt|n#|j	rt|wwxYw|st|n#|st|wwxYw|S)NrrFT)rRrmaxrrrrrr,rFrPrrrSrr0rr
_dump_sequences)r r+rRnew_keyrrcloseds       r#r,zMH.adds2yy{{t99>>GG$ii!mG7<<
CLL99h''	|
1



$	&&w2222$|($QNNN!FIh'''gy11;((':::<$ OOO<$ OOOO$
A
A
s7E+B10D=1AC88.D=&E+=EE++E?cR	tj|jt	|}	t|d}|tj|dS#t$r-}|j	tj
krtd|zd}~wwxYwNr>r6)rrrrrrryr0rrr?r4)r r/rrrs     r#r0z	MH.removesKw||DJC11		T5!!A
GGIIIIdOOOOO			w%,&&83>???		sA//
B&9(B!!B&c	tj|jt	|}	t|d}n:#t$r-}|jtjkrtd|zd}~wwxYw	|j
rt|	tjtj|tj
tjz|||t!|t"r||||j
rt'|n#|j
rt'|wwxYwt)|dS#t)|wxYwr)rrrrrrrrr?r4rFrPryrO_TRUNCrrr
rrSr)r r/r+rrrs      r#r8zMH.__setitem__sXLw||DJC11	T5!!AA			w%,&&83>???		
	|
1



$r{RZ'?@@AAA""7A...gy117((#666<$ OOO<$ OOOO$
NNNNNKNNNNs<A
A=(A88A=EA?D.E.EEE,c		|jrAttj|jt
|d}n@ttj|jt
|d}n:#t$r-}|jtj	krtd|zd}~wwxYw|5|jrt|	t|}|jrt|n#|jrt|wwxYwdddn#1swxYwY|D]\}}||vr|||S)Nr>rr6)rFrrrrrrrrr?r4rPr
rS
get_sequencesr`add_sequence)r r/rrrrkey_lists       r#r>zMH.get_messagesB		|
Cdj#c((;;UCCdj#c((;;TBB			w%,&&83>???		
	$	$|
1



$ll<$ OOO<$ OOOO$
	$	$	$	$	$	$	$	$	$	$	$	$	$	$	$#002288::	'	'ND(h  &&&
sBBB
C(B>>CD. D/D.DD..D25D2c		|jrAttj|jt
|d}n@ttj|jt
|d}n:#t$r-}|jtj	krtd|zd}~wwxYw|5|jrt|	|
td|jrt|cdddS#|jrt|wwxYw#1swxYwYdS)Nr>rr6r)rFrrrrrrrrr?r4rPrrrrSr r/rrs    r#rHzMH.get_bytess@		|
Cdj#c((;;UCCdj#c((;;TBB			w%,&&83>???		
	$	$|
1



$vvxx''77<$ OOO	$	$	$	$	$	$	$	$<$ OOOO$
	$	$	$	$	$	$	$	$	$	$sBBB
C(B>>CE ,D/E/EEEEc		ttj|jt|d}n:#t$r-}|jtjkrtd|zd}~wwxYwt|S)Nrr6)rrrrrrrrr?r4rrs    r#rAzMH.get_file-sD	RW\\$*c#hh77>>AA			w%,&&83>???		
!}}sAA
A;(A66A;c~	ttdtj|jDS)Nc3\K|]'}|t|V(dSr)isdigitr().0rs  r#	<genexpr>zMH.iterkeys.<locals>.<genexpr>:sH::%).:3u::::::::r%)iterr[rrrrNs r#rOzMH.iterkeys8sJ+F::2:dj3I3I:::::;;	;r%c	tjtj|jt|Sr)rrrrrrr.s  r#rbzMH.__contains__=s1Gw~~bgll4:s3xx@@AAAr%c`	tt|Sr)rrQrOrNs r#rdz
MH.__len__As#84

(()))r%c	|jsUttj|jdd|_t|jd|_dSdS)Nrr>T)rFrrrrrrBrPrNs r#ruzMH.lockEsW|	 bgll4:GGOODJtz"""DLLL	 	 r%c|	|jr3t|jt|j|`d|_dSdSrR)rFrSrBrrNs r#rwz	MH.unlockLsI1<	!$$$
###
 DLLL		!	!r%c	dSrrrNs r#rszMH.flushTs
4r%cB	|jr|dSdSr)rFrwrNs r#ryzMH.closeXs**<	KKMMMMM		r%c	g}tj|jD]Y}tjtj|j|r||Z|Sr)rrrrrrrrs   r#rzMH.list_folders]se,Z
++	%	%Ew}}RW\\$*e<<==
%

e$$$
r%cx	ttj|j||jdS)NFr
rrrrrrrs  r#r
z
MH.get_folderes79"',,tz622-777	7r%cv	ttj|j||jS)Nrrrs  r#rz
MH.add_folderjs5H"',,tz622-)))	)r%cR	tj|j|}tj|}|dgkr3tjtj|dn|gkrnt
d|jztj|dS)NrzFolder not empty: %s)rrrrrr0rr)r rrentriess    r#rzMH.remove_folderos;w||DJ//*T""'''Ibgll499::::
]] 6 CDDD
r%c
J
	i}ttj|jddd5}t|
|D]+}	|d\}}t}|D]}|r#|	t|9d|dD\}}	|t||	dz
fd	t|D||<t||d
kr||=#t$r%t!d|zwxYw	dddn#1swxYwY|S)NrrASCIIencodingrc34K|]}t|VdSr)r()rxs  r#rz#MH.get_sequences.<locals>.<genexpr>s(*K*Ka3q66*K*K*K*K*K*Kr%-rcg|]}|v|	Srr)rr/all_keyss  r#
<listcomp>z$MH.get_sequences.<locals>.<listcomp>s)%=%=%=S,/8OO&),;OOr%rz"Invalid sequence specification: %s)rrrrrsetrRrrr,r(rqranger[rr}rrstrip)r resultsrrrcontentsrRspecrdrers          @r#rzMH.get_sequences{sK
"',,tz?;;S7
S
S
S	5WX499;;''H
5
55%)ZZ__ND(55D ( 0 0@@<<>>@ HHSYY////*K*K4::c??*K*K*KKE4 KKeTAX(>(>????%=%=%=%=F4LL%=%=%=GDM74=))Q..#DM!555%&J&*kkmm'45555
5	5	5	5	5	5	5	5	5	5	5	5	5	5	5	5&s*'F"C6EF/FFFFcF	ttj|jddd}	tjtj|jtjtjz|	D]\}}t|dkr||dzd}d}tt|D]^}|dz
|kr|sd	}|d
n7|rd}||d|n|d|z|}_|r&|t|d
z|d
	t|dS#t|wxYw)Nrzr+rrrrFrTr z %s
)rrrrrryrrrr`rrr[rrr)r 	sequencesrrrRprev
completingr/s        r#
set_sequenceszMH.set_sequencessHdj/::D7SSS	HRWQVR[2:%=>>???'oo//
"
"
dt99>>s
###"
!#d)),,

CQw$)))-JGGCLLL#-%*
444 56666,,,DD"GGCII,----GGDMMMM)
",
NNNNNKNNNNsEFF c:	|}d}g}|D]y}|dz
|krg|||dzf	tjtj|jt|tj|jt|dztj	tj|jt|n#ttf$r{tjtj|jt|tj|jt|dzYnwxYw|dz
}{|dz|_
t|dkrdS|D])\}}|D]!\}}||vr||||<"*||dS)Nrr)rrOrrrrrrrunlinkrrrrCrr`indexr)	r rrchangesr/rroldrs	         r#packzMH.packsM&&((	==??		CQw$TAX///BGBGLLSXX>>GLLS]]CCEEEIbgll4:s3xx@@AAAA	'8GGGIbgll4:s3xx@@ gll4:s4!8}}EEGGGGGG

AIDDw<<1F'oo//	8	8ND(#
8
8S(??47HX^^C001
8	
9%%%%%sA8DB	FFc<	|}|}|D]9\}}||vr||||vr|||=:|D]}||vr|g||<
||dSr)rr`rrr)r r+r/pending_sequences
all_sequencesrrsequences        r#rzMH._dump_sequencessI#1133**,,
+1133	2	2ND(((($$$$X^^C001)	0	0H},,+.%
h'=)))))r%r)rrrr$r,r0r8r>rHrArOrbrdrurwrsryrr
rrrrrrrr%r#rrsj



   D02$$$*			;;;
BBB***   !!!
777
)))



0:&&&4*****r%rczeZdZ	ehdZddZdZdZdZdZ	d	Z
d
ZdZdZ
d
ZdZdZdZdS)r>filededitedresentunseendeletedanswered	forwardedNTcP	t||||i|_dSr)r<r$_labelsrs    r#r$zBabyl.__init__s*)##D$@@@r%c	t||}t|tr||j|<|Sr)r<r,rr
get_labelsr)r r+r/s   r#r,z	Babyl.addsI2 $$T733g|,,	5 ' 2 2 4 4DL
r%cd	t||||jvr
|j|=dSdSr)r<r0rr.s  r#r0zBabyl.removes@K!!$,,,$,S!!!r%c	t|||t|tr||j|<dSdSr)r<r8rrrrr7s   r#r8zBabyl.__setitem__sWL&&tS':::g|,,	5 ' 2 2 4 4DL	5	5r%c	||\}}|j||jt	j}	|j}|dtzks|sn/||tdYt	j}	|j}|tks|sn/||tdV||j	z
}|j
|}|td}t||z}	|	
|||jvr |	|j||	SNT*** EOOH ***r)rrBrrrrrrrrXrrrset_visibler
set_labels)
r r/rdreoriginal_headersrvisible_headersnbodyrs
          r#r>zBabyl.get_messagesBll3''t

:<<	A:&&((D0000""4<<#?#?@@@		A
*,,	@:&&((Dwd!!$,,w">">???		@
4:??$$$zq!!||GU+++4466=>>0022333$,NN4<,---
r%c	||\}}|j||jt	j}	|j}|dtzks|sn/||tdY	|j}|tks|sn(|	}||j
z
}|j|}|td}||zSr)rrBrrrrrrrrrXr)	r r/rdrerrheadersrrs	         r#rHzBabyl.get_bytess-All3''t

:<<	A:&&((D0000""4<<#?#?@@@		A
	:&&((Dwd	#++--4:??$$$zq!!||GU++~r%c	tj||dtSr)rrrHrrr.s  r#rAzBabyl.get_file)s1Dz$..--55eWEEFFFr%c	|t}|jD]}||||jt|Sr)rrrr\rqdifference_update_special_labelsrQ)r labels
label_lists   r#rzBabyl.get_labels-spB,--//	&	&JMM*%%%%  !5666F||r%c	gg}}|jdd}g}	|}|j}|j}|dtzkrt|t|kr*||ttz
||d|jdddD}||n|dks|dtzkrKt|t|kr*||ttz
n-|s+||ttz
nttt|||_tt||_t|j|_
|jdd|j|_dS)	NrTsc^g|]*}||+Sr)striprlabels  r#rz'Babyl._generate_toc.<locals>.<listcomp>Ds<:::E+0;;==:%++--:::r%r,r0)rBrrrXrrrrrrrrrrCrG)r rrrlabel_listsrrr	s        r#rozBabyl._generate_toc6s>B
	H:&&((Dz((H{W,,,u::F++LLCLL!8999

h'''::+/:+>+>+@+@+D+J+J4+P+P:::""6****DGg,=$=$=u::F++LLCLL!8999
XG4555#	$3vu#5#56677	Ik2233TY
1 JOO--r%c	dtz}|dtzz
}|}d|D}|dd|ztzz
}|dz
}||dS)NsBABYL OPTIONS:s
Version: 5c3>K|]}|VdSr)r{rs  r#rz*Babyl._pre_mailbox_hook.<locals>.<genexpr>Ys*55U%,,..555555r%sLabels:rr)rrrr)r rbabylr	s    r#rZzBabyl._pre_mailbox_hookTs}:!G+
((""55f555
dii///'99
	r%cB	|dtzdS)Nrris  r#r\zBabyl._pre_message_hook^s";	'!"""""r%cB	|tdzdS)Nrrris  r#r^zBabyl._post_message_hookbs":	'!"""""r%c	|j}t|trg}g}|D]6}||jvr||!||7|jd|D]1}|jd|z2|jd|D]4}|jd|zdz5|jtn"|jdtzt|tjjrKtj}tj|dd}|||d	|}|j|d
t|d
ks|snQ|jdtzt|trtj}	tj|	dd}
|
|	|	}|j|d
t|d
ks|snQng|d	|}|j|d
t|d
ks|snQ	|d}|sn4|j|d
tLnt|t.t0tjfrt|tjr/t5jd
t8d|}t|t0r||}|ddz}|dz
dkr|j|d|d
t|jdtz|j|d|d
t|j||dd
tnU|jdtztz|j|d
tntA|drtA|dr"t5jdt8d|j!}|}
d	}	|}|"dr|ddd
z}n"|"dr
|ddd
z}|j|d
t|d
ks|s=|r:d}|jdtz||
nn	|}|sn|"dr|ddtz}nO|"dr|ddtz}n'|"d
r|ddtz}|j|ntGdtI|z|j}||fS)N1s, s,, rs1,,FrTrrrUrrs

r0rrrrrrrr)%rBrXrrrrrrr{rrFr+r
rrrrrrrrget_visiblerrrrrrrrr~rrmrrrr)r r+rdspecial_labelsr	rorig_bufferorig_generatorr
vis_buffer
vis_generatorr
body_startoriginal_pos
first_passres                r#rqzBabyl._install_messagefsN>
!!g|,,	/NF ++--
)
)D000"))%0000MM%((((JT"""'
9
9
  !78888JU###
?
?
  !6!=>>>>JW%%%%JVg-...gu}455S	H*,,K"_;;KPQRRN""7+++Q
"++--
  eW!=!=>>>5===	


J_w6777'<00
Z\\
 % > >z5RS T T
%%g&9&9&;&;<<<%..00DJ$$T\\%%A%ABBBu}}D}	  ###&//11DJ$$T\\%%A%ABBBu}}D}	

A$))$//
  w!?!?@@@	
A
%bk!:
;
;3	H'2;//
-
*+=qBBB!**,,'3''
9//88 g..2JA~##
  *!5!=!=eW!M!MNNN
  7!:;;;
  *!5!=!=eW!M!MNNN
  !5!=!=eW!M!MNNNN
  7!:W!DEEE
  !@!@AAAA
Wj
)
)#	Hw))
)
56H!MMM!."<<>>LJ
''))==))-9u,DD]]5))-9u,D
  eW!=!=>>>5===!%*

((7)BCCC\2222

'''))==))/9w.DD]]5))/9w.DD]]5))/9w.D
  &&&
'6gFGGGz  t}r%r)rrr	frozensetrr$r,r0r8r>rHrArrorZr\r^rqrr%r#rrs'i!B!B!BCCO
"""5558,GGG...<######iiiiir%rc$eZdZ	ddZdZdZdS)r
Ncj	t|tjjrU|tj|t|tr||dSdSt|tr)|tj	|dSt|tr)|tj|dSt|tj
r)|tj|dSt|dr)|tj|dS|&tjj|dSt%dt'|z)Nrr)rrFr+r
_become_messagecopydeepcopy_explain_torrGrmessage_from_stringr
TextIOWrappermessage_from_filermmessage_from_binary_filer$rrr*s  r#r$zMessage.__init__s,gu}455	H  w!7!7888'7++
*##D)))))
*
*

'
'	H  !9'!B!BCCCCC

%
%		H  !:7!C!CDDDDD
!1
2
2	H  !8!A!ABBBBB
Wf
%
%	H  !?!H!HIIIII
_M!**4000006gFGGGr%cp	t|dg}|jD]}||vr|j||j|<dS)N_type_specific_attributes)getattr__dict__)r r+
type_specificrs    r#r(zMessage._become_messagesS>)DbII
$	=	=D=((&-&6t&<
d#	=	=r%cP	t|trdStd)Nz Cannot convert to specified type)rr
rr*s  r#r+zMessage._explain_tos,Hgw''	@F>???r%r)rrrr$r(r+rr%r#r
r
sR:HHHH&===@@@@@r%r
cbeZdZ	gdZddZdZdZdZdZdZ	d	Z
d
ZdZdZ
d
ZdZdS)r)_subdir_info_dateNc	d|_d|_tj|_t||dS)Nrr)r7r8rr9r
r$r*s  r#r$zMaildirMessage.__init__s<3
Y[[
w'''''r%c	|jSr)r7rNs r#rzMaildirMessage.get_subdirs
$|r%cR	|dks|dkr	||_dStd|z)Nrrz!subdir must be 'new' or 'cur': %s)r7r})r rs  r#rzMaildirMessage.set_subdirs5+U??foo!DLLL@6IJJJr%cZ	|jdr|jddSdS)N2,r0r)r8rrNs r#	get_flagszMaildirMessage.get_flagss28:  &&	:abb>!2r%c\	ddt|z|_dS)Nr>r)rr[r8)r flagss  r#	set_flagszMaildirMessage.set_flagss'7BGGF5MM222


r%c	|dt|t|zdSNrrBrrr?r flags  r#add_flagzMaildirMessage.add_flagF<rwws4>>#3#344s4yy@AABBBBBr%c	|rY|dt|t|z
dSdSrD)r?rBrrrFs  r#remove_flagzMaildirMessage.remove_flagseE>>	GNN2773t~~'7'7#8#83t99#DEEFFFFF	G	Gr%c	|jSr)r9rNs r#rzMaildirMessage.get_date"s
Jzr%ct		t||_dS#t$rtd|zdwxYw)Nzcan't convert to float: %s)floatr9r}r)r dates  r#rzMaildirMessage.set_date&sQG	KtDJJJ	K	K	K84?@@dJ	Ks7c	|jSr)r8rNs r#rzMaildirMessage.get_info-s
3zr%c~	t|tr	||_dStdt	|z)Nzinfo must be a string: %s)rrr8rr)r infos  r#rzMaildirMessage.set_info1s=.dC  	FDJJJ7$t**DEEEr%c	t|trw||||||dSt|trt|}d|vr|
d|dkr|
dd|vr|
dd|vr|
dd|vr|
d|d	tj
|dSt|trpt|}d|vr|d
d|vr|dd|vr|ddSdSt|t rt|}d|vr|d
d|vr|d
d|vr|dd|vr|ddSdSt|t$rdSt'dt)|z)NSRrOTDFA
MAILER-DAEMONrrepliedflaggedrrr$r$Cannot convert to specified type: %s)rrrBr?rrrrrrrHr{rrr
rr	add_labelr
rr)r r+rAs   r#r+zMaildirMessage._explain_to8sIg~..'	+dnn..///t00111T]]__-----
!1
2
2#	+(())Ee||  %%%  E))  %%%e||  %%%e||  %%%e||  %%%_dk$--//.J.JKKKKK

+
+	+(())E%$$X...e||$$Y///e||$$Y/////|

.
.	+(())E%!!(+++e||!!),,,e||!!*---e||!!+.....|

)
)	+DB MM*++
+r%r)rrrr1r$rrr?rBrHrKrrrrr+rr%r#rrs3 = = =((((KKK333CCCGGG
KKKFFF)+)+)+)+)+r%rcJeZdZ	dgZddZdZddZdZdZdZ	d	Z
d
ZdS)r_fromNc8	|ddt|tjjrH|}|2|dr||ddt||dS)Nr[TzFrom r)r{rrFr+r
rrr$)r r+rs   r#r$z_mboxMMDFMessage.__init__is5

ot,,,gu}455	,++--H#(;(;G(D(D#

hqrrl+++w'''''r%c	|jSr)rarNs r#rz_mboxMMDFMessage.get_fromrs
.zr%c|	|1|durtj}|dtj|zz
}||_dS)NTr)rrrra)r rtime_s   r#r{z_mboxMMDFMessage.set_fromvsCL}}

S4<....E


r%c^	|dd|ddzS)NStatusrX-Status)r<rNs r#r?z_mboxMMDFMessage.get_flags~s,8xx"%%R(@(@@@r%c	t|}d\}}dD] }||vr||z
}||!dD] }||vr||z
}||!|dt|z
}	|d|n&#t
$r|d|YnwxYw	|d|dS#t
$r|d|YdSwxYw)N)rr)rUrV)rXrYrZrrgrh)rr0rr[replace_headerr4
add_header)r rAstatus_flags
xstatus_flagsrGs     r#rBz_mboxMMDFMessage.set_flagssL7E

&,#m	#	#Du}}$T"""#	#	#Du}}%
T"""///
	4,7777	4	4	4OOHl33333	4	7
M:::::	7	7	7OOJ
666666	7s$B B<;B<C C<;C<c	|dt|t|zdSrDrErFs  r#rHz_mboxMMDFMessage.add_flagrIr%c	d|vsd|vrY|dt|t|z
dSdS)NrgrhrrErFs  r#rKz_mboxMMDFMessage.remove_flagscEtzT11NN2773t~~'7'7#8#83t99#DEEFFFFF 21r%c	t|tr:t|}d|vr|dd|vr|dd|vr|dd|vr|dd|vr|d|d	=|d
=d|dd}	|	tjtj
|d
dS#ttf$rYdSwxYwt|t rP||||dSt|t&rtt|}d|vr|dd|vr|dd|vr|d|d	=|d
=dSt|t*rtt|}d|vr|dd|vr|dd|vr|d|d	=|d
=dSt|t.rdSt1dt3|z)NrVrrYrZrUrTrXrWstatuszx-statusrz%a %b %d %H:%M:%S %Yrr\r]rrr^)rrrr?rrHrrrrcalendartimegmrstrptimer}
OverflowErrorrrBr{r
rrr_r
rr)r r+rA
maybe_dates    r#r+z_mboxMMDFMessage._explain_tos2Og~../	+(())Ee||""5)))e||  %%%e||  %%%e||  %%%e||  %%%!
#$--//"7"7"9"9"##">??J
  z6L2N2N"O"OPPPPP
.




!1
2
2	+dnn..///T]]__-----

+
+	+(())E%$$X...e||$$Y///e||$$Y///!
###

.
.	+(())E%!!(+++e||!!),,,e||!!*---!
###

)
)	+DB MM*++
+s>:D::EEr)rrrr1r$rr{r?rBrHrKr+rr%r#rrds9!(	((((AAA777,CCCGGG
1+1+1+1+1+r%rceZdZdS)rNrrrrr%r#rr00r%rc<eZdZ	dgZd	dZdZdZdZdZdZ	dS)
r

_sequencesNcL	g|_t||dSr)r|r
r$r*s  r#r$zMHMessage.__init__s(/w'''''r%c"	|jddSr)r|rNs r#rzMHMessage.get_sequencessBqqq!!r%c0	t||_dSr)rQr|)r rs  r#rzMHMessage.set_sequencessAy//r%c	t|tr'||jvr|j|dSdSt	dt|z)Nzsequence type must be str: %s)rrr|rrrr rs  r#rzMHMessage.add_sequenceseFh$$	Nt..&&x00000/.;d8nnLMMMr%c`		|j|dS#t$rYdSwxYwr)r|r0r}rs  r#remove_sequencezMHMessage.remove_sequencesHO	O""8,,,,,			DD	
--cd	t|trt|}d|vr|dn*|d|dd|vr|dd|vr|ddSdSt|trt|}d|vr|dn|d	d|vr|dd|vr|d
dSdSt|tr.|D]}||dSt|trWt|}d|vr|
dd|vr|
ddSdSt|trdStdt|z)
NrrrTr]rYr\rUROrVrZrr^)rrrrrrHrr
rrr_r
rr)r r+rrs    r#r+zMHMessage._explain_tossDg~.."	+D..0011I9$$""5))))""5)))  %%%I%%  %%%I%%  %%%%%&%
!1
2
2	+D..0011Iy((  &&&&  %%%I%%  %%%I%%  %%%%%&%

+
+
	+ ..00
/
/$$X....
/
/

.
.
	+D..0011I9$$!!(+++I%%!!*-----&%

)
)	+DB MM*++
+r%r)
rrrr1r$rrrrr+rr%r#r
r
s.!-((((
"""***NNN$+$+$+$+$+r%r
cPeZdZ	ddgZd
dZdZdZdZdZd	Z	d
Z
dZdZdS)rr_visibleNcr	g|_t|_t||dSr)rr
rr$r*s  r#r$zBabylMessage.__init__&s31		
w'''''r%c"	|jddSr)rrNs r#rzBabylMessage.get_labels,s5|AAAr%c0	t||_dSr)rQr)r r	s  r#rzBabylMessage.set_labels0s4F||r%c	t|tr'||jvr|j|dSdSt	dt|z)Nzlabel must be a string: %s)rrrrrrr rs  r#r_zBabylMessage.add_label4se9eS!!	HDL((##E*****)(84;;FGGGr%c`		|j|dS#t$rYdSwxYwr)rr0r}rs  r#remove_labelzBabylMessage.remove_label<sHB	L&&&&&			DD	rc,	t|jSrr
rrNs r#rzBabylMessage.get_visibleCsAt}%%%r%c0	t||_dSrr)r visibles  r#rzBabylMessage.set_visibleGs@((


r%c	|jD]0}||vr"|j|||(|j|=1dD]}||vr||jvr|||j|< dS)N)DateFromzReply-ToToCCSubject)rrRrj)r headers  r#update_visiblezBabylMessage.update_visibleKsGm((**	*	*F~~
,,VT&\BBBBM&))I	5	5F~~&
"="=(,V
f%	5	5r%c	t|trt|}d|vr|dn*|d|dd|vsd|vr|dd|vr|dd	|vr|d
dSdSt|trt|}d|vr|dn|dd	|vr|d
d|vr|ddSdSt|trWt|}d|vr|dd|vr|ddSdSt|trU|
||D]}||dSt|trdStdt|z)NrrrTrrr$rrUrrWrrVrXrZr\r^)rrrrrrHrr
rrrrr_r
rr)r r+r	rs    r#r+zBabylMessage._explain_toVsGg~..%	+**++F6!!""5))))""5)))  %%%f$$F(:(:  %%%V##  %%%F""  %%%%%#"
!1
2
2	+**++Fv%%  &&&&  %%%F""  %%%V##  %%%%%$#

+
+	+**++F6!!$$X...V##$$Y/////$#

.
.	+ 0 0 2 2333**
)
)!!%((((
)
)

)
)	+DB MM*++
+r%r)
rrrr1r$rrr_rrrrr+rr%r#rr!s1!*J 7(((($$$HHH&&&)))	5	5	5'+'+'+'+'+r%rceZdZdS)rNryrr%r#rrrzr%rceZdZ	ddZddZddZddZddZdZdZ	dd
Z
dZdZd
Z
dZdZdZdZdZedZeeZdS)rNc^	||_|||_dS||_dSr)rBrX_pos)r rposs   r#r$z_ProxyFile.__init__s/&
;DIIIDIIIr%cD	|||jjSr)_readrBrr sizes  r#rz_ProxyFile.readszz$
000r%cD	|||jjSr)rrBread1rs  r#rz_ProxyFile.read1szz$
 0111r%cD	|||jjSr)rrBrrs  r#rz_ProxyFile.readlineszz$
 3444r%cx	g}|D]3}||||t|z}|dkrn4|S)Nr)rr)r sizehintrhrs    r#	readlinesz_ProxyFile.readlinessU"		DMM$#CII%q==E
r%c#DK		|}|sdS|Vr)r)r rs  r#rZz_ProxyFile.__iter__s6!	==??D
JJJ		r%c	|jSr)rrNs r#rXz_ProxyFile.tells
"yr%rc	|dkr|j|j|j|||j|_dS)NrrBrrrXr offsetwhences   r#rz_ProxyFile.seeksQQ;;JOODI&&&
'''JOO%%			r%c	t|dr:	t|jdr|j|`dS#|`wxYwdS)NrBry)rmrBryrNs r#ryz_ProxyFile.closesd4!!	
4:w//'J$$&&&JJJDJ		s.AA	c	|d}|j|j||}|j|_|S)Nrr)r rread_methodrhs    r#rz_ProxyFile._readsL0<D
	"""T""JOO%%	
r%c	|SrrrNs r#	__enter__z_ProxyFile.__enter__s
2r%c.|dSr)ry)r excs  r#__exit__z_ProxyFile.__exit__s

r%c4|jSr)rBreadablerNs r#rz_ProxyFile.readablez""$$$r%c4|jSr)rBwritablerNs r#rz_ProxyFile.writablerr%c4|jSr)rBseekablerNs r#rz_ProxyFile.seekablerr%c4|jSr)rBrsrNs r#rsz_ProxyFile.flushsz!!!r%clt|dsdSt|jdsdS|jjS)NrBTrF)rmrBrrNs r#rz_ProxyFile.closeds=tW%%	4tz8,,	5z  r%rr)rrrr$rrrrrZrXrryrrrrrrrspropertyrrrrrr%r#rrsN(111122225555				&&&&%%%%%%%%%"""!!X!$L11r%rc2eZdZ	ddZdZd	dZdZdZdS)
rNc\	t|||||_||_dSr)rr$_start_stop)r rrdres    r#r$z_PartialFile.__init__s/(D!U+++


r%cH	t||jz
Sr)rrXrrNs r#rXz_PartialFile.tells8t$$t{22r%rc	|dkr|j|_d}n|dkr|j|_d}t|||dS)Nrrr0)rrrrrrs   r#rz_PartialFile.seeksQFQ;;DIFF
q[[
DIFff-----r%c	|j|jz
}|dkrdS||dks||kr|}t|||S)Nrr%)rrrr)r rr	remainings    r#rz_PartialFile._readsUIJ*	>>3<4!88ti'7'7DdK888r%c.t|dr|`dSdS)NrB)rmrBrNs r#ryz_PartialFile.close	s)4!!	


		r%)NNr)rrrr$rXrrryrr%r#rrsl0333....999r%rTc	d}	tr	tj|tjtjznT#t$rG}|jt
jt
jt
jfvrtd|j
zd}~wwxYw|r"	t|j
dz}|n8#t$r+}|jt
jt
jfvrYd}~dSd}~wwxYw		tj|j
|j
dzd}tj|j
n;#t t"f$r'tj|j
|j
dzd}YnwxYwdSdS#t&$r1tj|j
td|j
zwxYwdS#trtj|tj|rtj|j
dzxYw)NFzlockf: lock unavailable: %s.lockTzdot lock unavailable: %s)fcntllockfLOCK_EXLOCK_NBrrEAGAINr@rArrrYryrrrrrrr-r0LOCK_UN)rrVdotlock_donerpre_locks     r#rPrPsG2L%	
Au}u}<====


7u|U\5;GGG,-J-.V.4555
	1
,QVg-=>>    


7u|U[999FFFFF	


1-GHM16G+;<<<#'L
Ihm,,,,	'8(((IhmQVg-=>>>#'LLL(-,!L#
1
1
1	(-(((()C)**0111
1%	1	1,	*K5=)))	(Iafw&'''
sF5,:F5
BABBF5+B>=F5>
C3C.'F5-C..C33F58$D6E565E.+E5-E..E55;F00F55AG<c	trtj|tjtj|jdzrtj|jdzdSdS)Nr)rrrrrrrr0rs r#rSrS:se4&
Au}%%%	w~~afw&''$
	!&7"#####$$r%c	tj|tjtjztjzd}	t|dtj|S#tj|wxYw)Nrr>)rrrrO_RDWRry)rfds  r#r,r,As[M	rzBI-	95	A	ABD%  
sA!!A7c
	t|dttjdtjdtjS)Nr)r,r(rr&r'rr))rs r#rYrYIsULdddC	4D4D4D4D.4.@.B.B.B.B.0ikkk;<<<r%c	|ttdr(tj|dSdS)Nfsync)rsrmrrfilenors r#rWrWOsL:GGIIIr7
r%cN	t||dSr)rWryrs r#rrUs!DNNNGGIIIIIr%ceZdZdS)rNryrr%r#rr[s,,r%rceZdZdS)rNryrr%r#rr^sDDr%rceZdZdS)rNryrr%r#rrasHHr%rceZdZdS)rNryrr%r#rrd33r%rceZdZdS)rNryrr%r#rrgrr%r)T)1rrrsr&rr)rrF
email.messageemail.generatorrr?typesrrImportError__all__rr{rrr<rvrr	rrr+r
rrrr
rrrrrPrSr,rYrWr	Exceptionrrrrrrr%r#<module>rszJ
			



				LLLLEEEAAA

*

G
$
$f2f2f2f2f2f2f2f2Rsssssgsssl	F@@@@@"@@@F1.1.1.1.1.91.1.1.h*.*.*.*.*.9*.*.*.Zn*n*n*n*n*n*n*n*b	vvvvvvvvr"@"@"@"@"@em#"@"@"@Jj+j+j+j+j+Wj+j+j+Zn+n+n+n+n+wn+n+n+b11111"111E+E+E+E+E+E+E+E+P\+\+\+\+\+7\+\+\+~11111"111b2b2b2b2b2b2b2b2J$$$$$:$$$N((((T$$$<<<-----I---EEEEEEEEIIIIIEIII4444444444444%44444s>AA
Back to Directory File Manager