brad@looking.on.ca (Brad Templeton) (02/23/90)
Enough people have requested a copy of ABE (it was posted to comp.sources.misc in early '89), and it is small enough, that I thought I would post it here. If it is decided to be a standard decoder, we may make some changes, like support for an xxencode format etc. That's not hard to do. Normally, I would post source in a shar, but as an experiment, I arc'd the source together into abe.arc and am posting the 3 part ABE2 encoding of that file. What use is that? I used the +d option, and it prepended the source for the tiny abe2 decoder to the first part. Take that source and compile it, then go cat part1 part2 part3 | tiny-dabe >abe.arc Or, if you like: sort (parts-in-any-order) | tiny-dabe >abe.arc to demonstrate that even the tiny-dabe can handle postings in a random order. Once you have the decoder, you could try the now pointless experiment of dabe +i (parts in any order with other files mixed in) By the time you read this, abe.tar.Z should also be in uunet!~ftp/ClariNet Note that this is not posted to comp.binaries.ibm.pc because that's just starting up again, and this is not a binary! ;ABE ASCII-Binary-Encoding (by Brad Templeton) ;Use 'sort' and/or 'dabe' to decode --------Tiny DABE (tdABE2) ------ /* Tiny ABE 'Ascii-Binary Encoding' Decoder for ABE2 (4 sets/64, 85 printables) 'sort' ALL THE INPUT FILES TOGETHER IF THEY'RE NOT IN ORDER. Try to get the full version of this program from various archives. This program is mainly meant as a temporary version for Unix users. DEFINE THE SYMBOL "msdos" on DOS MACHINES. By Brad Templeton. This code is released to the public domain. No warranties are provided or implied. */ #include <stdio.h> #include <fcntl.h> /* to get the MSDOS O_BINARY symbol only */ #define OUR_VERSION 1000 #define MAX_LLEN 80 /* max output line len */ #define NSETS 4 /* number of character sets */ #define SFBYTE 31 #define NUM_SAFE 64 #define CSUM_MOD 65536 /* header characters */ #define CODE_HEAD '"' #define MAIN_HEAD '#' #define ismapchar(x) ((x>='.'&&x<='9')||(x>='A'&&x<='Z')||(x>='a'&&x<='z')) long line_num; long expected_sum = 0; extern long atol(); int whatbyte[NSETS][NUM_SAFE]; /* array maps printables to bytes */ char linbuf[MAX_LLEN]; /* input line */ main() { int i, c, len; int sum; int setby, by; char ltype; line_num = 1; #ifdef msdos setmode( 1, O_BINARY ); /* make stdout binary on DOS */ #endif while( fgets( linbuf, MAX_LLEN, stdin ) ){ if( linbuf[0] >= 'T' && linbuf[0] <= 'Z' ) { ltype = linbuf[4] == linbuf[5] ? linbuf[4] : 0; len = strlen(linbuf); if( linbuf[len-1] == '\n' ) linbuf[--len] = 0; else continue; /* line too long */ sum = 0; for( i = 4; i < len; i++ ) sum += linbuf[i]; /* bad checksum, not a line for us */ if( (sum % NUM_SAFE) != bconv(linbuf[3]) ) continue; if( ( (long)(bconv(linbuf[0])-SFBYTE)*NUM_SAFE+ bconv(linbuf[1]))*NUM_SAFE + bconv(linbuf[2]) != line_num++ ) bomb_out("Sequence"); if( ltype == MAIN_HEAD ) { if( linbuf[6] == 'S' ) { int ver; ver = atoi(linbuf+7); if( ver > OUR_VERSION || ver < 1000 ) bomb_out( "Version number" ); if(strcmp(linbuf+len-5,",ABE2") != 0 ) bomb_out("Bad Encoding Style"); } else if( expected_sum != atol(linbuf+7) ) bomb_out( "Checksum" ); } else if( ltype == CODE_HEAD ) { /* encoding map */ int line; line = bconv(linbuf[6])*32; for( i = 0; i < 16; i++ ) { setby = bconv(linbuf[7+2+i*3]); for( by = 1; by >= 0; by-- ) { whatbyte[setby%4][bconv(linbuf[ 7+i*3+by])] = line+i*2 +by; setby /= NSETS; } } } else if( !ltype || ismapchar(ltype)) { /* decode a line */ expected_sum = (expected_sum + sum) % CSUM_MOD; for( i = 4; i < len; i++ ) switch(c = linbuf[i]){ case '+': case ',': case '-': putchar(whatbyte[1+c-'+'] [bconv(linbuf[++i])]); break; case '"': case '#': case '$': case '%': case '&': case 39: /* single quote ' */ case '(': case ')': case '*': putchar(whatbyte[1+(c-'"')/3] [bconv(linbuf[++i])]); putchar(whatbyte[1+(c-'"')%3] [bconv(linbuf[++i])]); break; case '_': /* act like this is the 7th code */ c = ':'+7; /* fall through */ case ':': case ';': case '<': case '=': case '>': case '?': case '@': putchar(whatbyte[1+(c-':')/3] [bconv(linbuf[++i])]); putchar(whatbyte[0][ bconv(linbuf[++i])]); putchar(whatbyte[1+(c-':')%3] [bconv(linbuf[++i])]); break; default: putchar(whatbyte[0][bconv(c)]); break; } } } } } bomb_out(err) char *err; { fprintf( stderr, "Decode aborted - %s error, Line: %3.3s\n",err,linbuf); fprintf(stderr, "Try to sort file or get the advanced DABE decoder.\n"); exit(1); } bconv( n ) /* convert character from 64 set into int */ int n; { return n - (n > '9' ? (n > 'Z' ? 'a'-38 : 'A'-12) : '.'); } --------Cut here to extract tiny decoder------ T./z$$filecount=1 T.0O##S1000,1000,1000,ABE2 T.1C$$blocking=true T.2b$$uname=abe.arc T.3j$$startblock=0,0,1000,abe.arc T.4k$$style=ABE2 T.5t"".0U//6.34.25.Ks2f25q45byD7L.lV.DA/yw.EK.1I2JQ38zC T.6i""/.9.gB0d73OX2k0/Gr3Fb3./4J1.233453674894wQ519DXe9 T.7N""08A.BC0DE3FG.HI/JKCLM3NO4PQ.RS.TU.VW7XY3ZF4zj0IhC T.80""1Za.bc/de.fg/hi/jk4lm3no/pq.rs/tu/vw4xy0zP5G587qD T.9S""2CO.cM.Sk3WA0Ti4Qg9Da8tW9ju.469oa/BHChi2SG95YCZX9 T.A2""3v9/xs4n140M8Wo8Jx8NC9rf9YC/FmDeS5L.8pE93dDef8MwD T.Bf""4N//Pg8Em88n82h9c.96A93o9mH/d/9TR7LqCtc5UlCNsDTnD T.CL""5VB3ba9Ip7UK9y05lDDpjDtYDPv4ORCHRDuV9ZxDirDkuDvzD T.Df$$os=unix T.EM$$fname=abe.arc T.F7$$owner=brad T.Gu$$date=635724516 T.Hp$$perm=33204 T.I8$$size=59381 T.JH"1K;Makef"ile0f608z/00,VDl+CKa+U300"qD%Qq,ylP*JWw#uU&2y"/O%ahwt=2oh T.Kv,s8A89F;h39#21G,mL.,6Ys:sfN&27r8"SUAX*y5"4c=PYUQ%nM$11+fWd(N84$Dy T.Lf7"bT&TesoHNO4-PpLA/,mQc"En"nX"fx)0m%YJSk0#04"nI+3kU-FtsS"OK9S:Tme T.MV%is"SN%aJ=5yQ&QM$y/#nK(Cf"SG"ajm>9tI>DAB=MG1>7dc%TR-gL-tD-CzG*B1i T.N9#2DI7#mU;e.R&8I#h7$mI(F06%bN"1wh8$40=93D"t2q(ln$Cm(Rb'OEA"3s<6KHn T.OXT%1L'Yt"b8U"DEi:ltd#KB%0L/#26(.J#or=Cesw:cDdE#30"Gf%lY)CH$/b)Ha)ZQ T.PF+zuF;MQY%3B-1m(fg*nb%Ap*rZ*ad'MK=xUU*vl_ZaM#Qw-TO@VEK"Uv>qcy(ZM&7Z T.QqbeTw>YCl#0p?FQ3+u2oL.,206:d6TG-TcgB+XQC7/"8B,G3n,0an:szt/'A8c"TV%Qp T.R7_sxY%if,6OFEr;yvY-W8c.GKaj+BBI"nE5(BJ"mSA%Aja,NQWK#iD:ObjV,8.b%wU T.ST+zi.,Kd39<DLIFdfL:2jY"EA"E8$98#KX:LHn"Jfm"Unjs;yidEf0e#d4(J2$0T@6QN T.Tt(cD"aWf)cI<uzI(K7?tal#hzi&k0#YUi<mFHf(5s(OU%Pg"9Q&9A#IX8D*U2V*i0c T.Ugy>ns8Xj*sC<49CM$OE&Is"Wxok#aVb%op;Sut&7o'GB@3.O%tj&Zo)0S&Y4&vo_5P9 T.VXHF<1CA(UJ"Kr"ne/K.N#HCt"Hp<Zkf$TJs#ls=gBG%bC&HV<wfmhb&co-GpRIj/"1K T.WWabe+.10+le0f608,Cw00OV#YS#kUa+b00"q.=W.UL+DHL71D%ph:2mIj"OED+SLS2 T.Xr$D2c#s8"nI-/BH#17a&II;UQE(Ah>7dc>2Q27=EoF#NZ8i>4dQB9.$OBQY4=EI8t&de T.Ylq:35Dw7&F6+naS2d)GQ<..4#yPr.ugSWH:I/k)J4X+NDPA*m/#E4@5DANu&RU'D5J T.Zk;m8N$mr<6n/(60)gQ-xEr;nR0$Ee&dy@6VS"hw"lh%di1)VaK7f)T2'iP>4hS?9As T.ad-5QJo_AHnr"pK&Z2oZ(Ld#gnvsKf"qQ"aszC01%u2#K7e-t8(BL&9DI%gA(K4,16c T.bi(b1%Lu,3vQp(FM(Gwn&dDsVthQ$RMq(m0;z5at<4.U:nQN(kLK%bu"VKX$Nu>uP8$xs T.cDm9?jLr&FqY:YkhSG#u3:xULQ:SVEPq=FnsY7_IEK#pI2K.;tL4P<uDR$18'EuULK$oN T.dV+B2I"oSA=8Gg+SFwz$CA=VPD:1y55"1o.29:Eha"6hza=6aBq1"GWE#TEO=uDv$HA T.er+HFQ-MA@Z3J+GQG+x/S=IOYKGy%.1q%wF=m2K,khs/Z'Ph$UcRe&E07DPkt=V7i-c T.fRy2+Kro+U5I_CQ9-Nnb"1W,VlRCPG#Qw+9TL:f1nvy=Fn/$7GT+cUD"yT%SA+5wK(ua T.g21$c8"jx-SSH:AUXGE&iad#dW$Lh+9ZI%4R-VFI%ka=9G1bJ"uj?JpB9g'5bBhFH#B1 T.hG,JNa&iY5-nIvK*KG"ao"Kgg%1c"XjE?0fxs%WIc-3pf=SAd%upGec+PuM3K;nNs+d T.iicY%SQ#Af<iz5*RC$vn?kbF$/j"mu+eAu#h9cpGK)UU)r0;jeD<C2q#m2F%la$f1#pl T.jc'tj)Cp:bnE_SL8H#4Q$/L"1M+p3GHtk;hQj"Cw*rj(Go)9p&JOr;ndJ$DycP2*3w&YF T.kW+HK9,iLW'yy'wrQ$hfAkEa#z8#a1q1lG2z&7Hap%sj&u9,Adt7"jyz&i8+kcd*b7%0g T.lD,ZeZ:8fi'O.O-IP)OduG:f.L_VIW%wLzT(5h"Hz&Ng"1Gp"c1tH?cy6bbF&Yd%qG8 T.mR>7iq#QK(aJ#sb*jC%GS?i7DI/-o9c-Md)u0:gq7'Bb:uxU)fVdzD(9Y#92;EAA)Da T.n7tdnW)Jh'w2;xfNI(d6"Kg"nU&RH#MYa)Ndd$0rx&I6(45)n.0G(Ioc&pkf)Nbu#MU T.ot?IPEc0Wpe,NuVKdN)9ns&6R'uk$oA"rPQ(JL,XxX(3x"05%junE?G4T#Vjn2b:ldz T.pgt$Zb%MS'HJ"fGnI$Jh;zU2&QCE=6xI@qcG?DWH4(wPz>UUS1"qTg$gCgY%cl)SJ%Yu T.qiE'WC"WC%c3N#/YKm#cX%1V%8g)BB'KC)ZgW,6oH>C2KcKD7X*J9&27F-2E)Jc_RuU T.rP#ID'5TBl'u5"kw$AvnZ#fd_/HTy&PVsG'XB-FImT:T8a"b.,kkSicW2%sw7X"l.TP T.sC%4d$KEO:bhd'/."XZk#ap(RY?cZc)U4q$l/%Lx?Ie1Xd$VO".g"68H5T"Of"Ya8Vv T.ta"UA"yW,GLs:KFSK"HJ2$Tnl_oMN:p/4%ip(bS=oglzW'A.m;/ZON<M7CTLJd$Oy*N/ T.uK&Ic"xu'cr"0m$qL%JMZj+S7EN."gfc%CQb#7Y#Er,QAn%27=Tp53VU?arn$IG"BG-O T.vmu1Y$9b+09M/>pErM"eT%wA?Pgn&ZuI$jM%oh)Av#coo@xIMc?kpF#1q)jd:PE7%Sr T.w."qy<w7i>6exo)xI1$ypy#ES%Me(cdO#8Lu=HxzFN_ujW$42"dW$nt'iQ"QY(0X"2V T.xP$JA>EjA>q3U'7f=d6V;Gi0FAW(7Rz$nb-Sh)eY+y5Uq)3Z"SL&bN#G4h*g4#Do&sI T.yGNy1$Af&KS*0X:n/K#r0,E7v"st>Or6"37<KKg#8G)k2HT*06_yQNS'PE%Th,ICi%bn T.zC"B0(7fSQ%QEy4@Zjwb:lKHo"RQ&P6(0X"2R>HdN(VxE"CUB"MIs(1coX&PD=toi%FR T/.P)53-mVUR(F7#2v"fX+lc/X%eB$5y&m4'wJ,RV.#w1'F5#ZIe&3S5:gu7'1n&ShbD,T T//Eiu&2/_4T1M/D6_fQLW*bX<fUC,bP5m@Mq6FN(Uf@INk(g4=VkDQP#kc_Scb?TAb"D/ T/0x(Dm#97D)uDq>.LN(CoO)ds%Qq)V7,t1M(2q:Aj4-E0XG,6hK"zVW"z08+feZ+mij#z1 T/1w*L0"78,i6k)a2E'99c(KXaC=gzw)xg"VnA'sV>6Tw)200>ggu&WU"pV(BN(GZ7%dy T/2J;Mes%Ci=uBJ$wh$/1'yO$JI(ad(Tx;1Ts)8B%Dj#T1&N7*jV)Ih-lP(pd-55*3M)/Z T/3Zl%so%fq"OSs>S1K*UJ(g.#RF$Dr:jWC*I5q*Dk@H9WO=xhw_IZxoc&AlN+kiA'Yg#Qd T/4w7+M7v0*bN@9rfk<I4D>bd2;iNC(y1)ch(Yk*Je#Hd(h4"EcQ?HQ2R+gYmDM$3XI_UV2 T/5J)II%Ym'Zd(NVB+oOG%G0-..D&44L#AO#.k_4xtH8_ULU"gkKuK,VwX(xe)bt(UZ"Vc T/6uM$fa$bx"Ml)tm$rB=vj0$.W#Cd)YD*KGdmcL#Rt:8d/M:T/vU8(7h$uj-Ezz&y."92 T/75(pf1&E9%bku:q/1NC4Jj*JU(Nu*UkE'8g'i9"cK'q6*0.:98q*NCw)UZ=Ker&A8(LY T/80(tU&zS%BC5+0.o.,WcV,4C47?6AJ)f9R*zU&oP$MG(Qu"pxH-jc(DM#yc:946VV$fZ T/9Jjc"dv$5d/&3i%kf-kT(EnO:IFpQr)Tkn_Fhk$.Arkr,K3N(O9Z2Sy(gf&hE(fbq)PD T/Az%aF&q8t"DD*mv"dcv,0LC-AM)G.7o$xr$YgZ,6pq;eQRr*tb,y3Qm"5gB_mzH(6q)MC T/BVc'LU(s.%hz)OJ*VM$KY-5F*Ym&1y(Sh&DZ1*quFJeCp$N8z(fBE#FL$r0;1zu'cc-n T/CrT9+wxmOB%S7u'QR82"5K=u0v+F/k,RAb(4jAQ+N04%taC$qN<3MA=3Jo(hM*/C7'Pr T/DdC(Su*Ep?PtWx6<Llj"1O%2q(MP2'RY+N0z%bw#SMB?Eaja<rrE(F2yk%pp"lS'YP)YG T/EL5z+paN$tUc(iO(e2"it%N/(Whk&Qq(mg(EB$Qf%uMx$lQ<tCl<CQ7%QV+qbf=ejy#xX T/Fr&Oia-bI(eA'8h+RGf&WN*op>N4t%vM"Tc#5WD0&YbS$Ar+X4p8)fQ&.4%Bd#xu"06 T/G/U&sq=VKpU,XNt-W/FDX,qHf&iE'0P;E9/E+cnt@OgeF%Gy:35y&nk,s69-su1#.1K T/He(5C;6mm%7NlA(K6:7q9h%DvXfNyq#C5)rB5X:VgyF<72a*P2$87)6L$u0(FQo(KFL T/IK-ZI(oHB5=APS6MrAX-AcBx=mCX=1PgZ"b23/'YK,Knp/%E9d$LB".fh&GF(OXe:WL0 T/Jm;WLX&T5g;8aLR)e4+vd2-641B"NM4B;Nk5=YXO$QOI#pqcS#h5"5t'GQ:DOV=wPXH T/Kt<O1HEn8E$1O#Xs"Du+/TE:mkkFWUv9/"hU$06<cIyk&Gq:7R7+t6I"cJ)W10+I8D<GAI T/LV:/AW-ARh"Ip2?Bue&Bm+wgm(Jw:B/cJ,99x;2P.V=zu0(6T2(Wp"T89$SP-Se*VSX T/MD'SF$gM%I2;P6k>UfA#8bP#Xg9@dT1&B.U%RS=7w5"cf%dsr"xX;Ma7$GHL+wfI'Ha T/NX,7nWB=3xE@suL(/9#FYUE7t2%2h'Bm<dw1"A2otybFC_srB:JRJ"h4&DP+BgS'T8&Qg T/O9#DUu9D"6b"cV$YHQD@AMWDUf_fx9(LT:lJ4I(8a'VC12*wR=7xAc+B4j/K#22)6al T/PdV#Fx%7.+gFg?yHWf#ktj<aRP"tS@DkrkM"Sc*ZW(aRTeNE"yyVE&2X)/T8"seU%WW T/QBzigf,qG2wUE%ACh=N61(UR$iE'2g%ACDB+YuJ+ilK>iPFxTs;hl.@LBN>Vji-ZLh:sKf T/RQ76(wO'wobQa:8WL%El'Q6'/T#BBH,MB/%184;I2y;VDf-HDk"k0;n/9*n/T$.x&FU T/Sm-Bc_kUj>gX/=p9u$HL2&jU)1J:pJD;ygRO$ija#h3;kIBi"SY@Ogk,VKn3l(zk<I.0 T/Tb=Gux."Ih@BuI"Jihn#wT"2D<hVpa$.aq#Y9&C/&uP:wzD%as*L6(j3Ib#yyT%AWR%wE T/Ua*i/"jl.F#bT#EX"x8"WyV&9U#Eb=RIrrc&U8"d1;UHh"Ad-W16:9116D-q/hJ;79S T/VQ$iB"lJ(FS"xu$ip;HZRl6(fWLq:x2U>RrZ>1BM:eHw#Uicg5"eK/;rPCmq$4Oa'im T/WK"sD=3BS*vB-G8o,Bf3Z)vy&Ct)LC&KA=F9dg"Hd;EOU,zGoa*hL&QcF&BS3O:PS4=U25 T/X.&OP)PH=Bgr-RM9'1J-iuF$WVE0w#Yb#9B'/SH_09/n39#XR#b1,nyL:dKG*mX<rvJ T/Y3(nuu1sZ)c2%iX"T5_XEQ&6nT$4F+3ik$2D<aW.=w7D;hCO&RF%YT%aS$UP-F5KU@Eqm T/ZX"v4%u4A*nm(qt_BGe&HSI;hnq%BI&ZIr=49ne.2+cJg+cv0Uv#FH-mgLev&2I&zLq T/aUG+gjG&74&DVc#JXR3BJ3+Dj3%md1%J/+boy#x2(Bw1&Pt)boBC#GAh&UK)s4'42RC T/bM&wmU&KSE$QO$dTs%/sv6../9Y4zN4%jV4ZY5,Gm5_7J9+bpL(td#39L+cej1q/8b*a7 T/ct&ORDA,vDA#EJ-k95>KyO,7ED@Pe1=CC1(1P&xX#VWj#Go$hmJt&PX+0//(ze.-lQh T/ds;4vS&ygK-Wa6*DU&J8<6F6R"0E%vh@hyY;s./%IUB-b2aB-iX*WFV'5J"zGT4UJ.%CP T/eR3"WU%Jp,4Ld=vDe%0F7>kXs;4ER"9Zm$UW"Re?z0a%Nf_OHs%EZ)jM't3?IZH%.G-K T/fEqUjeE%Q3$G8)0H"Bn@9Qew.;9Hq3/ROY$f.Y5AiH=4RY%Wr"cZL#PQ*PY(FI,xEw+T T/gNSXy*iX:Guo)Wnp-8t_ClB=h8W(IW?FDD"Gs)Zq%YU#yJ4&1Y#6lwe"YO&h.M)RJ#xT T/hE+e//).5d<yEf?vI8#wQ?HB7m#4QRM(XGM#dB<4b0g%h8)UHH)E9_nwD=zDJ@Bg5(8r T/iS+18Qhqc#Gv(HY$9SIC?yjs/#1L&bzo=yicx#WH-//R?nK3(0o'Q29%zsp8$p8%EB+x T/jK5lq#qWH,DrYs-D3)2lY=qKDs%Cr<s9J%7xl"5k"db(a0"n2l>LuVN_F2R%yFe$Pgb T/k1B&7K'.X#xF'/VlT"V7(EAAi"eY%fH&sf%7EJ3(Ek,WRU'WlY>SAk@I4ZU(Sw(3U"eq T/lK;aFQ+Dhvf8_UgN(Ur#u2'BF#IH'eU?MBCs"j0"0g;./O*sF%rh"r0&NCi#fb(X1AO T/mr(ch*gYI'42'mPV9"x6P/(g20Sm%zVO(fj%gS9(H9_ob7(Jp)JG%kl-PhS&nb#NA6$5f T/na4/:WYX2>F2B9&se)Ds$nV2:j1z-Ou2C3&e4O*1a(rE$Jp"24#AE,X12l*EP(KC%/j T/od>Ib2%R4-Sg(EY-dV)VK'fG%ET_kQe,Uy2'xa%Xa@6U4+t8n-2jcrv-1iv%Jz5A$kf T/pY0%8D$ud(e3B>5iU*JP_Pzy*deR%RW69V+E.4A.:Xa/Qi%PO(Q/#DRQC)2o-I.v%Ym T/q/%B7s=WDa)gad%Sd9#/a(Ie$ET#Bz*Ph'8eiy>7BB(yy=SxA"WqU_P5q&OU=cnlf)hu T/r0#e2'sHCZ&Ut:iOIrZF(n2D#3o&WW,4la&1s:NUrg,dzSUUIM"ip-d8Mu(Mg#PF%3k T/sM$lO"GO$WDGuB$IBD<bW5JV#3NR#LBCH&tP#tAG*Le(se(hVL>t2l*82t"k9+0kd0G T/t7'k/B"GBi(oL5#wU,ApzL"g8'8P+nBgJ$TK>n22X/$n.'XL#lj&k4y:L3G*s1#3m;gMp T/u2_BMw+KEs"Kg#Xb"74&PWh0Bw$iQv"2Jy#z9*5x&7Z"09H#iA+bY8%t0"/i&uDxm$FW T/v2)P9<WzGT$a6-URKi:UkO&P7.(Hb?P9I"F7N-.b)fI&p9Bl"H0"MOl95#aQ#.8"I4*2V T/ws)hr:XDn%Qu%UcT%hfU=3bu&Fq%TGu#/H;KKM$Re&xKLtP#Z7"2wR>jOP$R5"tI(QM T/xA"HdS*Z8$3D"Gpll*I9(qJIi*Pg"5c:VGoY'nBH$J2+bM9#4cmS%qd%ng$Lj#QRd<H9g T/yD"lFX'q9+M5X(Zr-KO(LS+9Ex"aw_2MN=E1d%ZsK&VC&eJUH3b.W=9J6XK=QT/'3h9 T/zvU(5W%Nx@9gY"Ada(dq@G3Np3.Z3,O.4;M72/"1Se$zh#RE=Zcf%w6p>LAFLy,R2a'S8 T0.Y(gs'BU*E8&2C"M8Z6(iC(sHM62zQe#xzp&CYAO#.ZuC%CL&lW-OI)T5N#WE"9gph)Dm T0/4$lw*BF+AhJ)Tj*MI)Qz6D3=Mu1a(dIu#5c*w2&.HM%HR)Drw$f8-DaJS8&YX%e7)ua T00N:re2#Q.w(A."24(vC$ep<Zhy(88a)97>6XW$Ab'LEX%Ll(a6$yl=iLr"JlC#.2%gN T01r_lHs)pWq&nk"r/4ZX(I1$Hkn>v1Zu'vX;WTL$8dM*iJ$6RVo%p2:2mY%bF'5B&Zn<DrG T02Z1.g(sn"L2avI(xD)qm"wM"pp*ec#m3&Bl"ZT"5w%SA&CkM-9x(6z2$0T.p&KF)Db(QU T032$Vc;zy0%08g#Pk-66r$P2H&Tn$w8;eDec%UTO&rT)1Z$23;j55%1U=8mS9=NdC+jb T04K/#936+D0W$aB*U9%H.<9YC'ij@Ndbl(F.F?OgO'G8*6g'P29*nP)1h%A5'SS"701)1l T05s;HTT:ykF?aXe>I1m"1Sln>Ydb'Hl=HBA;BJj(OIO-aQ*XU%STS#6E'6N&3j(sS#Cr T06V$tAPG*2n*Gg2F'28"vP2"Lv:Qih@q0fa1r:Q6NU*LO3'F6i%6e_3Mt)F7-Fg10G2L T07s%WF*uNek$Gk=Q2f<6lz'ce&ep(fC*cY*4R#6Lr(e6ga-On(MiW'l2,l3P.4+XAVZ"By T08M#b4U3&7N@Wzw*73q)cM"s7/$19(T.$0M$I.&GNp:sXo*OA._oPB*YN2M/(F4(Jn%Sw T09v"wQ%Xo#rZ:CO65;cIL1@nkUh+Lv4;W8l:ND6fB%2r)CR(1T&XB$UHNz#Jj@69S&sU T0Aup-srv&bdJ>Y94q)DXO'X6&rs_WLu'8L@lU2F#3j%fI$4R"U6Y9)jv#X1%jW#Db(LS T0B7'Am14g=bKf'4e:ov3&ys%Va=x2o.2&Lr+tQe@IBb/,LzUc?/2g&2vK*z0A#h5$oEV T0CQ'af<Sm9l'9q'89"hMA5?u5oPd=OUfb&ux%Z3<fCw'Ve(coQ(5U28+EUh&Wj.)4Ax&Nl T0Dw;Dqd/W"o0%8u"Qze,lmS(qo:ABL1Bt)8r"DU)U5$0U-MA(Up=Q/Mj"Fx$5r'JuLfd T0Ez+3tN(hb$cZoV=kdB:Yi3P(/k,lBN3,OJ3>KNlGvq&m3&Gy,0Oc'9J>OhY#XR"D9#jI T0Ft<ijE%RD*uE>PKF(mb6"pF"Dx"Qp"jX&Do-V9e#H0$uq&9j-t8n#rQ(xDH-Sf)YU%cw T0Gx*lL%GL7U.7$/A-v9)R0T#x/-xr5d#6.-o//B+Py7B4T(FWML:Te5_JyBg8p"p8U#SC T0HJO,QaZ<bmo.,FlX$46#2w%58%j4)kR=jhw:U3W=tSE;8DWE2*aYQ(R0%Q7$8Jq>PD9 T0Ia'b7#8w&Df,E9x'.G3"9bO".O$bF%TA13-eu5<xA8+Ku6+8j6-o//B+Py7B4T(FWM$CG T0Jn3"Cb)APRC%LC-pGP(Py2*3w#GO#/TV$N7&b2&cc;2YR)VR$7/<37T(DI&c1>Jg5*1l T0KG&o6'wp@JXO"C.R$eMU'EM$bAl%Tfmej$HD%LU(6C(W5(zy$Z3%Pn;GtJ&NN+FTSwf T0Lrr"SI%pw-k/)5m"GM&7d'V3L'hCR'Yp>s.f_08Iu#EN<sl7o)EN+q/l@e3.C3Um3$/j T0MR/F.n+Nj4+fJ3"zp#EN@a3M&eV.C3-RbbA<V2s4+GkJ5hM/#oP-zc-W1b8#FkC+64i T0NK6+.j6+57nS83+rJ4,/C3)Ld3+qgG<S9ZE>B2E-F28p"p8U#SCO%Qo&bq+n//+576%9P T0O6/<80T+bp6+4p6;38k"hE"RS'vW'rRD&tL&6A1(XA9_ZEB2?Eb9*E5"2C:3Mn"nFTS T0PYw;0clFj3:LCA"dq&Qr#SQ%pb//r7AN3S+P33;my5b=PR3).5*Fx=dX5(iH$pE@g/w T0Qjq&YT;RlV#PnD>zyV0Il$wYJv0"1Kabe".c0+le0f608)P900OV(Vx)Xi"yl00#qB&dp T0RMK&g0@bi2.x%69%CO-AIwh=GkK:8YVA7g%PT+06Q+S/4,/TC:Kgn"KTVA&UD$I6%0k T0So7Oa&II+UQd$VGWn'35v#iRv+J4..-4vc$OA+J7FAmAMm"LQ"6l8;SqC2>EI7<lfB(0Y T0T3F(bK"3o&e4"4i$O4(G2+szC0u$Sb"K4S*h5,Y6Th)GMt>dN9=lBq)G7$cL%G5_gyE T0UZ%Y4>KA2#0C'0b#Ron4c$a/"OL)Tx"FnR(SZ'Ab)53G?g8C@QZN"XwG(nh$C3$eD%l2 T0Vpa'G8&1R2"Sh%Mg*9.&ys"Z0S7d#FAQ-2B@JK3%ri@rFX*c4"K8a=3v7-9KxK;wa6%0v T0Wo*TU$G5-.nB"o.)Pu%kt,ctz%Gq"we:yQ8*do?2s/=8ph&sw>I.0(mRJb+4.T:BF1x T0Xrv8:EV."aU"AK:Lh4G;fH9,qW8dd#vFdtj#68T,L93%lJf_A3n#iD;0UlI)Cy<5G8(2a T0Y4#H8<JiEO:xFYOm=EDb7&vED.%TUb$N.u(LD"1c_pfSKn(4U=PEo"eU5a-I1@0WQ>FOw T0ZYT$uk;BAn-2bN$d/Z#so)SZP"D74-nI(OH#gz*7i"H/(Xsb%6d&EGUQ#Bb)Iqa%0YU T0ad"Ik<Cd6m@4xa%in$uK=Tcc#Yn#nO(P.5/"TN)BH<yAg"vE(NA"Ea%qQ;nx4"6iK"az T0bl#un&5Q$0Za&ic$uVi%hD/=qdvnd,LTR%Fk&QTQ#20&7U0$ms#fP7+oNu'A7:gvB%Vq T0cv%9VjM;mrdsc>YuU-02q#Ie%LX@5.n_0WF*7FAd-CePw'VW#X119-qU(xTP#oj-3LS T0dD"1k$IKF$WB"aT$b6#NS+7mK(M7e"ZQr=DL.(PalGDB_z2DP,1.T$6/FNK#EA-7w@BEW T0et&g7>1QV%iR(hyF*2Z%LH$RJ;xuui#JB?3OB#kY$IS.)6Pl%kl?ghAL>jaw#bTa%ot T0fjs,EEq=CNaSa=wD52"1n&i8(XWWlf-8e(BY(SZ#xI+AyVB)EX%qR(Ey)i.>TIY$Ai,F T0glKx(pE<dbqW#W1>T.6K'lm&wU"vA(S4"sT"hz#n9QIr"K7(SX"Ju"nC:XUX)v0#.l&J8 T0hw&7hI(lC%7EK"Ku%qD7$N1&wR_/E/f'jo"ln)SkmS#IA(XH0&Lv2$au)MM&pS%c9=2oW T0iA"aQ*jmxU4%Ko)I9u?Lbg'/J&1y-CZ@oXQK,EAq)L5"KoU+RTg=ZfxT.'6PG>ga2&X/ T0jA$9p%iF#A.I#Uv>qIk*pDB:AUq<U4T.%WP,PG9&9J)FF%f/X7$v7"bq&qG"cF?5o3%Gw T0kX*Kj_RnW=CI6#2z(UEh"d7u"Uh#fs*MW"Jb$OW+f6r-M.(wm-Aa)2j0A-yD./w,e02 T0la1j"/qhP6I@N8Y+dK/L=QZS,B.9s(JX/V%SV+SX89:fRh/#AJZ"krZ9(2Zm?2EbbWb T0mR?1A4>kZCId3%A8,2a9;uYg"QPj5(9TZ5%zY"TJ-lj*wf?29b(IF%CJ+.kMl+va5sH T0nl8)r6#P.#wT$fI%oY_A6v'Mw6$6C*14t"qT?3Jf&J61?5/E(Aj+z0/Ev#C5$xx-.W)3u T0on%f5:e.q#Ly-G.u(aa-lz49mi=gQ1$8w#Ki"UD+zk6"1k&dXP&rk"56&KC)jU:RcL)8m T0p4twi#nk$8E+b7oA+5fZ=Ct4;K/B3OsSk/"1Rk%43v"TO,OJ/$KOp&Yz"no&5YD=IAP T0qpJ%cU$eWBd-gP(DX*0J7:4RGu&NQ#FfB&K.D(A2)YlBK+mYcE,NZ2"gL$cr'30*BVA T0rL(Yq;iv4$sv+hDO@1SU(qn<g40v>3lL#3Z>EtT8#iT'7tN&1Z&qy(TB#1WC"Nf3(BK T0sQ9?IV5P3k3a+fSEf(rD'uS*UC%UL/)/I-Mg_HK.T*jX'Yk?hKM7N@i722g#Ai#LsX8 T0tX/*FC#FOt(.N&Fqi)BP$eBU%si&Oj>CHC=cSd:c0tb:js6(oe&6/CL"qKPj>24X#yW T0uZn"/jZ#jc&KM=4Rdb"AL#M5*lo&Wca%J."uZ6@z/n$e79$Nka%4c+yjS'Zbm$5p?c6q T0va&tb(oY"Q7*Cz"nr*wk(Ok'Jl#uF&5j;rZO'JX"mah&to"0j(.q=kIE;ffr"WY%Ng@wp4 T0w2P-Ca-b/)pk+i6M*Ui)H0&x4&oa-eL(2Z.<H2Q:l.bS"XrN*F8l'Jd(9m$oPV$JpJ,k T0xdY5%Gi$mx'1F#2N$B2+C9M#WS%JZ&or:beTq"Ts(k07%sG&w5tk?dEBDJ(nO#VN>Qq6 T0ysCC+464$vh#bb(ugx(.rW-ZR)Ve-LD-hy-sY*I7)Sq;6hC#lG$0U)hS(7B?5GE%/z$7D T0zu$aT%6C"zu:DJX*uJ#/c;xWH+8YA#5l>nZL"be*7Yq'a9sz%KV#BI;q50'C8&cC%2C T1.d"V4$92+YqS>8eb$aB+3cTg,gwJ#ZVI+tC2&55"0J,LfD7,j4F#8U#tp(lVF'rk(/K T1/v+IZc+IT.7#bP'04Iy#Iw,Ffe+5QT#qe%if&Xo#nT)wXu,HTjB"ASim1>BdM"qO%Ns T101)Mx0J@w9G-kql$MfgN'9H$5o&BS*W7#jI%Uy"RO'3z"esT"1x<cSO&dHNd:sBBc*3Q T11p.'EA(bm'Q/"JM$Hx%tW'eH6;/yW8%40<dA2+E8h*r3&E/)/1"yWREB*2v&l2+wNA"0q T12x)uM/l(3h'.x(/4g).6'p3*UG(tl(cbk#82j'oF=dAu&Mg'Jc$5Pz=iyK'jp:6fY@IEU T13q#Wxim*f1#kC$KIK&pX+9YQ%Dtf6KPZ2&wi+F40&fh*iU#MzQ%XuO#Hx>.UelN4"iH T14/'8D&lg%r9+Fe8(3/$qwU&cY?Pl6i<JIn(4LC$Er#G/"zE"pC'Kr&ME&k9W)Mt@dTo T15c"cc-6.*MM3-kQ4:aOfZPj/"FOC#lK=lnb#m0;gSu"RH'fE"np$4x)5m;evqU#99'Zv T16g:0oSl3"6a_kIr)DM'vhv0$0M"kw-y8Y%3Q.e4:r0U;S3Z%8s-Wq(2i<yc2'et&ljX T17rN@Dwq*d2%8M>VB0"/ps7%Wk#/ZA)lS'fy>zupK%ZN$ojiN3>hqwK,L0M<qns)p4"B7 T18y$XB)Aw"/gF"fE+K/L%SP"SA"jQ(t1(Pz<Kly$ok;ve7rx(3KC_RoJd(Av%30"/J+D T19bji)MB"np&wH,LcT2/,rM8)YO(wy"M2@JHGz;/Wz<pQK$kO@xYT%Zf&wW#M7U%P9%Nk T1AO$/b(cH$7/5_Sjp%En(qb"AU*p/+hxB+.3X"Xq:TKT;tY9j$B4t$Ia_rJc&wP%2K4%4I T1BaAf%ZP49"d/sAjBy$.eL"pi#Fu*dB>yLP$c9m*Pw-KQ.%1u(Sg#v1+e9iW"oR"Bu"M6 T1CB2*TB,kLw,wiR2&OA/(aEH?dLI#Pwp+00998H:EjL#Z.&kU&u7w+42b(Ku;X5wf87#yM T1DpO>v5wx>H0L&T9"K/:usan(U6$No"c3>W6ze"PsY<BGV(mI#7.qc&EKkvG+iNG%H7"oG T1EEj/#0MH,OXt5@B29'Eq)N.,w.Y=ynP#Sg>70mw+zEA$zlfh(Nxr)gI9+2R5=mB3&0R T1Fm"7Ra$SCt&zx&.5"Nyh+Stn<CuPe+X5fjK1jKzh@Ji/>ypw,Kfj'Kd%Ive+yhS%.T-I T1Gmk(Jqkl>udk%l6O#A2tw+ytPG,jRwH#6w"uY,wWh>.4Zd+Tt5/'/Z=71Tx+B11#W8&K4 T1H4OM>zOw#E.<jO/W)svZ)xBbLUKpp$7a%PYU;c92*mJA:xMrkFv=pts"Cd+xLU(3S;.2R T1I0"wKq+5.ja)97*eEF'Di%BmB$/e)spE(hsa=fOZG(md-V6a=jL1&Sg*eo;cbb"OXhO T1Jj&7d$t8;K9t&0s:393k(avD%8n$MSa,OJm%aX6"sBh6-cRI;eOt,1LQ1mk(sCE+a97 T1K7"rk6+4Ju,CEQ"2V)Wt(/d,uVV-HxfkJ5m9Ji:B3LjK,C.41:Y4LZ"mlJ"GF%4bL+p T1LRXf#PG+/ME$BO)Wz'V8=Uh0&yn-8AY.:Jsr"ruo"0IG(Ry(QK+CEF%W2(B7$NT>8D/ T1M.+x.T'47-pLc@.98@WrQ7<x1oO-7.R(eO:0DI"VJ+c96ia"io&vG;KL4l-LI-ey9$bO T1Nc#6f16$l6a#o90(4dD"Uk2Z%s2dY4-6M4=h7LTJ4%jV+hA0iP.4)V7i%v4'Oy$7W"GY T1Oh%Dg2%tt<C2u#BOYL)WB,Vn6m"I.s"Gi."1s76E&EK-PplXuK).d%X9&0X:Tkh9Q$dM T1P5s/106.7l<X15JjKeT6i+H/K@c5X&IS=CF2&YB6(SIH'.EVXC$T.<YHoK%YX,IiQ(m0 T1Qp<RKG'Ya'z2c'Do-/8*qH%ScJP"eY'wS=wl.m=YX96)Zy/zN4*rx/-rs6)ro/_Q9Y,v T1Rh2A#P9P"tI)Xl'yXiq/0-iv/+f/2<ZQS:n/P&iZ(7vv,IovyW"Ef#PX8=2rfN+uVwC T1Sh#3w#Q5U"4D/.&xi#xU%Ig(ZE'ZRt%Zx#UST"IN+7wS-VA5(K6x-WKi+ENis&MK#wR T1T9&sn<RPVo'Ou%vxIw&VyC,/pNr+XTt/hZl=VCkoc"ieEt0Jn:Vrct#1G>nc6;YBQ#hi T1UF%JH>4Vg"E.(RE)On;FRc*qd=8aoJ)9G"8k%3BX*Yx*6G9"a8)34@xH7'hOqDet'n/ T1VvZ*GRI#ER2+bZD_W3A@RRA-nW7LG&Qud&Qu"4u"Xz$Q7$vBtC"uf:yMn+h2Q#gJ(5G T1W78"A6*eX=S2x;zWa'ce%FP%XaK$vW&uK;/3w-jSh,os.$I0$A7%bn"gg&G1;XHV&AJ T1XlD+6PG&vwv,J/2&0N;rCNU&MQ#fWc68'O0"emw)HX&3J>JmJ"vl&qFK&EK)Yg@gET#Nq T1YQQP<68Xm(cWfqy;gps%/Z%MZW)J/<Y2F;xLa&b1Z"ja$vHI8%13*Y6K+ig2_Wc4_Wbs T1Zr+lZu"hk&9f_UtE+z5sf?Ns2*GF-E4l_GAXZ?Qlr%JTXW#tS%rA&kYwo$CF=WAM#5J T1aO(LG&wR)aQK"zC#OK*X8*UFK@DryUKr.E=KL5(qS-WLXD#Cc"hS:Wia%dX)P7)mlc"Cs T1bEm4<08X#iLf$6Q0>9hM_/SSu,RIR&oD$La"aG,g2a#YH_THW-.1V"VKy=tQAL&.k%1z T1cL,JsA"u7t'Nf-3C)Nnq#hnq;a/w#QW_Ct.$vk<XS3$ZfHLK"9U=5f/P(xj>SOxq#On T1dyJ:STe%kw2-7kCFL_16mO7&PN97#eDO$Cy"aN:.He+abx)2p)FQ#0x9?KPX@d4c7_3h0 T1ewf%PD*3B1P&JK(XQ$gC%9h0S:rl2c&M4&cz'tFE:wSl-wqj*o/:4A7"AS#r5+p97y(c1 T1fjf(xx-wkl$U2&hi@lk8;rEP%xi'nG"2m#YB_ow5:phk#7A>oL1=oLa%JmpZ%Zj$uY(aC T1gR:idn&Xc'tm"zQ(HiH&y.&L0#TJ*/l&Jxk&.O(3d$u2%hp$jgu"96%Ga%wO=MxF&p. T1hh#BQef,72i;jEY)Gr".K<xaZt$FG"e.$TF%Fzx#3c'ib#T9$JO%fk-.t)kIP-vlQ*eQ T1i80%1jN?e3w)eJ(3e#zN#.D)Mx:jA4*NM&x2+uj80/$hE%1r:e7L@wZgN$x.,g4JR1$9m T1j0_tOs)9P"h15s4v)Ea&9EtP?xFN_3Pxc"IFlw"s8h'RmS-kP*Fd"/S;4Pk+Zeh$im&jG T1kM&HW(aw,8EV%1uD+RX5n#BaQz0J$Fw%VL(Xj#JJ#8m,mbm&kkN&89#tg'A5&hi_Q51 T1lA=lWY61*NG2+Lwn)TEI'.B"GD%U.-ka*Cp9,BP6"A3#CP'.g'wH-lk(wf,JGA#ib2'9P T1mN*Ud+7BQ$nkM*kZX$NO#.01#gtu*eU#k9"cj,nZU:gQfk,Ow2y=4cZ&I0-I3F;G86)0B T1n52#XE#uR;S7sR=K59l@v5da+/kL'nfrY%Mb+V6d_K6L'vAd(KLms/+wYURA'3J&M1b T1oDN,3b3/?3d5*05uY*Kg6jP-8iw;xui*t6"ka#qX:VoS=LaTooKwSq=RLA'nL:zaH?e0D T1pu"452$ds:DQR?Hwa+ASc:e44v"jw,mIc"UI3"bS&782%dD"6Yy9(/nj4#Qi(me>XyQ T1qhEc,Enc5<oXK$zo#qsH+BrJ%qA"2WNEe#/4-D23hCN?HC8>eqjfS%U/xO"Wo_Wwy(6W T1rI%yOL(Ek;8H8$1P"w8*P9&pi)7i(gjg;187V>Yxkwx,dxP"vioM*ARz"H5%jY_urp#nK T1sS-kBHj)Bx#jK&N0'Sw$m.3B+P4R,U3p'lwf#gdYh%xSD)1zH'1df$ta%HM<vw.(d1Q T1tB-o2u,zXr@RalnmR*CV%rr"RQ(nd%dCauBH#GR?PEf&eX=B8D%Xc,BAp3:Ivd.36+2 T1ue0B>z1/"Z2G#dc#uD*p1*Sd&ky(Dt%FV$t/tF&af#HE"M6)Ho#tq"/tsj(Ni+MHk0*sj T1vg39+7N.(qQ"t.XC-aUc.+P3U.4,hpc>coT#Xq@LmE2%dap$E/#A5"cN*Y3+3loq8*Vc T1wt#MGr"MT"uv+5nE>Hp.#us&EF"XM#LF"Mt?XRUK<KQ6-JrE%i/#Yz%Ha%ksO&Zy#gS T1xiWo"puO%uA.P83?CmI&O72iL'h7%pj%ZE*Ia$uLK-I4I(TB"2P+Byg&bU'cA,3Lctj T1yi/(Sr-cgL*Qd'v1"9Q$Nz-UPF$Ra"Itw2)ud%zC)Un$HU(3n,lxj/)of$H/'aL;rmI T1zT"7V>qCj3+Nm4;f7f-wI2*/mI%YH)Uc,vOm#sc$hjk-yGQ%6M5*dC*/w'aP)fp"1I+b T2.XCh)sL%Wy-o7b(C2-MURH$kJEV+07HYk"prZ(Ni:eMe&ng#F6%tShWQ"ry"Xm*wZ#5c T2/4+UkWjk'ik&dysY(KV$bT'Ijr'yrO+c7c&Kf'5N(A/'IC(Fit-0t)Cm)fl&1q$Hf&YX T20J*Thd%rT-Io*G8*Ds:qNf8&cY"48$g2K%.1#i5#Aj%Ln#7R%v1:CQa&cvY3>r0Q"RY T21m:Y4T#kE3&51$h/V(jie-WuSI7)aZ%VhTF:XyH@4/NC*6L?ZPa:N.hM#X/:7xL%29*06 T22b)Mtu>Ocn'KK?330)TX<//8&IP#nOt'sY%ro$VbA<GPY<vpY<SoY@Ln9nA$0d5&qw"bi T23T(js-7nk$Al-sJ*8c/7@okDeUnQ#PI&Tv#31+P.YB=C8RRjp*Vv&tU:2td@fg/,BJV T24BW&ihHH)VH(sX=Zp8%.1#w.=G9L=dJMpS>VUhP(AQ(V/(5U*OL<9li%vQ-ag)OR+Ox T25.m)RVaj5-BsiFC(qMj+jswV,R1V=fQ5(m9'GduR'vT$IjF+ZZS'KV+aPm%L1d)fk-6 T26vyw"pH*YUe8R;21wf'K9;Upz+HunNUrp2.@8VgZ5$PL"IT'hdX&.6"ko5'9u(wo'M/ T271$TY=.Nm"kZt"49&.5+HnK&w8#tV)JT)dAf5E>Gpw)wE$zx%fuS&Vn*iR1#ua*zi#kh T28wSq-DMX'AZ"2k&.V$TZ<ZTp#k/8&kR+o8rO&Dz(xxLN'.Fw&Xbqa2I(N9.*0E/$Ty/ T29j+vpD-WT)ZQ'xr(CMH"To5?F0r'8u#CF$prV&CrV'gx$Sq2$2Rv-9p/>Bk.Ba-vrP*gZ T2Az*Ru'7l(ueu2*Df#ElXD:sNVG#36#k/S&Cx*l9=e9e,w/bp/;w.2%ZE-jv_o2gz(ZZ T2Ba3WR)12YQ%2GH0IB-PX05Xv6z)NX+gb5'JH'a9&HI"iQO(tW"oZ).m(pH#Qw;/2y1t T2Cqma&nv*7I4.*tgA)te$Dz#lG#Mx9&Bd%3Zi;hKOlEm%CDaCw%yL)KZ4"T0)QG2Y*jv T2Dk:LHrd3)Rn3,OJ3=KZj&W8=8MqI#kNc3Y9#ew/+up/;wNm>1tZf8'Lz#NW:6VA(V.'8H T2EA,X.s(fo)Th*Zw)om/%WE<g1Z)HX.s%ho7g=3AZ4z%hR+Gh0)HX.s%ho$Yz4UN)Ro'0L T2FQR)12YQ%2GH0IB-PX82Xv6z,DHK&zR5@2J4)qUK-31dvc28$gKU01*Yl"lL(O4%1o)Th T2G0*Zw&/2"Sl-m3Y9#ew/+sp/;wNm%1D&zC%nT?Vq9#AjrR#lRK$pQ'iX_kzN@Pw9Q"Jk T2H0C9#72"Sl-m3Y9#ew/+lp/;wNm,1DQ#uD*Qk/#gK&1sz+FSe&8Kv_o2gz(ZZ3WR)12 T2I3YQ%2GH0+DD2x+96z'G7'aR#Qy*YNR@5WxX3#oR3(nC).J,n4nN$zM'gv*Cu-z3j&2. T2JG(.RH9W$PK,441$CN)e/'C.+/XY/$Py/,GN5)Mg)vX"3e#JG/+bYV(8FD:sNVG#36#k/ T2K4S,F76G,Nc3Y9#ew/rp/*0N>XJH(pC;u83)Ibb$qp(WB'u.,h7I$zI4J,2YQ%2GH0I T2LbB-PX82Xj%3To?v1qY0&CRb#JR(3y=44C$9KU0M:qIk,Nc3Y9#ew/ep/*0N,XeP'h4 T2Muq%b7X>mVab1?8b.,h7G"BL#si%3KT3O'GI4J,2YQ%2GH0IB-PXP5Xv6z$FE".Y7G1 T2NK,G2J+Hky"cFy.&kU3$0wB$l1,2YQ%2GH0IB@PXV2Xv6z-pfeF8V>kD6(w9-KU0M:qIk T2Oh,Nc38+DaCw;wNm)Kq$Xnu)V3#bm:ikzB"P6%OP$Qd%Nzz;V2N*KQ*pn*Uz>O0i'Gd T2Ptz$bz&Q6J"RC"WH1*1T$BY"rFC'kWq.Y#Cr*CRz%hR+GH0;ixG?eA9nJV6%/2+sN4n T2Q6./ZhnT)yu$Ww4'kWq<XGX*Ne>/QK-0sY%kmY2v,0LT'JH(rl'bLh>oJfq#Tv4V,52 T2RgkJ+Hky"cg$UP#ar&yk-Wqz-3q3*Zs"JkC9"kx"TH#XS&mU'kWqY$W0?OGY6%4P)i8 T2SZ&Nk-Wq..&3u"lv:ikz:Y06%T3V$Y6+9f8'Lz#NW:6VA)V3#V1Mw"zUn+S15z+V2g8 T2TY?MpM>uEM)lg?JWP"MC'23'uu$MC<gx7=hP5%aW;oUz%uC#yA?9xDf'w7=hP5&On$Pk T2UWX)7I$WYxP*0j=wyA)BI$iA&Nb_MEI%Xe#JG/,GYV%6j-HH)o1s05#4W#2O$gHH*oq T2Vt%BV-qfj,wdMEk06_Vzc(iK-9K-31A&7R;AnoJ'57=hP5&aM"o6$Qtc'7x*9P"RY-z T2WY4UN(REpP>5eSep%kK'hW%7z)YA)ig)HX.s(fo$I9K,w9x=a5R&Ib;yfA"PO-YEcd@Dzm T2Xg"vK$oO)HX.s%hoyz,ntZ#ehP#5a%MoY&ML(q3#xO*C9=lXx#/pnY&.k)zY&Fx:7zL T2YC$b0K-b6xZ2jC0(4o,1bE/N-vE(Sn@06k&DD%ax"2m#Ta%MoY$W0&O.-jxn:v6u#WZ T2Z1"AN#4j;oYM%LSQa?nQ9"1K(PE%nx#gvtU:7SF&n1p*Mj)v6&ND"pX$mYyI$rj%Nk*KO T2a4@e04%W2%wp;Y2b*3z)nS6B5+4U2>wjV%3bD6"uW%ZA"N4%jo)z/(Sa_vtl'tK*ykw T2bN"Gs#WZ+k/V)w5-xAo,hJ1#Hq#A3;bCr&n1+gGM#GC#TK*Aq*Ed@HFR$Qa2#2Rk&ST T2cX#sk#vo&cX&9/%RH:5D5P%2t'Uz'lv'd8E&ap(sv&lu5<lrO+OSI"Qn)it<pWT$IC1 T2dcG&lY+xtC)x1#FB%Ts%kj#0BO#GS&WNq#WJ%JY'SF%S.-ay(N1_qdw&gJW_QeQ(Q5"u8 T2ekZ"u2$ur)yDq$ju)NX(mH&xl%u9"Zy?eoO$rH4H.+RpXSI'f3#mz%Jk&3K$0wB,hC3 T2fpR)4w$2S#Hx&lu"9Z#ye#S8-PXS(785$q7#4O%7Hky"cpu%TtH(P.?06L)JQ;TeQ"T5 T2gu"u8Z"ui$ur+GH0*Y/<vqs'gZ%KC%2fd'Tl</Rk%Xm5=Jd7lci#uM-d4-C1GW#.m$2S T2hS#Hx&lu"9Z"y1o:/3R"1s"SuW#.m%AL0)kr:YnC:0Lkh;ROn)eK0$2S#Hx&lu"9Z#ye T2i/#S8G(PQ$5R-z3j=2MqI"kl"vtH(Ps?o6L)JQ;TeQ"T5+u1va'd8E'.fc3#PX;mwq)9D T2jP@wDr-CM*ClR)kX;m5Jd+7l9i#uM-d4-C1GW#.m$2S#Hx&lu"9Z"y1o:/3R"1s"SuW T2kl#.m%AL0)kr:YnC:0Lkh;ROn)eK0$2S#Hx&lu"9Z#ye#S8G(PQ$5R-z3j=2MqI"kl;vDQ T2luN$2S#Hx&lu#WN-LsC/"vP2,Jo/"2RR,OXS't8(P8*tV$q/$bC;MzP+HkUeTh(6G#cR T2m/-V8B"gfPU"2R,UsJ5$q7#4O%7Hky"cpu,TIB(P.=06z'rD,3QU"2A6%3mr,2M8+E. T2np6<wvK*3t:JU7S$bt,AIB)PIM"p0@wBwv*K3(tJF-od(iy)Np'lD,zQU"2A6$mv*wS T2op?krO+OSI"Qn)it<pWT<I75<ZnT*nd2_NEM-Ly*Wr%eS%lB$ue'34(KQ=WQB$MD"pm T2pS@CMqI$kk<CE1#/W&Fw$0D+/B9SI'f3#mz%Jk&3KK'D3W;.D.*PD*On?S.Q</3S'IV T2quM/Jm+e..&38(0/(9FSI'f3#mz%Jk&3K&4i4+X0/#YA/'MQ-dms9g:98rp)3g'j9-V T2rqM/Jm$ej,Jc3.SI'f3#mz%Jk&3KK'D3W)Tg$2S#Hx&lu"9Z#yeo:/3k%lB$ue"Fg"yT T2su'6hz$bz%Xq_FVD(3u,wS.N&NM*QN"Rs-ek76$M2/%bq6;0CE$2S#Hx&lu"9Z#ye;dim T2t3,i4.Y/+Gx0'MQ(NR$sek76#Ml=rzFSI'f3#mz%Jk&3KK'D3W#.m$2S#Hx&lu"9Z$y9 T2uXj:/3k%lB$ue"Fg:yRFSI'f3#mz%Jk-T6K;LPp$QI)VgrW#.m%AL0%..(zz(p3I'f3 T2v7#mz%Jk=rAJ;u44(0N'MQ*dj&cm$2S#Hx&lu"9Z#yeo#/W%kyR&G23j&2.)Pwl(p4&zt T2wfq#ml3PP3RN3(VW"R.XSI'f3$mq>me.'kC;RROXS&tZ'wP*Ts"1A(Ten3"XD'ck%rY T2xkB"p3#KY&vc"CZ>PUz)4T"Zb-Rt-Qe)/V'pr$73'kz&YF%x7z$L9)sX_/RO,.S7%4u T2yr)zY&Fx:7zmZ*sw+24Um3>h8y:DCE"nl#VRk%SZ@DkX06<X89p"Pd8&bO$sx?Ows$Gq T2z2+S5JC5,2xA-HK3+2C4JC4=4sxU:7Sb(bo$OJ?.iyA$2S;HAJ(YXn#yY3#/o#pU)uf T3.8>kNaq"jm&vX"tI%Vl:/sLH%pQ*IV*aNp@TO1$AT$eI*TL#w2YQ'2y"J/'MQ(dhXW&V6 T3/K#/8(0/B9SI'f3#mz%Jk&3KK'D3W;.D.*PD*On?S.Q</3S'IVM/Jm+e..&38(0/(9F T30.SI'f3#mz%Jk&3KA.6&4i4+X0/#YnO_Y6Y7glc_E/M*QN"Rs-ek06#Ml%rGH0$2S#Hx T31X&lu"9Z#yeo#/W%ky(9FSI'f3#mz%Jk&3KK;LPp$QI)VgrW&t2)56$RO?O0jM6,T65 T32c&O4V=luAi16J.#h3?MrBW%L7&qg&ry#Q2h)mX$qFV;LPK*7ek06$M.#/8)xw+Gh0'MQ T33w(NR$sek76$M2/%bl*5q,Mc2m&4q#/ZIt-I2NO_Y6Y+0v/+3Y/'MQ(NR$sek76$M2&Yg T34K+g0S>A6J#.m$2S#Hx&lu"9Z"y1+S5JC5&2p)CqO=DW.%m2(SH&xl%u9"Zy=eo/&Wk T35v:yRFSI'f3#mz%Jk-T6K;LPp$QI)VgrW#.m$2S#Hx&lu"9Z$y9j:/3k%lB$ue"Fg;yRG T36v,23p*DO)fn'Xm#Hx&lu"9Z#yeD3+2NQ+W.i_tdm)jc%m2(SH&xl%u9"Zy=eo/&Wk;yRG T37j,23j&2.)Pwl(p4&ztq#ml3PP3RN3(VW"R.XSI'f3$mq>me.'kC;RROXS&tZ'wP*Ts T388"1A(Ten3"XD'cj<c4x'HqGN'B4oWz,m/bN/.-I9(Zj2$6s*r/#YKbN/.-I9)ZQp#7J T39H=L67W*nV%yK+m99=ZKAb'KC5WfJPb)Z5)XHKgN4n./ZH"6TO/1p)oy'nY&Sm#bX&9/ T3AH*2j#MXS'Hz"BM*CAZ9-8z(CRk$2x(.2;RRO=.S6"mk)dh"xw'jx)zl<ZyN;ZeH'qI T3B.u-PQXSt%7tz?S0C4/+r8H"2E%w."gW%x7z(RC/)TH$Zd%8X%tR=unC/n-Kr2&Za'aF T3CCw"Rc)e0"RZ$hmSLXCC%Lg"5uD"s.W"Z47$NOt*jWLFYI(R/+z.P6#fW&18)hQ6<7Wn T3Dh)Vy+F./+W7V(ua'3Q%1z;QcO"BB+50r/FYI<mNXnN"zGH0(Qp&AD"pX#mz%Jr.M6+7 T3EGWF*WHi9/&Jn4nN$zT'TU(7hM'.t-wfJPbh-HH-XKgP/+cP/+cP/+cP/:cvzz;V2N$gC T3F1"63A'cl,QSZ3Bj4TZl+YXSe$v5%Fu(tM7iAZ3+Ev/*KT3uK3FP3$M./(Lj:3Vn&Nr T3Gz$8s,XSf%ni-tUm3uK3FP3(Lm-tUm3uK3FZl,jN/(Lj:3Vn&NrkSe2/&q5(tM7iAZ3 T3Hg"OH4<FZC"63A'cl)Ff$us*KT3uK3FZl,jN/*L3S-7kSef-zsN#Xt#Run:C/ST61'rD T3Io%3H"ZX#Dc#JV"oZ_DkN-sG(Wxb%qtIV>52ELc"rM;GVab1'V87BQXw"cg$UY(cY@PgV T3Jsb&NAL$sh+zEA%XX'ZO"rd/"Af:cLp&i8I&eS(RPhQ"dzAI$wiL*rN#XS&mUE'.Z#Jq T3Ki>u56$uq+4MI&jl*ay)Kb_MEI'rl+gGEe=USv&7.+TASep5"ip)Np)dkz"mvF*WH$yq T3Lb)7YOF'11P*L2#rc'rA*aQPbh-HH@XKWok%z53+Ij3".B#7ym/"5Ck"rk/#tb"6ul&7d T3M4,4/z+V2g0WfJPbh-HH@XKWT4#ew/>0an-QLw=/J.X7:JICV?cAOz+V2g0W/E&RJ=Z0D T3NE)XXocp(yF+oogx$Yz4&Fz3%jo$yz)rUs#V4y+OWo>bxQ*FP:44R(Wxb"gU)YFJ+Hk T3OUy"cgaxpG"0X>fxF,vto,bxE95g0Wp-8/og*KL=SWx>nW0%wL&WMkL_y/J%nz?QrY-7 T3Pvh26+7WF*WHi9/+b0s+K84/1V+Djkkv;z7d/jZ0z;V2N?MkV)tA"FzyIE)lq1-lob2 T3Qb'vY)so@7Wb$5l=Kgl?YqHh1*I7<8Mq"92=OG0r+.M6+7WF*WHi9/+b0s+KJ3;bMn)At T3RU_p70D/1V1-n/jZ0z+V2g0W'pd>kCL"g5"5CV@Yr.+iab+8McoKgP/dN$zq(FW*OkX T3S0(Pk&3EsW%W72"Be%/x"W5E%nz,h12'tT)Dy'nY%Spy-s9*ZWc"Qv_N/J;H//"ANF)Tg T3Ta"uL5F-r4U'C/-Rf(/B<.x6@zGB:dSY(ytO*9vs0h)PVSV)Qv#.nh>jxR%fS'xf)dk T3Up".iabE$Nj@WL7J2+7J2SP/+uN/+7P5+FP/+uN/&Jn#zr'5q,hC3R?YK6$sq,hC3R-A T3Vq/(L1,yRN3+IP3+wDi+Im3+DjK,VP3Rp(tMjKuX4+Lj3;EvC,hZ4+E.4*KT3<FZC1:vyP T3Wl-M4V,ab1+vyW-KrkZ5<ovJ+0.S$bRt"BeS&lw#M6y=AHC#16%pi=azA%JF)jN(Sow T3XG>zqW:72B#e/#xH'Vr%Pz&d3$Zv(pLgm,0e./#yDLA-hMg0W*epfeF8Gu&TW:72B#e/ T3Y6+xXSq%8zELo-1k/Z+h0C%Lg"55#CO*rl'pG=w/T$PV'r0%W72"Be%/x-KE)R8$zz%ZP T3ZX-if-lbE/N-vE(Sn-0UV%F4%jo#bw$oxAo&X9'/2%ao#C1q"iR"vY'aa%KoTc*fp>DlF T3aqP*aY=3yHx3-/UV%F4%jo"6Q_tc7)xW:72B#e/#xA)7N*Vs#Bf,BZE)Arr,vUeTIsI T3biQq(Yj-h9d"c6"rBy#Kh)W7+Gxy%9G$Kh#n3Lq/"yz'Jb*KH,X.s(fo#Zc:PzGD%W7 T3cm2"Be%/x(Kz'NV'TU)aA"yW"5C$E/)RU,AxG&cbG*7R,t5G+.73a7"K97$FO/"G6d+i T3dMLLV973a7"K97$FO/w-4LlAL3a7"K/6pp5,EVL&yn)YC#6z&pgz#F4#gB?x1C@ORC4 T3eW$5v&rU:sP5"CE*/Rf(/B<.x6)q6=jtH-595#K.&kn(NE,rt5hI$FB%Lbi;9/z;K5w T3fh7$8D&L5(qe,VYH6;kXTbx#Ha5+R.Z/#/B(KJ$l5"s.W:/bin*Y6,Zq5O-mn-595f<V/2 T3gf,v4OS+A7rW%W72"Be%/x&wM,Rg5'NK$QB%Lb(nq5,w8S)iU%A.+iab&pVW,2/gP/)l8 T3hn#zF%1X<071f<V/2"Cc%y9*97"TZb7$Nrg#zmU2'NK#Wtn"v.+iab&pVW+hKgP/:uNz T3i5-595f<V/2"Cc'1Y%AD?2EQ'Vi'i4Jf<V/2"Cc_d5w%W72"Be%/x,7do"/z(7p<yfK T3jW=4yOW=keTi9/+7P7&N.y(/Q"Z07@1fV/(2H#kh#yA'DL#k7(zF'r2&wW:72B#e/"xg T3kr)JN(KW&tr+Rsm_DG3+RVOD)Wf#1/r*70?AHJ$S7uq7=lBd%7Z(Yi_AJa$Hj:6BdF"x1 T3lO<IB.m9T%4Fh#9N-U/A72O7"f/g,/vb'CByL1L/A72O7"f/g=/pH79LBO-7UV%F4%jo T3m."6Q_tc7)xn(NEw-AKrCp*dL)K5_HkQ*0.A&fk'nN#Ert5hI$FB%Lbi;9/z;K5w7$8D T3n0&L5(qe,VYH6;kXTbx#Ha5+R.Z/#/B(KJ$l5$Ij=4yOW=keT+F./+7vn&N.U%Qa/"/c T3on2+.Y7*QBw*Ua&AW:72B#e/"xWzeN$z7"pyfGC-595f<V/2"Cc'1yxkJ4,hj3jX&yG T3p4J4,hj3+WviTP3,GJ4,hj3+EC4+EJ3%B.l=aa6qh&f1*zIGq)7wJ$gdQ'zl%P4(S9m T3qT%7zO)185'dA#cX.%3309,GYU)1U6%bl6@7HS%DC#c1,OHA"mv".iab&pVW+hKgP/:uNz T3rCE<sL7"TZb7$Nrg#zCFK'NK#Wtn"v.+iab&pVW+hKgP/4"/z?k1s"9a/"/c2+.Y7'jZ T3sL$k7>2hjx'Ro'b3p%AZb7$Nrg#z0%Ez(7p"yZ>Y0f>XL.-blg#Un(IC&BK&zI)mR%Oy T3tp"W5"CR>Ux7/*7n7fm)q6f2#K6)YS%mb-WR5(YJ#Nr<CS4"SZb7$Nrc/h87&G2/m+W T3ua7eZ)/V+T23#/A+Xtrm;W7S%2u@qDN"2a@RCQ<tWt=4yOW#BT-vEQ/+cP/:cvz@9vz T3vQ,N5/SP4)qa3R,YKSP4)qa3R,YKh87%GhKm<W7f-KrkZ5<ovJ+0.S$bRt"BeS*V5&wx T3w3?V2Z#eM+HS2-/SUF"kX-pFE7B%KTASep5"iR%UOX"oi;7xFY-RAm@ROm(NE&HV'Lw T3xv/B:bWI+RaI*DUj:03L;P3CY3%Pg"vix&GeA@9nPJ%Zk(ub"VM=Uc6%fH-5g0W/k*tg T3yMA(tG$r7%IW@YxP$Cj=wyA)BIxJ"eJ>G/GYV(8FD".iab#hV&t.8$AB,Ixm#NY,5ye T3zN?USz-e0F*WH%e4g#NY&Vt>ALw./ZkD'.P*Du%nlfZ)CQ)t4y:OWi+pxE"9z;78lxN T4.m$z2Ta#It5+Fvc5jT#Qu-z6Z-HH_fxW@Vti+pxEq5g0WBq(dI>mZu*yK9Z-HH)o1'EV T4/t&VE"wzZ)a2%nS+z.v"zhSU(cg9%Zu*Y7#Tw$8M@HFR"QB%I1"RBX)or06"uW%ZA"N4 T40C%jo"6Q_tc7*xqo%VBo@RCQ$ta@X0.+iab#hV+BoKgP/+cP/7%DQ$v5'V9P/+AR/4://7 T41SP5:Fvz,N5/SP4)qa3R-A/f,74U#PqH.;Ryb"Y5%1Tj*aL(lb5iL,yRN3+IP3$wH4,V T422P3Rp(tMjK$Kq)Yl"gW%x7z"Lb*0r*AWE'ML%Dp"Xm@Yyv?H0RU(IM+k5f0s<Kjt(eX T438>b6VrkZ5<ovJ+0.S$bRt"ip@aYW)0S-KfeF8(.fx90h)PVSGu&TW:72B#e/+xXSq%8z T44bELo-1k/Z+h0C%Lg"55#CO*rl'pG'wd%cn:.Mg-w9-ZL/yRL*fN(S1N-vE(Se)j1%Pm T459;bcL(QGWN-vE_SoT%W72"Be%/xw"cg"/z(Wxb"gU)YFJ+Hky"cgaxp>7P2$yN+gGE T46W"CE*/R&UAx'Aa%KoT-s11$HK"1R<BXo-bP(q9#2w"pY$JZw:GS5*goq(q9:2U3*xq T474o%VBo@RCQ$ta@X0.+iab#hV+BoKgP/+cP/'xrw$G6'V9P/+AR/4://7P7+FP/4"/z T48C.J4U#PqH.+Ri14U#PqH."RFZ(CiUSi;CUQ:a/v(SZ>PUz'q93SP4"MP4oG3ia*C/"QZ T49P<0Yn(kTqi<B5RU)Il=A/v;P2Jo/"2RR&OH&VX)M5fJPbh-HH@XKWokV)A/'caa1:By7 T4A282z;V2NX(jc#RF%0.W'bME'Ib/'6JM#GRR?AX7%IW@YxP$Cj=wyA)BIxJ"eJ>G/GY T4B2V"gK5#4W#2O$gHH_yWF-AM)un+lfZ(C3@ZwG,RtF*WHZ+h0F*WHPH*H0_6/4'td-d T4CF2h)PVSV)Qv'oW@aWH"OW#rA"Ok$og"/dr82&vr0-xAo,hJ1#Hq"Amnr)OL,VYH6;kXT T4Dnb'pjx*tw".iab&pVW+hKgP/dN#zd&XV/%TN&HHP-CA(Lt$B.Q$c5w"TZb7$Nrg$zz T4Et_A25"BY>xwB@9eTZ$Td#ar&yD(Lk%hh%T.+iab&pVW+hKgP/4"/z&F1"X0C(To-4W T4FdsC+Zb7$Nrg#z0%Ez(7p"yZ%aZb7$Nrg#zc,R4U%gz)zZ$Pi&L5".iab&pVW+hKgP/ T4GH4"/z.+V5J)Mk%W72"Be%/x"W5%bR)IN(KW'tM%k.+iab&pVW+hKgP/+cP/+cP3+7v T4HHn'NK*UV-V4H.+Ri1'9V-V4H."RFZ*C/"QZ7*On*ES#ZPU&zq-93SP4"MP4oG3Z:T/v T4I/;P2Jo/"2RR&O.=VWKWfJPbh-HH@XKWTV"Ok8:O1H+gN4n./)kA)aOS'z7c$PRk$Pt T4J7%Mo$gT"Qm%QI-BO2*V8q'ec&Ef%jz*Qm%BJ?h2.:v7J'.P$FaR*aF-diA3;I7kHj-q T4KpSNY"WH"3B<BkQ&PveY+l5Q%KC4$5v<NQ6qwc_Vtt&qBfk)Y3"Zos,wkQ"UQ?KqYR(qP T4LBcopB+tI1P6"IzDz;7TzR(ahM$PRx'sV@T8O#ZK;gL0#wj(xa@vtf(wP$yb/,GN5%Fu T4MBy?3OvrpyM'h/7#x1'8h5?GZC*GW2+jH3;I7kHj-qS7'BR$6N%FU%Yx*Ds$qf-lsY)xP T4Nd@Otu.Hi9/-nX7g0W*Ev'1s#lr*ZD#MF#HrP%.CD=llbN?1pM-xhvW+Dj3+CW3)x74 T4Ok1R"oC<K98+FDM:qIk$ld&yM+E69#FO+W5cD'BRy*CjoKA+Z4z%hR".W5I"QnUN)Ro T4PY%Vv$8T#sM'sJ$Wg+Iyy(M9iq"RBX#hU#WX+R8h&ewj(DP&e3$uP,t/V,ab1=8bb,V T4Q6l109%34(IYw31Z3i@Eiy+JAV#nN*mg"E8(Ts&Ms(JW?lPk9+QQR(iR:BXh#6t?llM T4R42*y/'td,wnY*ZSD%07$Z0&O7+Hky"cF@Lb7a_of.)K3;H/BL6Fji*G0r'.7-5g1&HQ T4Sq*dK%3H/%Fp#Jb>G/9YV%3S/>393Xv4(QB+LX72XJ%k8C,3XL3X0%Y209)0G/)Vy)oy T4To%wM"9B%Ew%Hs0#3t?llM115&3E+IsS-Ej(DP&e3$uP,t/V,ab1=8bb,Vl109&3EO. T4UKY#CBL6Fji-Gs/%6w*I1mb1N3i-Ei7+x6f>A/z-b/I'kX(Q/'Na=m6St/?90z.N5,G T4VXYU*aS+CXL3(Q/'Na=m6St/<Z0z.N5?GZC'zb/I-PlaYV%6w*I18HXv5-Q1c#XI-D6 T4WcB5=hJH:gYk#GV(8P&8l$q7#4F=Wbpu,TIB(P.?06L)UowFH<37S(ojaV-GaQ*rF*00 T4Xy%5f*QGQ(gen#B5"R0-XQ)Q2YQ'2y'D1+KT3+2v6*LU,owFH8f*Co+jaV(rcQ*rF*00 T4Yf%5f@Q527-SH-Dy(TW%Yf$1SM:qIk_kN2V.&kU3$0wB<wZC)3wL#1mQ+KER(Lj=RKE T4ZK@5JVT>esX(uUt6(u6$rN,owf'wZ#52YQ%2C'Aa,S9g-gLo$4Y$lwQz-7BQ'bMEA:0Jm T4awnr@Of6&R4@RCQ$ta@X0sN;VGRtV,ab1'V8#If9;eGX#XZ(Or<n6L)l4y+OWf#3/i9 T4bg/IO&Oo;WIJ%nz#I0$c12xJp6B+//z%DP*Vv)z198$bRtf$s9*ze0M:qIk$JP#n6(GM T4cq%N.#K9&zWSe(kU#hu$Z9(Bf-/H_Iyq&CX+EC/$MMykYOkm>Imy(Ek:S53.(Krp/90 T4dA)zza(HL'0W+mnr@Oy8$WA$HD*3s-Stya)lUy)NX8>w8Z%WJ:don&vX%Njxy>3aQ"gB T4eX+JSGB&Vwynp)rz_dOy)gl"Bu(eF59"Zw)Do-7WM:qIk"lvO"sR&gf"Ae&kr$HNJ&Xb T4f3y>RgL>itMm_mSfqy,9uEts/:3.l-IA6$K9I)X99,mB5+FZu"jV=BnBJIAY?FqQ-Dr T4gv)995J&c3k"2A-Yp_7y39?3Kh%Ng"BJS;W6J$Nx)qF$C/M:6U7;Ate=/H0"o2$ku:b./ T4hjQ_aXs>dgQ*gwD)gN;gL0%TzW"LOS=Ow8"WQ(CT;KWp$rP@1hv"LOS=Ow8#WYK"gB#J0 T4ig:.Wg"BJ"Zj)5S(TZ"b7#zc,B/Z'pK"gB#Jb$lw#n6d"2A;kjZK"gB2"6m:kOs$R8(K7 T4j2+3Qz_7Rd=FLY%KRZ>xAe)pb"73Qz)7d8z'qm:uYHA'JY:XnyX+W5b05&lj%Ka)wk+u T4k6.2,.FH"LOHy%GPb05$xJH,IS3)/f;AYH%qj&pqD)gN;gL0P=./S"dh#I5+Pb05$xJ T4lTH,IS3=Ow8"WQ)gX.%3f&IA5,/2p.%JS#DX+EYOO"sR#C26SG6&HFH<6Z5?GNKj(bv T4mu54/>X.3+4j/+O0B,70Wsp+Pb05$xJH,IS3IE"8W(4v5+a7SX6&HFH>774?GNKj(bv T4nO+r.6"1r%36j/+O06"3V>A5/2p.%JS#DX"EPtO"sRZ=./2jAC56,7p6Z$Td(dv+Pbp T4ot%kv>HPc=RSN'sB"gB#JsrD,8Kq(CRR&Ond'tT)Dzq)7a(RQ'yorr,k26<7Wn)Vyi9 T4p8/UZ#3d+96z+V2g0WfJPb)Z5)XHKgN4-HM7?FCVG-BAd-o4n./Zh26<7Wn)Vyi9/(.X T4qpI8(KE'BV=5/96z+V2g0WfJPb)Z5)XHKgN4-HM7?FCVG-L4z+V2g0WfJPb)Z5)XHKg T4raN4n737M_VG06z+V2g0WfJPb)Z5)XHKgN4"9G5z85Aj?vNvE_SDF(xX-90c#Xfqw+l T4sXjw>5QbV=52sN4n./Zh26<7Wn)Vyi9/z7,JdN4t73K@XJ4(XG/1V1-o4n./Zh26<7Wn T4tf)Vyi9/z7,JeN4tP4#ew&cud#32Q&eRL)8l;tPcQ3BvB$CA4n./Zh26<7Wn)Vyi9/z T4uy7%JuN4tP4;eGX#XZ*OBw#cw(w1V,52z+V2g0WfJPb)Z5)XHKgN4tm/nN4t83%Av$LP T4viQ(9o*LU#Gg+m6O7X7$gQ#BOU+RRz+V2g0WfJPb)Z5)XHKgN4tY@jit6&Rg4tN4t.3 T4w5$7th+Rqw+ljw>5QbV)A/d-o4n./Zh26<7Wn)Vyi9/zvI#It5@90Q%KH*JgA-tz85P T4xBYE&It%9P%36%w/2%yHw#7X$HkB=uzV2g0WfJPb)Z5)XHKgN4%hGx@9N0=GQ5c,n4t T4y8..0"o3QQ$5V)T4-r/nl@jdWu"A0N4n./Zh26<7Wn)Vyi9/zN7vl'v90#QK9xz85:Nvo T4zD%mO7;3LR5@2J4-oJU,g4n./Zh26<7Wn)Vyi9/zC$1HOX-9J-ez85z85S8&zC-Kh-B T5.At*9s3t#lR=5//4n./t"zv6<7Wn)Vyi9/z:V2IY#1y0#6O=D7b7$rJ97;3LR@ZqAXZ T5/d:NaC2&Ev3(yK'nI9"4A//;bYM(GC/+uN4n./Zh26<7Wn)Vyi9/#evO)fC(9T-.9V(sj T501$yKy?IMOT(ssh(F8GL%Pd-Y/z+V2gN(qn)NX,C7J)mU(I/<yVFg#4M*R1R0#IOq(OL T51y<Ugz#SIeq(9f-v4-z4s+f06xNEbC6<8mIJN3AA0)js$Vm>08B%4A"229'7JQ2&Za>OQ/ T52lG"9V#ls"sD#Yz)4I"ifp#Iv4)qy'LZ(SDo(bFp@pqx(pB:iRC*3C(XR-pAo$Co6&r/ T53D$.I$UqEf+uPX=3Wey"bH/,AwD28o(RB6I'K5+XDD2v-Bk0)qy2/@I.A%xr8&HFHx0 T54D6BL6+PyDsP_9Qm?TzS)3f;p6b+J67,b4Y;63hm(IXDD2N"Ruu0+RVU(RB6I'K5#XE T550_8xn*8P>3Ux<r8V&6X%me#A.SE;fna)ZQ=aPH#lRg(IF*V1;aOp*yd$4R:H8mY2v=0Lm T56L'38X'c8"RU-qQX$uoR#jM"OL%k/(wPyD20"j1L)gi)9/?v4q)VN0"1Kabe+.h0+le T57L0f608-G200;hl1<5Mfl-200#qB,2o1)68+MK7Ab+8iR#ScD7+3l8"1PB4#K7$uU"T0 T580>B5EI;3.8vs>BX6E"wJA%60%Cg(bK#A/D3"JX<PZ6.$XMJt"KxFc3:AAesM_Kb8%aQ T59j@eWJ-cqe).H1:gl4+TP9D"0I(5P?Eaa;gPD:1SG#kB>M.YJb"tJD#Id$dJ%9.a=cD8 T5Aq"RO&3/$Wm)O6a"c.#MJT,ZPs>P3/'VC(yc=2NU>TgS"4gmoi=C5Bo9#I4C.?kyC*UA T5Bv#oU%6I)6uvz%o5%x1)hx#AE,ilX%eZ"dK%.2#g7#gKMv>R2EF7#uV%4UOg+Tjg1R)50 T5Cs(Gz,QL9#YWDOE%C6+Tc/(gG%1MK3)GTZu)i3M*O3I4l)2G%M1%X7&l0#Fw(P6"Qa,9 T5DVUXU%Sy+qbd*34$17:RUAV=NQB'S8Xk.S;1fpAw"KYs,v4V"E89V#Ku:QDB"SAc76+q T5E1j7Z,jAp,TQiE"uhaF_Jfe:HLYe+e0GE:xA7SK(b2EZ#j7#pE3"kNCC6$qL)41&Yi#7V T5FM'LTA$jEa%BjTK"BD7:MDU"dK#2T:VScBL"pQ't8O:Dmgn"SH2'5QR#5ED)x5#HEV+D T5GbCZM(B3+tNFu+ojQ5I+/OmbGg;a18"1sdD"WL+fmu5<Je1)ZZ"oo%e/'8b"fL&E1:JeS T5Hp1zI'y8)HM+o4uo'AX#iW+pRA*d9&UdV)yY%8VM#m6AFh:y4k@lE4(8nDL'NFYK%03 T5I1b)lM-gv(B0&nW"hj;GTM?ObZ,qARDL3L+ol1%YKr;T9P+kKcp4&VdU*Pj$QU(IXmE T5Ju%Gf3/_yfDOII:.vBM-Env&FA*31#nvF&eR%tV=NCD;d9m7H39&mCg,eN4w"wl(Do&.O T5KyT94=x.T7)DN"s8z2I<rqr"FK"HN;rnmr$8k"oj(nOL$.5)aS(NmN6w>Gpm&/p_kqE T5LCV>BzAI"iV;9qtfk+8/M*bb3c)SCY"FE,S59_CtmtjQB&87/_C.H#gdOF%Z.%a7=nIc T5Mw"L6=SIg@1sCV+E8L>EDi1@4/A$W1"96%lX+GHi"Ju)5I%MJqCY5"zl>eAu_TeEA+i T5N3/f&aAl#XA_VAo%lLHx$74(L5?yWLa<zw0:1.S9i_FkJ#h4zn%7U+ELRJu$aq"5K(sm T5Ov)WhT1e$a8R'tS%HMf(Ms"1vp+4GE+lzd#OSP(Ua-6oT#NH$pBAKiFIKu)JU#PA*B7 T5Pw=H7L_11El(yb#o5"NI=7q7*pe?VxQ*8oG)e8I"mq"pV%HN#.w)mE%hXO@iDI_1LI>AV5 T5QN@fVA+Yvjj%QS@QJ0"7q;GQT$gL%M.%dA@y38-rBL,ZZ3"FRv%/f#KcKp=ELVs(YL$.x T5Rm'Tip'RS#Vf%nb(M3*WmE$83)iG,Ns3:3EKZ#VL+0.9sFv/y_1TgI?U72-QoA_yqW?g1p T5SLp2n(g9V,tP3%Y4330+zvDd5#nBP<Us9QPP=XeJ%Iq'Kb&Co'Dk3+eV.(3O3s<z.U?rY6 T5TtE?pfy$ip,VIaY?gVH9AK*54$C3kM=/WH#lz@2cq%cXGL,E1j"2X;cIj_mcC+fHj<Xva T5U6+N8P1$QpC5(9P$/yC"Pk"m7vR6x.#A0#8YE'pA"KSa%2q(Sy"hLs3P+LA9z:loD)B5 T5VN;Usd'Q/s"qi&fN(N2&HrKO'BGS4s:BrZ=r9U)8zh#bB%GU*PU*aIl:eJQ:1CT0<Lps T5Wr'npX4(k4#/C.;1Cl"na(3dDa;fTW'zl>es3*v9j)5J(Qg#wv%qS#8v'O5&MN'PW-N T5XJD3k;Xjyy$UI:PpV&YSt(4d#ZF%KF&O4%49NO-BeN&gF*5Hk"Aq$k4OI6+fR8%oT:Nt0 T5YH#dy=i8/#v.c_5as"QakG@5dS"dKP4+oZoI-TZgo;GNs:r4iGTY<nLU#/0"8aM_6/7 T5ZN=pJPW(46UN*sO=VK3,N3G'hZ#Nw*vBC'QB(0L>hxJI)b.T&f9(SqP#aJE@4gH%/8-S T5a2q*W2$f2=CHF"LH$9bB-sI)rV#to'Y3P8Gx/*5MmR#UdP&aO-Z/LcJE)8XY+fUp'SS T5bb8m/S,UL3+8bv:IVh5S+UR8)Fk"Oc$MxN$.3'vf)sb?sad"kt"f7"mCBDeLYZ.#dJU T5cC(bcJ*oX&PW*fZ(s5+5ML/)vWs/H;d.K"6y<b6M>dI1"VT-bei%Df#sRK_EkQQ*yU_ch3 T5dKZj<B7S:lV9,gEZ-dM)TX'uE-3/(hv#ck5"VR"UMA>9cW8J4wC8#Kh-dMI"NV=49q;l25 T5eK#Jc$vP#38=TTU"fDE/-7Q.2&ha94=EKon,LC/D"h74$CRc:o7lcK=bAE,j0O:SIJ&Fz T5fA-Z8HD=LJqZZ3HE.4+0P0"1Kabef:ormat0608)5B00,VDm;.ClTH00"qfc"K0/=PH1 T5gE:6ef-Mu(/O"qQ"Qf/)bD:9j9%CT,9hCCgX=aIwa,E.312;ME9a=8m0%Bg(bK<3rT"eU T5hu9g"SK7t-Tm(Hs>RdP"ws,cjq;U/ED"80VWq,C23+AO.,Gcp>RWt-24Tm#dEaM"nIo T5iC"GY(3S$06f'iG%9i*l0$0K;gm0#il%PiI)HB;K1y'V3'Ga23K,Aa8Y%vXf>3Ui+Ed T5j4T$lZ73&Q1<M5d"Iy%0NI1#Fh<.d5B$Ub%as-9cDiY'Iho#rFF$m2/=WPx$NScY"9H T5kJ"4t,T.c,XT.&Pm-2E1d,6vQ&g8(4J?93b9R&E2L"dIo;Fad'EhVkQ"nL;9Rm%cA"FY T5l5"eS#JC&0Di;3hd%WY&g0@4U8q#Zd%oc*Kb'Z1%kA&21&FU's.-w.(sa+WaY+7A5"Ki T5mP,pD2I"sy%I1z:wiCiZ"SMeKf>JAUUK#cN1=Aef#V1w#KGQ+8ia$E4%vA;jbfD(/Lt T5nO&20%lJ+wCY/(2b+TJ/s"7hp/"f0=W7AS"fyY6*y9(ZP67&hN'UBP$80:4Gzf"JTK#Qw T5oYo#Hhnema"XD"Y7+dPb(Ep1'nJ"3ka=nIij;BRD'1CE(Bj(8B$dG"SlY&v8$Q8%Y/+p T5psns+S0/E."lU/w.t+Ucw.(pU/?z.H;Ucz"fS&v0&VyCZ%4Qsa&L1z*2C3#BKa+J3B=FMk T5qX:4lQk-E15I)b1Q%ba+YnK>EDC:duD%1LOP<S7.+713&i5:79DV.+4Tlak+wyB"fn*8H T5rK%hQs%1A:hEu(ZY%MKdjqS'i4&Lv@6Ii"V9C*F0=YxhV(Gb?222.,Ds/V'6TU=8Ku@OKc T5s.T.%6V"Ri#sS:hjK#aj=8Ro:Eea.c"cm2"7Y+mk0(Kl#1a%oXh&zo;ZEe#uQa:iBe$/P T5t4&AV&NY#VPs'MB1<Wau,ys/:qYk@xR1(Ok;8.g(E/:/a1-2r(NW'DbOp/<AkY'nF)q/ T5u6'ggl@5rt-EomX,gWc%Pf'rc%UJ;fHV$h/5&Zy?dOi"xB:WUsN@d7MF%eyc;KZcF'gM T5vTg<OTKRi&cx#53O#aE#9A-BuhW?YsS+RjG%5f;8bYpf"MX'6F'mC.&kz,L9nS)Wj<Z2A T5wD&vb%Jr"Kv<FHj:Jmj;81j+uYq#VP.(CH*nE"o4$EG%T2%Ov'ns@2Su@3IcYQG&yCA T5xGI'F5-PG*vY:mib;F9CB)cD.Se;VQph"wM;l1m'gm"ten'Ah;Fxo'I3#BM(ad)9ai,h T5yZCu"te,Vao=qt1h:6ID&ZS-Bu)7v)jl*gfI"fS'a/"Qw*Scr"1c<XPR>Utov#Im:wTX T5zE(8V&4m%fU&b09p0A(2ZvC+4oOk#7y&CjzT)Bi"M0@4UG#Jug%4S_w4Un*I6M*.H%A7 T6.O=YjU+SfZ$I.+Jky(m5(Ck"KG-oG0k8%lX)yk8-QjT<lww(x5)AA3%It@0DD@M0i$bP T6/p%wz&CZ=uT8)Ho@f4Z-PzB%cc2=PjUg+fhB7%4V#S/."9KA.B/+NJcL"LB3sHND8<xBw T607#AI.ePND,J.3"3xQ,aX.:UsV;hCB)HA:7/Dc)kT5/(uA$/PMil;KTH5*vhO"qfE=PVh T61k)an#4rQ3g.#nQ0,uNJ;DPka"JcK(gV38%LC;KqGdS(TP%..g:dgMm;VON:hiF%LOk T62J*2N#cz(oh=895"pi*W1%Cd=mFI'Kb"EU(pZs,qyE&sL"dS?HGk&QK+tx/x4le"1wA T63lk'gKWV$X0#In%E13:BP8#d0%0l-Cq6B%UVl%uB&aZ;uhKS,WgYF(8S*4E#9B"ttX=LyG T64HC_BCk6)acj%o0%f9t>ndg#QPZ$OP-ul*JB'c4"aym#N9&fRJk;KBh-lNo&7D"/2;bMd T65rI:VNHl%1p%/hOw"1zp&0tx%OiB1&Of#OV"Mb+Auu_tDK4-rl8Zg%Tq"uh)yk'UO2%de T66v"9Y$2abE)J."DM-RZGgC:WFQ#zA(MS'I4(5Gm*nO:Pms:kAu,C/A)q8m)3P*0Y:kfT T67na'Fpc(AB$/6%Nuh&IC-cmo;MUx@qn8)IEZ(id"Rn#ko"vP-n/(cG&AL%WS"DF"aaI T68WzmK47#9G-Mo(JM$pVT@Qbl#4Bs#jK"ef_eIT.*Jm"/U)4F%45*MZs4pm&YK)tVJ:qKs T69Y%CQ%QJe@ggS"Ui1e#rx)gW*kE)fZ,UL4#gk>gBc0_CKy)L0v=aV0?m/G."VD"c8'gL T6A9A)bE#EP'yfu(00#Icyd"3i".Lz%KCR&0IX*Tob"We$fHZ'HM<nCT)im@1S5&Y2oc=Oq5 T6BjR#0N'o6n&4L8#pZ%id+2Qn=hYWolF"EU(t7(Ajq'LL'A7:DWMA(5l(L0%P.)j7%7i T6Cxh%Cl#31&M7%NUAtP8;QgW"Bja-Vx-qgYW*8J5"8d:uOL"RY@/jf)wp#QUk-QVZa/'Wm T6Dc#RP*md(6i<ffHt5x4m$5kBV+Jyr'41k+VMU$ZI$Z5?KL4-hNW$KM,DGb&mH'fk:bF1 T6E9#L2&DJ%F7-Bkv%Pd"MM#BZ+6dS)JHxr-ZYo'oNL"64t,s1W&vE;OMADS"db@vlm)m0 T6FpYQ%HLWSG?Ds9(xu=71e#pNl"l/)qsgQ'Q3%Iq#wv#XA"dO%1.&fD=pbc(ftZRE$C9 T6GC1a:2/4%GH&lf$3ky*hhMU#jr/%iU;TuD%Ydc-blm&89B,S4f"8vK&t5'01@Nlr%wx T6HT_cOa).9(om"MG;pKC:T4X%l1<.Yc%BY:XZj)UM%xd8+Usv6"n7+hCg-5dJ#k97$nK T6IV.$YQ)OT,Big)p5)cc>2.4V_ss2$vD%Ja%ZC#VvJsH:vfZj0"rT'1T@sn1B:pUB*7G T6JC=I8A>ARD&Dw"PT<dZc(2o*Vd+bxZ-86T_I/.xm/#tHoV*5a(oN0=pVx$iz?53I<rFC T6KM#jh#T/&HY#mm$wb,zJLB&Aw#f8-Sf*Qm?V0IqL%d/-cw3</7O%9W$wZ'9IVO&Hm:VUk T6LS+GYR)661_XSQC4"GJ2(pE#KuYA-hMu<U74+3jO-y8C6D<PZC1"P/-sqX)Vf-Wa2#zh T6M2$r4)HX&Bz8&xq9=YHg&b2#v.%Hd(ts-WO*4p'tVN&RY#PR#5G<JVX#hcW"iy)RP#5t T6Nm$9r*IWf'00(Ts_hMb%xAZ)U48;fp.x_YW/"NY$NC&pk)Dwa-1nS%B4_tWl"tmi_B7X T6Oh@Rxr#Wr'gpi-Smi(hg%Pb2)ui"VR%uP&Pj*tv)1X+VD0&hss&w3y"2t&tht(le-NC T6P9@RsB#Pw5-puw2j'sT*.X*Rj(s8(9p)LtN5)n8#gF9z)/w+L10LTM;3xPdPcw"ja2"yH T6QE#5ReG&jE;0F0%V0O2:W93%3kP&M1h#KU+Gsr.+KUI%0g<XwK#dsX"11&g59+X86&15 T6R4&xHyK,.8q,s8q#P9"b5<YYB7;5Y/"x5T*tK7'FaxbMP(1k2*LHX".9+j.7a"9Ac#0C T6SC"opQ,On0&/nS"0P?B9xD>Gkd%kY<UD2%TE)o7ZG+a27,WO7%Bu@Gov%ED3&/s0%pO T6T9"kg:31V66+Pl6"PxE"126g$3q@Jxg(en88xe>0fG0#p5+33X+f4/+ZkI-1Px#/w&hj T6U9tg@nfjJW;SBpt"1B+84RUOLq"J4VJv:srK(I2"d4:7P4#Gg,zHV?QKS.VUQ+ug71p T6Vy"AEC5"/u*P5&pQ.vL(1g'O5;t1z)//%Wu2%061"1Cf&7W0-IxZkZZtmz:fH.&jEr)N1 T6W7C%uS/b%.Ti@V/2p-7mR)PF&Bh)8Wtsu%D0&Visq'iM#RGY#xD:Ka0(AKb;g0a-1dw T6XA-dx.%2R"4t"y7"sW/)ud=abXEl&BB_MXtc#Bt)Hw%tX>WUf>d.ErEy,BC4GCRdC*JB T6YY#04"gS-ZwO'JL>GIw#Ix?mM1+4g8xj(ETuH&pAVFw@v6knk59R+AbM'i4,VU1%Pk-8 T6ZYD2(vaQ%d3L&pn#o5/'/A:32G<s.QiEf45(pe)70?LJy+xjp9j-le*Iz+/96%HN.j(Ws T6aj;V6/vLcy"m5;cI.#5B:7Na+okj"lR#rX>00f&uk&xT)Jg'uJ#zb(9x+Bq6x'7E-6f T6btfFj)fH%iU_SR.5)qy8"Xy?Ura;WyH?uBd&HO$Lao*.6*Qd&Ra#HL"S/)/7k7'HV)/D T6c9&U0*9VR:wXU/+DCrTsTtF(gJ&Pj+pV2"mv=CLI*QI"5A,GOn(4xBPlD"QC"5K"RGd T6dCPygaR-8/fO+H2T:a2b"Pz)9o(Pgji(F9'7E#R7%W3c"Kp".IH;zl0O#Sp&Cvwp;p6X T6e7"b6"3K#U/%cp"w5P6+3Z6Y?v3Oo"0VSW0l2$yB#YN"Cz#1LJ'ch%7mN$h8'E5".H7 T6fE"pB%7y+61k>oOl)EZ/6%OD;41WQ5%Ia0*Ux$3FA"c6<v.P-0q_HcVms-6i1-Xu6>OVC T6gt>FwPl#N0$A.i#Ofg)QW<nvM:EcD>ILt*hQ#yHI)Bv#cGD+ls.H(Ae7dm6&Ys)Qy:SnM T6h58%7.:G2bP$Wt(EE"wad&Doz=N9ASF%Oi.a+bWnH,1TQ5/,KNP'3H'F2/5+OQJ"FU8 T6ik?ui5_whtc"H7(YSn"LI+.gy$G04I=VZm"./ry#ps&Iu%jK)SA:PBAnm/g;CDkCn,Q T6j3FD%fv4-01l*Pl2-8cZ7eQ$Pcw'9i%9P/Xi=bVy)BX'iRyQq2(Ns"OK=MHI%c1@Vsn T6kH"tD'B8,HBtY(GQ>d60-324,g/AQ2>kjXdj$gO?B57"vl*fK2$8E,sqo>J4BA'ZE$34 T6lw:UPxq'/8-38)jq(1B#gF#apJ%oG#k/cn&fu%ii:B3b7_g0q'Jf#1x*Mi'xUy?NGV&jg T6mV#GD>yyi%r1$AsBwP+hyV%Rzm;w0B#3Qph_qXUP%iw&XwmL#Eq&zU?uqY-B5)D0$it T6nHF%xd&nj+9iK_v2M#.q"kQwG&.S'xM:13sv"mi7P"6u2(WGI$dR(Wb98*4D=hb1+9s T6olCxS;VSK>LXg>.aOMD%PtJ+MVE=/DC8A"o7B'Kj%SC&R8:Cx4$AE:jEa+AG6"yX"6j T6pg*e8"/D(Fsw)Oc,H8Ov&y4#08;can;DoKwG"njG%Os%Nw'g1#vv"zn<kfcg:6Ni"wi T6qx7&FYg(fo@3DL*K15#67)NyA)8w,HAu&JW$Gf&xS&JhC$9B+//q&gVqW'.O+w2rJ2)8M T6rRvr&l7,SF3N:G8B#ZNV#sNxj=NiC%N.#HN%YKp"T80&dJV%Tj*Cd$Gf$u2$xH)0xW'lC T6sZ/di;ZFN(aw1$vQV?UHE&fu(X0"tx'olE#0Q*Q3M$h7%48qT)ECN3,OJ4h-ZG/V#wo T6t2@E8o%B6kj-3mlM+K4rrZe)El&k9(UO+MDE#gB"nA)FY&oc$8O*0E'P6.'NQ0"/aR#Mv T6uZ&Y1>sV0#7Z,Isp&yka5"xi$C/<9lV>7/J)qBH)fG%10#jd"0Zc*eo*2M?WxQJx"eE T6v/O/;HDY"O8%Y0#K/#t4b*uPv/>Iv7$6w)0pxc*.G*7Q2*yQR<JEWPB(3xq+Csu)qu+4 T6wJ3RJ;FbS?fYxt+KAS&NdX0'7F".31'WKX#3MK'Jh?N/pEFp:6THdw"kIq=EwW<WXi<DRq T6xiaw$CQ%gZ$uPM_/wE%iM'qUC$25)PLIPP)KSy"Ce*dR)Q9#4Cp#wX+r2p"i9;Z8w$9w T6yt#h1&FQR*qdJ-BsIS%qX"bs#up2,Es.;A0W;u6ve.m#uh>wW.+E4d"gv)8MA:FzC0#gp T6zu(WKis:CRT3(q4"lOh"2M"3J"7O(BSYgo-4sp:ozurz;nPd&Wq%81gj+CxmV,fg/%Oa T7.F(GsjU*lP<ctmq*nR%my?Euk6/'fG-X8q.?D9I.3p#O.%LI+y7hC&xb;x.fc#.q*.1 T7/V$$closeblock=0,26039,27286,2470007321 ;ABE encoding end of part 0 -- Brad Templeton, ClariNet Communications Corp. -- Waterloo, Ontario 519/884-7473
davidsen@sixhub.UUCP (Wm E. Davidsen Jr) (02/24/90)
In article <100765@looking.on.ca> brad@looking.on.ca (Brad Templeton) writes: | Normally, I would post source in a shar, but as an experiment, I arc'd the | source together into abe.arc and am posting the 3 part ABE2 encoding of | that file. What use is that? Normally I would unpack a shar with "|(cd ~/tmp;unshar)" directly from the news reader. Now I get to move a bunch of parts to a directory, extract parts with an editor, compile unpacking programs... then I can take it apart with arc, to get what would have fit nicely in a little shar. Sometimes people get carried away with cleverness, and this looks like one. People on the net understand shar format, and have tools they like to handle it. You have managed to post both source and binary in a discussion group in one swell foop, and in two unusual formats! -- bill davidsen - davidsen@sixhub.uucp (uunet!crdgw1!sixhub!davidsen) sysop *IX BBS and Public Access UNIX moderator of comp.binaries.ibm.pc "Getting old is bad, but it beats the hell out of the alternative" -anon
brad@looking.on.ca (Brad Templeton) (02/25/90)
Ok, I admit that from a pure utility standpoint, it wasn't as easy to unpack as a shar would have been. But the elegance of posting an encoder, encoded with itself, was too much to resist! In fact it is one of the whole ideas behind the tiny decoder. Unpacking is not has hard as you say. Edit out the tiny decoder from the first part. A handy trick to do this is to use !vi %A from the RN command line, if you use RN (and not RRN). This makes it easy to extract the source into /tmp. Then either save the three files into ONE file (not 3, just concatenate them) and feed it through the a.out you made. A shar is no easier than this. You have to save three files, go in to the three files and hand edit the headers out, then run sh on them. (I suspect there are some unshar programs out there that can take a concatenated multi-part shar -- I don't have one.) -- Brad Templeton, ClariNet Communications Corp. -- Waterloo, Ontario 519/884-7473
roy@comcon.UUCP (Roy M. Silvernail) (02/25/90)
In article <534@sixhub.UUCP>, davidsen@sixhub.UUCP (Wm E. Davidsen Jr) writes: > Sometimes people get carried away with cleverness, and this looks like > one. People on the net understand shar format, and have tools they like > to handle it. You have managed to post both source and binary in a > discussion group in one swell foop, and in two unusual formats! Not to mention... I was able to unpack, etc., the posting on this Unix account. When I tried to do the same on my PC, however, the fun really began. Turbo C compiled the Tiny-DABE with no complaints, but the result just plain didn't work. The file produced was reported 'not an archive' by PKXARC and ARCE. As a side note, DABE is a filter, and filters are wasteful of system resources on a PC under MS-DOS, since DOS passes once to create a temporary file, and then hands the tempfile to the next process as stdin. Writing with the idea of 'filter <infile >outfile' would only need one pass on the source file. I transferred the extracted sources to my PC, but I haven't had the chance to try porting them. The source archive is replete with filenames that are illegal under DOS, and will need some massaging. (I thought we were trying to find tools for DOS machines... ABE appears to be much more oriented toward Unix) -- _R_o_y _M_. _S_i_l_v_e_r_n_a_i_l | UUCP: uunet!comcon!roy | "Every race must arrive at this #include <opinions.h>;#define opinions MINE | point in its history" SnailMail: P.O. Box 210856, Anchorage, | ........Mr. Slippery Alaska, 99521-0856, U.S.A., Earth, etc. | <Ono-Sendai: the right choice!>
brad@looking.on.ca (Brad Templeton) (02/26/90)
There is a DOS executable of DABE that was posted (Not in ABE format) to the parent of this group. It would be done again if the format is to be used in this group. If the tinydabe didn't work, it it possible you did not define the "msdos" symbol? I admit I used MS C, not Turbo C, in compiling DABE for dos. It is not intended to act as a filter, either. You just give it the input files as arguments. -- Brad Templeton, ClariNet Communications Corp. -- Waterloo, Ontario 519/884-7473
roy@comcon.UUCP (Roy M. Silvernail) (02/27/90)
In article <102691@looking.on.ca>, brad@looking.on.ca (Brad Templeton) writes: > There is a DOS executable of DABE that was posted (Not in ABE format) to > the parent of this group. It would be done again if the format is to > be used in this group. > I'll look for it, then... I like to have as complete a set of pack/unpack methods as possible. > If the tinydabe didn't work, it it possible you did not define the > "msdos" symbol? I admit I used MS C, not Turbo C, in compiling DABE > for dos. That's entirely possible, and I'll try it. > > It is not intended to act as a filter, either. You just give it the > input files as arguments. Ok, but the Unix-compiled version of Tiny-DABE worked as a filter. Perhaps I misunderstood the directions for unpacking. | Message-ID: <100765@looking.on.ca> | Date: 22 Feb 90 22:28:51 GMT | Organization: Looking Glass Software Limited, Waterloo ON | [...] | What use is that? I used the +d option, and it prepended the | source for the tiny abe2 decoder to the first part. Take that source | and compile it, then go | | cat part1 part2 part3 | tiny-dabe >abe.arc | | Or, if you like: | | sort (parts-in-any-order) | tiny-dabe >abe.arc | | to demonstrate that even the tiny-dabe can handle postings in a random | order. Looked like a filter to me. I'll give the define in Turbo C a try. Thanks for your response, Brad. -- _R_o_y _M_. _S_i_l_v_e_r_n_a_i_l | UUCP: uunet!comcon!roy | "Every race must arrive at this #include <opinions.h>;#define opinions MINE | point in its history" SnailMail: P.O. Box 210856, Anchorage, | ........Mr. Slippery Alaska, 99521-0856, U.S.A., Earth, etc. | <Ono-Sendai: the right choice!>
leif@comcon.UUCP (Leif Sawyer ) (02/27/90)
In article <334@comcon.UUCP>, roy@comcon.UUCP (Roy M. Silvernail) writes: > In article <102691@looking.on.ca>, brad@looking.on.ca (Brad Templeton) writes: > > If the tinydabe didn't work, it it possible you did not define the > > "msdos" symbol? I admit I used MS C, not Turbo C, in compiling DABE > > for dos. > That's entirely possible, and I'll try it. Ok, i compiled it with the MSDOS symbol, using Turbo C 2.0. It compiled fine, no errors, no warnings... > > It is not intended to act as a filter, either. You just give it the > > input files as arguments. > Ok, but the Unix-compiled version of Tiny-DABE worked as a filter. > Perhaps I misunderstood the directions for unpacking. Haven't yet tried it that way, but from the looks of things, it's a filter (Don't have the source on hand..) but the line that changes stdout to O_BINARY for redirection in to a file... > > Or, if you like: > > sort (parts-in-any-order) | tiny-dabe >abe.arc > Looked like a filter to me. I'll give the define in Turbo C a try. My sort barfed on it. OUT OF MEMORY, which is highly unlikely if it used main memory (640k), or EXPanded(1.4 Megs)...however, it may be limited to 64k because of some internal limitations..(one of which being an 8088 with 64k segments) Anyhow, i went through and hand sorted them (not too hard, just three files.) into tabe.abe, then- type tabe.abe | tinydabe > abe.arc All went fine and well, until I tried to unarc it. lo and behold, it was as corrupt as Imelda Marcos.. thanks for the help, brad.... -- :- From Leif Sawyer ---- USnail -= 1568 Primrose/Anch/AK/99508-3062 -: :- UUCP - uunet!comcon!leif1 "Does the name Pavlov ring a bell? " -: :- BitNet - ASLAS@Alaska.BitNet #define flame /dev/null -: :-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-:
SHARKEY@osu-20.ircc.ohio-state.edu (Scott A. Sharkey) (02/28/90)
I did exactly the same thing as Leif, including using TC 2.0, and combining all the parts manually (did you leave in the redundant header information?) and it worked flawlessly for me. Just FYI. -Scott
brad@looking.on.ca (Brad Templeton) (02/28/90)
You must define "msdos" not "MSDOS" to get the tiny decoder to work. When somebody pointed out that many DOS compilers have the upper case one defined (in the unix world, the tradition was for symbols like "unix" not "UNIX") and as such I have changed the define for the tiny decoder to MSDOS. This will allow compilation by MS C without change. Otherwise you have the problem of the default text file mode of most C compilers. You can use "wb" as the write mode with no ifdefs, but I fear that might break some other fopens. The concept of type foo | tiny-dabe >abe.arc is silly. It is not meant to be a filter in this manner. You would use tiny-dabe <foo >abe.arc The only time you use it as a filter is if you want to concatenate or sort it in one line. You only do this once, to unpack the real source. It is not the normal mode of operation. You have to concat and hand edit parts for most other decoders, like uudecode. I was just indicating the elegance of using the filter if you desired. It is not a requirement. You can certainly combine the files in one step and feed them as input in the next, just like the other programs! This is the tiny decoder -- you want creeping features? -- Brad Templeton, ClariNet Communications Corp. -- Waterloo, Ontario 519/884-7473