bob@imsvax.UUCP (Bob Burch) (12/23/87)
from Ted Holden/ HT Enterprises Several people asked me to repost this, and it's just as well; the old version couldn't handle large applications and the version I posted the other day occasionally hung when there was a slight miscount of notes between voices, as in Lyle Kimball's version of Scarborough Fair, included. When a human musician gets slightly off count from his group, he hears it and catches up. Computers can't do that just yet. Vmusic is based on the notion, first elucidated by Steve Muenter of RocketDyne, that if you continuously add a fixed number (frequency) into a 16 bit register, then the frequency with which the 16'th bit of that register will get set will be absolutely proportional to the frequency itself. There are just enough registers in an 80x86 device to do this three times inside some kind of a timing loop, length of note times tempo. All of this leaves nothing in the way of compute power for anything else to be happening on the pc while the two or three part music is playing. Vmusic, unlike Pianoman and one or two other earlier attempts, is not faking anything; the harmony and tone generation are real. Kimball's version of Scarborough Fair sounds quite good (to me at least) and it would be neat if other people could begin to code different pieces for Vmusic. This version should be able to play music for about 25 minutes at a stretch, and it is possible that a number of classical pieces could be coded in entirety for it. When coding anything long, it might be best to code a line or two at a time for all three voices, making sure that the total count of notes matches up for all voices at each step; like I said, the program can't know how to catch up by ear if they don't. Ted Holden n begin 644 vmusic87.arc M&@A"04)93$]. , 34L0$ "0 7)]]?W # ,5F2 8$,#Q)N"9T D%*,0 M!P@Q#GV,<<@C# X?9$!DS,@CX4*'%A4^? C2H1@9#11X''G&9,2)("I&W*@Q MYDJ(($(N))G3)$H%8EST%)E08DR&#!<*U2G2* ^D/]DX/"/T3 P;1!\63 K" M:9B<8#$6K(BPZM6L8A".3#ORZ\F44A6:Q7IS:],Q,;_J[4IF;)BR"L_6%8G4 MKMN?!P<6M!)C;4,09E;@* ,V9.2I8)$^O@RBS%2'D2&OZ(RX($''+45/K@Q: MLDBW+%L[]+QY=.@R/T% &A"T*TPR%'%B["RZLT/@1Q\*E7@\^$SBMW_R$()# MJ)"SU$%D9^+P2,$C((J "%(P" @CH[V/+RC$.G;M(-2+!X^^8'W2*:F[QYI] M>_?OX:TWWGGIE<?>?O )$5]!\Q%HWPH%X09708E9,0-QE#W5%64T:3A<0I2% MF!Q#/DBHP&F)B>@AAS5YF!&(&(ZX86[Q"16$0PJ")]YT78DWGXTXQA<@CSX4 M\9-G0I5Q%FVT>6C<DQLY!).+QB6YY&RS/=FD9B4>65UG5S[I))/':21E<'Q5 M"2969&*(I8Q=IJ0!&@A$3TY.00!. , 34>@$ "0 5I]UOVX# ,=F*\ MH0'B2 P;($ 0.9A0"$%( X(P5#AQR,,!0G" @!A$8T&/1W T4 #"R J"/HIH MA+@0(8@A$WD(F2C1I0\B.%PDA(E0IL>9-D8.K)DP9$*3(&GH!'%3:4(B3A6N M'##$H\^&(A4,!!'D8LJI10A*?2JVY4Z&$*]RG'I$J5"";76:=!IR*5&(0#<. M\,'SZ50>4!/R]6CQ+8B,A\6:I#GQYE^<>N..M"-C*U2=E_WJK9KPZF&/706K M3!C6K^' %%WV!>&Y8]&H<8^>U%DW84VA,PXW[LO2:F"(@W>*]>Q0-N.@6@E" M9KT\=D&T \PFUDLT-5.+G3/BY@JRNVRQ7Y]6C)F7:V.<+@RO)GZ\J$>DD=TJ ML#/CC8R"3N?2SFG>97F^$RT'&'B<O42#4/<A-EU)*S!$E&.=-4=7@!,YA&!_ MUO$UG(*N?>3>=TR-EMIVZY57G6-+E?A3>QXRF)5]^.G4%&9.+<=96@IR")Z( M86VW'&K2]=5:4NDIH $:"$5#0T\ $X P !-3_ ) !(GT4OV@$ QV M9(!X0P,$FX)A7( X@P.$F14+'38LT]!,0S(30921J/$B"!!C&HX!P4-,0Q!A M4(* 1 .C08*?) !,:0AD88U0=P$402$D89'?#;LV1/2 )<PPPAT&)$C11 8 M/VZ<.1,$4@5D%#YE>@9EPZX658;YZM6A0)<?4YJ).'9AQ8D7,U*U^A*KUI-K MN[8%VS#EWK)FSA94F;<L0Z=Q-4)=?-5.C($%#T)5&'7F&($S>?CE"MBM6+HP M98(D*49L0Q\CHV[<>)4,YM&:&Y9$N:+LDVZ;LBIHT"-%3S=)=;#DW"#$* M:1._G35WWXB]2_Z>&3SP\+DC-1]//J8VX[H: !H(1T%42$52 # $U-< M D $Z?<%UX 0 #'9D@&!# \2;@F= ^!@CPP4('F<:@@CC\ P.$&9 1'0H MQL7"BV1 E'%(!B2(,0YYB+FX\*$8@6(:*.BH<(S),B=SDA&H4J- G!1!K*R) M@T>8BS2/:IRH\:(9IQ?+@)0ATTZ,@04/@@AYQJ'2A#@S)C3C4.I6D3D3=IV( MM";)BSV#6F0:4:/,M4K%U'RH5J-7J$W1CLE)-K#2IWXQ1L6XU:'-DU05V)F! MU6!!G&4D,B2I6>)8QB,QKKB84*[3%3[M*OB<,3/:G6<9$GZ]-:K3UP)+GHP: M60,:"$=2145. P !-3S ) !"G^U9R $ QO:+#!82<&"#(@S- M<09$&!<@Q,2PX9#APC(@QD D,Q$$1H4'0XY9$;+,PI$@>(19Z ,AR(8/(W8, MTT#!F8L9-W;\"+%,1X0H>8@!X0,EF84(CX* @X/H&!H0-::42#&,18\Y#^ZL M"3)IU!4_/9XDJ7(A4Z=0LPIM,?,J1JD<*?+T&'8D1*$3:Q8E>70CC9H!!]J1 MD3(I3C,0SW0T@S9CQI,'%ZJ,V&*AF!8.TZY<VK0E9!Z(&2[6^]1QZ3&1[ZZ$ M&%JQW,B<'29>G' V1<9%(9^NJ73R9<N8-UO=?#:FZX2U1=]NC/ITZI2KDQ_' M>+2F!AH(3T1% $X # $U)X D &>?&R / 0 #'9BL*'QAH:/,F7, MG#ECI@R9,6/(('1!!@<9&0@5,G0(42(9%V-PC)'10 $9B1'+X#"#HTS*E2T? MDN%QYF#"A0T?IOP8<F1).S(&%O31$>%#'F(R+G3!THP,HBDY(E5JQH7*,B1- MHI0(TR57EAS)U"PJ->G-JE>SVIDAU"#9HV8U,EWY].V8J6>MMLQZTJM*L"_! MRAP;%2Y5O5A+:@ :"%)%040N344 ! !-06! ) 6N?D/]P4 P-% 0$ M 0D!%31E0-@I(V=.FC=N0+PQ \)*FSH.QX"X@R;-�@VH1QDP<$G#)OX+!) M.*=,F38@Z+P!@2;,0A!IYL1$&+!,&#ELTI290T>BFX1FY+R!665*$2=%J+@ M 2()"#)IR+@Y4;3FS9$EY?AD@Y.,3Q!A=,JD^>8."#8_SY0)^%-.F#PZCY8Q M2R;F3#$)Z2!TLX.J53(SW;2="N)@0CAB6[HINK#APXAST+RIPZ8O8+1B5@9< MJ_)N2(P>09AY(P?TYJ(R:H1,XZ8.G:$LT+91B91UR#=$3=:1 P?X4,9)BMY) MPX9-P-=P;*/U2R<,V3&;)TNDJ/BVVIF"68X16R;BZM9A0)Q)LQ SQ#-HW?05 MG#,@]CK:198\,S,MS31G@.3?##"P ,D S!FA&]B55;>&&7D)D088N3!!D3J MO3&47Z[9%A -,, 07U],6)C0$FFT(89U;)R@TX-O8.4&?!.!,,48/XG!VF8! M@F!$&&FTMA:%KX$@PPTANA#00 4%\19M"=VG74X@*/;6>PQ5Z1)?(^X4V$O% M*61='0GI]QP<=%S&8DF?E7>;6'WYEUY+V,D' G9MB"1?"T$=A98<9]31AINY M"8:1EP%!]L89=L'4!H!H%*686Y_)@1]:.L'Q4U$UIN?"BD6I\8882@JD $$( M+-C:47?@R= <N>6QF7KE,;0F"&7@4<88M@6&D$(796224HR& =-R@B&J@!O& M)E0C1,Y2%!X(<[RG&G,;RGGG4GKVU6="<0GJ)JXNG.&"#DLJ8$43324Q! A' M2%'$4^F>AY,;1(T$(8>E[4<>OBN5L= <C#D&@E*V0;D1<V2EM89JOJ5WVVYO M!&3'F EQY!%(F6W6&0B?B=@""#-(U%JU$+=F1EI%!4$%K"#8 ,+(.)A,[4SV MOM$90P&YK%-0:Y0)96XQT& SRO9",03,(_6EZ(JAE53MH-2*U)R69X21YDVU MJ<BS BW(YAO2OLV @\PB?00EP88IQS#(++D4D6!:>WGSC#K]%&6,>_6$1QAC MT,%&2?ZE09&]0@0QA;MOC11H&'*!($*_(E!;W<1NZH2L@!'E2H==()Q@QPDF M!W2"%:3;:\<;'B6$@@PVE[QZZW.D4/"OP::F*!EU0-@7E9^3>1H;:;:@J1QT M!%23'&U E$=A(. '=$)0I#'2&TV,U"6T-M-QQTQOA-?:'65<O<:D$6DZQAJ0 MXQ90=QW-B)-.@-$&W\I!]X606+=_^9$;:8B#\*@T%,FDZ59T*XI9[)"3OBF@ M0C:ZS4V:0*;)9 D%4GC#^LI !R+DX2BV2U>ZJ+ 7$"!!9V9Q0T"00 40%,&" MQ)%# ^<0D!J$* 8V>@EM?E(2*9!A*B.P@0QBT+.5_$T^,@Q#;JP0AJG(0 8S MB $1%: !&@A30T%21D%)4@ 34M0, ([7 K$CK,8+ ,=F* 8((#Q!.! M14 (,2@#!!$00U88%!A$(8B$"RLN-"+QR$6+3QH^C#@1A,:/&2UR!.&Q@0*, M#!U"E'C0I$68)U=Z?%CQ8<*5%6&&E$FRYDF<*B6ZK.AQX="'-1<V11DS852J M'I^6K#B49,*B"$&*G G"I=&;%G-VI*H5K,V%2#>N%=K0JD"X%IN:'7M5Z]6I M0#_NM.F7(DN;@1/VM)EPJL<B+@<'7ME8)N7#B<42I6D8;TJYA^EN+JO@K.>W M('22%CV2,^JXJ=?R_+@XJ.;69CM356MS:N&\:)W6+7DZ*U_#725"5N"6-5G3 MNY,R/GRRXF6/U4-KMJO0)4S?QV\3/PS:]F"NX9DBEFB[MF"74@5;9A];_L/K M]6U_)E__],/3*\4GA'?4I<42@<*-!AULJLVFF$SZQ81;:;HQ2!]X,OT57%7C M?2?A5C%YY5)SXKEUE('ER9<=?MD]MAUQ"/+W6X)0W<5?9N=]>!9V^=$&X7L* MQ%?9??3A1Z1\F='X7(4HUN<BC2.Z=N)^.L78EI0;\I:C3STZ9V*6TBTE8W@" MLC7<51[^AAY97[GFI5(4OM:D:F^">)J69GZ$)G #ED:FCC8"1M^0A*578&;N M529D9/.M9U]]E27YX9=W2N>B8X6"0-I_,K@ B0.N&1%0P255.>"<\Y5(I:5 M@F:<2TS0<-%P0A0DA*>U*E001YX>L:MRG<[JJ5 SR%0$7PTY56Q1#6D4+'S! M"A$M2,4F=.Q'1#0TU$(I><11L-\.FZQ)#7FKG+'!'BONN@1::Q&W3D*:;KK4 MHIOAN$\L2U.S"D7K+Z[:5NO=<-G&!*]ZX<8V;UKE0HKNNL(*VRY5W-KZ*V;G M7JLN6\7ZA&R]S+[U;[\ DY;O1QH[I.VXW2KL:<+7)AA$PY=Y#/'&-15AL4D% MP?=K0;XR-#!*MN*Z,Z\L7;SQTO5Z?"_(^XKL*;0 XUJOM02O_&YO+G<=,[D8 M8QOQTO.Z(&JQI>:\JIW1N9IG:VQ;>%A(L,J:<M!']'KT"GK+>S-_1S3,(U/! M!MYKX? 95&U,@9/',M<)PSSNS&$G9//897]JP,0PN<OE0^:B+'94P9Y\+53X MZAL35QV+'7*?)Y,$]U#.'E[R0EQ:+M-#1!2D<[Q8@QVZY8RJAO!:*]G,.<GQ MJG:9YWK>%?"L3RO['+\G?R[Z<BMU#ZRG0S5^4O:[&ZSXTY3WY/O%+EY+^? . M#7QSZ0CM',3>0!=$]TO#X=UWKD@+&F4RIRB6"&YUO2F< GOE$@T &@A63553 M24,N15A% 34U2H "4 E0*9K% Q ,3;1 "9 !@( 0P#DDY!/UK(( ( M % &(@ . " -0)!QP)B.?#I*ZMBI(ZJ.K3H"ZTBN8[Z.%@),5"$3P)J:@VI2 MJNFI9JN:SVJ&JWFNYKR:!P1,S* 4@(JF6YJR:=JG::.FHYKZ:OJL*;JF! 9, MK" 6@(:R(LK2*&NDK)2R6LJ**:NF[)NR@LI.*ENJ[*VRQ\IV*UNO; $"$S<@ M!C!C\9#%61:O6=QG<:+%E!9G6IQJL:[%R!9K6VQN\;_%&PI,;*$:@)76=EHC M:JVI]:S6R%K3:YW P,0AO@&H"?XG^*K@P(+K"Q[BP$0;S@&(B7XG>JSHU:*; MBXXO.@.. .J -P1>$_A?X+N!WP=^0H*))-X#X"$_BOPQ\@?)IR1?E/Q=\@TC M'S3RS2,? 0I,=$." !3!X!4,CL$@'0SFP6 @#$["8"D,QL(@+PP&PV T#(K# M(#P,"K# 1 ZL", )+@[AXA0NLN%B("ZVXJ(P+O+CX@@,3(1#D "0060>1,Y" MI#9$OD/D!@U,!$.4PE%I")6=4"F& Q,!\<!$3WP)P!EB&B)F)6*B89$F%J%B MD2T6K6/1!!),%$*= )B YPMX+H%G%7AJ@6<:>+J!)R)X-H*G)'B:@B<M>+J# M)P,33%1%I0 (@NDAF#*"J2>8CH(I*ICJ@NDOF!*#J368;H,I.)C*@^D]F/*# MJ0,43#1!K@!@P*L*O+[ *PV\&L'K$KQ"P6L5O+[!*QV\YL'K(KQ" @"OE?!Z M"J^L\!H+K[OP.@ROR_ *#:_H\ H/KP14P**[ %@ ;PSP$@'O%?"J 2\L\ X# MKS7P.F#!1!T,#, *!@-A\!,&=V&P' 8C8K E!J]B<"\&+V,P. ;C8_ "%TSD M0<@4D9P(R9F0# [)!& P$04N [!%S'_$_$C,I\0\2\R]Q"Q,S,?$3$[,,CT2 M #X!&)T1 U4D4DX,P&C2B@!&'V/ .>T@9G4Z[0 "@-7KM#.1U>V(#8;5\;3S MQ]<&S",VV_6\;?4][23"=CYR&["/V'HDPDX7PV1$P#^" _*/1FL#T'0YN) M@-14!S (.R1 G8@1_"SB!P$V+%*(/?YD\HL2CQ<2N>9AX6.#(H4 \ \,Y,0@ MS>BE1PY%(WYP8\$5FH1S@-&PP %+#E P28"1FM2!O(!T%$%ZIU_'CKMFIAN M-.H#J,ZZZ[ O@LTBF.>2X#WI##!,"S (+H4M1M]>>:;1P\Z$.NW'P#TB4B? MSAG_0.\YZ$BH7_5.%[_\@0Y\_!"@]0)P.7^ SQ]^ZX(PE!( $ B.<) @@.$0 M-Y$@=.0(&3F ;R!Q@!5I9'&XJ( (&>T0+!#A<38G &NT A?N&YWN""<\;Y1 M */5<!W]V%T-;\B[8O0P +_ 00 <P#LI&,"'-OP'#G6H"1Y6S1"@DXDB#,$] M<NP B_[XPP#2L8P%+ *,HM-! 9X/7PH8A!=E-TOU,C& !AO"A,P&NSD2,<% M(L(0]?#'%@.YQ]GU,7(\L$(=9'#&^8E."&M<8"+ 6 5TW&!ZD*SC*)2PCD'X M@),#J(,!K(8+ (@E'3M8 ^",(<Q\J$ /#B"'<98AP(,TA^%'%TD3X>/:)S# M<W[XQR-WZ3Y#S,.!QIR>%H@9@&B 8Q'(" 76UL=,7;CL'N)8!#X&D _/<6F8 M=9RD/_P1BK0MP@-N6X0%XI:+M<7 'C'XAR;:L8#K.8!NB[ !WA;A@[UIXASU M9* AV@%!3[P#@I:(!S+U@4EF3I(?_L!%( 0@VW(;A$.X%H^P\;/LFEB&P%= MA",(N@A;''01OE#H/P.JB7\$]!>9E*0A\(%,1\Z1F=I\8QP-R<S;^6(9_MA= M[WX7 %B,P'CP("HL5H!4I;:@J<E;GM'J,,9T *"1_J ?3!T*1JRF$:=NA./K M8L?3.O)@!'70P1F/J=5EUM&9T)1F.ZA91VL" )O:Y*8WU;?5<!IBG.O0 P]6 MD-:U9E5T;ET@7*,YS5](H9K7S.8VNUF(;_95IH#E 0]:4 <<&#: OTALY!8K M5[HNT*YXG>Q>P8G9FA[VIG7,J5AS>4BC^12H0O4=\(1'/.-%@'G*8QX=T(!5 MK<8T<I,$725/L0_6(C>9ALV$)O814"E, 0H2I:A%I9$%+WQAG@%M)T7A*4]Z M%I.@B3 H0A4:W<L^%Z*#\ 5$ >"'"N#"@IFXAWP;ZE>(%O>KL<4'(';A.A?4 M 0O'&*@_)IK@@X[-$ J=R']ANT!M#KC =7C!&2&:B5PHY1[Y&( A..S>8OH7 MC,;E*NC6H8M0<-*Y1NN!3.@P1EA<]:_^:,$__@#:XQJ-&#[PP#I,D(@"_$($ MZ_# %7#A&^,!(W+$, "2&2$,( N9R$40 )&K0( H3UD8HQ!R(BP @G5LF+\+ MM/*0BWSD)"^YR9IX\H^EO XJJQG+6DX$E[U<9S"+F<SK4#/4\(QE H0B%^M( ML281?>=C%. ?_TC'37J@%!JGXQ4W'F<+ && < R"I8LY%=X&8F \#)4#8 MJ>WL@U 36L]=5G6?1Q'J,;/ S"-&,Y1;+>I?D%K)ID;UG%==95Z_>L^RIC*M MUV'K0/-ZT(G(<J%#L8M$>WH4U0;UD!T-Z730 @ ]$(NE69'I'$?$TT"V0:]U M4&HXR_G3!F WJ]5][%C+&\SJ'C,.<$UB'W_:!_1F,[N![>Y4WSO=:Y8VK*-\ M[U'DVP+[1CBT%5X$0_?"VB4.P"@NCG 3<#O2N(!E$RS-B1O;U-_)=2V *QS6 MG5(X<G\,Y"UIRTP>&*$. EB'$W@@!)RO PD\<$(=*+"UKK$M;&,S0-DXO0X8 M\( )0R\Z@PV =+8M'0#KP /IA!U W#-:V#+V]*!L X I*,"L'Q"';PP891W M%8TO;Z-.QXH^OKK]F/$])@#X<("\^\, ?AAE,A'37G^/ FOIF 4!-%L'#7@2 M:_2%@%Q[S,S#MR,=E5B\#QK_^'88H ^2QYJB%VCY=-QA\5!G0]M5[(]*]N > MGIXDWGVA=S]$H/!<9:C?Z7N"Z$ZWNM?-;D5EU]WOFE?C:4L$.NNVSLL?8/%4 MJ$,:5N]7Y:*C&?:(/723*5WJ&LVZV%V$=G4!" 3DHA"9\$4F1)>)"(#7:,5_ M?P!RH8CQ_@( >EBIT49!-^7C;<Q[DPZ:, \ 66MA?4)U/6UP79EW&RYP]^ M%P!]@ )=DPRL0X-X'= $'@5F%44!0SBM%"Z9F+(=$S=!WS8-5'#QUW>)7_B M]4[Q)'\8A4_ZU [\Y$\ E3PN930..%.NI56U=3\M-U9\U%,UA%N\HUM%Q5O% M<SQ1)5S$A6+:9WU_4 _:=TR^YWT! '["MUWQ=WPO2%[R-TGHI5Z)D% E.((" M!5_[15_VA5_ZU6]<!5$NM@Z>)F, 8&DV=D::MF.45T=WQF9(1G"G%F>I]F6! MJ'#(]F5AQFR =F;H%F2]-HAO5HCOQF>L=F71EF>+.&M_5F:"!@RO5G&'AG&& MQVB2Z'&/%FF35FECA&E\:&Z=EG':1F2CUFZ6F&K$5HN;N&6Q1FS+UFR02(O& MQF:_5HG"!F^[6(R*^(NS5FL6<&O:-G%Y1HK5-GJ1@VW.YFH?YVW@)FYC1&ZQ MN&G8^&, MVZXF(P,UV<=UXL+%V^S]G#[-HS^UHY&-G#(:(AS=G#G6&_KJ&SR MZ&SJ1HW3=G'EJ'$<UX\?5W8)^%R@DPXF0 \1) R(L3A0PT(,Y *QP&PF, MU MY@&U4&<6< MFQ@ZXH L T )*@5W_\ %0 4S S>LPC0L CPL CHH$V. Q3 M( 7/PPZ+X 4*, C#( ")()2+< T&0CBT)+.- <4X$QRP !220".( SKT V+ MH _KD V+( _K4 U/Z0!/F7/+D A6@ !H277#()4#L XU8"V+H Q=H 5;H ]8 M@ 104 <)@ 58\)+B, #[L Y]<0W1( RP( '0D$'F$ ;1H R, P#@ [14 R) MN9@$T)C1T SK( V+H)%FUI'KX @@.9HCR6Q_,PP6&353XSZ@F0BBR0BER0BG MN0@FB9(J>6HYY)(P*9/?4Y,WF9/XL),]^9-!.91%>90*D)1+V90?\)11"0Y3 M6957F95;V95?&9;.9"W6,@=D"0YSD'/)@)9J:054%PQNN0Y#()=T:9=XJ9=\ MZ9> *9CK, H#X W1, R7R9B.N0P#8)B(J9C\^9B1.9F5N9^9Z9B<20R?N9&+ M()JD&9*.<)H1%#@;- ")@T)*@9&3(P"AL QV^ LO\ ":E KK$ J<N0,&8*)] M\ H&J(C6J(G^@SKH*(L:@&>5$JAY*(T*CHQ2GHF&@HFZJ,D*DE&X$!'6J$ M<*&)(Q,: 0-U,!$O8 5M4 =SD 9CX )C\ 9M )#\ 9PD =RD 9G@ 9T (Q MD ,X8 ,O@ ,WT*8X (@@ 14 )%X 9T4 9R =C.@=E, <L8 5-4 53D 1# MH*5<"@)H$ 9S )B4 9EX 8@0 9_2J9N$ 9Y2@8@P*@@, 6+*@=ET )7$ :@ MZ@%"D =S6J=WFJ=[VJ=_"@(O )44 ::B@1OP :4Z@8ID 1GV@9A@*J/"@)F M *IEP :HNJ5PD :TNJENH*EPP*A^JJFD^@9UT*PNP*L@X*NHZ@9O<*9L4 9G M$ 9L8*R.6@8@, >WJJEO( <@D 9N, 9L4 >4JJGNRJRH^@%/,%QZ"@)WL*YK M +K>JYO8 9T< >D:J[/.@9K$ 9G4 8NP 2SV@9P\ 8@8 ?B6@?F"@(M0 ,@ MT ,@, -K"@(H< 88.P=SD (L(*<PT+'"RJAG&@14D+)QZK%SP 9O< <@ +,I M&P,UP+(U>[,B2P,N< ,I )0, 1VB@=PH*=IT :1>J9TD ;C"@)Y0*T@T+!G MF@9G.J9E2@<Y$+$3FZV_NJEL@*[E"@)/JZ?+RJE^NJ7-"@);V@:^^K9LX*[F M2JHDZ[1XZ@!TT*WB"K?4BJ<LVQ%,J@D3X3[EX$( $ !0,PJ(UKC5UK@7U[B_ ML Z-&PR6"PRC, SK\ L:D([ZB$0F +KO]@LR0+JI]KG*]HF!9@"CJVS0*(T& M<+H Z8C[]@L^4&I5D(MSEKO*)@2.2 3K8#6ML XR04H& 0!#)$5+)A/&LQ \ M> WL &Q?LD-'I D:D$<!(#JA4*39. J=Y /@*X%C] D&\ O7X&;H.[V\\PH- M$+UNI@D?X #)<P>1T[C5T+GIJV2:\ L24+^1@P# 8&EK@[[JRP2E!@6%N H1 MD#P;T,!K9+\\B,!*!F3 .T.XH,#6RX-&H+N\"V\=S&K BV51L&53$&4A#&; M.V;":\&92\)8-@6AD+]:U;V:E+^2]@]6,[Y8-S@& +ZA +ZBDPK>VT:^9#F% M4$J!(+Y-5P=UX WHT WL$&6^J\+!F[FC\ K.-L*+4 0EO !%, 5T\ (N/$._ M0,%+IL%5=$1G[&;H, #NX,(F0 Q>_+M7O [#\ O^X Y*]@NQ\ !,!#7&0PX0 MK EJ L \N,=]W+V!# R#7,B'',&1H\=\? 6_$ Z ? 6"K F$G#R1K D2C$2* M;,D. &-_,B>7,BA3,E]W *FK,F.S,F0K,J3/,J_< 6OO,F=O$:?O,JV; BY M',N[;,BTG,B5_ N,#,NHS,O%O$;9&V-*P0=CY @ P,J6; K!O,S$C,BB?,SS MD,VRG,K<;,V_0 $1<,KAS,SC[ _MP+\8\+](9,.D![Z:\,#<',3KD OZ<%?I M0).X@ !2L +"P+U%K'$HB;W:2VGA\0/+BT,KJ0G0BT3@R[]^\+[Q7-!9?*): MK,_\[,\ += $K4DH"62?:P*+4 A37K%X&RC:](HC<P8?0S.=KHNG=+9F S. M5M)T+ "KZXB@Z ,MO=.PZXC2Z ,T+=3X9KO.=F4G;=/[!Z*UV-0PK4D+VH]2 M+<_92*-64PKKH!2-J\6A4+DJBFA\4 &A@+DJ6FU\P "AP+DJ>G'2G Z3( #H M /YX-0:!\0KC==QQ=5#7-#:Y$N)T BE% I<7<,8S=6A(--\'4U^_0M$'&"" M3=@ 8-@8A]7[Q]4Y:DJ+% HXW=B6_=>2?0Z#7=B'C=>CH-C@JQH@ -J/'=DL M-]FF?=F)C<7%^Z'KL (_'**8K7$@^J*Z+<1337J<&0HT&MR\C=$T>F>#T -[ M%P>>!*+AH0:A(&0+8 !E1@=A<&=(W8AC5F;5O0[7G=TW<&=7C=$KS=U9UM/? MO=1#=MZ:]-N5B]B:5+FUV-S/[4F<.=VA$&K7?6O:78O=';LGZM\& .#E;6SP M37HR+>#K#68$'M4OW=NC4-R82]^DA[D=A]]\ -T^0*/\K6[7O6\!WH_='9"A M(.(&0.()3F\+?M,".60GKM0=]^+[1Z-M3=N:Q+GI\ 3]0,Y.<,[*G,ZA_0M= MX'X+) 50L,EO ,_;+,E&L]FA-)F'4 ^;+0!4A0ZX()'L<)%'H320H "Z8 P" MX C:P @&X _OL C$4 "5$@L$, WHP C2, !@)@#P, H& \F$ I*L6D0, H* M ]6XP#PT T P BE3.@&( 'P( Z)CBOP8 P&0 /P( Q.0H D.<$D.<(D.<, MD.<<D.<>D.<U ^E5 /-$ +*!P+P@.8B@.H"H.JL[@$D\.JNB^HC0.O*AP*X MK@*H3@*\[@$L@.LN@.IU,.PP@.LR \>X ?H OI$ "E5 *KK@OP0.TC8.TA MH N_0.TDP.T?@ OL[ %08.ZXP T X !0X #HP X,X.Y8T #DSL?GCEWJSN[N MC@WQC@Y)T #+P!C H Q*0>[MW.[H< GTKL@([P@-X '%0&:H#@#B#O$6<.NX M( 5'_&^C@O;ONH?8/'%WC@;;P'+C@MU(.ZA@ 'P<-T: ]TD *[< H!@ Z. M$PH6 _HP ( L NV4/,N$PHOCPXZ "PH /H\ 25S?+H\ (]OPLU+Q/+X ** M< *,, &@ XX !#L [S, RQ0 ;HX!P>\A4]+ /D8 _Q0 #"@PX> !8H C$ M, Q0(/?H(!-_">?2@ YO#/<D\ !LSP,Z( <"0 'H C00 L&L.K#( 75&K5. MB[9R( <!"P";>J8 X (-D"#[, A1A@6!< X? "!< R6L*3\D .M] N0=@6T M0 6K;IN X 0Q@05;D 5:X%U=\ $'\ RX@ P D 5;L X'D$.,D0PSL UC7N;: ML C1L #30 <'L (>H.:#L X0X AI_@XF @^H!K#0 <-8 +:/S#=__T , RU M9 +_X &^,0HYGP@.P/+*]_+$X &.'ID+$/X3D.F./@H48.JH+@,"P.X&, 7+ MH/UJ?O[@7P<+8 *4WAKL[P*^@?/P0 M,L.JA<.I6<^H3L0R>=.KA$0#+$ JG MOC_]0P\VX A$H&4[4 4"\ <'P <48 ([4 !R\ FL -58 !\@ !_< FL ,5 M=P<!L RXD QF]P/]0P\K ]R< "!X \&(0<!L RXH QFQP+_8)Q&D/4+$ !S M( '_8 <&T/Z&O@ #7 %(4 ?J, /(OPTQA !$-OZ)T 4"T 7*X!M=@ L!GPX, M99Q&8 QA F/?Z+T 5T?1-R0 !=H R^T06XP QFIPT.Q TV0 Q_8&B=;HNA ML.=XI@R$QPTV0 Q_0 N/0J=;M)9IN?PD.F?K@R(@0X6( "+8 R+< U ]ND( ML^>ZW>ES< (% $ P$DA8 (#4 6NNP)5H&4#4'$] $ ( <$X,H ( 0FL (% M, <$4 0 !*, C'@ +\ ]UL WHX ("L SH( WW8PR+< U ]ND(L^>ZW>ES M ,% $ P$DJ8-)=X+HKT 4"L /:( <;8-)-0 FL (-, <$, C! %+L /: M< <&( <(L /(( <$L C!L C3, C'@ +\ ]UL/=#L0SH$!1 ]NGK\ FW06N MNP)=( [H US0 2#< P(L #_4 ?M@ YI<#_.L C?0/U[O@(.T.ES0 "#$ P0 ML 0[H UW8 !R$ ([@ QRT $8U>GGM.<#, T#$ P] $ ( <$X,H ( 2CT.EC MMN?X, PFW00$8 (KT !S0 "#$ P0L 0[H UW8 !RD H[@ QR4 HF/?Z+T 4" M, #3, #!T ,0 !R0 "N# !"8(M;IF4[4 4&P)<FL ,5E^79 #X, P+,, S MT/0!, #3, #!T ,0 !R0 "N# !"L ,>@.=RP %W8 [P"7P( <4L ,6L.=W MX !R8 JVNEW8 ! ]NGK\ 3Y, PFL -=( !RX %W4 FL ,-( <78 ([T 4& M< <W( >NNP--0 !W\ (F/?Z+T 4Y-_X[4 4"P*YW4 FL ,%( <98 ([4 4& M< <0( >NNP,5=P<(8-(59])5D/6[.PC'@ +\ ]U\ H[8 %[7@</H**=SI?R MW^G*M^?#@ YU(@</0&3CGPA=4(T$L&4&, S\].F#\ X(0 <9L CW$ WN$ WN M$ WN$ WN, V,.@[8 -['AN)X .?/@SY, SY].G\8 *E8 *E8 *E8 *E, CO MH)8V\.G#P$^?O@#_4 <1L (^$.IUT/_VP$^#7OH '#L (^$.KA.0/]<P^! M8 Y?$@WO$ WO$ WO$ WO, ^,.@[X -[?@<0( <&L ,VT.ES@ #YU.G\M.?# M0),E\"71H [1H [1H [1H Y@'^?",)>!$ [P\ ],^24+$ S#D#G<P C:8 /$ M\ <(8 /%<'JLH J*@ PRT [S0 IFK@R(D3G<P C:8 /%< <*8 /$4!R=\P0$ MP HZ$ QV( "*$ RJH C(( /M, ^D8.;*D""+P TV0 Q_0 FH @%@/;*@!B9 MPPV,H TV0 Q_P V4 QW@ "*0 !HWSE/8 +D QBE LR,0#QL +!( <3 2= M\P0$L #)4!4SD P[$ QV8 "+@+F8#@RJ $WS0 IFK@P<D3G<P C:8 /$\ <( M8 /%<'HFH @-( /MP HF %, <(8 +&\&B*$ SV W<= 2*@ SS0 IFK@R( MD3G<X $V4 QW@ V0 Q_0 "*P RT XFH @5( /VL +1( <8@ LRL0#)0 <3 M( 1&< 118 57, ^F\ 5>D 5T8 ! H 1U$ \Q^0'*P!&9PPV,H TV4 QW@ V M0 Q_0 "L8 **4 )'H C(H /,8 <"H C,H #)0 >SVP[S8 HXIP/$8.;*P!&9 MPPTV0 S% 0L!H JK<P0$H H$#P"9PPV,H TV0 Q_H V4 QW8 "=<P0$H K0 M- ^D8.;*X!L_J;@"T-!7$$,*@,'."SX&H)?N7@[^$$,.,$/NW@'_,$1!=04Q MI S] ]V8 #&C_#&X _N/@#_$$,*,$/_8 <(X.Z$X$#ET 7*$"0_J;@", B! M1U]#T-!7$$,*@,'."SX(H)?NO@C^,$1!=04QI S!#X(, !&8 L>6KN'@?^ MX.ZNX \QI 8K$/N[@(.5 Y=H P<D3G<P C:8 /$\ <*8 /%< <&T#E?0 "* M\ PRT XR SSH J*L SS0 JQ (JL PJ\ SSH IFK@R^D3G<8 /$\ <$D L0 M(/#SL K+L C<8 /$4!RK<P0$H C8( /_$ L#, WKH C( B^ PL!( W@8 (( M$ $?U7<8 /$\ <(L#I'8 "K<P4$H +0( <?X _"H C8( /_$ L#, WKH C( M B^ PL!( W@8 (($ #0 R#, T X _*4 ?TH R(D3G<P C:8 /%< <*8 /$ M4!R=\P4$H C/( /M, #QH C+, ^D8.;*D""+P TV0 Q_P#F*< 0(H C8( /_ M$ L#, WKH C( B^ PL!( W@8 *$$ #*X!N9PPV,H TV0 Q_@ V4 RGEPL0 M Z4@"K( [Z8.;*@!B9PPV,H TV0 Q_@ V4 RGEPL0 "M< _0, (%L KB M,)S:H R(D3G<P C:8 /$\ <(8 /%<'JY $ T HC4 "K( [Z8.;*@!B9PPV, MH TV0 Q_@ V4 RGEPL0 #S< IFK@P<D3G<P C:8 /$\ <(8 /%<'JY $ MH",%\ HX)P[#J0W*P!&!< ]+J@#)0"%77P=*&0R+X V+< W#H /!$!N1< C> M< C7H +!8 _8P ,H, ?H8 C!\#SO, /JP F+\ Z X R $ C/L*2 D \0( <+ MH B_I TS( V D X0L [P CY@ !RT "*, Z*\ V*H ^*8 TR8 ^ D X(H #) M0"'1H [1L W0P W^D QU8 ^=@ <J5 X3X T3< US\ 71H W1L W0P W^ QU M4 7Y #B&4 Z'X V'< TJ4 X;X T;< US, &!4 ]+:@_4< _3< _2 C$(#G3 M "#( T $ L%H #V,'2*( ^*< V*L ^*P UHSP((8 <5X _)4 ?JL X/8 _& M AUH)CD$ W3$ W2X _(4 ?Q$)/)/P/2 #B 8 Y_$ CEL*0S4 V HP#)0 =R M</5T0 <"$ SH\!)VT 95 578 518)N* )3SL)5HG_PS( V#T ZV9 0&</5U MP "*, Z*\ V*H ^*8 TR8 ]9%PL( W8, <&( #E, '>, &&J0W1L W0P W^ MD QUP [0$ U%L /L4 ?0H A&8 #V8 R 4 <. W9 W4$ W3$ W2</5T( #^ M@ PR8 < X/D(T 57+THQF?PS( W#</5T\ ,J$ SU@ YK8P<W4 51,#D$ 6V M.0A&% L(L /7($H[X TXIP/E( <&H +EL '>L '74 _0 W^D QTH)CD$ W3 M$ W2, ??H +EL '>L '7D _KD [#@ A& "Q@ !-L /L4 ?D WD$ W3$ W2 M( <+L /7($H[X TXIP/E4 _18 VVKP59P(#& AUH #1X W00 W1, W1( WK M4 #^ SY0 <,( /Q</6B%)/)/P/2, QRL :) <+$)/)/P/2, P:) <1< F* MP PRX SV$ V $ Z C, B X R < F-/P/7H 5Y4 !2$ W2H 7#8 _& C2 MCPZ( 2WU, PZ$ QUX !73R$[< VBM />@',Z4 [#X#T+H UT@ .*X X+( T6 M<@_0< _24 R,0C2<%78@ N@ +( UUP "', VP8"T*8 ]U0 "&( ^P@ @+ M( UX@ #^@ P#X"K2D ?XH #M@ <# CF\ ?#, FQ\ DJL QRX 2 D \?< =+ MX _!H C^ C. B D \1( =**0PS( V D X0 CYD !RL !RKPCBH C6( /V M CI@ #1H [1@ W^D QU@ ]SP *T YT@ %(!.#( T @ <0H #_8"'W WW M( T%(!.#( T @ _#D _#$),S( W#@ XYT ]RL /+T/3]( <UL S0M CSL)7H MT _]( <IL P*D QTH +H ?^( <?L SH8 '_L SHP /_L RU #H4 ?_( <) ML RU4/-M\ ]R$ #+@ O/8';74 ^XT QF%PWU\/MFMPSU< 69@PT+( U]T #W M, WW( U$*3G28/0MH J^, <,$ L)X ([0 4"( <'< <,X ([P %ST'?&0 #^ MD QUP [^$ RP\ +^ PNL (<X (;0 4", ?UX (#P $N, %4( "#8 P$H K^ MD QU0 Z+\ Q?L +/$#C*H D[ #A4 \% B6@ D1(01? @J&(!,0< (3T?=% MTA$)HA%..@ Q.0/2, /V, Y9T/T]L +2W_T]P%D%8 1'D 3C@ 3=WP,D0 =$ M8 **T & L XZ C#H !S@ +W( R;7@<Q, 7.% W2H.3.% W2X$S1( U;8#Y; M, '3L 4R\ _F,PC2 !X( %'( [-('0*< _0< _24 R,0C2 #X, SY, Q' MD 3CH \FH @= C[0*H# CK * L XZ C#H !RL " L X7 C#8 !S V M, P*< L$X$S1( UR0 W^\ QU8 \*, Q'( [1P&(_.3D@ #X.L A6 &XPS$' M@ [:X \>L CW8 $?$$,(L CF"3X,L /"X <"L C"L /*X <",)<[$ Q5L0C! MP ^JL +!0 <($ 70! L@, ^JD 7S0 H?L CET 7*$"0_&4,*8 **T RT Y' M, X)T/T>2U5'( [W\,;_0/CCD "+\ PKX 0*$),S( TQY+J)T !=H P<L0C< MX $V0 Q_@ V4 RGQP\QN0JX O7L JXX#6K$).KH!&-4 1TL J1N0JX, T. ML J,@ RK$).YP"7SL JLP -/8 <" M/H C(( /M, ^D( / H H?H P<L0C< M8 /$\ <*T#E'0 "%UCE'X+K1Q@"=<P0(@&4.$)-8A@!8I@#*D""Z$ OIBP"Z M( OI.P"Z, O7L C<8 /$\ <$8-)9U@.Q< UT( $]( O7(/X] O7(/Y6<^IF M@'4A( 7HL 8 H 4QN675B !8I@"[ $ @ Y<D(>N>PQ9!@O7H R$QPTV0 Q_ M0 #H,/I9'@, H R$QPTV0 Q_0 #HP"5\N?-Y<@Q9!@O7H R(80*!4!6Q< UT MX F$ A5(0O70 >C9 "G?@;I'RYY$@A5(0O7(/W#@ [Q\ ^[@!$S-$/LGP$+ M,, #, JG_@4', R+P T>8 /%\ <$, /C2>_@%@A5$0O7(/ZP( #_4 "!4!6S M< UT( "TP . T ?I0P<)T A5 .K+@=+4&2X L/L NK\ "!4!6Q< UT8-(= M4$I$L.JXD 0X#WV( R 4 <0$ A5,0O7D.4E "X X/L NK\ #'D&6R< W1 M1@&,T 06D A=@ &,T 0:< Q%P &NS A-X $Q^0'*@!@S( TSD R+T $9+P2K MW@)>,PC: !S0 Q.0.>J0PTN0@=4$I"L.J-4 E>DPM>LP@=0 L_L.KA&9/) MOP/8<*: D M>HP$TUO7RL C3L +0D N0M@@=D/%"L.HSD R+T &T 2,'Y/* M0'C<X $V0 Q_0 F4 Q5P FW00$8-(=0 L_L.IR %8I@ QZ7%% !X?H R( MX7$.,A'KX Z+P T>8 /$\ <$8 +%4 4,8-)-@ FW0&T 2K+@?3'PPTA@ME MD"?'4 3@\0'*0'C<X $V0 Q_0 F4 Q5P FW00(8-(=0 M L.J$'Y,>5P3@ M\0'*0'C<8 /$\ <$8-(=, C[0 !V0 "TX .K'I/*@!@F$ A5$0O74 <9X$FG M'AX8X 7N?P4FW04(8-)5H !SW <,\ _F8#6GC@;IOP/:0 <%8 **<#3#$ 4> M8 6.X 7^$$/Z0&1=@ SQ/Y=0 $+,, #, JG'D/Z8-)=@ F704*,,=]P !> M\ %9L /:4 ?+ L:D _#X%T'\ %$U@4(\ _F8 *!4!6R< UUD &>=.KA@0%> MX/Y78-)=@ FS65SW <,\ _F8#6GG@;I;P*(@! [H UT$ ##$ 4>8 6.X 7^ M$$/Z0&1=@ SQ/Y=0 $+,, #, JG'D/Z8-)=@ FS65SW <,X 4?D 7#X%T' M\ %$U@4(\ _F\),QE/4@\ ]U< 'H, 3_P ,:(/Y#P ,-4 ?T8$G_P ,*4 <( M@0YL\ ]=L C<8 /$\ <$8 *!4!6Q< U#YTFG'AX*,$/LWP48L # ($K*@!BX M@ 8 , JGO@[U\),QE/5"\ ]UT "PT #H, ;_ L*@ Y>\ _H$ G_T 6+P TV M0 Q_0 F$ A5(0O7,'2>=.KAH0 SQ/Y=@ $+ RBI R(@0MI "C<.KK4 \_ M&4,,@ [6X@\I7PQV@ SD SHX K^P ,-0 <.P ,:0"%#$ 1&@ @$L -.8 !U MD-OQ@ @,@ [2X ]=H R^$4,(8 +&H!I>_Y,QQ #H8 S^D/+%8 <(L A.8 #\ MP IHOP+(X <),#P@@ [8X _BD ]8 $WC< #\P KHP S^( [Y@ []X ]=H R^ M,3D@\),Q9 +H +^4 =#, /V@ Y!X \\H %TH $\P*\#T/7R@ XSX \\4+$, M, 2#X \@0 ?S@ A"( =;(/.@ Y;X _CD &X(P 6< #H, 3Z( <)L #)4$M= MX/D@L Q6<^IJ(/ S( WK\ Z3 P+&:00HL A6H *X(P 6< #HX GY$$,L@ XJ MX ]U$ +@8P(K$ Q^L !1 $VP +H$ 3^( [YD 6-8 <"8 $?P ^L@ XTX _B MD _H4 ;^T 6>#P+*X!NQ\)8*$ LY9P"Q$ !='0N*8YLQE/5ZT ]UD +HT G] MP ,:0 <98 _!T#R+UP!T 'V$ P"(/T\P*\#T/7D( / T-6P4/.XT ]=H R( M(0/ L [X\),QN0CFN0#20&/H4! QA >0)IJS@^J$ GS0 H?T 4$SQA[KQ23 ML S:K^:_X#4FH @-( /M< 3)/PX)T/T>>P<#< 3B< ^+< _CD #=[[&S= 3B M< ^+< PK8 QT0 !#H 1// R+P VK<P2+1ZH&P -Z8+\I2_ 9L0#O84(#H!2( MH1K.H1$>5 0 D 0 X 0 P#Y7 !<(!T @ 8 X 9Y" ![ !P)'Z3 E5PH M@&FY #$ #0 #J;E7W &$ Q80(!H$1*$ !>$ !R$ "($ "@0.T!( T! MX X!P "P ("P 0" <"0 D"P L"0 X" $# 0# <#0 H#P T#@ $$@ 4$ M@ D$ X$@ (%@ <%D!L@8 " 8 #@8 !(4/P' ,( L( ,) P) 6#K@#6 ML@! $"0- P-8"T. </ 80 81 82 @3 H4 X5 (7 @NHP& L $@ *T '@\/:0@ : "T. end