MINI MINI MANI MO
3
  \/              2   @   s  d Z ddlZddlZddlZddlZddlZddlZddlZddlZddl	Z	ddl
m
Z
mZmZ ddl
mZ yddlZdZW n ek
r   dZY nX ddd	d
ddgZd
ZdZdZdZdfZdZdgdhdidjdkdldmdndodpdqdrdsdtdudvdwdxdydzd{d|d}d~dddddddddddddddddd)ZejdZejdZejdZejdejZejdZ ejdZ!ejdZ"ejdejZ#dZ$dZ%G dd dZ&erG d d! d!e&Z'ej(d! G d"d de&Z)G d#d$ d$Z*d%j+d&Z,d'd( e-e,d)d D Z.d*d	 Z/d+d
 Z0d,d Z1d-d Z2e3d.krddl4Z4ddl5Z5ye4j4ej6d)d d/\Z7Z8W n0 e4j9k
rn Z: zf f  Z7Z8W Y ddZ:[:X nX dZ;x@e7D ]8\Z<Z:e<d0kre=e:Zne<d1krze:Z;e8sze;fZ8qzW e8sdZ8e8d Z>e5j? Z@e5j5d3e@e>pd4f ZAd5e@d6d7 ZBd8e@eAffdddd?d>ddeBffddddddMf fdNf fdOf fdPf ffZCdCf fdddd?dddeBffdOf fdWf ffZDdXdY ZEy&e;re)e;ZFne&e>ZFeFjGdkreCd)d ZCeFjHdZeFjI  eFjHd[eFjJf  xeCD ]\ZKZ8eEeKe8 qW xJeEd@dD ]<ZLejMd^eLZNeNreNjOd)ZPneLj+ d ZPeEd_ePf qW x\eDD ]T\ZKZ8eEeKe8ZQeKe8fdkrVq2eQd j+ ZReRslq2eEdSd`daeRd  dbf q2W eSdc W n.   eSdd eseSdeej6d    Y nX dS )z2.58    N)datetimetimezone	timedelta)DEFAULT_BUFFER_SIZETFIMAP4IMAP4_streamInternaldate2tupleInt2AP
ParseFlagsTime2Internaldates   
   i  	IMAP4REV1i@B AUTHSELECTEDNONAUTHLOGOUT))APPENDAUTHENTICATE
CAPABILITYCHECKCLOSECOPYCREATEDELETE	DELETEACLENABLEEXAMINEEXPUNGEFETCHGETACL
GETANNOTATIONGETQUOTAGETQUOTAROOTMYRIGHTSLISTLOGINr   LSUBZMOVE	NAMESPACENOOPPARTIAL	PROXYAUTHRENAMESEARCHSELECTSETACL
SETANNOTATIONSETQUOTASORTSTARTTLSSTATUSSTORE	SUBSCRIBETHREADUIDUNSUBSCRIBEs   \+( (?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>.*))?c               @   s  e Zd ZG dd deZG dd deZG dd deZdefdd	Zd
d Z	dd
 Z
dd Zdd Zdd Z
dd Zdd ZdefddZdd Zdd Zdd Zd d! Zd"d# Zd$d% Zd&d' Zd(d) Zd*d+ Zd,d- Zd.d/ Zd0d1 Zd2d3 Zd4d5 Zd6d7 Zd8d9 Z d:d; Z!d<d= Z"d>d? Z#d@dA Z$dBdC Z%dDdE Z&dFdG Z'ddJdKZ(dLdM Z)dNdO Z*dPdQ Z+dRdS Z,ddTdUZ-dVdW Z.dXdY Z/dZd[ Z0d\d] Z1d^d_ Z2d`da Z3dbdc Z4ddfdgZ5dhdi Z6djdk Z7dldm Z8dndo Z9ddqdrZ:dsdt Z;dudv Z<dwdx Z=dydz Z>d{d| Z?d}d~ Z@dd ZAdd ZBdd ZCdd ZDdd ZEdd ZFdd ZGdd ZHdd ZIdd ZJdd ZKdd ZLdd ZMdd ZNdpS )r   c               @   s   e Zd ZdS )zIMAP4.errorN)__name__
__module____qualname__ r<