From a18d27681a90b7630234b278d2e09a1a1040eb8a Mon Sep 17 00:00:00 2001 From: adam Date: Sat, 8 May 2004 01:08:35 +0000 Subject: [PATCH] it compiles darcs-hash:20040508010835-5007d-b6e174251f3e09dc090ced44681a1ead84322964.gz --- mail.jar | Bin 42870 -> 55383 bytes src/org/ibex/mail/Message.java | 22 ++-- src/org/ibex/mail/Target.java | 2 +- src/org/ibex/mail/filter/Anonymizer.java | 1 + src/org/ibex/mail/filter/DCC.java | 1 + src/org/ibex/mail/filter/HTML2Text.java | 1 + src/org/ibex/mail/filter/PGP.java | 1 + src/org/ibex/mail/filter/ReturnReciept.java | 1 + src/org/ibex/mail/filter/RewriteFilter.java | 1 + src/org/ibex/mail/filter/SingleUse.java | 1 + src/org/ibex/mail/filter/SpamAssassin.java | 1 + src/org/ibex/mail/filter/SpamFilter.java | 1 + src/org/ibex/mail/filter/VipulsRazor.java | 1 + src/org/ibex/mail/protocol/SMTP.java | 185 +++++++++++++++------------ src/org/ibex/mail/target/Bounce.java | 1 + src/org/ibex/mail/target/Darcs.java | 1 + src/org/ibex/mail/target/FileSystem.java | 26 ++-- src/org/ibex/mail/target/LMTP.java | 1 + src/org/ibex/mail/target/List.java | 1 + src/org/ibex/mail/target/Pipe.java | 1 + src/org/ibex/mail/target/Procmail.java | 1 + src/org/ibex/mail/target/Script.java | 17 ++- src/org/ibex/mail/target/Vacation.java | 1 + src/org/ibex/mail/target/XMLRPC.java | 1 + 24 files changed, 163 insertions(+), 107 deletions(-) diff --git a/mail.jar b/mail.jar index e5ad502d8e602047b2b69831684d3c5861120ca7..418b89d72277f2997cbb396d38dc06df92e1023f 100644 GIT binary patch delta 31090 zcmb??Wl&w)vMwGpxGdb=-QC?GxVyV%1$SMzySoPh!QI{6odChfWAF1$y}Qq=`{P#K zS##8^^<#C9?lI=q-Cxh~dlF))4iZUO4iX9;?5_(Et}FqG9P+OR`v7DEOj*J!4cx~s zX30a`n_CbgI6DxM1toOL?rgB8azR!pkd*one6VA;m>RY^HS)oZk1@fHbfx;v(Ho8b z5%N`Kx5$f{RM9Bs$89omuHh9C*kpZneuzA2>N18jQw-ZgvhW|P$0Ea~hSg-7b*R13 zsJ%}Czq^%W^7z4Aq8 zvx6161wjcdaf0gXn8)-Rx4K8vh*dSV6%;-YVLzW&^rxuq)^V;dmKAg)9k=kN;?@j!RtRGWh%6QfIiYphvQu~`i-?$JUT`olR0uFI+z*dAx>zznVX4+SR$9>)Fr zfqoEe-St5bxSu~y)04!B#bQZilH^(eJI$(Pr-f3jHrZh)6EdlOjLH)Bry zIq29igl(phJf3S5HU-F#HPzo(mKTmTqyo+91H&z5nrR%GvE!Q%F6MYXWhPt<^wCjW z?I3VmWOHLgBCUC4w-|yJgGmc~gwdtR>D%>O*L4k}mA$m1YIIw~RYUQwjEiU&?LXKK;|_o}Z?D z*FSts^WpbKI|xkh&wniik)_ty#m6fAga#S2;e&{iV1N>K=Jw_e|JVP;>bh!k!Wi#Z zI62(vi(lCrjaxh~*^Qa6&u?#^zNu7wnh7-qT;QM<27gllH-#94UQc#Xk_3Bz=7-(R zj|NJ4(Ho2QCPh<5LtTq6TZ1c^v+sTZn}U>E*GOW1pdA-zDhMo+DyCIAuO z4U7}+rfRE;$mwaMjnj?uLJ!}Q9A-(5yi#I!YMs{(R1-rs^e>t3I!NUwaK9`x=+|7H zN$D+U)EAB_Fl`x{t7nIo?m3wWAGBYssDKrAuMonqXAG>aXx@ z1GIW^#Vlj!5${!;8LMYbk1(6OW`Ot4qtj?H8ZVlnss3(`PeXwYhfKu`av9O~=psV= z`&iAK2KHNYH7-A?I;U>@;ub43b~xXNS5K5?g_$<+!%O$ZJ#toR*yLKnndvWakC_Dw z31VQFrMORhA^CV;%`ppJNP#6Lj`4v7t7?(g&O! z^!3MbI8y8DM+S|@YK^D&$TnRAnM`trs7PQGTv7S7J^nTU{*N%pO2J*u#AA|L3gL==Z<~5;H5Qqcm~;ANBK&{8HbD)YXAK{?{(=q$h6e_kOdtTpXd(EiEdc)Hl3#Ro zb~ef6g@CPIJ3tmQ6S#tBD@QhA^|Y*FmaN&ktidE^rmcfPZ{^*FT+tl+Jjfp?3nvD%jW0AirKA+~+{~aP5>CyoRa1nl&ZcCMJ@suuikX2rYP?;?x=# zv0S}Pc%JNB8wheDy7G(FdbnjS+6L#R-XQ@X)1}4wR~?|HcqfGorTJw+Ka6<=9#NU| z5AgM|y2!^3b9dh!ne$H!N_syAMq4f)i@;6MYDbH)=74}V5+0XwXkGMs-f&FR+JXM# zJ}QG+Uhfsrsb23H(Y3d)NPw;VCtcPqh8;e5%?4k(8-0te@ye@_M?v)3x*4MDQw@X8 z!Ac_9M^po?Ytz@@kz87CY)9%xz}Lw>Ch}L+!CJFdoxx1juVj0zXq$;Qe9(AxO1*3J zig2%;!9qY-^{Sa&{}DIQIQX*a(EQTOJsrwIOQ_NISsig~wTRuL&DF+yd+)$P@^4npaj8Y<=7`56kP6et) zTHI(f)U?9+p+T5OrCmhImJ7dc!v!Q(>J`hh*gVL|xi*R*GZASi@K+g~bV7bKz`2B2ZwxhiQFxB0xFaCU{GXf3= zEU~*kQzvxOuay4UEhA26?yu@EHc~Nch7QM|uw<~AIgYC*dwUj#Wk;QDtV+xj)t_y( zexC(h%$BYob*I4+tLF}d-5?oIUhJ}z9ScnN(HT(GD-xB;4fa%jg}zcPmRDBqpDx|4 zT^@j7MwpU=gxXkE*N0(y5cceZj;OMNPABZF6VDQ8)$g+QN{@^v#>VOxzTq zey%7`ErYnlUr~5AG9X2d2B@FbTQRfdsW>XH2C=QoLV>e@rZiL}+_Yns$|7xcFw5Me z9SAfYgAFm!2goCTig7hs7dmHKdTtKeIi=sE1QA+!p7%oY6)np{PD{4)3 zo-lMVV>&Ab`OsS$UF%#LHCdm_R!FllxUZ%al7vv=#phVJv~v<7_A`b5>?Ne&Vo=UY>r3&>Iwm?R`NJ`k)7fU zJILq#lmd|ya|DABGqqlBYJEP8YeAnM$EIi7+NmL3FHT!Sb=>mZp>u%PYu=nk5_TNn zH732JW%6?;lOp)C^8sI%yFIX{jQkL8oMu)+OvK3VMg0JCnOTHs6U!i;t=K5?y0nTZ zX96+WvjUd3+yd64V4QegC)P8(PC(LM4^@+Xf` zz6o8zy7Slx&+U9GC;QQ@34z_@11Y8>{akv(rmK=ao37`>nVW?J%@#1$0`o~*v~E~x zMSc~ZRosc*Nj2j3PpLJHh4_87?aMhV%`UvpD_iXE)#t^<#HlHE_}k_8h51y$Vl#OL zdy96{tgS@%x}2Zk1v6M3S#i!C>h#HX1m;*pv3_I-`6D#6Wd;nQPVOc*LD@i9p<`o8 zHdGtdxn3OFW_YnJ8+2e&6=J~W^l);uplTQ(`@*6l^~ISNJN|eYFGmqmqC)A&J>%&K zN4*z+O8sedOcTayMA0WTiw5hElo=)MUT8=0s;Q)m=a$5gyU$g^bDqeYs=uK4z+d9?BfOgPqiIaKexCiBh~CyetD(5(r)~s(;@EFSFHVrb zj1c8SbKxcJ@aYY>6)|SVmvf{7BeeaMksX4E9f*UO58bCMT3B`t2;hx|YpNhUeIew$~*FU0W72X}&BA(#NW&uS-( zf7zQ*D`Q~{fouJnIjbSAxCbx{Y z>!l?SMA64R(axU8eX(sIfAoEDNb`#cNBUWl!)^?Tdg%IZa5-Jugx`y^t82ej*YGdw z|A_hO=F#>)xIeR%=?F#t#$SZ05DT!0YE0v{M4`gS^T}mF^z5qqq1ja~XdwQCatQNd zGSr<%6X>d4EHKc8U6HQEKqMpagai8{$edlWY^4wiinjtb2Lj5W5pMGkwT*$)h%X?| z5&*siA6O&^(Q*N0!v{NEL&@9`_3d0Guq+jB*nkAq7g;wrvigpPmm147^SI=mXPI%A z+wi;_+60>s<6)Q784Nq>$T`9bDK&Dbey(_%6{y94s6|lY#<4@YM5}kf`)R37{@mrF zzquyUnc)85zQ%Zc+vhV^`)0pFO{-Jm8NvE4Z?x_Pdi|Pyn7}30`k_J0+QykvSO>Oe zyTbZG7no-U(~!U=>bW~nZzon;GJ4TP_W{OjsWbFJpz$3HgbMbAC2s`3z`njD!72go zH(>Lpx>z;9FUBTrrR{Ni-pI61)9GT^uA$r3$lglzZAmvnBi(59L$X;1MgEKc7{YJS zpHyPPV55jiv@D47ugJ)ssCBM!R(pT%cAi-YY0^4DYR0r)HzMSCG{#Xn^^n|$cfusw5rX%Cy7 z4;#Kf&#{-IEunX)=@3Kz>)oPAHSTKS0weX1Po}Q`%SiyVk`L;^1yGH4ayLu1;})Kg z`Jez>>Gq2jOF&vA*dT^HZ9MI%vw;M`E-hM`YP|YPu(cq6AGX?$Ocf(9;|eR|5bLh@ zDhRm&!f5Y=odwN=0SXU?lsH%T!{@Csjc)9SFC$GGmU?K@ zFoGGPdyn;7BBA1mBq@GlM5dFf$Lw+w}cVJF2bWhv1_PowgYCsM3KXWwGj&r{$K~_T3atjNQeMZtx$!I zt#MqCZ5g!30Z<}TL8?q^P@iOsl>uppxoAh>NAb>Ae2g-tgAQRN5O4ZCfGwsi^plfx z&l>J#Pe)auR34+F^+Z=Fnb)$$YWmVP?ZPz_491Vr9e+RKx{dES?0t}uytZm}#e%Ln zr=Zz_MBM{tarj5OCoyOu>qneiWp3H0O`U0c`ak8NQ^4!*p?zM;eb|pK3(hV4swiy& z(QN6%I=s1%04cfdM2|(*eY5W25>>ncjtX5kneJ!dm<4S;-l2vY?n1crFO7uL*O*8`@MKFLyg*AzZq zeb7NUdm_9EZ*DzBOd)OLqfAty?aD1gn4H^rwy&4{;XzPlGu(7uI!ammIyuIcXfql5 z9IJ(=W0BJt=K=W=c0*sqms|mx+cxu>g~uMW93XPliAyoOWOEgk=5(fk`AiZ#&!wl8q8SofYWICvw8oL1-4=} zP9QW=|Dn-T$yXCD0ZfQH+466rL8%^mUL~{bAyVko=KN>Y_rDNBy2-W;Dg4O)P-hbr z&S7+#Lsf@i=dDZj!T(VC=?H$xT9J~s@lEv3mI_PR6|eby)!Z&(Q+Pr{9gU(Xx_URm zwFAJXqR>&;|Qv7PXK*A9Rk96?=LK{*KfiMd}w^g?5q z%`NOW25WAN|FDagJ-H*;PZL&2taHsR5&pj6Li~Ap^yZh^_*e~6O}Ch$Mto*+Yu2N$ zw6FK1L9tl*l=)iJ9(TgrtSJ7WhO!n0wX?QozRg81aj46{%oz@JU?4mRb_BFC&hHmK z8u;(_%SgjWWlxCZlM^;BRiPeziY&1xh?Dw&fCn@uqU7+@Z>j%D0M-~dWP;?#wSXEe z7a280c*{ivLSsR&gsgTb8+W)Ox*2aQ6Qw0FL&u@c01x2K#vCqIwPNYOb= zI^>EqTqN487}ed020+(h`H(+zae&1^zh?+~PQ^_x4Nqwq94+Va*&$gFp9U_Z*w_-6 zXel;p7pzZrNRWrbP}hR{pb78T(%gsFwAO_=Eq&-8TwQ34;F}9=B$Xa!#SZz^p!KAo9P$BQ|JC6b@8P z4GUcHMAyLiv%#3YX1qKL11GIOmqM<97a6#$sVo~HDwi)pUZt2Q!)wlpP6<-wa-z8$ zYjo_o*+!UkMf=Pnl{;VfPWO&P_><3imK||>hh*#B|6%Pi`}O{+&k*c<;DPn`PH->{ zz@B@=S$2@!qMbQ#4!;p1cZZwq8eb}KFAFHYuZw@gvw7Iooqz$(DBDI}h?mM!6Aq>o za-9Ko1)B#SpBSG~j}Cy#2(F4Y$l4x;<7fIdSx?OTWDrI|GG*+d%?hKu-A1C$DWwuf zW-49ugPM%-Ix*N2(2i!U%ft;jBn@IU&&UukE*mJ&G_z7lQbp8LvX*13V4Ip|vj?tx zZ` zr3{#5aiJ2=V%+k0qWeyga>-WhdeiOc&6*>b74|hcRxS1`@SEM4i0}7&PQZBqBMhPh zEq0p}L^52BYZgJ3Ynl|yb<}M(aKRzg>J^_W9xjTVKhS-#&0Q18@={Z_F>tJQwi_8_ z#deyF0A7hEV`#%&I`FO%m@qOD%gsfH*idpmGR4wu-6bOa@8T?d?cd9AeJG1ozpEOs zWh*Z>i1kvNeGfu7*oc8+X#$3jk;+vVX>E+SJ@A>C<6RCYYZqNJh%x_qR9@ph;_Ll3 zbn;u~F*g5U#J8u;+CKvErBCU*wke@!g2PS9B6P{Yj6;%o5Tk1M*|R=*Q2K}~l||g_ zSFh?n<7}JUQ!f$#m!S$FS%ID5LXByiDu-svuHE7admkzLF}@8X%Vps0&tDktg3Zd) z@;>q=Imj6gEwRmMzWjy^hqku5E>_>>u#%hD`0t_O2x}7x;{;V+j?WfD^Sr3S;UlpF zov5k_I{Bc6BF@OhgV}Y!UjQalhE&vD!Ng&oS?$o3hAO;;WP&AY3K#$cRe5g)eM3hu zyo&LgNDXMek>LT zgA<*Jx%750^8D>(O#vSO58eZc53&p12iF?L1o-U*(vxIhbQ$;?Y^q*zwz}e?N=3Ai zb{H4Bxx%B)7ko=8>A=`?+UbQzuh{fnGqhqkJ-Qw~$I;ERkPa8Epo5!}R-*D)LGwCL zNL_Nv2=Mlf9RWKV|2($*2F9ep5?{4;UcMF_LF^8lV3>KYg7(SJ9P!zdFy&*r@xAvm zj^3GLN4+EPBLFuB5VSpR2-ZDs;J>;$+XsHK^5};CrI>gm@vB{&Fm>b^{%b!+gW`_o z{xDh4&-@)Cv-H5H5^EQE&P8DV1tvlEywqgvl;OVa-tN(1;snE_n%wjxo&4O)wDiKCq3=-rF6%Ws=_y)^H&B_d(4FwS`49gBL-2m?0U?d0$ zS-I!|GZ!i5BNEx^phW}LF?I9(fN;FRf1g?lpju5{OHY<;q^&fUvkd`9X{bQ!E z{OBNaUm1Kdj3gaZoh0m}jI4AW<%0jRYI#W@M*&QQf~*7)D2)U>ZPXxANc3rA;%?Yr z;kj?*c=1#ShiuGsHujcA>#!*npAzkiM6ifQz>CsxxWWJFD9(ZhK=p_EHP8-!DPmwn zFH%+D-%}?Cy(kb6|2LBszjr|Wx6#G_jluujf5`(}$p6|G%O6`3A0(6k2ih0Rhd4%Q z3=<-Pg#ByNNSqMcm z^!bup-(4-Kj^C=ed3z7DxlAXibjd<CZwYvajyvy!{S4zRQ8AtF<11M;@U&z)Z#G$0T?>%uL`SLCQHg4se3Rt|sVf$LlXv5ESu4u4r zMo&y@3a4Z~zDL{FJo5Fz0~z@{%^rXgN85l~0+6|!=#1WKwl1PK2%m@;u~Hac)X@#A81C1BXYnj}DV+TkX&c;<9zE z4^~Xvc^4Kn-2;>$js@&>_lZkLCC$<$W?NCK8wcp6uhXm>()2q8RmFK2MbUG7>kd>W zk0h=(>k4@LcGL&>vETl39YVpnBKYbL<>C)T71H9ISrztbt}{QGunz+liB4r9_nYOx zT-4c8{)Q2aY=E9z6f85GgHrP!Nck=y>^uLl^%y?7@BjZ750ch)Zssok;#}Mn zSsZ$WQL>t2vT-0V%1Mi*KVjheqbQKm!b%j}Sz4MC09ifU(x|6MG0~urw^hOgq{YZv z(pCs2qCJ4imtcs~kvoN`JB*?rl+Oyr6{tN|ZbGmI5%cEnBD z5(n+W!t?a$t~xt#Is8|Hkl(9}sFwxrfcbc)fsuA`S;+hzkeYL7SIwt19k~B z3u-LI{rlAi12cy$Yt)t~{uhLK^kD8)ez;``lqZW1qLljl0Y9=>cqwUF+KK78rT+zZ zh%-Sb@|Y@WBY%YlB8U{rzp?bw-&l(BKf}`fCw1=f52bS-g9Owgg9Ad9{-!+imtZ`I z6!X6YL;o!p@qZ>5pPO=~@}p2t`ry$h{t^uQSXgs4Z&x>S`+pN^x*voZ&W02O8vv%q zX(n(0EPzrN&ZbkjtXf=|7LB}|p}3kL5fYJ-&DkQ*NcW=ijmp2;y?UG0Hu>SbtmZ4# z5*#HZGEeKu*8Anr{??!O_fOsIU$yF@ebF?@#W9p=?H(vz!4r4;fZJ>LL49 zc4BjkV7a7D;MLZ$9F8ZELQ{;6!J$b^D0#$=8XT^Z?R-GG&h~5)K&om^mMdmGxGusD zWwM_Vd04;E`S*@XjOFU2Rb*R7NR*hH>cvN!$ya8H_(j~})>>L7EXAO#<$hs!4ku#m zVl5YgY~-w1e>enNzVS}lvRp@WJtZYoi#mD0(PD~g;^HL+Nfb=o17sN6kCicd7E zbaD#o0S1~4xM59H0Tbvy1sT^td||oG)Ag$aYoMP~b;ev$H>;QOp`Cu^3he@UOj)+J zaKj1obVWk)Yuq4pnZrJUC|ln`PaZGqC{1-@b7co}r>vRxm0T@{tv#C_& zoVSdzWRx3DsQeM|vn;K@gSG@k^916@FpAAHFG~JPvhj~6xo`Pv$+M~oWsgWpIE?Ju z#>W+~Qe2+ifsdiMG(WXx%QJV1%PK$fDJ9VcHJR(s>14pK(^Uu-nA__pwP#XvnWiiC zL#r$>C99nR0kektXP*~sXd}R&83Z)8#vWWUQ%0P~yhUAOINd$JO`oTQpoebiB)YAY z7fWM2xAh$YCT8*HBG1F&jZvLL#5eQ$k^@v#S4VO+#>Sn-^6`#+kR~R)SahYDjD2pu zx?8|r^y4$!ghw*;u!z^5;s~5nA7kGu(A84kyvl0;6&s`F+T@u|eTBbz4m97+Mmmt- z*3LPETTr$QBG3GW*ahU|tMt&|uI-2fD{c!&)kMLK~;)eLtA)Ri(Ce}muUyu`R@7jMkFiTMff;`#*3AikeI zoPW<9_ggtVyCU(Y9%E&(3xEK7?s0udm;He0?!al$Gj^Psaf?>_4*rdarQ2Ya|7}yS zciZQSNgg64K3_jH1VN7>!Zsf56PG+aP`FFZu zV_UAv!Z2n_xP_?F<36@5GHfBrj}R&me)#p-^7XTOx|2)%p|i=&96$KgpMOL5zrNkO zhTme${OA>se_$Nbe_$N>UvMXC>}qcIFSHBM)cxQ`Fy2ej%@UpS*r!FiMSCEu(a?m; zmrYVtb&>8MnpEdpGAYB{h|}TN(5(hKFfj)Z;7L!Tn0`Ed3ztbXPnKHxH38g-0*b6# zCbn2hTWeY7vb~(&W;oq+ylrw410*`MD_$n z#4?Pk2F!4l=5~@ggHY^(d`AP`UqwTss-Uvt+zvhNq?vyVkHG#qfd)5GY^H(&KE6zr zV=rh+F3i=Ftj*uKm4Z!yD=eKeg2(g>rLM)!9XgN=K+Qi`^WqI#4yE%{#ac>}J;+mj znOsENNHl_X(giFOnEqaXIAt4mlgG0J)mK%Ro3z-Jq!XMiu-aLTHhf7*3kOUzSi`o& z3_!QdtIKu|8Z8WdwfJI_;ojm5L=W7iys^3SCfju*nHr}7&m6Y01JJ>xfWa#7woi^b zxb&J7tr+&jB>%A5*b5%#VlQ4pA74zwC?+9uqy)6)6EkK=^0Wm~o9M+8MY?8Ka67@1 zE*BHWMM11;@+K)ES6~%-J<%R2EZiXJfy=5y-iBP^o#?MPLiFH zz$+)Yo(KM3QS~1C*Su{hAmQTSXfYxho*WynRBIL5-iMwaUp8VsUaV99eVQQJ-ao`YnimiGSsmW}+!;NySIQm8WFx zLdr(d_#!D!^k!93hRjI++POn?9DSi2I5irldr(|r#BYG! zWvqf-`dAEb$8c2SV34dGbEE2wrSR@-QEk)l{`;2Ov8mQ4MZy$TtiPqy7R~q7C$YK3 z!^OI!a-4g+1MFvb$#9&UdT5Fw#^##Jblf^4{cIl{PHyZe%_!kbW_Ouy6y^A~%c1TZ z+w7yVb;a(h1=K92^}KabOVj)kZBo7(x+0LTY8K+KiQbVLkMhHm@#m`Yp(Z2IQ1)QP zMe=UqsHH0eM3gQq!otd_q6K1w^#F7F|^0mgWw9p4ziN0 zPTF_yiRx8g%cD^j-=NovQ1-g>43}s_xQ>23Jzp1_1&WbP2X&H5WC+Pkxh`u-o)8mA zt#BgHupl@Vz#1M4_CuKcQ6ulY!^p!RS+5p7*AJ9dh$feM4O^tZb>zvqOa)Y*B1{Ry zzv%1Nc+{&zkH1BiOBdoeY@QXAep@i9`1TB_0{jR{`1~O7_(!}Gc!9V`@ipkrXZ|9Z z##=5I9iSXniu7cjwT>S~I=UM2{%56r%xhe=_}}Ijjdd_C`Ps(N6Fn>YJLl3HR4sO3ud3M0>(?Hz8U0LsUZqI)+Q;Xc&a>H9c z!^?-@RBu0Vq!cP-gLUIM`m-i4zbZkPSv=Df76XK~vtit}2HyIOZxCF5u~URvm#{mz z4u;Hu&}m!7brM1~T7wV13+)tX+I1@?s*iSZOlo$dSNeI|n?=K6TaI!XYim1JJDnmA?7Nl}FQZ|P z9Q(8N;=z2*Qh86`^&9d(@jVHM%U1f47*By57y{v{X<5dS5< z;=h(Ve_N~azhSL-9>MuvjLFT%p!&~<&GLUEb+iI}FEdKW)_kr_^)ZsVll>iH!M3R0 z9h5bJ4SC75c)gbE4mf{O+G2>DW!i(+?Y3_xkrJ33qS&1%BCLw4-dJ?2ESs^quIiVe z)PXOX4S-nbSN%5FA` zUQKgT3WKrUTu2HfcG%r`I+^_YH|F~^ur2Gt1CHxWYnRri5QDz6_+PY&MiK+=KPqpafQM`a z$B)1?^=Mn_U97%g<7q8iTif-SYZAfPk0waMY-#XVBf6hj5q#(uVC_w1`*u`|>1iOz zk7kbKv4avbaQ_@*F%&oJf*np+894L6pG`@e6HR9}W#7Q4%4UnI*lFk#;5W)$68OtV zTTYKtbUmWmr|Uv1LRtDTs%)9-MDD0KvU)1fwh53p(tC0-GJ}t_El22(R2*SxW6w&e z*42%y>r}Lyw1UWJfU^8D-U!kabSS$&ZpFrQusm7Wu^2r8ih@)qecPs1E6H!~a~SEK zw4r-G_QfSo_deOW;)iCf`97y*3#=LQWQ?_Ev5a<9jWuK76U@ww9}o zda3-s7-2go*boOgbmUVh04$`Wlo8=Fq$UicCV%>lg{AQ0fUAf(0qfLIPwfx%h)r*6=m#5TJ2gv5l6AApXNWV9sgvM$ zdSUI>I1mRJ7cM?cigRi(kH<3wW3q{~N1JQb>jFq1uCzP2XIWBVH0H!*=ru7V78d6- zRKJdEF4VRsAcHjyr4`cb=U*8`3rfE*4rE9dB6}N(kP{Dy0LI8YyNpTwp4S|xt0HZ1 z?#P`3;Vn^QzQ<(dKy)dYrG7AqQH4?U9Ep9nsMpUhKrx`%u`ePvk%<$Y2ro^^o6wcf zzLxwP??OL<;jTO%g?|X?(2pXOKlUyWoX%N^`>iq$Kol~SKTK=K3ZJavV7{Jq%fd=N z)cdFytcRukzS;WWAi=;uA9WAO zUuOWYK}1O~AfX%>kdfkNprpeME);vPobnA82Bvt#ItGeF4(EupCP?4Llk~W<_8IaW zY)Vt6EK$|4s$o><+HyW87;V}pU47#2F6S~wa6@40tKTD(5m;QWl}KEG<{j>_7!Xz_ zXx`F23t{I+05QzMQ=kqb?KuTODw5M(sFTE(A~!?;GiLN&g-#6(aJeqA=B%yUG*~3_ zp{mMg+j437%0Ob&oE)g8HLHougyBomxu}cmV^=dhFC8jhYj&c7@}d1t*KhgFE#M-( zu1xsp*t3&puN4=|K$kRQ<}T!~Qu>KSIZXsCbX8f`q3zf>5QPr0Xb$S9C#o!DKfLMG zh+|kGadX99G22e}>gK7(7(t>4kOgg-gQ zvR|^gy+sA-lRrooM;x5%jXRr0PuRxa1JUt8X}f8I1hJ;vlTKES ziwJ>j@Kcdhb-7V`k)|*YIK1zL?h=5AS&Ek>eySnmlxV-P~Q@*R&ZtR0d?JlEVx^h z#?)PLDvZUsfJiUJ(LV`_d2(vJ^TFUG+Mi@crYx(@8~tm9HxcPlUj&qWg*6r{1WwnO zBtpvBc_!NFm}X<$06M#J%}5!xB_SRe51Kv-rze0sN|F(EieiBR9UR2cysy#k1jph8 z?Z8?L(@gKg zF>_60AdzntmPa3YCfnweaD>3<)RINxk#7`XNXGY5Gnyjyu}8DVYWH(PDdhF*SD8T6 zTIm>=a(sNI#42qKgIe00spu|EEc=2=S{}mRqLM@`BW1;9Ed>7?;h!O!m#rWjl%v85 zo&}mwK?mw!7K@O=!d>Ef%5b?XmS3m`aP2TeLWx5}eA>=OX@paU>z_T3?aI!6vs`?+ zU1}u)yWFmiL0m+#Tb{0S=;`4=U$S2p?ip0TP*`VGVO7y|mVm^B)J4?cv(T;xQ(41g z5Om_JfBEsfkNH7eI)UF*I(f7faJO+C&PKl&vJZ^;+B#6EWk5%4vIHY|MM0WWAFzh8 zc?c&~uYToKnuF)naM5Mu-j;iw^hc_x6Y!fX_X;lAw(CTyAl0sto41nkjW{~Qj_B7u zH$Uq(uXb-kKnLQJb&rD3`AzRvl$Iagn*O+FLDG0P;dwcan|?yjHj|EO+u=Z5cXc8{ zM&t*&#rHwOsP+3+n9U{>fI)ovl?`zPa5*Y<7eH+@O@~ed4?S;66l3DC(9Q{M4q(3y zH#W7%xlsp|A}$91WGxhLuK;FBAN&G!VNY|^Oq@RJhK8KTBUU!L8G*j0BdRN8*kF3& z0^G9>>AiKOXK)inQL26stY(s^8s-6UFTMctX9zEjMWw!J{Bqm1HJjfS;t`y#GBMC> zJgH54370=$b34GZT&Us+7-wmqjOUR24b^~Ip&phd#HW=YmLVzgHJsGPD-eAiRe@S| zXSb|fZa8k)9G7e4S5v_be2u68(S3STi$dJk^FPnXGJoWwe_fz$HQK*>$VlqD(0?CF zG`rU)Fh>Lf`@mU6Zvv1}9u$aB2N@Wm4X3B>PWb0NG~mIj3-Oc65Sd{xTzDY0#dHWP zON8*ZPpdnohv0>M{61`DZ5{R+QT6;e#SjGXr)~mXr(=X$U{}|5ym*?C4U??#*gq+ zvmf+_z+o?m!Ae#G&`of7R`wdQ=~@WED)UHyi|-`H}3&0Sw_9Y6q@kf`N_{ex*jxpQ*X= z{$M)15${RC35{?Ub$4r^iBN`#)3EYjR`qMJ7LO)Tg2+MiYVGoo@?>VJ=DeaM39JM( zYN6tV2kLL%FX=+ZmH{;1 zy`#LKxR{Brb)K#lmuEXJHm*e#T@zX1f+YTZ$`X)|LLx@KbPdm< zQ)%wOJjWsmnGCE*5>pG_H~rF(QaP(Win+!wd03vLGzXg=6iiYRpYN`}Gg-sjVRTI3 zyx+#H8cd!pTnv##H{+IU5r3hAIuw?@ZCrvA2?yP`&s#cZXUpd2&ttOn`BORJ@5Kt( z9FHfgeKea<&8 zj0-oeX5B+vl|9FlWe3f*zr|P`P72idprNl5rHR}N7 z)CHmV2w4mt?MmI-uqG5DSYGU6Eo7*6j#}$4c6@8o$|_q$91F>44RVnd)^N}|Qd-ni z?ySi>Y)v@HvK&pyRy7*svA)r#CvM5OWhw=f$ymT0QPGI$6?+fsc5|zGMP@&p?j}rZ zD-yL^E8EwAZ&*g9P{zZs&*VB)vuHZ9I4Y{Fpa}XXYdF)86A@4+vd!-K9Iu-rA2!jB zb^rj3Au8%O09@#yfpSvd==E2LOYi*qruRhbXTkhuUqEpdDYfZmWGOC7%@Mn5)?xE9 zcPC)mJ!he?sn(;NF>&I(#2aamgw9JavlPlxADm4go&t_!F4z>LF8~;&$wPie@Lu`H6c~{=T5jVp0)9 zGit`(MRPSq_y{qEE_`FUH)WFXgZNLmj83A(MmQOb86Ye7p*bU>#e|ljJt+r?89j{~A&LJe? zYG)#3!Ovt4{9f@yqFL$bv`ewMkg0h`u($K*lorZqXe~F(%J?P9i{b9%7(2N=C0UQP zPai17o9lUxPf|JG?YJPipls!p&zi7Maf_Nc2&yhD6jl+VyB>7(S4@{Wzx) zrOz;5XN&2QR5Bxu#{^Jc5&D1HC}=F1+>U|OC-(tf=jQS znWR^d-1?Rp4j*YJ^yra$#2%Elz!9@8lOtpxViO>xG)EwZGmT;_%m!8B;fWSfG7J?F z*@?7#QVMx+Tq;aR-83Vcq1{sh;!rVu5qF29q#Yk=l`SwEgR7H_=-uhvnn9Nz64v48HcOu*<3?!mlr zN@{|AVuL8WExiCcc<2Tu2>E|f{e|Gs%@glR7KgpvOHH+b06?2ce_GpdE0&C3L@56r zRy&maN*YnEFAGHm|9GV89ljl&jYD%x#{G-LZ2oX)M3TkB2Z~W79iSfxQYsHq9M0Ft4Y|SBNxmEiy5DC$NIERLH1%a( zxHuPaVESbzqQdN(%g{YXN}UEewHS6=`agAD1ymfn*DtQc-L({Vm*VcUI23ocLXpLb z+v4tCin~K8?ruejQ@lu_^jntqfA7(EzBy;kW@fJ?xtU}#H@_fr@zA?kTUxdAyV8XH z^i5l*Q#e>^o+4R}xJbRT`#V>ty8P~O@fH-y8dq0m)$>J_B^lDoCUmC?mnwGK&>}oJ~Ak2*brOpt8Q3B3ickV zgqrVOSd=Yk3@}+9nLMV#emC*brUug;y(k@XcbeCava$ROaYHNlv)`t2eh9-b&H=nE zMKb1dbLcNBw#?gXTc-tzQ7V>}rD;?8eTLG`8E9Rh8V1^;(=y(O>%i-%-8t*i#u{YkAQt;Gq)ZxyI98HtB zTVWC?h2zZe%=rh7j-YVY%*`LR6up9|>#S4uMQzelf3J)4sSe(Xc+Rhjwn`7$RYqHu zx}lc%2fyR{l0&!V0(gR-`>Ra5ee{8Vix=d?WvbixMZ+r9lb?FOF??n`Zbmm=aY|He z#SABrN_AHJd4p&xbdgEcuQ=b4Jc1MVr74k$NP1y$tnKA{%PfG4!0nvPZ3E-}S2hSC z%|o}vmaR*sqE1&>W^s?Kn`fm9_)9@GjnSianMaB5t8zWGQ7=ep#n%`eZfuw@0g18* zTOV1sY`sfQ9WYi&xtXF`X%U*}f|03Mv&P)s&AZhkh!A3##NflZE@p2b^UM21L9uF3y?=9>5*m)*UayJuv!2%8{33QxcHA^b=t@g2s_1Q<6E; zFv=YNCs8!B0k?iHoIAqpDOu1^uho9ru+H z(KpIUVqDBuq1Qi`q?vf`L0~FKkN7^|&)_x6X1kB^uKX7AkmwJggV%{nCIEzI&#*v1 z5#&G>4+7A83nCyv6Tuzx3-&$Sz~YbhU1Y|czM=Ba@I%tV7}BPqP+Ux~1C9L%c#|)z zEg2c5TSl#5l7*)zZQmD+^Iyn!kl3Y>Y=_uvyvWaaZu|bL)ce8$g{6yj=H0Xe8w4Gk zy&Waz_N%e9ccVWCtoelW3LfwmxmPV(2`OSf*Kfj^RkOIpPRmA8(Pdwo0`zg0bq~ z;MCj@>dybR<83cO)CCIq@i($#j1xNq{Z^@7PmkZezE?6Q>%UrWe0@>Fu4ABI1-qXc zLXgIyeOn{N2AqFq1KI7g1^oWStm&EEg?wn!-qhXfhVUi5bu5YYTxELNgtlQ z(3=3Mlb80R2=4N|MG^u`Ypo$;(z~6k5LpT11FlnkG>s>?ROLN8;$E3bnOG+<2rFJK zX>!*R5O0l=F}W}hI9F}0n(Kz98D>mk_+9llmsDk6|q_7&fRmKFMb zVi~sQE+?6hw{A8{uwx4`WHc_}E4rl{aWnZCn6rlfOK!Fcw?Pow*mD~XCCgH<8)`6} zyNUTxT*h2mP+Qxyc)f>N-?+)FR9-;8R64x5y@F0HscmC%k!ZSd|G>s$*GY~ zYT|Xw!r6eC36T}q(nK6%i*~x;hL`2m0fpAHlCU4_w>~0|a#1S!&zyz3nNE3^F63Pl zSbUaw$=4(Bb+zQ(M#N;I7^`dNB(k7bwv0ryb463TKwX7)S26n1Cv7fAJ<&P}D(q7< zQ&CR-me8SNdZ@Mr_;Hz$Ligp@-wEe1BnfG?IoS~buM$b?tJB-{JX~2A=s&!bOxg(6 zEX~HEwK5q=Ud%ZK&0)>J@U;1U8o1`GM$VKu)C-;wxr|V<2r!h1%^#`^U7WcWh_xgr zjDU_~YxlEf8{W7?bnt|c@2Qkt0m7`Ne?Qg;-O;(Ok2qdyF=>Db8~E_mI9cWes=RRj zwGikFL{{7>)LqQ3s-$RVw8} zEC5uj{MUJlEm-7SuUpJ;<{PB}6kCdJlx(Ud4Zg32u95EP*6i8tqX5d#3E`ahzk55R zJup2Rc5hubv)gC-HL2~|HMs?1S2C$SnhBWrDUiesvTWA#n%ohN!Cyy5{N9L*7>cLD z2QDBBFtWorM;#0$Rzf=)4)+&s{6rj@QUa{9qS#Yn_|s&*8PE$EHru{>E(sbw$=Vj_ zt{5g;2DMHI^5BJtQ~0@iy zdGq>}U^GwO(t5GG-K>a#Vr3N(*8%~*M#-p6U#BVtOb#T>Xsur=DjXNR)KVF2&9f)n zikK~-zohhCYqXJ#kfMOuaW`b7-9)zbT1PyZ(yl+zFl7iz3aS4MY-l|*+s?x0pW&~u z3RWhD(z1?&DC*dmrVfUInWaCk_g0_cplwLDmLYM$S?z_nm|yrh3-XY#ES;!4D9}xZUpZ(&bhnHB|d*G#U_Af=eQnFiJKU;ig&Fma#nh z`A5P=!Wg$qJ5$S2uK84{Wrw0R(sA(~?Mqtf1o>W;8`@^uXnN8>Om(*(xUvBa)619ptVmw6O zciM`>Iycj?9JE|tanjc?>p2J1oyUd=_XPQEY%XtXjS$azu1}^8UcfxR|Grv`Q?cU^ z?=S{MU|hOwBy&|Y0hV9hQD7fk0ESw?7t}94}*3-hrYD)X10wq0O+Hfzl$`4 znBWp$Mp_9E@x%(}&J^8*nQl&s*hpQSvLNygS4T{?LtW?C9{;A#=d)2~d~(SZWuVos zl{nRwZb6XFTMqvwvTJT>Qkl~~ftLeS&&N#^Kt7!7hLYG5nWpl=ZJ3&PcIv~9z;g7B zyRZB;8Nmq_&ISd}IvYU>5$PXvucJit@&y>zoO#xnCcQht=@>~Ab%(>Zr*LV zulr&hMJ`fy>w%_=q=G{L?En;c@e#U5t$0T zDE>+S$Fk{e|9s7_cAolZ-B*=)nuSheP&z-Xc_+_%FJ^0+@YR#Z+ew2dj$rNLLIMq) z6_X3Z8rH7U+Gu@V_?Bc!<9qaK0Po^lrR*hx#1hudfQEuKq?wyy%q^S3 zTS^^O(?cPx_foR2VNeQo`ri#BoJIY>WIU&L`l{moO2qLaN3huhL7sr5L`Fo8PS#EY zeJQ@DFNG&OP*60W5;DUUZKr8(i^~z%s;G(0xa|8dzW>+o9<=NSD*YG<6jefj_xC3V z1_x9?q$YwFktz1?4wD*o{*3xPF2VX83fhsGeD0WhsnmK7>b->VxI~;6EkKjBkx{pI zlTa|cvU2DmvHljewXcV9|(uKZfJNL5~fso9nW%8+ZULn z;vnDSLKMGUBYN9JgoD)1J|_G*k4}jBFv{BE3vS?jI33B<33a;iM9Ery*cVQ$%^?B| zz;0Zj4%1DTzZ&9uECF%?@0oxp9!iX?nMz@colR?k?e+Aq^XfZSY>=AZ;`8`0d)eQN zFiO_N-3@O9^49nf+i7ZcILf=PILmucvF?=BGv|~8a5+HZLi9bK(hYMueXMQf5_hfX zo2Ib0#n%PMfPxKd><%2tUy>*tr5gw6#h;?yl$(^i}fgerCXcj~?tN#6YvI@V6geKAF zO4}Mit7sQ9`XO8kPAFT3w<4-{mFSkVWevtT(&0VMM-Cr=-_WO+%GL|%@FGrwdnU0D zLJld46Z{-xxj(M%hrkTakWcig0p8A4=Db!sm=9>|xs;H|C@75W({DffJ{dlDsm*zk-%}YGDK;_4wz^XK<0;r+yI# z?IPx>A2|x5cx*BdiXTSHjCOJh_ITFqV=g=dGe-<27$(yJfg z(yW$`6J^Mj$QLykwR>=seqDHeNZ={QU=nU!n6I&rG=Y-#%Z%Xr-pIh7f`}{tGGlv6 zJ_u*GHU=lO3irIurGz61-Kn8Ka5K7LX~OBtW|Fh?&CvX~){=*QR2l#u2ZA1h6^aWp zF)?xfwTLnA^m|8LdzeLe9d~s$S+&|1aC!rs@Y2TB!(ApHXC{qcsr9)Xna~)WJ}~WZ z4l}3|b8R>Rji=_UXQe-d$*5)|j;o>@rf>`)I5T-&J-dw}tS(f;{)lEbgZOdU5}O~M zJCxUHw!Bo28J1vVSBDWmpSNFXW%a9!`{O4}LVXeId6cwLZjNih*(CNHPt!MI321ZU z^7VFm7O)!n%#cw2sO-D;i(ky=oD9Yj=J|Vhmws8A@Hj4^zQN?Dh}*xb-|DRGwnywt z+iaO#2i*tcB~dEsP1z4nHN(KlmxE(`U5a17h}J3r9?*HTVz}F+Ezlo z8(-icQyW9h)W;dC8)v8SG&gpBXEj2eU-)Gzo7!fy8-_KJ0yQ$&Z@cbADO2I|HodHN zT7Jl=$iu`o2tBD>P1n;;?WV1l!D;=s!mvX~jfW0GI2*waNI=AOg$*UohFZSaxN~k6 z^|Ee|=!lKSNW>vmkNUJtCC@QxpXpCtRw@TILYqo;A6LglQ>U-)iH%VuyiK)d!T4nh zoit(WmMx6u?7=XuR>i!-RfZhq7N;}MbKIsp#y%!!Xfog|+6ETTA(!t%vRAOyqsPr@ zOM2Q8qs?22TLBce!|m6LMp(wUgp!hE7%RjW^gm*=bXyZ0C@A&-itqE1RYPX+bB8rE z-{>4xX)a5fSqGVZB}SI9J$PH&)ZaH!jLvRDufAe+!u3XuM?D%Xsy!YhfCL6bzwhch zby-S{cHDq=&s!FuQAI~K*EfNuNt2z}VH`Rr5$vhil1u=Cp7&Q}6M-_8;m;XXv5kfz z2)hfi?di3)=-==B+OHL(3qG2A>zF==n zm$*iJ&oFOl#sr2pc}0ZXX0e+Lt$yRI4g&?DT^A;3i3i`LA$inXdgR1$Gwef!672J- z7GtxPIvpWEDq=kj$`6jWn*z_%#fh9MwCMTHwhGBc->hBR?ZX$K;GUYljp+DM%_6bd zDUeEW?0$qD-NELvbbB{Zfz(B>Wr1y?Yte5$GI zLsdEEf|6nR+)QM8AFy8tmiyC1=gK_H=du@Tj?$RpfYv;dINwn{$h;QTZSlUE$hsXq z4_0nJNBQq7lcA@}JEr*x2BN1o#>xj_V@c_}U7|;w8I5T$t%O%R-l_?5ng|9c9PwvY zSGwifsMo}I)L(;xY;q(Tp~7ztu2q*iUo#1*4aeVE$y@8eRHrwxak%?rT+&OetN=(H`h7x4PJ(s%%EmxYpIvR69BniKHxJ_+;u~ zax>`kc}Fq3p3qf@nsJFQQQYR6URLl(aE>@3@MMvSFG5@+%YWU$Wi=Q=?M0g`4%YFu z&jICzliXl@)M?^X_<31FNNHrn=hAodX|4eO_g*HFb5uVR*$9BKwSnB#NqmQeq|8@5 zP+2?3c`(y5MU@Ia84{M%w5YrjQwwCWMCT)u2fj;=CZ@3<{)o7P)%{TBZqJTlfJD+g zvnxuO`B`0HYlXMA(-^B8DVDCc`3+DNxJbY+nR` z)E1`x9yfljSsSGKq{D{YbLeLa~2VHeXc;L z$SYodjuPBztjUGk>CL;s667MuY^mP_(7~yl_8;@^li`$N)9`P0PJt>~=u!;M5U8a> z+vrW~97TUVwH?@2OxuTWMNkx27OGwmpMFJa9@TcPZgzlErA>o}!_A6};=B=iU;bJm z-Qi~q&(6gspooZ@c8qqxj!GZ}ay(UQ>iVV|u2Um)y0M_kJ zLDv)2ft+s```SmJw`!5~il8Sp~d=!?67ng~^j@T2kSpLx6Zd0J_%z1b52FY6}H3e%$th(jIw zLd@k9LV^oxF+EBEMALXElJCBtZfH651ZA4M(BLEPH!>?E=Q3g-hp)mnCWOebwn;6n z@{-vWH66&~3`$96aHMEcgM>d#n4P?2kKJLTaY=WHL&$iMmy%#4JFiD3y30u5sDo2t z2nhW7cJKUSW+iI$*Uujb;9AU>$u;y=2gs%Dvo(0aT}MS=gz9;?eM&rMXxBROF0=N? zOM8>h`B75S=Xlid&r7>p?}0Ds$FKhYlX$yN4Id9G#z@G&i;?YdX@j@wkRl-~mf&bU z5RQp_T}4|P9!(rR1k?xb!`7)5D8ET9CR88ol|{xR^dN%H3hEUz>Vi8_!JbpA(^LLD zxorHkX=gY6RN%fD@a%*{2fMYin)y>1{Apnrb$R?reIRG>S(CKR!h8m6>j43O#Ot^E z;>J0XyTbqia}1#5smk#enqXP4k`-ybgu9%SZ}B;+g6KOGlamsxocVbZC&HFnLhN1^ zO4#0#D>nnm0vu2S$_I3e9ZG%PmY%s;vi8Ey>l`rUZnM8jLGe!@&&#!&nF+;TjhA9+s^$>JK? zq!_Y;Kxpu*njcA2QeaK((hFpG>x>n`%F)&5h#CCQ8YdoBuf;?Su$_796pJMF1)C&@ ze}CubOM%#SK7zzS2*2=b%Vp}vqU`ZW$ogX%W^bZ1xC&H#tDvn2*#9>T z1E7+(2jLxJ_6yqaU`T1SSqqZ+#FOp=u*@?t&M^2)N5L>X)*a3gL&r1CCevY=g7_;c#*-N{ z#fQv&HNYsDNT`qQZK$Ln3-y27RBigw)SfR6TYtYQTI2`%J!Rv+h*lD;RI2+3wxb-ry zr*Gj82W3P_YX|Q0ph_0s?p-T=Q*#|d+ip`Krhl>M_~|yI@-B;2#oq(+*{RVheD>C? zKIBbIp^xVa8$5d&cEUbC2((hl{Jaub%?EcWDR220=8ZjqjTe6V4HK6G2~EN=y}!}5 z{;a(1PgD2ki0(EnqNr~D6-d4KnQrEq+-IBVJYY<#lR)Z20*d-6;^@;wJ3uP0Utqiy zK5}RsprAh`P~N*6{1p}0b(MS#a)gKZINtv`0#MM04DeXxQ>gVV47D(b@VVK=OM2h^ zg^avJ6jEQa)=vaB*z%W%)wl5QTVK=v!sU!jy3PX%KcZ#YuY zFzV0jM+!U9X-`j^3z1NxuXl0Xgy9&E=PthEmOe-VVB}b_>DX(vwn&U*BO;X3tgnJ! z>Z6-29tiepevX?N`NiER58`VlL{E)YOAo+zQ81}0%+qoA!0VRTcxK({Wv=k){nsQG zo8h*qG?m^hM?5M7B|NU3lCH|sHkDqVbCXLp(TrKryHuNmwD&RJ?wkn%U*~S?svYEe z_Id6XD*}wDL13ykFQ0Oj4`1IeydLT>_}OnH1tAHWPZn68X=iZ*2fY z0LdU5PQnf%#_WyiV*|T;4BojG@q2p1h(yQmK=7#;(q@``Ew8^ziZU zf~<^8g~O$kh%g!!!{3yUH<+YMc4GZ*6x_8CD_aPPTkpH28d_K+zNQ5e;FY_U#r1Hjf^<|77f4byhNYc8|GOO*UK zd-lc3?+U`|M{lsNCc<;W!=gPHnlvw~{NLbO3zceKt>@cP9Lr3qM;c0CfC+4BPTp@38jJ{hSMl|sh(uC^A zyfixt=*6e#=WwcJMn^Fn_)sN1ODUPM?FR8#wob-q(xXDVJI>{ZAo!S7)=leozAm8=|GDGDTBbl zgH^=rE%T;Cl*|uO0GhmOsZTE`k_gTQuB+&RS+yj-G~p-2uj0}ga(_B#lGe*iUURqY z!|SoHSsf7Zr%W)ING~QeIVw#kqD&*d#r3DTM`B}YVZ~{3R+?o?hsgboiz#jL?;s zDFCC<%NO!Evz_?Uch8XpY34?wO84Bfq$>isb*-#>8Y}uCuIKSIwH2!^myNT=j9gcMKka&UMiq_3U zHg%P0wgdfbZNp6Rb_1EAwf2fu+@{xrKEj!HT-$*8R|sDh)_*xYxt@Pcft*(Xg}3xLDjPXTYj$e zdTKDrXh>$tO+YRYP=N#((VAiTl!y9@fQb#6i$;?rBMh&}ieI9qQ1@M6J4Jy*P5rt@ z_tZpyKCC{gu2Q-5+n(GgIn7B&JTWYp4CbXMky9G=AQ_luXX_yHnQ^TmUB~>GLE(PA zfM68--XL=VY}qi4t*B|zW<}l>vqq6qwajBxw;_efj#$kFK;@yla%`*?EQ<>V&B*u) zvJ+>?I$Mvj9BCIL4fo5RF-MjvGJGPxuVhUximm2dnty6@UI~fWm)SbTD>@?5-Gx{^ zD|z{RpHlFchErlJp165Z$6zljWO+&Sg3##g{xMOumN#-IX733eRK8I!oF!2&d1^wm zpY11`s{;2GOF*RA{?Vm6V7EfoJ5&DqZPc|?ZBYkBVQoEc$_9BaR6Kl+xNjVJJhHM5 zd>xE5D!HKWck*eH>?pK-cx7{VSK3}KLfV27j83)E4fco)-t7}ekJetOR{!uh_h{~G z--heJcR73#j)5+LKOM?PqoxET#XgF&h-OX$B=yo~nV=0ILIJ>46arvIBnkMz)gGAz zjsgQ3M00@O>XM@8A2xggI>qq*Ysa_f1Z?0y45!>fn3&5STc16wfO$MrKyLp(cmMB3 zXv%UBkciJ7HkboN)A1ZIf_ zL`r@negLJc0#WRO&KLhsf>HqjU}9Qs^#7Ri1gr81le-{rJ&6lkOJL|p(qtS+3n8!| z#bg0U-B;jbUNRoo(!Y@?K{BYG$Z-({6B6*F{zv%}_{k?sMj{|4y8kfz4HyX`et`A- z=g<@dYxyOB1}sf^ERVl&B0*G7O_CM^6Ms)31ZVF76cUJ*iUY|d4!-{?l^v2m0$iCL zuTX&R6CUL~AVXS${4pQ22KePann5W#>A$=P6L_48$o4o&{S)u+AC3jtKbtx5cM=Xr zDhL=47?nr}xg`fgmBIzGrO`p+$%B)wX^+MHH(DM@8s$F{L8(Xu5Fs_tD(BJICkS^> z2t5?R60y@CB|br{dqQZa^gt-^50(NGct6HJ+xinYs3!uHUOxzs{71l_=um%(`Wtx! zB!={fC~j@wS7~yfUHW70{ss*B4Q zL=?V#5P|kD5wD#L?VN!VKwPl$hvnRFGx_Ub z{IJ3u1FYd;!7dEQ`OQJ&@`q8`KZmXb$oav`H-VX%gpg@gKnQL8|0qLMCp9Ysxws^# z|9bjB9|to4JF}pH#95EZ{#pGAYFqzk0;TF4K++k2o>`Ai;jk=1NF(nDg&=-B@Pl~? zbV~sMG|VReVq{~3ZGRG%{X|^4ABdM2Xp;S?_em(w6GH895Fsh>#0?wBnEU7%j{zbN z@gaX2nHC8mCIK=!pa4Vi9}S(zCWM?!0b2#1^H^v9OcjH6VzhgWTMEe39t^_g+Tmk~Qgpk@fU|lvIU=iR_$hJt` zc)T`12of&;I}T z_&>9>fAXaifcgHKv;DJeJeeK@8TZd&R|MiC1-chJjvQ7pepuIo{(ZbB* zRQ?fE3GCp)f1xMP`3WRx9dwdCk?8jcY?XmO!hhNfq3{k369i~I0Z8&wCc8>7lR^Lj za4rrF$WcH5xmX3d_239_K<@%#up?v?5JEE4f+>+cAOM#O9y5Iax{Y549=hCpzy|Ua zK4$vqoAFu#qj5g+CMC6jbMg}LRMjvmVfni#!em%F80iS)@{lM o`g$`^K4C%meEMt=XaSByk^l{g;88T5X*@F}eD-X)^+C`70e&FHVgLXD delta 19266 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 100) { - Log.warn("Message with " + m.traces.length + " trace hops; silently dropping\n" + m.summary()); + Log.warn(SMTP.Outgoing.class, + "Message with " + m.traces.length + " trace hops; silently dropping\n" + m.summary()); return; } synchronized(Outgoing.class) { - store.add(m); + FileSystem.root.slash("outgoing").add(m); queue.append(m); Outgoing.class.notify(); } } - private static boolean attempt(Message m) { - InetAddress[] mx = getMailExchangerIPs(m.envelopeTo.host); + // FIXME!!! ignores more than one destination envelope!!!! + private static boolean attempt(Message m) throws IOException { + InetAddress[] mx = getMailExchangerIPs(m.envelopeTo[0].host); if (mx.length == 0) { - Log.warn("could not resolve " + m.envelopeTo.host + "; bouncing it\n" + m.summary()); - send(m.bounce("could not resolve " + m.envelopeTo.host)); + Log.warn(SMTP.Outgoing.class, "could not resolve " + m.envelopeTo[0].host + "; bouncing it\n" + m.summary()); + send(m.bounce("could not resolve " + m.envelopeTo[0].host)); return true; } if (new Date().getTime() - m.arrival.getTime() > 1000 * 60 * 60 * 24 * 5) { - Log.warn("could not send message after 5 days; bouncing it\n" + m.summary()); + Log.warn(SMTP.Outgoing.class, "could not send message after 5 days; bouncing it\n" + m.summary()); send(m.bounce("could not send for 5 days")); return true; } for(int i=0; iserver which accepts requests sent via SMTP */ public class XMLRPC extends Target { } -- 1.7.10.4