U ,aE@sddddgZddlZddlZdZdZdZd d d d d dddddddddddd dddddddgZd d!d"d#d$d%d&gZddddd'd(d)d'd*d)d+d*d,d+d-Zd.dZ d/d0Z d1dZ d2dZ d3dZ Gd4d5d5ZGd6d7d7eZdS)8 mktime_tz parsedate parsedate_tzquoteN z, ZjanZfebZmarZaprZmayZjunZjulZaugsepoctZnovZdecZjanuaryZfebruaryZmarchZaprilZjuneZjulyZaugustZ septemberZoctoberZnovemberZdecemberZmonZtueZwedZthuZfriZsatZsunipii iiDi)ZUTZUTCZGMTZZASTZADTZESTZEDTZCSTZCDTZMSTZMDTZPSTZPDTcCs,t|}|sdS|ddkr$d|d<t|S)N r) _parsedate_tztuple)dataresr5/opt/alt/python38/lib64/python3.8/email/_parseaddr.pyr-s  c Cs|sdS|}|sdS|dds6|dtkr>|d=n.|dd}|dkrl|d|dd|d<t|dkr|dd}t|dkr||dd}t|dkr|d}|d}|dkr|d}|dkr|d|||dg|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|dkrd|dkr|dd}t|d kr|\} } d} nt|dkr|\} } } ndSz,t |}t |}t | } t | } t | } Wnt k rYdSX|dkr|dkr|d7}n|d7}d} | }|tkr6t|} n>z t |} Wnt k rXYnX| dkrt|drtd} | r| dkrd} | } nd} | | dd| dd} |||| | | ddd| g S)Nr,-+r :0.dDilii<)splitendswithlower _daynamesrfindlenfindappend _monthnamesindexisdigitint ValueErrorupper _timezones startswith)riZstuffsZddZmmZyyZtmZtzZthhZtmmZtssZtzoffsetZtzsignrrrr 9s     "                       r cCs&t|}t|tr|ddS|SdS)Nr )r isinstancer rtrrrrs  cCs<|ddkr"t|dddSt|}||dSdS)Nr )r)timemktimecalendarZtimegmr5rrrrs  cCs|ddddS)N\z\\"z\")replace)strrrrrsc@sxeZdZddZddZddZddZd d Zd d Zd dZ dddZ ddZ ddZ ddZ dddZddZdS) AddrlistClasscCsZd|_d|_d|_d|_|j|j|_|j|j|j|_|jdd|_||_g|_ dS)Nz ()<>@,:;."[]rz z rr) specialsposLWSZCRFWSatomendsr= phraseendsfield commentlistselfrFrrr__init__szAddrlistClass.__init__cCsg}|jt|jkr|j|j|jdkr\|j|jdkrL||j|j|jd7_q|j|jdkr|j|qqqt|S)Nz r() rAr'rFrBr)rG getcomment EMPTYSTRINGjoin)rIZwslistrrrgotonextszAddrlistClass.gotonextcCs:g}|jt|jkr6|}|r*||7}q|dq|S)N)rr)rAr'rF getaddressr))rIresultZadrrr getaddrlists  zAddrlistClass.getaddrlistcCsg|_||j}|j}|}|g}|jt|jkr\|rXt|j|dfg}n\|j|jdkr||_||_|}t|j|fg}n"|j|jdkrg}t|j}|jd7_|jt|jkr||j|kr|j|jdkr|jd7_q|| }qn|j|jdkrx| }|jrft|dd|jd |fg}nt||fg}n@|rt|j|dfg}n"|j|j|j kr|jd7_||jt|jkr|j|jd kr|jd7_|S) Nrz.@rr;@Tr)rFrArOr' getdomainrX)rIZ expectrouteZadlistrrrrYAs. zAddrlistClass.getrouteaddrcCsTg}||jt|jkrd}|j|jdkrf|rH|dsH||d|jd7_d}nd|j|jdkr|dt|n<|j|j|j kr|r|ds|qn|| |}|r |r ||q |jt|jks |j|jdkrt |S|d|jd7_|| }|sFt St ||S) NTrrrFr<z"%s"r\)rOrAr'rFstrippopr)rgetquoterDgetatomrMrNr])rIZaslistZ preserve_wsZwsZdomainrrrrXas:  $  zAddrlistClass.getaddrspeccCsg}|jt|jkr|j|j|jkr6|jd7_q|j|jdkrX|j|q|j|jdkrx||q|j|jdkr|jd7_|dq|j|jdkrtS|j|j|j krqq|| qt |S)NrrK[rr\) rAr'rFrBrGr)rLgetdomainliteralrMrDrarN)rIZsdlistrrrr]s" zAddrlistClass.getdomainTcCs|j|j|krdSdg}d}|jd7_|jt|jkr|rX||j|jd}np|j|j|krz|jd7_qnN|r|j|jdkr||q,n(|j|jdkrd}n||j|j|jd7_q,t|S)NrFrrKr;T)rFrAr'r)rLrMrN)rIZ begincharZendcharsZ allowcommentsZslistrrrr getdelimiteds( zAddrlistClass.getdelimitedcCs|dddS)Nr<z" FrdrIrrrr`szAddrlistClass.getquotecCs|dddS)NrKz) TrerfrrrrLszAddrlistClass.getcommentcCsd|dddS)Nz[%s]rbz] FrerfrrrrcszAddrlistClass.getdomainliteralNcCsddg}|dkr|j}|jt|jkrZ|j|j|kr8qZn||j|j|jd7_qt|S)Nrr)rDrAr'rFr)rMrN)rIrDZatomlistrrrraszAddrlistClass.getatomcCsg}|jt|jkr|j|j|jkr6|jd7_q|j|jdkrV||q|j|jdkrx|j|q|j|j|jkrqq|| |jq|S)Nrr<rK) rAr'rFrCr)r`rGrLrEra)rIrZrrrrVszAddrlistClass.getphraselist)T)N)__name__ __module__ __qualname__rJrOrRrPrYrXr]rdr`rLrcrarVrrrrr?s ; & % r?c@sDeZdZddZddZddZddZd d Zd d Zd dZ dS) AddressListcCs&t|||r||_ng|_dSN)r?rJrR addresslistrHrrrrJs  zAddressList.__init__cCs t|jSrk)r'rlrfrrr__len__szAddressList.__len__cCs>td}|jdd|_|jD]}||jkr|j|q|Srkrjrlr)rIotherZnewaddrxrrr__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)rlremoversrrr__isub__s  zAddressList.__isub__cCs |j|Srk)rl)rIr+rrr __getitem__%szAddressList.__getitem__N) rgrhrirJrmrrrtrurwrxrrrrrjs rj)__all__r8r:rWrMZ COMMASPACEr*r%r0rr rrrr?rjrrrr sb  w   /