U e5dEã@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)ÚdataÚres©rú(/usr/lib64/python3.8/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ª|\} } } ndSz,t |ƒ}t |ƒ}t | ƒ} t | ƒ} t | ƒ} Wnt k rîYdSX|dkr|dkr|d7}n|d7}d} |  ¡}|tkr6t|} n>z t |ƒ} Wnt k rXYnX| dkrt| d¡rtd} | r°| dkrd} | } 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ÚsZddZmmZyyZtmZtzZthhZtmmZtssZtzoffsetZtzsignrrrr 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)ÚtimeÚmktimeÚcalendarZtimegmr5rrrr¹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©ÚselfrFrrrÚ__init__×szAddrlistClass.__init__cCsŒg}|jt|jƒkr‚|j|j|jdkr\|j|jdkrL| |j|j¡|jd7_q|j|jdkr‚|j | ¡¡qq‚qt |¡S)Nz rú() rAr'rFrBr)rGÚ getcommentÚ EMPTYSTRINGÚjoin)rIZwslistrrrÚgotonextêszAddrlistClass.gotonextcCs:g}|jt|jƒkr6| ¡}|r*||7}q| d¡q|S)N)rr)rAr'rFÚ getaddressr))rIÚresultZadrrrÚ getaddrlistøs  zAddrlistClass.getaddrlistcCsög|_| ¡|j}|j}| ¡}| ¡g}|jt|jƒkr\|rXt |j¡|dfg}n\|j|jdkr–||_||_| ¡}t |j¡|fg}n"|j|jdkrg}t|jƒ}|jd7_|jt|jƒkr¸| ¡|j|kr|j|jdkr|jd7_q¸||  ¡}qÄnš|j|jdkrx|  ¡}|jrft |¡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ú;úú@Tr)rFrArOr'Ú getdomainrX)rIZ expectrouteZadlistrrrrYAs. zAddrlistClass.getrouteaddrcCsTg}| ¡|jt|jƒkræd}|j|jdkrf|rH|d ¡sH| ¡| d¡|jd7_d}nd|j|jdkrŽ| dt| ¡ƒ¡n<|j|j|j kr¼|ræ|d ¡sæ| ¡qæn| |  ¡¡| ¡}|r |r | |¡q |jt|jƒks |j|jdkrt   |¡S| d¡|jd7_| ¡|  ¡}|sFt St   |¡|S) NTrrrFr<z"%s"r\)rOrAr'rFÚstripÚpopr)rÚgetquoterDÚgetatomrMrNr])rIZaslistZ preserve_wsZwsZdomainrrrrXas:  $  zAddrlistClass.getaddrspeccCsæg}|jt|jƒkrÜ|j|j|jkr6|jd7_q|j|jdkrX|j | ¡¡q|j|jdkrx| | ¡¡q|j|jdkr¢|jd7_| d¡q|j|jdkr¶tS|j|j|j krÌqÜq| |  ¡¡qt  |¡S)NrrKú[rr\) rAr'rFrBrGr)rLÚgetdomainliteralrMrDrarN)rIZsdlistrrrr]‡s" zAddrlistClass.getdomainTcCsâ|j|j|krdSdg}d}|jd7_|jt|jƒkrØ|rX| |j|j¡d}np|j|j|krz|jd7_qØnN|r |j|jdkr | | ¡¡q,n(|j|jdkr¶d}n| |j|j¡|jd7_q,t |¡S)NrFrrKr;T)rFrAr'r)rLrMrN)rIZ begincharZendcharsZ allowcommentsZslistrrrrÚ getdelimitedžs( zAddrlistClass.getdelimitedcCs| ddd¡S)Nr<z" F©rd©rIrrrr`ÃszAddrlistClass.getquotecCs| ddd¡S)NrKz) TrerfrrrrLÇszAddrlistClass.getcommentcCsd| ddd¡S)Nz[%s]rbz] FrerfrrrrcËszAddrlistClass.getdomainliteralNcCsddg}|dkr|j}|jt|jƒkrZ|j|j|kr8qZn| |j|j¡|jd7_qt |¡S)Nrr)rDrAr'rFr)rMrN)rIrDZatomlistrrrraÏszAddrlistClass.getatomcCs¦g}|jt|jƒkr¢|j|j|jkr6|jd7_q|j|jdkrV| | ¡¡q|j|jdkrx|j | ¡¡q|j|j|jkrŽq¢q| |  |j¡¡q|S)Nrr<rK) rAr'rFrCr)r`rGrLrEra)rIrZrrrrVãszAddrlistClass.getphraselist)T)N)Ú__name__Ú __module__Ú __qualname__rJrOrRrPrYrXr]rdr`rLrcrarVrrrrr?Ís ; & % r?c@sDeZdZdd„Zdd„Zdd„Zdd„Zd d „Zd d „Zd d„Z dS)Ú AddressListcCs&t ||¡|r| ¡|_ng|_dS©N)r?rJrRÚ addresslistrHrrrrJüs  zAddressList.__init__cCs t|jƒSrk)r'rlrfrrrÚ__len__szAddressList.__len__cCs>tdƒ}|jdd…|_|jD]}||jkr|j |¡q|Srk©rjrlr)©rIÚotherZnewaddrÚxrrrÚ__add__s   zAddressList.__add__cCs&|jD]}||jkr|j |¡q|Srk)rlr)©rIrprqrrrÚ__iadd__s  zAddressList.__iadd__cCs.tdƒ}|jD]}||jkr|j |¡q|SrkrnrorrrÚ__sub__s   zAddressList.__sub__cCs&|jD]}||jkr|j |¡q|Srk)rlÚremoversrrrÚ__isub__s  zAddressList.__isub__cCs |j|Srk)rl)rIr+rrrÚ __getitem__%szAddressList.__getitem__N) rgrhrirJrmrrrtrurwrxrrrrrjús rj)Ú__all__r8r:rWrMZ COMMASPACEr*r%r0rr rrrr?rjrrrrÚ sbüýû  w   /