VcE gdZddlZddlZdZdZdZgdZgdZdddddd d dd d d d d d dZdZ dZ dZ dZ dZ GddZGddeZdS)) mktime_tz parsedate parsedate_tzquoteN z, )janfebmaraprmayjunjulaugsepoctnovdecjanuaryfebruarymarchaprilr junejulyaugust septemberoctobernovemberdecember)montuewedthufrisatsunipii iiDi)UTUTCGMTZASTADTESTEDTCSTCDTMSTMDTPSTPDTcb t|}|sdS|dd|d<t|S)N r) _parsedate_tztuple)dataress )/usr/lib64/python3.11/email/_parseaddr.pyrr-sD   C  1vA ::c  |sdS|}|sdS|dds!|dtvr|d=n7|dd}|dkr|d|dzd|d<t |dkr;|dd}t |dkr ||ddz}t |dkrm|d}|d}|dkr|d}|dkr|d|||dg|dd<n|d t |d krdS|dd }|\}}}}}|r|r|sdS|}|tvr!||}}|tvrdSt |dz}|d kr|d z}|ddkr |dd}|d }|dkr||}}|ddkr|dd}|sdS|d s||}}|ddkr |dd}|d }t |d kr|\} } d} nt |dkr|\} } } nqt |dkr\d|dvrR|dd}t |d kr|\} } d} nt |dkr|\} } } ndSdS t|}t|}t| } t| } t| } n#t$rYdSwxYw|dkr|dkr|dz }n|dz }d} | }|tvrt|} n> t|} n#t$rYnwxYw| dkr|drd} | r"| dkrd} | } nd} | | dzdz| dzdzzz} |||| | | ddd| g S)Nr,-+r :0.dDilii<)splitendswithlower _daynamesrfindlenfindappend _monthnamesindexisdigitint ValueErrorupper _timezones startswith)r9istuffsddmmyytmtzthhtmmtsstzoffsettzsigns r;r7r79s t ::< 2wwHH    D  Q; 2==-- HJ a< F yHHFx}d2hnb5HHI BS#q!R ::s%7A N NNO)) O65O6cd t|}t|tr |ddS|S)Nr6)r isinstancer8r9ts r;rrs60TA!U!u r<c |dtj|dddzStj|}||dz S)Nr6)rD)timemktimecalendartimegmrms r;rrsKO Aw{48e+,,, OD ! !47{r<cX |ddddS)N\z\\"z\")replace)strs r;rrs- ;;tV $ $ , ,S% 8 88r<cbeZdZ dZdZdZdZdZdZdZ dd Z d Z d Z d Z ddZdZd S) AddrlistClassc d|_d|_d|_d|_|j|jz|_|j|jz|jz|_|jdd|_||_g|_ dS)Nz ()<>@,:;."[]rz z rJr) specialsposLWSCRFWSatomendsrx phraseendsfield commentlistselfrs r;__init__zAddrlistClass.__init__s| ( 8dg% 047: -//R88 r<c g}|jt|jkr|j|j|jdzvrJ|j|jdvr%||j|j|xjdz c_nD|j|jdkr-|j|nn|jt|jkt|S)Nz r?() r~rSrrrUr getcomment EMPTYSTRINGjoin)rwslists r;gotonextzAddrlistClass.gotonexts4hTZ( z$(#tx&'88 :dh'v58MM$*TX"6777A DH%,  ''(9(9::::hTZ( '''r<c g}|jt|jkrN|}|r||z }n|d|jt|jkN|S)N)rr)r~rSr getaddressrU)rresultads r; getaddrlistzAddrlistClass.getaddrlistsy hTZ( (""B ("  h''' hTZ( (  r<c g|_||j}|j}|}|g}|jt |jkr,|r(t |j|dfg}n|j|jdvrF||_||_|}t |j|fg}n|j|jdkrg}t |j}|xjdz c_|jt |jkrz||j|kr'|j|jdkr|xjdz c_n4|| z}|jt |jkzn|j|jdkrx| }|jr?t |dzd|jzd z|fg}nrt ||fg}nT|r)t |j|dfg}n)|j|j|j vr|xjdz c_||jt |jkr&|j|jd kr|xjdz c_|S) Nrz.@rGr?;) rrr~ getphraselistrSrSPACEr getaddrspecr getrouteaddrr})roldposoldclplist returnlistaddrspecfieldlen routeaddrs r;rzAddrlistClass.getaddress s%  ""$$  8s4: &(  H$zz$*:;;U1XFG Z !T )# DH$D ''))H ::d&677BCJJ Z !S ( J4:H HHMHH(S__, < 8h&4:dh+?3+FHHMHH'$//*;*;; (S__, <Z !S ( ))++I >$zz%0047"xx(899 :#*E  HHMHHr<c |j|jdkrdSd}|xjdz c_|d}|jt|jkr|r|d}n|j|jdkr|xjdz c_n|j|jdkr|xjdz c_d}nL|j|jdkr|xjdz c_n%|}|xjdz c_n1||jt|jk|S) NrFr?r>@TrG)rr~rrS getdomainr)r expectrouteadlists r;rzAddrlistClass.getrouteaddrGsK  :dh 3 &  F  A  hTZ(     # DH%, A DH%, A " DH%, A ))++A  MMOOO!hTZ( $ r<c g}||jt|jkrzd}|j|jdkrX|r.|ds||d|xjdz c_d}n|j|jdkr8|dt|znq|j|j|j vr1|r.|ds|nr|| |}|r|r|||jt|jkz|jt|jks|j|jdkrt |S|d|xjdz c_|| }|stSt ||zS) NTrJrDr?Frwz"%s"r)rr~rSrstrippoprUrgetquotergetatomrrr)raslist preserve_wswsdomains r;rzAddrlistClass.getaddrspecgs-* hTZ( "Kz$(#s* .!&*"2"2"4"4!JJLLL c"""A # DH%, . fuT]]__'='==>>>>DH%6 .!&*"2"2"4"4!JJLLL dllnn---B "r " b!!!%hTZ( "( 8s4: & ,$*TX*>#*E ,##F++ + c A  !!  ''&00r<c@ g}|jt|jkrd|j|j|jvr|xjdz c_n|j|jdkr-|j|n|j|jdkr(||n|j|jdkr&|xjdz c_|dn^|j|jdkrtS|j|j|j vrnE|| |jt|jkdt |S)Nr?r[rJr) r~rSrrrrUrgetdomainliteralrrrr)rsdlists r;rzAddrlistClass.getdomainsw;hTZ( .z$(#tx/ .A DH%, . ''(9(9::::DH%, . d33556666DH%, .A  c""""DH%, .#"DH%6 . dllnn---#hTZ( .$'''r<Tc |j|j|krdSdg}d}|xjdz c_|jt|jkr|r(||j|jd}n|j|j|vr|xjdz c_n|r>|j|jdkr(|||j|jdkrd}n%||j|j|xjdz c_|jt|jkt |S)NrFr?rrvT)rr~rSrUrrr)r begincharendchars allowcommentsslistrs r; getdelimitedzAddrlistClass.getdelimitedsZ  :dh 9 , 2 A hTZ(  3 TZ1222DH%1 3A  34:dh#73#> 3 T__..///DH%- 3 TZ1222 HHMHHhTZ(  &&&r<c2 |dddS)Nrwz" Frrs r;rzAddrlistClass.getquotes?  eU333r<c2 |dddS)Nrz) Trrs r;rzAddrlistClass.getcommentsE  eT222r<c8 d|dddzS)Nz[%s]rz] Frrs r;rzAddrlistClass.getdomainliterals"/))#ue<<<rsI       III > = = AQA$$$$$     z;z;z;z999kkkkkkkkZ -'-'-'-'-'--'-'-'-'-'r<