python (3.12.0)

(root)/
lib/
python3.12/
__pycache__/
imaplib.cpython-312.opt-2.pyc

ˑeb	dZddlZddlZddlZddlZddlZddlZddlZddlZddl	Z	ddl
m
Z
mZmZddl
mZ	ddlZdZgdZdZdZd	Zd
ZdZdZid
dddddddddddddddddddddddddddd dd!dd"did#dd$dd%dd&dd'dd(dd)dd*dd+dd,dd-dd.dd/dd0dd1dd2dd3dddddddddd4Zej4d5Zej4d6Zej4d7Zej4d8ej<Zej4d9Z ej4d:Z!ej4d;Z"ej4d<ej<Z#d8Z$d<Z%Gd=d>Z&erGd?d@e&Z'ejQd@GdAdBe&Z)GdCdDZ*dEjWdFZ,e-e,dGdDcic]\}}|j]|dGzc}}Z/dHZ0dIZ1dJZ2dKZ3e4dLk(rddl5Z5ddl6Z6	e5jjejndGddM\Z8Z9dZ<e8D]!\Z=Z;e=dOk(r	e>e;Ze=dPk(se;Z<e9re<fZ9#e9sdQZ9e9dZ?e6jZAe6jldReAdSe?xsdTdUZBdVeAdWdXzZCdYeAeBffdZd[d\d]d^ddeCffd_d`dadbdcdddedfdgfZDdhdidjdkd]dddeCffdfdlfZEdmZF	e<r	e)e<ZGne&e?ZGeGjdnk(reDdGdZDeGjdoeGjzeGjdpeGjeDD]\ZLZ9eFeLe9eFdqdrD]FZMejdseMZOeOreOjdGZQneMjWdtZQeFdueQfHeED]>\ZLZ9eFeLe9ZReLe9fdjk7reRdtjWZSeSs-eFdvddweSdtzdxf@eTdyyy#e$rdZYwxYwcc}}w#e5jt$rZ;dN\Z8Z9YdZ;[;dZ;[;wwxYw#eTdzeseTd{ejndzxYw)|z2.58N)datetimetimezone	timedelta)DEFAULT_BUFFER_SIZETF)IMAP4IMAP4_streamInternaldate2tupleInt2AP
ParseFlagsTime2Internaldate
i)	IMAP4REV1ri@BAPPEND)AUTHSELECTEDAUTHENTICATE)NONAUTH
CAPABILITY)rrrLOGOUTCHECK)rCLOSECOPYCREATEDELETE	DELETEACLENABLE)rEXAMINEEXPUNGEFETCHGETACL
GETANNOTATIONGETQUOTAGETQUOTAROOTMYRIGHTSLISTLOGINrLSUBMOVE	NAMESPACENOOPPARTIAL	PROXYAUTHRENAMESEARCHSELECTSETACL
SETANNOTATIONSETQUOTASORT)STARTTLSSTATUSSTORE	SUBSCRIBETHREADUIDUNSUBSCRIBEUNSELECTs\+( (?P<data>.*))?s.*FLAGS \((?P<flags>[^\)]*)\)s.*INTERNALDATE "(?P<day>[ 0123][0-9])-(?P<mon>[A-Z][a-z][a-z])-(?P<year>[0-9][0-9][0-9][0-9]) (?P<hour>[0-9][0-9]):(?P<min>[0-9][0-9]):(?P<sec>[0-9][0-9]) (?P<zonen>[-+])(?P<zoneh>[0-9][0-9])(?P<zonem>[0-9][0-9])"s.*{(?P<size>\d+)}$s
\r\n|\r|\ns%\[(?P<type>[A-Z-]+)( (?P<data>.*))?\]s$\* (?P<type>[A-Z-]+)( (?P<data>.*))?s3\* (?P<data>\d+) (?P<type>[A-Z-]+)( (?P<data2>.*))?ceZdZ	GddeZGddeZGddeZdedfd	Zd
Z	dZ
dZd
ZdZ
dZdZdedfdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZd Zd!Z d"Z!d#Z"d$Z#d%Z$d&Z%d'Z&d(Z'dQd)Z(d*Z)d+Z*d,Z+d-Z,dQd.Z-d/Z.d0Z/d1Z0d2Z1d3Z2d4Z3d5Z4dRd6Z5d7Z6d8Z7d9Z8d:Z9dSd;Z:d<Z;d=Z<d>Z=d?Z>d@Z?dAZ@dBZAdCZBdDZCdEZDdFZEdGZFdHZGdIZHdTdJZIdKZJdLZKdMZLdNZMdOZNdPZOy)UrceZdZy)IMAP4.errorN__name__
__module____qualname__;/BuggyBox/python/3.12.0/bootstrap/lib/python3.12/imaplib.pyerrorr?rErGceZdZy)IMAP4.abortNr@rDrErFabortrJrHrErKceZdZy)IMAP4.readonlyNr@rDrErFreadonlyrMrHrErNNcNt|_d|_d|_i|_i|_d|_d|_d|_d|_	|j|j|||	|jy#t$r"	|j#t$rYwxYwwxYw)NrrOFr)Debugdebugstateliteraltagged_commandsuntagged_responsescontinuation_responseis_readonlytagnum_tls_established_mode_asciiopen_connect	ExceptionshutdownOSErrorselfhostporttimeouts    rF__init__zIMAP4.__init__s

!"$%'"  %	
		$g&	MMO	





	s0(A99	B$BB$	B B$B  B$cd|_d|_tjttj
|_tjttj
|_y)NFascii)	utf8_enabled	_encodingrecompile_LiteralASCIILiteral_Untagged_statusUntagged_statusrbs rFr[zIMAP4._mode_asciis?! zz(BHH5!zz*:BHHErEcd|_d|_tjt|_tjt|_y)NTutf-8)rirjrkrlrmrorprqrrs rF
_mode_utf8zIMAP4._mode_utf8s3  zz(+!zz*:;rEcttjdd|_t	j
d|jzdztj|_	|j|_d|j vrd|_n1d|j vrd|_n|j%|j|j'	t*D]}||j(vr||_y|j%d	)
Niis(?P<tag>s"\d+) (?P<type>[A-Z]+) (?P<data>.*)PREAUTHrOKrzserver not IMAP4 compliant)r
randomrandinttagprerkrlrntagre_cmd_log_len_cmd_log_idx_cmd_logrR_mesg__version__
_get_responsewelcomerVrSrG_get_capabilitiescapabilitiesAllowedVersionsPROTOCOL_VERSION)rbversions  rFr]zIMAP4._connectsV^^D%89ZZ++!&@!ABD((L
))+///DJ
T,,
,"DJ**T\\** '	Gd///$+D!		jj566rEcb|tvrt||jStd|z)NzUnknown IMAP4 command: '%s')CommandsgetattrlowerAttributeError)rbattrs  rF__getattr__zIMAP4.__getattr__
s.84..:TABBrEc|SNrDrrs rF	__enter__zIMAP4.__enter__srEcd|jdk(ry	|jy#t$rYywxYwNr)rSlogoutr`)rbargss  rF__exit__zIMAP4.__exit__s1::!	KKM		s#	//c"|
|std|jsdn|j}tjd||j|j||jf}|tj||Stj|S)Nz0Non-blocking socket (timeout=0) is not supportedzimaplib.open)
ValueErrorrcsysauditrdsocketcreate_connection)rbrercaddresss    rF_create_socketzIMAP4._create_socket#s{wOPP99t$))		.$		499=#++GW==''00rEc	||_||_|j||_|jj	d|_y)Nrb)rcrdrsockmakefilefileras    rFr\z
IMAP4.open0s?	
		''0	II&&t,	rEc:	|jj|Sr)rreadrbsizes  rFrz
IMAP4.read<s,yy~~d##rEc	|jjtdz}t|tkDr|j	dtz|S)Nzgot more than %d bytes)rreadline_MAXLINElenrGrblines  rFrzIMAP4.readlineAsC$yy!!(Q,/t9x**5@AArEcj	tjd|||jj|y)Nzimaplib.send)rrrsendallrbdatas  rFsendz
IMAP4.sendIs'"		.$-		$rEc	|jj	|jjtj
|jjy#t$r8}|jtjk7rt|dddk7rYd}~Wd}~wwxYw#|jjwxYw)Nwinerrorri&')
rcloserr_r	SHUT_RDWRr`errnoENOTCONNr)rbexcs  rFr_zIMAP4.shutdownOs.		
	IIv//0
IIOO			U^^+3
A.%7
	
IIOOs))A!!	B"*.BB%B""B%%Cc	|jSr)rrrs rFrzIMAP4.socket_s	yyrEc	d}|jddg|\}}|dr||fS|j\}}|j|||S)NRECENTrx)_untagged_responsenooprbnametypdats    rFrecentzIMAP4.recentks\	**4$>Sr78O99;S&&sC66rEcH	|j|dg|jSr)rupper)rbcodes  rFresponsezIMAP4.response|s&	&&tdVTZZ\BBrEc	d}|sd}|r|d|dfdk7rd|z}nd}|rt|}nd}tjt|}|jrd|zdz}||_|j
||||S)	NrINBOXrr()(%s)sUTF8 ())rMapCRLFsubCRLFrirT_simple_command)rbmailboxflags	date_timemessagerrTs       rFappendzIMAP4.appends	Gar#y0E))4II++dG,')D0G##D'5)DDrEc	|j}t|j|_|j	d|\}}|dk7r$|j|dj
ddd|_||fS)Nrrxrrtreplacer)r_AuthenticatorprocessrTrrGdecoderS)rb	mechanism
authobjectmechrrs      rFauthenticatezIMAP4.authenticatest	 
&j199''=S$;**SW^^GY?@@
CxrEcV	d}|j|\}}|j|||S)Nrrrrs    rF
capabilityzIMAP4.capabilitys7	0''-S&&sC66rEc&	|jdS)Nrrrrs rFcheckzIMAP4.checks	##G,,rEc\		|jd\}}d|_||fS#d|_wxYw)NrrrrSrbrrs   rFrzIMAP4.closes;		 ++G4HCDJCx DJ"	+c*	|jd||S)Nrr)rbmessage_setnew_mailboxs   rFcopyz
IMAP4.copys	##FKEErEc(	|jd|S)Nrrrbrs  rFcreatezIMAP4.create	##Hg66rEc(	|jd|S)Nrrrs  rFdeletezIMAP4.deleterrEc*	|jd||S)Nrr)rbrwhos   rF	deleteaclzIMAP4.deleteacls	##K#>>rEc	d|jvrtjd|jd|\}}|dk(r"d|j	vr|j||fS)NrzServer does not support ENABLErxzUTF8=ACCEPT)rrrGrrru)rbrrrs    rFenablezIMAP4.enablesh	4,,,++>??((:>	T$;=J,<,<,>>OODyrEcV	d}|j|\}}|j|||S)Nrrrs    rFexpungez
IMAP4.expunges7	''-S&&sC66rEcZ	d}|j|||\}}|j|||S)Nr r)rbr
message_partsrrrs      rFfetchzIMAP4.fetchs;	''k=IS&&sC66rEcT	|jd|\}}|j||dS)Nr!ACLrrbrrrs    rFgetaclzIMAP4.getacl(s4	''':S&&sC77rEcX	|jd|||\}}|j||dS)Nr"
ANNOTATIONr)rbrentry	attributerrs      rF
getannotationzIMAP4.getannotation1s8	!''%SS&&sC>>rEcT	|jd|\}}|j||dS)Nr#QUOTAr)rbrootrrs    rFgetquotazIMAP4.getquota9s4	''
D9S&&sC99rEc	|jd|\}}|j||d\}}|j||d\}}|||gfS)Nr$r	QUOTAROOTr)rbrrrquota	quotaroots      rFgetquotarootzIMAP4.getquotarootDs_	''@S,,S#w?
U00c;GYY&&&rEcZ	d}|j|||\}}|j|||S)Nr&rrb	directorypatternrrrs      rFlistz
IMAP4.listO;	''iAS&&sC66rEc	|jd||j|\}}|dk7r|j|dd|_||fS)Nr'rxrr)r_quoterGrS)rbuserpasswordrrs     rFloginzIMAP4.login[sT	''t{{87LMS$;**SW%%
CxrEcZ	||c|_|_|jd|jS)NzCRAM-MD5)rrr_CRAM_MD5_AUTH)rbrrs   rFlogin_cram_md5zIMAP4.login_cram_md5is2	$( 	4=  T-@-@AArEc	ddl}t|jtr|jj	dn|j}|j
dz|j
||djzS)Nrrt md5)hmac
isinstancerstrencoderHMAC	hexdigest)rb	challenger%pwds    rFr zIMAP4._CRAM_MD5_AUTHrs\?0:4==#0Nt}}##G,26--	yy33	5!A!K!K!MMMrEcb	d|_|jd\}}|j||fSr)rSrr_rs   rFrzIMAP4.logoutzs6	
''1S

CxrEcZ	d}|j|||\}}|j|||S)Nr(rrs      rFlsubz
IMAP4.lsubrrEcT	|jd|\}}|j||dS)Nr%rrs    rFmyrightszIMAP4.myrightss4	&&z7;C&&sC<<rEcV	d}|j|\}}|j|||S)Nr*rrs    rF	namespacezIMAP4.namespaces7	''-S&&sC66rEc(		|jdS)Nr+)rR_dump_urrVrrrs rFrz
IMAP4.noops	##F++rEc^	d}|j|||||\}}|j||dS)Nr,r r)rbmessage_nummessage_partstartlengthrrrs        rFpartialz
IMAP4.partials@	''k<PVWS&&sC99rEc,	d}|jd|S)Nr-r)rbrrs   rF	proxyauthzIMAP4.proxyauths!	##K66rEc*	|jd||S)Nr.r)rb
oldmailbox
newmailboxs   rFrenamezIMAP4.renames	##Hj*EErEc	d}|r:|jrtjd|j|d|g|\}}n|j|g|\}}|j	|||S)Nr/z'Non-None charset not valid in UTF8 modeCHARSET)rirrGrr)rbcharsetcriteriarrrs      rFsearchzIMAP4.searchsy	  kk"KLL+t++D)WPxPHC+t++D<8<HC&&sC66rEc	i|_||_|rd}nd}|j||\}}|dk7rd|_||fSd|_d|jvr|s	|j
d|z||jjddgfS)	Nrr0rxrr	READ-ONLYz%s is not writableEXISTS)rVrXrrSrRr5rNget)rbrrNrrrs      rFselectzIMAP4.selects
	#%#DD''g6S$;DJ8O
$111 -- 4w >??D++//4&AAArEc,	|jd|||S)Nr1r)rbrrwhats    rFsetaclzIMAP4.setacls 	##HgsDAArEcV	|jdg|\}}|j||dS)Nr2rr)rbrrrs    rF
setannotationzIMAP4.setannotation
s9	(4''?$?S&&sC>>rEcV	|jd||\}}|j||dS)Nr3rr)rbr
limitsrrs     rFsetquotazIMAP4.setquotas6	''
D&AS&&sC99rEc	d}|d|dfdk7rd|z}|j|||g|\}}|j|||S)Nr4rrrrr)rb
sort_criteriarDsearch_criteriarrrs       rFsortz
IMAP4.sortse	
!]2./9<"]2M'4''mWWWS&&sC66rEcd}ts|jd|jr|jd||jvr|jd|tj}|j|\}}|dk(rd|j|j|j|_	|jjd|_d|_|jn|jd	|j|||S)
Nr5zSSL support missingzTLS session already establishedzTLS not supported by serverrxserver_hostnamerTzCouldn't establish TLS session)HAVE_SSLrGrZrKrssl_create_stdlib_contextrwrap_socketrrcrrrr)rbssl_contextrrrs     rFstarttlszIMAP4.starttls)s**233  **>??t(((**:;;446K''-S$;#//		@D		0KDI		**40DI$(D!""$**=>>&&sC66rEcZ	d}|j|||\}}|j|||S)Nr6r)rbrnamesrrrs      rFstatuszIMAP4.status@s=	''gu=S&&sC66rEc|	|d|dfdk7rd|z}|jd|||\}}|j||dS)Nrrrrr7r r)rbrcommandrrrs      rFstorezIMAP4.storeLsV	
!HU2Y9,UNE''guMS&&sC99rEc(	|jd|S)Nr8rrs  rF	subscribezIMAP4.subscribeWs	##K99rEc^	d}|j|||g|\}}|j|||S)Nr9r)rbthreading_algorithmrDrVrrrs       rFthreadzIMAP4.thread_sC	'4''.A7]_]S&&sC66rEcd	|j}|tvr|jd|z|jt|vr:|jd|d|jddj	t|d}|j
||g|\}}|dvr|}nd}|j
|||S)	NzUnknown IMAP4 UID command: %scommand  illegal in state , only allowed in states , r:)r/r4r9r )rrrGrSjoinrr)rbrerrrrs      rFuidz	IMAP4.uidis	--/("**<wFGG::Xg..**%tzz"ii(9:<=
='4''g==S22DD&&sC66rEc(	|jd|S)Nr;rrs  rFunsubscribezIMAP4.unsubscribes	##M7;;rEc\		|jd\}}d|_||fS#d|_wxYw)Nr<rr)rbrrs   rFunselectzIMAP4.unselects<		 ,,Z8ICDJDy DJrc	|j}|tvr|jft|<|j|g|Sr)rrrSrrbrrs   rFxatomzIMAP4.xatomsE	zz|x"jj]HTN#t##D0400rEcd|d}|j}	||vr||j|y|g||<yNrE)rVrRrrrJr)rbrrurs    rF_append_untaggedzIMAP4._append_untaggeds>;C

$
$"9sGNN3eBsGrEc|jjd}|r.|j|dj|jdy)NBYErr)rVrJrKrrj)rbbyes  rF
_check_byezIMAP4._check_byesB%%))%0**SW^^DNNIFGGrEc|jt|vrAd|_|jd|d|jddj	t|dD]}||j
vs|j
|= d|j
vr|js|jd|j}t||j}|dz|z}|D]3}|t|trt||j}|dz|z}5|j}|Qd|_t|t|jur|}n'd}|td	t|z|jz}		|j'|t(z||S	|j/r"|j0|r|S|j/r"r||j2}		|j'||j't(|s	|St#t*$r}	|j-d
|	zd}	~	wwxYw#t*$r}	|j-d
|	zd}	~	wwxYw)NrmrnrorprxNOBADrHz#mailbox status changed to READ-ONLY z {%s}zsocket error: %s)rSrrTrGrqrVrXrN_new_tagbytesrjr&r'type_commandrrRr_logrrr`rKrrUrW)
rbrrrtagrargrT	literatorvals
          rFrzIMAP4._commandsC::Xd^+DL**"DJJ"ii79:
:
'	1Cd---++C0	1$111  -- EFFmmoT4>>*TzD 	%C{H#s#C0$;$D		%,,DLG}T]] 33#	 	eGc'l$:DNNKK	7IIdTk"?J$$&'',J$$&#D$>$>?
;		'"		$
3
	7**/#566	72
;jj!3c!9::
;s0,G=&H"=	HHH"	I+H??Ict|dk(}|s|j	|j||\}}|s|j|dk(r|j|d|d|||fS#|j$r}|jd|d|d}~w|j$r}|jd|d|d}~wwxYw)Nr)
expect_byez	command:  => rz command error: r#)r_get_tagged_responserKrG)rbrrrrrrs       rF_command_completezIMAP4._command_completes("OO	@11#&1IIC
OO%<**$TJKKDyzz	@**D#>??zz	@**D#>??	@s#A##B72B		B7B22B7c|j\}}|dgk(r|jdt|d|j}|j	}t|j
|_y)Nz"no CAPABILITY response from serverr)rrGr'rjrtuplesplitrrs   rFrzIMAP4._get_capabilities#s]??$S4&=**ABB#b'4>>*iik!#))+.rEc|j}|j|j|r|jj	d}||j
vr|j
d|z|jj	d}t||j}|jj	d}||gf|j
|<nd}|jt|s7|j|j|r|jj	d}|jK|jt|r!|jj	d|_y|j
d|z|jj	d}t||j}|jj	d}|d}|r|dz|z}|j|j|rwt|jj	d	}	|j#|}|j%|||f|j}|j|j|rw|j%|||d
vrr|jt&|r\|jj	d}t||j}|j%||jj	d	|S)Nrzunexpected tagged response: %rrrdata2zunexpected response: %rrErrr)	_get_line_matchr|mogrouprUrKr'rjUntagged_responserqContinuationrWrointrRrrr}
Response_code)rbresprrrdat2rrs        rFrzIMAP4._get_response,s\~~;;tzz4(''--&C$...jj!AD!HII''--'Cc4>>*C''--'C),seD  %D;;0$7;;t33T:77==1Dww;;|T215v1FD.jj!:T!ABB''--'Cc4>>*C''--'C{#C3:,S++dllC0477==01yy%%cC;7nn&!++dllC0$
!!#s+%%$++mS*I''--'Cc4>>*C!!#tww}}V'<=rEc	|j|}||j|=|S|r$d}|jj|d}|||fS|j	|j	h#|j
$r}	d}~wwxYw)Nr)rUrVpoprrrKrR	print_log)rbrrresultrrrs       rFrzIMAP4._get_tagged_response|s))#.F!((-
--11#t<?:%
OO
""$/0::
	
sA**B9A;;Bc|j}|s|jd|jds|jd|z|dd}	|S)Nzsocket error: EOFr
z#socket error: unterminated line: %r)rrKendswithrRrrrs  rFrzIMAP4._get_linesX}}**011}}W%**BTIJJCRy
rEcL|j||_	|jduSr)matchrrRrrgroups)rbcress   rFrzIMAP4._matchs'
))A,wwd""rEc|jtt|j|jz}|jdz|_d|j
|<|S)Nr)r{rr'rYrjrU)rbrs  rFrzIMAP4._new_tagsHkkE#dkk"2DNNCCkkAo$(S!
rEcZ|jdd}|jdd}d|zdzS)N\z\\"z\")r)rbrs  rFrzIMAP4._quotes0kk$'kk#u%Sy3rEcH|j||j|g|Sr)rrrxs   rFrzIMAP4._simple_commands%%%dMDMM$,F,FGGrEcz|dk(r||fS||jvr|dgfS|jj|}	||fS)Nr)rVrrRr)rbrrrrs     rFrzIMAP4._untagged_responsesQ$;8Ot...;&&**40DyrE)z""*)rFr)F)TrArBrCr^rGrKrN
IMAP4_PORTrfr[rur]rrrrr\rrrr_rrrrrrrrrrrrrrrrr
rrrrr!r rr/r1r3rr;r=rArFrKrNrPrSrWr`rcrfrhrkrrrtrvryr}rrrrrrrrrrrrrr5rrrDrErFrrs-^!	 5Z2F<'7TC1T	-$
 
 7"CE4:7-F77?
778?:'	7BN
	7=7,	:
7F7$B@B?:77.	7::772<
 1,HJZ$/M`B&	#H
	rErc6eZdZ	defddddZdZdedfdZy)	IMAP4_SSLrON)r_recn|tj}||_tj	||||yr)r\r]r_rrf)rbrcrdr_res     rFrfzIMAP4_SSL.__init__s0"!88:*DNN4tW5rEc|tj||}|jj||jS)NrY)rrr_r^rc)rbrers   rFrzIMAP4_SSL._create_sockets=''g6D##//@D		0K
KrEc6	tj||||yr)rr\ras    rFr\zIMAP4_SSL.open!s


JJtT41rE)rArBrCIMAP4_SSL_PORTrfrr\rDrErFrrs1	!#	6$($	6	K
^T	2rErc4eZdZ	dZddZdZdZdZdZy)	rc<||_tj|yr)rerrf)rbres  rFrfzIMAP4_stream.__init__8s
trENc>	d|_d|_d|_d|_t	j
|jttjtjdd|_	|jj|_|jj|_
y)NT)bufsizestdinstdoutshell	close_fds)rcrdrr
subprocessPopenrerPIPErr	writefilerreadfileras    rFr\zIMAP4_stream.open=sv					!'''//*//$(++++
rEc:	|jj|Sr)rrrs  rFrzIMAP4_stream.readMs,}}!!$''rEc8	|jjSr)rrrrs rFrzIMAP4_stream.readlineRs$}}%%''rEcp	|jj||jjyr)rwriteflushrs  rFrzIMAP4_stream.sendWs'"T"rEc	|jj|jj|jj	yr)rrrrwaitrrs rFr_zIMAP4_stream.shutdown]s5.

rE)NNN)	rArBrCrfr\rrrr_rDrErFrr,s%
, (
(
rErc&eZdZ	dZdZdZdZy)rc||_yr)r)rbmechinsts  rFrfz_Authenticator.__init__ks		rEcj|j|j|}|y|j|S)N*)rrr()rbrrets   rFrz_Authenticator.processns0iiD)*;{{3rEcd}t|tr|jd}|r?t|dkDr|dd}|dd}n|}d}t	j
|}|r||ddz}|r?|S)NrErt0r)r&r'r(rbinascii
b2a_base64)rbinpouptes     rFr(z_Authenticator.encodets}c3**W%C3x"}H"#h##A&AAcrFl
rEc2|sytj|Sr{)r
a2b_base64)rbrs  rFrz_Authenticator.decodes""3''rEN)rArBrCrfrr(rrDrErFrres 0(rErz0 Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Decr#rc		tj|}|syt|jd}|jd}t	|jd}t	|jd}t	|jd}t	|jd}t	|jd}t	|jd}	t	|jd	}
|	d
z|
zd
z}|dk(r|}||||||dddf	}tj||z
}
tj|
S)
Nmonzonendayyearhourminseczonehzonem<-r)	InternalDaterMon2numrrcalendartimegmtime	localtime)rrrrrrrrrrrzonettutcs              rFr	r	s
		D	!B

"((5/
"CHHWE

bhhuo
Crxx Drxx D

bhhuo
C

bhhuo
C!"E!"E
"Hub D}u
S$S"b"	5B
//"

$C>>#rEcv	d}d}tt|}|rt|d\}}|||dz|z}|r|S)NrEsABCDEFGHIJKLMNOPr)rabsdivmod)numrAPmods    rFr
r
sN7

C'r

c#h-C

#r?SSUmc!JrEc	tj|}|syt|jdj	S)NrDr)Flagsrrrr)rrs  rFrrs67	T	B
'"((*++rEc<	t|ttfr3tj|t
jj}nt|tr1	|j}t!|}t|dddt|i}nTt|tr|j"t%d|}n*t|t&r|d|dfdk(r|St%d	d
j)t*|j,}|j/|S#t$rtjrZ|d}|dk(r+tjtj|d}tj
tjf|}ntj
}Y2wxYw)Nr)secondstzinfozdate_time must be awarer)rrzdate_time not of a known typez"%d-{}-%Y %H:%M:%S %z")r&rfloatr
fromtimestamprr
astimezoner	tm_gmtoffrrdaylightrmktimealtzonerrrr'formatMonthsmonthstrftime)rdtgmtoffdstdeltafmts      rFrrsb	)c5\*

#
#I$,LL22<*,		Iu	%		(((F&)
y!}
=Xe_
=	Ix	(#677
	Is	#1im(D	(Q899
"
)
)&*:
;C
;;s'	(}}l"9..Y)?@CC==$,,7<<--	(sDBFF__main__zd:s:)rDrDz-dz-s)rOzIMAP password for z on 	localhostz: zJFrom: %(user)s@localhost%(lf)sSubject: IMAP4 test%(lf)s%(lf)sdata...%(lf)s
)rlfr)r)
/tmp/xxx 1)rA)rz/tmp/yyy)r
/tmp/yyz 2rr)r)z/tmpzyy*)rKr)rF)NSUBJECTtest)r)1z(FLAGS INTERNALDATE RFC822))rf)rFLAGSz
(\Deleted))r3rD)rrD)rrD)rrD)rKrD)r)UIDVALIDITY)rr)r/ALL)r)rI)rrDctj|d|tt||\}}tj|d|d||dk(r|d|S)Nr#rrr)Mrr)cmdrrrs    rFrunr%0sP	3%&"71c?D)S	c3/0$;c!f
rErzPROTOCOL_VERSION = %szCAPABILITIES = r)z/tmp/zyy%z.*"([^"]+)"$rrrrz%sz:(FLAGS INTERNALDATE RFC822.SIZE RFC822.HEADER RFC822.TEXT)z
All tests OK.z
Tests failed.z8
If you would like to see debugging output,
try: %s -d5
)Urrrryrkrrrrrrrriorr\r[ImportError__all__rrQrrrrrrlrrrrnrorrrrqrmrprrrrrrr
	enumerater(rr	r
rrrAgetoptgetpassargvoptlistrrGrstream_commandoptrrcgetuserUSERPASSWD	test_mesg	test_seq1	test_seq2r%r#rSrrrr$mlrrrpathrrrprint)nrs00rF<module>r:sv
,KKKKK22"H8
	

(
,
,,
	,
	A	,

	
,
	

,
	
,
	,,
	,,
	,,
	
,
	,,
	
,
	
,
	,,
 	,!,
"	,#,
$	,%,
&	,',
(	,),
*	+,
,	A-,
.	,/,
0	
1,
2	,3,
4	A5,
6	
7,
8		9,
:	,;,
<	
=,
>	,?,
@	,A,
B	,C,
D	,E,
F	
G,
H%,%,%%,%W,
`rzz01

45rzz"**+RXX
6
"**^
$

DE
BJJGH"**;RXXG"Jxxv##2E#2JNN;555r*(*(X
<	A	A#	F&/qr
&;
<da188:ac>
<F	,%Rz%

chhqrlF;
N2C$;HE
D[ N 127D7??D
W__tTEX[EXY
ZF\gkrv_wwItVn*
dD)45)3,I$!
dD),-I)^,AdA77f!!"
I	'!*<*<<=	q~~78!	HCTN	f./	#B/2.B"((1+4B$4'"		#"		SHCc4.CDz77b'--/CBPR
S		S	 {q.Hd+=`<<
j	
 
hhqk

	s<O
O!#O'>DP	OO'P6PP	%P.