Newsgroups: comp.binaries.os2 Path: utzoo!utgpu!watserv1!mims-iris.waterloo.edu!os2bin From: os2bin@mims-iris.waterloo.edu Subject: v03INF02: comp.binaries.os2 Starter's Kit (part 01/01) X-Questions-To: os2bin-request@csd4.csd.uwm.edu Message-ID: <1991Jun11.035722.10172@watserv1.waterloo.edu> Followup-To: comp.os.os2.misc Summary: The basic tools for using comp.binaries.os2 postings X-Submissions-To: os2bin@csd4.csd.uwm.edu Sender: news@watserv1.waterloo.edu Organization: University of Waterloo Date: Tue, 11 Jun 1991 03:57:22 GMT Approved: tanith@csd4.csd.uwm.edu Lines: 800 [Date of last change 90-08-15 Release 1.0] USENET comp.binaries.os2 Starter's Kit The files contained herein are public domain. This kit contains what you will need to begin downloading files from comp.binaries.os2, or: 1) Instructions 2) BASIC source for UUDECODE 3) C source for UUDECODE 4) BOOZ 1.02, ZOO extractor, in uuencoded form You will need: 1) C compiler or BASIC Interpreter 2) File editor What to do: You will need to split this file into 4 parts. Each part is separated by a line stating "---CUT HERE---" and a short description. Using a text editor, separate the parts for the C source, and the UUEncoded BOOZ extraction program. Then compile one of the sources to create an executable uudecode, and then run it on the uuencoded file. If you called the file looz.uue, then type: uudecode booz.uue This will give you BOOZ.EXE, an executable ZOO file extractor. Type 'booz' for options. This file will allow you to extract all ZOO archives that are posted in comp.binaries.os2 files. The BOOZ utility is bound, and will run in OS/2 protected mode, in the DOS box and on an MS-DOS machine. NOTE: This file is for the purpose of ease of use on any system. Although other formats (such as shar files) are easier to handle, they present a problem on the portability between systems. NOTE 2: Thanks to Bill Davidson, moderator for comp.binaries.ibm.pc, for the original version of the Starter's Kit. ---CUT HERE--- Save following as UUDECODE.BAS and run under BASIC Interp. 1000 KEY OFF 1001 DEFINT A-Z 1010 REM Trap error opening input file 1020 ON ERROR GOTO 1600 1030 CLS 1040 LOCATE 5,11 1050 PRINT STRING$(40," ") 1060 LOCATE 5,11 1070 INPUT "Enter name of input file: ", INFILE$ 1080 OPEN INFILE$ FOR INPUT AS #1 1090 LOCATE 8,10 1100 PRINT STRING$(40," ") 1110 REM Trap error opening output file 1120 ON ERROR GOTO 1640 1130 LOCATE 8,10 1140 INPUT "Enter name of output file: ", OUTFILE$ 1150 OPEN "R", #2,OUTFILE$, 1 1160 FIELD #2, 1 AS N$ 1170 REM Trap error at end of file 1180 ON ERROR GOTO 1680 1190 REM Search for header line 1200 LINE INPUT #1,A$ 1210 IF LEFT$(A$,5) <>"begin" THEN 1200 1220 LOCATE 11,10 1230 PRINT "Header = ";A$ 1240 SP = ASC(" ") 1250 DIM BUF(100) 1260 RECNO# = 1 1270 REM Main loop 1280 LINE INPUT #1, A$ 1290 P = 0 1300 BYTES = ASC(LEFT$(A$,1)) - SP 1310 IF BYTES = 64 THEN BYTES = 0 1320 IF BYTES = 0 THEN 1560 1330 COUNT% = INT(BYTES/3+.9): COUNT%=COUNT%*4 1340 FOR I = 2 TO COUNT% STEP 4 1350 X1 = ASC(MID$(A$,I,I)) - SP 1360 IF X1 = 64 THEN X1 = 0 1370 X2 = ASC(MID$(A$,I+1,I+1)) - SP 1380 IF X2 = 64 THEN X2 = 0 1390 X3 = ASC(MID$(A$,I+2,I+2)) - SP 1400 IF X3 = 64 THEN X3 = 0 1410 X4 = ASC(MID$(A$,I+3,I+3)) - SP 1420 IF X4 = 64 THEN X4 = 0 1440 IF P #ifndef MSDOS #include #endif #include #include /* single character decode */ #define DEC(c) (((c) - ' ') & 077) main(argc, argv) char **argv; { FILE *in, *out; struct stat sbuf; int mode; char dest[128]; char buf[80]; /* optional input arg */ if (argc > 1) { if ((in = fopen(argv[1], "r")) == NULL) { perror(argv[1]); exit(1); } argv++; argc--; } else in = stdin; if (argc != 1) { printf("Usage: uudecode [infile]\n"); exit(2); } /* search for header line */ for (;;) { if (fgets(buf, sizeof buf, in) == NULL) { fprintf(stderr, "No begin line\n"); exit(3); } if (strncmp(buf, "begin ", 6) == 0) break; } sscanf(buf, "begin %o %s", &mode, dest); /* handle ~user/file format */ #ifndef MSDOS if (dest[0] == '~') { char *sl; struct passwd *getpwnam(); char *index(); struct passwd *user; char dnbuf[100]; sl = index(dest, '/'); if (sl == NULL) { fprintf(stderr, "Illegal ~user\n"); exit(3); } *sl++ = 0; user = getpwnam(dest+1); if (user == NULL) { fprintf(stderr, "No such user as %s\n", dest); exit(4); } strcpy(dnbuf, user->pw_dir); strcat(dnbuf, "/"); strcat(dnbuf, sl); strcpy(dest, dnbuf); } #endif /* create output file */ #ifdef MSDOS /* binary output file */ out = fopen(dest, "wb"); #else out = fopen(dest, "w"); #endif if (out == NULL) { perror(dest); exit(4); } chmod(dest, mode); decode(in, out); if (fgets(buf, sizeof buf, in) == NULL || strcmp(buf, "end\n")) { fprintf(stderr, "No end line\n"); exit(5); } exit(0); } /* * copy from in to out, decoding as you go along. */ decode(in, out) FILE *in; FILE *out; { char buf[80]; char *bp; int n; for (;;) { /* for each input line */ if (fgets(buf, sizeof buf, in) == NULL) { printf("Short file\n"); exit(10); } n = DEC(buf[0]); if (n <= 0) break; bp = &buf[1]; while (n > 0) { outdec(bp, out, n); bp += 4; n -= 3; } } } /* * output a group of 3 bytes (4 input characters). * the input chars are pointed to by p, they are to * be output to file f. n is used to tell us not to * output all of them at the end of the file. */ outdec(p, f, n) char *p; FILE *f; { int c1, c2, c3; c1 = DEC(*p) << 2 | DEC(p[1]) >> 4; c2 = DEC(p[1]) << 4 | DEC(p[2]) >> 2; c3 = DEC(p[2]) << 6 | DEC(p[3]); if (n >= 1) putc(c1, f); if (n >= 2) putc(c2, f); if (n >= 3) putc(c3, f); } /* fr: like read but stdio */ int fr(fd, buf, cnt) FILE *fd; char *buf; int cnt; { int c, i; for (i=0; i M"P``[`L``/D+```1#```VPP```D-``#F#0``+@%2`D4"4@)K`*4!A@6E`?@% MI0&6!J4!L0>E`7T(I0%@#P``E0\```(`@0$)$```,Q```$D0```$&``````` M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` M``````````````````````````#H3PR+1@B%P'4##?__,]NI#P!T!('+`0#1 MZ-'HT>C1Z`/8BT8&CL"T2LTA<@4SP.L&D)JH%P``Z#4,R@0`N)(!CMB^``"+ M#$9&B]:[`@"T0,TAL-6T3,TAZ/<+BUX0@_L4<@6X!@#K3[@`1,TA+1@JT M0LTA<@W%7@:)!XE7`C/`ZP:0FJ@7``#HM0O*#`#HD@N+7@:`__]T((/[%+@& M`',BD^A2"XO[B]@RP"X@10,N($4$M#[-(7(%,\#K!I":J!<``.AZ"\H"`.A7 M"[A7`(M>!@O;=20+7@AU'\56"E:T`XORFN\,``!><@^T0Q6X& M,\`^B$8`'UW*!`!5B^P>Z.@)Q6X&/HE&`#/`'UW*!`#HVPJX5P"+7@8+VW4K M"UX(=2;%5@Y6M`.+\IKO#```7G(6L`"T0\TA<@G%=@J)##/`ZP6:J!<``.C` M"LH,`+8!M@$````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` M`#/`58OL*^`>!E-14E97Q78,Q'X&,\`FB06+5A"X!@"#^A1R`^GF`(O"Z#T) M+O9'`R!U`^FR``O2=`/IJP`.'XLVL@$[-K0!=7>+1@H]_P!V`[C_`#/)+O8& MIP\&=0>X_P"+#K<"H[D"B0Z[`AZXM@%0'KBY`E`SP%!0F@P/```+P'0#Z8<` MO[8!B3ZR`0,^NP*)/K0!+O8&IP\&=2.R"K0&S2$SP+^V`8`]&G0,H;L"`_C' M!0T*@\<"H[<"B3ZT`<1^#(LVL@&+#K0!*\X[3@IV`XM."HO!_/.DB3:R`<5V M!HD$,\#K'Y#HC`B+VHM."HO6M#_-(7,&Z(L(ZPN0)HD%,\#H@`CK!9JH%P`` MZ$T57UY:65L''XOE7!C/`B0>+7A"#^Q1R!;@&`.LRBTX*"\EU M$XO#Z"D(,\`N]D<$`74=N`8`ZQC%5@RT0,TA<@K%7@:)!S/`ZP:0FJ@7``#H M20C*#`````$``0`````!``````$````0`0```!0!```````````````````` M```````````````````````````````````````````````````````````` M````````````````````N`P`Z,$'QT;\``#W1@[(_[@%`'5OBU8*N%<`BUX& M"UX(=6&+1@P*Y'4'0`M&#*GL`+A7`'5.]\((?W5(N`P`B]J!XW``@^L0@_LP M=S>+VH'C!P"#^P)W++0!Q78A4!H#\"G(8Q58!X@<`B58*Q580Z_,TA_,TAL'D)JH%P``^5I9PU"<@W[\`'0,M#Z+7OS-(<=&_``` MG5C#B_*+/(M<`HI,!('GW]^`X]^!_T%5=0>#^UAU6NLA@?]04G4*@_M.=4VX M%`#K2O;!_W5#@?]#3W46@?M-,74%N!``ZS2!^TTR=2RX$0#K*;@4`('_3%!U M'H'[5#%U`NL8@?M4,G4%#0$`ZPV!^U0S=04-`@#K`C/`PU&X@0&.P+L$`";V M!_^X``!T;[0OS2&)7O2,1O:X@0&.V+H%`+0:S2'%5ARY!@"T3LTAN`(`06X5P#K9#O*BU8&=QAR!#O0=Q*T0K``S2%R M2K1`,\G-(7(EZQ^T0K``@^H!C1Z`/8M$C-(7('Q5X(B0#KZ\";D%`"XY''03@\8/ MXO:X,@"#^P=T`[@!`.F>`"Z`/@<*`706+L8&!PH!N@``CMJZ$0N[%`":V@\` M`"Z`?`X!=3;%7@8NBT0(B065M8'\L``%6+["ZA3`N+Y5W# M````````````````4%-14E97'@8.'RZC3`LNB1YC"[Y9"[1C,L#-(;D%``X' MOUD+\Z6T1#+`,]O-(7(0@.*!@/J!=0B[*00N@$\#(.CY`.AF`@BC#"Z/!A@97UY:65L''XOE72[_)A@9```````````` M````Z"L`G"[_'I,,SU!3!AZX)#7-(2Z)'I,,C,`NHY4,C1:7#`X?N"0ES2$? M!UM8PRZ!/I$,_P!T("['!I$,_P!04U&:J!<``"ZCBPPNB1Z-#"Z)#H\,65M8 MPU974U%2,O^*W#/_,]+\K(3`=0/IFP!'FK0+``!S`^F#`#PZ="8\+W1!/%QT M/3P@=#D\.W0U/"YT23PJ=0/I@@`\/W1^BLCKQNF:`(3_=?F#_P%T](/_`G?O MA/9UZX#)((#Y87+C@/EZ=]Z$_W0/@_\$=@/IFP`R_S/_ZR&0@_\)Z^^$_W0/ M@_\!=@/K6)"W`3/_ZPF0@_\)=O3K=9`R]HK(Z6K_K(3`=`A'M@&*R.E=_X3_ M=`B#_P-W5_CK7X/_".OV]L,!=1ZR`3PJ=="$_W0*@_\#=SN_`P#KPH/_"':M`L``'(//"]T!CQ<=`+KY;@#`.L1K(3` M=.#KV;C.`(32=`.XT`#Y6EE;7U[+4%-14C/)M$0RP(O9S2$]!@!T.8O#Z/W] M+H!/!`'WPH``=#,N@$\#$/?"!`!T!2Z`3P.`]\("`'0%+H!/`T#WP@$`=!(N M@$\#(.L+D(O#Z,3]+H!G!`!!@_D4V0XSRO%+H,^RP\`=0@N@S[-#P!T!2[_+LL/G"[_'M`/+L8& MV0\"/`)TFL^X`@#/``````$``@`#``0````````````````````````````` M``````````````````````````````````````````4``P,!50`,`P.W``P# M`0<`!P4%H``)!`$6``D$`7<`!P0""@`'!`4+``D$`1@`"00!H0`)`P&?``D$ M`10`"`,!;0`-!`%O``@`'!`%?``T! M`0P`!P0!:``'!`$)``<$!;4`!P0!=0`'!`$-``D$`0\`"`,"EP`)!`&Z``D$ M`0$`!P0!!@`'!`%\``D$`9D`"00!>P`)`P&V``D$`5<`"0,!5@`#`P&T``D$ M`7(`!P0!=@`'!`&&``X#`9,`#@,!A0`.`P&'``X#`9(`#@,!E0`.`P&*``X# M`8P`#@,!F@`)`P(A``H"`GX`"`,!@P`'!`)8``4$`QH`"P<""``!!`5:``X$ M`8@`#@0!G@`.!`$5``X$`1$`#0,"B0`.`P$R``D#`[@`"`0!70`(!`$2``@# M`G$``00!60`!`@%]``@$`6X`"`,!'``!!P%4``$$`90`#`,!`P`(`P)_``@$ M`7,``P0!'@`%!`*/``X#`1L`"`0"&0`%!P*$``X$`68`#`0!NP`(!`%I``T$ M`7D`#P0!:@`!!`$D``$$!2``"@("H@`.`@&<``X$`8T`#@,!BP`.`P&6``X' M`9@``00!!``!!`%D``$$`6<``00!FP`!!`%T``<$`8``"`0!'0`%!`(3``,' M`B(`"P<"+P$'!`$P`0<$`3$!!P0!,@$#!`$S`0<$`30!!P0!-0$'!`$V`0<$ M`3@$'!`%[`0<$`7P!!P0!?0$'!`%^`0$$`7\!"`(!@`$!!`&!`0<$ M`8,!!P0!A`$.!`&&`0X$`8D!"`(!BP$'!`&,`08$`8T!!@0!C@$'!`&/`0<$ M`9`!!@0!D0$&!`&2`0,$`9,!!P0!E`$'!`&5`0<&`98!"@(!EP$#!`&8`0<$ M`9D!!P0!F@$,!`&;`0<$`9P!`P0!G0$'!`&>`0<$`9\!#`0!H`$'!`&A`0<$ M`:(!#`0!HP$-!`&D`0T$`:4!!P0!I@$,!`&G`0P$`:@!#00!J0$-!`&J`0P$ M`:L!#@0!K`$'!@&M`0<$`:\!`P0!L`$'!`&Q`0<$`;(!#`0!M`$'!`&U`0X$ M`;8!!P0!```-!`'H,O8SR>L*D$&#^05R`^F-`(O9T>,NB[<'$8O>B\/1X]'C M`]C1XRZ#OQD1`70"Z]B+1A(N.8<1$70"Z\S$7@Z+_HO'T>?1YP/XT>"BZ+A141)HD'Q%X&+HN%%Q$FB0,NB;<'$>LSD`:+1A*Y^`"^11$N M.P1T"(/&!>+V@^X%*N0NBD0"Q'X.JRZ*1`/$?@JK+HI$!,1^!JL',\#H??7* M#@!04U%25E=14U`STC/)ZP*008/Y!7(#ZRJ0B]G1XRZ+MP<1B]G1XRZ+GP<1 MB\/1X]'C`]C1XRZ#OQD1`'0"Z]&Z`0"#^@!T`^LQD"Z+-@<1,\GK`I!!@_D$ M<@/K%9"+V='CB_G1YRZ+A0D1+HF'!Q'KXXO9T>,NB;<'$8O>B\/1X]'C`]C1 MXU@NB8<1$5HSP(K&+HF'$Q&*PBZ)AQ416HK&+HF'%Q$NQX<9$0$`7UY:65M8 MRRZC0Q'HG_.`_`-]`^M"D%97!AY24;19,]O-(5J*REH?!U]>/5,`=2$N@3Z1 M#/\`=1@NH8L,+HL>C0PNBPZ/#"['!I$,``#K&I`NHT,1ZPJ0+J%#$;L$#;4! MFO46```NH4,1RS/`,]O+]PF^6PTNBTP<,\"+V"Z+5!`N`U02@],` M+@-T(BX#5`:#TP`N@WP&`'4!0X/"#X/3`(#B\(/&".+CT=O1VM';T=K1V]': MT=O1VHS(`\(]`*!R!K@(`.EI!"ZC[PF+Z+A;#8OP!0\`T>C1Z-'HT>@%(``N MBUP/1XXO3T>,#VBX#'@``@\,/T>O1Z]'KT>N+RP/(+HD.0``NBQ;W"2O1 M.]5RKX'J``8[U2Z+%O<)<@N!Z@`&+H$&0```!HOPB_LNH>T)B]HKV"O92X[` MM$K-(7,#Z>P#B]FT2,TA

'1X='ACL(S M_XS*CMJ+]_SRI8S`C,(KTXO+T>'1X='ACL(S_[Y;#?*ECMB,!O$)NUL-@\,/ MT>O1Z]'KT>L#V([3O``"4+C^`5#+C,F.P8[9B0X*"BZA[0DNBQ[K"2O8CL"T M2LTA

">@#`.F."KE``"OAB_P6 M!_*DB]PV@3].1740-O='#``@=0@V]T<,`(!T!;`+Z2`#B]SHJP*#Q$#H5`"A M%@#H*P.+1`B)1M:A%`")1M2A&@#H&0.+1`B)1NR+'A@`H0X`.P8:`'41"]MU M#8M<"(M$!@,&$@"3ZP;H\@*+1`B!X_[_B5[JB4;@M#Z+7OC-(<.X`0`[!AP` M=POH/`6+1N:)1NCK[[1(N___S2$]"`!T`^F>`BXK'D``/1X]'CT>,NB1Y$`,=& MY`$`CE[BBPX>`.,$BS8&`(M&Y#L&'`!W"^A@`N@:`/]&Y.OL+O<&0@`!`'0+ M!K1)+HX&1@#-(0?#B7;JBT0(B4;RBQ0+TG4#ZW>0,\"+#C(`T>+1T.+ZB\CH MBP6+=NJ.7N+W1`0(`'1-%A^Y!``KX8O4Z-\%BW;JCE[BBTP"@^D$CE[R,]+H MRP587XY&\O?G"])T!K@+`.G&`0O`=".+=NJ.7N([1`9WZRO'B\B.7O(S]O.D MZPN+3`*.7O(STNB3!8MVZHY>XO=$!``!=0/IO`",TX[;48O4N0(`Z'8%60O) M=0/IIP!1C-..VXU6U+D(`.A@!8Y>XHI&U20#/`!U&XM&V#+DBU[://]T".AM M`8M4".LDB\/H>0/K'3P"=`0\`74K+HLV]0G1YM'F+O\&]0DNQ)P$`(S"Z%D` MZTO-/#_-/%_-/)_-//\R7``]HCP#=`/I/_^+=M:.7O*+1MA(/04`=@/I+?^[ M800#V`/8`]@]!`!R!RZ+!P$$ZPPNBP>)!"Z*1P(@1`)92>E2_XY>XHMVZL.+ M=M:.7O+V1M4$=`7H#@#K"_\TZ`<`7H/^_W7UPXI.U(#A!X#Y`W0*@/D`="B` M^05U#_9&U01T!`$'`"+R]'C`\O1X]'CT>'1X4M)CD;B"]MT2"Z+-@`` MB_X#^5$!#B0``0XF``$.*``!#BH``0X$`(O/*PXD`/WRI%F+-B(`B_X#\P/Y M,\"+#AP`B]FY"`"JJJJJ\Z2+R^+Q_,-0N)(!CMB^<`"+#$9&B]:[`@"T0,TA M6+1,S2'#,N0+P'0/2-'@T>"+\-'@`\8#!B(`B_##5AZT,,TAAN`NH^4)/0`" M

!`JT M`9KO#```?\\7'0(/"]T!#PZ=0.+_D\ZPW7B+BLV M\PE7C,F.P;]/"HO.42Z+-O,)\J2,RH[:ND\*Z#(!7EER`^DB`2X[-O,)N'L` M=`/I&P$NCA[M";^<"BZ)/A0*+HP.%@KRI.MID(S*CMJ^4@`NBPY0`(S*CL*_ M3PKRI+@N1:NP6*LRP*J.VKI/"E:T`8ORFN\,``!>

OR"L!T#3P[ M=`DSR3P@=.2JZ^$+R747@?]/"G1-)H!]_UQT"B:`??\O=`.P7*HNB380"B[% M-A0*+HH.&`HR[?.D!A^Z3PI2'E7H*P!='UYS'2Z.'@0*+HX&%@HNBS80"@OV M=`:`?/\`=86P`NL&B4;X'U[#Z1/^+J'E"3T``W(&N"`]ZP20N``]S2'#C,'C M&PX?,_^Y!0"^U`KSIG003[G_[S+`\JXF.`5UZ3/VPXOW!A^T`YKO#```\`B4;HZ(3]BT;H0(E&YDB+?`0STC/)ZQE!0(E&YCL&'`!V`^F]`.AB M_8M&YCM\!'53BUP&"]MTX#M<`G,#Z;``.P8.`'4^`QX0`','"]MT`^F1``,> M$@!S!PO;=`/IA`!T'U&+RYH+&```"\!T`^MZD#O+<@*+V5F!^\@`K1ZM')TGSJW,!JL.XQP#IA?RX"`#I?_RX"P#I>?PN]P9"``$`=%2+P8O:+BL>3``N M&P9.`'(+"\!U!RX['DH`1@`NBS9(`"ZA2@`KQCO(=C`KR)'1Z?.EX-!+IN?O1Z?.E6EE;6,-35AZ* MV`K;=!K\#A^^V0JM"\!T#SK8+HX&[0DFH2P`B]`NB18""DB. MV(L.`P#1X='AT>'1X2Z)#OL)CL(SP#/_\JY)KG7Z+J'E"3T``W(0C,".V(OW M1D8SP$DZ!*1U^BZ)/O,)+HL>^PDKV2Z)'OT)C,F.P8[9OT\*B_4)/0`# M]/"BX!/OT)+HD^_PF+UJSH4O]S!77XZ9_Y/#IT[SPO=.L\ M7'3G"L!UY;D)`(ORK)I'"Z4!?D\+G0&"L!T`N+E*_(N`3;] M"2Z)%@8*+HDV"`HNC@;M";^``":*#3+MB]DF@#D-=00FB"E)04$N`0[]"2ZA M_0DNBP[["3O!

C1Z(O0B]@FBPXL`([!M$K-(7(#ZU*0 MB]JT2,TA

^"Z.'@0*+J$""H[`,_^+]RZ+#OL)T>GRI8S:CL*T2[0F^@`"L MBL@R[>,"\Z0RP*JJC`8L`"ZAY0F,VYIE"P``CE[VBQ82`(LV$`"+1N".V(M. MWHM&UHM>U(M^[/J+9NJ.U_M04RZA`@HNBQX&"E!3+HL>^0F.P[1)S2$S[3/_ MCL5;6,M.104!9``"`+6_AK<"``(``````'@/`0!@<0(``@`!``P`0`!0`%`` M6`!:`$$J``````D````!````````````%@`#'P`-!!\F`-L'`0U@<01"3T]: M`````0``"$1/4T-!3$Q3```(0D]/6BY%6$4````````````````````````` M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` M````````````````````````````````````````58OLN`0`Z#415U:+-CI' M*__K'XM>!(H!F(O8B\8RV"K_T>.+AT(`B]:Q"-/J,\*+\$ M7XOE7<.058OL,\#H]!"+'EX"_P9>`M'CBT8$B8?@!X$^7@*@#W(2*\!04+A" M`E"X9@!0Z.`#@\0(7<-5B^PSP.B_$%:+1@2C+">+1@:C4&?'!DYG"0#'!C(G M``+'!BHG`@''!EX"``#'!D)'``#'!C`G``"#/EP"`'41N`6`4.B8%8/$`J,^ M1_\&7`*#/CY'`'4#Z!H%N/L?4+A&1U#_-BPGZ),2@\0&0'4&N`$`Z08!Z-(! MZ`,!HTQG/0$!=4N#/C`G`'0_@SY09_YT*O\V,">X-"=0_S909^BL$X/$!CL& M,"=T$BO`4%"X8`)0N&8`4.@B`X/$"/\V,">X-"=0Z,+^@\0$*\#IK0"!/DQG M``%U'.AQ`>BB`*-,9Z-$1Z)`1Z(N)YA0Z'4!@\0"ZX:A3&>C/$>A*BC3&>@+B>84.B[_H/$`NLHBS9,9]'FT>:+'CY'BD`"F%#HHOZ#Q`*+ M'DQGT>/1XXLV/D>+`*-,9X$^3&?_`'?0H$QGHBXGHD!'F%#H>/[K$?\.7@*+ M'EX"T>/_M^`'Z/T`@\0"@SY>`@!UY>A6`:$\1Z-$1^G]_EY=PU6+[+@.`.@_ M#U=6H4)')0<`B4;^H4)'L0/3Z(E&]J%.9P$&0D>!?O;V'W)6BT;^`P9.9Z-" M1[C['RM&]HE&\HM^]H''1D>^1D?K"8H%1X@$1O].\H-^\@!_\?]V]E;_-BPG MZ!D1@\0&0'42*\!04+B4`E"X9@!0Z.(!@\0(QT;V``"+=O:!QD9'B@0JY(E& M]$:*)"K`"4;T1HH$B$;X@W[^`'05F+$0*D[^T^"+5O2*3O[3Z@O"B4;TBQY. M9]'CBX=X`B-&]%Y?B^5=PS/`Z'<.QP9.9PD`QP8R)P`"QP8J)P(!PU6+[#/` MZ%P.@3XP)_L?Q`M/F`S8^1Z!`1XA$`J%$1XD$_P8J)Z$R)SD& M*B=R#X,^3F<-?0C_!DYGT28R)U[#D%6+[+@$`.BY#5=6BW8$BWX&@_X#?3*X MS`)0Z),`@\0"N!L#4.B)`(/$`KA8`U#H?P"#Q`*X-@-0Z'4`@\0"N`$`4.@$ M#8/$`HM%`HE&_HO8@#],=0/&!VR`/UAU`\8'>(`_5'4#Q@=TB@>(1OP\;'0< M/'AT&#QT=!2X6`-0Z#``@\0"N`$`4.B_#(/$`HU%!E"-1/U0_W;^_W4$Z!`# M@\0(*\!0Z*(,@\0"7E^+Y5W#58OL,\#H"@U6BW8$"_9T$U;HSA*#Q`)05K@! M`%#H>!"#Q`9>7<-5B^PSP.CD#(M&!"5_`#UE`'0;/68`=!L];0!T+3UW`'46 MN(<#4.BQ_X/$`NLB^5=PU6+[+@"`.CN"U=6@WX& M`'4%N`$`ZR0K]NL!1CEV!GX8BUX(B_[1Y_\Q_W8$Z!$`@\0$"\!TY.O9*\!> M7XOE7<-5B^RX!`#HK@M75HMV!(M^!BO`B4;^B4;\ZPR`/`!T%H`]/W411T:* M!#@%=>X*P'7TN`$`ZRF`/2IU"4>)?OR)=O[KXX-^_@!T$XM>_H`_`'0+_T;^ MBW;^BW[\Z\HKP%Y?B^5=PS/`Z$T+N,D#4+AF`%#H5OZ#Q`3#58OLN`(`Z#4+ M5H-^!@!\'W\'@7X$$"=V%K`$4(U&!%#H#1.P!%"-1@A0Z`,3Z]N+1@0+1@9U M!"OVZS6X"@"94E#_=@;_=@2XZ`.94E"+1@2+5@8K1@@;5@I24.BZ$5)0Z!D1 M!04`@](`4E#H#A&+\(O&7HOE7<-5B^RX!`#HO@I6QT;\``#K#HM>_(MV"HI& M!(@`_T;\BT8,.4;\?.H#1@I(B4;^B]C_3O[&!P"+1@Q(B4;\@WX(`'T'QT;\ M``#K1+@*`)E24/]V"/]V!NA\$00PBU[^_T[^B`>X"@"94E"-1@90Z`<2_T[\ MBT8&"T8(=`:#?OP`=;R+1@8+1@AT(NNX_T;\BT8,.4;\?0N+7OR+=@K&`"KK MZHMV#(M>"L9`_P"+1@I>B^5=PU6+[+C8`.@+"L=&G@``QT:@``#'1J(!`(M& M!(E&F.L)@'Z6+G0/_T:8BUZ8B@>(1I8*P'7KBUZ8@#\N=#S_=@3HH0^#Q`(% M!0!0Z-\.@\0"B4:8"\!U`^AH_O]V!/]VF.A/#X/$!+@$!%#_=ICH`@^#Q`2+ M1IB)1@2X`(!0_W8$Z`\*@\0$B4::/?__=16X"010_W8$N`L$4+AF`%#HB/R# MQ`C_=IJ-1MY0Z)`%@\0$*\!0_W;X_W;V_W::Z)4)@\0(_W::C4:J4.B?!8/$ M!(%^JMRG=0>!?JS$_702*\!04+@;!%"X9@!0Z#S\@\0(BT:P"T:R=0/IT@2+ M1K"+5K*)1J2)5J;_=@K_=@B-1M!0Z`K]@\0&"\!U`^FC!(M>!H`_;'0#Z8T" M_W;$_W;"_W;`_W:^Z)_]@\0(B89`_XM&N+$)T^@E?P")1IB+1KBQ!=/H)0\` MB89"_XM&N"4?`(F&*/^+1KJQ"]/H)1\`B4:6BT:ZL073Z"4_`(F&1/^+1KHE M'P#1X(F&/O^#?J(`=!FX,010Z&O[@\0"N%D$4.AA^X/$`L=&H@``N`D`4(V& M*O]0_W;`_W:^N"``4.B._8/$"E"-AD;_4.CG#8/$!+@%`%"-ABK_4(N&0/^9 M4E"X(`!0Z&C]@\0*4(V&1O]0Z($-@\0$N(4$4(V&1O]0Z'(-@\0$N`D`4(V& M*O]0_W;$_W;"N"``4.@T_8/$"E"-AD;_4.A-#8/$!+B(!%"-AD;_4.@^#8/$ M!+@#`%"-ABK_4(N&*/^94E"X(`!0Z/_\@\0*4(V&1O]0Z!@-@\0$N(L$4(V& M1O]0Z`D-@\0$N`,`4/>N0O\#!D(%4(V&1O]0Z'\-@\0&N(T$4(V&1O]0Z.(, M@\0$@[XH_P!T(H.^0O\`=!NX`P!0C88J_U"+1I@%4`"9N60`]_F+PIE2ZPRX M`P!0C88J_U`KP%!0N"``4.A]_(/$"E"-AD;_4.B6#(/$!+B/!%"-AD;_4.B' M#(/$!+@#`%"-ABK_4(M&EIE24+@P`%#H2?R#Q`I0C89&_U#H8@R#Q`2XD010 MC89&_U#H4PR#Q`2X`P!0C88J_U"+AD3_F5)0N#``4.@4_(/$"E"-AD;_4.@M M#(/$!+B3!%"-AD;_4.@>#(/$!+@#`%"-ABK_4(N&/O^94E"X,`!0Z-_[@\0* M4(V&1O]0Z/@+@\0$N)4$4(V&1O]0Z.D+@\0$C4;04(V&1O]0Z-H+@\0$N)@$ M4(V&1O]0Z,L+@\0$C89&_U#H4/GI"`*`?L8!?PAU'X!^QP!^&;B:!%"-1M!0 MN!0%4+AE`%#H4OF#Q`CIY`&+7@:`/W1U`^G%`(-^G@!T`^F\`+@`@%"-1M!0 MZ)<&@\0$B4:>` MOBC_>70C@+XH_UET'("^*/]N=!6`OBC_3G0.@+XH_V%T!X"^*/]!=96`OBC_ M870'@+XH_T%U`_]&GH"^*/]N=`>`OBC_3G42N+<$4(U&T%"XN010N&T`Z2;_ MBUX&@#]T=0?'1IS^_^L5N(`!4+@!@U"-1M!0Z,@%@\0&B4:<@WZ<_W49N,,$ M4(U&T%"XT010N&4`4.@_^(/$".G``"O`4/]VMO]VM/]VFNA6!8/$",<&.D<` M`"O`4+CA!%"-1M!0N&T`4.@/^(/$"(!^KP!U%_]VQ/]VPO]VG/]VFNAN^(/$ M"(E&J.LJ@'ZO`74._W:<_W::Z`7T@\0$Z^>XXP10C4;04+@4!5"X90!0Z,CW M@\0(@WZH`'0CC4;04.C&"H/$`H-^J`%U!>A&^>LQN.4$4(U&T%"XYP3I5?^A M.D#Q`+'1J`!`.L*N!(%4.A6]X/$`HM>!H`_='0)_W:< MZ&T$@\0"*\!0_W:F_W:DZ>WZ_W::Z%@$@\0"_W:@Z,`#B^5=PY!5B^RX!@#H M*P2+7@2*9P,JP(I/`BKM"\&)1OK'1OP``+`04(U&^E#HW`N+7@2*9P$JP(H/ M*NT+P0E&^HM&^HM6_(OE7<-5B^PSP.CG`XM>!(IG`2K`B@\J[0O!7<-5B^RX M)`#HS@.X(@!0C4;<4/]V!NCV!8/$!HE&_HU&W%#_=@3H-0"+1OZ+Y5W#58OL MN#8`Z*`#N#,`4(U&RE#_=@;HR`6#Q`:)1OZ-1LI0_W8$Z(X`BT;^B^5=PU6+ M[+@"`.AR`U;'1OX``(M>_HMV!HH`BW8$B`#_1OZ#?OX4?.J+1@8%%`!0Z%W_ M@\0"B]Z)1Q2+1@8%%@!0Z$O_@\0"B]Z)1Q:+1@8%&`!0Z/3^@\0"B]Z)1QB) M5QJ+1@8%'`!0Z-_^@\0"B]Z)1QR)5QZ+=@:*1""(1R"*1"&(1R%>B^5=PU6+ M[+@"`.CK`E;_=@;H]?Z#Q`*+7@2)!XM&!D!`4.CD_H/$`HM>!(E'`HMV!HI$ M!(A'!(I$!8A'!8O&!08`4.A^_H/$`HM>!(E'!HE7"(O&!0H`4.AI_H/$`HM> M!(E'"HE7#(O&!0X`4.B9_H/$`HM>!(E'#HO&!1``4.B'_H/$`HM>!(E'$(O& M!1(`4.AU_H/$`HM>!(E'$HO&!10`4.@>_H/$`HM>!(E'%(E7%HO&!1@`4.@) M_H/$`HM>!(E'&(E7&HI$'(A''(I$'8A''8I$'HA''HO&!2``4.CB_8/$`HM> M!(E'((E7(HO&!20`4.@2_H/$`HM>!(E'),=&_@``BW;^BUX&BD`FBUX$B$`F M_T;^@W[^#7SH7HOE7+]Q^_<0:#^PUU%+$$K"Q!=1:,\!04(O<4+K*#PY2%E.:__\``%A8BP[,!N,IBS9& M!<4&S@:,VC/;-O\>R@9S!18?Z<8(-L4&T@:,VKL#`#;_'LH&%A^^U@:_U@;H M:@##58OLOMP'O]P'Z%T`OM8&O]8&Z%0`ZP-5B^R^U@:_U@;H1@"Y$0"[`P#V MAW$&`70&4YK__P``0^+PZ'4("\!T"X-^!`!U!<=&!/\`Z`T`N`$`4(I&!%": M__\``(L.S`;C![L"`/\>R@;#._=S"D]/BPWC]O_1Z_+#`%F+W"O8<@H['J8& M<@2+X__A,\#I&1@*=Q!OV+Y5W#`%6+[(/L#K=`'O]V!!:-5OY2%HU6 M^%(STE)2BTX(Z(8!BT8&J0`!=`B`RA"I``1U**D``G0@@,H"4(U&_A[_=@06 M4#/`4%":__\``(7`6'4(BT[^ZP.`R@%14B4#``K'4#/`4%":__\```O`=!8] M;@!U#O;"\+H"`'0#NA$`Z>P)Z8T`BT;^.P9O!GX-4)I]$0``NA@`,\#KY(O0 M4!:-7O13%HU&^%"::!````O`=6&+1@8SR:D`@'4.J0!`=0?V!KL&@'4"L8"( M3O**1O0\`74'QD;T0.F.`#P"=0?&1O0(Z8,`,L"(1O0*R71Z]T8&`@!T!_:'<08(=!"*AX4&/`IT"*I"2<:'A08*4P9748U&^A90FO,2 M``!?"\!T!KH)`.E<"(M&^@O`=1(+VW4.]H=Q!D!T!X"/<08"ZPD#PO:'<0:` M=02+Y5W#@*=Q!OM65XMV!HO^B\CC)K0-@#P*=06`CW$&!*PZQ'0;/!IU!X"/ M<08"ZP6(!4?BZXO'*T8&7UZ+Y5W#@_D!=`>`/`ITZ>OD]H=Q!D!T(@O;=1I3 MC4;Y%E!1C4;Z%E":S1,```O`=`5?7NG8![`*Z[O&1OD`4XU&^19048U&^A90 MFF(4```+P'7>]T;Z__]T-(-^"`%T,_:'<08(=1Q3N/__4%#WV%"-1OP64)HJ M$P``@'[Y"G4.Z77_BD;YB(>%!CP*=`*P#>EB_X!^^0IUQ^N;58OL@^P,BUX$ M.QYO!G((N@D`,\#I30?VAW$&('024S/)45%!05&-1O064)JO%```]H=Q!H!T M;XM6!AX',\")1OZ)1OS\5U:+^HORB6;XBTX(XU:P"O*N=4OH4`<]J`!V2H/L M`HO7^F"`.ML,\#I4/I04U&+SRO*XQ^+7@13 M'E)1C4;T%E":__\```O`=1"+7O0!7OX+VW0&65M8B_K#@\0("\!T&#UM`'0- M/0$`N@D`=0BZ'`#K`[H@`/GK(/:'<09`=`N+7@:`/QIU`_CK#KH<`#/`^>L& MBT;^*T;\BV;X7E]R!(OE74E&-1O064)J: M%0``"\!T%SUM`'0-/0$`N@D`=="Z'`#KR[H@`.O&BT;T"\!UN_:'<09`=`F+ MVH`_&G4"ZZNZ'``SP.NH58OLBUX$"]MT!(!/_@&+Y5W#58OL5E>[J`:#/P!U M*1X'N`4`Z%D'=04SP)GK)$`D_J.H!J.J!I;'!`$`@\8$QT3^_O^)-JX&BTX$ MC-B.P.CO!5]>B^5=PU6+[(O7B]Z,V([`BWX$,\"Y___RKHUU_XM^!KG___*N M]]$K^8?^BT8$]\8!`'0"I$G1Z?.E$\GSI(OSB_I=PP!5B^R+UXO>BW8&B_Z, MV([`,\"Y___RKO?1BWX$B\>H`70"I$G1Z?.E$\GSI(OSB_I=PU6+[(O7C-B. MP(M^!#/`N?__\J[WT4F1B_I=PP!5B^Q75AX'BWX$B]_W8$,\!04)K__P`` MAK1V`O;=?3W\8OP]V8*D8M&"/?F`]%R##M6 M!G<'<@8[1@1V`4XSTI9/=0?WVO?8@]H`6UY?B^5=P@@`58OLBT8&BUX*"]B+ M7@AU"XM&!/?CB^5=P@@`]^.+R(M&!/=F"@/(BT8$]^,#T8OE7<((`%6+[%-7 M,_^+1@8+P'T11XM6!/?8]]H=``")1@:)5@2+1@H+P'T0BU8(]]CWVAT``(E& M"HE6"`O`=1B+3@B+1@8STO?QBT8$]_&+PC/23WE#ZTB+V(M."(M6!HM&!-'K MT=G1ZM'8"]MU]/?QB\CW9@J1]V8(`]%R##M6!G<'<@L[1@1V!BM&"!M6"BM& M!!M6!D]Y!_?:]]B#V@!?6XOE7<((`%6+[(M>!/]V"/]V!O]W`O\WZ'K^BUX$ MB5<"B0>+Y5W"!@!5B^R+7@2+!XM7`HM.!NC#!(M>!(D'B5<"B^5=P@0``%6+ M[(M>!(L'BU<"BTX&Z*\$BUX$B0>)5P*+Y5W"!```58OLN/P`4.A4`H,^L@8` M=`3_%K(&N/\`4.A"`HOE7<.X`@#I3O96,_:Y0@`RY/RL,N#B^X#T570-Z,3_ MN`$`4.@;`K@!`%[#CP:V!J%$!8X>1@6+\$YT!H!\_P!U]S:)-I\&-HP>H0:6 M]@3_=0&6-HDVM`8STK\!`*Q""L!U^JP\('3[/`ET]PK`=&-'3JP\('3L/`ET MZ`K`=%0\(G0D/%QT`T+KZ#/)0:P\7'3Z/")T!`/1Z]>+P='I$]&H`77.ZP%. MK`K`="<\(G3"/%QT`T+K\#/)0:P\7'3Z/")T!`/1Z]^+P='I$]&H`776ZY\6 M'XD^F08#UT?1YXO'`\(D_NBI`W,&N`@`Z6GUHYL&B]@#^!8'-HD_0T.+-K0& MCAY&!:RJ"L!U^NL#,\"JK#P@=/L\"73W"L!U`^MQD#:)/T-#3JP\('3B/`ET MW@K`=%H\(G0G/%QT`ZKKZ#/)0:P\7'3Z/")T!K!<\ZKKU;!GSJG,&L"*J MZ\E.K`K`="H\(G2_/%QT`ZKK\#/)0:P\7'3Z/")T!K!<\ZKKW;!GSJG.> ML"*JZ]$SP*H6'\<'``#_)K8&CP:X!HX&1@4SP#/V,_^Y__\F.@5T!O*N1JYU M^D:+QT`D_HO^T>8#QNC+`G,&N`D`Z8OTHYT&B\^+^`/^B]@&'S/V%@=)XR:+ M!"8[!E`&=1!15E>_4`:Y!@#SIU]>670%)HD_0T.LJ@K`=?KBVB:)#Q8?%@?_ M)K@&58OL5E>X__^.V([`BU8$OMX&K3O"=!!`EG0,ES/`N?__\JZ+]^OKEE]> MB^5=P@(`58OL5_]V!.C&_PO`=!^2B_HSP+G___*N]]%)4(O$NP(`4QY24190 MFA<6``!;7XOE7<("``$6`@(#`@08!0T&"0<,"`P)#`H'"P@,%@T6#Q(0#1$2 M$@)2#5,-5PU9"VP-;2!P''()!A:`"H$*@@F$#:0+S@+7"P`-"!:C;0:)%F8& MN/__F8OE7YS\HMW`ORMB_ZH`71"2#O!L%`_G^3/Z+QHS:C-$[T70%)HP>P`:)?P+#)L8&Q@8" M/?[_="6+_@/PK:@!=/*+_D@[P7.]B]`#\*VH`73B`\(%`@"+]XE$_NOFBT<( M"\!T!([8ZQ0F_@[&!G01C-B,USO'=`4FCAZ\!HLWZ[R+=P8SP.AJ`#O&=`TD M`4!`F.A>`'0-_DW^Z!P`=`663D[KF8S8C-$[P70$)J/`!HL'B4<",\"9PU&+ M1?ZH`70#*\A)04&Z_W\F.Q;"!G8$T>IU]8O!`\9R%0/"<@WWTB/"*\;H#`!U M"/?2T>IUY3/`6<-24>@=`'085XO^B_`#\L=$_O[_B7<&B]8KUTJ)5?Y865K# M4U`STAY24E"X`0!0!A_H:0"#Q`B#^O\?6EMT`@O2PP`R[>,&T>#1TN+ZPP`R M[>,&T?K1V.+ZPP!:BQY.!0/8FO__``"%P%AU M#$F)#D@%AQY.!?CK#HO<*]AR"#L>I@9R`HOCB\/_X@!5B^Q65P:#?@@`=3B_ M3@6+5@:+1@1(=0?H5P!R)^M,BS9.!DAT$3OW=`V+1`*)1@Q6Z#X`7G,T@\8$ M@?Y.!G,$"])U!KC__YGK(5"+Q%(64#/`4)K__P``6_F%P'7FB12)7`*)-DX& MB],SP`=?7HOE7<.+3@R+]SE,`G0,@\8$@?Y.!G7R^>LLB]H#''(FB]..P3OW M=08Y'D@%8;`0"*``,!HAX!`"(``P'M'@$`)@`#`:2`M M($-O<'ER:6=H="`H8RD@,3DX."P@36ECB!Z4`I`>O`*X`J0>H![L`N@"]![P`MP>V![$`L`>3`)(`E0>4` M)\'G@>9`)@`BP>*!XT`C`>'`(8`@0>`!H,!@@&%!H0!CP:.!HD!B`&;!IH&G M0&!MD!V M`'+!LH&S0',!LF0ZVQX='T@87)C:&EV95LN M>F]O72!;(&9I;&4@+BXN(%T*`&)O;WHZ("!W87)N:6YG.B`@`&)O;WHZ("!E MB!I