B ZqßHHô#ã@sÚddddgZddlZddlZdZdZdZd d d d d dddddddddddd dddddddgZd d!d"d#d$d%d&gZddddd'd(d)d'd*d)d+d*d,d+d-œZd.d„Z d/d0„Z d1d„Z d2d„Z d3d„Z Gd4d5„d5ƒZGd6d7„d7eƒZdS)8Ú mktime_tzÚ parsedateÚ parsedate_tzÚquoteéNú Úz, ZjanZfebZmarZaprZmayZjunZjulZaugÚsepÚoctZnovZdecZjanuaryZfebruaryZmarchZaprilZjuneZjulyZaugustZ septemberZoctoberZnovemberZdecemberZmonZtueZwedZthuZfriZsatZsunipþÿÿiÔþÿÿi þÿÿi¨ýÿÿiDýÿÿiàüÿÿ)ZUTZUTCZGMTÚZZASTZADTZESTZEDTZCSTZCDTZMSTZMDTZPSTZPDTcCs,t|ƒ}|sdS|ddkr$d|d<t|ƒS)Né r)Ú _parsedate_tzÚtuple)ÚdataZres©rú3/opt/alt/python37/lib/python3.7/email/_parseaddr.pyr-s  c CsÆ|sdS| ¡}|sdS|d d¡s6|d ¡tkr>|d=n.|d d¡}|dkrl|d|dd…|d<t|ƒdkr¢|d d¡}t|ƒdkr¢||dd…}t|ƒdkr|d}| d¡}|dkrÔ| d¡}|dkrþ|d|…||d…g|dd…<n | d ¡t|ƒd krdS|dd …}|\}}}}}| ¡}|tkrb|| ¡}}|tkrbdSt  |¡d}|d kr‚|d 8}|ddkrœ|dd…}| d ¡}|dkrº||}}|ddkrÔ|dd…}|d  ¡sì||}}|ddkr|dd…}| d ¡}t|ƒd kr,|\} } d} n~t|ƒdkrF|\} } } ndt|ƒdkr¦d|dkr¦|d d¡}t|ƒd krŒ|\} } d} nt|ƒdkrª|\} } } ndSy,t |ƒ}t |ƒ}t | ƒ} t | ƒ} t | ƒ} Wnt k rìdSX|dkr|dkr |d7}n|d7}d} |  ¡}|tkr4t|} n>y t |ƒ} Wnt k rVYnX| dkrr| d¡rrd} | r®| dkrŽd} | } nd} | | dd| dd} |||| | | ddd| g S)Nrú,ééú-éú+éÿÿÿÿréé ú:éÚ0Ú.édéDiliÐié<)ÚsplitÚendswithÚlowerÚ _daynamesÚrfindÚlenÚfindÚappendÚ _monthnamesÚindexÚisdigitÚintÚ ValueErrorÚupperÚ _timezonesÚ startswith)rÚiZstuffÚsÚddZmmZyyZtmZtzZthhZtmmZtssZtzoffsetZtzsignrrrr 9s°     "                       r cCs&t|ƒ}t|tƒr|dd…S|SdS)Nr )rÚ isinstancer )rÚtrrrr°s  cCs<|ddkr"t |dd…d¡St |¡}||dSdS)Nr é)r)ÚtimeZmktimeÚcalendarZtimegm)rr5rrrr¹s  cCs| dd¡ dd¡S)Nú\z\\ú"z\")Úreplace)ÚstrrrrrÃsc@sxeZdZdd„Zdd„Zdd„Zdd„Zd d „Zd d „Zd d„Z ddd„Z dd„Z dd„Z dd„Z ddd„Zdd„ZdS)Ú AddrlistClasscCsZd|_d|_d|_d|_|j|j|_|j|j|j|_|j dd¡|_||_g|_ dS)Nz ()<>@,:;."[]rz z rr) ÚspecialsÚposÚLWSZCRÚFWSÚatomendsr;Ú phraseendsÚfieldÚ commentlist)ÚselfrDrrrÚ__init__×szAddrlistClass.__init__cCsg}x€|jt|jƒkr„|j|j|jdkr^|j|jdkrN| |j|j¡|jd7_q|j|jdkr€|j | ¡¡qPqWt |¡S)Nz rú() r?r&rDr@r(rEÚ getcommentÚ EMPTYSTRINGÚjoin)rFZwslistrrrÚgotonextêszAddrlistClass.gotonextcCs>g}x4|jt|jƒkr8| ¡}|r,||7}q| d¡qW|S)N)rr)r?r&rDÚ getaddressr()rFÚresultZadrrrÚ getaddrlistøs zAddrlistClass.getaddrlistcCsøg|_| ¡|j}|j}| ¡}| ¡g}|jt|jƒkr\|rXt |j¡|dfg}n^|j|jdkr–||_||_| ¡}t |j¡|fg}n$|j|jdkr g}t|jƒ}|jd7_xô|jt|jƒkr| ¡|j|kr|j|jdkr|jd7_P||  ¡}qÆWnš|j|jdkrz|  ¡}|jrht |¡dd |j¡d |fg}nt |¡|fg}n@|r˜t |j¡|dfg}n"|j|j|j krº|jd7_| ¡|jt|jƒkrô|j|jd krô|jd7_|S) Nrz.@rrú;ú)rFZoldposZoldclÚplistZ returnlistZaddrspecZfieldlenZ routeaddrrrrrMsL &$zAddrlistClass.getaddresscCsä|j|jdkrdSd}|jd7_| ¡d}x¬|jt|jƒkrÞ|rV| ¡d}n~|j|jdkrx|jd7_Pn\|j|jdkrœ|jd7_d}n8|j|jdkr¼|jd7_n| ¡}|jd7_P| ¡q4W|S) NrQFrrú>ú@Tr)rDr?rLr&Ú getdomainrU)rFZ expectrouteZadlistrrrrVAs. zAddrlistClass.getrouteaddrcCsXg}| ¡xÜ|jt|jƒkrèd}|j|jdkrh|rJ|d ¡sJ| ¡| d¡|jd7_d}nd|j|jdkr| dt| ¡ƒ¡n<|j|j|j kr¾|rº|d ¡sº| ¡Pn| |  ¡¡| ¡}|r|r| |¡qW|jt|jƒks|j|jdkrt   |¡S| d¡|jd7_| ¡|  ¡}|sJt St   |¡|S) NTrrrFr:z"%s"rY)rLr?r&rDÚstripÚpopr(rÚgetquoterBÚgetatomrJrKrZ)rFZaslistZ preserve_wsZwsÚdomainrrrrUas: $  zAddrlistClass.getaddrspeccCsêg}xÚ|jt|jƒkrÞ|j|j|jkr8|jd7_q|j|jdkrZ|j | ¡¡q|j|jdkrz| | ¡¡q|j|jdkr¤|jd7_| d¡q|j|jdkr¸tS|j|j|j krÎPq| |  ¡¡qWt  |¡S)NrrHú[rrY) r?r&rDr@rEr(rIÚgetdomainliteralrJrBr^rK)rFZsdlistrrrrZ‡s" zAddrlistClass.getdomainTcCsæ|j|j|krdSdg}d}|jd7_x®|jt|jƒkrÚ|rZ| |j|j¡d}np|j|j|kr||jd7_PnN|r¢|j|jdkr¢| | ¡¡q.n(|j|jdkr¸d}n| |j|j¡|jd7_q.Wt |¡S)NrFrrHr9T)rDr?r&r(rIrJrK)rFZ begincharZendcharsZ allowcommentsZslistrrrrÚ getdelimitedžs( zAddrlistClass.getdelimitedcCs| ddd¡S)Nr:z" F)rb)rFrrrr]ÃszAddrlistClass.getquotecCs| ddd¡S)NrHz) T)rb)rFrrrrIÇszAddrlistClass.getcommentcCsd| ddd¡S)Nz[%s]r`z] F)rb)rFrrrraËszAddrlistClass.getdomainliteralNcCshdg}|dkr|j}xH|jt|jƒkr\|j|j|kr:Pn| |j|j¡|jd7_qWt |¡S)Nrr)rBr?r&rDr(rJrK)rFrBZatomlistrrrr^ÏszAddrlistClass.getatomcCsªg}x |jt|jƒkr¤|j|j|jkr8|jd7_q|j|jdkrX| | ¡¡q|j|jdkrz|j | ¡¡q|j|j|jkrPq| |  |j¡¡qW|S)Nrr:rH) r?r&rDrAr(r]rErIrCr^)rFrWrrrrSãszAddrlistClass.getphraselist)T)N)Ú__name__Ú __module__Ú __qualname__rGrLrOrMrVrUrZrbr]rIrar^rSrrrrr=Ís ; & % r=c@sDeZdZdd„Zdd„Zdd„Zdd„Zd d „Zd d „Zd d„Z dS)Ú AddressListcCs&t ||¡|r| ¡|_ng|_dS)N)r=rGrOÚ addresslist)rFrDrrrrGüs  zAddressList.__init__cCs t|jƒS)N)r&rg)rFrrrÚ__len__szAddressList.__len__cCsBtdƒ}|jdd…|_x$|jD]}||jkr |j |¡q W|S)N)rfrgr()rFÚotherÚnewaddrÚxrrrÚ__add__s   zAddressList.__add__cCs*x$|jD]}||jkr|j |¡qW|S)N)rgr()rFrirkrrrÚ__iadd__s  zAddressList.__iadd__cCs2tdƒ}x$|jD]}||jkr|j |¡qW|S)N)rfrgr()rFrirjrkrrrÚ__sub__s   zAddressList.__sub__cCs*x$|jD]}||jkr|j |¡qW|S)N)rgÚremove)rFrirkrrrÚ__isub__s  zAddressList.__isub__cCs |j|S)N)rg)rFr*rrrÚ __getitem__%szAddressList.__getitem__N) rcrdrerGrhrlrmrnrprqrrrrrfús rf)Ú__all__r7r8rTrJZ COMMASPACEr)r$r/rr rrrr=rfrrrrÚ s6   w   /