Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!mailrus!iuvax!bsu-cs!ibmbin From: brad@looking.on.ca (Brad Templeton) Newsgroups: comp.binaries.ibm.pc Subject: v04i051: abe, an ASCII-to-binary encoding system (part 01/02) Summary: abe.zoo, an ASCII-to-binary encoding system Message-ID: <8282@bsu-cs.bsu.edu> Date: 19 Jul 89 17:46:11 GMT Sender: ibmbin@bsu-cs.bsu.edu Followup-To: comp.binaries.ibm.pc.d Lines: 522 Approved: dhesi@bsu-cs.bsu.edu X-Submissions-to: ibmpc-binaries@bsu-cs.bsu.edu X-Questions-to: ibmpc-binaries-request@bsu-cs.bsu.edu X-Repost-requests-to: ibmpc-repost@bsu-cs.bsu.edu Checksum: 3183431842 (Verify with "brik -cv") Posting-number: Volume 04, Issue 051 Submitted-by: brad@looking.on.ca (Brad Templeton) Archive-name: abe/part01 [ Type "abe -?" for a help screen. The abe format may prove to be much more robust than uuencode and atob for Usenet use. An advantage of this format for source postings is that after encoding with abe, the source remains quite readable. Yet any control characters (and white space and tabs, which BITNET loves to chew on) are converted to other more network-proof characters. Abe also uses a 32-bit CRC and so will detect errors that uuencode would not. Abe also easily handles multiple files packaged together as well as doing filename conversion to a lowest-common-denominator format as needed. Source was posted to comp.sources.misc. I took the manual from there and formatted it and have included it in the archive. Abe for MS-DOS does not currently handle wildcards. I have encoded this set of postings (in a zoo archive) using abe's uuencode-compatible format. These postings should be extracted as usual with the "combine" script. Because they are in uuendcode- compatible format and do not include the additional information that abe can use, the abe decoder "dabe" won't extract them directly. However, if you modify your "combine" script to become cat $* | sed '/^END/,/^BEGIN/d'| dabe it will work just fine, and dabe will then use the 32-bit CRC to check the integrity of the file at the same time. I am enthusiastic about abe's format, but user acceptance will ultimately determine how common it becomes on Usenet. Try it out, and give feedback to the moderators of all the relevant newsgroups (not just me). Checksums obtained with the 4.3BSD "sum" or System V "sum -r" command. checksum size (bytes) file (between BEGIN--cut and END--cut lines) 17710 28319 part01 46373 27404 part02 checksum size (bytes) file 14157 40173 abe.zoo -- R.D. ] abe part01/02 BEGIN--cut here--cut here ;ABE ASCII-Binary-Encoding (by Brad Templeton) ;Use 'sort' and/or 'dabe' to decode T./z$$filecount=1 T.0s##S1000,1000,1000,UUENCODE T.1N$$blocking=false T.2o$$linenumbers=false $$uname=abe.zoo $$os=unix $$fname=abe.zoo $$owner=ibmbin $$date=616824802 $$perm=33188 $$size=40173 begin 644 abe.zoo M6D]/(#(N,#`@07)C:&EV92X:``#+@((`,#)`7X#CED$4,8@@%LF-:IARM6CAGA=S&0'ZH!^`Q(9P-`NJ7_IJ9K M]T\I@'MN^"W"ANMBHD,>(KSE$,$L6K78%DU]"R+"(B_\C!U"L<%KLW^#_""L MLY4&@+\$`/T`P#A="@"XN`"`\L\.`7180`PB1B"1$7V)]0&@L[4!@,X$<'W9 MC(Z=@]$$TJT`,,@'A0`"6*=3@#D.[6JWB0F0J@_>@;:`H/S5I^C(`4Q0T,$2 M@;OW[^!;"4[_]T3`H#\"`/39ZN"Q%WV+;OP[H(B`"G+I$KRVHP^=BPZC"6": M/T!45@%F2Z'ESUJ#'$)7`(-<$I=7O#C$'SIR?!!@.HJ\9H,V`:`#C6C*C0(! MA#ZNDS"@<;>/'%(N5T,YL2`\TQD#B`P9I7/./ZMBV>JK2_+PV*GWN-#J`*?UL-&2*I1*:SK:T,FL MLP%`JT\N"::SUB*?]!7-.'KY\Y8*'*23S3_I_$&L`2IXX)"5%YEY[B(V:+#! M(#BHM]44UHIE#IV`[=OO!HM@<.X@O["[8CHPN'>F!"!TJ"^Z"S>,R&`,`\8O MQAUBAPX_%`2XEF#`!I`.+,2>5I4?JF6UU1P%UTJ676[`E]`_$+8Q&8\9@8L2="LM-MJ=JZC>VU.V&,+]T+5O'?]ESEO>Q!`9^:@X\@$*GNA3MT,K]XZ M[4`DDOB37LT";QK_Z,FGGX"VQ10S&4`%V>!E$K`(%0+D<(4`ZZ4C`0!^;'4` M`#D<<,=62\&%0]+AI?79H7WOB]_\A..:_@DG@(N#4HZ\E/2,%%>M`! MA_19P3O`$4X&,%.%`'#&,^@(`0=PDG<>`,0+G@J("0F%%(&0B%PBY1SX280$K6J53`:B,('AC`!Y" MR`(YY",$'O!'"3P`2R0(P"(L8((`*((8BA"'(JRA`GN4P"&!$,<_FC@##R12 M!?\XU[X>`8$%+.(6$EC`#)`Q`WDDP@&)3(0-&AD*%"C2`BIP)"0E24E+8E*3 MG/2`+4$I2G21TI2H5"4K7>D`6\HRE^E*1P7W=,'R;1`&7OQ@BCA2&1E@24M] MW(#?S$C#?X237R?JT'W2T0:O0,!#/;K&OY3SPACVYH>5@:#+E&!&/)''/.@1 M6#H.N0@/X"D^\ZG/.HEC(SR)Z`(!&M`0_R&<0[Z02AQIB\OTPZ1H3G-\&$P* M`YB2B`M`Y87?`0"G.*(7`H1J2?9P&9@"AS`GLF\1`#`-/G`AK1/B`QV1`%)I MC$"/J%6F'*:B1V?H@8Y19""B1K#'7_"AB.NDXQ+[86HDGEHB9@2`CLYPV2V6 M18]10",`H?#J`@P05N&,](5>!0(G7AC6Q5F"K*.0QO)LH%=TU`%(`NA!>_ZP M%0284:_&.$)[TH&S%UHC`"PEZBBPX3(R+,L>HP`12B'KE2ID%1TF#9RL"L!VS`K3%V"P?< MI6 M)P"82`<6EF4G9;A,#^P=Q6/389S4X#:`3MKN#6'@LBSPAF;W5:D!^)N>=!P! M`'+3ARAHX#(?,$4<$E@M+MC@6B8<0+:[X2UN4[';,N!6%;MU`VZ9L5LYX!81 MS/TPO(0!+Q,\S@?<6)Y`6[0'UQK@PLHI:(S-&>-]&0$?<\E`.AK@#W2L0[4V MX"\Z`@"!`/4FQA-;RF8Y8J,8HT,'L55.;_2*6PKP!L:0)>QP,`,)U[;"`$X& M,VY=H-*I>"K&6^+'D@J#.W[8:F/_N$5HT?$!WB@G'>B`5XLNDIU#!LA\TL0B M-;68E'>BXQL4,)0/N"RHZ"&3+&DUU`O#X7OR/*, M4)@*>P0('478J924=Z<>)O)>!FBD0WKCWHE!"1VAV,]G`K"/`*4U`&L-:V7T M`QMT+&`!KW;#`TX6`*-N90A84BM;\]B8;-\RK#FP``DV4#\2X&\K^D&2"#8P MAZW\;8+9,02TE8..)"B@V;U0P(9D\8]C)YO;8S9?=L(P;P&@@Q[05@QN&6H# MAY[!`@'*8D@SPQ1K3$#2B/*U5\)0)2.0`HA&0(40_8`*!"S)":,."RJ2F+=\ M$2XL_C"&$%PA@L'Y`^8RIWEG4($.$'0ZQR\_%2)F'@K^)K'-JABY*DR^%Y8P7)<0`DMIO@+*4;)K@$@(Q%."+L72!$64B@" M9#:'^=!=D0YH6,@4Z%@%`U06='_,/1V?@!=.I9+T_ZH"`DOR\-.C;H2IM[GJ M_V6%`);DF*VS7.R?XUK:HQ$.S@\@&*91.]L]_G;"Q%WH,T_',^Z.CAKL'>@W M1SW=/0&O`]D/``L`1F46L%MN;@4/\')YS&<.@$N[(CLE(,"&:N$/B9?O(NBX M@@2@4G27'0@=WK0,4_3A,B^A0Q,-2$<'O"*HW%>&'+W'K29[D)[*S"G1SL^@ M%9@2@>E'169,&<`@2`DS#A`C,<(Q`193>M53(Z(+AFH`.?R=EPS@(KP".P" M#>$@`,%``!XP.`RH#PYH)@IH@[3B@!B"#VNQ@_S1@T(`=:M@,1O(+@$@''@` M@A'@1B(H1Q:(@1I(@!P(`&*F!4X(A10XA298A2K(`47$@PU8A#H(=T-8AJJ` M#OUP#T&(AC?H@^O@AM@@A'%8A.E@;AL3A@2@!V2(@V8(&'9(A*J0&D%0/Z:P M(/PA@P`N:A M')DP``8`@1-@`@P!)YX?X[3>O=@&OPPB4NX%8L" M!P+(#YG'`::!"HDA<@>8@'!(B.GP`Q$8`1,X@EY(+E58@!VX%5+@A-$HD%](D%`D`&9C2>8C.BHCFB!"F8W".E0&FDW"/G` M=`;F'J;P=MZ@2/@8B/PPB&J(#@"PCRH)B&OH#O7PAO=XAU"7$7\H-ZA@'SDH MB/T(DX98/WV@B/K`B,5G!(^(#BC@#Y)X%90(0):H7_"W:!,'?8/@`%#1&0[0 M&0S0&?=F!PC0&08`&VV!`-E1!1$P&@Z`"^=@0F69'4>0EJ0!;^CP"TVF'+:( M"PB!#CZ`E?>G-_AB,8,3&0%3&4=49^F0#@BC%IY1,@%P*E.D+?Z0"0%@`!80 M`1%@`1C@%U-!F0:P;IDY;H#@`QY0&)6!!)@1$9*2#B;4;(``<<1@`%$C''%" MEN_@E@!@EMIQEVCVF1OP1^,F;+A``0*P(R:P`>A0";R9#GD@;.GR1D"`C=KP M=LX``-@1"J4%G=))G=8)!=@9`)DP`\*P`L(`+@`P#?@@GN2IG>+(G=>9G>I9 MGB.%GO'YANW0G;B``<5I(\>)#B=PEUMIF1#BFP4P".)6&!ZE:"!5/A@0(A30 M`))V5KCU5@;0H-"W`E#Y0L>)#\]Q`_LY2\B)#0^`&[AP!A_:G\HPHJ31&X^% M6]1@1OQU+GE&``UA`Y35"(:@#OZ0'9`@`:-A`+C`",6)HSJ:'7*@HJ5A".C` ME+ZPI!-S2$2ZH[C@",6)#@+`E*01I9+"CL:)G&B@HF7B"4OZ3^>1'O5#4&*Z M(/)!'_:!'PQE"TN*#F;P>@*R.06R%=Y44,=)I@%5/_)4`>`"&TZ M9!ZRIW:@#NA@#J^7&YS@$'!:9(P@([AP#">*G+:!&\9@`*7Y7XL!E2UUB3J" M"_FJKB@#U4*#!!"&GE)$.B0"PL`%9WZJ9U:`RSE`3$Z M#C,Z`+B`#@,@*7#3^@@"Q5K!9>&"Z1H"'))`+.Y%1W2 M&79G!\Z`"U9`K49@#=D!!G>)`)=&M+B@!>I:7Z2A%[Q0`K0Z(.D2"P,P#:-C M!?X0"P8P#>JP`,*0`*>2+J,@`Z?F#[(AM$3+9[R9M)(B!NI:,;C1&A@"<6&EX8KL2&R#`F0E0X;"#[0H)M4/RVB!^IZ`IMK'CX@H95Q6C9B MNC9P5KB@"=1J"*^1'5\Z&@B`"Z*0N[N+#DKPJ*.PIQ6*(L?YI,6GN_\@*:2@ MKM>`&H6[H(?+%%$0NE8`L#BRK#:20S;"0S92L+CPN(\;#)*;'?Z0'!)@/J.P MF:15%U)B2";R`.X[;CCD0@9@2[B62PZ!N;!`O0(PFO`J'.,WFI_ZC+C0#C0#$J%0J/@K9QKO4F!JY2` M`-1G2XN42_<`#?<@#:-H(X9D(X,$BJ*X(YMI(Y>)#C&@`#7<+SABOIN!"_60 MOOZ9'!:`N0`@P..+(Q,0*?R)G"(P;VCVNKZ7#B.4&*&:#N]4Q>AP"?K6L,L+ M`/H*L8R&"RC`%/MP`-0'K@`7`M\4`$`@*3$0*9>&#=DQ"S_GJD;`Q[A``Y&" M#L1@PNX*K!-C;M^[5SPDL'HC@#OAP:&I`Q2"*#A10Q@20EWM9`7#\01Z[%3&@L(^@HG7J M#]8F?JJS(%Y``(H`!/^`';@`"(5,`D@:SN^$"X1`Q0>$#C>`I.EP!X.)/AQ2Y0/RJK&$2]%>;FQ8>8L$0U58PJDX@8(@")2_4*O/W0OYB`SV$,4S@,DU@ MV`&`$(EMQP+F+T3PV"`@!2[C35,F8"!B62^4<5XQ?NE0?KJW%:N0?I7A"[O5 M?EL1#<&GQA.'J^A``-1G=)?!O:%@MI?DEHX0R9,+"F5LR9/;`_2P(8L%7NR' M6ZOGUQ/G&.C0";I]?U?RSRVP)"Z&F$K4!^LP(-(RC-R3#B,U."F)>LZ0#MV` M&%<1`&*6`__%#P6P)!4C%&X$#,L?\\,2VB"85<"//@9$Z9U%'9UYFXQA^(#N$P`%!1K:;! M"G_!"F'!"G)C`/Z`#"3P`P00`HAP`%+A"OIM`%OB"DLB"EZQ/X-@!*ZP%53T M%ZZ`T-89#?C`Y#$^XS6^XBU^XX.3Y.5\SN@5"P2`GNZ,Y`@-`5HN#>(`".(` M`PH@#$].XR$@Y4;`"E1N!U9NSD`@`)C`M5P^`%4>TT@0`#`(@X`0#CR@`,C@ M#\GPYS_PCFON!2S>YHCP`'E^Y7,^XVD>Y8H^Y0>06PC#"L:P/YAK"/*PLC0- M?:?ZB9X0*6^)#M=0H'-I"J:>F]F1#*H>&[S0ZKJY"[&."]1`Z]G1"K=.#KJ. M#I]PZ_/PZY%PZS)0`)2BFX-PZU*`[*=>![=^",[NZN@0V"2Z"M.NFUEPZ]^0 M[=FQ!+>N`0:0[-G1`[?N!>-^ZB]PZZ.0[M0>`K?.#>ZNFQ-PZQ%P`.2.#@5P MZUJ`[Z=^#\I7O5:]%.B`#P'PB=RE+E,1#69``,QA6/8E9M$YT+4R--&@&"T5 MGE,Q`UJ+"@`G*'JA%EH;#9Z##34@&H$@#[C0#L"8"%K+)-&@*]$`&.DP#-HB M\J@2XA.W081P\'\Y,WBT).:&.ZA"%IU19&.`&#GF!4Z41H=02HEP":F4#M\0 M/E3Y"_>`YS:0'BMP#X'0*1`@!P/@"P```?K@"-<0",3@`2"P#^WV)`$0".1P MP",:@Y=,`#DA@`Z.`"0=`"S#0#"'``P(P!_4R`\`` M!0[P`;I``1U`"PF@^,M`!$\P!2`@`RX``R#P!G(``FP0!G10!J4O!V40!W60 M!JQ/!@V@`"0P`+^X]0#`",.P`MYP#]M`"TJ@^#;`"![@#0A@`1_Q"U&4"R`` M`BOP#)`_#ZI@`BP!-.V#`M@SQ>`#CB``>:Y`N'@"^:``(O`#\@_#Z2` M#D:@2NV`K.F0'0`P`+.O^G)`^I\/`_JO`R`P!700!F-@#8P^.Z#ZS``;>`-W M8/;5/SEP_TJ?#-!_,X#_)0$WD/K.@.H#`60@#=B!-$`&R@`($`-Y``3```6H M`.P?_GN`,$`&\#\C<`!17QIP`V<`!,"!-_`"Z0`(<`-OP`:VP`XH^Q1`+/`` MNL`/=``9T`XFWRY(#[0`""@^"_`!!`AM$`<,(!:,`%W`"3K`.B@'L2`%Z()? M8`6]0198!-Q@!6`#.:``=H`'<`<'0`ZX#V(5#M)!,?@'@&*P>09[0`30#!TP M`'30``"!.RA`X,7DR(/!P0```B;01]:!.QB$!B!-U$$&4`=2@"(@`M=A+9P+ M>W`((`$"R",:H"U4J4@P`"(*$2``N8<.$`!8@`#6@0"`!00``=3!0<`'%@,# M>(37(1J`@P(0"1!`(OB$B^`3)@("D`<)`!TH`!-D'1@K`+"?1"$L-!GYZ4?= M0@&0>_Y`!0B%HQ`$F$)8``%4H0$X!D0@/7B%->`0F(``6`0$2@@&+@`?D0@*P`O`![_$#G@@*',/L,`BX MB@&@6I\P>SB\;/@/%`D7,&=&@`#V@` M2F$G0(0$X!=PA"MP:2)%330`'G%`Y`""*!QVHMQH4[;H"NQ$O6``-`T*P.4A`/.C M`1:!$S!_?'$&2(-[$`]:"F5.E`$UH$2@`3CXC'.Q3*1$J/!.H@& MV8#D10-LL`"V01V@!Y11,M8P._"5$``Z0`458`=8`0-P!]+@`M@!*?&`K``C M@``V@!50`,.1`!C'MO@/ZL`!P(MV<1!H`P#P!;J`,#`L4^32H8,#`"C0P3(( M2R@D"RB`<\@.!(#Z\`R_P"&P0SJ``MYA'1`!5@`=;(*GD6/P07PD`V5,`-1$ M-T`?F2$P6`_I\1\8@SKX&(Z!+4*'`B`^/@)3`@\6@#V@`P]@>QV09A,/L)@I MA'SF,&*AP^O6;'Q`?NP:E\8L+2X44@M>3YG`![`A/DX#:;8(#&3G0H`\=D`,Y@`\(`#E0`:[` M/Z`!S084T$<#D`*49`#@`3MQ'8@#5I@>Z,`(H"@S`DJBD$$P)7.A`*AL*T!) MFLG'-!*UX3K(!?%Q#O`#J$(@Z$#-*6=A`27ZG0/P!-:!)W"2C6DH9H=(,"4' M1$74"_A@!1R#%3`9#X@M@@R`X`GX`T42L:S`%=@%NB"V3(9&Z`&>0T1`!T@" MVD&^3+`.2``0(`'^8!1DRE'`"Q"`)4"*'&$0&(.1Z`]NCBP!!N;/"1``1H`- M'`$P6"($X`MDR#5F6-#!,=@'Y]%]^`$$,``6!%_L9S^F6"2&I6`GUX$%R$K' M$3?D'C]0`&C%.G!T66]9(LI_X`0LHNX!!_:%#JPYXC@*T,&,5`"C0!W,2`.` M!.Z!"7"7&8T4$:YIUKGT$E.8`LA2#AJ``6`#W.4B8&M^P`#8@3$0``D@#P2`5X(.$``^N&%L`,$$$`X`(V"`'J0AE#H`7!!,C!+#W0.2%!0"`P@)"YP!A@4'9"!#6I^ M"$`@<`;1R>])K0!@M;#6`N`5QF"%VCEG`T.I)Q)(E@<32$T#LQ0?Y0`)[:`2 MP&TB@/3`.=-#']0-`>#2"$U<("BR0SVX2Q+,".0")R`5>,$-R"EVP!=<&GD` M!696=G@#-TMRT@$@``AX`!LP[8`C;:)24`&X42 M=4`5T-$S*@B5I!KU!,;`"&P#"``0C8`X,`W@P#1P`]/@#0#B['2=B;$((``X M^CTU0'T@BMB`$OZ`M7D',4$!4`C"\)*V@##@.2]`(,T%&6"+=E$C0+-J`Q25 M&_(`>Q8`U\D`K(#\P3.-IHI`8JI,BH"%J"88@#7*0&**07`D)WK"AQ,&M3WO@'DRP4.01ZX M@B!P#[+!BUL$^T"@/@$<4`#H@`!8B\>@.H84J-`I<^@BN`?_-*`.U(*Z3Q?! M-5!_F%%/,)HK4%$50T;]!P)U$02#^FD7)2J@H*A][S&.`Q>P"+)!1\6HP`"@ MHM2-F@UVP#*P`]]P&2P"160`YL%((@+_8`8D`QU0!/[!'?"%!"`))(%[$`U4 MJDB=J%:@I+J/`[((OH%C1`#C@`&P`@7000>`*A`'^(!X2K]%,`RN:CI8!KPA M'[B#.8`/@L"?6Q!W0`#P@U8P5#T>'1`"2&`'!(,YP#2AP0"`!ZW`K]*``2`, M"D!ZN*BWT!^L`W,P5.D``]`_B8`)^(.IUL\*P#HH`/K''VA6O\<(M$$@T`=9 M[Q>:`.)'`A)`(D`/P\`$="H4D``"R\VA`R5@J![6Q+J$Y,%0#:R#M1CR!TS`#F`D"<`SD+PZ,)/0ES%@ MDHQ5#C2`&38"QI,Q0`0`JE,1Q@`ZQ<()&AL MJ1$?0`ML`8>Z`*1!2+&4@XD?C$H+Q`IX``B@`_N`!R0`.G`/>$`+X`2BD`>L M@#H0`+IL#K@#'X`%P``YL`%$B318!$)5']A9.SL`LL$$N`8#`!L,`FG@.;G! M).@$SC$Z$EJ\*"S)8XSD%^J@%%X`7#!2)`4+2`"<@0:@@VY@PMIB!XTMQL`\ M*(LZ0`X&@;*@`SD@(H9/!A!$$$P!.`*8('NN`PZ@"`H`)N@!FZ0.$`#B:0IK M[5^(/7[G$*A-`"GJO%U@#11`(-@'W$`!S`$$,`7^P078`D-@ M"*P#>3`,0MM36VF);;;MN M$4);(`**CPS:`V$`",SG(U";0&`)Y`%V,`P0G^(;!>0``0P#1V``C)\)X!I6F@!W_1-,"#WC!65\,%>%79P1EX MLU"8``*!&T`'<'<02(]ED;74@2W2#@X`'80B!4`.Z(`"``0>*XH2`'_@`8J! M!;BX'5?Q?0"12W+'P0$X@J_!Y[846L`$%%\<'$SKL0,81#IP`2C*9\@%KD8Y M`()^B%-WX2TL#=DP="*%9,D3JZ\_D(DM(`\RPA.@$)O<.0@$Q\`2VH,"D$-:P#8*!':H$.'`T^<`A&`",X MCR0!TL4/#D!0I`,5X`0+10.`"48!.T"=)'@!&X!]L`YD@5/4F`DX*G)0.K`! M'B$3=L+GEQ!.TGZX#U8P,9R(NW`=/`)\BL($IA=;#6(@)AZ`.H`!:F(XR(_4 M-SZ:@/RX#F#`#$8`-=@?W&`<$!\C0'X$!4^8!*3".CB`):8H1`>>H!X$""E\ M#]9!`_B1Y\(H&A:`"(&G&7E,D+[`.;##.E`!`&(V1`1U\`'OP@%Y`.B$,;#$ M?D]6(H`=`*0.HC;`D&UX!MB#7-#49``YX`>L0`:``W&P#P`!/:@"ZZNII4]$ M8`(EB!B>=T.!%X)[.`+D&P7^`%ZZ`WC)#$P@-XR0`6 MP"AP``O@A?`#!0!*94`9;0'ITYQ`YG5P`LKHFNU*,*XM&X#%?!&L91D%`76@ MT_B`P$P9[LUH5@!*V9PT9B-P2>4?FLF)NN<76`&]M`"R`^S$#5VCC+J`.A!A M#$!B-@*[&?<8J5@7G'D`&W".+^0PIP2LJ0P+-L6%[R3==`.G"#. MZ,`#).5M,%3701!0`"_`'+B`!_`"2#2)Q@`O`$6KZ!3-HE$T/G`!*QI%"P`6 M+0Y@-(ON!RZ@-[SE7Q@*VN(Z``%&(!TDHO&9EPW`$9"?%+9%K@"A&1\]0#IU M'_>`0S2??GE$T`$C<`>&0C$H`%'8GZ&-#SC,J\$"%!2TO`CZWOS0*2X/->!! M!4``UD$*Z`W,<#4(1@]`I@^`3BD6L)A.C\<#D`G0M!50TVC9=0'H]HHH%\!I M^(4MY4("@U$`&/D%Q8+3X*4.J`#[T@=(@!=3`'7`E/8TJXDC_[2B/0O:P$_K M`ZD04SQG[(PJ^<)T8H")22-62VVH9+TA,:^&H8L.I$`6%KFXY\"B'FM09]4VB#1@!_(Z,9Z*6$T< MTB=?7BL>8C#;"-P#&VP$Q3IZ0"S+Z!O%<`;NH!<[`G2X-P#H.I"6'`Q^O3P'$QT.PX9+&::B(*T`Q]`;(3!DJP&4&R;UA,L,`\\P*3$8GP%*N2X!S MZXMX84`V'7@J[GHL_1ATX`6^#->^@V%A8!>7_1VI3<`#C04(_`W3@=WI!_"! MU+!I%AR_DG"JP!ART7Y(FN@@'D0P#KX:&H!DILP`X('2`01NB]!K%%`'O8$U M]\_=\#\50G9HEB@,O[ M,UU]@@$`1T` M#N@`!>`!(B`=B]DTBYK7`19PY8'`S>#MH#H/E?V5X&H/R-U0[J`ASZ`>">_P!]$H`GH`H8]!%( MG9MD'50#>[8:H($3L`)&P)Q(](6>CM&!2Z.PZR`<$/0EL`1VP#R8MJW@$-AI MYKIMP2#8G1%V^EZ&)1.@RJ>Y`/"RPP"5.X%57OP0@%)5J8M`7.2#)`!Q<<^# M1`".P!@(U"+@"NJ`/B@"E^!4+HA^$`W*P0!PO]9/"(R.9W#^!D`_0`K(SQ$T M4GN0!,9!`T@$?@``%($BH-#)JE<7!_,`[0``)FCW(NT_,`%+_?\:@?&H*^]! M.!@7Q#%_ECAM8`EJY,#,"].`DEM'PP(H%$'#&XUR`P$H/D8#&DP6>[$^*@Z`X07KGV,KP[P@!XI%",AD&2(0G()G8!%0!%U MX538EAN`,QA#08E]3I$!`([\@`Y<='P8(-%PF\P7+A*%J0^,5P`601?XADW` M?52!,B%B%T$?4`"*3Y\F3-B9"+Y[(@COQ?0CBMA'4`04@!K4Q>O`-E(#`0"O M'\,LK0,,X*H""L@P"/9!V4Q+^X!S,P!QFP#VX-GVG.%ZI&;5OH?QN*I0#]0?_>Z`[3(!6`,H@$ZF`/C\1C,@!:/ M(=8!*4@"T2`=S(-2,`<*0'TP`:4[I+I4I``9*"%K7T(%`/*E`_;S54#[[0!`5EX!!"3(*Z`6?"M\0`;C8`/0@@;`"G0`,2#`/$`#.,?5 M?@D_:^D^`N)@'2AI82`LAX%'6D(7/=#1@7:P#II":M^#&>#>*KY[(`P40AU0 M`(W``D`!!?#D\VTU@`6P^05TJD5??!0]HX?R(4`."(-0J`$2PY`$`3IU$42# M'"$$%%\NX`BC:=%OZ0,`"QK`:%P'E.#52X)4KP`P=39@BB\5>"?,3GD+@L`L MT`*U(&.0@%H+C4$`6:4#',`('`$=<`[D@`'0`>,@KPJ`3`0\!-XPK,/=#`!\)QG@'QE_LS;QA8P`.B` M5#$&2`#=LP.22N%W>C2(\ENA&K2DU"XXMT(V;_*[L5-"/GZ@/GB%/A@'94!:`0&!6@=D M0(!]!BM`&=1U"*#X.,%A[012/@&L@R00"E^`%$T/ND`*,'HE&`)R_CJ@`9S^ M"UZ#=5`,7G[,K_DWW^AK`/-C`1C\'C0E]?@'J/D!@`^4[ MX-T^VR@R;:OMM%DY4`!@@6<]`)"`!TP`H`H+)L`N0`0*X!HTX;.K)[U^(W``0!`VR7C+6@21.`+S32@^`?3)YST%7!_VJH M`,>_10X`H6DC(#TZ0(<_:AWT/0\`Z3>=&8'T``'0#P!T"N`*`&"=@!G`1K%2 MX.7+HG)=AE59Q&X0.P-7K"RR0V`0'P0#^@Q(QPN`2`0)_)RX3@$5\%`0ZQN;`(BX(HHU;=`B.@D1&_"TZEBD7`0#W\BV05F?#TZADJ%K% MRF!K+D@!JEZM,^!?4YX*!KTS@JM-V7>+D#4J$F!1MDPSA*T0EDL`@&GX^OZM MNZCI@&`#AA4H`"#J`:^)_?UEJF_E@#H2$9P=U0(@D(("/AG43$NL; MS6?!Z#H+3@?H8Q"A0H81)U:\R.[*(C\&$BM8@&^1%P2+G!"@L^!>N$7)A]TS M8V!`=>D#KGWI(@P!@%^R%"SZE@L"`(;S5#T$1J<"]5@#IKT;L$]6`$7(`(4[ M((TX"%2PCCG#1#%????EMU]__P68!4.$5$!'`$!8A)$55Q@PB!_BU8'#+YP( M945Q1A"`1!T'H#,%`'*8'#"'"5QZN4TTZWCJJ:0)#)!-*-X@L`(VC@!#BQ)FRM&`I&Q: M<*DDAQ"P2#08LJ,<`8"<8<`SOV&D$0$=^0)/G/^L0X$]1'`(W9"%Y#,(,0(` M4>$12B*0@PVX(#"'.4_U1M&N,OR#B`_$F&>$`3*TDXIX=`A0"PB(N#",`B4, M`$`/_-910"!V&(#0(E80@`L`0Y@YQTF;[-1N724`4$`/%*N(2P$1Y),F/\88 M4(P"`422"@!]+F`PP@J;F0XH`*3"+QU7E`Q('5+88\`Q"M2\!"P"*&#`NBG3 MTL.KQTR2,!%FVB-,S2WD4F6NN`@@A)GW9*.+,`K0\H.9"\!G`2`^:*U!'0]< M+3759LZ0#"U`F$F+#V8JTBX)`P`M],%$O[I#.J-0U2X``4PZ-0#IH/'/QR$# M\(\="*"S#0!9).($`N_BO.X_*M[3KF!H^>>4WCPP?!(T^V"N@.8'<&Z`YS), M$O?<==\=M'EZ%WTF-CB'/#@%G".`$(^`)!/`)"D?M'`(DZ0S,7`PI:,(`,!] MG"_C`Z/SA>24%W?PN[2,?F83BV!S_,HAW!,,0G40($,R"L4"`>L``%&'`_+7 MK`#..M<\P/"`*."`?`TO`$DSTR*&P31`T*%_R0`"(AXA@`08XQ#N$$\Z,+`/ MX(1"0/>`1J]&,(Q`C`,`P$`%_P"QC``DP@L$J$A'FL,N7)5H.`BX@@<.P(]) M*``^$QA$/A10OZOD00&P:($J[K&-04B#*MI8Q#TD,0-I?&U>]XC')*IHJVD0 M``8\R($=!$"`$ZAB$<)8P##J(`Y$%.`)K#!$`1!!A'\\04=RJ`<6(C*LC+## M6!ZQ@3H0L`![T`$''9H*'4``AG```8QT`$(G%`'-K`!!'!X0QK<0(=R@B`,)(!!&YX0S25*5`0E&`.`*#"'=Y`3W[.`01S&$,8 MW,!0A^[3#F%(`QO"(`8VE`$$;P#I'.CP43(`&8:U+`& M-K2AH7"(@QQ>6@<[W`$/>=`#+A&"$%Q*=K(`L$(M:1$`A(````D`0`,`4%!: M_H-Q_]AL:$GK`AUPP:HJJ"H,Y'!0.I!AH@`00A@6^@0XT"$-+97H'`IJ6]SJ MEK<@G6A!J?`&C+;AH\(T@TE7ZH8P!/2WDDNH4<,@S(9&-YS!G6RXYTHG"@(QE.$,]]SH>^,+@A,L^`UM M.$%!C0N`$HQ!Q2Q>,77!6H08``#&,I!>%8K@A"$\8:P`V`&,01"$*0PA"4EH M@1#N"$%33R!3#:O9RR#8JY/W6E`YY)0-"]4N2[L+4CL_69^T;8&A M#VUH*MQ3F$3X,0HFFH)A(KH%!9WTH8=P4Q"@H9PKI7,9\$"'7XXAFKMU@S`% MO5;F"G/.@]_K%`[QQEH;+9 MX!E%LT3)P&J".+2G+>@Y18D^;V(+E`Q?<#6YXUWLYU9S##.H<8N+4.ZN[(#) M"\TFD(50!*4C7<(%?0$7BO12*+L!`'8ODH8Y7%R,TG;KTE/O&#I,(Q!OCUG>AOHFX:J^YODS+0WO8<3:@;MA,$/V M@?]+UY\TJ/>D68SL6=S5W7VYW=,Y'=YS5`FZ0 M`$2`47YF7\*W4C#'4640!\/69&7F!M1F;7.@9O?$4C?5<8IG=6E`;SU0?PF0 M`$*P?&O`42BX4ADW7VRP6\JW;,VG=U+F==`'!T_E7'C0`U(57U$%A&F`!PD` M!4>(!TO55..V46YW?#:8?,67@#M(>64`?>757CW@3UNF4BW@=>,V?N:%7H>U M7F/87L7D3Q)V7UZG@RO54FR0!V#&6:A63D,8!O%%ADZPAFZW?776?:E6?75P M?>4W:%FH>.H%AF6@@OC$@E,@75P6@_3FA!HG;1G53R"0>6UW<'EW3ZB7!`>7 M!]95!__7@"P`?(LFB'>67B!P46YP`M%T47*P!BX``B#P!"`57W+8B^B$!C&E MB@VX9@NU`G504%YV>+]X76NP4A^E@TF'5"\%@%4P5CHV5D[U!F?P2]P&`AX5 M:(-8!BYP6K9T#_RR7^FHCNO(CNTX(K8``AQP`;0DCY%U2P)@C[74.KA$".AH M2V#4C@$ID`-)D`79COEHD.R(".)!62[P:<3F`F*PAP#@`D[V;C^@`@FID8'` MD9FED92U6;6T`T/P!4:0!$Q0!%^0!$Y@!$\@6;D(DS&)`C,YDS%IDS<)DT@` M`3O)DSWIDX0`E$$IE#ZYDQQIE(&064FIE$O)E$0I"$\)E0(@E5-)E559E3T9 MDA^IE5O)E5J)`ATH3RD``"M`3",@6015)1[08P"@!0``<9<``+4``-0``/,` M`!$0`#`0`$X0`'*1E@!0)%D0<0!@"0!`"X,!`/(``!`0`"\0`$T0`&R`$!8@ ME1C0``G``)EY``A0)?\@`0T@`0+P#U`@5P``!41`!175E@``"'!`2PC!"0H` M"N78E;84!BE0AX&0`JG``SN0`@$!W*?$_0(!R5,``)D[``#R$JNYI0^'-``` M,!@```$```````````!A8F4N;6%N````````"@`440(`````I`%`````0"DC M*```@P@I@B)&"A`($RI% M781]W[PQ`\+,&SEM0"#6FF;.53=GJ+IAXW/TX,DNQ6:A086T8AU!(I86E&(1HO*'9B2]9EJ!%E/$5QAPMB7;7*ZX>@;UR$7ZJBE0BII4$,=5Y*/"06QF98Z':E3B3(-!$*G M:P)GAUZ.2D0K<($UV"@;Y2*G41LO-3HEG66,^^]E[)4QQAH1MI%IQNY'G5-SG%HTC\379D(";YQ\!PBT)F7M$9K%YA6 M<%S]I<'MM9;:2VNR2.K/6Y4W;-^>0PQ1HW]JF=5^8[<7-PAGI#&SGK!M%W5> MUV&VY>7A$3VBM`5?7D>0#XH5/!K(Z60::FIF%3,8UY6QAF5DD"$1E2=$?KV( MZ4E[?>1#H6DB=LB]*T<:8*&'E1L+7Y$T>)V;P2P(36L2D8:"F)<]"'++"1V5 M;I(QW43)-7DB8&*RQ+1>3F<>:)*K'H8=4"Q-71[:SG+E5:"%#V=499%A&_CV*;7`X#T>T]B0R MV09#&N(09AK3$P"VA@[SRY5",I,^,-['1-Y"#A7N4!DO%F==>+CDPI[0'-;1 M$`1@>$T>RF=*F,DR@%`;PPX5HAS);.4R,8`!#'I6A@?!H0X).@\`Q;,\8U[M M=4/0&I`T5Q_D6'%0%&%#'89R(@N")W&1&1Z+PB@XJTG+FUD:@C7%DTA8J88Z MID07.(LI1R62AHH@J)F'Y(>,JN%)2$[R\'7?80&.PV>03="(Y9<=H4]2) M3VHIFQ4V2779`HL<7*.=-)0%4GRJZ#T?=3X!29%J,5-:\>93F4-1)UF_(J4< MOC>')"UI7>\+@QV4-+;*J(Z&ZU0A?V3$THB$4@%*D0M=G()6%#B!2U!JU M4Y5.[J0LO_Q5CAR'J#RL+B^_.I?_-G/6A61EA?U+PU:SPQGB-(I0PUG5"B42 MASJH%H\(,<+75O`"32:DLO<#$5C7M`+MU$$.6GDE<+67E386BT5KB@D=CIM< MJ*)UN=(:C1E/"M1[Q:.`B)UR*VV5>F'DN<]98M,B?LB'"F^RJ?-"D,YE7(VNB@&\:P MEB>X6R_G'D5;23'5OR0=6678(YKB01BM"]E7OVQWAXAH&`1YX&L^_XFL,*22 M/`I#B!".-]\ZC>LE$4[(,>'K1.OHB+)G''*1=%.>BZ)K:4J.*(H5?6RJC@HR0,@@'/."% MW1G\%M_+Y,@,LUN4#H<\Q\W!%]7D8&+.:=91J MD%%IBWRIBL;=/3/9'Q7V8Q$=2F'HF+0&QI>/SXM!KL6,3ZQK:; M<7="RN.[XG#DU&(N2ZJ)Q*Y/18[KV[2(&+ADR!I:FMA9ILK`[YP8,J2:;VYT M&8XC;(M$?O(S!XMT:N"64%Z5-$`7`S*0:MNV8*>DR&JQV+@1B21(Q M'*=11?1"@5N5:OC2,1""*'6U;)!B'@>8@/FW'%BE.1Y34[#A<-.778*C)ALT M!_]V-)\6:D13&GZ1&LC&+1%Q`G\T;3[X)CF6;RYH?OB'69:1-_`A>ZLS'QY# M'FQP%8/W?XI3A02'*!4Q0WN6?^UW!@9%&KZW3&YP`KQFXU"(])R MAW)@>[H"@U^EA=*2AEGB4!!E)&O(')41(Z>6:LLA=V[01BU8?EO%B0!&&B+@ M&IZ2.3)X'N&*A9O^5:J=2+#.R+OMC;/X%&[KA MQ?9BD)$39:1((9[!1BB?Y!CV'CT>"*J:8'1W)*V*QAXW2AC+)57QH M(!LI=(&AB0K125-''Q6%?*WH)/:'(R&5)9D!:BYF&R,E;4SX7S&3&6%!!E5B M$4K)E&/@E!`UB$ZU;*DV%,WV;"BP/K:H$P>Q',&$;<*D?2"EB(QH10"RCQ22 M:O2!)?_2.0H%.>M#!GEP6Y'.&MD&:Q5+K(!-0C10[GY>W525VDBM(2$DK(=`1XB&FG?R`P`[>A/$_R&]A7'(+F$4!AE6<0 M,4R3%7"X:JTV)Q1C$3&@:DTB$6I@,$*3:DO7.;($0'M12[ZY`C]4'DU#-*DV MC'K)8ZN3AA8GEX7625,R7T9WHT&DHW;G!F7520_&1$U5&98V(>`E8N"66F*1 M:G%$1X753?NS-&>S1FORHH^"(S)5ALX8F=$8D+]#/_*5619Q'PO$=G6$+W<$ M4*]5=R;7.71V.V+T,C5:2ZF&7AYFC,=VC'REC#C)C&[@$RM50"X&9$L:-*LS M&951GL?)H2R(C'*@C`I9&9*ZI]'G,=IHA,?(D$WC9\=SFY)9+ME2GKP))^A( M!I]T28&!-S5:!F(P!CDR!JE6!<73.2&A44!*31.R'(&$'X04)?*X?-V!)44@ M!$-`!$D032+"'N62<5]Z1IZC)$4%E!8QK*D&BC-R)`3B,*,*5K/(C6]0FW6R M01-H+W.0>.<*(\"?%WX<;H1!+R1!#P@L#X0K=-:K;&C%8CRL`B1/KEW M4#7V'[!#`^;)CQ!J`S`;K]WF7"?"(Y$Y*EN1AAXJABF('VA`83Z!*'IG6-Z% M$"L0*9T"F!\!K)%E$550!1HR!$^P%MZY)C21%V6Q;,6SM8K".M?):JS2@B+I MC!!2,)CU(-^V'+7E@$%W3$9;)KLI'OSA55TY26I7G'W)/.PT/KHX23M127^2 MH0PQM55[M<]8HG#ZAZM3JJ]$LQ;*;:=4JKL),LH8)3@:$1%W4_L3BEXU>"V; M2!MD="+BLC30T80AM=2AJ7WN4N[+9#:B/I' M'-+"I9":+9%B2I6BII"Z59;A0E19IO=EI[?IEV@3@/XE6+M)*EE#,A_W5)4A M$":;U3K!%:+M4WJ2D*I-LB!SSU2\\5(1VW'`N<&6RP!MO7 M'NPH-FF:C6GGF_(;G\4QJ'#R!A=;HO#)+Q58+"KL4PFS%9";+&@Y<..*G&HX MP%K%51#Q'(P+H?T;$0[&8PFVFVI3:WIE$2H,=][&K1>G&=\#+8^2AKL[+N)L,/+>E8*OBB\)DCY$4M,PLR; MB[+5*F$`$?FS.>KJI1?4NQ.!LN$Q%$%*GW1I&>[:LVH,;M>4Q_WGHO1'7[B4 M-6YTO(55*8>E%$4@!4&@6'6!5D'0)%;$:BCXC]QZ+A(Z-V["@CM\5*_$9ZGJ M?V@ESB)CK"17S'8).U<5N(=J$12&BRAE-TJBM#8_#L2E@E9WUX&O-U M+FDIC\B2&#B+'!9I-WC)C:K%52"SG%*,F&83)6"Q=[\"IO%J>]EWNJ3;H;[9 MS7%*-\1L-2S$BJ`+CQPM/5EV0.
!!D;P7API107G2)$V;R#(Q?5T8$=L) M8(`V(/F7S%IC>W28A9_;.2*`B0C(!NB7.>V6M#+AS=3!$2[=)##-A5XXBN$T MP`::'<\W0E>"!BNTE+:5(M+CO:^T&MHYO:0ABF70`GP3$A+%H<(ED&5`D*KI MG$RL:AJH$Y*B-8*S0CJ11FY]&-#),%LF%#P;BFAC&V)]$P#8J?3Q+J4%%0&Z MUO6\'!-[=^\3I2PT@W17A=@J/W$\C'ZR8`>DSJ2\.MI3*\2].CS1 MVGV9U&S+K;Z=)F6;-$J8,?QAVY7!&:^$21`3.LL))J4S)EVC*AT'21O2(12# M,%&W$')522X!IC/"RH^BW8"K(X>5N-3J!$<``D;P!%+0!-F,'#RZD`/M9R%Q MHL7J>#9POHV[,6\@?9`"!Y%#&<@AH0#2>I^+`S;P("P>,SC0Q;4KQHJ!)L-1 M?K3!@C3,TPE!;]KSXEZ\DQ:M&YM6XI4QFM<6,RZ=%0OSXEZ"5E2'(!O;L9-+ M@HT[@U'2M(2X$++9+V*U+I<6LPLS!39NR2FWNJ^C&-.!)E4NKVED01,"N:/Y M0/SAFSRJ-^I2K$W'N@HR@O)*S.9L,?:UC'!B>]?!!EM\0*01EM\JV19C:=4E M67O^.J[+9KJ"27EF&C@*1K+K&)'7N!`T+L$20+J1,@DZ$'U=1%=IGZ%)':,A MO+83XLR9)8'Q'/.DY`BK.0)2/4=U4SCM2F];8*HS6@8U?>&3-/=3O^<+`L-T MNC9)Z+LQ!+UA2;L&`B)P;9FC$/9UD=*WJ,_$N(B1]:`'NQ%.,A(&H.&Q+Q.].42/S7Q+LS@L! MP\]CNU\S6ATQ%!L('[A9E:J>0VDW,KG>RE53YHO$-[K=DCQ))'A"![Z)4L.: END--cut here--cut here