[comp.sys.atari.st] KBEXT.UUE

WALDI@DHDIHEP1.BITNET (07/16/87)

Date: 16 July 1987, 14:34:44 SET
From: Dr. Roland Waldi          phone (6221) 564334  WALDI    at DHDIHEP1
      Inst. fuer Hochenergiephysik
      Schroederstr. 90
      D-6900 Heidelberg
To:   INFO-ATA at SCORE.ST

Here is a program to extend the number of characters to be entered
directly from the keyboard, using the ALT key.
It should work with any program (e.g. editor), which
does not use ALT-key-combinations on its own, for instance it
works well with 1st-Word.

Put KBEXT.PRG into the AUTO folder, or start it at any time from the
desktop (but only once a session). It will establish a memory
resident extension to the keyboard interrupt handler, which allows
in addition to the NORMAL, SHIFT and CAPS-LOCK keyboard tables also
ALT and ALT-SHIFT keyboard tables to be used, thus allowing about
128 additional characters to be entered directly from the keyboard
pressing the ALT key.

If you use KBEXT.PRG as it is, you will get the following keyboard
layout (which is close to the US and GB
version of the ATARI keyboard for the non-ALT keys):

---look into the KBEXT.TXT file for the details---

There are two ways to change the keyboard assignment:

1. Change the keyboard tables in KBEXT.ASM and reassemble the
   program. You may have to change some control statements
   to fit your assembler's requirements, but the program is
   written to make changes even to MEGAMAX-C-Inline-Assembler
   not too hard (Use a minimal INIT.C here to save memory).

2. Use any PD keyboard-changing program, which allows to
   save a xxx.KBD file (check if it has 384 bytes), e.g.
   MOBZKEY.ACC, and make two files: DEFAULT.KBD for the
   normal keyboard assignment, and ALT.KBD with the
   unshifted and shifted ALT keyboard assignments (don't
   change the caps-lock table here, you will need CAPS LOCK
   to type into the file-selector box, since MOBZKEY changes
   the keyboard assignment immediately!).

   Put these two files into the \AUTO\ folder of your boot disk,
   if you use KBEXT at boot time, or into the \AUTO\ folder of
   your working disk containig KBEXT.PRG otherwise.
   From now on the tables in these datasets will be used, when KBEXT
   is run.

A third possibility would be to make the files DEFAULT.KBD
and ALT.KBD mentioned in (2)
by a separate program, a file monitor etc.
The format of a KBD file is simply 3 times 128 bytes of the
keyboard tables (one byte per character)
for normal, shifted and caps-lock. The key
numbers (hexadecimal) are:

3B /3C /3D /3E /3F /40 /41 /42 /43 /44 /

01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 29  0E  62    61  63 64 65 66
0F  10 11 12 13 14 15 16 17 18 19 1A 1B    53  52 48 47  67 68 69 4A
[1D] 1E 1F 20 21 22 23 24 25 26 27 28   1C 2B  4B 50 4D  6A 6B 6C 4E
[2A](60)2C 2D 2E 2F 30 31 32 33 34 35 [36]               6D 6E 6F 72
   [38]  -------39------  [3A]                            70   71

Note that US keyboards don't have the key (60). You should assign
0 to all function keys, and to the positions that do not belong
to any key. Key number redefinitions with the ALT key are
automatically taken into account by KBEXT, after reading the ALT.KBD
file.

Enjoy,                Roland Waldi, WALDI @ DHDIHEP1.BITNET

begin 644 kbext.arc
M&@A$7T%,5"Y+0D0     % $  .P.%8*AAH !   , #;L6L6)U:]4O?+AD^4)a
M'H($D80EJG8.T[%%RL8!J=<  #)/ZSX1,P:,6;,M798!, 0KUB%OPTB9V\9Ma
M%@!( T#<A)#MY@!L-PG\N<F %@  X,*U>Q>*42-0@PH)0J0H7;F.D!QL:)6Ka
MVR9[JGSI,W7J7KR'DJRYHS:MTS-VU'AQH==Q&KEBSL0E"Q9-VIX^_P \NH4+a
MT+YOI:#-DX?*ITY($+3YO!9T*"0&M8ZZ>H7.EJA)E499N@0)0#]_ZOAAU1I#a
MQ@P:-6S<P)$#1HL>#Z-<*2*%2I8J29Y 0=DQR!0B1HX@4;*$R8X38 ",T()Ea
MB!4A3IJP</'"\<X6/E=4)LKE*(H4+U3,S@';1NL9,%Q@;0 :"$1?1$5&+DM"a
M1     #K    [ X&@=H@@ $   P -L20,8-&#1LW<.2 X>D$@@1Q[I210T=/a
MG31OX 1:T0! F#EDS)Q!HV8-&TJ$1@#PDP?/&#MBW+1AX:(% $@#0-R$8!/Ga
MBIL$_MQDP ,  !0I7JA(F,.@C8$S8+CH",G!AA BNI$H8>(%TAX_P#R,<J6(a
M%"I:JB1Y D63BHY!IA Q<@2)DB5,,CGR H!/%BQ#K AQTF2'CB\W<]YLD!! a
M"QH ;/R4 0"&4$@,?!A%JI2I4ZA2J5J%ZI0I0X<)R)I%JY:M)HX XLZM>S>Oa
M(Y5^_@8>W(1F3\60>";^"2GHT*)'DRY5^)E@Z,4:"$="55-?1$5&+DM"1 #Aa
M    [ YT>8^!@ $   P -L20,8-&#1LW<.2 T:('@@1Q[I210R=/G31OX&SIa
MT@! F#EDS)Q!HV8-FQTGP  8H0?/&#MBW+1AX>(% $@#0-R$T.+F@!4W"?RYa
MR8 +   H4KQ0D3"'01L#9\!PT1&2@PTA@(P@4<*+"15)OZQX&.5*$2E4LE1)a
M\@3*GCX=@TPA8N0($B5+F.@0H0N 'RU8AE@1XJ0)#Q\_?.J$Q-,G4$A"B?(Ya
MFG1ITZ=1IU:]&O5I4X8.$Y0]FW9MVXUQY]:]FQ>ERA& !1-N0M,FSL6-<3Z.a
M#*DH9:5,%6(FJ/EF QH(2T)%6%0N05--     &00  #L#@.#2!N:+@  ##M4a
M0/K10$% $)!ZJ"AX<(F0(EBHN @RI8D.$&7PT"GCA@R(-67RB'D31HY',W7<a
MC*&3YHV;.0@Q+#2H D2:EW3"L&$#,PV=.678F+'I!@0=-&4^AAQ9TN/-C7+Da
MU(%#!^&$F0?MZ$QS\HT<$%2>3 $A \:+&#'.YL!1 R$)K#43P@4K%H2=,G+Fa
MM"Q*I@P<CGW=5$71IB1(CW=\H@&A0D6*BY JS(54( P9,G+*S(%IQNM',7/0a
MI#'S\V*0&D1 H @[MJP+&#9<L 5!) 5"!Y,W%(DA1#5KLC!<H)7=]H@0VY :a
MY-[=>W5=V*]ER+9!&SENAG$58@=A!:]>ER Z?STRA4J+()O+M!'#!B_"$7.Ia
M($DR%HJ4)T>D!&D"@GY_)V A400(4%0A!!-)#$';$TT$D02 D,BTG5S809( a
M"%*\P488'8%PA4YDI,$8) .0]1H,+>!PPPLPW#!B!@45A) "4Q0Q!!5)/ 'Aa
M  T^*",D"MPGQ1$(&0##CPH(H1]"!]PT1TX[%;2&&$_I@&033UA1A M,($0 a
M:W>-P4(01RHPHQ)32,$D"F0BM\!!:M31!AQ&O4'76'*\40=+;I2!I))!N# 6a
M96>\41!+;>!5Y959;GF%ES2P>4,*+!!1YHQ8:NG"HY 08"D++4B*W $'C?$&a
M''F 4-(9<G)$!Z.:=MDI%4U($>:8EP*)IIJ0', F#&Z6JA,;&-%AQQ>(XH5Da
M$$00$0677HX@PY@W%%2HE68"F>F6LA*08V9BD@DKMU[^2FD0,B"$P$%GE%&5a
M99AI!M,;0[74@AAUF&&&LMDJL.VF7N)@;J4Q,'E03FD0>U-?>" Y1!-0 $S9a
M$TP0@3 ;!"-4P,&:534:"&.@P6&[9/Q9Q+.#%B ''77(X0:23!01!),46QQ&a
MPF/&,*[$GL;  ILQ(+=N37.$<9=1-RO<44:J5E7SQ3OWUBD)S%6:+B1#@]!Na
M55.&-MI/JC5V)PA]_;6T8(PY]B<5Y14YP@Q6SWA0$$Q0 0)0=!#4[T,H:[QRa
MRT4!>=#',+  0F8LN[PSIP3 P.:T1,2P*:66@@!"0,LZ083$!8Q P@U&5 J#a
MN@>!E*JI?<$L,Y-T4Y$3>SEKS*Z[1LG!X1P;L@3>Z^UEOKG4G9,0 ]Q$7)WUa
M1D^",,5\1MC-Q@M?<>C1$&' ,0<3)O=-Z!O@0?)F31^[X5)2>"_;;*#=CA"#a
M##C$CO5!=0!U=QFF=LA[4FS6;<+R232?@K7<<P.V,-4H%TBM<4 3W>1$9[F#a
MV>XEN?-3O_[%N$_)X'$$FUP#B48'KR0E9"4!V1M2IX"_N6R 0)("VPH")OJAa
M4 %$& *T(&$D%M8J3"^,X0QKJ(!ON1!).I05#Y^6M!S*D%,&:('.:+(=I&1&a
M54\\2E),QQ23((T]F@F/9\0GA\)@3'G,HP(+)B0"Z8& BUX$06*. H(A! $*a
M8V'"$X:P!#*VSG"MVU\8L;.=#H),9&YHEU&0HA21D,2*&\J#GNA@N/@E18H@a
M$ $:=2*"*[9'53 )PW98Q96DB&>04PP)3%  R40NTB:<\4P80%"%)12RBF3Xa
M'TU4U2$GX:4JD P"%8(@A22\@")#2$(21-B7>0T%DB"TW4J\ P)%UD&-'**#a
M"[;CA"=0H0C8.L@:%W-'4(( #F_0B^Y> @(8I L%)XC!"6SC A*5,P>J.0$.a
MU@F"-KSA:!W<S@UP ()VE@AT8YRE&6$P,W3F@)[^+&=JT-D#>OH1!J-+* QFa
MH)HPK*0.PTH5#B+J3AS,0)8'0XK\,E.2![8K48+)Y!/),#X0""$+ 1J0??"Ca
MGR;P40&39(,1#5@D$D"4!<(3 @O2>8*ARJ"H)Y@!4FF U!H@U08GN%Q-( J"a
M(LQA#$"4H=0,<((;('6>0SWH4&& U!8@M:% A4'[? K/@ZC5I5-@P2Z%D%6>a
MTO $<4#J'9!:!J3* :ET0&H>D%H'I*8AJ@>)0:Y@J-4BG> -2(5#44E0 Z%2a
ME@AIQ:Q/"W>","!U#HBM20SX*09E@N0G+!B"%.JZU1.0 :EF0.H9D(H&I*H!a
MJ6M *AN0NH/0 H>U/97!#88*ALG^] 0C0*H>D(H'I(X!J7;P+?M < +@WE4,a
M2'4#4MN U*$.U05(?8%Q"[=9J8)@!HO5X58W.U3JII6\/V6O?.-+U8/,  ?6a
M-<!\X<O?]_IWO^:E07H;2\/]#M6L_Z4O9U<PW@#CMU_J[:F"_PM0 P/X(#48a
M'1&*@#T($UB_$[9PB!5LWAH\>$81+G -AI!@SJ)SJ"D(+U)5@%2OFM<&H^-"a
M?N6)5+&>@*E#=>I0H3I4=1H5J4J]\8F!E&*NDO6[QM7LB/M;WH/<8'1%$ R_a
M4/QA$5-YRN\U[SX+XC72L&<-.UUO?'DSU! @%0A(3>Y028#4$B#5"[Z%Z(Y-a
M,&.DOGB=2/T"4AF<UK7"H*U373)C[<K5*"#U"D@M E*E@%0J(#4+2*T"4I/@a
M6\7N^ E(A0)2]X#4/D39OR<( E*GT&E%-_D$1$"J$9!Z!*0B :E*0.H2D,H$a
MI.I N@-F] E$,%DA! '5?D"J%I"*!:0. :E6D*ZK/WP"(2#5"4AM E)Y@%0?a
M(/4'XPVS?8.M9LZZU\LM%G=-[IM?=+N;Q <1<+LG? ($H_L$A*YR36@P;4:[a
MN\)@UC<(,CSO+QL\W0(W\8[Y$&[VGN#/,1ZJ>(=*XZ':^" XWC%83^!C()] a
MR"<@,E&//-0D8[S?K7WR"<";681/6<SDEO#!W\U?,3]X#-7#W1O&@.:" Y7-a
M(S_!44N^U*8^-<\QOZM7A[IQ'ZL<P2= JT\-C>ARHMRQCAXJI(<JZ:%2>JB6a
M'BJFAZKIH7+:O)[VL+!!/511 [6R;Y>RE#FKZJ&R&NU7OVNLASKKH=9ZJ+<>a
M:JZ'NNNA]GJHO35O6=HM7.*&&[G*9K:SH2WM'5M[J-@>JK:]BU26GV#B%UYWa
MTD%L[H8''-[KSCOI73YSU(- WFHO-ZKM#69\-SC>JO]WZ&A>XM'3G/7J'GCNa
M5YSNAR,UXI_OL\5]F_'8.[;I10_RT8N,U*$GE?FJ/X'*6>[3N0-?X%?V^>^]a
M;/."M(YW:9;YSRTK!,L&P;(Y8#$)@B!_(>P^"%4?L_,++ 3-&B$'0&4$:R4$a
MTT(".5 $ 6APYJ5G^Z=?.> S)# $!8@# $@"1% #0%4$PV6 :X4#$(@#O9%8a
MOI<#-)"!<!.!&V@$&&AA.%""!C@@B95[10!_NS<$+C@$-@!40T!>0R!_0Z!9a
M0\!/![%X#1B!QQ:!EA5?.)"#)" $Y"4$'[B!&Z9XN3<$)Q@$+E@$3$@$EA5#a
M0"4$)^AZZ"5^9?%]+V=?N7=ZK5=S\>9[(48$%1AP1&!HHX-[XJ>&K-=[=[B&a
M>8AAN2<$+AAB14!>NY&!FE4$]U<P&.=[."!_.*!99 )4'B6)*X@#$]B!,W-Ra
M[58$%5@$*XB'H0<"X5>$[0=4[P=4\6>*]7=_%=A_ 9A_#S8W=0,")@!&_4,%a
MXL=F\Z=90E"!S8**EF4$3!@$F3A5OO<0 7B$03",*9B"$.AZ:M5N.5" 1,"$a
M18" %NB"1'"".:!9.7"$-H)V(]B*/KA[1A"(5(8#V%@$-(!W[38$*S@$ZUB a
M0U"!0P"!D0-4Q:./%#6$OD<$+F@$NZ>$NR<$&R@$'4A>1A""-<$^[48$][>"a
MGT("1G""1E" 04"'P3>&11A?93A^8IB&?,A[;;B'^GB$<KB!];5O(FF&:ZB'a
M'3F2:EAB?_B)5!8$V!@$NU<$ SB,Z;*(TLB-*Q@$W,B$.;"!.:"0_@>#-6$#a
M,GB$1B!_H.AZH\AE_C:5+VEE#P8'9] >@704.R5$9>(D4*)3XX(^"#$ D1($a
MDS(F;=$K!R$&80 4<! &[:(Z,],K7.F59W 4*  %0W NBQ4S>=DD.#$L?QF8a
M.;,SW1($/F,I2#(%!C)#!7 :#"0X-8%S;# &=1!!(,"71\&87O(IYB*:G?(Ia
MH<*6HW(0H(D&IDD EIF:DV(P'%02K](O0\ $4L YLBE+!*0IC.,Y-'!LO8DDa
M5* ?4. V!9,<!U$C5' @<[0$AI,90"$'1_,D7F&7$C0CA,DDZR,JU.(PNLF;a
MHB(W-4%2)Y$P2;%A1A $55 W+N 01( D4+ ZO6(&ZAD#B>F;VE) P4D",X!9a
MO2D[-7$J'&&<R*F<YN,L,T0 (] ^;&F<Y<$YD+DW39 $@J(QXM,79A &G7F;a
M,U*?A9E3^TF@EI04\$*=J?05Z/F:;]."H%*>E,&:'-&7KCE!_CF:A3.@<%D3a
M@$0&E[0XT0*@H<.C&W.>96 9"/I&"MHOW=DKWZF:X8FCP.DE/]H>^QFCJBFDa
MG>(Y,X" 1EHJ;!!.VPDDQ\FD-*0^"_HLZ5."$8I3(U0&'?JA+Y2;N\DI!<"Ca
MLX2>X:&>(- Z\=E_]&F?!X"?[7%!@,F?_I*C70J@ BJC1PH"!OHR_7*FR9FFa
M2S0CS,*@Z0.AU5*I$XJG%3HC0G"A&4H9XJ,3=&"H9:H 3WH 5UH&64HF&]2Ga
MEQ2K7.HIA5.:_2*BK%,WO%.BG7(P88!%JG(9*JI%+)JD)4.EY-*E,E #.1BFa
M-=&:N8J:,DHJ/BH]0>JL/..E10JI!]&BE9J@F(J7WGE!4OJFO^DH5LJMLIJHa
M6CHIN>JE8"JNF3FF0+&DEVH :MHOF\JFT>*FGYJJ;+"JZOE"KWI^Q<H&LUJ'a
M2%I2(Y,4K=,"0Q"G<_":/J6NP )4^\2K[=J@/F4# _,Y0P"R_1DK7N)305"Ra
M$(6RBZJR4Z-6'$LI/B6 YF)>19,HROJG3- \MM@\&JM6)-LF:165,/LOW3)Ua
M+6NT4^<X;5*O/E.<WAJ<,5""5#LCEJJ<[0@)## ['N-!8X "0;.F#3H"!(NNa
MO>)#8RNOXN*MW4*:;4(Z1&,T20%.3^$>?C0E9- "+0$N@UJ8.&<]8\ISPCH a
M!T$]UM-A(4JH948'9W:X!_&X9="LC3NB7I%&%@(_+R$:I%&Y4CNMHL*O7(L0a
M7UL36" $.3(6I@.Y#LL"+*"HFXJ677JU4QJRP3D#6#NZY8JF_GJUIML08D &a
M=B"70($"LMLL @NMMYNRSZJK[C-+C@D"/7"LF($"?%N\<UD&BOJJ+10NBZ6Ta
M7C(#ZAHT/S.WPUJW1Y.W43$559$G>W(3*(JL\J*V!S E3X$KKQF)Y LTR&$ a
M@W.8.W%&97 '1 $54D$5=D$_'20'XKF;LI*GO(N[0UJ&66NFYOJ["-$ S3D5a
M6P8D 7NV.<BN0.*]-T0_^@NW*RM@NXJ^ *R^2>$NQY(L++I(\FN]*FJ_-)R_a
M;QNRC4E>+$RW1/$DPT+ !LR^"5P58=+ KXFM6UJU%;RC$XS!OONOFJJ\(MR\a
M"F"GY*F:YGDX[@(XQ-2JXMLI>UFC1S&OMG$0<) G9V [;?"9:'RC%-RH,S"Ua
M^$H@4-$&U$FZF+K!XZH9>'&=#:R=M.01@($D*C0H%G 0?7(7RVI12-&LL0H9a
M Z!#2%0FK!H#D.$I749\J99IE894;$=90[!C>W<"77<"?1?*9,=KHPQE.U9Xa
MU894>[=9!<&J,M#)36;*0U5W)U!V)Q!V)U#**[9CP'QXP]QYU=6 )T#+EP=Ka
MXX4D1: Y!0$:"$M"15A4+E!21P     L P  [ Y3@,H'8 0   Q@-   0( 'a
M $@&'H ZZ  ,  'L0.@!8,4)) !@',!X0? ' (D F%@$0.412"0DH,A  0"!a
MK(E"SL 8H@\ #QF!*.!PL &!   #SH" (0/"0R  _M ,8$K SPEG#$SC=W  a
M( @Q!M:X*L!)G8,,_OT#L"&&C!DT:MBX@2,'C!8]$"2(<Z>,'#IYZJ1Y V=+a
MEP8 PLPA8^8,&C5KV.PXX7"$'CQC[(AQTX:%"XZ0!H X"*%%U14'"?P!RV4@a
MBA0O5+#-D=:&V1DP7 "&Q#,$D!$D2G@QH>+TEQ5RHUPI(H5*EBI)GD#9TP=Pa
MD"E$C!Q!HF0)$QTB= 'PHP7+$"M"G#3AX<-CYLV0.G\./1H2 SZF4:MNV_IUa
M[-D\7[=>_39N N'$&8><<GXY!YUTU%FW6&/=?1=>$Y9AIAEGGF4&&B2BD19?a
M:JO5=]9]#&VPRRJ<L/)+*KWD@X\LGL S4"3")%+-.9@$L@@EXQQ3ST"$>++.a
M)\08 PPSS2"CS#( & )++(=X,PPIYFS#S2Q5H0=!-E5A<U $M P$3CCMO!,*a
M(XV ,D@A@B"B2#KE'&3 B"6>F")9K>32S2;VJ.*+/J:<<D\\ TEBC3O43-.)a
M)NQDPLLS] SD"#G%."-.,L%$(\TTU(SUR"VX ++/-Z5 ,X\\J%3)F3957;-Ea
M+0.Y\@HZMH@R226C6'+)1?WXHPY5D$B@PAL$!:'//_;01"P("5S4" B </1"a
M S']8) 23@3QQ#L ,! 3$GH$@("T /10+12/* '$&B)PVX\1+Q@$0 " > 3Na
M#]5>F^T/.@  #K@^5(O%(]M.9 ZXX@9!KKEKH" L ,+   BW_C#2[D ! ""Oa
M0?1:BRT#^ )@"K_^/B*L/VJ$@,9# .!A,@ & , '"*4JL+(@ ."SLB$ \+.Ra
M(@#$:U  X#K@A!/_"LN/+,RJ*XNZ+G#+CRK@0C#T-[P.X "X(@Q=D@A &"T(a
M"*E\9+0((R#QD1"G@ M"M5R(K \_;(" "P$ & U!",C0S9':; -\Q@LZ^*,-a
MN#%4Z]5 7 11!15/<$%$$48HS@05+BPA!!$ )+YXXT%,7OGE!R4 &@A+0D58a
M5"Y46%0     : P  .P.D8;Q%SX3   ,2X04P4+%!10I1T"@L%)&SIPT;]R a
MD.$"!HP6.&Z\@'$C10,%+2!Y /'Q(Y0Z=$ $'%CP8,(T;NB\ 4$'31D00:I0a
M>0+"S!LV9!JR /%&#H@Y=,+(29DF91BG;O+03-/FIADY;]K0M/DQZ)PU,N$Ha
M%(.2J!LV4B..N1GF:)DY#R.F< $B2<H[:=BP ?$VJ1@V:>:@ =&V:INB4C_*a
M>9LF:$R^>.B4<1-7HLRM-]>4R2/FC5(R(&!*EB.G#IR4:,*X(<-&*(@[:-*,a
M&1Q&[YL[<S[")$R&3%.(EF?6O.GDB90F09@,G8(DB1$JA%>#&!($RI063)X,a
M60)",V?/<D#[;3V',)LY;SXFAZX:]/H6S)U#]][Y,\TP?]_2G"GF9ITY99 Qa
M5$W_F<?&;3"=05AG*'T4@PPX\.8;'<#5!L)L2H4QQFCE7=8?7S$U%" (OBVVa
M(5H]8:75<-UM5E]X'\&Q&%P)8H83$_-M1M=')"F0A!D@Y/%&'2#\=]-*!!F$a
M$&'E-17:'$,)221>>H%P1ADIL>B3;7BYH2!]X('V$1MA2)D2"K#)-EA@%QX(a
MX'XV5C%%=* =(<1'=C14&5% LA@$%4%(D42+W]GGDU$LNA%1"^L1.D<*.I2Da
M0''')1>I A\9$0,(+Q@A Z=&S  J#:#6 *H-H-X :H2=Y@!J##"\T&./1<PQa
M!@B;?BHJJ::BJFJ$KL( 0@L@]  "&"! ,H 0<X@% A)EL"$6) 54L=I,RJ*0a
M[  I@,!IL@2H\!$5^'D;QVM\@8!HD$6&1A0(8FT!0A?@$A&MMTE0MA0(53@[a
M!!M&*:NJLA&"X"HD!+3PT1!TR+$784>1V).5( RF1G<@[+4#""=X*P66WH[@a
M+1-EF)$2$7=(),49:*2D+*G*F@H"J@BO\-$4:)@, A<@Z $"'A>"8 <(8H @a
MD59#T24K"#CK#$D%FRK[*0BB@E!$3#PB' 0;*0U+[11P:%A&2 5X.P0<<S"1a
M; ;"(NR"I/$]IY"BDFWUE-$S^79&4^6% 0<<92CU6E.#L3A&'0X5Y>A0:<[Va
M456JE2>ET66,2+>ZT0;^)HMQYRC598?E:>/AB<L1@D<*]*AI#)T^V/H,K=/0a
M>@VMV]"Z1IKBT'H.G<H0:]8=?%3KK2&   0((I, 0@D@> &""2"HH! (W7X!a
MP@H@Z+(ML\Y"*VVRU5Z[K;;*=OLMPN(J0&[1($0!PA56@R %"-!EP6]=(/ $a
M!0A[@-!'O?>JB[Y2TB^S 6Q; QM P0Z6L(4U[&%!8!H(B  "(X @(4@ @1)4a
M @*UZ0 $(O 8R$#@AY&5[&0IDQ_+7#8 F U 9C0C@,T4T+24\ $$6@ !%J8#a
M BN 0 @@< ((F@ "'H# !R#X@;=JF"RH;6MJ5;L:';)&@*UUC6Q@$QO9S(8Va
MM4&";>!Z&Z840!WK8$<[2_@@CS*UJ=Z!2E2=(E6G3-4I5'5*59UBE1%<U;I8a
MS4IXML+51*@& E[-# 2_,A@(A$4L8R%+6=SSEO>F%3XR8&L Y..6MV2%OG&5a
MJWWOB]_\ZG>_0>D/!/*B%\+L];!\S6%?!9S. 06VK06"2V%D?*"W(C@G"EH0a
M@QKDH-HVUC'YC5!D'3SA!%.XLI9MRX4P!-<,F<BS'.YP"#W\81"'"(*D?8MIa
M.7.9$Z7FK2AB+75:XYJWL!BVM6QQ.EU<6]L(($;UX$B-J6,CJ#[5*3@:08Y&a
MH*,1[&@$/!I!CWS4E!_7J(#A@6 7(%@%"#@! E: X!<@2 4(>@&"?(  'R"0a
M!0@\ 0)X@& 9VVO6$HE0AS9,:P'@V%8XO-4.<+W#D^R+! B$ 8)$@* :(#@'a
M"# !@D" 8!$@H 0(Q@&"8X"@'@!\&!.:,*3R-*& QRF/LD*Q+49XJQ'@RH8#a
M'>8M0HP4!.L P2= 0 P0& ,$P  !,T#0#! @ P3*$&'7#.&M)I!,9TT@@D2:a
ML+*N@6);@_!6(<"%C9N%$P2T  $L0! +$!P"!-X P3! 0 H0F ,$VP !-T Pa
MBR4^]FF"V!8BO*4(;TF1BE9<Y]?:.39J<3%M:TL'N,H!M^;(#7KKN93J8L Za
M3<G@=;&;7>UNUSK=:8IWGEIH/AL:R%: (!<@Z 8(-@$">X! %2#P!0CT 0)3a
M@. 4(+@'".(!@G^DU%E38*E+D[4 5VSK%=Y"![AL@5-O20($U@"!.T! #1!,a
M P2= ($F0, .$&0"!+P P3- 0(^HCHRJ!6J":>37!*T.0!3;FH2W*@$N;8SUa
M88X  3E 4 P0. ,$X@!!,D 0#!!$ P32,#"!]>JM1_2U-8 EPV#E<(:NC6);a
MEO#6)<!U#<?JK!8@N 4(< $"0(!@'R#X!@A* 0)H@& >() '"%!A6J=5 !( a
MV%8_O.4/UYX37+'U6@&RZ$[;PA.W7U0'N/@A*2K89#&$ 30=[C"3.Y2I0S/!a
MD)=NPB(PV2<,-#J#&ZH2$^$ZB"Y#2,VB;>3H\-PG/TV2")(*$H0I$+$]F(,Ta
M@-J0'\QD;0 R>L,9Y!"&-M E"T,"01O*5+$PB.XRBK[24;)RDS%$I&$_.4I2a
M)$-I.N0&G0.XC!F<)"6CJ+H,K&Z-'$Y0GL7$H0YI6$RSH42TLK HUK.N]9->a
M?0<Y-$4RP=%U&#1S(4U?J3QER%.\FU"$(P0!.5AHP1!:D"_ N&%L08 +MO-Ca
ME%=?3B8S28VG45"%-Q4&)E2Q4!*<D(2"8///C)[)''Q]$\,@9BX,I0B_+!X5a
M$$"!@ITF0PN"72-TT[H-C(O-; QT&T2_>N2B:PL>E.6"@%!PVJU1R&S*,(8Ua
MA 9(3DI->6:  U*)(0^2>=10RN"",XAQ6TUX@A"TL(0B9,$%01C"$(:"ZEW3a
M>] S0?I;/DB$(A@A)S@JNA".KC@6.;PHN]Y+S)GT$$DWF^W268_>*8B7FK@:a
MVG6@3&Q,-B)4"R8-E'</C@CU(M"H.@V&GXRS%6))-YQ@BM .-J-M<B&_S:$%a
M!VKZIY,.\BCEFDI[.?B(RCBG[&SGU9>A0QX %YJ8"(?U<F\!@%JS(<5U!@]#a
M>8@;UC)$L9/=[/56S;V!S_K!?S[TCZ%*57SSE&CEX70[FNZV3I(EFVR.T#W)a
MBWY$<_R;<"$G.^'9EH)BE#< J=I$\P9OD!*^\14L\&J8%R2Y9B0J(1 $01@Ia
MT1D#.!55,12*0W\V<G\Z\03Z]Q/\QR>O!H"$)@=K4",%Z'3&%A-A@'$*,FI*a
MDA #^&=X 2!?IRQ&H")X<P=F82/C,7^6X7XW009/ 6E84AZX1S3^ 2 "\AHVa
M(6H.2 4(V&V1]W7JL17A!AIP\ 8T(@9YT11206AU !1(""=NMWI6(7_E47=Wa
M5P5Y9W0?@6J*9W2Z)GK ,2*[@0(R@#I7!S$ $C:T5C<V5VML%W])=QANT!2*a
M@R5CD'Y^9A6 =S?^!S%R*'=/<A14 0<H(BH44A7E\2 1<G59QR>/-W@]6!XHa
M$!$W 8HW 3A&@2&TMB$-T2T?<2AX(P>!%WV3)QF>)QUCX'JP]P9-1Q>-2"@?a
MX08MU1\.H1 V@0=A$!1CD'%LT"U*40:6I@ S $0O, /8E(T4E(U%P"DS8$$Oa
M0 /",HYM1 /\1 -P1 -R]$<*  .; @.? @.B @.D @.F @.HPA&+%"$P$"P1a
M! - ! /8! ,4) .NLDC?.#.?@C VL"DS(RHV0"HVT"LV\!$P8$&X(BS$A2N?a
M$@.B$@.D$@.F$@.H$@.J$@,1$@.N$@,1% - A# U4#4U\"DT$"$TH"HSHRHVa
M$"$VX"HT$ 0?L04Q0 3T$@/?& ,6Y#L3D2N?(@.B(@.D(@.F(@.H(@.J B';a
M$@/8) - 5$A 5 /"0@,4-#,19 - 9 /81 -%,)0R$ 1=@ (V  ,I( -=>9#?a
M* ,6- /",@.;,@.Z(BHS0"HS8"I;, ,VH$H/8 ,49 /?: ,6= ,R\&J'B0/Ta
MXC4', ,Y$!(&X"V'"9?)P@$WT#8#< ,QP%!.,("K=S=RPGEA4AZE=WJ]]FO=a
MMQD*,9=S 0*X1B2",21B^'UN@)%P4AM[80:1MR' L3AT B?GIH6_$1$=DAH$a
M.!.7TQ\'XB4?<1FJ(17>01=+8)O&R&H-@3E!,6V'2"'0.3B.YR>;YQV!5@9Oa
MB!)9\12R09R?,V^347S:.0;&%GD1*!6CQG:49Q2+T8PUPIX%X88*('=4V%!Na
MH 9OD =# 0D0( 4_@6I74!N^,117D!Q$,"C'0P1(\*%(4 10$ ,N( 0=YP1%a
M (4* !H(55-!7T%,5"Y+0D0  !4!  #L#@AVB3Z  0  #  V[%K%B=6O5+WRa
MX9/E"1Z"!)&$):IV#E.@193&':O7   A3^L^$3,&C%DS9,J6 3 $*]8A;\-(a
MF=O&;18 2 - W(20[>8 ;#<)_+G)@!8  .#"M7L7BE$C4(,*"4*D*%VYCI <a
M;&B5J]LF>ZI\Z3-UZEZ\AY*LN:,VK9,F=IEX/:/7T1&Y8L[$)0L63=HT:O\ a
M/+J%"]"^;Z6@S9.'RJ=.2!"T^;P6="@D!K6.NGJ%SI:H295&6;H$"4 _?^KXa
M8=4:0\8,&C5LW,"1 T:+'@^C7"DBA4J6*DF>0-G2I6.0*42,'$&B9 F3'2? a
M !BA!<L0*T*<-&'AXH7CG2U\KJA,E,M1%"E>J)B= [:-UC-@N,#: !H(55-!a
M7T1%1BY+0D0  .T   #L#I.!CI2  0  #  VQ) Q@T8-&S=PY(#1H@>"!''Na
ME)%#)T^=-&_@;.G2 $"8.63,G$&C9@V;'2>X /"C!\\8.V+<M&'AX@4 2 - a
MW(30XN: %3<)_+G)P!   "A2O%"1,(=!&P-GP'#1$9*##2& C"!1PHL)%4F_a
MK'@8Y4H1*52R5$GR!,J>/AV#3"%BY @2)4N8Z! !!@ ?+5B&6!'BI D/'S]\a
MZH34("& %C0 V  J P",H9 8/#J:=&G3IU&G5KT:]6E3A@X3E#V;=FW;C7'Ga
FUKV;=P>+OGX "R;<A&9/G(MY^@0*22C1S4B5,E4(FJ#HFPT &@          a
  a
end