DOSd~BOIL,xA3|#X$#X(#X, $gN8AP `A"` gBQ`3N`,xCNJg @ hBNu0<Nudos.library``D ^ aD | <FQ | <FQ <"<N# pNu |!"|$`$|t* fae 0`>877Æ"0 pȁ0 i@/ d4$0 I~U@@( D!APB 1gX0-  A`dFD'a~`{T2\p`sSA.$ ]2` 0j$ AV]_ѐ!@@Z@+Bi@ @' `3`l$ z  L2ZD.0>(lx\`y h@E (p<  3jnp13x4 P6 d` `j"@x@P @ pj H$>@ܪCQU" hL^ yl?r3Z@.00 bI(` qA06@hu4@ ` QR P6<lH lH `6pC 1DD @Z4.04@h@PkTA|#&"`:P3@@ F`9 @@Ј  B00@ԭU0P7@7A $Y""e &1%c%E*BBBA ɁRD:!}A`p 8  6B!J ݴ@ Z[ HD"(`1 q '` c(% L(!01 P% kAC&䐞$ % !ŀ|X aPCGHX1h$8X'h D8BLS8Z P( ,`l@SAPR@pH9 @!(p=ƒ$5A(p$x E:ru#"2(V$$T`dBf BD!!f }w@0dM H4 bRh$T LH5  ip@5C$A%P` ( !01!d`R Bs% T) R`fF}&`XBs(bA&E `FpB HÈBmD>n ɄT1"b,  x]ʹ @HnB \9; HdU@& @`0XlW@)qԁ ϣI<) ;qPX/D  $Q\@@ P (*U@ ]@! h(X4 p 8.Wuq808P0 (P0( a1A!B  @@ N!!` @`|   /{=Y3_t>04 illCiddd`eFogb <A iD@ A~P0$ 2He%!R† b8 DL S ɀ,x ɀy  (?~0xAƒ (#b 1,`@RÀ _T0bv +݀H0 v _aA )>0 v K` -!XR|`A _$ZB `+ /` ݀H0`IW _-ai +` 4݀(0Zv W /&^L;A(>CH~0Y&*` '2 (?~0hAƒ (?~0hAac 3 cP /` Y0 vK` ـ(0 f+/` *ـH0`AW0 _-P`)V+` 4݀(0ZvRW _$iP`A[ ـH0vkJ_@$aAl\)0 ` (?ـH0vX<  (`L2}!f>= U)]=!>.P 00! S cJ+遊 V >/ @lmjgbI{{kK;wrv5ؚ8ؙ  ~'s+.`I< KXru!H$6~`@&:Hv ~@  0 Pb@ b 5zhPD3y`%i ~@0 2 T@2fbʈ" 7xu*TE@4:i*TȨP:E@2w*ـ_@9zf 6r&0"`?ɀm\S%:x.\Dfv`\EC  8(@lЀ!Bxw@}T)R3 :*@^`) &~@qvmQhLVԭZ h ՠ0 Z=@` Fb0z#=ƣFf|({рF(H<X`3g8 p44|S\x6m^xE:|^x"t8 h0@䠅I_<6 jP@`A0fh l0@D &0: }@(QSD%7* d@hDWD w0@ۤI$HD? a@更IIf| t@$I\dJ5= l@lYdQ,YWQd%A<$2o"( P9hs@bEL1B/ (P;Ƞd@"E|kT nEP:hU@ƪU(TP4`ժ5T :P3j@檁&ysS@ɀLCzxs@&4 h9p@._be6))g@n]ٺpa@.]bt ?Kp7@n]tt D0:`c0D.i 0=H`zšȆQ 0;`r!C 0:`})S &J``4)St`hT)\]0?`n)9_Ҙ0} (@K9s ֨APLB J9:kT!L%^jE9lT hAPs>sT (Aȃ[&: 2 $AHb :ȬAXb b6 dV ҬADVJ$H< AԃyR"EH=jsU!/R *Aԃ)QR fÃi2 nd ͦAL<2 d<)c Ã2ZdD:mW .A\7k| A\8+uW ,/r7Kw @y^1PfaAƒQ j<(2(PjР!AƒqJ(2Q2`̥J +0oj@i^(9PnF_T? Pq%AJ*T8Pg%Aڃе j $h8hxѢ.g 4aѣAƃ94h5Ѡ#AFۍ' Z%h>lUثAV65Zi+AV%h7lAփ[Z "t6;p7/Aރzrm5kvwA^m9yA .1b 90 ă] $10v`.E 50kP`۠A5 u30ga.F4L`hQY0 Q%%0 QaF *0 Q20b`Ũy#& L$X8i`EDX;kQ`/ `UeX6a`.cV 2uX5*eaL/VEX6`L,gV@&ĉG:oS`MFf}t`&Y]lG0 `& /{@0 `@/v"L4.]SxW`.H#س0 `$рKv+`/Qv R6pB`&2 Q!)\80 x`"QFF)K!yF8?0/NL)SS82p`p"р@cG0)p K: l0 KS 0`"f& 0d`&QFcE/ 1A! R0 h`0j} 8+uW ,/r7Kw @y^1PfaAƒQ j<(2(PjР!AƒqJ(2Q2`̥J  ]Z{A|g`a610QNqNqNqeNuprS@Sf< * QNu H:,<0 x+Lm^H%E|ل^E*bؐ M y( c;WKK{;Gp1Mm, =~f 8EaD&` N*`o a͢yiy,\ Gvq? Wsq /sjq-\Z55T~̍ "<< -P@?H+^IobZ@?8{RAP/@WP3=P#@$,3pOFO+o݄ ktf0Oy40%(L/=sPs}F-F`'?2sZq1 :I'_` }离fb"pzdPI2zI"B吃#BD` /(=_PەR~3WNUVn@ l12 &G0 >(EA d^DjNjf[шDb}a9 .?% 3| Ÿg)elȓ . !ϡnZ@ vǚ=./pЧ\mpU-?1-=>(1)u:d>u%sCX{L~gy&i 퇿E Jc!CG!G5Agq½=o y~NWL%Bs]?!8\/tc@/dw ?p{OOl !1@d8 1? g81zG }/kI;?_7Ҳ~ٽAwxxfx3`x<_ia aV?2<3al>@xwNl>@~~l>@|<3*.:o}'<XS?OOG|2^yO:|MIL > V=y^?Z.{>Sb0 $H6f_?(9FOl?g?^#~BpgW\r1?>7Mr'~r~{_$r`yy~ 30l }'x [w}(> f?  joy7t1ǐ%s2Gz9;8ϑ 7o܅yg]|`8_ϟ'sj?\;sw_&2ajxa}هNBPy1<\>!_FeFt3= g~Gǧ';a󒟰  \aN?̗ݼ\`?|=jenn|w1`߽x| s&fvJx_~r <{붮Ŷ}={>fA?rl!sC~w:Ά`_7vOρ̆Np9ہp͛'JASJ~~e5&&l%aжkp%?g0 p 3a&l 4A퇿EuqHNBOoCC/~o402|ApaH?!ߤ?ۅ{\x=Dg~p^_k?WxaS{w< 7&fz~CL|̦ _{CR: D? vS_4oFlc~Cρ3dNA>h ߻{7 >|Ǒп s+?yx'}01U~{}:{?~x}_=o<|> 3He3a/g~ aXza?w4xw2~ >X UWW?x-oA)g~-oo~AՌP(?;?_\'!H}<~p|9p|`)'yzn_m`nIx',&u#<`^M#?Lga0s=i&ϿO?B~~8?kAns n݇?!.Ǒɻᆬ}b?ggnɟ9Z?O'2jp >~  2@&xdPB! aL o04OHxyP sex {tgcg?3/|om?>"' ~6g7q;8?L~xY}C1t| \# l4Ή8=8yxWq>wO1o?_;/T,?3\?dyS?0cR0~=xr1G|?`+p`CH;~c0Pi?q!10yNa!f%{/0<>{y>a1 8  /1πx@'/p8@!2}!}3o!L zf0KC 3r;?7{~n+A݅{ϸ-o1잎gf΁p|7>D>C2}wxpbh /~7ߏ}_3C@S}$ H ?8 ??CCMC>`_=@97}j~Q(jȘ{@mbC{qp?B}(qUAGx>D= nz~;w84,3_H<#Owvć͒/@^<$"&!%#' dbfaecg`$2615370trvquswpЕ3ݴF@eocPT f$80p3p()p3"v!/h-4  `u$af 'Y@Qwx05h |0 @٘$@xdb`BD+g >@qf q 9X DiIc(1%5b8cǐ"ĀgPL$I P0VX(zRV`_Y!q/ 0 ΂ޗzGC xM`c%:#Y_`@9ŭ1rAجy1dGLLO0 ng"0"1J9 HDr#8tO@8AJl!|\ 58 p"aIC)'d8 p qBL6@Bi#23au@3Gbn@bv@aJ?d: ptuo -x˟Aʹb% 8D G}[>pd(x&! -$_4rs-6>_ӋCD*i~pJ tgdhK2"J i#Y#k52,2l`8FrxY0i(<`:&/'x[@PbP`Pg PbPaa0!YNh.!l>A!BbC-$R$CĆ$0 4[`㬐 q D"q \#p$6 A@9 E@ Cp?pVD]5g~S ?~`JBjS%CP5A,$] @BPE%8 f(Ƈ62 F''WgxX8.&CO :n `deSxU~h>[2tM-m]=}ʃ4Eoj @fg@ uVWʭnZ Jxh,*_+@vV_̭ >)<@rL 9A&y<@r 9AǐcPx1(?h #T8riN[%;, pX@*j. 0ނ; f@d0g-< %5JֈD<<<<<||||/<c/@@B{{..v=<῰=̉"3`=<< \z[h_ ll--{a$qqc<5~kN# @AW7v&>^qو! S$P$M@ 27H/fQ@<#Ⱥ`#AfOqP#% P0B`l@}S[%PJ.18!h,}j+;nJbzd,D\!p pD& Kg@9ҠʃAʔ,C{|2{p z)s@0ӈ 9e@5"9@."tjÀ8.1m@& %b3%C 4sb c 3h=<@mMZ & P\b^0M hn Iaeȸ@pdL߼ РM}h ?Hp@뱎#*Bu ;w0wzq=NHf`H&@$KU E[ H @L$E@] ( { X@$ hf0?1x@@7`>Ю k $4yx+  @ c `Fy@~Aqn'ZT/a` 4T"b'w&';{/g, p ̀WbA@K$dxXp:kw[gnlK ZF.:.&.<` : /2$ͦ>6A񐉈      @__vF =}?D>` ` /2 . ,@Q_@ @e@@:@\@X?LTx8zx 888/^]Bppp _A/} x p0"aT3(AくP~Fzz@G~A+&}0Ƕ<(1π o`|א!?<7a퇁C XOw??~?\xzckTNxǃu۾ )1}׶!|gvþ9 MwyAlqy+.{auC -he0%! b2> ܂q/'O;?C<.3@I"B!Hp|f`2w0GHx@x"@f ,9 K`qa Ea?Hc$4 ܄?ɾ '_N(4mw(8JxxD@Z@{@@r@x*a/< ̆!HgψEֿ4=py'G`Hʟ?!߬!CVh<os=^V㐿?l<%@ rqqFa}>|>s .v:?;{qߓˎ9>B.+!O&I '|lGʏ?O' /w!|MO ;(P}9T|pfp߇w<2=A E9 y/xrOV<@ܞ;?AŽ/{(0]7Nx?`pyob5yk1c@Mv{|7*xi} 0x 0r<~ү^4 a` [a`LJ3=a8fOL| r0i `? !C/y 9L< Cs,d#A/?܁/'0c1y b V' q|Ta0`<=~M}@߿gl? ]A8ul98f ?l:0@5l=OO| 1gu1Os`gyrn|RyܜY3#,ypw]Ƀqr_q_arh! DpO ML<.b?&3biɨ4$U_ | /xl|%|lG=/E\忟Irg朘8 rf(ri]g Yh>"'3F paɳL|2pGwpyx- LdA;$yy&)q'-?7!@ N>B3L"I3$?O>L'e1c/ ẹM_ǿ}?wa>?2Q qp0l%2C^|>FT|@44 dy l:< # Y 9XhP>&88~0 ?C@9o/@?z(PZ@ @,:)tRޤH% @,4iaclX&` %9i!]J0 X` d@4r1DE F @<؀|D&z*nT&! jT3PfY*T٨iP& J0`/0` 0 0ib.q0=k`/%p {ڮB E0`/qP!Y\ 7@rP%_b 0)R)H,LT.QH6LrR7  .H8J0 ` f|@f/(&NjL*04/Qh >A`. `8 !V `0` %AK5 :0 Vf()r0 VE`0 V s3`0 N s 0p`$1Jc1 ` 'LFt n`8#q  x0`P"KF 20 `"рGW/kj ߴ~ 5wRXPT@eQ$= p)3;!,:"A"`KM8R0J=I  n d$Z/x9s0En74`> X = 0] LXVK: jPFor@=n&.慄rq'u dp2J )Flh]:ij @6A@'" maP\ PF +: Ao@[!@Z Xy&4A CNQ$(ba0x;+r"4D 1̾{xu$\hnɋP7@AS'`!C> dI/@ro@S 8ig [$ Y 6.s+C;h@C T؁ qP?l.* E@qb}WC " a’%%XE{+C #a(0r_hrD4Ɔ@5g#N#xd=3, Y! !g%% _FD=@3A0P C0Iq:Y@TZ갾t/q XlR bo"ee*jlKobgG2_^XD"|KeP"C0/8l (8 W o$OLP.U~e 9 5 )23J`-#H@Dnjs較( )/ Yz`5AB|IhfPBIH x8ސLRf`D3 6668`!8 pkI<4Y 4&U>0P Jiʁէ*FT\9Y Ju BuN1/' ZN0 1xGw6FP~kF@z <`$OrLpP@FZljN'Cm )"dB LP @E?|C 5ڵ 1B pQÌic)J%Y4P0%/EA 0PKyQ$5IU`(I1 4<ֽ4=3;DK`Hb Yi7PL`" ~a|0@M */}D; ZdJ҈(5ZD~a :U &RK(ϔD` DA !#[h4!b4O 8Q8|>p8|>p8|>p8|>p8|>p8|>p8|>p8|>p8|>p8|>p8|>p8|>p8|>p8|>p8|>p8|>p8|>p8fn!@ @(@   H@@ h6'B@+ HT:C@& (TZ=Q@! F@%  hvDP `@#9KD€A@[xLCyl"qPA N@.  (VH@@&  h ;/ D0rC@' _@@&` pL  @M'?\@#  %O@@%B G @L@' @ 2 P ` 8|q @ 2p p 8 AH/@`" 0d_@" jCAzIQ@@(` @) @  `B@& @, 0K@#  zc`p dpaA@@&`Bq:힋P@%@ ` 3pw<>h gdAl,!xA  ( @ 6@R @&B)\O X (t&[CA$/X@!  @,r`@,` Y(<I@+  $2 X XpD@@@,  Z=GP7?EX"O@% 0 Xlxx& l=0  GG_R@ @  p M@@' 0 8) DdV_@&   aNÔ Hh 'pl"qPA N@.  (VH@@&  h ;/ D0rC@' _@@&` pL  @M'?\@#  %O@@%B G @L@' @ 2 P ` 8|q @ 2p p 8 AH/@`" 0d_@" jCAzIQ@@(` @) @  `B@& @, 0K@#  zc`p dpaA@@&`BqF+jf4Dh'TPv De 3? iJ" >A <4Dh|V$Z5(M,`=Fp_h? Ā_l(dlRg90C ֞re.üvw~x9?&/<ᘁJ#qg̞N,eg1P3wIb@3;`,7=5I`̱*3A01N0 Et!D& $Wgg (vN0!Љԉ?ȴ4 OH#4B/z#9N$L!0P]'r 8 3V7 GBR# @#W`=?aAE v}rbpX !6o2Vc8`9ۇ5bpK/z0 v/0 D>&3?E?PEAJ}s(9Oрr\1Xa~ D%x2o (PF(rd)4Z(dh Ȇx ȴ$C$M@X?`R,J `Le!5#_c@ :,@yaф,! )U(4LX (|41T\1:TA. kA@ rSznat%kX!2q Q Bܨ!h P (^STgDmL* 400`p`&sJ`8$qDe^Ex8'`03@Q8@A$f( 3@(O`-8&B?`$0$Άc/ sxa7 \qY#^b-PP9QK"{m&PIhD`Q-Aܝ h@E]K.Z|a)Dƚ-QẁTdI h I$7Qci:ʁK@:bldKC#cS3s K+k[;{G'gW7wO/F&fV6vN J:ZrB.z~?y/<ZflM^uet]l\Uk_o^z:[{[XhJ_XGK  `_ `qR ,ŝ^j  fHql&@g$1s*@H C4#.vJ[!(]@fx>C!|R>,ܤu'@=L}| p7s~8{F dAHP=0W}<x|@pwAくP~Fzz@G~A}X Ƕ<(1π oaߠ ~@mPdSχ<f?~<=0b#?0$ 0`#g}yw! cߞ ! " C?` )Q(̲ WD' sɐ`` ?j^Qx@83~@EOD@2J! _+;A|g`a610Q3eNuprS@Sf< * QNu Hx\|` &8L/a(G| YM3Q0 4 & ؔt( hfO_v7 \006%w>Gz(Ao rpI і@ׂCl@Mj{+MQk@ Kcr]~t` p{ *æys#Ebz{}4:Pe"0d%Bf9!ܣ%P&` $w㣠hz23=>j!*8w@ _Xց O%30 V#X6MR@b> % F P : b}$u~*v%-C``+H$m fane2rvfabeLrBDad6DrfaNQQ`8rx`ra@ m gra062<` 2< BTB6aSJ QmNu DNuSABB3f DQNu804@P1C^ !|$qP`8/XPx?M@A Ağc`ʣ 0 ,3d?BE$`H`" A@MH)NZ3@PX!"ЀX!AHX ` ( 0 ,aȰ72$%50@0^ Pjpsڤ700CEP#pҨ8,Nx 8, /^@xb8`aPD"zӱ9WaH#` "ƃ$LP-f`'049:1^ `Q*Cc A@CĂ" \ .RNP&< L x   E@Q   &@J@A@VQWV XTbD zBY$N,p00jcr) 0B0tåT ?H(-Ԟ`fڀ*$1s;::4   }r D<A\A`'_C&h H&fJ$  ! A|B@9@A @zBI@] ,3PT kr8T\0E3v TZ  a !D`*P4B@L Р #B`3> > }PlJ|* !P>h ( `p@    0 Ё !PCC AಁO ٱ4݀=@Ǩh-J}K#E@2L0n @4 @04)ÁZ@O!!B"B* 0 ahx  ","͐JbD@@APs"x4_'(!H C(Z Nd)` !LX )2"0R`) OL8x`Up(9x R/ ^ @Ỉ  PG84pU'( GF`+$ A`FaГ)0B`C$ Cs(PH( U-mL 8o0`/hPHmk?@I@rV`A`S`@҄P B P dE&ij.p6X$ )$pxX  1(!88PE+IBlI%H3A@A@A3@B1@Bd!b`3B!%aC_@A02a@ PA`]A ! TJcBbR.PAyd&d   frCP``AC  J `x@($((K18UJ4(7P4@4#@0y a:@ǏuʸPH0`A pFP5x#7jLVWs5rw2p#G[#*TcaH0A':YCsKcr` 0_D qF$,-AM! 4t@%%E  ( zpld+  @` EbBdA (,M͎(x0&Ws0$x :ػ;@"ň@`pP@X )0r ^ E`-,  f tdNh@*! r`- d<(_Ӏ *R P$":;!06,6(Z@8#(8(z+ڹ$31u2p&qt2qv %8h2@ u676wMH!@ࠀ @N'Api%pvpI Cl G/ `lldH "@H,pg>8 E"87AT@ (@( )`2=H@Ȧn|-+@ :PC]&2 P@V-2 h `T^֘^86H1@`/D~ w `e`@Pt )=&YغX[>`hAΆG` " E W! pVWHP  3dQbGEo"C? /0J('( `A@^A"JH(` @IlAPAJ 'QI@Ю`L@N֌RJ):Bp6c$<…oaG@5r\L\Mi]A&810 );ػ[VNYEIUVTNETD*pghPh!P&@Z` a:< !34Opv!9seHȰ@`l$" ð! n(O п p CM x}O@V p) p4 0*lD @ HU X@Ɋ 1@%P3 @4,"B<HF+ AFAx6B|bܫ;xH"  D9(@c@Q."5C9RrJ  -%>" )dA& Jpo&ۂQ Kp9(T@!ЈU /^؇Pe\2A!A`xp hj0tz @y@`N@IAp+8QN8&: "}Z@!.DCC2:P#I<   :07:>aA^ @6AH?`?AE !(nifP?ƀ E^` 0ADsB0dAIQHD9dCF׈A0E\̉ Ӱ  Iӓ$$48 <1'~eŠC  pH `01P0101IH I  | @ &'`c$P1q tAb  (` %` FzLCs!x9"`e0 1bC (aÙ XA@b,p< +!pA2 @82[0^PA@āU@; | ` <0=n # 71% .  3fcKRcF phX4+Dqʺ ! YJ7 hs ~@:Ak ̅ Lʼn0@@]P a f006@ #!aA=@B`@`.hh<0 <80<02<6@<800<020< 4 y2y, B{0`@1Su1"Tb 80!N^FPJ0:*A HX8S"8V@#!@&~i) m" f`2't0 Y!(^g 0 t`R1 #1 :V![DXBG>)q E`a*M\@ @pfÄ R@(` `Cs&!x9*̈`aD02"C3,LHP t.$P]!  !  7h `<3!" (@Hō`0:9:;@A;WKK{;:K#`w :x+ۓ1Rt662p#R`1b%A )W;sSa{[[C;P}!@_@ @e@@:@\@X?5)ʀtGkS}-U(21r 1s+ˋ+8|>p8|>p8|>p8|>p8|>p8|>p8|>p8|>p8|>p8|>p8|>p8|>p8|>p8|>pN 8<.xHT@ @>CS-L_z o\` OB@ (98G&;&8 @s /A\ 0o/y408-g1srݱNLF!6擓crf 98AO"NMbSnMPjNO]OC0,@a?삐Qaǖ0GT@F\ 7sĠ,s ~M@ / p A??Iss3B1B>VV؛'9z7OD*"@n 's<Fb@rlRXAFhp.Ousx2 Qo_H( p"O?q" F 8 <|O}@?删;?yW&/ɟxx|Oߠxrr~Mr r"@>MZN݀*%&ɞ &;d@Lw7jj!/"ʘCQ~Fr 7Kȏ `E_&98_]e=ï<8}10B`}S?Ou_N>_ȳX@;g_JZk$Qap@7\w ^E@9F( >8o_x/WUq{?'JZx8L a?@m>ـlVp  P9 _ |xf'Q1"1Bz_)=Ó4 pd@r|<~hOX91@@H@(a@DDGP$ "@B`@e(BȰxpx@=dyQ07'" y*Wq6N?'?, @?2w_ߓ[?G? >v67`&&_9{~~On2C'>-?O8?c~x#g0I #7Ra 8x`_?q~d7 F+@O> QH|/b9/ lLVF ,O11<?5BG~a'??Y×e_^C-g_u8ϾLL_~Ͽa灋ćo7/ܿ!o/p p'??xY9_7@əZ:?ɜ# oɜo|<cGG_|_{7/ R#w?x &0x>('@RM9gzO`_7l %~\_-˓~ryx|䦜sEɏss3p])u !ޛ}7wrܭ7v @gy/7Ɂw?'9nC7v~c &*]BD:TɌGpg'>>> '@/~No S0ˀ?8OD^+'O<0>#o/?,3Ir~%O ;@dq?3@:::8 Txx.|O EP}@Sfp᱘E4ŢK0[8V`$d$0 QU`&1/ 0p8Ύ'PP0݇ $Ms5C27 ǰ*< 3`t  ?0 aM%fv0"lo b` `f qhP`p1 1^L0TxxDh |Ϙܠ >~c?> cc 8? "h!# X"!8#x "!# $"!d#:h9;8X:98;x8:9;8$:9d;QrlmbilޓgBjfljcO1;KS}e{;s~_hѐG=Z* <LTx8Xh(Hu97 @ B`"A Opg,q?3@:::8VlNkQaT`L AaApaAC:Aa,y"<~tNJg."$<NJg>"$<NJg.AJJjPHCHpQaA2a(Ata `"N` DISK>ST-ST- :st- :,xW9 <"<N:#Nu,x"y <N.Nu,xCNh#Nu,x"yNbNudos.library"<D$<,yN#Nu"9,yNNuraw:50/20/398/200/PLST ADDER by A.Sander >> Public Domain <<"9$vJgR`,yNNuABPpa 9Nu>*H|a@A^ g  gga `RF`B5`NuSFjRF`Aa` ,y"9$< vN9 NuAa^9fNu <9FgxSFA2"ytv0 gB `m 10g `m n$gQ@z+Y"y09F`,RBRC`$y09F&J7"f`"yApQA (|22@"RyFNu,$*JP`lr  0",4:P^st- :,xtl    0 : @ R j p v j 4 PV\:DNXb$,4<DLTZx (8@R\fltzB<`"6Mt€\J@`% va:4`j PIQDMґ }h68,p# @{`,R0ؔ`aķ@O,"[™*7 :-$ & T&eנަ) ͹q#RPu7+ dHov8("2482@0@2583@1AnQG%2(¨ŀ`F81 ,;P"I8T>M'G'_\ذ O.y0/>"|2pH Q2R@J, PBI 2@!H%42YXrG}qӀ @b h*$HGD D @mF5`$AI4 ` , `+6\ <n [ޅ |*v f$<*aP |$9 pa0$9 pa0$9 pa0&<)$<ha`TRACK X - BY CRAIN OF 101 (MALTA) A - START ADDRESS OF TRACK S - SAVE TRACK WITH CURRENT SETTING AS F "ss" \k - FIND STRING H - HELP I - SET ADDRESS OF TRACK WITH = START OF NAME OF FIRST INSTRUMENT M - MEMORY DUMP X - EXIT CURRENT TRACK START ADDRESS IS $000000 TRACKER X BY CRAIN OF 101 - THE MALTESE HACKERS CONTACT US AT P.O. BOX 529 VALLETTA MALTA a( g# `a g# `&9 | ga g^#  | $9pa00$9pa0$9p]ݦta00 "yx pa0Q0 "yx  l<.Q  #$< &<2a.9 fP` | $f #f 0fpB 0mD Fn> 9n 0` Am&7^BHQ  fNu& 9n 0` Am&7`2A|g`a610QNqNqNqeNuprS@Sf< * QNu H,4`^P (!BEA2\Uh@*X D"4@CPfCŠ Dr4EO0&t6FNN?& /h ,] lmLM~(Җ ˈ c @f"6H Uא+Q춐x0)e8y\,L)899FZVJ#O1!u?@yH!|?< y& 礃@Gy@pxMdp-ɰOWpt/tl,( 43Ȼ遁! ǪQ @,@!@ʁ@+(8AA!ir#1]H A adzj_O%S,e0 =B b0~i77-7m6x(L`\`hýMb@@A1 Ƥ=|'+P`ѡDQ[I 7_c%k @}bWd0)&0$J`QVmГVj4ۿL?1Y!IsQmpK̖@ZA$!i_x a84 Kl HG/ )Pxԟy*dJEe R9VPgAeΕUϹ\QҚ'0`b%iYI0}zR^3:: 8"!Љ*cȕŻtE PbPcPbbu(@PmSh n fgY^~:h/ `?o0VߚF: 7D/Ɍ`0thĒxOA<0X^pR'|p7BB6"" 0 J 0_M8p+2XRD@3bA@mDd ֆH*I%K)&Ў+a:P)(T : x8"r_i& &"$#q3E 8V$h<EAra9RCNہ\4J)NIhIgB! DO2 <0*RBPkx'kz9YA{-˄ZTy9It 6%a?T$++ʄ'EBRDOQX* Kˣ% h@à Rp(@p#7$'qx3C  C{ mW`[ &Lq#DDH $r@B*OB|6a8XOjHOJVp;pv38 qp @`FH\yt냥5.> t$ 32Ѝ@Z i `X&`6xk%vHЁ$aLd7I| n-`$B7ylHLCFE.m$" hX'p,0` X$)  |>|>~mHRg9ymy3y_My}}ymy}m}} 0  | 0m1y1}|À|Ǟym1m1y|xa}1mymlm}8^1myldǀm}<`"6XKsπs<<Ǽ6>π<>>o``>6`0``cπ>6>f0<c<c؀666f0ٌ6ac6؁oc6>6>ُ>o>πoc66ُs^djt*2Px8@T|Xf oH`mF-@OxS`H7p' PGemdCٗ2̑7\ZbφXþ;`ldI u dyTLDldnc'g?!xr';q O4}l|O3ׯϴٷ藾˦"D1G!>"9}j.!eM\zl nG4`Mg3;%f‡FׄBzI:p㦇ޓ64D?OpSD~[t cOsuDzǻ4 >LhSFceɏt=71y5Y1)A)Փ'!EUO#eO tpvՖGOnD-d'D6O$6? pʂ˸shx#HtDZN݀q=٦¾Y9pD)eDvVFtCx rͨ,c 䏎s_K'g6fg'J'ZNKm6/_?< ۵rwuțݠݶ(`/r}B7m&Lp#6xosВ( a5ټJH >rc>@# jq*q͠> #;PP6u|8Oyx?U,?ĘC}8x" 86QDq0… *K$݇`9QԀ&aaIkp/Ú2;ad PHd4W:M2. k0)X7L" Wh|, C4+Dq.7an8pZ. jK*[$Hb   q H8|AP-< Xf|4%aaaa z! NjM $mI$EKʄUj[ !@Z !iR"@X`E#aUV,X )VG&(O0*5ъъђссіээёIįfpB]A[(`4 3"AAaNC`! vvAh  CBPf0TQ^ ~ۂ8ys =#0Z^>6 0`U>[3o D '1Ay$bj|wiR@pf`>8CAP9.jJ-=rIFy givH(r!p*~5(ʀtGjT r3VwB%P q:@<@8@?#  ~]@fI.5)OU@D~p`i^f8n @ 3~`L &tiҨPfyy$H Ui0 XJ ytV/E`<%,X` BDd$_* @4m/ %@8j]"@0 `& &H6z`/)0`1cS< )p 0+biH#0 \Xpˁ`#J) P4.%b W0 B I0 `.iHLQr0 Rr 0@`&}@J`!aCF/(d"!MC:@c< E܌&" tX0 p`$KC #Ox y `h. 6 0`U>[3o D '1Ay$bj|wiR@pf`>8CAP9.jJ-=rIFy givH(r!p*~5(ʀtGjTt_ oA 9gB9 fSyj3R( (9c|0R 9c |0|1`Lyj3S( 0g (0l&|9S 0l9` (0f9|9pAtaNup9 HA20AglA2@JgJAjr` Axl2<} Ac2<0I1Aa8Ar"Hp$X4QAZJPg $i<4`$i@4I$q4Nu AlNu?9f Af A0`A Af0` AfBP` AfDJgf;'f 1 4'ƛA`pA'Lr ʺC40hq-P1Z* <LT}'9@ @@@:@<@8@?#{-_[;-d<_a(pŻB4"O sruF0#O 2Breqd XI) P\1`pp`p02P06`01@05 B0< "0: b0> 09 R04`BpP;h_`P1hEo*P2hOjP0hC0*p.\``u* e, B=@`s(b`".@(-Կ@((4 DK" Ѐ Ȁ &  cr0  z0, `@v0( Py .R``u * `} $2`s F`dE03#07#00P #04P#|s;".(@(,@(,@(̬(plư UkdN h `i"(AlV(cl"vR(P"NB(r'  {a# Рa ap h".@(ֱ@(/@()({Fp egwp p p h0"@ZBU(\Bu(BX(`" w~wp ~p@:] zN r,΁ l AU. dJ0* `i`k( < !@p6s0`Hɓ0 8O 3vv3@*Tl]-m \Ƭ`eI`dF@L i;s!(#ҦE6vb 8 #L2< #,2: #l2> #29 #24 #22 #26%>r BSCv4I%Ks kAE8Hڹ؛P^EЄdal2 N5 S ؛U,mMt` 6Ά.Nf".vʦnv( Ȁ &  cr0  z0, `@v0( Py .R``u * `} $2`s F`dE03#07#00P #04P#~CS B9_l |S3kǦ ?~ JI(vJa.`$3(*?L VD![O0_M6|@HPNг&^>JL&  ˺ f P, 8f!ӂq(q<=|(r9AgCG~%9 D$dk"|Pp=t"HN(|T=T>$LB'H(h?u"u :*!v!{2:)!DH1p*%|&G9ҹث@GsAYb ǧ  X]"u? x:34GUk"7GU+Z0 sDHP+A9x єĂD;R@H|)MbŁ(" :#n" D؈,3a^`b4Bb A6# J" DH*b@D !`|>geRbKk>/6t^l`  x3 bx1򐯋Aii @r6P* ̡bx b` )/HrCKJcX]a8m! 1 rPD?B4@b0DH znBc@#r1=(: i`P%ǖH҂@Q(%8X&#G@Vhr|A9H"3!< a~c }3lDHY='=bه~AD1kt_D _2ٻM/"E7<I$l&?諣?`'O[tG{%;w)&~'|{཰ws_9 KZoc틧b?~B৾,_1p+ ~*#lS 7z{ 0h'q[6aCxM $ts((_Z㼻4~Şi1a_xÕs=>?>$K9gjg,O8o۴ϧ3,:q4nrg 3Ц̄XU8ۖjHW%yPfL%'ۓŇ_9O-',R`p}w '?Ї}mimJ;o?͕gj]b˖Z`_<x'҈>lY[D _0TB!Cn1eW:>h0={O+zqͪ Ⱥş_aB2G9 7_1uP~7.\ccY8r?2~lЇ GW,ρ=E-'n5[jm#=?qkRK͎[?I? y̞>$x,cYyHȇD n$96F;1˃?)Ot#灍6pǏ۪Pew(A{7$rvJj5 VܪaX""Lx,*Wtjg|4(QϠ8eBܻfUuOr[$nLZP䍲)FH9]4mI8r iS8 hDSG0!Ȭp~YchNJQlK?d'B/j^!L)fT'70A;ãW<]#JOA|g`a610QNqNqNqeNuprS@Sf< * QNu HZx\à]GR[31 b1?_i)$gw Ohc0Fa3:,U3 hi9E E8"" D Qy/ QfQeM2Y\ 1 |<I:d6 7/`Ⱥwƾ,{2XX'` ԰.1!B`M@2Ҡ@')2I!~ uI`g@;Y$@Pvl3[~2.sKΡ=r cD>^Z5,+\FT~Ͼ553&2u5!LL=k6odCU\],L; CM dDM]]- \  TPE j[8У*ʘZ8؛9}=s9`3  =+#;;--GSD1҄|@ Kcg:K#'C'?+Eb+7(Gj82Ԇ8M3a]H uJ  N=\ -$ˎb1K# 4rh") dp .86 /pq@)1AGLQй2,?͏obs_d $œ::I@+pDC1Jo-(OӁ `'. <R "@ H 514U8A & $p  DYJx$N*Op=:¹lvm~ELJc^nDkCDXCa )ts}(fB-@8>P Anj$lABQ^nCl„B9s6#T +YP1&gECG v#)BL8($>I<O-)DYU ` `  ɀb %FB D3R2)  v"C>!Ua"pɈ`0$̈`H`D02 } Y@326 A!dv@\B 6? lr`mVG`k,QƂIEN1ā(HSD("  @>/ @q%(&cv'dD/t_ Ҡ 9H Px R$)''_*@cH(h@AA ` /2 . ,@Q_@ @e@@:@\@X?#5)>*txpG~}b''{'! |[@.|  pPbA(AvEkY>ri"x|P xW \P \TERN\YT+A !rח($,XAFPYXY''AJe%qtbR)(HRIH Qu*r$Jʀ* D$hh "h%D5씢 $e4蠡ԕ$k)5e%.@28\$0$*$fVqVPIZ[1F^YYRHRBXP0^SS%&+ " upP7 CH@P<Q%!((`#( @@ P1 `df:I 蠊Ԫ ,XQJeDT HieXmc8p@x@DnҐ, 6 ET1<8ƩX zJb@dR 8KAAAMa`4p=`w@䂁!3z,kyC[kA-`rDUFHLR* 3"ʢJ”yBX !T( K(BU@ dD Ȋer*5 NT %%D  ,HEIUXER^NYKz3"J)Q@&eUd(l&Lf`"a0n@@Á{g!BC5Q\$1$ n?&OCp8 Y`0#E\vG ;Au8V$JeA<P0EV.w1j A&6#08 d@tʆn¥$x:pH@ $ 1C'c!f, khyo(9 bgHj*\ I_ FhllԔ[ ކ/`Djl*R( t @  @TΒȹ@DA W;#v3 @".vΖv4N66ƨpDnI؟0. =+=2< %8884²IY%y0"jJʒr ɽ ?` %DVlJk %~dȄ(p !3AD' !?  `eCx2 Á"\K-G0А̾ܳ $HE<$HM@vo>Jj"8tt#ԬD9(W:QBK<Fx`C-J  + ^3IdB<NR50.`Y S$ a# H Ȅ@(08b,ªP4(20Rrscy $@ A H7q`HhYjF`@`LA`  0p1qd' `,€ caLt@!M */B`r_ dp`H%VFA4p li 4)x$ @  @@'p8E Z[b`XPA*D (O00 bp p``8F80- a8"pf(@As =@IA T6   H hiP~'0Tf &AcR>a$ 3h05\䬐x03p:#L^!0HK  1 h$Ad@Why$ʥH($t4@a*` ܂D (Rj jhႀb2ÙQ ahpt0ÑH (P"ô$XBb8 10!_3 HeC`:F O  kv`a` i` ` /2 . ,@Q_@ @e@@:@\@X?#5)>*txpGx` T. /^N}|BhQ /%] z8& wRW^ M |'p}%W)k%0wQJ[`:[D>}߽ܘ}:&X@E. |,~m ~|W "(.4P\b0<  0p1qd' `,€ caLt@!M */B`r_ dp`H%VFA4p li 4)x$ @  @@'p8E 1`4#3`.BpP1m4(^P3 i"Be8̀ IxN,1I 04 J@0A0QB! (   `&ѢA@@  @QAP@k"dFHF P22@ 4$-n P0 tgXV *@@PPHTQ% j9D v\zaqC$ @`vh[ P@h[ 9:@ \@!A( ~vP/2 Zs3$cI( &Ac z ff f%` bf*h \ f ţ @ぽX <ā˙! =̥k)GF~A̪a0WB "sV  ` 8 Bd X Y1cCߟϏsb:A?8@/P`n,~3!d0fefl@ kjn@ϑ D  t<GCQ Pd̄@ Z$ RF|wGku#lX2olCiddd` 󽝹#&f \ \mMmLhMhAC. 0PyzQ  C3zDfC20tQ xe2h0(`0x 4 2P8` h(l:: ^iXs" dPSDx7Pt6D`Y@2%A0b,  c 61P010-Ȅ7~iJD҈ TX*u2 r@3  l@2P x_ kPYGB@ 8 D41D@@ Location ---------------------------------- -> $nnnnnnnn Activate a module by pressing number of its position. >9fNuJg lf $<FaaF` Playing module... Press left mousebutton to stop. #( zT <B$S@nQR yC oXԈp"B2(*ԁQByByByByByBB y#ld!`lNu lg! lByByByBy3NuaNHRy ygMxJ.gKa3Jnf=|a8=V+n;n;V0.y=nNuX(\:}hS@. xqj(R\jt & > H , : P Z | P&8BXbxvBHjr$0R\l$8 "nv$.\8FL&,4N3 f"BRB09fBLNu,XB. gf(C-q(=sH=sH/. fn`;sH p6\NuL <gNu*( y"y$y fae6rvfaveNrBDax6Drfa^QQ`8rx`raR m graB62< ` 2< BTB6a.SJ Q3mJfNuN DNuSABBf DQNuxx l LO$Qb$\Z`B jP5`Ŕe !Pl e h<$ pWR * q  x8f a@O ) .@p $ `@G:Z RlBW! Pp !sl hYVP0Y`!5@ !*B!"D!*s@(v +@*;K @B@qc@FxH3( @t+* f/ s2 .Ap p: &\Rb U'(R ~$n\n`\ i UXX[0A%RfOJ8<}?`.U\ & P*AP0P jLfeR}@a,P< K tDn `#4t0P7DsBAd"P1DОhjA~&p,1@hF0@5SX+| `F , lQ[W"`F#n K@ @hY@ @π88%1>` 'qF&@G' T%4]@ȟý[J (@Tm0d]@ʧ@ ISc=$ (HC:!~+0|`c]\뀤1`.@̿G<<(P:)x@O&$5ՐPa@& laiZX0h:4R xp0%`X P] aA^w1 "y, P, ( $ߙ=IM AN@   EJ' D8b (hd&n`,Bfw!(2 MA @iB}@ 0܅K# P\ap`F(Ax(0 q)$@ :JI@P( ๘ B.0"AMH;s>SX4b PPpp PH(A@P @ iɐL p 0 h( @@Ā0& 0 A Z!@Fv J0@@`NaAФ hdDB1l@MqЙP`Vnl 'X8%`=P2B~@)D^X 1T07 r ?jAW1b&aE4u lPJHh 8 '`H(" Ox` a=rq .  x 4,((!14HP047 1ch8b(;j02qp ]30C p1;  1#h@!`Q6*3P@ (F41?0P8gqqTBBA,Q A`x0Cf7` 4p]N`Gx:Kf^#Gix=;sHޠA#G 3$epH`A#FaDZ1j%*`0GQD 3 $dTH娑Q-0I$`J/$IԒ;$v`JGEdB*,Y#FmdJ6$qH# G)R4kHE#GT&R0 U# FCTM*y*WuxH&#G42i6٤`F 41zwH. 3u0 `X/tᑏC#Gi *28hdp0ay_{dR`JJ`ȩS{v`ڙ\&* (&QL35 qS(.Q\;˕Z`.rzmrP$A]4*0 BGY *0 RS&|ToQR3*5Tr/*U$0 JP_fvITq-QZE5+TaV-PZGB5h0 F<\f<VGIZ6hj=J`0'_j?+QVGZj?+QVGZj?+QVG:u?'QNG:u?'QNG:u?'QNG:u?'QNG:u?'QNG:u?'QNG:u?'QNsn0<`x!OFԂ`#A 80`#AA <0`#!AC : 0`#aA >0`#A#F 9 0`#QAF=0`#1AcOp\9r3s##ώG9Tr8Xru+̶--------- * ********************************************** A -> Search a module within chipram. ($0-$7ffff) B -> Play activated module. C -> Show status of activated module. D -> Show samplenames of activated module. E -> Write moduledata to selected disk. F -> Write samples to current directory. G -> Write songdata to selected disk. H -> Read moduledata from selected disk. W>X -> Quit this program >ap ap $< BvJgR`,zJ":VNNuI*LpBQ$<avP$ ,z ":,NJg xg^ ag bg dg , cg hg eg d fgF gg tinag 6243f~ T90g `taNu$<aHat`\ Na du Sack, haste mal e Kipp du Kapp? Ficken, Bumsen, Blasen, alles auf dem Rasen. Bitte, Bitte, lass mich dein Sklave sein! Hey, hier kommt Alex. Vorhang auf... Ja simmer im Wald hier, wo bleibt unser Altbier? Generator 7/8 .U.. Radio & Tv ... Absolute Fashion Hey! Watch out for my forthcoming product: The ultimate Musique Journal ... With - Sound Tracker Top Twenty in the month - Interviews with the best MusicArtists - Detailed critics of new Amigatunes - and much much more.... Watch out for TusMal, the ultimate Musique Journal! Published by T R A I T O R S ! ! (C)TM $<a$<aa$< av$<alKa` Press left mousebutton to continue... *************************************************** * Lord Performers SoundTracker Ripper Version 1.1 * *************************************************** C R E D I T S This product was written in the interest of the better "ripping" of music, for those guys who are not able to create own music, or for those guys who like my tunes and want to hear them outside of my stunning intro effects (mh, Eigenlob und so...?) Thanx for the inspiration to this product from Icebreaker, who created the first ST-Ripper, but his program wasn't able to save songdata and had a few bugs. Also my product provides saving songdata / sampledata / moduledata on which disks YOU want and not everytime on disks with ST-...! If you find any bugs, or you have any ideas concerning the improvement of this product, then please contact me (Lord Performer), writing to Traitors! Signed, Lord Performer after 7 hours developing on the 14th of January 1989. At last, some hellos. Friendly Regards to: Crazy Typer (MFC) / TIP / Unknown (DOC) / Exciter Frog (Strangers) / Stack & X-Man / Hans (Ex-TSK-CREW) $< aar,z $<"<N# gP"$:^z::`REX&,zN":L,zN` What name shall it be, Lord? >a zp*::30:Xк(@*z$<" ,zVN# g":6-fC$ N":NSyf3`+Ja $< aa^,z$<"<N# g>"$<&< ,zN##BBy":,,zN`b$<,zvP":NAHB0Nu$< aa,zl$<"<N# g"$:&:,zFN":,z:N` Statusinformation about module: ---------------------------------------------------------- START: $12345678 STOP: $ LENGTH: $ TRAX: $ SAMPLES: $$<a$:a$<=a":Aa$<a I(5$<a":ҺAfa$<a$<a":jAFal$<a$<a~":NA&aL$<ah$<a^r2:0 |a($<aD$<a&$<a0a\`D Name of sample LENGTH VOLUME REPSTRT REPLEN -------------------------------------------------------- xyxyxxyxyxxyxyxyxyxy$$xxxx Jgz$<a`Jykf::,SEI&$ aH"AaA"aACx"$ SHaLQ$<FaQ$<aa"` )2e7#<<7+0y?U&yV ps<i/Yσ̋4eCy?=W M>G;u1sVG &_ :-o ^~Tu? ž8p}D}x%@4EE"B|{D2>V( αQ@G }?ح%aNEh .[ʃ)ŏ0aP!@֙^q;vF #$;Adeǐpr60u೐(ܶ{/Xw"im:?+`8.nx:z?hȜGM0@4=ȼA@h}և y>\I&E\y1Fymq47p O@$$\O*ejg&8tx_>;C<U2qr}.lAPx@j acֲ,$?jʗX_ rw'OjP c'C#>? 6HNעvtP9[` l`y*Jc*_>l}Wfzqj jk"@ACF K<(Wt 8QY3x8|PK{W'bK i)c^pAFWߎ WХomefc/_3j E 'xU %Tqu3'p&09-bPT(]# ] L!d`h8 : aT $QӁ* 888<e$Dd ,\Lm LB'EB_G+֦0lMd<:= R?/5CX,U6F>*(>(hAB0H5MIDM"/I"+\*\qC80Hb)lkBß?YL[@ -$1mMa"򵧇%G .ǣ gCҬAO LmeL%|bB (}zT 5¤K1+' 3F >8r+ &gm+#OX?yy.N<`r'e`hH(-x?̿wހWXC;zy339|l @ N;(^DG8p|`z.P=ǩM)O\BpJbBP47N)M8JVu10%5tP@0 D' ʫm ,*l L]~2 s``B|`$iZ`DŽ G>T?UT0֞ܺKB3@Vr] V#, Vh%6"`UNp+LZ#bM+MpZSbOH+OGR,CNQZf b5qWY])ʑXB6ZP IT6<24]"V_hP xx{x\x_^x.]'|^}xoRh.e@~H~t.C7/ zDU`53wͬ90Lq"DЈQ U@: b&]N`$:u&ـ_`3ծ\p=Ln\Ipb6kqp *6`ݸEp R/ȄQ % 4@})i_Ґ= 7@ftiRS(P7i@hR(:Pl0 Zhh2@e-Z8Ih6@p#I0`8y1Q!X R5`8vkVYW8pD0 Id %:K b@/,]Z-3k n6@|.8L@")JCtȠw@ƢEvE  P90 UT"]P7f@&MÚ4 Bh3 tS@&MtjE1`gp)q5L :X9`fK, NXŰ4`i-F%1`c䭁[l"7~qcGe8Lp0+W f~5+Wn1<x0 d&u*`Ϟ9<Fx1yF`H<"xd{0 O+<fx48)hׯ_pdد_)| A*&rr @i\ 0 D?x0 נA% u?`B 0 P%1 h (APa@>DD=0 0B|׳H̑bBE=u "AD+ $5H<*z *ATRfͪ@ـ_d3Yb nA\&pPx0. f$(?PepAB٥J*(6PjReAJޕ* T40P}%Ay_^e1PsmAڃdcj 64Pyb!C^Q 5D>jd5*!CL+;:i~3!LC)12bD;yb!\Cָq9$y^ $;HbPʡ!BC rO)!C!I$2ZHu)'y$rIIb`!ZC5i!ZC3i 2d:8 `KB2d>Hv<.EYd;qU+!VC9Y+!CB9 r5 g3g!NC9 r0#1㉀_B;`y;o7ࡈAC!&uH(nPܠA@ 0R#]J%?HgQP񢡇UCMIU ƪT8rPJT:cP&MCy5j\0ɨrPOc6ۨkWPᡚCLS4C <0 H~#bF?rr0aHPq# F0 X c E=wV0,aX82j6ұqc&L<(a0ϢaDSwb0ɢaDƉ &L:kU0a3L3h0jaTDSft9Ia0aL홆3 B-3[g0na\Ìs#0ԮaBR j,?Xа!a҅ ca# / Kz,?Xctie)])a앆1+zV0 J*[+ Vܬ1X`.+ Vt1c٣a6ElvE9 ~a^Íi{^78tp`I]|78dphQ78apڤI?'2N;98op$I3(Df/$"3 Det)&S">:DdTi#0\r*D>`G(:Q7D|r.(Q,>D|։/}hr-^FU0 Z#F H;b=yш.1tb=nQk#+FWXb6`¬GXmb5x#G8ZqD0Be'%Et Th(5B=@:Ph!dzX@y;0mjn%۾C%S  iCFl 4(e>0r # !a`ކ~1-ʡ!-5 Bs@ ph&In"%ʇ#Z[ㅂb @jq/8 `ۘ!A R[bA\?(EbIE9`B`Xv`ϱø%) HSf1ncW(8;ೡ!H" x3&,'b9\A0!y mK*Jp? " )Coʸ˺3zXC'S;Jdh't!11K'4#T~~!_sX;R`x>-TO8;76骓I?g_׃ZW^hzt6$g@=9(2Ҵ`,HB?'z>1PRpJdPІ1;s8KpO.  ǚXeHtT|@b&ph |`?A櫜AE )0NO is ID^ÊQA@Nꀥ;3*ff`0(R 6 =XS Ϥ*]P+DxD!q%Ddp"fBH#B$ YBl v~@`!F 8$ qD"6 z!XKhA$3F'*h 4`?ָ PvPESd/1Kx=d$i>;GB⇶BS Ή7K .I"WʢT^[}XKRΐ W:qFgcVFxI`Ao8EY;e+͍y73B"}S>8X* LD|اR$`*)ΊpJ b%@'Mh*<@bРsFa !QqVKC6*JB 3aф`scB0R <?N~1DzṶO֤A/ahF-s҄F|*x 8:$T0u(# *11PMTffbgyJk'@B40̀i"Puq|$ H ^O@ `PH-I 4-" ) C^Blx I8DHR@!M,ѐ N ;K}C[(/#PX[`{h|p'qX`q: PH–4t-15p*; <?N}dLPy>@|R)3-#@ `@:(܀XBG2,,!#1؞,)`#/de~~N8L}#^:Ypl{ՇK6WG~F8!$~=4^V)jL`OՏ  JtqpK;W[fXt7u2p11F*JTD$iB/`H /5 h N@"y|Å*jXu:(0rp *HoA1 <@G >@`p Hq\<HT~@z{/ _>={$\B`'pD ='<~^\Ԅ|@).M휎Z+avrEd%gE -`O@4 Z #ŠJgJ HO'`De 0*"Xi1.#GtpFFJ%O4>DHn,8=<0= p]H)ce/Uvԝ,]MmdxA], i&IF!h-w9t`Lh˅1 <#fft'C'OK#^IacŽ?GIʈm< ,]L%vu4%4#>W33$?xtѠ"T8:8^ F:f%`2v?V B} @1 ,{DHּ+}DX ð} [a|gϏvςV#X\//yd"[}K %2oG0B! ߚ90xc pcƶ4NޞL+Hޛ k#pqD `u^B'En qx,^"tAzlZn^dh%zn[ހt0M<S/MgPaB7_!yǟ7󁠸_`%7Q!wF&n 7@@1%)G`M M@_S7znB?:o{MŸ`h!`Y$=[`4؈^Sczn@t٠MŸ`h)4+h!A{h{߯nD 4L J^ tY-i9QBc?:X)zn:m_Q0|©?: @/ډr?b:!C)gG A?D*E~޾|Nܜ(xֻ?DR!chz"[_(Ȗ"G˥WȎA^6<hps?8HV!^4s-?LKx9 B_0] ~;Mh):('09W||H1ZC|0TŏĈāi{g o6 s`AL_%(- _}_tIQFf !HSKHnOI1뻤sz$O #oqpU@t8sxG05~𘙗a-F+Ӝs<*d@D?}@$ (}$7'laIΪD(Xsx`ะʟ 1I4'~\wÙ{CეzՄ9H`|ಕ`!!:ה=HϿxǀz ؝"'zz8.\=H!@6RK#_?d=I\zyi:|z\;HI0sAF@EyW0ARPh 7!0:@\<8@$d>lz"y~5YغX[5`7ffM_) Dj!cx 8X h (H p0PP(C'X-U57`5y[h9$\"``.!@ 0 `%2!p? "_ eÀ |0 TjI`h'рDca' o~$?@@I@x \dy*1=1GE7<X!?a ?쓁IN$. '  $JS b8RD200tC `B@d&4x!upb8ccawa!M$ N3s = _q 68,v l 8X3  )0"@\y!Sb@@;jj"2A!A'%1O.h20̾~sR`X~NcYAq|e  H 8&fXSvEɏn썠Z9 p~-贏>`=^_'!1IB} z1f+J&H3>(2{BP" ũBY35T3A.> $Z ]QU` Y[dŀ@%ACe bbs ^\ŤGpW R vr A`!Pg1/_@3sx'k!~(fC<h`$0̿$S{ ,H/E~ |0`C@L0*Yv:@ '3 KkD /]9@%% NpnbEf.(>Qqe j (O! DէP 5ȹP*OjO"jN@nX'INpKЈƠ $>$>&$  #%eZVG(M3|̐" zu@MD$  ;C \@h)p@@@@ MH}@@D!Ή +@@Dn!=0F#?΢. $0^Ebx8?sBJp~~>@w<lب ! ALӀH!9@@maA1_Tf/G^{cA~$Ad0('aEG(!+H9"ɂ0"(! LLd@@-K= *`N0ufpX@*Mg?Չ c~)M8W!x,ո&8J`"֝*e@( pn5U'@0;s*0APCנR@44E;>ĕ_.dk&dSns>=Ea4| |c[Oy̎ r?em; M.@,stsAJxstchY\j?^'5Cb?H2wb'Wgo T&Ba 'Kgrge{W;I;S''W?3H<Jv D` \Yj 6 vD uPdOA: 2<X!PRy9p~pDB=:KE# ;yզP#~؎̡4" "s&k9}x ɀi !m0` P&[3@#$!>4p"KpHHT ;$<T%`8'J8cD`As 9B /s +RRH q PL00Jp nMp #3cZ0dBL"n5 )`ahW3P1}˩-%dbtbqth@! -B`jܵ|`""?T7ִ90\!1?yT P~X;A$4h , ~`P"@A spA <3Ռ! d8*ҔC=߰m.14  3 j7 ;HP )\>ly;txR&\Mf`5'Hz Ȥ9ɘ ږ:s(^ _xj 4 o-* iXQ) HL-#h dAoCf`3D` (^g 086^ <-@T  *%`&kBR0v s4z%A0&bZRUPG!38>_ "A `(ԔZ ɨ d$ HD'@*Î `NQQGSEJbb8,Α@>5-:cuϾ]Õr@}-1p'DG$%68cʐ$0@0 B  U`.D%HLUI#?#<>=?c=c?c<>= П Ȟ؟ĞIԟIB," EI8@F` ."Z8@Ghx"Q 0C>f,\ ,Wx [ 3PxЁ`0ނ T1 V&H!tYxI3G<8~?(;@>@s@6 _V@`V:iA# PP+ 5+H<P!Ӛ׉dL-;%SLpDa`tA(!tPӀ4H$ H 0J *W<"*NBE=04Ot3.I ?({ʢ@͗I%n[N% %~#F+TM@A-A](Z&^!^R֯hs R*spG ` 8VKSjl pKĀ^N\AFφi)ؐIZLL _!u , |gpf K'p<>TIfqȵ1$GN$6HA&*O_1>b  #v|Ø¢y6n RU%Whā%)Gf`,pɈ] BĆy /pGTci8#) GaHx` |K >h܏X4 (0!1|>AJ̀ Ji\4&D&~D:@E όOq T@<1.@ `Ce@ RP2g R/ !!> * 7@wd /Tc)J'LeEdK`Gh㒀`nZ4A9N J8U/_"Yt: &(Dv%ȃ2I|;gJ`LNJQB;dp!a`H z(8`v`L َFK0 2`:nP^#`Q}Obp0I4//C n8!@C,': *׀"ٳZc:e&?t˚SL` a8X!!F ̣M@Htx`8Ht`f()$RjB۬ ೘3"RTY2|iX؀aAdOLwg~ a0_s|r |Qyס_G`r&"04  Rf@=^ p`|*I! 6rho |Ը@@I4f}\$4-@ ϹKPd՟HE!f|P$6@B)!&=ГP0u.>0\@3.a %Ie@ `yW.N&t&nƦ? ʟu;h".Mz!/}  '7?>9R~U [}1/=QTCd_zQCSiTE޽,xk,8yg:Xo31!m zb 5cǀ';.r#a$ ւ2ad@2W'J{ 3r~@_hvpݓ?D@ + 0w ; GT?b[i㓂[)O /roN;e G?L$fAyp#bLL_πNN㧳d)_U$~p 胭8xqYBRD;>hh+RSơ7B~$~܆xjBSSԵzT'X$Q +?)#gTxbD@Z@ҔW=ʤ+ ?_ 231dfyeqI !D0 A);-U(A/ [N!3*L}@GLXkЬWS8AeRDyAlsN茑|~0 hGtY(=E8@[0٧&h!# ++ېz& c/*dZ=I6#s rqr|P/zYCV8p=A;qPlh{ 9140kɾ@XfSA/*>e"v@KEc&`G,#D@"ʠHA|a,=:OIWǡ:B# 57 ?")A*ϤH`B"Γ-goEJМD Z?< 6f@ MBPJaETZ9NpmEWR2/lAU+k(%'>("zנT|L(@$J d@hfC $Iyd0Wx65NEP-ǹqⓤ &$7?FL|665=z$ Lyhxo%4+Uޅ6a:xHr@$%_RSGd\_ӣPi ?rـ# f۲CFZ>RPˊkJ-IW^Iz\W<7pʐgq:TV?%Dy$'7`ā@ l$邰'QMT BWb Ǝ{2a@0X%,㛄<I  6 M b9(rAQAƄl (P F3z瑨&`1&Gȇ/T"/N ! ;ziL4ɀ9*C"*E03_j _ L?H)_M,/E}6_c@UGOH!/b, ,jCViqkk /1sqB&G @f u<1:` ĵM`TRxBR.p)sT$-|Zq1 : SE0 np$LRY !xĥ#U0JT0  !\;j G%hOOA)f 4vTb@FCpnp@) Nȧ= /jp qSC0=D ~d /T6MM@Tf Nl z"Y?"}uPf`\i2C<Ll@m8% uPFx  X@-~ J @@g\=X@0c<x sZ<\!dg'bdZ:;ڹ;O}) /HQ'I|h0iyz<tIX!QCЅt4KҀ`Aj.ljv,p\ˣg+cr(dc/0$$"ͦ 0j+fpd{<$_O`4`Pjs I :-0!/ԃ #/e#L*RR"f@"B ۳(9))5(>82qФkN${ 9㈚& B @24+DܛRj1p"ЀBUk չoX,ǀJ [UOa*n/^`0n` @Eܬ ; \C!<3'P`LEK! `*:z"d?7 ,`LNa a4A .;~!QTD%TҺeedset cmp.b #12,d0 bne.s mt_nochnge move.b 3(a6),8(a4) mt_nochnge: rts mt_speedset: cmp.b #30,$3(a6) bcs.s mt_speedslide cmp.b #227,$3(a6) bcc.s mt_speedslide cmp.b #210,$3(a6) bhi.s mt_speedsetend move.b 3(a6),mt_speed+1-v(a5) mt_speedset1: move.l #$1b1200,d0 divu mt_speed-v(a5),d0 move.b d0,$bfd400 lsr.w #8,d0 move.b d0,$bfd500 mt_speedsetend: rts mt_speedslide: move.w mt_speed-v(a5),d0 add.b 3(a6),d0 cmp.b #30,d0 bcc.s mt_speedset2 move.w #30,m'lt_speed-v(a5) bra.s mt_speedset1 mt_speedset2: cmp.b #210,d0 bls.s mt_speedset3 move.w #210,mt_speed-v(a5) bra.s mt_speedset1 mt_speedset3: move.b d0,mt_speed+1-v(a5) bra.s mt_speedset1 mt_modvol: move.w 20(a6),d0 bra.s mt_push mt_modper: move.w 20(a6),d0 lsl.w #4,d0 bra.s mt_push mt_modvolper: move.w 20(a6),d0 lsl.w #4,d0 add.w 20(a6),d0 mt_push: add.w #$8000,d0 move.w d0,$dff09e rts v: mt_aud1temp: dc.w 0,0,0,0,0,0,0,0,0,0,1,0,0 mt_aud2temp: dc.w 0,0,0,GY0,0,0,0,0,0,0,2,0,0 mt_aud3temp: dc.w 0,0,0,0,0,0,0,0,0,0,4,0,0 mt_aud4temp: dc.w 0,0,0,0,0,0,0,0,0,0,8,0,0 mt_partnote: dc.w 0 mt_partnrplay: dc.w 0 mt_counter: dc.w 0 mt_samples: blk.l 15,0 mt_maxpart: dc.w 0 mt_dmacon: dc.w 0 mt_onoff: dc.w 0 mt_speed: dc.w tempo mt_smplentab: dc.w smp1len,smp2len,smp3len,smp4len dc.w smp5len,smp6len,smp7len,smp8len dc.w smp9len,smpAlen,smpBlen,smpClen dc.w smpDlen,smpElen,smpFlen mt_arpeggio: dc.w $0358,$0328,$02fa,$02d0,$02a6,$0280,$025c *dc.w $023a,$021a,$01fc,$01e0,$01c5,$01ac,$0194,$017d dc.w $0168,$0153,$0140,$012e,$011d,$010d,$00fe,$00f0 dc.w $00e2,$00d6,$00ca,$00be,$00b4,$00aa,$00a0,$0097 dc.w $008f,$0087,$007f,$0078,$0071 songdata: blk.b songlen smp1data: blk.b smp1len smp2data: blk.b smp2len smp3data: blk.b smp3len smp4data: blk.b smp4len smp5data: blk.b smp5len smp6data: blk.b smp6len smp7data: blk.b smp7len smp8data: blk.b smp8len smp9data: blk.b smp9len smpAdata: blk.b smpAlen smpBdata: blk.b smpBlen smpCdeS@iʨdZ 1002{QE>`ʰ6 ]f 1`,#0K|'SY {b95!I |r`@ MtD@vb ,' PTg?* ;0&p%5%Ah=w"sj84`"PtOxᆨGp0Fu܌ls1Q2&Fox4h"@Ĕ_*%6l0P-I!zH/ J h~e@SNg`k ~"$~3G)l#!x9bs(gXh#kFChԤg@]1+!HTRqjqi ,@)5G& xyn(Q \z4(;`Th KoIIE Ho)R\7 /k `"CC A:G "" da߷(Pܦ!,9̀02?SB`%IŠ#J@{XpKfxbz>6)qNE &./)s5Q'=]BAd,%I%a6_a0cYdmB湘g I5` ^a*Wݝ^Ae㪆GaAKȏ9-0eZݬh$``9$UVz@ = \1"ºGGLp|!XfTǍ-EUib.w d0,22(a6) cmp.w #$71,22(a6) bcc.s mt_ok1 move.w #$71,22(a6) mt_ok1: move.w 22(a6),6(a4) rts mt_portdwn: clr.w d0 move.b 3(a6),d0 add.w d0,22(a6) cmp.w #$358,22(a6) bls.s mt_ok2 move.w #$358,22(a6) mt_ok2: move.w 22(a6),6(a4) rts mt_volup: clr.w d0 move.b 3(a6),d0 lsr.b #4,d0 tst.b d0 beq.s mt_voldwn mt_pushvol1: add.w d0,$12(a6) cmp.w #$40,$12(a6) bls.s mt_ok3 move.w #$40,$12(a6) mt_ok3: move.w $12(a6),8(a4) rts mt_voldwn: clr.w d0 move.b 3(a6),d0 mt_pushvol2: and.b #$f,d0 sub.w d0,$12(a6) bcc.s mt_ok4 clr.w $12(a6) mt_ok4: move.w $12(a6),8(a4) rts mt_arpegrt: cmp.w #1,mt_counter-v(a5) beq.s mt_loop2 cmp.w #2,mt_counter-v(a5) beq.s mt_loop3 cmp.w #3,mt_counter-v(a5) beq.s mt_loop4 cmp.w #4,mt_counter-v(a5) beq.s mt_loop2 cmp.w #5,mt_counter-v(a5) beq.s mt_loop3 rts mt_loop2: moveq #0,d0 move.b 3(a6),d0 lsr.b #4,d0 bra.s mt_cont mt_loop3: moveq #0,d0 move.b 3(a6),d0 and.b #$f ,d0 bra.s mt_cont mt_loop4: move.w 16(a6),d2 bra.s mt_endpart mt_cont: lsl.w #1,d0 moveq #0,d1 move.w 16(a6),d1 lea mt_arpeggio-v(a5),a0 mt_loop5: move.w (a0,d0.w),d2 cmp.w (a0),d1 beq.s mt_endpart addq.l #2,a0 bra.s mt_loop5 mt_endpart: move.w d2,6(a4) rts mt_rout2: lea songdata-v(a5),a0 lea 12(a0),a3 lea $1d8(a0),a2 add.w #$258,a0 move.w mt_partnrplay-v(a5),d0 move.b (a2,d0.w),d1 lsl.w #8,d1 lsl.w #2,d1 add.w mt_partnote-v(a5),d1 clr.w mt_dma hԻcon-v(a5) lea $dff0a0,a4 lea mt_aud1temp-v(a5),a6 bsr mt_playit lea $dff0b0,a4 lea mt_aud2temp-v(a5),a6 bsr mt_playit lea $dff0c0,a4 lea mt_aud3temp-v(a5),a6 bsr mt_playit lea $dff0d0,a4 lea mt_aud4temp-v(a5),a6 bsr mt_playit move.w #$1f4,d0 mt_rls: dbf d0,mt_rls move.w #$8000,d0 add.w mt_dmacon-v(a5),d0 move.w d0,$dff096 lea mt_aud4temp-v(a5),a6 cmp.w #1,14(a6) bne.s mt_voice3 move.l 10(a6),$dff0d0 move.w 14(a6),$dff0d4 mt_voice3: le Aa mt_aud3temp-v(a5),a6 cmp.w #1,14(a6) bne.s mt_voice2 move.l 10(a6),$dff0c0 move.w 14(a6),$dff0c4 mt_voice2: lea mt_aud2temp-v(a5),a6 cmp.w #1,14(a6) bne.s mt_voice1 move.l 10(a6),$dff0b0 move.w 14(a6),$dff0b4 mt_voice1: lea mt_aud1temp-v(a5),a6 cmp.w #1,14(a6) bne.s mt_voice0 move.l 10(a6),$dff0a0 move.w 14(a6),$dff0a4 mt_voice0: add.w #$10,mt_partnote-v(a5) cmp.w #$400,mt_partnote-v(a5) bne.s mt_stop clr.w mt_partnote-v(a5) addq.w #1,mt_partnrplay-v ȾN(a5) and.w #$7f,mt_partnrplay-v(a5) move.w mt_maxpart-v(a5),d0 sub.w mt_partnrplay-v(a5),d0 bne.s mt_stop clr.w mt_partnrplay-v(a5) mt_stop: rts mt_playit: move.l (a0,d1.w),(a6) addq.w #4,d1 moveq #0,d2 move.b 2(a6),d2 and.b #$f0,d2 lsr.b #4,d2 tst.b d2 beq.s mt_nosamplechange moveq #0,d3 lea mt_samples-4(pc),a1 move.l d2,d4 lsl.l #2,d2 mulu #$1e,d4 move.l (a1,d2),4(a6) move.w (a3,d4),8(a6) move.w 2(a3,d4),18(a6) move.w 18(a6),8(a4) move.w 1w 4(a3,d4),d3 add.l 4(a6),d3 move.l d3,10(a6) move.w 6(a3,d4),14(a6) cmp.w #1,14(a6) beq.s mt_nosamplechange move.l 10(a6),4(a6) move.w 14(a6),8(a6) mt_nosamplechange: tst.w (a6) beq.s mt_retrout move.w (a6),16(a6) move.w 20(a6),$dff096 move.l 4(a6),(a4) move.w 8(a6),4(a4) move.w (a6),6(a4) move.w 20(a6),d0 or.w d0,mt_dmacon-v(a5) mt_retrout: move.w 20(a6),d0 lsl.w #4,d0 add.w 20(a6),d0 move.w d0,$dff09e tst.w (a6) beq.s mt_nonewper move.wp (a6),22(a6) mt_nonewper: move.b 2(a6),d0 and.b #$f,d0 cmp.b #$e,d0 bne.s mt_noset move.w 2(a6),24(a6) rts mt_noset: tst.b 3(a6) bne.s mt_noclr clr.w 24(a6) mt_noclr: cmp.b #3,d0 beq mt_modvol cmp.b #6,d0 beq mt_modvol cmp.b #9,d0 beq mt_modvol cmp.b #4,d0 beq mt_modper cmp.b #7,d0 beq mt_modper cmp.b #10,d0 beq mt_modper cmp.b #5,d0 beq mt_modvolper cmp.b #8,d0 beq mt_modvolper cmp.b #11,d0 beq mt_modvolper cmp.b #15,d0 beq.s mt_sp),4(A5) ;lnge NoSetRegs: sub #22,a6 ;nchste Daten sub #$10,a5 ;nchster Kanal dbf d7,SetRegsLoop tst PlayLock beq.s NoEndPattern add.l #16,PosCounter ;PatternPos erhhen cmp.l #1024,PosCounter ;schon Ende ? blt.s NoEndPattern clr.l PosCounter ;PatternPos lschen addq.l #1,TrackPos ;Position erhhen NoAddPos: move.w Anzpat(pc),d0 ;AnzahlPosition move.l TrackPos(pc),d1 ;Aktuelle Pos cmp.w d0,d1 ;Ende? bne.s NoEndPattern ;nein! clr.l TrackPos ;ja/ Sound vŧon vorne NoEndPattern: rts PlayNote: clr.l (A6) tst PlayLock ;Player zugellassen ? beq.s NoGetNote ; move.l (a0,d1.l),(a6) ;Aktuelle Note holen NoGetNote: addq.l #4,d1 ;PattenOffset + 4 clr.l d2 cmp #-3,(A6) ;Ist Note = 'PIC' ? beq NoInstr2 ;wenn ja -> ignorieren move.b 2(a6),d2 ;Instr Nummer holen and.b #$f0,d2 ;ausmaskieren lsr.b #4,d2 ;ins untere Nibble tst.b d2 ;kein Intrument ? beq.L NoInstr2 ;wenn ja -> berspringen clr.l d3 lea.l Instruments(pc),a1 ;Instr. Tabelle move.l d2,d4 ;Instrument Nummer subq #1,d2 lsl #2,d2 ;Offset auf akt. Instr. mulu #30,d4 ;Offset Auf Instr.Daten move.l (a1,d2.w),4(a6) ;Zeiger auf akt. Instr. move.w (a3,d4.l),8(a6) ;Instr.Lnge move.w 2(a3,d4.l),18(a6) ;Volume move.w 4(a3,d4.l),d3 ;Repeat tst d3 ;kein Repeat? beq.s NoRepeat ;Nein! ;Doch! move.l 4(a6),d2 ;akt. Instr. add.l d3,d2 ;Repeat dazu move.l d2,10(a6) ;Repeat Instr. move.w 6(a3,d4),14(a6) ;rep laetnge move.w 18(a6),d3 ;Volume in HardReg. bra.s NoInstr NoRepeat: move.l 4(a6),d2 ;Instrument add.l d3,d2 ;rep Offset move.l d2,10(a6) ;in Rep. Pos. move.w 6(a3,d4.l),14(a6) ;rep Laenge move.w 18(a6),d3 ;Volume in Hardware CheckPic: NoInstr: move.b 2(A6),d2 and #$0f,d2 cmp.b #5,d2 beq.s ChangeUpVolume cmp.b #6,d2 bne.L SetVolume2 moveq #0,d2 move.b 3(A6),d2 sub d2,d3 tst d3 bpl SetVolume2 clr d3 bra.L SetVolume2 ChangeUpVolume: moveq #0,d2 move.b 3(cA6),d2 add d2,d3 tst d3 cmp #64,d3 ble.L SetVolume2 move #64,d3 SetVolume2: move d3,8(A5) NoInstr2: cmp #-3,(A6) ;Ist Note = 'PIC' ? bne.s NoPic clr 2(A6) ;wenn ja -> Note auf 0 setzen bra.s NoNote NoPic: tst (A6) ;Note ? beq.s NoNote ;wenn 0 -> nicht spielen clr (a4) move.w (a6),16(a6) ;eintragen move.w 20(a6),$dff096 ;dma abschalten move.l d7,-(SP) move #300,d7 ;genug fr MC68030 Delay1: dbf d7,Delay1 ;delay move.l (SP)+,d7 cmp #-2,(A6) ;Ist F:es 'STP' bne.s NoStop ;Nein! clr 8(A5) bra Super NoStop: move.l 4(a6),0(a5) ;Intrument Adr. move.w 8(a6),4(a5) ;Lnge move.w 0(a6),6(a5) ;Period Super: move.w 20(a6),d0 ;DMA Bit or.w d0,DmaCon ;einodern NoNote: rts ;-------------------------------------------------------------------- ArpeTable: dc.l Arpe1 dc.l Arpe2 dc.l Arpe3 dc.l Arpe2 dc.l Arpe1 ChannelData0: blk.l 5,0 ;Daten fr Note dc.w 1 ;DMA - Bit ChannelData1: blk.l 5,0 ;u.s.w dc.w 2 ChannelData2: blk.l 5,0 ;etc. dc.w 4 ChannelData3: blk.l 5,0 ;a.s.o dc.w 8 Instruments: blk.l 15,0 ;Zeiger auf die 15 Instrumente PosCounter: dc.l 0 ;Offset ins Pattern TrackPos: dc.l 0 ;Position Counter Timer: dc.w 0 ;Zhler 0-5 DmaCon: dc.w 0 ;Zwischenspeicher fr DmaCon AnzPat: dc.w 1 ;Anzahl Positions PlayLock: dc.w 0 ;Flag fuer 'Sound erlaubt' DelayValue: dc.w 14565 SongPointer: dc.l LenghtTable ChipFlag: dc.w 0 CiaaBase: dc.l 0 InterruptName: dc.b 靼"Chris's SoundInterrupt",0 CiaaResource: dc.b 'ciaa.resource',0 even Reserve: dc.w 856,856,856,856,856,856,856,856,856,856,856,856 NoteTable: dc.w 856,808,762,720,678,640,604,570,538,508,480,453 ;1.Okt dc.w 428,404,381,360,339,320,302,285,269,254,240,226 ;2.Okt dc.w 214,202,190,180,170,160,151,143,135,127,120,113 ;3.Okt dc.w 113,113,113,113,113,113,113,113,113,113,113,113 ;Reserve dc.w -1 LenghtTable: Datas: Songstr = lenghttable+60 blk.b Laenge,0 ;hierhin di"$e Daten!!! EndSongStr: . dc.w 4 ChannelData3: blk.l 5,0 ;a.s.o dc.w 8 Instruments: blk.l 15,0 ;Zeiger auf die 15 Instrumente PosCounter: dc.l 0 ;Offset ins Pattern TrackPos: dc.l 0 ;Position Counter Timer: dc.w 0 ;Zhler 0-5 DmaCon: dc.w 0 ;Zwischenspeicher fr DmaCon AnzPat: dc.w 1 ;Anzahl Positions PlayLock: dc.w 0 ;Flag fuer 'Sound erlaubt' DelayValue: dc.w 14565 SongPointer: dc.l LenghtTable ChipFlag: dc.w 0 CiaaBase: dc.l 0 InterruptName: dc.b {ata+$1d6-v(a5),mt_maxpart+1-v(a5) tst.w mt_speed-v(a5) bne.s mt_init1 move.b songdata+$1d7-v(a5),mt_speed+1-v(a5) mt_init1: cmp.w #30,mt_speed-v(a5) bcs.s mt_init2 cmp.w #210,mt_speed-v(a5) bls.s mt_init_end mt_init2: move.w #122,mt_speed-v(a5) mt_init_end: st mt_onoff-v(a5) move.w #$4000,$dff09a move.l $78.w,mt_oldirq-v(a5) lea mt_newirq-v(a5),a0 move.l a0,$78.w move.w #$c000,$dff09a bsr mt_speedset1 move.b #$11,$bfde00 move.b #$81,$bfdd00 rts mt_newirpuVove.b #$1,$bfdd00 move.w #$f,$dff096 move.w #$4000,$dff09a move.l mt_oldirq(pc),$78.w move.w #$c000,$dff09a moveq #0,d0 rts mt_init: lea v(pc),a5 lea smp1data-v(a5),a0 lea mt_samples-v(a5),a1 lea mt_smplentab-v(a5),a2 moveq #14,d0 mt_initloop: move.l a0,(a1)+ clr.l (a0) adda.w (a2)+,a0 dbf d0,mt_initloop move.w #$f,$dff096 clr.w $dff0a8 clr.w $dff0b8 clr.w $dff0c8 clr.w $dff0d8 clr.w mt_partnrplay-v(a5) clr.w mt_partnote-v(a5) move.b songd ,й movem.l (SP)+,d1-d7/a0-a6 rts ;-------------------------------------------------------------------- Interrupt: dc.l 0 ;letzter Node dc.l 0 ;nchster Node dc.b 2 ;Node Type = Interrupt dc.b 0 ;Prioritt dc.l InterruptName ;Name dc.l 0 ;Zeiger auf Daten dc.l IntCode ;Interrupt Routine ;------------------------------------------------------------------- InitTimer: move.b #%10000001,$bfee01 ;Timer starten lea DelayValue(pc),a1 move.b 1(a1),$bfe401 ;Timer F A low move.b 0(a1),$bfe501 ;Timer A high rts ;-------------------------------------------------------------------- PlayInit: lea Instruments(pc),a0 ;Zeiger auf instr.Tabelle moveq #14,d7 ;15 Instrumente InitLoop: move.l (A0)+,a1 ;Zeiger holen clr.l (A1) ;erstes Longword lschen dbf d7,InitLoop rts ;----------------------------------------------------------------------- PlayEnable: lea $dff000,a0 ;AMIGA move.w #-1,PlayLock ;player zulassen clr $a8(A0) ;Alle  !{Voloumenregs. auf 0 clr $b8(A0) clr $c8(a0) clr $d8(a0) clr.w Timer ;zahler auf 0 clr.l TrackPos ;zeiger auf pos clr.l PosCounter ;zeiger innehalb des pattern rts ;---------------------------------------------------------------------- PlayDisable: lea $dff000,a0 ;AMIGA clr.w PlayLock ;player sperren clr $a8(a0) ;volumen auf 0 clr $b8(a0) clr $c8(a0) clr $d8(a0) move.w #$f,$96(A0) ;dma sperren rts ;------------------------------------------------------------- E effekte clr.w Timer ;sonst zhler lschen bsr PlaySound ;und sound spielen NoPlay: movem.l (SP)+,d0-d7/a0-a6 rts”3 ;------------------------------------------------------------------- CheckEffects: moveq #3,d7 ;4 kanle lea StepControl0,a4 lea ChannelData0(pc),a6 ;zeiger auf daten fr 0 lea $dff0a0,a5 ;Kanal 0 EffLoop: movem.l d7/a5,-(SP) bsr.s MakeEffekts ;Effekt spielen movem.l (Sp)+,d7/a5 NoEff: add #8,a4 add #$10,a5 ;nchster Kanal add #22,a6 ;Nchste KanalDaten dbf d7,EffLoop movem.l (a7)+,d0-d7/a0-a6 rts MakeEffekts: move (A4),d0 beq.s NoStep bmi.s StepItUp add d20,2(A4) move 2(A4),d0 move 4(A4),d1 cmp d0,d1 bhi.s StepOk move d1,d0 StepOk: move d0,6(a5) MOVE D0,2(A4) rts StepItUp: add d0,2(A4) move 2(A4),d0 move 4(A4),d1 cmp d0,d1 blt.s StepOk move d1,d0 bra.s StepOk NoStep: move.b 2(a6),d0 and.b #$0f,d0 cmp.b #1,d0 beq appreggiato cmp.b #2,d0 beq pitchbend cmp.b #3,d0 beq LedOn cmp.b #4,d0 beq LedOff cmp.b #7,d0 beq.s SetStepUp cmp.b #8,d0 beq.s SetStepDown rts LedOn: bset #1,$bfe001 rts LedOff: bclr #1,U($bfe001 rts SetStepUp: moveq #0,d4 StepFinder: clr (a4) move (A6),2(a4) moveq #0,d2 move.b 3(a6),d2 and #$0f,d2 tst d4 beq.s NoNegIt neg d2 NoNegIt: move d2,(a4) moveq #0,d2 move.b 3(a6),d2 lsr #4,d2 move (a6),d0 lea NoteTable,a0 StepUpFindLoop: move (A0),d1 cmp #-1,d1 beq.s EndStepUpFind cmp d1,d0 beq.s StepUpFound addq #2,a0 bra.s StepUpFindLoop StepUpFound: lsl #1,d2 tst d4 bne.s NoNegStep neg d2 NoNegStep: move (a0,d2.w),d0 move d0,4(A4) rts EndS$.tepUpFind: move d0,4(A4) rts SetStepDown: st d4 bra.s StepFinder StepControl0: dc.l 0,0 StepControl1: dc.l 0,0 StepControl2: dc.l 0,0 StepControl3: dc.l 0,0 appreggiato: lea ArpeTable,a0 moveq #0,d0 move Timer,d0 subq #1,d0 lsl #2,d0 move.l (A0,d0.l),a0 jmp (A0) Arpe4: lsl.l #1,d0 clr.l d1 move.w 16(a6),d1 lea.l NoteTable,a0 Arpe5: move.w (a0,d0.l),d2 cmp.w (a0),d1 beq.s Arpe6 addq.l #2,a0 bra.s Arpe5 Arpe1: clr.l d0 move.b 3(a6),d0 lsr.b #4,d0 bra.s Arpe4 Arpe2: clr.l d0 move.b 3(a6),d0 and.b #$0f,d0 bra.s Arpe4 Arpe3: move.w 16(a6),d2 Arpe6: move.w d2,6(a5) rts pitchbend: clr.l d0 move.b 3(a6),d0 lsr.b #4,d0 tst.b d0 beq.s pitch2 add.w d0,(a6) move.w (a6),6(a5) rts pitch2: clr.l d0 move.b 3(a6),d0 and.b #$0f,d0 tst.b d0 beq.s pitch3 sub.w d0,(a6) move.w (a6),6(a5) pitch3: rts ;-------------------------------------------------------------------- PlaySound: move.l SongPointer(pc),a0 ;Zeiger auf Song1File add #60,a0 ;Laengentabelle ueberspringen move.l a0,a3 move.l a0,a2 lea 600(A0),a0 ;Zeiger auf BlockDaten add #472,a2 ;zeiger auf Patterntab. add #12,a3 ;zeiger auf Instr.Daten move.l TrackPos(pc),d0 ;Postionzeiger clr.l d1 move.b (a2,d0.l),d1 ;dazugehrige PatternNr. holen moveq #10,d7 lsl.l d7,d1 ;*1024 / lnge eines Pattern add.l PosCounter,d1 ;Offset ins Pattern clr.w DmaCon lea StepControl0,a4 lea $dff0a0,a5 ;Zeiger auf Kanal0 lea ChannelData0(pc),a6 ;Daten fr Kanal0 moveq #3,d7 ;4 Kanle SoundHandleLoop: bsr PlayNote ;aktuelle Note spielen add #8,a4 add.l #$10,a5 ;nchster Kanal add.l #22,a6 ;nchste Daten dbf d7,SoundHandleLoop ;4* move DmaCon(pc),d0 ;DmaBits bset #15,d0 ;Clear or Set Bit setzen move.w d0,$dff096 ;DMA ein! move #300,d0 ;Verzgern (genug fr MC68030) Delay2: dbf d0,Delay2 lea ChannelData3(pc),a6 lea $dff0d0,a5 moveq #3,d7 SetRegsLoop: move.l 10(A6),(a5) ;Adresse move 14(A6 zj beq.s mt_posjmp cmp.b #$0c,d0 beq.s mt_setvol cmp.b #$0d,d0 beq.s mt_break cmp.b #$0e,d0 beq.s mt_setfil cmp.b #$0f,d0 beq.s mt_setspeed rts mt_posjmp: not.w mt_status moveq #0,d0 move.b 3(a6),d0 subq.b #1,d0 move.l d0,mt_partnrplay rts mt_setvol: move.b 3(a6),8(a5) rts mt_break: not.w mt_status rts mt_setfil: moveq #0,d0 move.b 3(a6),d0 and.b #1,d0 rol.b #1,d0 and.b #$fd,$bfe001 or.b d0,$bfe001 rts mt_setspeed: move.b 3(a6),d0 and.b #$0f,d0 beq.s m ]t_back clr.w mt_counter move.b d0,mt_cool+3 mt_back:rts mt_aud1temp: blk.w 10,0 dc.w 1 blk.w 2,0 mt_aud2temp: blk.w 10,0 dc.w 2 blk.w 2,0 mt_aud3temp: blk.w 10,0 dc.w 4 blk.w 2,0 mt_aud4temp: blk.w 10,0 dc.w 8 blk.w 2,0 mt_partnote: dc.l 0 mt_partnrplay: dc.l 0 mt_counter: dc.w 0 mt_partpoint: dc.l 0 mt_samples: dc.l 0 mt_sample1: blk.l 31,0 mt_maxpart: dc.w 0 mt_dmacon: dc.w 0 mt_status: dc.w 0 mt_arpeggio: dc.w $0358,$0328,$02fa,$02d0,$02a6,$0280,$025c dc.w $023a,$021a,$01fc,$01e0,$01c5,$01ac,$0194,$017d dc.w $0168,$0153,$0140,$012e,$011d,$010d,$00fe,$00f0 dc.w $00e2,$00d6,$00ca,$00be,$00b4,$00aa,$00a0,$0097 dc.w $008f,$0087,$007f,$0078,$0071,$0000,$0000,$0000 mt_data: blk.b 0,0 move.l d0,mt_partnrplay rts mt_setvol: move.b 3(a6),8(a5) rts mt_break: not.w mt_status rts mt_setfil: moveq #0,d0 move.b 3(a6),d0 and.b #1,d0 rol.b #1,d0 and.b #$fd,$bfe001 or.b d0,$bfe001 rts mt_setspeed: move.b 3(a6),d0 and.b #$0f,d0 beq.s m0ϊ.l #Laenge,d1 addq.l #4,d1 ;Reserve lsr.l #2,d1 ;divu #4 subq #1,d1 ;fr dbf CopyMem: move.l (a0)+,(A1)+ ;Daten ins ChipMem move (a0),$dff180 dbf d1,CopyMem ;kopieren move.l d0,SongPointer ChipOk: move.l SongPointer(pc),a0 ;Zeiger auf SongDaten add #60,a0 ;Laengentabelle ueberspringen move.b 470(a0),AnzPat+1 ;Laenge des Sounds move 4(A0),DelayValue ;Geschwindigkeit bsr SongLen ;Lnge der Songdaten berechnen add.l d0,a0 ;Zur Adresse der Songstr. add.w #60=(0,a0 ;Laenge der SongStr. move.l SongPointer(pc),a2 lea Instruments(pc),a1 ;Tabelle auf Samples moveq #14,d7 ;15 Instrumente CalcIns: move.l a0,(A1)+ ;Startadresse des Instr. add.l (a2)+,a0 ;berechnen un speichern dbf d7,CalcIns lea CiaaResource(pc),a1 ;'ciaa.resource' moveq #0,d0 ;Version egal jsr -498(A6) ;OpenResource() move.l d0,CiaaBase ;Resource Base speichern move.l d0,a6 bsr PlayDisable ;Sound DMA abschalten lea Interrupt(pc),a1 ;Sound Interupt Structure moveq #0,d0 ;TimerA jsr -6(A6) ;installieren move.l d0,d5 ;ergebnis speichern bsr PlayInit ;Loop Bereich setzen bsr PlayEnable ;Player erlauben bsr InitTimer ;Timer starten moveq #0,d0 ;Ergebnisregister loeschen EndStart: tst.l d5 ;ergebnis von Resource sne d0 ;ergebnis in d0 setzen movem.l (SP)+,d1-d7/a0-a6 rts ;--------------------------------------------------------------------------- StopSound: movem.l d1-d7/a0-a6,-(SP) move.l 4,a6 ;ExecBase I tst ChipFlag ;mussten wir Speicher reservieren ? beq.s NoFreeSong move.l #Laenge,d0 ;Lnge der Daten addq.l #4,d0 ;Reserve move.l SongPointer(pc),a1 ;Zeiger auf Daten jsr -210(a6) ;FreeMem() NoFreeSong: move.l CiaaBase(pc),a6 ;Zeiger auf Ciaa Resource lea Interrupt(pc),a1 ;Zeiger auf Int. Strukture moveq #0,d0 ;Timer A jsr -12(A6) ;Interupt entfernen bsr PlayDisable ;Player sperren moveq #0,d0 ;Alles Ok movem.l (SP)+,d1-d7/a0-a6 rts ;--------------------- ^------------------------------------------------------ SongLen: movem.l d1-d7/a0-a6,-(SP) move.l SongPointer,a0 lea 532(A0),a0 move AnzPat(pc),d2 ;wieviel Positions subq #1,d2 ;fr dbf moveq #0,d1 moveq #0,d0 SongLenLoop: move.b (a0)+,d0 ;Patternnummer holen cmp.b d0,d1 ;ist es die hchste ? bhi.s LenHigher ;nein! move.b d0,d1 ;ja LenHigher: dbf d2,SongLenLoop move.l d1,d0 ;Hoechste BlockNummer nach d0 addq #1,d0 ;plus 1 mulu #1024,d0 ;Laenge eines Block/D#ource des Programms laden in den wir den Song einbauen ; wollen. ; 6.Am Anfang des Programms 'bsr StartSound' einsetzen ; 7.Am Schluss des Programms 'bsr StopSound' einsetzen ; 8.Diesen AbspielSource laden ; 9.Das Label 'Laenge' auf die Laenge des Datenfiles setzen ; 10.Assemblieren ; 11.DatenFile mit 'ri' nach 'datas' laden ; 12.fertig ;------------------------------------------------------------------------ Laenge = 60000 ;Lnge der Sounddaten ;----------------------------/-------------------------------------------- Beispiel: bsr.s StartSound bsr.s Intro bsr.L StopSound moveq #0,d0 rts ;------------------------------------------------------------------------- Intro: move d0,$dff180 addq #1,d0 btst #6,$bfe001 bne.s Intro rts ;--------------------------------------------------------------------------- ;Ergebis in D0 0=alles Ok. $ff = Timer nicht bekommen StartSound: movem.l d1-d7/a0-a6,-(SP) clr ChipFlag ;Flag fuer Datef'tn im Chip move.l 4,a6 ;ExecBase move.l SongPointer(pc),a1 ;Zeiger auf Daten jsr -534(A6) ;TypeOfMem() btst #1,d0 ;Sind Daten im Chip ? bne.s ChipOK ;ja -> st ChipFlag ;Flag fuer AllocMemChip setzen move.l #Laenge,d0 ;wenn Fast Memory -> addq.l #4,d0 moveq #2,d1 ;Chip Speicher jsr -198(a6) ;reservieren moveq #-1,d5 ;Fehlerflag tst.l d0 ;Speicher bekommen ? beq.L EndStart ;wenn nicht -> Ende move.l d0,a1 ;Ziel move.l SongPointer(pc),a0 ;Quelle movex'mulu_FreeMem_Lock_CurrentDir_FileSize_AllocLoad_UnLockF_LoadZound_Open_Read_Close.beginNpO HxHzz/-NpO HxHzr/-NpO xHx6r6 NwA|Ј//-NpO Rmx` 1 beq.s mt_endpart addq.l #2,a0 bra.s mt_loop5 mt_endpart: move.w d2,6(a5) rts mt_rout2: lea mt_data,a0 move.l a0,a3 add.l #$0c,a3 move.l a0,a2 add.l #$3b8,a2 add.l #$43c,a0 move.l mt_partnrplay(PC),d0 moveq #0,d1 move.b (a2,d0),d1 asl.l #8,d1 asl.l #2,d1 add.l mt_partnote(PC),d1 move.l d1,mt_partpoint clr.w mt_dmacon lea $dff0a0,a5 lea mt_aud1temp(PC),a6 bsr mt_playit lea $dff0b0,a5 lea mt_aud2temp(PC),a6 bsr mt_playit lea $dff0c0,a5 lea mt_aud3temp(PC), D0a6 bsr mt_playit lea $dff0d0,a5 lea mt_aud4temp(PC),a6 bsr mt_playit move.w #$01f4,d0 mt_rls: dbf d0,mt_rls move.w #$8000,d0 or.w mt_dmacon,d0 move.w d0,$dff096 lea mt_aud4temp(PC),a6 cmp.w #1,14(a6) bne.s mt_voice3 move.l 10(a6),$dff0d0 move.w #1,$dff0d4 mt_voice3: lea mt_aud3temp(PC),a6 cmp.w #1,14(a6) bne.s mt_voice2 move.l 10(a6),$dff0c0 move.w #1,$dff0c4 mt_voice2: lea mt_aud2temp(PC),a6 cmp.w #1,14(a6) bne.s mt_voice1 move.l 10(a6),$dff0b0 move.w #1,$df  l[f0b4 mt_voice1: lea mt_aud1temp(PC),a6 cmp.w #1,14(a6) bne.s mt_voice0 move.l 10(a6),$dff0a0 move.w #1,$dff0a4 mt_voice0: move.l mt_partnote(PC),d0 add.l #$10,d0 move.l d0,mt_partnote cmp.l #$400,d0 bne.s mt_stop mt_higher: clr.l mt_partnote addq.l #1,mt_partnrplay moveq #0,d0 move.w mt_maxpart(PC),d0 move.l mt_partnrplay(PC),d1 cmp.l d0,d1 bne.s mt_stop clr.l mt_partnrplay st Pflag mt_stop:tst.w mt_status beq.s mt_stop2 clr.w mt_status bra.s mt_higher mt_stop2:  u rts mt_playit: move.l (a0,d1.l),(a6) addq.l #4,d1 moveq #0,d2 move.b 2(a6),d2 and.b #$f0,d2 lsr.b #4,d2 move.b (a6),d0 and.b #$f0,d0 or.b d0,d2 tst.b d2 beq.s mt_nosamplechange moveq #0,d3 lea mt_samples(PC),a1 move.l d2,d4 asl.l #2,d2 mulu #$1e,d4 move.l (a1,d2),4(a6) move.w (a3,d4.l),8(a6) move.w 2(a3,d4.l),18(a6) move.w 4(a3,d4.l),d3 tst.w d3 beq.s mt_displace move.l 4(a6),d2 add.l d3,d2 move.l d2,4(a6) move.l d2,10(a6) move.w 6(a3,d4.l),8(a6) move ,|.w 6(a3,d4.l),14(a6) move.w 18(a6),8(a5) bra.s mt_nosamplechange mt_displace: move.l 4(a6),d2 add.l d3,d2 move.l d2,10(a6) move.w 6(a3,d4.l),14(a6) move.w 18(a6),8(a5) mt_nosamplechange: tst.w (a6) beq.s mt_retrout move.w (a6),16(a6) move.w 20(a6),$dff096 move.l 4(a6),(a5) move.w 8(a6),4(a5) move.w (a6),6(a5) move.w 20(a6),d0 or.w d0,mt_dmacon mt_retrout: tst.w (a6) beq.s mt_nonewper move.w (a6),22(a6) mt_nonewper: move.b 2(a6),d0 and.b #$0f,d0 cmp.b #$0b,d0 s mt_init1 dbf d0,mt_init2 addq.b #1,d2 mt_init3: lea mt_data,a0 lea mt_sample1(pc),a1 asl.l #8,d2 asl.l #2,d2 add.l #$438,d2 add.l a0,d2 moveq #$1e,d0 mt_init4: move.l d2,(a1)+ moveq #0,d1 move.w 42(a0),d1 asl.l #1,d1 add.l d1,d2 add.l #$1e,a0 dbf d0,mt_init4 lea mt_sample1(PC),a0 moveq #0,d0 mt_clear: move.l (a0,d0.w),a1 clr.l (a1) addq.w #4,d0 cmp.w #$7c,d0 bne.s mt_clear clr.w $dff0a8 clr.w $dff0b8 clr.w $dff0c8 clr.w $dff0d8 clr.l mt_partnrplay cl:r.l mt_partnote clr.l mt_partpoint move.b mt_data+$3b6,mt_maxpart+1 rts mt_end: clr.w $dff0a8 clr.w $dff0b8 clr.w $dff0c8 clr.w $dff0d8 move.w #$f,$dff096 rts mt_music: addq.w #1,mt_counter mt_cool:cmp.w #6,mt_counter bne.s mt_notsix clr.w mt_counter bra mt_rout2 mt_notsix: lea mt_aud1temp(PC),a6 tst.b 3(a6) beq.s mt_arp1 lea $dff0a0,a5 bsr.s mt_arprout mt_arp1:lea mt_aud2temp(PC),a6 tst.b 3(a6) beq.s mt_arp2 lea $dff0b0,a5 bsr.s mt_arprout mt_arp2:lea mt_aʨ@ud3temp(PC),a6 tst.b 3(a6) beq.s mt_arp3 lea $dff0c0,a5 bsr.s mt_arprout mt_arp3:lea mt_aud4temp(PC),a6 tst.b 3(a6) beq.s mt_arp4 lea $dff0d0,a5 bra.s mt_arprout mt_arp4:rts mt_arprout: move.b 2(a6),d0 and.b #$0f,d0 tst.b d0 beq mt_arpegrt cmp.b #$01,d0 beq.s mt_portup cmp.b #$02,d0 beq.s mt_portdwn cmp.b #$0a,d0 beq.s mt_volslide rts mt_portup: moveq #0,d0 move.b 3(a6),d0 sub.w d0,22(a6) cmp.w #$71,22(a6) bpl.s mt_ok1 move.w #$71,22(a6) mt_ok1: move.w 22(aJY6),6(a5) rts mt_portdwn: moveq #0,d0 move.b 3(a6),d0 add.w d0,22(a6) cmp.w #$538,22(a6) bmi.s mt_ok2 move.w #$538,22(a6) mt_ok2: move.w 22(a6),6(a5) rts mt_volslide: moveq #0,d0 move.b 3(a6),d0 lsr.b #4,d0 tst.b d0 beq.s mt_voldwn add.w d0,18(a6) cmp.w #64,18(a6) bmi.s mt_ok3 move.w #64,18(a6) mt_ok3: move.w 18(a6),8(a5) rts mt_voldwn: moveq #0,d0 move.b 3(a6),d0 and.b #$0f,d0 sub.w d0,18(a6) bpl.s mt_ok4 clr.w 18(a6) mt_ok4: move.w 18(a6),8(a5) rts mt_arp Vnegrt: move.w mt_counter(PC),d0 cmp.w #1,d0 beq.s mt_loop2 cmp.w #2,d0 beq.s mt_loop3 cmp.w #3,d0 beq.s mt_loop4 cmp.w #4,d0 beq.s mt_loop2 cmp.w #5,d0 beq.s mt_loop3 rts mt_loop2: moveq #0,d0 move.b 3(a6),d0 lsr.b #4,d0 bra.s mt_cont mt_loop3: moveq #$00,d0 move.b 3(a6),d0 and.b #$0f,d0 bra.s mt_cont mt_loop4: move.w 16(a6),d2 bra.s mt_endpart mt_cont: add.w d0,d0 moveq #0,d1 move.w 16(a6),d1 lea mt_arpeggio(PC),a0 mt_loop5: move.w (a0,d0),d2 cmp.w (a0),d{BYTE start,end; { if(start||end){StartTab=start;EndTab=end;} else{StartTab=loadstart;EndTab=loadend;} SetUpInterrupt(); } QuitZound() { register int i; for(i=0;i<16;i++)if(Sample[i].start)FreeMem(Sample[i].start,ZMemsize[i]); } static LoadSample(dir)register char *dir; { register ULONG lock,dirlock,fh,ret=FALSE; if(!(Sample[SN].name[0]))ret=TRUE;else { if(lock=Lock(dir,1005)) { dirlock=CurrentDir(lock); if(ZMemsize[SN]=FileSize(Sample[SN].name)) { if(SamplZe[SN].start=AllocLoad(Sample[SN].name,ZMemsize[SN],MEMF_CHIP)) { ret=TRUE;*(UWORD*)(Sample[SN].start)=0; Sample[SN].length=ZMemsize[SN]/2; } }UnLock(CurrentDir(dirlock)); } } return ret; } LoadZound(songname,path)register char *songname,*path; { register int i,ret=TRUE; long fh=Open(songname,1005); if(fh) { Read(fh,&MaxTable,1);Read(fh,&MaxPart,1); Read(fh,&loadstart,1);Read(fh,&loadend,1);Read(fh,&speed,1); for(i=0;i9u ?<16;i++)Read(fh,&Sample[i],sizeof(struct SampleData)); for(i=0;i<=MaxTable;i++)Read(fh,&Table[i][0],VOICES*sizeof(struct TabData)); for(i=0;i<=MaxPart;i++)Read(fh,&Parts[i][0],4*32); Close(fh); for(SN=0;SN<16;SN++)ret&=LoadSample(path); if(!ret)QuitZound(); }else ret=FALSE; return ret; } t=FALSE; if(!(Sample[SN].name[0]))ret=TRUE;else { if(lock=Lock(dir,1005)) { dirlock=CurrentDir(lock); if(ZMemsize[SN]=FileSize(Sample[SN].name)) { if(SampljU_ part 0 to part 45 (* PlayZound(0x00,0x46); *) and the second tune * from part 46 to part 8e (* PlayZound(0x46,0x8f); *) * */ main(argc,argv)int argc;char *argv[]; { if(argc==3) { if(LoadZound(argv[1],argv[2])) /* Try to Load music */ { PlayZound(0,0); /* Start the music */ for(;(*(char *)0xbfe001)&64;); /* Wait for LMB */ KillZound(); /* Stop music */ QuitZound(); /* Free memory  */ }else AJMessage("\nIt won't work this way!\n"); }else AJMessage("Usage: LetsHearIt \n"); } AJMessage(mes)char *mes;{Write(Output(),mes,strlen(mes));} Activas. Enjoy it! * * Note: PlayZound now takes to arguments: * the first and the last part to be played. * specifying 0,0 means: play the song as last saved. * This parameter passing allows you to define * different tunes in one datafile * for example: the first tune could be * fromtf/HNs+x Єq+xЄr+xЄs+xЄt+xЄu+x$Єv+x(Єw+x,Єx!z !{!|!}!~!$!p(!q,A Nu!q !r!s!t!u!v$!w(!x,NuNU -yAt/0 msNXON]NuNU/(-+DЂsN$(N]Nu _exep _old3 _old4 _old5 _old6 _old7 _old9 _olda _oldb $_TrapNohandler3handler4handler5handler6handler7handler90itkhandlera$handlerb_FreeGurus (_usercode_Message._CatchGurusb_GetExeptions.begin (z+|Іy``(z+|Іy`R(z+|Іy`D(z+|Іy`6(z+|Іy`((z+| Іy`(z+| Іy` (z+| Іy/ <#Q A⁂HAB2*At7p(`<0*j"g2R@5@4* "j7B`*g2*j5A7A&7j NuB0*"IHA-HA|@e J@k0<@`B@4NuB-tzE&|K{B-v*g `BB-uЁC}(1.1 r<?fa`P@ r@*f-*B@*@At5p*gT*f @ <@Bj`HpGAt00pj5@ Bj0|BA-r5@"`*g  |H5@ 2<g*f-faM.`D*%g@%S6M|.,H5@a%V 5n.5n0 B0.2Ъ %@g*%*$g&@$3 *?g0*m~& 7j7j7R(XQ`R-u - ufB-uR-v-v-xfmwЄvNuNUH - -JfJg DЂwEЂx` myЄwmzЄxNJL0N]NuNU/xr6 NwA|Jg" Ap/0r6 NwC|/1NxPORm(N]NuNUH $m~p-qr6NwA!|4J0f~`Hx/ NyPO(g/NzXO*p-qr166NwA!|4Ј/N{XOr-qAp!gHxp-qAp/0p-qr6NwC!|4Љ/N|O /p-qr6NwA|$!gB~p-qr6NwA|"pBQp-qAp"0p-q?r6NwC!|^43/NzXO/N}XO LN]NuNUH 0$m&m zHx/ NPO+@JgHxHzs/-NpO HxHzr/-NpO HxHzy/-NpO HxHzz/-NpO HxHzr/-NpO xHx6r6 NwA|Ј//-NpO Rmx`5Hx A{Ј//-NpO Rp-scx`Hx A}Ј//-NpO Rp-rc/-NqXOB-q`/ NXOʀR-q -qeJfN\`z L 0N]Nu _ZMemsize @_SN A_MaxPart B_MaxTable C_count D_partvec E_tabvec F_StartTab G_EndTab H_loadstart I_loadend J_Table J_Sample _Parts _dmaconhulp _AudioTemp_KillZound _SetUpInterruptK_speednewlevel3_Periods_PlayZound_QuitZound.= beq noarp ; btst.b #1,21(A2) ; Do we have UltraSlide ? bne ultraslide ; move.l D4,D0 ; Get data in D0 lsr.b #4,D0 ; Put data>>4 in arpdata1 move.b D0,23(A2) ; move.l D4,D0 ; Get Data again and.b #15,D0 ; Use the rightmost nibble move.b D0,24(A2) ; Store it in arpdata2 clr.w 30(A2) ; Reset counter bra noslide ; ultraslide bset.b #0,29(A2 -!) ; Notice that next data is used for sliding move.l #24,D0 ; move.l D7,D1 ; asr.l D0,D1 ; Get Next note to be played btst.l #18,D7 ; Test for NONOTEADD flag bne ohboy ; If not set: add.b 3(A5),D1 ; Add the noteadd to it ohboy and.w #$3f,D1 ; Dump the DMA-bits asl.w #1,D1 ; lea _Periods,A0 ; move.w (A0,D1.w),D0 ; Next Period to be played sub.w 4!P(A2),D0 ; Substract the current period move.w D0,32(A2) ; Store it in period difference clr.w 30(A2) ; Reset counter move.w D4,D0 ; Get current data and.w #$ff,D0 ; Extract time clr.w D1 ; move.b _speed,D1 ; Multiply by speed mulu.w D1,D0 ; move.w D0,34(A2) ; Store it in maxcount bra noslide ; noarp btst.b #1,21(A2) ; Do we want slide here ? beq "\ noslide ; move.l D4,D0 ; Get data in D0 and.w #$ff,D0 ; Use the rightmost byte ext.w D0 ; Extend it to a word move.w D0,2(A2) ; Store it in audio->slidespeed noslide move.l D4,D0 ; Get Data again and.l #$f00000,D0 ; Extract sample move.w #20,D1 ; By shifting it 20 asr.l D1,D0 ; To the right beq oldsample ; If zero, use old sample btst.b #3,21(A2) # ; Is the NOINSTRADD bit set ? bne noinstradd ; add.b 2(A5),D0 ; Add the instrument add to tempbyte noinstradd bne newsample ; oldsample ; bsr GetVolume ; Get the volume bra nextvoice ; If zero, Use the old Sample newsample cmp.b 37(A2),D0 ; Maybe user made stupid music data... beq oldsample ; We do allready have this sample !!! move.b D0,37(A2) ; Save sampleno sub.l $D #1,D0 ; Calculate new sample mulu.w #54,D0 ; lea _Sample,A6 ; Put it in A6 adda.l D0,A6 ; move.b 44(A6),D0 ; ! Nasty things happen ext.w D0 ; !!! if you use a byte address move.w D0,26(A2) ; !!!!! as a word adress bsr GetVolume ; Well, that's clear (isn't it ?) move.l (A6),12(A2) ; Put Sample's start in audio->samplestart move.w 46(A6),8(A2) ; Put Sample's% z1 length in audio->length move.w 48(A6),10(A2) ; Put Sample's replen in audio->oneblowlen clr.l D0 ; move.w 50(A6),D0 ; Get Sample's restart data in D0 asl.l #1,D0 ; Mutiply with 2 add.l 12(A2),D0 ; Add audio->samplestart to it move.l D0,16(A2) ; And store it in audio->restart nextvoice btst.l #31,D4 ; Check for DMA off/on switch beq DMAonoff ; move.b 37(A2),D0 ; Check for sample&ܫ yet to play cmp.b 36(A2),D0 ; If equal to last used sample beq nonewDMA ; Then don't start it. move.b D0,36(A2) ; Update last used sample DMAonoff ; Switch it on anyway move.w 6(A2),$dff096 ; Turn voice off cmp.b #63,20(A2) ; If(audio->basenote==63) beq dontplayit ; move.w 6(A2),D0 ; dmaconhulp|=audio->dma; or.w D0,_dmaconhulp ; move.l 12(A2), (A3) ; Poke Samplestart move.w 'A 8(A2),4(A3) ; Poke SampleLength nonewDMA move.w 4(A2),6(A3) ; Poke Period move.w (A2),8(A3) ; Poke Volume dontplayit ; add.l #40,A2 ; Get new AudioTemp add.l #16,A3 ; Get new voice's registerbase addq.l #4,A5 ; Get new intab dbra D5,nvs ; Have we processed all voices allready? addq.b #1,_partvec ; Next note cmpi.b #32,_partvec ; Are at the end of this part? bne exit 6_} ; If not: exit clr.b _partvec ; Install new part add.b #1,_tabvec ; Next tabel position move.b _tabvec,D1 ; cmp.b _EndTab,D1 ; Are we at the end of the song? bne exit ; If not: exit move.b _StartTab,_tabvec; Restart song exit rts #endasm note==63) beq dontplayit ; move.w 6(A2),D0 ; dmaconhulp|=audio->dma; or.w D0,_dmaconhulp ; move.l 12(A2), (A3) ; Poke Samplestart move.w П,0x00b4,0x00aa,0x00a0,0x0097, 0x008f,0x0087,0x007f,0x0078,0x0071 }; static UBYTE count,partvec,tabvec,tablen=2,speed=6,StartTab,EndTab,loadstart,loadend; static struct TabData {UBYTE partno,volume,instradd,noteadd;} Table[TABLEN][VOICES]; static struct SampleData {ULONG start;UBYTE name[40];UBYTE vol;UWORD length,replen,restart;UBYTE preset;} Sample[16]; static ULONG Parts[NOPARTS][PARTLEN]; static WORD dmaconhulp; #include "Player.c" PlayZound(start,end)register U*Qyregisterbase move.l #20,D0 ; This waiting loop is nessacary wait ; because the hardware ain't fast dbra D0,wait ; enough to change voice1's replen quickly move.l #3,D5 ; We have 4 voices to handle so 3 ! (Thanx Dave!!) lea _AudioTemp,A2 ; Get audio in A2 loop bsr specials ; adda.l #40,A2 ; Let A2 point to next audiohulp adda.l #16,A3 ; And A1 to next voice-registers dbra +iN/N D5,loop ; Any voices left ? then handle them ! rts ; Leave my music routine specials btst.b #0,21(A2) ; Do we have Arpeggio here ? beq noarpeggio ; Yes it is beq here ! btst.b #1,21(A2) ; If both bit 0 and bit 1 are set bne superslide ; Then use my superslide routine add.w #1,30(A2) ; Increment arpeggio counter btst.b #0,31(A2) ; If odd : resume loop bne noslidehere ; el,se: poke new period move.w 30(A2),D1 ; Get count in D1 asr.l #1,D1 ; Divide by 2 divu.w #3,D1 ; swap D1 ; Get count%3 in D1 clr.l D2 ; move.b 22(A2,D1.w),D2 ; Get current arpdata add.b 20(A2),D2 ; Add audio->basenote in D2 asl.l #1,D2 ; Mutiply with 2 because periods are words lea _Periods,A0 ; Get the Periods table move.w (A0,D2.l),6(A3) ; Poke the period bra  -M noslidehere ; superslide move.w 30(A2),D0 ; Compare count cmp.w 34(A2),D0 ; With Maxcount beq noslidehere ; If ready: exit addq.w #1,D0 ; move.w D0,30(A2) ; Increment counter move.w 32(A2),D2 ; Get the Period difference muls.w D0,D2 ; Multiply with counter divs.w 34(A2),D2 ; Divide by maxcount add.w 4(A2),D2 ; Add the period to it. move.w D2,6(A3) ; Let the sound c .Ʈ ome out. bra noslidehere ; noarpeggio btst.b #1,21(A2) ; Perhaps a Sliding note? beq noslidehere ; move.w 2(A2),D1 ; Get slidespeed in D1 add.w 4(A2),D1 ; Add the period to it move.w D1,4(A2) ; Store it in the audio period move.w D1,6(A3) ; Let the sound come out! noslidehere move.l 16(A2), (A3) ; Poke audio->start move.w 10(A2),4(A3) ; Poke audio->length rts GetVolume clr.l D0  /ª ; move.w 26(A2),D0 ; Put audio->Samplevol in D0 move.l D4,D1 ; Put data in D1 lsr.w #8,D1 ; Shift it to get the Volume-add ext.w D1 ; - may be negative add.w D1,D0 ; Add it to the volume we've got move.b 1(A5),D1 ; Get intab->volume ext.w D1 ; Extend to word add.w D1,D0 ; Add it to the volume we've got cmp.w #64,D0 ; If it exceeds the maximum bcs  0h volumeOK ; legal volume then tst.w D0 ; bmi negative ; move.w #64,D0 ; Put the volume on maximum bra volumeOK ; negative clr.w D0 ; volumeOK move.w D0,(A2) ; Store it in audio->volume rts newvoices clr.b _count ; move.l #3,D5 ; 4 Voices...So set it to 3 (Thanx dave!) lea _AudioTemp,A2 ; movea.l #$dff0a0,A3 ; Install register voice base  1&aS lea _Table,A5 ; Get Tablebase clr.l D0 ; move.b _tabvec,D0 ; Add 16*tabvec asl.l #4,D0 ; adda.l D0,A5 ; nvs btst.b #0,29(A2) ; Test if data is used for sliding beq allOK ; bclr.b #0,29(A2) ; Clear flag. bsr specials ; Do sliding ea bra dontplayit ; Handle next voice allOK clr.l D0 ; move.b (A5),D0 ; Intab->partno in D0 asl.2<l #7,D0 ; Multiply with 128 (32 longwords) clr.l D1 ; move.b _partvec,D1 ; Partvec in D1 asl.l #2,D1 ; Multiply with 4 add.l D1,D0 ; Add it to the offset lea _Parts,A1 ; Get partsbase in A1 move.l (A1,D0.l),D4 ; Get some usefull data out of it move.l 4(A1,D0.l),D7 ; Get next Data in D7 move.l D4,D0 ; Data in D0 move.l #24,D1 ; Shift it 24 to the right asr.l 3;,8 D1,D0 ; Now got the note to be played and.b #$3f,D0 ; bne newnote ; We don't play Zero's bsr specials ; Do the effects bra dontplayit ; newnote move.b D0,20(A2) ; Store it in audio->basenote move.l D4,D0 ; Get data in D0 and.l #$f0000,D0 ; And it to get the control nibble move.l #16,D1 ; Shift it 16 bits to the right asr.l D1,D0 ; move.b D0,21(A2) 7Z]; And store it in audio->control btst.b #2,21(A2) ; Is the NONOTEADD flag set ? bne nonoteadd ; move.b 3(A5),D0 ; Else add intab->noteadd add.b D0,20(A2) ; To audio->basenote nonoteadd clr.w D0 ; Clever Aztec Code move.b 20(A2),D0 ; Which I can't improve asl.w #1,D0 ; ; lea _Periods,A0 ; ; move.w (A0,D0.w),4(A2); ; btst.b #0,21(A2) ; Do we have an arpeggio here ? 5y 10(a6),$dff0d0 move.w #1,$dff0d4 mt_voice3: lea mt_aud3temp(pc),a6 cmp.w #1,14(a6) bne.s mt_voice2 move.l 10(a6),$dff0c0 move.w #1,$dff0c4 mt_voice2: lea mt_aud2temp(pc),a6 cmp.w #1,14(a6) bne.s mt_voice1 move.l 10(a6),$dff0b0 move.w #1,$dff0b4 mt_voice1: lea mt_aud1temp(pc),a6 cmp.w #1,14(a6) bne.s mt_voice0 move.l 10(a6),$dff0a0 move.w #1,$dff0a4 mt_voice0: move.l mt_partnote,d0 add.l #$10,d0 move.l d0,mt_partnote cmp.l #$400,d0 bne.s mt_stop mt_higher: clr.l 6֝ mt_partnote addq.l #1,mt_partnrplay moveq #$00,d0 move.w mt_maxpart,d0 move.l mt_partnrplay,d1 cmp.l d0,d1 bne.s mt_stop clr.l mt_partnrplay mt_stop:tst.w mt_status beq.s mt_stop2 clr.w mt_status bra.s mt_higher mt_stop2: rts mt_playit: move.l (a0,d1),(a6) addq.l #4,d1 moveq #$00,d2 move.b 2(a6),d2 and.b #$f0,d2 lsr.b #4,d2 tst.b d2 beq.s mt_nosamplechange moveq #$00,d3 lea mt_samples(pc),a1 move.l d2,d4 asl.l #2,d2 mulu #$1e,d4 move.l (a1,d2),4(a6) move 7 =.w (a3,d4),8(a6) move.w 2(a3,d4),18(a6) move.w 4(a3,d4),d3 tst.w d3 beq.s mt_displace move.l 4(a6),d2 add.l d3,d2 move.l d2,4(a6) move.l d2,10(a6) move.w 6(a3,d4),8(a6) move.w 6(a3,d4),14(a6) move.w 18(a6),8(a5) bra.s mt_nosamplechange mt_displace: move.l 4(a6),d2 add.l d3,d2 move.l d2,10(a6) move.w 6(a3,d4),14(a6) move.w 18(a6),8(a5) mt_nosamplechange: tst.w (a6) beq.s mt_retrout move.w (a6),16(a6) move.w 20(a6),$dff096 move.l 4(a6),(a5) move.w 8(a6),4(a5) m 8vove.w (a6),6(a5) move.w 20(a6),d0 or.w d0,mt_dmacon mt_retrout: tst.w (a6) beq.s mt_nonewper move.w (a6),22(a6) mt_nonewper: move.b 2(a6),d0 and.b #$0f,d0 cmp.b #11,d0 beq.s mt_posjmp cmp.b #12,d0 beq.s mt_setvol cmp.b #13,d0 beq.s mt_break cmp.b #14,d0 beq.s mt_setfil cmp.b #15,d0 beq.s mt_setspeed rts mt_posjmp: not.w mt_status moveq #$00,d0 move.b 3(a6),d0 subq.b #$01,d0 move.l d0,mt_partnrplay rts mt_setvol: move.b 3(a6),8(a5) rts mt_break: not.w m 9t_status rts mt_setfil: moveq #$00,d0 move.b 3(a6),d0 and.b #$01,d0 rol.b #$01,d0 and.b #$fd,$bfe001 or.b d0,$bfe001 rts mt_setspeed: move.b 3(a6),d0 and.b #$0f,d0 beq.s mt_back clr.l mt_counter move.b d0,mt_cool+5 mt_back:rts mt_aud1temp: blk.w 10,0 dc.w $0001 blk.w 2,0 mt_aud2temp: blk.w 10,0 dc.w $0002 blk.w 2,0 mt_aud3temp: blk.w 10,0 dc.w $0004 blk.w 2,0 mt_aud4temp: blk.w 10,0 dc.w $0008 blk.w 2,0 mt_partnote: dc.l 0 mt_partnrplay: dc.l 0 mt_counter: zt dc.l 0 mt_partpoint: dc.l 0 mt_samples:dc.l 0 mt_sample1:blk.l 15,0 mt_maxpart:dc.w $0000 mt_dmacon:dc.w $0000 mt_status:dc.w $0000 mt_arpeggio: dc.w $0358,$0328,$02fa,$02d0,$02a6,$0280,$025c dc.w $023a,$021a,$01fc,$01e0,$01c5,$01ac,$0194,$017d dc.w $0168,$0153,$0140,$012e,$011d,$010d,$00fe,$00f0 dc.w $00e2,$00d6,$00ca,$00be,$00b4,$00aa,$00a0,$0097 dc.w $008f,$0087,$007f,$0078,$0071,$0000,$0000,$0000 mt_data: blk.b 0,0  rts mt_setvol: move.b 3(a6),8(a5) rts mt_break: not.w mL@WT d0,d1 move.l (a7)+,a0 move.l a0,d2 andi.w #-2,d2 NullFind: tst.b (a0)+ bne.s NullFind move.l a0,d3 sub.l d2,d3 move.l DosBase,a6 jsr write(a6) rts text: dc.b 10 dc.b 'Please Remove SOUND-CONTROLLER before starting ' name: blk.b 25,' ' dc.b 10,10,0 dosname: dc.b 'dos.library',0 even dosbase: dc.l 0 doc2.2replay.SDMA move.w #2,_AudioTemp+46 ; move.w #4,_AudioTemp+86 ; move.w #8,_AudioTemp+126; clr.w $dff0a8 =Sk^ ; kill voices clr.w $dff0b8 ; ,, clr.w $dff0c8 ; ,, clr.w $dff0d8 ; ,, clr.b _partvec ; partvec = 0 move.b _StartTab,_tabvec; start position of song move.b _speed,D0 ; sub.b #1,D0 ; move.b D0,_count ; lea trueA4,A0 ; Save A4 move.l A4,(A0) ; To be used in interrupt move.w #$4000,$dff09a ; Disable interrupts lea oldlevel3,A0 ; Get old interrupt and m>*uove.l $6c,(A0) ; Store somewhere move.l #newlevel3,$6c ; Replace it by our interrupt move.w #$c000,$dff09a ; Enable interrupts rts _KillZound: move.w #$4000,$dff09a ; Disable interrupts move.l oldlevel3,$6c ; Restore old interrupt vector move.w #$c000,$dff09a ; Enable interrupts move.w #15,$dff096 ; Switch off DMA rts _intrMusic move.l trueA4,A4 ; Get the right A4 ! addq.b #1,_count ; Count++; move.b _count,D1 )Js ; Compare count with speed; cmp.b _speed,D1 ; If equal: beq newvoices ; start a new note tst.w _dmaconhulp ; Any voices to be switched on ? beq nodma ; If not: skip a while move.w _dmaconhulp,D0 ; Get the voices to be switched on or.w #$8200,D0 ; Prepare to set some bits move.w D0,$dff096 ; Let the sound come out! clr.w _dmaconhulp ; clearit ! nodma movea.l #$dff0a0,A3 ; Get voices's @/OWmp.b #6,d0 beq label54 cmp.b #7,d0 beq label57 cmp.b #8,d0 beq label60 cmp.b #9,d0 beq label17 cmp.b #$a,d0 beq label21 cmp.b #$b,d0 beq label50 cmp.b #$c,d0 beq label11 cmp.b #$d,d0 beq label24 cmp.b #$e,d0 beq label15 cmp.b #$f,d0 beq label13 rts label50:move.b 3(a6),25(a6) rts label51:move.b #$0001,d0 bra label55 label52:move.b #%0010,d0 bra label55 label53:move.b #%0101,d0 bra label55 label54:move.b #%1010,d0 label55:and.b #$f0,26(a6) or.b d0,26(a6) moveA^c.b 3(a6),24(a6) bne label56 clr.b 26(a6) label56:rts label57:clr.w d0 move.b 3(a6),d0 cmp.w #$40,d0 ble label58 move.w #$40,d0 label58:move.w d0,label67 clr.b label77+27 rts label59:move.l #$dff0a0,a5 move.w label74+18,d0 bsr label12 move.l #$dff0b0,a5 move.w label75+18,d0 bsr label12 move.l #$dff0c0,a5 move.w label76+18,d0 bsr label12 move.l #$dff0d0,a5 move.w label77+18,d0 bsr label12 rts label60:move.b 3(a6),label77+27 rts label61:clr.w d0 move.b label77+27,dB370 move.w d0,d2 lsr.b #4,d0 and.b #$0f,d2 add.w d2,label67 sub.w d0,label67 bmi label63 cmp.w #$40,label67 ble label62 move.w #$40,label67 label62:rts label63:clr.w label67 rts label64:dc.w 0 label65:dc.w 6 label66:dc.w 0 label67:dc.w $40 label68:dc.l 0 label69:dc.l 0 label70:dc.w 0 label71:dc.w 0 label72:dc.w $400 label73:dc.l sample1 dc.l sample2 dc.l sample3 dc.l sample4 dc.l sample5 dc.l sample6 dc.l sample7 dc.l sample8 dc.l sample9 dc.l sample10 dc.l sample11C*-] dc.l sample12 dc.l sample13 dc.l sample14 dc.l sample15 label74:dc.l 0,0,0,0 dc.w 0,0,1,0,0,0 label75:dc.l 0,0,0,0 dc.w 0,0,2,0,0,0 label76:dc.l 0,0,0,0 dc.w 0,0,4,0,0,0 label77:dc.l 0,0,0,0 dc.w 0,0,8,0,0,0 label78:dc.w $0358,$0328,$02FA,$02D0,$02A6,$0280,$025C,$023A dc.w $021A,$01FC,$01E0,$01C5,$01AC,$0194,$017D,$0168 dc.w $0153,$0140,$012E,$011D,$010D,$00FE,$00F0,$00E2 dc.w $00D6,$00CA,$00BE,$00B4,$00AA,$00A0,$0097,$008F dc.w $0087,$007F,$0078,$0071,$0000 song: blk.sۍb $ even ; sample1: blk.b $ even ; sample2: blk.b $ even ; sample3: blk.b $ even ; sample4: blk.b $ even ; sample5: blk.b $ even ; sample6: blk.b $ even ; sample7: blk.b $ even ; sample8: blk.b $ even ; sample9: blk.b $ even ; sample10: blk.b $ even ; sample11: blk.b $ even ; sample12: blk.b $ even ; sample13: blk.b $ even ; sample14: blk.b $ even ; sample15: blk.b $ dc.l sample8 dc.l sample9 dc.l sample10 dc.l sample11E7_init1: move.l d1,d2 subq.w #1,d0 mt_init2: move.b (a0)+,d1 cmp.b d2,d1 bgt.s mt_init1 dbf d0,mt_init2 addq.b #1,d2 mt_init3: lea mt_data(pc),a0 lea mt_sample1(pc),a1 asl.l #$08,d2 asl.l #$02,d2 add.l #$0258,d2 add.l a0,d2 moveq #$0e,d0 mt_init4: move.l d2,(a1)+ moveq #$00,d1 move.w 42(a0),d1 asl.l #1,d1 add.l d1,d2 add.l #$1e,a0 dbf d0,mt_init4 lea mt_sample1(pc),a0 moveq #$00,d0 mt_clear: move.l (a0,d0),a1 clr.l (a1) addq.l #4,d0 cmp.l #$3c,d0 bne.s mtFt_clear clr.w $dff0a8 clr.w $dff0b8 clr.w $dff0c8 clr.w $dff0d8 clr.l mt_partnrplay clr.l mt_partnote clr.l mt_partpoint move.b mt_data+$1d6,mt_maxpart+1 rts mt_end: clr.w $dff0a8 clr.w $dff0b8 clr.w $dff0c8 clr.w $dff0d8 move.w #$000f,$dff096 rts mt_music: addq.l #1,mt_counter mt_cool:cmp.l #6,mt_counter bne.s mt_notsix clr.l mt_counter bra mt_rout2 mt_notsix: lea mt_aud1temp(pc),a6 tst.b 3(a6) beq.s mt_arp1 lea $dff0a0,a5 bsr.s mt_arprout mt_arp1:lea mtG$i_aud2temp(pc),a6 tst.b 3(a6) beq.s mt_arp2 lea $dff0b0,a5 bsr.s mt_arprout mt_arp2:lea mt_aud3temp(pc),a6 tst.b 3(a6) beq.s mt_arp3 lea $dff0c0,a5 bsr.s mt_arprout mt_arp3:lea mt_aud4temp(pc),a6 tst.b 3(a6) beq.s mt_arp4 lea $dff0d0,a5 bra.s mt_arprout mt_arp4:rts mt_arprout: move.b 2(a6),d0 and.b #$0f,d0 tst.b d0 beq.s mt_arpegrt cmp.b #1,d0 beq.s mt_portup cmp.b #2,d0 beq.s mt_portdwn rts mt_portup: moveq #$00,d0 move.b 3(a6),d0 sub.w d0,22(a6) cmp.w #$71H,22(a6) bpl.s mt_ok1 move.w #$71,22(a6) mt_ok1: move.w 22(a6),6(a5) rts mt_portdwn: moveq #$00,d0 move.b 3(a6),d0 add.w d0,22(a6) cmp.w #$358,22(a6) bmi.s mt_ok2 move.w #$358,22(a6) mt_ok2: move.w 22(a6),6(a5) rts mt_arpegrt: cmp.l #1,mt_counter beq.s mt_loop2 cmp.l #2,mt_counter beq.s mt_loop3 cmp.l #3,mt_counter beq.s mt_loop4 cmp.l #4,mt_counter beq.s mt_loop2 cmp.l #5,mt_counter beq.s mt_loop3 rts mt_loop2: moveq #$00,d0 move.b 3(a6),d0 lsr.b #4,d0 braI'@.s mt_cont mt_loop3: moveq #$00,d0 move.b 3(a6),d0 and.b #$0f,d0 bra.s mt_cont mt_loop4: move.w 16(a6),d2 bra.s mt_endpart mt_cont: asl.w #1,d0 moveq #$00,d1 move.w 16(a6),d1 lea mt_arpeggio(pc),a0 mt_loop5: move.w (a0,d0),d2 cmp.w (a0),d1 beq.s mt_endpart addq.l #2,a0 bra.s mt_loop5 mt_endpart: move.w d2,6(a5) rts mt_rout2: lea mt_data(pc),a0 move.l a0,a3 add.l #$0c,a3 move.l a0,a2 add.l #$1d8,a2 add.l #$258,a0 move.l mt_partnrplay,d0 moveq #$00,d1 move.b 4+@(a2,d0),d1 asl.l #$08,d1 asl.l #$02,d1 add.l mt_partnote,d1 move.l d1,mt_partpoint clr.w mt_dmacon lea $dff0a0,a5 lea mt_aud1temp(pc),a6 bsr mt_playit lea $dff0b0,a5 lea mt_aud2temp(pc),a6 bsr mt_playit lea $dff0c0,a5 lea mt_aud3temp(pc),a6 bsr mt_playit lea $dff0d0,a5 lea mt_aud4temp(pc),a6 bsr mt_playit move.w #$008a,d1 mt_loop:dbf d1,mt_loop move.w #$8000,d0 or.w mt_dmacon,d0 move.w d0,$dff096 lea mt_aud4temp(pc),a6 cmp.w #1,14(a6) bne.s mt_voice3 move.lKOwr clr.w 24(a6) mt_noclr: cmp.b #3,d0 beq mt_modvol cmp.b #6,d0 beq mt_modvol cmp.b #9,d0 beq mt_modvol cmp.b #4,d0 beq mt_modper cmp.b #7,d0 beq mt_modper cmp.b #10,d0 beq mt_modper cmp.b #5,d0 beq mt_modvolper cmp.b #8,d0 beq mt_modvolper cmp.b #11,d0 beq mt_modvolper cmp.b #15,d0 beq.s mt_speedset cmp.b #12,d0 bne.s mt_nochnge move.b 3(a6),8(a4) mt_nochnge: rts mt_speedset: cmp.b #30,$3(a6) bcs.s mt_speedslide cmp.b #227,$3(a6) bL*cc.s mt_speedslide cmp.b #210,$3(a6) bhi.s mt_speedsetend move.b 3(a6),mt_speed+1-v(a5) mt_speedset1: move.l #$1b1200,d0 divu mt_speed-v(a5),d0 move.b d0,$bfd400 lsr.w #8,d0 move.b d0,$bfd500 mt_speedsetend: rts mt_speedslide: move.w mt_speed-v(a5),d0 add.b 3(a6),d0 cmp.b #30,d0 bcc.s mt_speedset2 move.w #30,mt_speed-v(a5) bra.s mt_speedset1 mt_speedset2: cmp.b #210,d0 bls.s mt_speedset3 move.w #210,mt_speed-v(a5) bra.s mt_speedset1 mt_speedset3: move.bMao d0,mt_speed+1-v(a5) bra.s mt_speedset1 mt_modvol: move.w 20(a6),d0 bra.s mt_push mt_modper: move.w 20(a6),d0 lsl.w #4,d0 bra.s mt_push mt_modvolper: move.w 20(a6),d0 lsl.w #4,d0 add.w 20(a6),d0 mt_push: add.w #$8000,d0 move.w d0,$dff09e rts v: mt_aud1temp: dc.w 0,0,0,0,0,0,0,0,0,0,1,0,0 mt_aud2temp: dc.w 0,0,0,0,0,0,0,0,0,0,2,0,0 mt_aud3temp: dc.w 0,0,0,0,0,0,0,0,0,0,4,0,0 mt_aud4temp: dc.w 0,0,0,0,0,0,0,0,0,0,8,0,0 mt_partnote: dc.w 0 mt_partnrplay: dc.w 0 mt_cN~m'ounter: dc.w 0 mt_samples: blk.l 15,0 mt_maxpart: dc.w 0 mt_dmacon: dc.w 0 mt_speed: dc.w tempo mt_smplentab: dc.w smp1len,smp2len,smp3len,smp4len dc.w smp5len,smp6len,smp7len,smp8len dc.w smp9len,smpAlen,smpBlen,smpClen dc.w smpDlen,smpElen,smpFlen mt_arpeggio: dc.w $0358,$0328,$02fa,$02d0,$02a6,$0280,$025c dc.w $023a,$021a,$01fc,$01e0,$01c5,$01ac,$0194,$017d dc.w $0168,$0153,$0140,$012e,$011d,$010d,$00fe,$00f0 dc.w $00e2,$00d6,$00ca,$00be,$00b4,$00aa,$00a0,$0097 dc.w $008f,On1$0087,$007f,$0078,$0071 songdata: blk.b songlen smp1data: blk.b smp1len smp2data: blk.b smp2len smp3data: blk.b smp3len smp4data: blk.b smp4len smp5data: blk.b smp5len smp6data: blk.b smp6len smp7data: blk.b smp7len smp8data: blk.b smp8len smp9data: blk.b smp9len smpAdata: blk.b smpAlen smpBdata: blk.b smpBlen smpCdata: blk.b smpClen smpDdata: blk.b smpDlen smpEdata: blk.b smpElen smpFdata: blk.b smpFlen dc.l 0 ,0,0,0,0,0,0,0,0,8,0,0 mt_partnote: dc.w 0 mt_partnrplay: dc.w 0 mt_c P8~ rts label24:clr.w d0 move.b 3(a6),d0 label25:move.w d0,d2 lsr.b #4,d0 and.b #$0f,d2 add.w d2,18(a6) sub.w d0,18(a6) bmi label27 cmp.w #$40,18(a6) ble label26 move.w #$40,18(a6) label26:rts label27:clr.w 18(a6) rts label28:cmp.w #1,label70 beq.s label29 cmp.w #2,label70 beq.s label30 cmp.w #3,label70 beq.s label31 cmp.w #4,label70 beq.s label29 cmp.w #5,label70 beq.s label30 rts label29:clr.l d0 move.b 3(a6),d0 lsr.b #4,d0 bra.s label32 label30:clr.l d0 move.b Q@0 3(a6),d0 and.b #$0f,d0 bra.s label32 label31:move.w 16(a6),d2 bra.s label34 label32:lsl.w #1,d0 move.w 16(a6),d3 lea label78,a0 label33:move.w (a0,d0),d2 cmp.w (a0)+,d3 bne label33 label34:move.w d2,6(a5) rts label35:lea song,a0 move.l a0,a3 add.l #$0c,a3 move.l a0,a2 add.l #$1d8,a2 add.l #$258,a0 move.l label69,d0 clr.l d1 move.b (a2,d0),d1 mulu label72,d1 add.l label68,d1 clr.w label71 move.l #$dff0a0,a5 lea label74,a6 bsr.L label45 move.l #$dff0b0,a5 lea R#xlabel75,a6 bsr.L label45 move.l #$dff0c0,a5 lea label76,a6 bsr.L label45 move.l #$dff0d0,a5 lea label77,a6 bsr.L label45 move.b label77+27,d0 beq label36 bsr label61 label36:bsr label59 move.l #$1f4,d0 label37:dbf d0,label37 move.w label71,d0 or.w #$8000,d0 move.w d0,$dff096 bra label43 label38:lea label77,a6 tst.w (a6) beq label39 move.w 14(a6),$dff0d4 cmp.w #1,14(a6) beq label39 move.l 10(a6),$dff0d0 label39:lea label76,a6 tst.w (a6) beq label40 move.wSž 14(a6),$dff0c4 cmp.w #1,14(a6) beq label40 move.l 10(a6),$dff0c0 label40:lea label75,a6 tst.w (a6) beq label41 move.w 14(a6),$dff0b4 cmp.w #1,14(a6) beq label41 move.l 10(a6),$dff0b0 label41:lea label74,a6 tst.w (a6) beq label42 move.w 14(a6),$dff0a4 cmp.w #1,14(a6) beq label42 move.l 10(a6),$dff0a0 label42:rts label43:move.l label68,d0 add.l #$10,d0 move.l d0,label68 cmp.w label72,d0 bne.s label44 clr.l label68 addq.l #1,label69 clr.l d0 move.b song+$1Tod6,d0 move.l label69,d1 cmp.l d0,d1 blt.s label44 clr.l label69 label44:rts label45:move.l (a0,d1),(a6) addq.l #4,d1 clr.l d2 move.b 2(a6),d2 lsr.b #4,d2 tst.b d2 beq.s label46 clr.l d3 lea label73-4,a1 move.l d2,d4 mulu #4,d2 mulu #$1e,d4 move.l (a1,d2),4(a6) move.w (a3,d4),8(a6) move.w 2(a3,d4),18(a6) clr.b 25(a6) move.w 4(a3,d4),d3 move.l 4(a6),d2 add.l d3,d2 move.l d2,10(a6) move.w 6(a3,d4),14(a6) label46:tst.w (a6) beq.s label47 move.w (a6),16(a6) mo?Wh}6ve.w (a6),22(a6) and.b #%11110000,26(a6) move.w 20(a6),$dff096 move.l 4(a6),(a5) move.w 8(a6),4(a5) move.w (a6),6(a5) move.w 20(a6),d0 or.w d0,label71 label47:move.w 20(a6),d0 lsl.w #4,d0 add.w 20(a6),d0 move.w d0,$dff09e bsr label49 clr.w d0 move.b 25(a6),d0 beq label48 bsr label25 label48:btst #0,26(a6) bne label16 btst #1,26(a6) bne label20 rts label49:move.b 2(a6),d0 and.b #$0f,d0 cmp.b #3,d0 beq label51 cmp.b #4,d0 beq label52 cmp.b #5,d0 beq label53 cV+^  bcs.s mt_init2 cmp.w #210,mt_speed-v(a5) bls.s mt_init_end mt_init2: move.w #122,mt_speed-v(a5) mt_init_end: st mt_onoff-v(a5) move.w #$4000,$dff09a move.l $78.w,mt_oldirq-v(a5) lea mt_newirq-v(a5),a0 move.l a0,$78.w move.w #$c000,$dff09a bsr mt_speedset1 move.b #$11,$bfde00 move.b #$81,$bfdd00 rts mt_newirq: movem.l d0-d7/a0-a6,-(a7) lea $dff000,a0 move.w $1c(a0),d0 btst #$e,d0 beq.s mt_newirq_end lea v(pc),a5 tst.w mt_onoff-v(a5) beq.s mt_newWhkfirq_end move.w $1e(a0),d0 btst #13,d0 beq.s mt_newirq_end move.b $bfdd00,d0 bclr #7,d0 move.l 4.w,a6 move.l 240(a6),a6 or.b d0,41(a6) btst #0,d0 beq.s mt_newirq_end bsr.s mt_music mt_newirq_end: movem.l (a7)+,d0-d7/a0-a6 dc.w $4ef9 mt_oldirq: dc.l 0 mt_music: addq.w #1,mt_counter-v(a5) cmp.w #6,mt_counter-v(a5) bne.s mt_notsix clr.w mt_counter-v(a5) bra mt_rout2 mt_notsix: lea mt_aud1temp-v(a5),a6 tst.b 3(a6) beq.s mt_arp1 lea $dff0a0,a4 bsr.X ?rs mt_arprout mt_arp1: lea mt_aud2temp-v(a5),a6 tst.b 3(a6) beq.s mt_arp2 lea $dff0b0,a4 bsr.s mt_arprout mt_arp2: lea mt_aud3temp-v(a5),a6 tst.b 3(a6) beq.s mt_arp3 lea $dff0c0,a4 bsr.s mt_arprout mt_arp3: lea mt_aud4temp-v(a5),a6 tst.b 3(a6) beq mt_stop lea $dff0d0,a4 mt_arprout: tst.w 24(a6) beq.s mt_noslide clr.w d0 move.b 25(a6),d0 lsr.b #4,d0 tst.b d0 beq.s mt_voldwn2 bsr mt_pushvol1 bra.s mt_noslide mt_voldwn2: clr.w d0 move.b 25(a6),d0Y: bsr mt_pushvol2 mt_noslide: move.b 2(a6),d0 and.b #$f,d0 tst.b d0 beq mt_arpegrt cmp.b #1,d0 beq.s mt_portup cmp.b #2,d0 beq.s mt_portdwn cmp.b #5,d0 bls mt_arpegrt cmp.b #8,d0 bls.s mt_portup cmp.b #11,d0 bls.s mt_portdwn cmp.b #13,d0 beq.s mt_volup rts mt_portup: clr.w d0 move.b 3(a6),d0 sub.w d0,22(a6) cmp.w #$71,22(a6) bcc.s mt_ok1 move.w #$71,22(a6) mt_ok1: move.w 22(a6),6(a4) rts mt_portdwn: clr.w d0 move.b 3(a6),d0 add.w dZv!\0,22(a6) cmp.w #$358,22(a6) bls.s mt_ok2 move.w #$358,22(a6) mt_ok2: move.w 22(a6),6(a4) rts mt_volup: clr.w d0 move.b 3(a6),d0 lsr.b #4,d0 tst.b d0 beq.s mt_voldwn mt_pushvol1: add.w d0,$12(a6) cmp.w #$40,$12(a6) bls.s mt_ok3 move.w #$40,$12(a6) mt_ok3: move.w $12(a6),8(a4) rts mt_voldwn: clr.w d0 move.b 3(a6),d0 mt_pushvol2: and.b #$f,d0 sub.w d0,$12(a6) bcc.s mt_ok4 clr.w $12(a6) mt_ok4: move.w $12(a6),8(a4) rts mt_arpegrt: cmp.w #1,mt_count[Rer-v(a5) beq.s mt_loop2 cmp.w #2,mt_counter-v(a5) beq.s mt_loop3 cmp.w #3,mt_counter-v(a5) beq.s mt_loop4 cmp.w #4,mt_counter-v(a5) beq.s mt_loop2 cmp.w #5,mt_counter-v(a5) beq.s mt_loop3 rts mt_loop2: moveq #0,d0 move.b 3(a6),d0 lsr.b #4,d0 bra.s mt_cont mt_loop3: moveq #0,d0 move.b 3(a6),d0 and.b #$f,d0 bra.s mt_cont mt_loop4: move.w 16(a6),d2 bra.s mt_endpart mt_cont: lsl.w #1,d0 moveq #0,d1 move.w 16(a6),d1 lea mt_arpeggio-v(a5),a0 mt_loop \`5: move.w (a0,d0.w),d2 cmp.w (a0),d1 beq.s mt_endpart addq.l #2,a0 bra.s mt_loop5 mt_endpart: move.w d2,6(a4) rts mt_rout2: lea songdata-v(a5),a0 lea 12(a0),a3 lea $1d8(a0),a2 add.w #$258,a0 move.w mt_partnrplay-v(a5),d0 move.b (a2,d0.w),d1 lsl.w #8,d1 lsl.w #2,d1 add.w mt_partnote-v(a5),d1 clr.w mt_dmacon-v(a5) lea $dff0a0,a4 lea mt_aud1temp-v(a5),a6 bsr mt_playit lea $dff0b0,a4 lea mt_aud2temp-v(a5),a6 bsr mt_playit lea $dff0c0,a4 le ]c a mt_aud3temp-v(a5),a6 bsr mt_playit lea $dff0d0,a4 lea mt_aud4temp-v(a5),a6 bsr mt_playit move.w #$1f4,d0 mt_rls: dbf d0,mt_rls move.w #$8000,d0 add.w mt_dmacon-v(a5),d0 move.w d0,$dff096 lea mt_aud4temp-v(a5),a6 cmp.w #1,14(a6) bne.s mt_voice3 move.l 10(a6),$dff0d0 move.w 14(a6),$dff0d4 mt_voice3: lea mt_aud3temp-v(a5),a6 cmp.w #1,14(a6) bne.s mt_voice2 move.l 10(a6),$dff0c0 move.w 14(a6),$dff0c4 mt_voice2: lea mt_aud2temp-v(a5),a6 cmp.w #1, ^]`14(a6) bne.s mt_voice1 move.l 10(a6),$dff0b0 move.w 14(a6),$dff0b4 mt_voice1: lea mt_aud1temp-v(a5),a6 cmp.w #1,14(a6) bne.s mt_voice0 move.l 10(a6),$dff0a0 move.w 14(a6),$dff0a4 mt_voice0: add.w #$10,mt_partnote-v(a5) cmp.w #$400,mt_partnote-v(a5) bne.s mt_stop clr.w mt_partnote-v(a5) addq.w #1,mt_partnrplay-v(a5) and.w #$7f,mt_partnrplay-v(a5) move.w mt_maxpart-v(a5),d0 sub.w mt_partnrplay-v(a5),d0 bne.s mt_stop clr.w mt_partnrplay-v(a5) mt_stop: rts _v mt_playit: move.l (a0,d1.w),(a6) addq.w #4,d1 moveq #0,d2 move.b 2(a6),d2 and.b #$f0,d2 lsr.b #4,d2 tst.b d2 beq.s mt_nosamplechange moveq #0,d3 lea mt_samples-4(pc),a1 move.l d2,d4 lsl.l #2,d2 mulu #$1e,d4 move.l (a1,d2),4(a6) move.w (a3,d4),8(a6) move.w 2(a3,d4),18(a6) move.w 18(a6),8(a4) move.w 4(a3,d4),d3 add.l 4(a6),d3 move.l d3,10(a6) move.w 6(a3,d4),14(a6) cmp.w #1,14(a6) beq.s mt_nosamplechange move.l 10(a6),4(a6) move.w 14(a6 J[n),8(a6) mt_nosamplechange: tst.w (a6) beq.s mt_retrout move.w (a6),16(a6) move.w 20(a6),$dff096 move.l 4(a6),(a4) move.w 8(a6),4(a4) move.w (a6),6(a4) move.w 20(a6),d0 or.w d0,mt_dmacon-v(a5) mt_retrout: move.w 20(a6),d0 lsl.w #4,d0 add.w 20(a6),d0 move.w d0,$dff09e tst.w (a6) beq.s mt_nonewper move.w (a6),22(a6) mt_nonewper: move.b 2(a6),d0 and.b #$f,d0 cmp.b #$e,d0 bne.s mt_noset move.w 2(a6),24(a6) rts mt_noset: tst.b 3(a6) bne.s mt_noclaڨ }0 0 S @  `0 `0  `0     -@@@P  -@P  -@@P  b揺-  -@@}P  -  -@  -  -@P  -  -@}P  -@SP  -  -@P  -  -  -@}P  -  c(-@P  -  -@}P  -  -@SP  -  -@P  -  -@P  -@P  -  -  -  -  @ @@`0 d@ @ @0 @S0 @ @0 0  0   0 0  }  } S0e  @0 0 }0 0 S @  `0 `0  `0     fb} `}@ ``}@@}@`@`}@``S@`@@g`}@``}@@}@`@`}@`@`S@}`@@h尸 `@: ``@X@@`X@`@``}@`S@i8`@``@X@@`X@`@@`S`}@`h[S@``@X@@`X@`@``}@`S@U#),a5 lea smp1data-v(a5),a0 lea mt_samples-v(a5),a1 lea mt_smplentab-v(a5),a2 moveq #14,d0 mt_initloop: move.l a0,(a1)+ clr.l (a0) adda.w (a2)+,a0 dbf d0,mt_initloop move.w #$f,$dff096 clr.w $dff0a8 clr.w $dff0b8 clr.w $dff0c8 clr.w $dff0d8 clr.w mt_partnrplay-v(a5) clr.w mt_partnote-v(a5) move.b songdata+$1d6-v(a5),mt_maxpart+1-v(a5) tst.w mt_speed-v(a5) bne.s mt_init1 move.b songdata+$1d7-v(a5),mt_speed+1-v(a5) mt_init1: cmp.w #30,mt_speed-v(a5)lHSP} . PPPP: } }P}Pm@PSP} }@}@@}@@}@nS@@@}@}@@}@@}@oAS@@@ @@X@@X@@pz8}@S@@@X@@X@q@}@S@} }P}@}P}@P@}@ rx}P@P}@}PS@@PSP@@}P}@}P}@P@}@ sY}P@P}@}PS@@PSP@@ @P@PX@P td@X@P@@P}@PSPS@}P@P@P u|X@P@X@P@@P}@PSPS@P@ @@`0 @ @ @0 @ `ᚇS0 @ @0 0  0   0 0  }  } S0  @0 0:w@@ ;xD8@ @ <yI @  @ =zG @ @>{ɸ @ @?|FI @@@}nؒ@@A~N P BCf k  } n}P@S`}PP@}P  SP}}P`@P/m^..`...p< .P.P.P`< pP`pPPP`0)pP`pPPP`< SSSpSPSS`SSSpSPSPSP`< S1ZSSpSPSS`S< SSpSPSPSP`< pP`pPPP`ʰ2xʰʰpPʰʰ`ʰʰʰpPPP`.< ...p.P..`...p.P..P.P3܆$6` ...p.P..`...p.P.P.P` pP`p. PP4C(P`. pP` p PPP`S SSSpSPSS`SSSSp5$t2SPSPSP` SSSpSPSS`SSSp SPSPSP` pP`6xpPPP`ʰʰʰpPʰʰ`ʰʰʰpPPPАhq}q7鸎@@S֐qS:hq8ݟ@: S 9v@@$ SS`SSSpSPSPSP`< SSSpSPSS`S< SSpSPSPSP`< p%z |P`pPPP`ʰʰʰpPʰʰ`ʰʰʰpPPP`.< ..&ܽpZ.p.P..`...p.P.P.P`< ...p.P..`...p.P.P.P`< 'HpP`p.< PPP`.< pP`< p< PPP(Ջn`S< ShSS pSPS S`S (SSpSP 0SPSP @`< SSSpSPSS`SSSp< SPSP)tSP`< hpP`pPPP`ʰʰʰpPʰʰ`ʰʰʰpP* HPP` ...p.P..`...p.P..P.P`...pS.P..`..+h.p.P.P.P`pP`pPPP`pP`,~(pPPP`SSSpSPSS`SSSSpSPSPSP`SSSpSPSS`-ȌSSSpSPSPSP`pP`pPPP`ʰʰʰpPʰ.'NLʰ`ʰʰʰpPPP`< . ..p.P..`...p.P.P.P`< ...p.PSXPPPPP}}`}}}Pp}}`}}}}Pp}P}P@@`@@@Pp7h@@`@@@@Pp@P@P`Pp`PpPP..`..ؚ.Pp..h`hhhhPphPhP}`}}}Pp}}`}}}}Pp}P}P@`@@@Pp@@`@@@@Pp@P@P`Pp`PpPP.ˠ`...Pp..`hhhhPphPhP}}`}@}}@}}Pp@@}@@}}@`}}@}}}@}Pp@}P}P@ɢȔ@@`@@@@@@@Pp@@@@@@`@@@@@@@@Pp@@P@P@`@@Pp@@@`@@Pp@PP@..`.@..@..Pp@.@..@h`h.@hh.@hPp@hPhP@`}0}}}p}P}}`}}} dp}P}P}P`@@@p@P@@`@@@p@P@P@P`0pP`!/hpPPP`pP`p@P@P@P`< ...p.P..`"p...p.P.P.P`< ...p.P..`...p< .P.P.P`< pP#`pPPP`pP`pPPP`< SSSpSPQh2hx0\P. . \P܎.P\P\P\P.P\P0\P\P.P\P\P\P0.P\P0PHPPPPPP..PP..PPPPPPPDa0PSSPSPPPPSPP0PPSPPP0PSPȒP0PPPPPPPPPPPPPPPֵuP\P< .< \P\P.P.P\P\P\P.P.P\P< \P\P.PS.P\P\Pڤ\P.P< .PP< PPPPPPPP. PP. PPPPP PgPP PP< S PPSPSPPPPSPSPP< PPSPSPPx P< PSP SPP< PPPPPPPPPPPPPPSָ}0St}@}0}@S@}@@@}@S@}@@0}@U@@@@`}0}P`}PpP``}P`}P`}PpP` Ɗ}P``@P@P`pP@P```@P@P`pP@P``0P`PpP`P`P``PpP T`P`P`P`pPP``PP``pP@P``}}P`}PpP``}P`}P`}}P ٤hpSP`}}P``@@P@P`pP@P```@P@P`pP@@P``P`PpP`P`P`` ቸ@PpP`P`P`P`pPP``PP``p@P@P` 3f4d5b6`7^8\9Z:^ % !  % !; ! %0 % ! !% ! % ! D%0%@% 4 @%@%0@%@% @%@%0@%% %<Fxx%0%xxh% h%h%ְ0h% %@4  % %0 %% %%0%^P  (f)d*b+`,^-\.Z/X0V1T2hϻ;@ @%@%0@%@@% @%@%0@%% %xx%0%xhxh% h%h%0h% з7& %  % %0 %@%S %%0%@%@ @%@%0@%@@% @%@%0@%ѼIr\% %xx%0%xhx@h% h%h%0h%  %  % %0 %@%S % ҺÆ%0%@%@ @%@%0@%@@% @%@%0@%% %xx%0%xhxh% h%!Ӻ3h%0h%  %  % %0 %@%S %%0%% %xx%0%xhxh% "Ը 1h%h%0h%  %  % %0 %@%S %%0%@%@ @%@%0@%@#սV @% @%@%0@%% %xx%0%xxh% h%h%0h% %  % %0 %$ֻ]% %%0%@%4 @%@%40@%@% @%@%0@%4% %x4x%%1T0%xxh%x h%h%0h%! %  % %0 % %  % %0 %&T'hڷ;@%P@%XP0@%P@% @%:P@%0@%@% @ @%@%0@% @@% @%@% @0@%۾}V@%@ @%@%0@%@% %xx%@@0%x@x% %%0%% %%0%ܷL7%%%0%% %%0%@@@@% @ @%@%0@% @@% @%@%ݿ  @0@%@% HD @%@%0@%G"% %xx%@@0%x@x% %%0%% %޹%0%%%%0%% %%0% %@  % %0 %@ %  %ġ" %@0 % %H4  % %0 %@ %  % %@0 %@h% h%h%0h%h% h%h%0h%@h%@ h%h%0h%h%@ h%h%@0h%GD@% @%@%0@%t|-@% @%@% @0@%@%@ @%@%0@%%@ %xx%@@0%x@x% %%0+%% % @%@0%@@% %x}@x%0%xx% %xx%0%xx% %xxJ%}@0%x@@x ` @  `x@`@x@``@@0`x`@x`@@0@@ @@%0@%@@% @%@%0@%% %ιl=xx%0%xhxh% h%h%0h%  %  % %0 %@%S %%0%@%c2@0%%@%@ @0%%%@% @0%@0%@%@ @0%@0%%@%@ @0%%%@% @0%@0%@%@ @0%@0%%@%@ @0%%%\@% @0%@0%@%@ @0%@0%%@%@ @0%%%@% @0%@0%@% @ @0%%@% @0% @%@% @0%%@% @ @0% %@%@ @0%%@% @0%@% 0%xx%%@@ 0%x@x%% 0%%% 0%%% 0%%%  $0%%% 0%%% 0%%% 0%%% 0%@@%@@% @ @0%%@% @0% @%@% @0%% 龶J@% @0% @%@% HD @0%%@% @0%G"% 0%xx%%@@ 0%x@x%% 0%%% 0%%% 0% c%% 0%%%ְ 0%%% 0%%% 0%:%%X 0%% %@  % %  %@ % ċ\/  % %@  % %@  % %  %@ %  % %@  %@h% h%h% h%h% h%h% h%@h%H4 h%h% h%h%@ h%h%@ h% @@% @%@% @%/P@% @%@% @ @%@%@ @%@% @%@% %xx%@@ %x@x% %% %% % @%@ %@@% %x}@x% %xx% %xx% %xx% %xپx%}@ %x@@x% @ %x@x%@@ %xG"x@% @%@%0@%@% @%@%0@%@%:P  Ug7frN")#p BlJ fr`t") pINNNqJf "*\`F#jX`")#pJg ")fJf%|lr` ""0N#jX`")#pJg")$fJg&")tg f%|lrNrpIN#A JfrNp<(j8N#A0G" p@(jN#A4#i,(&*Xt") pI0N%AXNRAMJfr`n"<XҊ#A`")#p")Jg $f")Jf%|lr`"$)!("p(jxNrNNq#BDr#AHDntԉԁґ!(rҩH ,r|`"NNqT#NJf")hpxINrN")X\f($)")4px(j4NJf")hpxINrN$)4")XpxIN")d$*d!(")\$)d! (")\!d ")d!\")t0#Blr#Apln&$)ԁv0(tԩdԁ(rҩp`")hpxINrNv։#Cp@IN"$)p@I\NJfrN#j`")tfJ g%|lrNt")p@I`N#A JfrN")$0h"0 p@(jHN")$*d!(")p@(jxN") p@INrN$#p(")pITN#AJBO@%@0%%%%@%%@0%@0%%@%@%@0%@0%%%@%@%@0%%%%@%%@0%@0%%@%@%@0%@0%%%@%@%@0%%%%@%%@0%@0%䰃%@%@%@0%@0%%%@%@%@0%%%%@%%@0%@0%%@% @0%@0%@%@ @0%@0%%@%@ @0%%%@% @0%@0%@%@ @0%uV2  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~VZ 0 0 0 00  0 0hz`  ʆ 0f` f` 0f` 66 066 @%@%@0%@0%%@%@%@0%@0%%%@%@%@0%%%%@%%@0%@0%%@%@%@0%@0%%%@%9 g &p`*"M,xN"m(Nb$-"p"M0-mN. L`NupNuH<&*NOz"$<,m(N(fz`r"$v N FORMgz`Rr 8SVXfrt &/ԃ ,xN:Jfz`*$@$"$ PX,m(NJjz`$%o%o",m(N ga`a O LdL*N&H(I ILBMgp`afp`$@LHt*+op`~ *N&I(O~?Ax?Bz?C|?D~(FORM(0(ILBM(BMHD(@ B, B, Bl B9| kK89C9D9D/|, gDC("CMAPpr+h4T@"SB0H@H@HVQ"$<,m(N.g /,ѯ"$v8֯,,m(NJkJ, fa`a$Jkz&V</CtׯJg"B$,mf6(NXJkP"tv,m(N"$v0֯,,m(NJk,Ap BODY"$v,m(NJk",m(Na`"g,m(NpaL|NuH>8I$$0,|r+2,~/@ 2,zp0,xҀA"Op$ԁ"Qvxz:+6C6,|8,~SDSK$O, "$,m(NJkۚQQ / $L|NuH>8I$$B 2,zp0,xҀA"Op$ԁ"Qvxz:+&C6,|8,~SDS$O, 0 RC a6ѯ "C $ /&,m(N&JkۚQQ / $L|NuH00EvaL|mTS@D`*&HtRkRl a&|m`t KւRSBQm L Nu/Tpf |lR@m _Nu,xN" -, @ gf NuagBpNu/$ag!B$pNuH*NaJg (BL`Nup`/ $I BT@"SB0H@H@HVQ"$<,m(N.g /,ѯ"$v8֯,,m(NJkJ, fa`a$Jkz&V</CtׯJg"B$,mC(j$NRR$rҩ4`"*Ҫ#p(J(gz$)("*p<(j$N$)("*p<(j$NR")(p<(j(N"*tf"&*֪x8f&)(g$)(G," p<(j8N``<$) G<" p0(j8N`$$) "*p0IlNtgtvg`$*"*p0(jN#A$$*"*p4(jNҩ$gGT" p0(j4Nrҩ `Jfrp(j NNNq in drive 00Replace volumeis out of range is invalid- bad extension- not directory or filebitmap checksum error`b$)G|" p(j8N``"ҪJJl$)"pIDNN$)"pINN$)G" p(j8N`""0tgvg`N- bad block type- unexpected data block&*ցx8f(JgGx" p(j8N` r%ArN"$)fJfJ f Jg$)G" p(j8NrN- second root block- bad directory&勴8fJ8g*(*؁*0H8g$)G@" p(j8NrN - bad header#p,J,g$*,l#B,#j0"),$*R"#A40nBҪ$0"*pD(j$N"*ҩ4$0"*pD TsfF„%Al") N(#pH #pH#pH*) #pX BB `")$)԰_#B#p")f$)ԩQ#BJfթJo") $0թJlJl%|lrN") $0l%|lrNJf") JfrN") #p Jf%|lrN")$) ԰_#B$l#B #p`"!") $)P&!8")NNqzډ#E|8܉#F4pdIN#AXJfrN")pxIN#A\JfrN&)4$)")XpxIXN#AX$)4pxINJfrN#j`d&)$) ")\pxIXN#A\Jf 7-PrNt")dpxIN#AhJfrN")pxINJf")hpxINrN")X\f($)")4px(j4NJf")hpxINrN$)4")XpxIN")d$*d!(")\$)d! (")\!d ")d!\")t0#Blr#Apln&$)ԁv0(tԩdԁ(rҩp`")hpxINrNv։#Cp@IN"$)p@I\NJfrN#j`")tfJ g%|lrNt")p@I`N#A JfrN")$0h"0 p@(jHN")$*d!(")p@(jxN") p@INrN$#p(")pITN#AJ$0("0 <I0N&*l$")p <(jN`")p$&((0H &08$0("0 <I N&*l$")p <(jN`")p"0 <IN#AtJf&*lt")p <(jN")p$0")t <IN&*l$")p <(jN`F")p <(jN&*l$")p <(jN`")p$&&08$0("0 <I 0N&*l$")p <(jN`")p$&&08$0("0 <I N&*l$")p <(jN`")p$&x&08$0("0 <I N&*l$")p <(jN`f")p$&x&08$0("0 <I N&*l$")p. <(jN`(")p$&&08$0("0 <IN&*l$")p <(jN`")p"0 <INt")p <(jN`")p"0 <IN#At#ipJfr`t")t <I(N&*l$") <(jN`h")p"0 <IN&*l$")p <(jN`8JXf"vt")p <(jN <(jPN&<t")p <(jN`")p <IN`&<t")p <(jN`")p"0tlRvl$xglzg$|g6~g$`gtgvgxgFzg`gtWl&vgs\xgTzg|Rg`Tg g g< g& g`$`$Nq"*\"0 p INp (jNN`D"#ptf"0 pIN`""0 p(jHN"p(jxN"JfN$*hv R#B(zHf "0H` ""0#AtR#B(#i,#i0#|4#|DOS8B<#jX@xvtpIXNt"p(jNN$#p(")pI \N#AJfrN"$)"0pINNNq$#p(#p(&)#p8 ")pI N#AJfrN#i ") f$) "0( ` ") "0$") p IpNNJf%|.lrN"!")$!(x")$!(r#Atn"v֩ցx!ؑ؁!8Hrҩ`r#Atn ԩԁv֑ց!(8rҩ`")$!(|")$0v Rx ؑ!H"Btr$ґBrNNqp(jtN#AJf%|l"*tp(jxNBtrN")NpI N#Atԉ#BJfrN&)$)")pDIHN#AJfrN")pDINJfrN$)")pDI NJf lgrNrpDIN#A JfrN")t#BTBXB\()&0 t") pDI (N$)!( rҩ pD(jXN") Jg8Dt԰"pD(jXN")t0#B8r#A<8n&$)ԁv0(tԩ ԁ(rҩ<`t") pDI NNx&t:")p(jN#A Jft#B () &)t/")p(jN#AJf"Nrҩ f4""JfrN")t0 f"N#i `#i $)"p INJfrN"``xJg&x8g Jf "<`"<%AlrNrґ%Ad$%p( ``2rҪ`$")p(j4NJfrN%j`d"*`%p`J`fB`%|lrNNq$v0(#C%|lxn zorN#ir#A nD$ԁv0̶Tq("p(j,Nt‚#Av mx/g z:frNrҩ `rNpIN#Atԉ#BJfrNx&)t:")pD(jN$)v0(RgH&)$)")pDI@N#A$)v0(Jg$)pDINJfrN#j`t")pDINNNq$")pIXN#A JfrN") #p$)v!(") B") t!"! $rN$")pIN#A JfrN") #p$)v(g") p IN%|lrN")$) ! (") t!"! $rN*#pX#pX#pXJfr` ")"0#AB $)d׾SR#B$BlJfJ grN`~")$)#B(&) ()S#D,Jl*)#pX4J4g JfJ g"B") Nrҩ$pDIPN#A4JfrNJf")!4 `")!4")4B") $)^&)4!8")$)԰ !"*hҩ %Ah#i4")#pt#B&)#C("),(o ")(`"),#A0J g.$)ԩ&)֩ "#CD&)0$)Dp@(jpN` ")ҩ $)ԩ&)0p@(jpNR0")0ө ө") fz$!("!J g(r$)fFF&)xJ8SThe volume will remain at this level until a next SAMPLE is played. At this time, the volume is reset to the default volume level of that sample. Example: C#1 1C22 - Set volume to $22 (=34) and use instrument # 1 to play the C#1 note. D-2 0000 - Use instrument # 1 to play the D-2 note. (Volume level remains at $22 (=34)) B-1 1000 - Use instrument # 1 to play the B-1 note and set volume to default value for that instrument. Pattern break: -------------- Pattern break is used to create shorter patterns than 64 notes. The note with the $0D command will be played and after that the next pattern in the position-table will be played. Example: A#3 1D00 - At this point the pattern interrupts. --- 0D00 - Look upper line. C-1 0D30 - Look upper line. Filter: This Soundtracker version allows you to turn the loS :-pass filter ------- on/off. Example: G#2 1E01 - Turns the filter and the power-led off. --- 0000 E-1 1E00 - Turns the filter and the power-led on. Warning to all Amiga 1000 owners (like Unknown and Esteban): Don't play with the power-led because some A500 and A2000 owners will not be happy when they hear your song. Speed: This function allows changing the speed during play. ------ You can only enter a speed between 01 and 0F. Setting the info byte hH: to zero doesn't effect anything. The normal speed is 6. Example: D-2 4F04 - Set speed to 4 --- 0000 E-1 0F00 - Nothing happens to speed. --- 0FC3 - Set speed to 3 G-2 2F06 - Set normal speed If you load another song it will be played with the actual speed. All songs on these disk are re-written to their normal speeds. (by D.O.C) The Playroutine. ---------------- The playroutine on the SoundTracker disk is for @x using your music in demos, intros, games etc. It was written using the Seka-assembler and the source of the routine can directly be incorporated in your demo/intro source. When you are finished writing your music using D.O.C-SoundTracker, save it to Disk. Use the function 'SAVE MODULE'. You will find at the 'MODULES'-DIR a file, which contains all muzakdatas and instruments. Load with SEKA the source of the playroutine and enter the size of saved module at the label 'mt_data'. Assem 2_ble. Now load the saved module to 'mt_data'. How to play a song: ------------------- At the beginning of your program, call the 'mt_init' routine. Each vertical blank jump to the 'mt_music' routine. To stop the song jump to the 'mt_end' routine. Please note that the V2.2 version of D.O.C-SoundTracker is completely downwards compatible with version V9. -------------------------------------------------------------------------- If you think the D.O.C-SoundTracker V2.2 is the Best an Hd D.O.C is great then write to the following Address : D.O.C (Don't write this line) PLK 088231 C 2350 NEUMUENSTER 1 WEST-GERMANY ------------------------------------------------------------------------- ADDITIONAL INFORMATIONS AND HINTS : - SOME INSTRUMENTS HAD BEEN CHANGED AND SOME HAD BEEN REPLACED FOR OTHER INSTRUMENTS (FROM K. OBARSKI) - CAUSE OF DISK-SPACE ON SECOND INSTRUMENT DISK UNKNOWN AND TRACER COPIED SOME INSTRUMENTS FROM THEIR MUSIC-RIPPS TO IT. TjiHE MAIDEN VERSION CONTAINS 258 INSTRUMENTS AT ALL. THIS NEW VERSION CONTAINS CA.420 INSTRUMENTS !!! - THIS SOUNDTRACKER-VERSION CONTAINS FIVE DISKS AT ALL! (ONE SONG DISK,FOUR INSTRUMENT DISKS) - HINT : CONTACT D.O.C !! (But not, if 'ya are a LOSER or a LAMER or BOTH !!!!?) ---------------------------------------------------------------------------- --------------------------------------------------------------------- If you think the D.O.C-SoundTracker V2.2 is the Best an8N$)T!(t" <d(jN <d(jN#AX`")X#p\JLg&<t")X <l(jN`r#AL$)\!($)\!($$")X <l(jN`")X#p\JPg&<t")X <l(jN`r#AP$)\!($)\!($$")X <l(jN``")X f BL`BPJLfJPf ")TBt")X <h(jN`#iX$)")< <hIN`#iX($) ") <hIN`#iX()&)Xt")< <hINB`#iX ()(&)Xt") <hINB(`JLfJPf ")TԿB&<t")X <h(jN`P")X"0tRgjvWg g g2 g gN g`~JLfJPfJ(gJg")< <d(jNNNqserial.deviceparallel.deviceprinter.device*#pX#pXB4(0X&),p$(jN&)t("p$(jN$) "p$(jXNN&x08#Dt p(jN#A Jf$")p(jN`&)t")p(jNNNqolt") <d(jN")HR&t(") <d(jN") <d(jTN")(!")! <d(j[K" p0(j8N"*ҩ#p"*ҩ#p ") ©Jfr`r#A $)ĩJfr`r#A gJ f$) G " p0(j8N$) "*p0(j$NR") p0(j(N`"*Ҫp0(j,N#j$r#A($n2ҪJg"*ҩ($0"*p8(j$Nrҩ(`"*ҪJg"*Ҫ$0"*p0(j$Nr%A`"*Ҫp0(j,NB$"*ҪJg""*Ҫ$0"*p8(j$Nr%A"*#p,J,g$*,l#B,#j0"),$*R"#A40nBҪ$0"*pD(j$N"*ҩ4$0"*pDK alt + F5 - Copy puffer to current pattern. Special keys: ------------ To quit the D.O.C-SoundTracker 2.2 point the mousepointer at 0,0 and press: alt + shift + left and right mousebutton together !!!! Sample sort function: --------------------- I've inserted a special sort function in the load-song routine, so you needn't to be a DJ anymore. Only the D.O.C-SoundTrackers 2.1 + 2.2 will load ALL Samples from the Disk 'ST-01', than from 'ST-02', than from 'A ST-03' and so on. Sample zero function: --------------------- While edding-ting you're able to set the sample to the value zero (0!). Press all mousebuttons (three at all) at the position of the sample- gadgets (plus,minus = +,-). Now you can edit the pattern with the sample 0 to prevent difficulties according to the volume (Frog's idea) !!! Correct 'DisplayPattern' routine: --------------------------------- The 'MasterSoundTracker V1.0' and the 'D.O.C-SoundTracker V2.0' had a inc Porrect 'DisplayPattern' routine !!! The highest bit of the command- and infobyte had been deleted on screen, but not in the memory !!!!!!!!!! I've discovered this bug and removed it. Example: Entered - E-2 C2FF <=- Correct ! Printed out later - E-2 427F <=- Wrong instrument and infobyte ! Still in memory - E-2 C2FF <=- Correct ! Instruments. ------------ You can use up to fifteen different instruments in one music-piece. All instruments are  ԛ̄listed in the preset-list. The volume is allways 64 but you can change it to each value between 0 and 64. To change the other values of each instrument you have to load the preset-editor. With that tool you can change the whole preset-list. TIP improved the preset-editor : some values (Length,Repeat and RepeatLength) have to be entered in hexadecimal !!! Now you can use samples up to $8000 (=32768) bytes !!!! (Press right mouse-button to quit). UNKNOWN corrected the preset-editor :  It got a nice bug ! (Not TIP's fault) Example: You've an instrument called 'HeavySynth' in your preset-list, now you want to INSERT an instrument with the name 'Heavy' in it. The preset-editor searches for the word 'HEAVY' in the list, find the name 'HEAVYsynth' and DELETES it to insert the name 'Heavy' !!!!!!!!!!!!! Of course I've discoverd and removed this bug, too. Notes: ------ C#1 3 C 2 3 / / | \|   Lv / / | Arpeggio,portamento,volume,speed,filter and / / Command position info. / Inst# Note to be played. Note: This is simply the note that must be played by that particular ----- instrument. Inst#: This is the number of the instrument that must be used to play ------ the note. When the instrument number is zero, the last selected instrument will be used. C "Command: This number tells SoundTracker what special functions must be -------- preformed while playing the note. These functions are as follows: 0 - Normal play or arpeggio. 1 - Portamento up. 2 - Portamento down. B - Position jump! C - Set volume. D - Pattern break! E - Set filter on/off F - Set speed. Info: This byte contains the additional information for the commands. ----- Arpeggio: Arpeggio is used for simulating accords.N It does this by --------- rapidly changing the notes while playing an instrument. Arpeggios are selected whenever the info byte has a non-zero value and no other commands are selected. When arpeggios are used, SoundTracker looks five times during the play of one note, at the information contained in the info byte. Each nibble (4 bits) in this byte defines how many notes SoundTracker must add to the the note currently&E playing. In each of the five passes SoundTracker does the following with the information contained in the info byte : 1 - Add the first nibble to the current note. 2 - Add the second nibble to the current note. 3 - Play the current note. 4 - Add the first nibble to the current note. 5 - Add the second nibble to the current note. Portamento: Portamento is used for 'sliding' of the instrument.q#] ----------- If portamento is in use, the information contained in the info byte will be added to (or subtracted from) the period of the note playing in each of the five passes. Example: D#2 3208 Slides down $08 --- 0208 Slides down $08 --- 0108 Slides up $08 --- 0210 Slides down $10 (=16) etc. Position jump: -------------- The position jump command will do the same like the pattern o8break command, but the info byte gives the playroutine the no. of the position. Example: E-2 3B04 - Break the pattern and jump to position 4 --- 0000 --- 0B06 - Break the pattern and jump to position 6 Volume: One of the enhancements that the V2.2 version provides is the ------- ability to change the volume at any time during play. When command $0C (=12) is selected, the volume is set to the value contained in the info byte. U nzuhalten und durch setzen von 'mt_onoff', von der gleichen Position an weiterzuspielen. Man sollte allerdings auf keinen Fall versuchen, einen mit 'mt_onoff' angehaltenen Song mit 'mt_init' wieder zu starten. Ein Neustart mit 'mt_init' funktioniert nur nach vorherigem Aufruf von 'mt_end'. Weist man der Konstante 'Tempo' keinen gueltigen Tempowert zu, so wird die Abspielgeschwindigkeit durch das im Song angegebene Tempo festgelegt. Steht hier ebenfalls ein ungueltigen Wert, da der SoVYy ng beispielsweise mit einer alten Soundtrackerversion erstellt wurde, so wird das Tempo auf 122 gesetzt. Dies entspricht dem Standard-Tempo des BLUE-Soundtrackers. Da die Audio-Hardware des Amiga nur auf das ChipMem zugreifen kann, ist darauf zu achten, dass sich die Sampledaten bei Ausfuehrung des Programms auch tatsaechlich im ChipMem befinden. Am besten ist, man legt die Abspielroutine ebenfalls ins ChipMem, da sie sich, wegen der hoeheren Geschwindigkeit des FastMem, dort ab und WR-zu 'ueberschlagen' koennte. Playmodul: ---------- Da BLUE die Abspielroutine, wie uebrigens auch den Soundtracker selbst, in vollkommen relocativem Code geschrieben hat, ist es moeglich, mit dem File 'playmodul.s' ein von jedem Programm aus ladbares Modul zu erstellen, welches saemtliche Song- und Sampledaten sowie die aufrufbare Playroutine selbst enthaelt. Hierzu bindet man die Daten zunaechst, wie oben angegeben, in das File 'playmodul.s' ein und speichert es als Objectfile ab.XL" Im Verzeichnis BLUE dieser Diskette befindet sich das Programm 'makemodul'. Das soeben abgespeicherte Objectfile wird nun an 'makemodul' als Argument uebergeben. Hierdurch werden einfach nur die im Objektfile befindlichen Informationen fuer das AmigaDos entfernt, die dieses zum laden eines Programms normalerweise benoetigt. Uebrig bleibt der Programmcode selbst, der von 'makemodul' in einem Datenfile, das an der Endung '.mod' zu erkennen ist, abgespeichert wird. Dieses File kann nunY q[ von jedem Programm aus an eine beliebige Adresse des Chiprams geladen und als Unterroutine aufgerufen werden. Hierbei gilt: Anspringen der Ladeadresse --> Routine mt_init Anspringen der Ladeadresse+2 --> Routine mt_end Ladeadresse+4 --> Adresse von mt_onoff ------------------------------------------------------------------------------- Und nun: Viel Spass mit dem BLUE-Soundtracker! -------------------------------------------------------------ZS------------------ it einer alten Soundtrackerversion erstellt wurde, so wird das Tempo auf 122 gesetzt. Dies entspricht dem Standard-Tempo des BLUE-Soundtrackers. Da die Audio-Hardware des Amiga nur auf das ChipMem zugreifen kann, ist darauf zu achten, dass sich die Sampledaten bei Ausfuehrung des Programms auch tatsaechlich im ChipMem befinden. Am besten ist, man legt die Abspielroutine ebenfalls ins ChipMem, da sie sich, wegen der hoeheren Geschwindigkeit des FastMem, dort ab und ")Zєu can "shift" the keyboard one octave up or down with the aid of the F1 and F2 keys, this incrementing the range of the keyboard to three octaves. While editing: -------------- Cursor-keys move cursor. shift + Cursor-keys move cursor fast. alt + Cursor-keys move cursor fastest. F6 - Set cursor to first line of pattern. F7 - Set cursor to 16th line of pattern. F8 - Set cursor to 32th line of pattern. S F9 - Set cursor to 48th line of pattern. F10 - Set cursor to last line of pattern. DEL - Delete note under cursor. shift + F3 - Cut track of current pattern and copy into copy-puffer. shift + F4 - Copy track of current pattern into copy-puffer. shift + F5 - Copy puffer to track of current pattern. alt + F3 - Cut the whole pattern and copy into copy-buffer. alt + F4 - Copy pattern into copy-puffer. $9 A sample sort function Corrected 'DisplayPattern' routine Corrected preset-editor Improved record function Extended keymap (Sonix style) Pattern play function Delete Song function in the dos menu Improved ANALYZER Pattern changing during play Pattern break command !!!! Position jump command !!!! Sample zero functio%!D-n New playroutine for use in demos/intros/games Improved graphics (colors,styling,font) Nice scrolling Animated mousepointer Directory Sort function New Colors for the Analyser Patterns. --------- Any piece of music written with SoundTracker 2.2 is build up from patterns. SoundTracker holds a table with information about the sequence in which these parts must be played. With 'Position' you determine!> your position in the table. With 'Pattern' you define what pattern to play at that position. 'Length' defines the total size of the table. The Keys. --------- The original (V1.8) version of the SoundTracker had a German keymap. Version 2.2 supports a standard USA keymap and this ensures compatibility with ALL Amigas. The keyboard has been extended, try typing on the whole key-rows. The keys on your Amiga have been grouped to represent the layout of a two-octave piano-keyboard. YoJ'k (siehe auch Funktionstastenbelegung) das Herausschneiden oder Herausloeschen rueckgaengig machen. Um den markierten Abschnitt vom Copybuffer wieder in das aktuelle Pattern einzufuegen, hat man zwei Moeglichkeiten: --> Der Abschnitt im Copybuffer wird an der aktuellen Notencursorposition eingefuegt. --> Der Abschnitt aus dem Copybuffer wird ueber die ab der Notencursorposition stehenden NoteK(^ndaten kopiert. Transponieren: -------------- Hat man mit und den Cursor-Tasten einen Notenabschnitt markiert, kann man diesen in Halbtonschritten nach oben bzw. unten transponieren. Fallen Noten dabei oben aus der drei Oktaven fassenden Reichweite heraus, werden diese von unten wieder hineingeschoben und umgekehrt. Die Tasten: --> Markierter Abschnitt wird um einen Halbton nach oben transponiert. --> Markierter Abschnitt wird um einen Halbton nach unten tL)Rransponiert. Funktionstastenbelegung: ------------------------ --> Aendert die Notendarstellung. Oktave #3 wird transponiert dargestellt und ist fuer die Maus nicht zugaenglich. --> Aendert die Notendarstellung. Oktave #1 wird transponiert dargestellt und ist fuer die Maus nicht zugaenglich. --> Kopiert den Abschnitt aus dem Copybuffer ueber die ab der Notencursorposition stehenden NotM*~Iendaten. --> Loescht die aktuelle Notenzeile und Kopiert sie dabei in den Copybuffer. --> Kopiert den Copybuffer ueber die aktuelle Notenzeile. --> Bewegt den Notencursor zur Notenposition #0 --> Bewegt den Notencursor zur Notenposition #16 --> Bewegt den Notencursor zur Notenposition #32 --> Bewegt den Notencursor zur Notenposition #48 --> Bewegt den Notencursor zurN+ Notenposition #63 Sonstige Tastenbelegung: ------------------------ --> Neben der Funktion der Space-Taste im Edit Modus, kann man sie dazu verwenden, falls weder der Edit noch ein Play Modus eingeschaltet ist, die Notenwerte der aktuellen Stimme mit dem momentan eingestellten Sound zu spielen. --> Schaltet den Patternplay Modus an bzw. aus, wobei jeweils an der aktuellen Notenposition gestartet wird. --> Schaltet den Edit Modus an bzw. aus. --> Bewirkt ein kurzfristiges Stummschalten aller Stimmen. Hiermit ist es moeglich Abhilfe zu schaffen, falls eine Stimme 'haengt'. --> Listet eine Kurzuebersicht der verfuegbaren Commands und der jeweiligen Bedeutungen des Infobytes. --> Durch zusaetzliches Betaetigen einer der Tasten <1>,..., wird der entsprechende Sound angewaehlt. Bedeutung der MauszeiP-Ngerfarben: ------------------------------- Durch die Farben des Mauszeigers zeigt Soundtracker an in welchem Modus er sich momentan befindet. Hier nun die Bedeutung der Farben: Grau --> Kein besonderer Modus ist gewaehlt. Blau --> Soundtracker befindet sich im Edit Modus. Gelb --> Soundtracker befindet sich im Songplay Modus. Orange --> Soundtracker befindet sich im Patternplay Modus. Lila --> Soundtracker wartet auf eine Eingabe. Gruen --> Eine Ladetaetigkeit iQ.i{st in Gang. Rot --> Eine Fehler ist aufgetreten oder eine Funktion wurde 'gecancelt'. Playroutine: ------------ Im Verzeichnis BLUE dieser Diskette befinden sich die ebenfalls von BLUE modifizierten Files 'playroutine.s' und 'playmodul.s'. Beide Files enthalten groesstenteils den Source-Code, der im Soundtracker verwendeten Abspielroutine und bieten zwei unterschiedliche Moeglichkeiten, Soundtracker-Songs in eigene Demos, Intros oder Spiele zu integrieren. Waehrend das File 'pR/Llayroutine.s' auch ohne Zusatz lauffaehig ist, ist das File 'playmodul.s' dazu gedacht, die Abspielroutine in den eigenen Sourcecode einzubinden oder ein vom eigenen Programm aus ladbares Songmodul zu erstellen. Die Song- bzw. Sampledaten werden in beiden Faellen folgendermassen integriert: Zunaechst notiert man sich die Laenge des Songs und der verwendeten Samples sowie deren zugehoerige Soundnummern. Im Seka-Assembler traegt man diese Laengenangaben nun am Kopf der verwendeten RoutS0ine hinter den entsprechenden 'equ'-Anweisungen ein. Nachdem man das File nun assembelt hat, laedt man mit 'Read Image' die Song- bzw. Sampledaten an die entsprechenden Labels 'songdata' bzw. 'smp#data' (das '#' steht hier fuer die Soundnummer). Nun wird das auf diese Weise sammengefuegte Objectfile mit 'Write Object' abgespeichert. Geht man in der beschriebenen Weise beim File 'playroutine.s' vor, ist dieses nun als Programm startbar. Ein kleiner Tip: Als Alternative zum einzelnen eTƔinlesen der Song und Sampledaten, kann man diese auch mit dem CLI-Befehl 'Join' in der richtigen Reihenfolge hintereinanderkopieren und komplett einlesen. Bindet man die Abspielroutine in den eigenen Sourcecode ein, so wird der Song mit Aufruf der Unterroutine 'mt_init' gestartet und mit Aufruf von 'mt_end' kann er gestoppt werden. Nochmaliges Aufrufen von 'mt_init' spielt den Song nun wieder von vorne usw. Man hat ausserdem die Moeglichkeit, durch Loeschen von 'mt_onoff', den Song a?2wvfuehren. Deshalb bewirkt das Einschalten des Edit Modus das Ausschalten des Songplay Modus und umgekehrt. Man hat nun zwei Moeglichkeiten sich bei der Eingabe von Notenwerten und sonstigen Informationen zu orientieren. Zum einen existieren die Notenlinien, zum anderen die Notendarstellung in Textform am unteren Bildschirmrand. BLUE gibt hier den Tip am besten beides getrennt voneinander zu betrachten. Beim Eingeben von Notenwerten, ist es guenstiger sich am Notenfenster zu orientier@3%en, und man sollte sich auch darauf beschraenken, waehrend fuer die Eingabe etwaiger Commands und Infobytewerte die Textzeile zustaendig ist, und am besten orientiert man sich auch nur an ihr. Dies ist ein gutgemeinter Rat an alle, die durch die gegenlaeufigen Cursorbewegungen leicht die Uebersicht verlieren und daran verzweifeln. Eingegeben wird ein Wert grundsaetzlich in der aktuellen Stimme und an der augenblicklichen Noten- bzw. Textcursorposition. Die Cursorsteuerung und die NoA4Aten- bzw. Werteingabe ist dabei so geregelt, dass man sich ohne Betaetigung der Shift-Taste am Notenfenster und mit Betaetigung der Shift-Taste in der Notentextzeile orientieren sollte. Edit-Tastenbelegung ohne : --------------------------------- Cursor links/rechts --> Bewegt den Notencursor links/rechts. Cursor up/down --> Aendert die aktuelle Stimme up/down. --> Loescht die Note unter dem Notencursor und bewB5|egt diesen eine Note weiter. --> Loescht die Note vor dem Notencursor und bewegt diesen eine Note zurueck. --> Aendert den Soundeintrag der aktuellen Note zum aktuellen Soundeintrag gemaess Soundstatus um Dabei wird die Note mit dem eventuell neuen Sound gespielt und der Cursor weiterbewegt. Keyboardtaste --> SchreibC6/"t die gespielte Note zusammen mit dem aktuellen Soundeintrag an der Cursorposition ins Pattern und bewegt den Cursor weiter. Hat man den Edit Modus zusammen mit dem Patternplay Modus angewaehlt, so erfolgen die Eingaben ebenfalls genau an Position des Notencursors. Da dieser sich nun immer an der aktuellen Notenposition befindet, hat man die interessante Moeglichkeit in Echtzeit ueber die Tastatur Sequenzen einzuspielen bzw. ScD7deKhlagzeugpatterns zu erstellen. Edit-Tastenbelegung mit : -------------------------------- Cursor links/rechts --> Bewegt den Textcursor links/rechts. Cursor up/down --> Aendert die aktuelle Notenposition up/down. --> Loescht die Note bzw. den Eintrag unter dem Textcursor und bewegt diesen weiter. --> Loescht die Note bzw. den Eintrag vor dem Textcursor und beE8}0wegt diesen zurueck. --> Textcursor befindet sich ueber einer Note: Aendert den Soundeintrag dieser Note zum aktuellen Soundeintrag gemaess Soundstatus um Dabei wird die Note mit dem eventuell neuen Sound gespielt und der Cursor weiterbewegt. Textcursor befindet sich nicht ueber einer Note: F9:\Cs Der Textcursor wird weiterbewegt. Keyboardtaste --> Textcursor befindet sich ueber einer Note: Schreibt die gespielte Note zusammen mit dem aktuellen Soundeintrag an der Cursorposition ins Pattern und bewegt den Cursor weiter. Textcursur befindet sich nicht ueber einer Note: Schreibt den eingG:'_2egebenen Zahlenwert an der Textcursorposition ins Pattern und bewegt den Cursor weiter. Haelt man die Shift-Taste gedrueckt, spielt es fuer die Eingabe keine Rolle ob zusaetzlich zum Edit Modus der Patternplay Modus eingeschaltet ist. Cut,Copy und Paste: ------------------- Im BLUE-Soundtracker gibt es nun endlich auch die doch so unverzichtbaren Funktionen Cut,Copy und Paste. Um eine dieser Funktionen ausfuehren zu koeH;& ٍnnen, muss man sich im Edit Modus befinden, ohne dass gleichzeitig der Patternplay Modus gewaehlt ist. Es koennen immer nur Passagen einzelner Stimmen kopiert oder herausgeschnitten werden. Hierzu bewegt man zunaechst den Notencursor auf den Beginn des zu markierenden Abschnitts. --> Legt den Beginn des Markierungsabschnitts fest. Wenn man den Notencursor nun zum Ende des Abschnitts bewegt hat, gibt es drei Moeglichkeiten fortzufahren: --> Der markierte AI&ebschnitt wird herausgeschnitten und in den Copybuffer kopiert. --> Der markierte Abschnitt wird geloescht und in den Copybuffer kopiert. --> Der markierte Abschnitt wird einfach nur in den Copybuffer kopiert. Das Pattern selbst wird dabei nicht veraendert. Da intern nicht nur der markierte Abschnitt sondern jeweils die gesamte Notenzeile in den Copybuffer transferiert wird, kann man mit 4=G'}de Volume: ------------------ Mit Auto-Slide hat man die Moeglichkeit, Arpeggio oder Portamento und eine Lautstaerkenaenderung gleichzeitig vorzunehem. Das Infobyte hat hierbei die gleiche Bedeutung wie bei Slide Volume. Der Auto-Slide Mode bleibt solange gesetzt, bis als Infobyte ein Nullbyte geschrieben wird. Beispiel: E-2 CE02 - Auto-Slide Mode wird gesetzt. Lautstaerke wird abgesenkt um 2. --- 0203 - Portamento down um 3, Lautstaerke wird abgsenkt um 2. D-2 3203 - 5>+hPortamento down um 3, Lautstaerke wird auf Default-Wert von Sound #3 gesetzt, Lautstaerke wird abgesenkt um 2. --- 0203 Portamento down um 3, Lautstaerke wird abgesenkt um 2. G-1 1000 - Auto-Slide Mode wird geloescht. Lautstaerke wird auf Default- Wert von Sound #1 gesetzt. Set/Slide Tempo: ---------------- Mit Set Tempo werden Tempowechsel waehrend des Abspielvorgangs veranlasst. Hierzu wird die gewuenschte Geschwindigkeit einfach im Zaehlmass 6?6 'Beats per Minute' ins Infobyte geschrieben. Der BLUE-Soundtracker akzeptiert explizite Tempoangaben zwischen 30 und 210. Um einfacher z.B. ein Riterdando realisieren zu koennen, sind die Werte ausserhalb dieser Grenzen dazu vorgesehen, gleitende Tempowechsel zu programmieren. Schreibt man einen Wert zwischen 1 und 29 ins Infobyte, wird das Tempo um den angegebenen Wert erhoeht, bei Angaben zwischen 227 und 255, um '256 minus Infobytewert' vermindert. Die Aenderung erfolgt also jewei7@\s,ls durch Addition des Infobytes, wobei der darin enthaltene Wert als vorzeichenbehaftete Zahl in Zweierkomplementdarstellung interpretiert wird. Beispiel: D-3 5F57 - Setzt Tempo auf 87 Beats per Minute. --- 0000 E-3 5F03 - Erhoehung des Tempos um 3 BpM auf 90 BpM. --- 0000 F-3 5FFE - Verminderung des Tempos um 2 BpM auf 88 BpM. --- 0FFE - Verminderung des Tempos um 2 BpM auf 86 BpM. --- 0FFE - Weitere Tempoverminderung um 2 BPM auf 84 BpM. Ein Tempowechsel ist8A a immer global wirksam, d.h. egal in welcher Stimme er veranlasst wird, er bezieht sich immer auf alle vier Stimmen gemeinsam. Aus diesem Grund wird es wohl kaum vorkommen, dass man, um einen Tempowechsel vornehmen zu koennen, auf einen anderen Command verzichten muss. Editiern mit der Maus: ---------------------- Eine Eingabe von Notenwerten ins Pattern mit Hilfe der Maus ist immer dann moeglich, wenn sich der BLUE-Soundtracker nicht im Songplay Modus befindet. Hierzu bewegt man de9B*n Mauszeiger ins Notenfeld ueber die gewuenschte Position. Durch Druecken der linken Maustaste kann nun der durch den Mauszeiger dar- gestellte Notewert ins Pattern geschrieben werden. Ist an dieser Stelle bereits ein Noteneintrag vorhanden, wird dieser zunaechst geloescht und erst das zweite Betaetigen der Maustaste veranlasst einen Neueintrag. Zusammen mit dem Notenwert wird im Regelfall auch die aktuelle Soundnummer im Pattern vermerkt. Will man dies verhindern, muss man einfach d:CDas Soundgadget des aktuellen Sounds erneut oder die Soundstatusanzeige, die sich rechts von der Patternnummernanzeige befindet, anklicken. Dies hat einen alternierenden Wechsel der Editiereigenschaften zur Folge. Hat diese Anzeige und damit auch die vom Mauszeiger jeweils dargestellte Note die Farbe des aktuellen Sounds, wird die Soundnummer jedesmal mit ins Pattern eingetragen. Sind Anzeige und Note schwarz, so erfolgt ein solcher Eintrag nicht. Spielen von Noten mit der Maus: ---;D ʟ---------------------------- Waehrend ein Notenwert ins Pattern geschrieben wird, ist dieser jeweils auch akustisch mit dem momentan eingestellten Sound zu vernehmen. Moechte man mit der Maus einzelne Notenwerte spielen, ohne diese im Pattern einzutragen, kann man das mit der rechten Maustaste tun. Um nun staendig die von dem Mauszeiger dargestellten Notenwerte zu hoeren, haelt man einfach die rechte Maustaste gedrueckt. Betaetigt man die rechte Maustaste und haelt diese nieder waehr<Ex*7end die vom Mauszeiger dargestellte Note sich ueber dem Notencursor befindet, kann man nun durch Bewegen der Maus, die bereits im Pattern eingetragenen Noten aller vier Stimmen abspielen. Dies soll dazu dienen, sich einzelne Sequenzen, oder auch nur Akkorde, selektiv anhoeren zu koennen, ohne dafuer einen Playmode einschalten zu muessen. Tastatur als Keyboard: ---------------------- Ueber die gesamte Tastatur ist eine drei Oktaven umfassende Klaviatur verteilt, so dass die gesamte =F)zReichweite einer Stimme jeweils voll ausgeschoepft werden kann, ohne die Notenbelegung der Tasten zu aendern. Falls man sich im Edit Modus befindet, ist es mit den Tasten moeglich, die entsprechenden Notenwerte direkt ins Pattern einzugeben (siehe naechster Abschnitt). Editieren mit der Tastatur: --------------------------- Hierzu sind zunaechst einige grundlegenden Dinge zu bemerken. Moechte man mit Hilfe der Tastatur irgendwelche Veraenderungen im Pattern vornehmen, so ist dies g>1&$rundsaetzlich nur moeglich, wenn man sich im sogenannten Edit Modus befindet. Diese Einschraenkung besteht deshalb, weil man die Moeglichkeit haben soll, die Tastatur sowohl als reines Play-Keyboard als auch, wie dies im Edit Modus der Fall ist, als Eingabegeraet fuer Patterndaten verwenden zu koennen. In den Edit Modus gelangt man u.a. durch Anklicken von EDIT. Wie bei der Mauseingabe auch, ist es waehrend dem Songplay Modus vollkommen unmoeglich, irgendwelche Veraenderungen durchzu)H}_te enthaelt naehere Informationen zu den einzelnen Commands. Die genaue Bedeutung ist im folgenden bei jedem Command erklaert. Beschreibung der Commands: -------------------------- Arpeggio: --------- Arpeggio hat man immer dann gewaehlt, wenn das Infobyte ungleich Null und kein anderer Command selektiert ist. Mit Arpeggio hat man die Moeglichkeit Akkorde zu simulieren. Dies erreicht Soundtracker durch schnelles wechseln der Tonhoehe waehrend dem Abspielen einer Note, wobei jeweil*IG6s 5 durch das Infobyte genauer bestimmte Tonhoehenwechsel waehrend einer Notenlaenge stattfinden. Eine Note wird also in insgesamt 6 Schritten gespielt: 1 - die Note selbst wird gespielt 2 - die im 1.Nibble des Infobytes angegebene Halbtonanzahl wird addiert 3 - die im 2.Nibble des Infobytes angegebene Halbtonanzahl wird addiert 4 - wie 1 5 - wie 2 6 - wie 3 Beispiel: Man moechte einen Akkord C-1/E-1/G-1 simulieren. Dann muesste in etwa folgendes in das Pattern geschrieben werden+Ja: C-1 2047 --- 0047 --- 0047 --- 0047 --- 0000 Es wird also die Note C-1 mit dem Sound #2 angeschlagen. Danach erfolgt jeweils 5 mal pro Notenlaenge ein Wechsel zwischen C-1, E-1 (C-1 plus 4 Halbtoenen) und G-1 (C-1 plus 7 Halbtoenen). Dies geschieht hier ueber die Dauer von 4 Notenlaengen, bis man beispielsweise damit rechnet, dass das Sample von Sound #2 ausgeklungen ist. Portamento: ----------- Der Portamento Effekt (gleitender Tonhoehenwechsel) wird erreicht, ,K .Dindem bei jedem der Abspielschritte, beginnend bei Schritt 2, jeweils der im Infobyte angegebene Wert zu der Periode (diese bestimmt ja bekanntlich die Tonhoehe) dieser Note addiert bzw. von ihr subtrahiert wird. Beispiel: F#2 A108 --- 0108 --- 0108 --- 0000 Hierbei wird die Note F#2 mit Sound #10 gespielt, und die Periode bei jedem Abspielschritt, ueber die Dauer von 3 Notenlaengen, um 8 erniedrigt, was wiederum die Tonhoehe dementsprechend anhebt. Modulation: ------LZ------ Eine Stimme kann auch dazu verwendet werden, eine andere Stimme zu modulieren. Hiermit ist gemeint, dass sowohl die Lautstaerke als auch die Periode (und damit natuerlich die Tonhoehe) der modulierten Stimme keine statischen Werte mehr darstellen, sondern direkt durch die Sampledaten der modulierenden Stimme dynamisch, waehrend des Abspielvorgangs, beeinflusst werden. Hiermit koennen gezielt Effekte wie Vibrato oder Tremolo verwirklicht werden. Eine Stimme kann jeweils nur zur.MR Modulation der naechst hoeheren Stimme verwendet werden, d.h. Stimme #1 moduliert Stimme #2, Stimme #2 moduliert Stimme #3 etc. Die modulierende Stimme selbst ist dabei stummgeschaltet. Stimme #4 wird also, wenn man sie zur Modulation verwenden will, nur stumm- geschaltet, da es mit ihr nicht moeglich ist, eine andere Stimme zu modulieren. Beispiele: Man verwendet Stimme #1 um die Lautstaerke von Stimme #2 zu modulieren. Die Lautstaerke von Stimme #2 ist nun nicht mehr durch den b/N?[ei ihr eingestellten Lautstaerkenwert bestimmt, sondern direkt durch die Sampledaten von Stimme #1. Sehen diese Daten etwa so aus: $0030,$0032,$0034,..., so ist der Lautstaerken- verlauf bei Stimme #2 auch $0030,$0032,$0034,... Auf diese Weise erreicht man zum Beispiel einen Vibratoeffekt in Stimme #2. Die Geschwindigkeit dieses Vibratos ist dabei durch die Periode von Stimme #1 festgelegt. Moduliert Stimme #1 nun die Periode von Stimme #2, werden die Sampledaten von Stimme #1 in gle0O icher Weise dazu verwendet, den Periodewert zu betimmen. Wird mit Stimme #1 nun gleichzeitig Lautstaerke und Periode moduliert, werden die Sampledaten jeweils alternierend dazu verwendet, die Lautstaerke bzw. Periode festzulegen, d.h. das erste Datenwort von Sample bestimmt die Laut- staerke, das zweite die Periode, das dritte wiederum die Lautstaerke usw. Set Volume: ----------- Man hat hiermit die Moeglichkeit, die Lautstaerke der Instrumente waehrend des Abspielens eines Songs d1Pen Gegebenheiten anzupassen bzw. einzelne Noten zu betonen. Das Infobyte gibt jeweils den neuen Wert fuer die Lautstaerke an. Dieser Wert hat Gueltigkeit bis in dieser Stimme erneut Soundparamter bereitge- stellt werden, d.h. bis wieder eine Soundnummer im Pattern angegeben wird. Beispiel: C-2 1C22 - Hier wird die Lautstaerke auf $22 gesetzt und Sound #1 --- 0000 dazu verwendet um die Note C-2 mit diese Lautstaerke --- 0000 zu spielen. E-2 0000 - Die Note E-2 wird m2QvMit Sound #1 und Lautstaerke $22 gespielt. --- 0000 --- 0000 An dieser Stelle werden die Soundparameter von Sound #1 neu G-2 1000 - bereitgestellt. Anschliessend wird die Note G-2 mit Sound #1 --- 0000 und dort angegebenen Lautstaerken Grundeinstellung gespielt. Slide Volume: ------------- Neben der expliziten Festlegung eines Lautstaerkenwertes ist es moeglich, diesen durch Angabe eines Offsets gleitend zu veraendern. Die Lautstaerke wird hiebei jeweils einmal pro N3<;/ote, um den im 1. Nibble des Infobytes ange- gebenen Wert, angehoben, bzw. um den Wert im 2. Nibble, abgesenkt. Beispiele: A#2 4D20 - Lautstaerke wird um 2 erhoeht. --- 0D20 - Lautstaerke wird noch einmal um 2 erhoeht. F#2 4000 - Lautstaerke wird wieder auf Default-Wert von Sound #4 gesetzt. D-3 0D04 - Lautstaerke wird um 4 abgesenkt. --- 0D04 - Erneutes Absenken der Lautstaerke um 4. E-3 C000 - Lautstaerke wird auf Default-Wert von Sound #12 gesetzt. Auto-SliSOxF Errors ab und zu sein, dass ein unsichtbarer Requester auftaucht. Wenn sich also nichts mehr ruehrt, klickt am besten ein paar mal da hin, wo Ihr das 'Cancel' vermutet. In den meisten Faellen hilft das. Anwahl der Gadgets: ------------------- Bei den vier mit '<<' gekennzeichneten Lade- bzw. Speicherfunktionen USE PRESET, LOAD SONG, SAVE SONG und LOAD SAMPLE wartet Soundtracker auf eine zusaetzliche Reaktion durch Betaetigung der linken, wonach die Funktion ausgefuehrt wird, bzw. T$Oder rechten Maustaste, was einem 'Cancel' gleichkommt. Bei den Plus/Minus-Gadgets ist es in einigen Faellen moeglich, den Zaehlvorgang durch gleichzeitiges Druecken der rechten Maustaste zu beschleunigen. Abspielen der Pattern und des Songs: ------------------------------------ Der BLUE-Soundtracker kann sich in zwei verschiedenen Zustaenden befinden: Durch Anwaehlen von PLAY gelangt man in den Songplay Modus. Hierbei wird die komplette Komposition, beginnend bei der aktuell einges U $tellten POSITION, abgespielt. Ist eine POSITIONnummer ausserhalb der mit LENGTH bestimmten Reichweite eingestellt, so startet Soundtracker den Song bei POSTION 0. Im Patternplay Modus, den man durch Anklicken von PATTERN startet, wird, wie der Name schon sagt, jeweils nur das aktuell dargestellte Pattern gespielt. Hierbei ist es moeglich, auch waehrend des Abspielens, das aktuelle Pattern durch Eingabe einer Nummer zwischen 0 und 63 zu bestimmen. Zum Eingeben einfach die Patternnum!V|>mernanzeige anklicken. Mit STOP wird der Abspielvorgang jeweils beendet. Veraendern des Tempos: ---------------------- Das eingestellte Tempo bestimmt die Abspielgeschwindigkeit der Notendaten. Beim Speichervorgang wird die aktuelle Tempo-Einstellung als Default-Tempo, in die Songdaten geschrieben. Der bei Tempo eingestellte Wert entspricht exakt dem Zaehlmass 'Beats per Minute' (Ihr koennt gerne nachmessen). Stummschaltung einzelner Stimmen: --------------------------------- "W~Sowohl im Song als auch im Pattern Modus ist es moeglich, einzelne Stimmen stummzuschalten bzw. selektiert anzuhoeren. Fuer jede Stimme existiert hierzu eine Anzeige oberhalb des Notensystems. Durch deren Anklicken wird der Zustand einer Stimme jeweils invertiert. Hierbei gilt: Anzeige gruen --> Stimme ist zu hoeren Anzeige rot --> Stimme ist stummgeschaltet Notendarstellung: ----------------- Das aktuelle Pattern wird jeweils komplett in dem Notensystem dargestellt. Die Nota#Xbtion entspricht hiebei der wohl gaengisten, eines Violinschluessels. Dargestellt wird aber nicht Tonartgerecht mit 'b' und '#' (das waere des Guten wohl auch etwas zu viel gewesen), sondern der BLUE-Soundtracker kennt nur das '#', d.h. die Erhoehung um einen Halbton. Aus Platzgruenden wird das '#' jeweils durch einen vertikalen Strich vor der Note symbolisiert. Da sich in einem Notensystem jeweils nur zwei Oktaven gut darstellen lassen, der Tonumfang des Soundtrackers aber drei Okta$Yiven betraegt, war es notwendig, verstaendliche Symbole fuer die Oktavtransponierung einzufuehren. Hierbei gilt folgendes: Rote Punkte ueber einer Note --> Note eigentlich eine Oktave hoeher Blaue Punkte ueber einer Note --> Note eigentlich eine Oktave tiefer Die Farbe einer Note gibt an, welcher der 15 Sounds fuer das Abspielen dieser Note verwendet wird. Ist die Note schwarz, ist der in dieser Stimme zuletzt gespielte Sound zu hoeren. Ebenfalls im Notensystem dargestellt wird%Z/ der jeweils an dieser Position im Pattern stehende Command. Diese beiden und noch eine zusaetzliche Information kann ebenfalls der Notendarstellung in Textform am unteren Bildschirmrand entnommen werden. Hier werden die Bezeichnungen und Informationen zu den Noten aller vier Stimmen an der aktuellen Notenposition angegeben. Diese Darstellung hat folgendes Format: Stimme1 Stimme2 Stimme3 Stimme4 ----------------------------------------------&[$_----- xx C#1 1C34 xxx xxxx xxx xxxx xxx xxxx --------------------------------------------------- / | |||| Notenposition / |||Infobyte 2.Nibble Notenbezeichnung ||Infobyte 1.Nibble |Command Soundnummer Notenposition: Gibt die Position der dargestellten Noten im Pattern an (0..63). Notenbezeichnung: Dies ist einfach die Bezeichnung der an dieser Stelle zu spielenden Note. Sou'\ pzndnummer: Beim Abspielvorgang werden vor dem Spielen dieser Note die Daten und Paramter des angegebenen Sounds bereitgestellt. Steht hier eine Null, entfaellt diese Bereitstellung und der zuletzt in dieser Stimme gespielte Sound ist zu hoeren. Command: Hiermit wird dem Soundtracker mitgeteilt, welche spezielle Funktion er waehrend dem Spielen dieser Note auszufuehren hat. Folgende Commands stehen zur Verfuegung: 0 - Arpeggio 1 - Portamento up 2 - Portamento down 3 - Modulate Vo(Glume / Arpeggio 4 - Modulate Period / Arpeggio 5 - Modulate Volume + Period / Arpeggio 6 - Modulate Volume / Portamento up 7 - Modulate Period / Portamento up 8 - Modulate Volume + Period / Portamento up 9 - Modulate Volume / Portamento down A - Modulate Period / Portamento down B - Modulate Volume + Period / Portamento down C - Set Volume D - Slide Volume E - Auto-Slide Volume F - Set/Slide Tempo Infobyte: Das Infoby^e hat hier die Wirkung von 'Cancel'. Der BLUE-Soundtracker durchsucht daraufhin alle eingelegten Disketten nach einer Directory Samples und nach einem File mit dem angegebenen Namen. Wenn ein solches gefunden wird, wird dieses geladen. 2. Laden ueber die SAMPLES Directory: Mit Anwaehlen von SAMPLES wird zunaechst geprueft, ob die Diskette, von der zuletzt die Directory 'Samples' geladen wurde, sich noch in einem Laufwerk befindet und wenn dem so ist, deren Director_ y angezeigt. Ist dies jedoch nicht der Fall, sucht Soundtracker erst in dem Laufwerk nach 'Samples', von dem diese Directory zuletzt geladen wurde (bzw. in Df1: falls dies der erste Ladevorgang ist), dann im anderen Laufwerk (bzw. DF0:) und zeigt die eventuell gefundene Directory an. Mit Anwaehlen von Diskname und der Drivenummer kann man zum anderen Laufwerk wechseln. Klickt man nun einen Samplenamen an, wird automatisch die PRESETLISTE nach einem Eintrag des g`nleichen Namens durchsucht und wenn dieser gefunden wird, erfolgt ein USE PRESET. Ist ein solcher Eintrag nicht vorhanden, so wird LENGTH auf die tatsaechlichen Samplelaenge gesetzt, VOLUME auf 64, REPADD auf 0 und REPLEN auf 1. Durch nochmaliges Anklicken bzw. Anwaehlen von LOAD wird das Sample dann geladen. Moechte man von der Directory-Anzeige zum normalen Arbeitsbildschirm zurueckwechseln, so klickt man einfach einmal in die obere Haelfte des Bildschirms. Wird a5ein Sample nicht gefunden, so meldet sich der BLUE-Soundtracker grund- saetzlich mit der Meldung "Can't Find Sample" und dem Samplenamen. Man hat hier zwei Moeglichkeiten zu reagieren. Entweder man legt nun eine andere Diskette ein und veranlasst durch Druecken der linken Maustaste, dass das Sample erneut gesucht wird oder man drueckt die rechte Maustaste und faehrt so im normalen Programmablauf fort. Laden eines Songs: ------------------ Ein Song, den man laden moechte, muss sichbL auf jeden Fall in einer Directory mit dem Namen 'Songs' befinden. Man hat nun wiederum zwei Moeglichkeiten: 1.Laden mit LOAD SONG: Waehlt man LOAD SONG an, sucht der BLUE-Soundtracker zunaechst in der zuletzt geladenen Directory 'Songs' (bzw. Df0:Songs) nach dem File mit dem angegebenen Namen. Wird dies hier nicht gefunden oder ist die Diskette mit der aktuellen Directory nicht eingelegt, werden saemtliche in den Laufwerken befindliche Disketten nach einer Directory 'SoncͿVgs' und dem entsprechenden File durchsucht. Ist die Suche erfolgreich wird das File geladen. 2.Laden ueber die SONGS Directory: Auf die gleiche Art und Weise, wie dies auch bei SAMPLES geschieht, wird nach Anwaehlen von SONGS versucht, eine Directory 'Songs' zu laden und darzustellen. Beim ersten Ladevorgang wird hier allerdings zunaechst in DF0: gesucht. Der Ladevorgang kann nun entweder durch Doppelklick oder Anwaehlen von LOAD gestartet werden. Zunaechst laedt Soundtdsdracker den Song selbst und versucht anschliessend, die im Song angegebenen Samples zu laden. Dabei wird die Information, von welcher Diskette ein Sample zu laden ist, jeweils aus der PRESETLISTE geholt. Ist diese Information dort nicht zu finden oder 'Cancelt' man die gegebene Aufforderung zum Einlegen einer bestimmten Diskette durch Druecken der rechten Maustaste, werden saemtliche in den Laufwerken befindliche Disketten nach dem Sample durchsucht. Loeschen des Arbeitsspeichers: -e6<----------------------------- Da der BLUE-Soundtracker zu Beginn jedes Ladevorgangs den kompletten Arbeitspeicher initialisiert, loescht man diesen am einfachsten, indem man versucht, einen micht existierenden Song zu laden. Die vorhandenen Sampledaten werden dabei nicht veraendert. Speichern eines Songs: ---------------------- Beim Speichern eines Songs legt Soundtracker zunaechst den Songheader mit den Informationen ueber die verwendeten Samples und daran anschliessend die Notendf'aten der Patterns, beginnend bei Pattern 0, in aufsteigender Reihenfolge, bis einschliesslich der hoechsten benutzten Patternnummer auf Diskette ab. Deshalb ist es ratsam, die Pattern jeweils lueckenlos in aufsteigender Reihenfolge zu benutzten. 1.Speichern mit SAVE SONG: Hierbei wird versucht, den Song unter dem angegebenen Namen im aktuellen Directory (zu Beginn df0:songs) abzulegen. Schlaegt dieser Versuch fehl, wird der Speichervorgang abgebrochen. 2.Speichern ueber die Sg)/ONGS Directory: Hier gilt das gleiche wie beim Ladevorgang. Abgespeichert wird durch Anwaehlen von SAVE. Ein etwa vorhandenes File gleichen Namens wird beim Speichervorgang jeweils ueberschrieben. Loeschen eines Songs: --------------------- Loeschen kann man einen Song mit Hilfe von DELETE ueber die SONGS Directory. Allgemeines zu den Diskettenoperationen: ---------------------------------------- Der BLUE-Soundtracker verwendet fuer die Diskettenzugriffe das AmigaDos. GleicRegѩhzeitig sind aber etwa auftauchende Dos-Requester, wegen der Art und Weise des Bildschirmaufbaus, nicht sichtbar. In den meisten Faellen wurden die Dos-Requester zwar abgefangen, dies ist jedoch nicht in allen Faellen geschehen. So ist es zum Beispiel nicht zu empfehlen, die Diskette waehrend einer in Gang befindlichen Lade- bzw. Schreibtaetigkeit aus dem Laufwerk zu nehmen. (Aber wer macht sowas schon!) Weiterhin kann es bei fehlerhaften Disketten und deshalb auftretenden Read/Writei g--- Jeder mit dem Soundtracker erstellte Song ist aus maximal 64 verschiedenen sogenannten PATTERNs zusammengesetzt. Hierbei ist ein PATTERN jeweils eine Einheit von 64 Notenpositionen. Ein Song besteht nun aus insgesamt 128 POSITIONs, wovon jede mit einer Patternnummer belegt werden kann. LENGTH spezifiziert die Anzahl der POSITIONs, die bei einem Song jeweils nacheinander abgespielt werden, bevor wieder bei POSITION 0 begonnen wird. Mit den Notendaten eines Songs zusammen werden i j{gmmer auch die Namen und Parameter der maximal 15 verschiedenen verwendeten Samples sowie eine Tempo-Grundeinstellung und der Songname selbst abgespeichert: $000 (000) 20 Bytes Name des Songs $014 (020) 20 Bytes Name von Sample #1 $028 (040) 1 Wort Nummer der Speicher-Disk ST-xx von Sample #1 $02a (042) 1 Wort Wortlaenge des Samples #1 $02c (044) 1 Wort Volume-Grundeinstellung des Samples #1 $02e (046) 1 Wort Repeat Additive des ks Samples #1 $030 (048) 1 Wort Repeat Laenge des Samples #1 . . 14 * 30 Bytes fuer die 14 weiteren Samples . $1d6 (470) 1 Byte Anzahl der Patterns fuer diesen Song $1d7 (471) 1 Byte Tempo-Grundeinstellung des Songs $1d8 (472) 128 Bytes Patternnummern der Song-Positionen $258 (600) 1024 Bytes Notendaten pro Pattern Allgemeines zu den Samples: --------------------------- Samples fuer den BLUE-Soundtracker duerfen nun bis zu 655 lkm35 Worte lang sein. Laengere Samples koennen von der Amiga-Audio-Hardware nicht an einem Stueck verarbeitet werden. Da sich alle Sampledaten in den 512K Chip-Ram befinden muessen, ist fuer die Sampledaten insgesamt ebenfalls eine obere Grenze gegeben. Moechte man selbst einen Sound erstellen, so sampled man am besten ein 'F' in der gewuenschten Oktave mit einer Samplingrate von 11200. So erhaelt man eine gute Qualitaet und die richtige Stimmung des Instruments ist gewaehrleistet. Das mhS6 Sample wird dann einfach als Datenfile auf einer ST-xx Diskette in der Directory 'Samples' abgespeichert, um es vom Soundtracker aus benutzen zu koennen. Zu jedem Sample koennen folgende vier Parameter eingestellt werden: LENGTH: Laenge des Samples in Worten (0..65535) VOLUME: Lautstaerken-Grundeinstellung des Samples (0..64) REPEAT: Es ist moeglich das verwendete Sample zu loopen. (0..32767) REPEAT gibt den Offset des Repeat-Start n\es an. Bei nicht geloopten Sounds: REPEAT = 0. REPLEN: Anzahl der Worte die jeweils, beginnend beim (0..65535) Repeat-Start, abgetastet werden. Bei nicht geloopten Sounds: REPLEN = 1. Um nicht bei jedem neu geladenen Sample diese Parameter einstellen zu muessen, existiert eine sogenannte PRESETLISTE. Hierin koennen zu jedem Samplenamen jeweils die vier zugehoerige Parameterwerte abgespeichert werden. Des weiteren enthaelt die PRESETLISTE die ouQInformation, auf welcher ST-xx Diskette das Sample beim Laden zu suchen ist. Editieren der PRESETLISTE: -------------------------- Um groesstmoegliche Flexibilitaet zu erreichen, wird die PRESETLISTE bei jedem Startvorgang des BLUE-Soundtrackers in Form des Files 'st.presets' aus dem Verzeichnis 'BLUE' der Startdiskette neu geladen. Im selben Verzeichnis findet Ihr die PRESETLISTE auch als Ascii-Text-File sowie das Programm 'makepreset' welches diese Ascii-Liste in das vom SoundtrpXacker lesbare File 'st.presets' umwandelt. Hierzu einfach das Ascii-File als Argument an 'makepreset' uebergeben. Beim Editieren der PRESETLISTE sind zwei Dinge zu beachten: 1. Haltet Euch mit Neueintraegen an die Form bereits vorhandener Eintraege und verwendet insbesondere keine Tabs anstelle von Spaces! 2. Das Programm 'makepreset' interpretiert ein '-' gefolgt von einem als Anfangssignal und ein gefolgt von einem '-' als Endesignal fuer den Uebersetzunqgsvorgang. Achtet also darauf, dass die Presetdaten von diesen Zeichenkombinationen eingeschlossen sind. Wenn Ihr diese beiden Punkte beachtet, kann eigentlich nichts schiefgehen! Mit diesem Konzept habt Ihr nun beispielsweise die Moeglichkeit, Euch eine Euren Beduerfnissen entsprechende Sample-Disk zusammenzustellen und die PRESETLISTE dementsprechend abzuaendern, etc. Laden eines Samples: -------------------- Beim Laden eines Samples geht der BLUE-Soundtracker folgendermassr'}en vor: Geladen wird grundsaetzlich das Sample mit dem im zugehoerigen Feld angegebenen Namen. Dieser kann natuerlich auch direkt eingegeben werden. Geladen wird nun jeweils die bei LENGTH angegebene Anzahl von Worten, die im Regelfall natuerlich mit der tatsaechlichen Laenge des Samples uebereinstimmen sollte. Um dies zu erreichen und die Soundparameter nicht umstaendlich einzustellen zu muessen, hat man zwei Moeglichkeiten: 1. Laden ueber die PRESETLISTE: Man sucht in der Prese]̾tliste, bis das gewuenschte Sample gefunden ist. Durch Anwaehlen von USE PRESET werden die in der Liste angegebenen Parameterwerte und der Presetname nun zu den aktuellen Soundparametern bzw. zum aktuellen Soundnamen gemacht. Nach dem nun die Parameterwerte eingestellt sind, kann das Sample mit LOAD SAMPLE geladen werden. Ist die in der PRESETLISTE angegebene Diskette nicht im Laufwerk, werdet Ihr auf- gefordert diese einzulegen. Das Druecken der rechten Maustastt벬: Don't play with the power-led because some A500 and A2000 owners will not be happy when they hear your song. Speed: This function allows changing the speed during play. ------ You can only enter a speed from $01 to $0F. Setting the info byte to zero doesn't effect anything. The normal speed is 6. Example: D-2 4F04 - Set speed to 4 --- 0000 E-1 0F00 - Nothing happens to speed. --- 0FC3 - Set speed to 3 G-2 2F06 - Set uDnormal speed For your convenience the speed will now be set to 6 everytime you load a song/module or clear the song. The Playroutine. ---------------- The Playroutine on the Soundtracker disk is for using your music in demos, intros, games etc. It was written using the Seka-assembler and the source of the routine can directly be incorporated in your demo/intro source. When you are finished writing your music using D.O.C-Soundtracker, save it to Disk. Use the funcvtion 'SAVE MODULE'. You will find in the 'MODULES'-DIR a file, which contains all songdata and samples. Load with SEKA the source of the playroutine and enter the size of saved module at the label 'mt_data'. Assemble. Now load the saved module to 'mt_data'. How to play a song: ------------------- At the beginning of your program, call the 'mt_init' routine. Each vertical blank jump to the 'mt_music' routine. To stop the song jump to the 'mt_end' routine. -----------wz>---------------------------------------------------------------- ADDITIONAL INFORMATION: - This Soundtracker-Version consists of ONE disk which should include the following files: - Soundtracker (V2.3) - Songplayer (V1.4) - SongPrinter (V1.1d) - PresetEd,PED!,PED!! (V1.1 by The BallCrackers) - PresetEd + - PLST (this is my (MnemoTroN) PLST and please do not ask for the samples because that are 13 disks! - MuzakRipper (by NorthStar) - Soundtra?cker Instruments Ripper (by Beastie Boys) - 'mod.echoing' and 'mod.my way to the stars' in the module-directory (my favourites!) - all DOC files in the 'Text'-Directory - the 31 Instruments Replay-Routine (also in 'Text') ---------------------------------------------------------------------------- he beginning of your program, call the 'mt_init' routine. Each vertical blank jump to the 'mt_music' routine. To stop the song jump to the 'mt_end' routine. -----------hre Informationen hierzu findet Ihr im Scrolltext des Intros. Noch eine Bitte: In Anbetracht der Kuerze der Entwicklungszeit war es BLUE nicht moeglich, die vorliegende Version des BLUE-Soundtrackers komplett durchzutesten. Falls Ihr bei ausgiebiger Nutzung des Programms irgendetwas entdeckt, was nicht so ist, wie Ihr glaubt, dass es sein sollte, teilt dies BLUE mit. BLUE wird dann eventuell ein Update veroeffentlichen. Aufbau eines Soundtracker-Songs: -----------------------------zSungenannt bleiben sollen. BLUE's Dank und besonderer Gruss geht an: The Exterminator, Il Scuro, Jungle Command und D.O.C. Doch was am Anfang versaeumt wurde ist nicht so schnell wieder gutzumachen. Die Grundlage zum BLUE-Soundtracker lieferte DOC mit dem Soundtracker III. Als BLUE diesen decompressed und mit speziellen Mitteln in leserlichen Sourcecode zurueckgewandelt hatte, war es dann soweit: Die schlimmsten Befuerchtungen bestaetigten sich! Ein zum Himmel schreiender Programmie{r< rstil! Hervorgerufen entweder durch Unwissenheit oder durch Dummheit, was BLUE dazu veranlasst hat, den Namen des Ursprungsautors K.O. - in dessen eigenem Interesse! - an dieser Stelle nicht bekanntzugeben. Basierend auf diesem Code hat BLUE nun versucht, mit dem geringstmoeglichen Aufwand (3 1/2 Wochen) das Bestmoegliche herauszuholen. Wer die vorliegende Version mit der urspruenglichen vergleicht, wird erkennen, dass hierbei kaum etwas, um nicht zu sagen fast gar nichts, unveraen|3$dert geblieben ist. Das einzige was weitgehend unveraendert blieb, ist die Playroutine und die obere Haelfte der Arbeitsoberflaeche, was BLUE schliesslich dazu veranlasst hat, die urspruengliche Namensgebung 'Soundtracker' beizubehalten. Vollkommen neu dagegen ist die Directoryfunktion, die Notendarstellung, sowie saemtliche Eingabe- und Editierroutinen. Da dies alles hoffentlich das Erstellen eines Songs unterstuetzt und auch vereinfacht, hofft BLUE in Zukunft von noch mehr Leuten }noch bessere Kompositionen zu hoeren. Die Soundqualitaet des Soundtrackers bietet hierfuer auf jeden Fall die besten Vorraussetzungen. Nun mal angenommen, Ihr habt mit dem BLUE-Soundtracker das Eurer Meinung nach absolute Lied komponiert. Dann ... Ja. Was dann ? oder Angenommen, Euch gefaellt der BLUE-Soundtracker einfach, er hat Euch schon gute Dienste geleistet und Ihr verspuert vielleicht sogar einen inneren Drang, dem zu danken, der ihn geschrieben hat. Dann ... Ja. Was dann x˙J? oder Angenommen, Ihr wollt einfach nur so mit BLUE in Kontakt treten. Dann ... Ja. Dann schreibt doch einfach an: PLK 99760 C 6100 Darmstadt West-Germany Kontakte mit Niveau sind jederzeit erwuenscht! Die besten Songs werden jeweils in das aktuelle BLUE MUSIC ALBUM aufgenommen! Dieses bekommt jeder, der einen Song einsendet und seiner Diskette ausreichend Rueckporto beilegt, bei Neuerscheinung zugesandt. Weite v,All instruments are listed in the preset-list. The volume is always 64, but you can change it to each value between 0 and 64. To change the other values of each instrument you have to load the preset-editor or use the gadgets in the program (this is only for small changes. use the preset-ed otherwise!). With the PresetEd you can change the whole preset-list. TIP improved the preset-editor: some values (Length, Repeat and RepLen) have to be entered in hexadec9כֿimal !!! Now you can use samples up to $8000 (=32768) bytes !!!! (Press right mouse-button to quit). Unknown corrected the preset-editor: It got a nice bug ! (Not TIP's fault) Example: You've an instrument called 'HeavySynth' in your preset-list, now you want to INSERT an instrument with the name 'Heavy' in it. The preset-editor searches for the word 'HEAVY' in the list, find the name 'HEAVYsynth' and DELETES it to insert the name 'Heavy' ! Ӂ`Of course Unknown discoverd and removed this bug, too. Notes: ------ C#1 0 3 C 2 3 / / | \| / / | Info / / Command / Inst# Note to be played. Note: This is simply the note that is played with that particular ----- instrument. Inst#: This is the number of the instrument that is used to play that ------ note. When the instrument number is zero, the last szhelected instrument will be used. Command: This number tells Soundtracker what special functions shall be -------- performed while playing the note. These functions are as follows: 0 - Normal play or arpeggio. 1 - Portamento up. 2 - Portamento down. A - Volume slide. B - Position jump. C - Set volume. D - Pattern break. E - Set filter on/off. F - Set speed. Info: This byte contains the additional information for the comxmands. ----- Arpeggio: Arpeggio is used for simulating accords. This is done by rapidly --------- changing the notes while playing an instrument. Arepggios are selected whenever the info byte has a non-zero value and no other command is selected. When arpeggios are used, Soundtracker looks five times during the play of one note, at the information contained in the info byte. Each nibble (4 bits) in this byte<|S defines how many notes Soundtracker must add to the the note currently played. In each of the five passes Soundtracker does the following with the information in the info byte: 0 - Play the current note (immediately). 1 - Add the first nibble to the current note. 2 - Add the second nibble to the current note. 3 - Play the current note. 4 - Add the first nibble to the current note. w 5 - Add the second nibble to the current note. Portamento: Portamento is used for 'sliding' the frequency of the sample. ----------- If portamento is in use, the information contained in the the info byte will be added to (or subtracted from) the period of the note playing in each of the five passes. Example: D#2 3208 Slides down $08 --- 0208 Slides down $08 --- 0108 Slides up $08 --- 0210 S='lides down $10 (=16) etc. Volume slide: This function uses the same parameters as Portamento except ------------- for that it changes the volume. Position jump: -------------- The position jump command will do the same like the pattern break command, but the info byte gives the playroutine the no. of the position. Example: E-2 3B04 - Break the pattern and jump to position 4 --- 0000 --- 0B06 - Break the pattern and jump to position 6 Volume: One of the enhancements that the V2.3 version provides is the ------- ability to change the volume at any time during play. When command $0C (=12) is selected, the volume is set to the value contained in the info byte. The volume will remain at this level until the next SAMPLE is played. At this time, the volume is reset to the default volume level of that sample. Example: C#1 1C22 - Set volume to $22 (=34) $}and use instrument # 1 to play the C#1 note. D-2 0000 - Use instrument # 1 to play the D-2 note. (Volume level remains at $22 (=34)) B-1 1000 - Use instrument # 1 to play the B-1 note and set volume to default value for that instrument. Pattern break: -------------- Pattern break is used to create shorter patterns than 64 notes. The note with the $0D command will be pls tayed and after that the next pattern in the position-table will be played. Example: A#3 1D00 - At this point the pattern interrupts. --- 0D00 - same. C-1 0D30 - same. Filter: This Soundtracker version allows you to turn the lo-pass filter ------- on/off. Example: G#2 1E01 - Turns the filter and the power-led off. --- 0000 E-1 1E00 - Turns the filter and the power-led on. Warning to all Amiga 1000 owners (like Unknown and Esteban)Ɵ----- A sample sort function Corrected 'DisplayPattern' routine Corrected preset-editor Improved record function Extended keymap (Sonix style) Pattern play function Delete Song function in the dos menu Improved ANALYZER Pattern changing during play Pattern break command Position jump command Sample zero function New playroutine for use in demos/intros/games Improved graphics (colors,styling,font) Nice scrolling Animated mousepointer Directory Sort A function New Colors for the Analyzer Extension to 31 Instruments Modifications by MnemoTroN: --------------------------- Scroll-Line removed Animated Mousepointer removed Extended DOS-Window Key-Help-Page Nice 'Sure?'-Requester Reinsertion of Length-,Repeat- and RepLen-Gadgets Lowpass-Filter is switched off Load Module Save Sample Format Disk Clear Song and some small details that must not be mentioned here The Song. --------- Any piece of music writtebn with Soundtracker 2.3 is build up from patterns. Soundtracker holds a table with information about the sequence in which these parts must be played. With 'Position' you determine your position in the table. With 'Pattern' you define what pattern to play at that position. 'Length' defines the total size of the table. The full sequence of Patterns is the Song. The Keys. --------- The original (V1.8) version of the Soundtracker had a German keymap. Version  F2.3 supports a standard USA keymap and this ensures compatibility with ALL Amigas. The keyboard has been extended, try typing on the whole key-rows. The keys on your Amiga have been grouped to represent the layout of a two- octave piano-keyboard. You can "shift" the keyboard one octave up or down with the aid of the F1 and F2 keys, thus incrementing the range of the keyboard to three octaves. The Functions. -------------- The Soundtracker V2.3 offers many functions tmo the user to make the development of music as easily as possible. The Play, Stop and Edit-Functions should be self-explaining. Record allows you to record a pattern in real-time, but it is recommended that you better use the normal Edit-Mode. 'Clear Song' will erase all song- and sample-data from memory after a security-check. 'Use PSET' will load the selected sample into the current slot and 'Disk Op' switches to the DOS-Menu. Here you can Load/Sat;ve/Delete Songs and Modules. If you are into ripping music, you will find the 'Save Sample' option useful. Just select the sample to be saved (you may change the disk and name by simply clicking on the 'sample-name'-line) and it is done! 'Format disk' will do just that. After a security-check you are asked for the volume-number. Only numbers will be accepted. The formatting will begin just after you entered the number, so please be careful. If l/ you enter '00', Soundtracker will automagically create a song- and a module-directory. While editing: -------------- Cursor-keys move cursor. shift + Cursor-keys move cursor fast. alt + Cursor-keys move cursor fastest. F6 - Set cursor to first line of pattern. F7 - Set cursor to 16th line of pattern. F8 - Set cursor to 32th line of pattern. F9 - Set cursor to 48th line of pattern.   F10 - Set cursor to last line of pattern. DEL - Delete note under cursor. shift + F3 - Cut track of current pattern and copy into a buffer. shift + F4 - Copy track of current pattern into a buffer. shift + F5 - Copy buffer to track of current pattern. alt + F3 - Cut the whole pattern and copy into a buffer. alt + F4 - Copy pattern into a buffer. alt + F5 - Copy buffer to current pattern. As a new featur 4,e, these commands can be reviewed at any time (except when using the DOS-Menu) by pressing the HELP-key! A small word about the +/- gadgets: pressing the left AND right mousebutton will in-/decrease the value faster !! Sample sort function: --------------------- Unknown inserted a special sort function in the load-song routine, so you needn't be a D.J. anymore. Only the D.O.C-Soundtrackers V2.1 to V2.3 will load ALL Samples from the Disk 'ST-01', then from 'ST-02 ', then from 'ST-03' and so on. Sample zero function: --------------------- While editing you're able to set the sample to the value zero (0!). Press both mousebuttons at the position of the samplegadgets (plus, minus = +,-). Now you can edit the pattern with the sample 0 to prevent difficulties according to the volume (Frog's idea) !!! Correct 'DisplayPattern' routine: --------------------------------- The 'MasterSoundtracker V1.0' and the 'D.O.C-Soundtracker V2.0' ha ~yņod an incorrect 'DisplayPattern' routine !!! The highest bit of the command- and infobyte had been deleted on screen, but not in the memory !!!!!!!!!! Unknown discovered this bug and removed it. Example: Entered - E-2 C2FF <=- Correct ! Printed out later - E-2 427F <=- Wrong instrument and infobyte! Still in memory - E-2 C2FF <=- Correct ! Instruments. ------------ You can use up to thirtyone different instruments in one music-piece.  --- 0000 hold the current period Slow automatic portamento: D#2 3404 Play note with 4 added to period --- 0000 add 4 to period --- 0E00 Switch filter off and add 4 to period --- 0400 hold current period Fast automatic portamento: D#2 3404 Play note and add 4 to period 6 times --- 0000 add 4 to period 6 times --- 0F50 Set speed to 5 and add 4 to period 5X --- 0400 hold current period / / / (Speed changes number of passed per l{ note) Volume: Command #7 lets you set the relative overall volume. If you set the relative volume to $40 the samples will be played at their current volume (just like with any other soundtracker). If you set the relative volume to, for instance, $20 all samples will be played at half ($20/$40) volume. Command #8 lets you slide the relative volume. This is useful for fading in and out. The information in the info byte will be treated just like it is for sliding the sample ! volume (see below). Command #8 will be repeated automatically for each next line. When command 12 ($C) is selected, the volume is set to the value contained in the info byte. The volume will remain at this level until a next sample is played. At this time, the volume is reset to the default volume level of that sample. Example : C#1 1C22 - Set volume to $22 and use instrument # 1 to play the C#1 note. D-2 0000 - Use instrument # 1 to play the D-2 note. "G (Volume level remains at $22) B-1 1000 - Use instrument # 1 to play the B-1 note and set volume to default value for that instrument. It is also possible to "slide" the volume up or down while playing. In this case the first nibble of the info byte defines the amount at which the volume must be decremented, and the second nibble the amount at which it must be incremented. Example : D#3 2D20 - Slide volume down, amount = 2 --- 0D20 - Slide agai#>n --- 0D20 - Slide again --- 0000 - no more sliding To slide the volume automatically use command 11 ($b) The example above would then look like this: D#3 2B20 - Start sliding --- 0000 - Keep sliding --- 0000 - Keep sliding --- 0B00 - stop sliding The volume will be changed only once per note (and not 5 times per note like in Soundtracker V2.0) so you can now slide the volume really smooth. FINETUNING: Commands 9 and 10 ($A) let you $Gfinetune the period. The value in the info byte will be added to or subtracted from the current period. (So in fact these are commands 3 and 4 non-automatic) This is useful when you have a sample containing a complete rhythm- loop,and you want to make the sample repeat exactly at the same point as the pattern. FILTER: With the E-command you can switch the filter on and off example: D-2 1E00 plays note and turns the filter off D-2 1E01 plays note and turns the filte%er on SPEED: With command F you can change the speed. Example: C-2 1F50 Play note C-2 using sample #1, and set the speed to 5. --- 0F51 Set the speed to 5 1/4 --- 0F52 Set the speed to 5 1/2 --- 0F53 Set the speed to 5 3/4 NOTE: Normally the playroutine takes 6 passes for one note. When changing the speed the high nibble of the info byte determines the number of passes,therefore the standard speed is 60 The l&s:!ow info-nibble determines the extra delay after each line in the pattern,enabling you to set the speed with intervals of 1/4. ----------------------------------------------------------------------------- The playroutine on the SoundTracker disk is for using your music in demos, intros, games etc. It was written using the Seka-assembler and the source of the routine can directly be incorporated in your own sourcecode. The source contains a full explanation of how to use it. 'bK _______________________________________________________________ | | | All persons,places and events mentioned in this textfile | | are purely fictional. | | Any resemblance to existing persons or events is coincidental.| | | | Dr.G will not be liable for any damage directly | | or indirectly caused by the use of Soundtracker pro, | | IFF-to-RAW or any other program or file on this disk | | and all subsequent full or partial copies(6v of this disk. | | | | Soundtracker pro contains parts of the original | | Ultimate Soundtracker by Karsten Obarski, | | therefore you need permission of the copyright-holder | | if you wish to copy Soundtracker pro. | | | | COPYING SOUNDTRACKER PRO WITHOUT THIS PERMISSION | | IS A VIOLATION OF APPLICABLE LAWS !! | | ( Now don't tell me you didn't know that) | | | | The IFF-to-RAW conversion program ma)x\5Qy be copied and | | distributed freely,but it may not be sold | | | | Messing around with Soundtracker pro or IFF-to-RAW | | is a violation of rule #1 in Dr.G's book of rules, | | and will probably result in some busted testikels. | | ( namely yours ) | |_______________________________________________________________| | IFF-to-RAW or any other program or file on this disk | | and all subsequent full or partial copiesun. F9 - Set cursor to 3/4th of the pattern. F10 - Set cursor to last line of pattern. DEL - Delete note under cursor. ------------------------------------------------------------------------ ------------------------- ABOUT THE PLAYROUTINE ------------------------ ------------------------------------------------------------------------ Patterns. --------- Any piece of music written with SoundTracker is build up of patterns. SoundTracker holds a table with information about 4the sequence in which these parts must be played. With 'Position' you determine your position in the table. With 'Pattern' you define what pattern to play at that position. 'Length' defines the total size of the table. The Keys. --------- The keys on your Amiga have been grouped to represent the layout of a two-octave piano-keyboard. You can shift the keyboard one octave down or up with the aid of the F1 and F2 keys, thus incrementing the range of the keyboard to three octaves. / Instruments. ------------ You can use up to fifteen different instruments in one music-piece. Before you can use a sample as an instrument, some values must be defined. You can do this by either using autoload , or by setting these values your- self. Length : This is simply the length of the used sample in bytes. The maximum sample length is now set at $FFFE,which is almost 64k bytes. Volume : This is the default volume of that instrument. Replen+ repeat : When replen is sbet to 2, each instrument will be played once. When replen is set to any other value, the instrument will be repeated until an other note is played. This is usefull when playing waveforms. Whenever repeat is set to a non-zero value, SoundTracker will repeat a part of that particular sample. In this case repeat defines the offset and replen the length of the part that must be repeated. In other words: If you specify repeat and replen,the sample will be played once from start to end , and then the part specified by repeat and replen will be repeated over and over and over and..." Notes. ------ C # 1 3 C 2 3 / / | \| / / | Arpeggio, portamento etc. info. / / Command / Inst# Note to be played. Note : This is simply the note that must be played by that particular ---- instrument. Inst# : This is the number of the instrument  /that must be used to play ----- the note. When the instrument number is zero, the last selected instrument will be used. Command : This number tells SoundTracker what special functions must be ------- performed while playing the note. These functions are as follows : 0 - Normal play or arpeggio 1 - Simple portamento up 2 - Simple portamento down 3 - Slow automatic portamento up 4 - Slow automatic portamento down 5 - Fast automatic portamento up 6 h - Fast automatic portamento down 7 - Set the overall volume 8 - Slide the overall volume (automatic) 9 - Finetune period up A - Finetune period down B - Slide sample volume (automatic) C - Set sample volume D - Slide sample volume E - Set filter. F - Set speed Info : This byte contains the additional information for the commands. ---- Arpeggio : Arpeggio is used for simulating accords. It does this by rapidly changing the notes while playiVng an instrument. Arpeggios are selected whenever the info byte has a non-zero value and no other commands are selected. When arpeggios are used, SoundTracker looks six times ( maximum,this depends on the speed ) during the play of one note at the information contained in the info byte. Each nibble (4 bits) in this byte defines how many notes SoundTracker must add to the the note currently playing. In each of the six passes SoundTracker does the fO ollowing with the information contained in the info byte : 1 - Play the current note 2 - Add the first nibble to the current note. 3 - Add the second nibble to the current note. 4 - Play the current note. 5 - Add the first nibble to the current note. 6 - Add the second nibble to the current note. If you change the number of passes per note (the speed) to a value of 2-5 arpeggio can't be played correctly Portamento : Portamento is used for 'sliding' o$of the instrument. Soundtracker Pro uses three basically different portamento's - The first (commands 1 and 2) is the same as the one in Soundtracker V2.0 and the versions that are based on V2.0: Five times during each note (normal speed) the value of the info byte will be added to or subtracted from the period. - The second (commands 3 and 4) will add or subtract this value once for each note,this enables very smooth portamento. - The thUiPird (commands 5 and 6) will add or subtract this value six times for each note. In addition commands 3,4,5 and 6 will be repeated automatically each next line in the pattern until you play another note,set the portamento value to zero, or use another portamento command. Examples: simple portamento: D#2 3208 Play note and add 8 to period 5 times --- 0208 add 8 to period 5 times --- 0208 add 8 to period 5 times --- 0210 add 10 to period 5 times  ak(k is in the internal drive. Samples will be loaded from the internal drive or DF1 ,depending on the version you use. After the song is loaded you will be asked to insert your sample disk in the internal drive,and then the samples will be loaded. If not all samples were on the disk you inserted you will be asked to insert another disk. This continues until all samples have been loaded.  ?յZ(or until you click cancel) HINT: If you are working on a song and only have one drive put all the samples you need on one disk,and create a SONGS-dir on that same disk. In this way you won't have to switch disks. This Soundtracker version will write a file-list on the disk if you leave the write-protect off,so that long directories will be loaded fast. If you add songs or samples to a disk that already contained a file-list ( called "stfas jtdir" ) they will not automatically appear in the directory. To add the new files to the list you can do two things: 1 - Simply remove the list when you've added new files. 2 - Select LOAD SONG or LOAD SAMPLE without a disk in the drive. Now a requester telling you that there is no disk in the drive will appear. Click cancel once. Another requester will appear. Put the disk in the drive and wait a while. If you  [`mdo this Soundtracker will write a new list that includes the new files. Files that end with ".info" and directories will not appear in the file-list - IFF-samples: You can now load normal IFF-samples. ( for instance all samples saved with Audiomaster ) If you do this,the sample settings will be set for you. - Auto-load: The auto-load feature for IFF-files also works for none IFF-files. However,only t =he sample length will be set, repeat and replen will remain unchanged. If you specify a volume of zero the volume will be set to maximum. HINT: IFF-files are a little longer than just the sound- data. If you want to save disk-space and memory, you should use the IFF-to-RAW conversion program on all samples that don't have to be repeated. WARNING: Although it's easy to save all samples with repeat in IFF format,you have to be careful if you want to use a sample with and without repeat. The IFF-format asumes that repeat+replen=samplelength If this is not the case you have to save two different versions of the sample: One with repeat and one without. Ofcourse you can also save just the longest of the two and set the samplesettings yourself. - Repeat and replen: If you modify repeat and/or replen they will be kept within certain boundaries, so that repeat+replen doeIkBs not exceed the sample length. - Filter: The filter can be switched on and off with the FILTER- gadget in the VARIOUS sub-menu. It can also be switched during the song with the E-command (See playroutine-description) THIS DOESN'T WORK ON ALL AMIGAS !! - Speed: Like the filter ,the playing speed can also be changed manually or during play. (See playroutine-description) - Edit: You can edit a song while it's playing. Click PATTERN or PLAY to play a pattern or the song and then click edit. - Voice on/off: Each voice can be individually switched on and off. Just click in the pattern on the voice you want to switch on or off. The notes will appear darker when the voice is off. - Overall volume: You can select a relative volume for all voices. All volumes are multiplied by this volume and then divided by $40 (#64). You can also change the relative volume with the proportion@~mal gadget. - Memory: In the VARIOUS-submenu you can see how many memory is left for samples. If you load so much samples that the free memory is less than 5 Kbytes,you might get troubles reading the disk. Therefore the amount of memory will flash on and off when it gets under 70 kbytes,so be careful with big samples when it's flashing. To start playing a song or a pattern at the current cursor position click PATTERN or PLAY with both mouse button Xs. keyfunctions: ------------- - Cut: Put the cursor on the track that you want to delete and then press shift-F3. The track will be copied to a copy-buffer and deleted from the pattern. - Copy: To copy a track without deleting it from the pattern,place the cursor on the track and press shift-F4 - Paste: To insert the track in the buffer at another place, put the cursor where you want the track and press shift-F5 Use Amiga-F3/F4/F5 to cut,copy or paste the whole pattern F4 or 3 in the numeric field (page down): go down one pattern. F5 or 9 in the numeric field (page up): go up one pattern. 7 in the numeric field (home): go to pattern zero. 8 and 2 in the numeric field scroll the track under the cursor up or down ESC stops song or pattern from playing. Cursor-keys move cursor. F6 - Set cursor to first line of pattern. F7 - Set cursor to 1/4th of the pattern. F8 - Set cursor halfway in the patter$}i R"|1m $m NB`pNu"| 9S"`SJo2) |p0rrf3 Nu z^j*_ b\VLB<2(xj^(rdL6pXPJD&j\H>0 pX6%(pf`RbVP0D   p&Km;cDEMLKHJ !CDBRKAEHYZJ6C19082345<=>?BIJmwzvpFgEtqrsx-1E09:@AK2 n2ABAHA HA0 2B@H@Nu B@H@HABA"BtҁрnRAQNu/$ B$HBHAЂH@B@ $Nu/$"a$Nu/$"a $Nu/$lD"pJlDF @an4gD$Nu/ @p$lDF"lDF @aH$gD $NuH ,yL NL@Nu/,y"/N,_Nu/,y"/N,_Nu/,y"/Nj,_Nu/,y'"/Nd,_Nu 4H\ /,y"oL N,_Nu/,y o / N,_Nu /,y o / N|,_Nu%ua shifted character, you had to press shift again for every character. This may be quite handy if you only have one arm with only one finger on your hand,but I changed it anyway. If there are any handicapped persons who want to use the old shift key handling, I'll supply them with a special version of Soundtracker pro. - Directory: If you click 'LOAD SONG','SAVE SONG' or 'LOAD SAMPLE' without having typed a filename first,the directory will`ne be displayed,so that you can select a file by just clicking on it. To quickly clear a filename that is already set, click the filename and then press the right mouse button. (This button functions as the return key) NOTE: The disks that contain the songs and the samples don't have to be called ST-00 and ST-01 anymore. Instead,the song is loaded from the SONGS-directory of the disk thatS (64K) - Pattern length adjustable - Automatic portamento and volume slide. - A real (really real) USA keymap - A German keymap - Choose files from directory - Loads IFF-samples - Auto-load (sample settings automatically set) - No more funny shift key handling and disk-activated auto-repeat - No more keyboard crashes - Each voice can be switched on and off - Overall volume controll - Edit while playing pattern or song - Filter on/off function (manually or during play) - Selectable speed with 56 speeds (also during play) - All cuts to buffer - Slightly faster printroutine - No more bloody #!?*!# presets - Free memory indication. - It looks better than the original -------------------------------------------------------------------------- - Sample length: The maximum sample length is now 64k bytes. ( This does NOT mean that you can load 15 samples of 64k, since this would need 960k of chip meIs{mory.) If you specify a sample length of zero or if you specify a sample length larger than the actual sample length, and then load a sample,the sample length will be set automatically. If you set repeat and replen to zero they will be automatically set if the sample is saved in IFF-format. IF YOU SET LENGTH,VOLUME,REPEAT OR REPLEN TO ANY OTHER VALUE THAN ZERO THEY WILL NOT BE CHANGED! - Pattern length: The pattern length can be set to an"y value between (and including) 32 and 64. - The keymap: Version V2.0 ( and all of its follow-ups ) did NOT support a standard USA keymap, (no matter what the Jungle Command says) but some half USA/half German keymap. ( In fact,the only change made was the change of Y and Z and moving the lower two rows of the piano-keyboard one key to the right,because a German keyboard has one extra key between the z/y key and the left shift key, which the original Soundtracker used. But these aren't the only differences between a German and a 'normal' keyboard ) Therefore this latest version of Soundtracker now supports a REAL USA keymap. (although not all characters can be typed). It also contains a german keymap,because I happen to own a German Amiga (It was cheaper). In the original version the shift keys were handled in a funny way: if you wanted to type f**j \6`f`ZRJD>$ ~vpjT4.("|v^TLB<60*xrlf`PLFB<82"y|tnh\PJD>80"l>8dND0 v h ^ T L F 8 2 * $     n d L @ : . $   H *   n f R J F @ 4  j J 2 zrj`\TPJ>0~V>|H8xph`VB2*$ |r~hJD2$vV77|nhJ R $ >t L\|,R |% Fd$,DL^ ~ 4z.T$fJe    2dKrH><&|$<(B$TB:Hx$SHj N$S6* 6 C PdJCf$SE 8`0@$|$r* `` Jf`(| `RHH/HH/NJPgJfJfHxNpX`$SJVg$S/*VNX$SBV$S5|ZX/:62.*&"JNVH>8$n&|(| N 6$g`p *$*rfz"R A(JfB B`#By` R |"TR(o m-SHn/.N|-@ y( Pf"/.HnN$PfN 6$`~x|t`jR І".o ІA0f/0AHpN$Pf ІA0fBHxN 9j@ d$P ІR,xJfN 6$lJgJfnBJf6Jyg.` R |"|"R"| .nJf%E `B pL|N^NuNVH>8&.(. $|(|&|HyHy/HyN hOg lf" ftrār N`\B`Fz2 |\0fJfpfptr7Ё`pgpf`pfp fK`pp f Jf;`^pl0 |j`HJf c `8|2 |x4"H1 f0 |j0HHІRpnRp n( A!ɩ(cg @fB Jm$BHy//HH/Nn#Oz2 | R"|Rp nB9R . oL|N^NuH<8&/ $/$&|(|$|$BBBB BBB(`L | R | fN/HyN #Pf/HyNzP2 |J0f 0 |TRpnJo fB9B9B9BHy//HH/Nn#O` (f>/HyNzP2 |>0fRp nJoV"` [f`z0 |,0fD0 |6")WfB9B9B9BHy//HH/Nn#ORpo`  fJ9f`HxHy//HH/Nn#OlJ9fB T o 9S#p#(`r"R A "R A `V"R A `F f//NP`2 e (< y h\ h!e yJ6g y((6r A"PB(`4 \f( 0m 9nz 0m 9nRRpo`RR(Jf й( o 9S#`r A"P`b \fPR 0m 9o`$D&"p09~N@," N@&r29 Nl".N( E$PJg E$P *e E$PJg EEp$P * Dd BHx` tp09 DRDVg D3.30`3. D30t49.p090Ѐ#Ftp09~RDXg343~6`3~436t494p096Ѐ#NByDBF0@$|BRF F@mt$yv j(6BF`r4H//+$N=@2A$|t4.pĀ2A$|t4.0t4pĀ2A$|t4.0t4pĀPRF0Fb++g4BF4Hp ԀB$|0@ |&0% RF F mBF E$P*f"4B$| <2A |% 4&B$|0@ |/0N D% XRF F@m E$P*fBr` #r#p09//B*D//B$yN#nOg`HxBBB$yN#nOg`J9VgJ9XgN`&J9VgN`J9XgN$`Nd#nJng`:t49D E$PHBJg(HxBBB$yN#nOg / /9n`BBNPL<|N^Nu/J9`gFp/r/ t/ M҂Ё4 y h `f pr24`4 y(g*t/p/ Bdt/ p/ Bdt/ B /$NuH0 $|J9^wC"Vg29ZHHH<"09:HҀ/p09Tr29@`.p09Tr29@Ё/9ZHHH<29:HЁ//9vN6O Cf $r`J9fg4B0HJ@f0@ |$`Z$ y(frB`20H @e(b` @f`W@f```/N\$X#`0@ |$p9ѹp9ѹ$p9ѹ p9ѹ(L Nu/ $|09p#(# #$#ByTO `&By<` NpRy<29>y9ZHy:RyB098y:fJNl$g`0T0y,epLNuH8$|n(|@&|RBy<8|`HyFp090/p09./N6ByB#NJ#3z:O `p#(# #$#ByT` NTRyT0yTbNHyJg&p096/p094/N3>O `N$g `PRyBSy>Jy>n9ZHy:098y:f\N0$g`0T0y,epLNuH8$|n(|@&|RByT8|`HyFp090/p09./N6O `ByB#NJ#3z:`HyJp096/p094/N3>p#(# #$#Byy9ZHy:RyB098y:fbN$g`SSJSb(RT0y,epLNuH8$|n(|@&|RB@3<3T8|`HyFp090/p09./N6O `ByB#NJ#3z:`|p#(# #$#NHyJp096/p094/N3>O `N$g `VRyBSy>Jy>n9ZHy:098y:fxN$g`SSJSb>RT0y,epLNuH04/2/ oBCp0ѐRCJop0㈑p0L NuH</8/4/J9bgpHHt9bHHÔ`"pr2t‚A |z:tʂ40 ^DHL,_"y/,y Nb,_"y/,y Nb,_"y/,y Nb,_/.""N0.n/,y N.,_"N Q"i"!I Nu pNu/ &I/,y N|,_Rn n f/,y Nv,_/,y N,_#A4'H/NXJf . g . ftA`AxprCl/,y ND,_JfPp(AlC2Q/ y h NXJf  &_ؽ:7NuCl/,y N>,_`/,y Nv,_p@Sn `parallel.deviceserial.device/ &I/,y N|,_A8/,y N,_Jg Clf `Cf `.G/.Hp/,y N,_@Gk/,y N,_-@Ha`BH/,y Nv,_/ y hNXCl/,y N>,_p.Gk/,y N,_/,y N|,_-_H_G/,y Nv,_Sn p'@'@f. g"KN&_Nupa !cLoY|S"ca`~-r-*+23'uP.,1o'///?AAAAAAACEEEEIIIIDNOOOOOxOUUUUYT3aaaaaaaceeeeiiiidnooooo/ouuuuytyzPxGenericnjPLHDbv@|xtplhd ˴`\XTPLHD@<840,($  |xtplhd`\XTPLHD@<840,($  U/$/ o "mFpm@ҁ2;N666666 g J(f|HxBBB yNO $NuNVH><&n(|(<*<2G;gE fE` EEgE fE`EE`"_&|.gEa F$.6B" g <aJf|L Nu/ CA <B/,nbND,_Jg "_| `-if-n6-n:"_LJ)fN333)OgEnEOJ)fNRn 3@R.&y9y999S.&l3#n"0#n64BiP#nBL#n<#nj@#n8#nnD#nrHNuH P" gJg"K/,nbN.,_ gr/,nbN:,_Jg-B6-@&-@.-@*-@2ծ2B:B>-B-B+00L JNup, `%Kz@>pB)Jn gSn fBNBJBF3@R.&99.9.S.&l3Bn A"aAa/ C/,nbN>,_"_EH P .6B&n&aL 3.gNNu|0) @ bZB)HA" pN"<Q)f /,nbN,_Nu  ` |`3a3NuB) ig igB i g8`Jf BJ`r)g/ Q"i"!I"_SnKa@F`RNf. i fg |0A"aTBN` )gJ)Mg6 )Mn, )Nn" )< pm tn J0giLBiMCiND-i0"-i8)OgO);gO.E iOE.EnEO-i<a-iDn-iHra>J@g-i@j .64g$)4 @m &n&ajJf|LNuBB)MJ)Ng )NfI.EgI=Aa=@B@)LaQ =@Nu.EfS@HA00Nu|`? ."爐/ "nbr)"|}x@ 2f"|y@" "_ oꈂ`=A0. .Bf.Eg 32Nu @" "%tBjА6iiHA0C </,NN,_LJgt"H,@-H-Ab=|C/,nbN,_-@gFC </,nNJf <CN,_JgLH`AGaAG>a`F#H| !|@ !K!NNu#|@ | "to ||/,nbN,_NuCaA G aA"|G!KCJaAlGaA|GJ!K"N/,nbNP,_Cvp #|a(-@C#|Ppa-@3pLH`#N#|@ |/,nbN^,_NuB`B ")$gJnFf JJf:cAA (!I"#@ @ RnFC/,nbNL,_NuH ,I .JfFJnFo6A"P g #H"@-IJSnFBZ-i(R )$`"@J:g".Ʋ:o .gaL n.2m n&S:-H.S&f n2>g.Eg>.f6.g.B V;f .f`.g`axg| `>.B")$ nRfJk(R RR c)OgHAnrTf8BJ)f/,nbN,_`L@Nu$..EgFNug|`$g| `| .g|B>.`tH ,I0(k1|.Ef\@g>fn.Ef>.Eg.B.#f `."f.g3`.g>.fagg`(f ` .`J>fJ-n*>`BR:".6:o& n*-H*R:2m-n&*ʲ:l` J>f-n* (>a0C,nbNLL@Nun".Eg&`n#.Eg.Ef 3NuB.Nu.f/ CB .jfp#@$3| /,iN,_"_`lH ,Ig\09@fN`AaR`^3`8(<,4   >.bEg>.f6.g.BG"NPpNu/ @# ,@C[p/,y N,_#gCIp/,y N,_#gC p/,y N,_#gAprC/,y ND,_JflA-H0<2<0Q/,y N,_A CZ#H>H#H6Ep&@/,y N,_p/,y N,_B9 ,_Nu"y/,y Nb,_"y/,y Nb,_"y/,y Nb,_"N0.n/,y N.,_p`timer.deviceintuition.librarydos.librarygraphics.library !*.2 <>@Bb#z/,NXOJg /,NXOJg /,NXO,x.)g/ K N*_`B_NsJf*Jg"/,/,NPO ,R//,NPO`Np/,NXO -.lNu(N]NuNUH (-r ND$@솞Jm0,HlJf)|pLpN]Nu0*|f/N2XOBp`Hp4&HCHCBCԃH@H@B@ЂLNuN"/,lN"/,lN"/,lN,lN,lN|"/,lN(NL,lNN,lNNL,lNNL,lNNL,lNHL ,lNL NuN"o,lNbL,lN:"o,lVN,lN|"o /,lN. o,lN,l"o /N"o,lNL,lN o,lNL,lN o,lN o,lN ^X(\:}hS@. xqke_0123456789abcdef 00000 @@@@@@@@@@@@@@@ @@@@@@@ @@@@@@ @@@@ TNNL,lNNL,lNHL ,lNL NuN"o,lNbL,lN:"o,lA۟J&g+#g`x:<CzI`BpBAr`"t"t‚gPf`Pm:Td Eo2zFJf2k"BIAz`RT* HPnBD"j"`Jt"p$‚f6A`(BC"j"`t"p$‚g.RRC2H&eRm6`RRDt4"&ep` j"0H+gBa$k`("*t‚g/ aZ|/ Hka4O $C&fat B`pp%@/ / a|A*Ar(IjP`2g/ /a* H*D:8 k"PrlځTTJg `/ / a(P0C H @ L<8$n&n &<(<~,<B*a6 js fD/ / a" Pf*g |`Jla/ HkadaP`B-j`l"."A(s(2lf" HF$.ā-B l^0j gb|0,fHF%@0*@0;N"*2B`JgJgJf`0*@0;N(< FHj/ / a|`b0,fH%@%l "`0,fH%@aJg/ Hla0P`$, *&"@ B1I B "9j.\)JJ fr,fh)|(p2,hp09"@p0ɉȀɉf3p0 F0*g B1| j"pr2Ё"B3@z-O1 `(a0`l F0h3f`lJ fJg2,g2,hp09"@p0ʼnĀʼnf3p0 F0Jfdp3`P/ / aP`Ba/ / a*Pg02,hp09"@p0ʼnĀʼnf3p0 F0`/ a\X`b*gL"|NfB(A*)PX2,hp09"@p0ʼnĀʼnf3p0 F0` lAC* `/ / aR l^0 lb0JPfh"jp+ɀÉgB*F+a(k`& *F)@f/ a/ HkaO (B$faxB` lb* H0Jfk"awF(k`V|aD/ / a"a(-TJPmB,` ,g,g|/ av/ HkaVO (nJfa`Jf*+a/ Hka$`0,fH%@aJ gDl/ Hl$a2,hp09"@p0ʼnĀʼnPf3p0 F0`@an`|Jfav kJg Hka X*f/ aX`"aN kJg HkaX|*L|N^NuH8&o$o+0+ @mn`x @o @ f`v @ m`A`fp@(r(a gf f / / aP f/ aX`/ Hl/ a O ar`"p Ϩ@ r(A$`A/ // aO HjaXLNu3f"o/,iN,_Nu o XB!HNu/,xN,_Nu/,xN,_Nu/,xN|,_Nu/,xNv,_Nu/,xLN^,_Nu/,x"o / N.,_Nu/,xLN ,_Nu/,x"oN,_Nu/,xLN,_Nu/,x"oN,_Nu/,x"oN8,_Nu/,x"oN&,_Nu/ N D V T N0`P Hz`RNJfaxB` lb* H0Jfk"a`dBi\1ih`v*iJg -&,i=@-m"3m.\#M,U*m*-M#|`8HA"o a\L`NuHA"o aL`NuHL` Aa.L`NuH"o ,xa:L`Nu*i$ iPa`.,m,,h!m,*XB+MNu*I3@R.&"U g *f+MS.&l3N`S.&l3Nu/ $o oRh 5| |A/ a J/ a 2B*J*Pg/// aP` oh"$_NuH80$o&o***p%@5| / a p5@BCp%@Sk Xf+#g / aX`pL NuH 0$oJj f j"p`TG(`/+Tp+k/a plPA8e$*$/ a p0*r2*Ё/" p0*/a O L NuNuH><$o( /,(|j3%@$HjNHjNHjN5|z|%|A%H%|G,<Aj(Ar*BCO 2A4"|bp1 lC%( CdHkNHk$N|:'|<'K@'|D'JHA'HLA'HPr@j07@fH7@hHk2p0^@kr/a '@T*E: T'@b*D: T'@^ r܁'@/ rl/aORC Ce* L<|Nu o"o|/Hia ZPNu/ oJ ɚg(g /axX`A셄J0pf|`RF| l0H2HЁA$0ļ?gڼ| gZ0H2HЁA$0ļf<0H2HЁA/4HS6HԃAv0(/NXO _A셄pRD|m>RE|m.LN]NuNUH~N x` A샄@RD0Hr,R灰.bex`D0HR:`&0H/2H/NPOJgA샄C샄@PRE0Hr,R灰eRD0Hr,R灰ex`A섄@A샄p0@2HgRRD0Hr,R灰ep,R/r/HzNLO x`Dz`80H2HЁA0pA샄2H4H҂CRE|mRD0Hr,Rばex`Fz`:0H2HЁA00H2HЁAtC섄1(RE|mRD0Hr,RばeLN]NuDumped %ld unnessacary parts out of %ld ! NU/- B,pr N м0@pr N r N pм0@prdN hr N Vмs00@ ,0f| A솊 (N]NuNU g Hz.NLXO` m /(NbXON m /(NXON]NuUsage: ST2AJ apC삶E삶f2<&kt"Q)O,x)NH瀀.)gKN`B_NsC Nh)@f .<N`NPONudos.libraryINuNU/ Hy0,/NPO)@fBHyNPO.lNu lBh l1|"l3| l ,P)@ l MANXBNXO$@Jg0/- /-/ NO )| lh lh `DHj\NXOHj\NXO)@ lJ$g l"h$/NXO/,/ NlPO)lN l N l!@gHxHz,NPO l!@ /,/,NPOBN XO$_N]Nu*NUH 0$m m (( D (&@HHЭ T)@B/,NPO)@fL 0N]NuHH/ KR//,NZO HzPHHЬ/NPO/- / /,NZO B&l$KHH* g g g g fR`  m "f2R KRHH*g JR"f "fR`B*```D KRHH*g0 g( g g g g JR` JRBJfSR`JDgDLJNuHHBJjDRDJjDa `/a "JNu/a"JNuH0HAJAf HA64B@H@"H@20BA cHAL NuHA&"BAHAH@B@tЀӁbR@QL Nu o Jf SNuNUHl/-NPON]NuNU/(-/- /N4PO f& m ( HHgHx/- NPO(N]Nu`NU/ $m Re -// NPO$_N]Nu RR- HH`NU/ A$H J/aXOA삲e$_N]NuNUH $mx f pLN]NuJ* gT* g Hx/ aVPO(* HH/NXO* g /*N> yB #J# B y>B#FadJ #N"ҹJ#R yB PACK!yN!yB 9N # Nu y>"yF$yJtBAaJg RA AfanaaHNu&HaJfTNu"9$<,y NNuC$fNuC  0<QNu< C8<"e.6<B㒴e мQ<0 <0`Q<0Nu"9$< &9 ,y NNu0#&>HRblx(Fpz^djpvdos.libraryDirectory:;B@'d zbw <(j$Nr <(jPN"Jfbx&<$)"*\ <I`NJg$)G@" <(j(N`GD" <(j$Nr <(jPN"Jg"0 <(jN%A`Jf0$Gl" $0( <(j(Nr <(jPN`"*` <I NJf`r <(j(N#A$G|" $0( <(j(N") <(jN$)r <(j(Nr <(jPN"*dJxl,$G" $0( <(j(Nr <(jPN%j`XxvP$*"*` <I`Nr <(jPNNNqDIR Bad args %S &Unable to find current direvdctory name Can't find %S Can't examine "%S": %s is a file not a directory $*\Xg "p(jN$*Xrp(jNJ`g rp(jN`g"*`p(jN"p(jNNNq$#p( #A(#jd,() v$)")p(jN#AJf&)$rp(jNJg")NNNqJf2*|XSf$)G" p(jNrN#Q Jf\") #p$)#p((&)x08R#D$)")p((jN")ҩt:")rN"p(jN#Arp (j(N#AG$ #B() &)$)")p(IN#A$)v0(#C$͈H JfrN")p0(jNJfrN"p0INJg rҪd#A")t0&)x08*)orN")ҩ t0r:gR $)ԩ v/(")t0#B$r#A($n($)ԁv0(ҩ $)ԁ(rҩ(`")t0ԩ &)8rNNqSYS:T <(jN$)r <(j(Nr <(jPN"*dJxl,$G" $0( <(j(Nr <(jPN%j`XxvP$*"*` <I`Nr <(jPNNNqDIR Bad args %S &Unable to find current dired not open destination file... NU/-N,XO//-N/NvN f y> PACKg"9$9>X&<NX# "9Na/ a6*_a,y"<$<N#gV"$9B&9 Nа f<"9N`(A a` SongFile already Packed !!!pNupNuST-00:songs/ `SuA aTAaNNu Reading File: A a6Aa0Nu Packing File: A aAaNu Writing File: $vJgRC`,y"9NNu#>> yB #J# B y>B#FadJ #N"ҹJ#R yB PACK!yN!yB 9N # Nu y>"yF$yJtBAaJg RA AfanaaHNu&H"o&Iz*HR(fgn`ZS(Hfn& Sl>( S o| m6<`<UFNMlv`l*#Z^n g:a|9^&9Z06`a06`g&SCa06`66` a~v`(BNupalpNu JAg6BA C lRySCp`NuRyC Cp NqS@eQNuB@$tQNu@ .Xl$0BRXlr\pN o,l4NL,l|N o,l|N o,l|N X(\:}hS@. xqke_ZUPLHD@<9D0123456789abcdef 00000 @@@@@@@@@@@@@@@ @@@@@@@ @@@@@@ @@@@ DG4L,l8NHL ,l4NL NuN"o,l4NbNL,l4N:"o,l4N,l4N|N"o /,l4N. o,l4N,l4"o /N"o,l4NL,l4ujDa `/a "JNu/a"JNuH0HAJAf HA64B@H@"H@20BAHAL NuHA&"BAHAH@B@tЀӁbR@QL Nu o Jf SNuNUHl?-N\ON]NuNU/8-/- ?N0\O| f$ m ( Hg?NU/ A쀞$HJ* gAVep$_N]Nu`BBB `NU/ $m?<NTO+@f5| м%@$_N]Nu5| %m* H?NTOJ@g* `NUH0$l`&R *P// NxPO$K fBL N]NuNU/ A)HZB -P/N"PO$@Jfp$_N]Nu$%m)J P`NUp0-/aXON]NuNUH0$l Z` mQg&J$R fpL N]Nu g&`)R *P// NPOp`NU/ 0-$@삎Jmm0-llJf9|zp$_N]Nu0- l/0NXOJgp`p`NU/-NjXOJfN9@zpN]Nup`NUH 8-Np0$@삎JDm llJf9|zpL0N]Nu0*|f 9|zp`p0-//- /NzO *f N9@zp` `NUHxBNPO+@ gJl|f -N]NuNp`NUHxHzN/NO ?<N TON]Nu^C NUJVg lVN?-NTON]NuNU/0-H+@Jg(x` ?NTORDlm0,//, "NPOJZg lZNJjg /,jNXOJfg /,fNXOJng /,nNXO,x.)g/ K N*_`B_NsJf0Jg(0,H//,NPO0,~R@H//,NPO`Np/,NXO -.lrNu(N]NuNUH 8-0$@삎JDm llJf9|zpLpN]Nu0*|f/NXOBp`N"/,lbN"/,lbN"/,lbNNL,lbN,lbN,lbN|"/,lbN(NL,lbNNL,lbN,lbNNL,lbNN"/,lbNL,lbNL,l^NXHL ,l^NL NuN"o,lY@/ lN _NN]NuProgrammed by Erwin Kloibhofer on 16-Mar-1988. This tool will play a song-file which was created with 'Convert'. Usage: Play {SongName} [*]. %s doesn't exist. Error while loading %s. NUJgHx/,NnPOJg l/(|/,NVPOJgHx/,NBPOBgN TON]NuapC삖E삖f2<kt"Q)Or,x)N^H瀀.)gKN`B_NsC Nh)@bf .<N`NPONudos.libraryINuNU/ Hy0,/N~PO)@fBHyN>PO.lrNu lBh l1|"l3| lr ,rP)@v lv MANXBN2XO$@Jg./- /-/ NO 9|| lh lh `DHj\N^XOHj\NXO)@ lJ$g l"h$/N XO/,/ NVPO)lN l N( l!@HxHz,NPO l!@ /,?,~N\OBgN "TO$_N]Nu*NUH 0$m m (( D (&@HHЭ T9@B0,H/NPO)@fL 0N]NuH? KR//,NDO Hz:HHЬ/NxPO?-/ /,NDO Bl~&l$KH:| g| g| g | g| fR`  mz "f.R KRH:g JR|"f "fR`B*``!֚`8 KRH:g&| g | g| g| g| g JR` JRBJEfSRl~`ZBB0,~R@H/N PO)@fBl~`z&l`0H l!/ NXOR@HREl~m0H lB` L 2/ `WgRA`BQNu0<`0/ oJfSH"oS@WgB /Nu o "ofNuNUH0$mBHzN PO)@fL pN]Nu m "h$/)N XO(gRHzm D/(6N PO&@Jg4Hx/ N PO,g$ * E%h%FHxHz8N \PO%@/N dXO/,N XOB`icon.libraryWINDOW*NUHm /-HzpNO N]NuNUH $m mf m(`Jm o mp0(` m0H(BmJm lDm JlD;|2- H NA S2- H N(fJmgS- LN]NuNU"H0$m&m Bm+m KRH8g|%fB-0;|;| ;|' KRH8|-fBm KRH8|0f;|0 KRH8|*f mT;P KRH8`2Bm`0- D|0;@ KRH80R@A0fԸ|.fZ KRH8|*f mT;P KRH8`2Bm`0- D|0;@ KRH80R@A0f;||lf KRH8;|`|hf KRH80H`x;|`;| 7``;|`;|?-Hm0?-/-NO +@0-Hѭ`Z mX+P/-N XO;@`J mT8A/+H`(cgSg gtYgUgrWgt`A0;H0-mo;mJmgh m -g "m +f. m0f&Sm mRH?NTO|f pL N]Nu`?-NTO|fp`Rm0-SmmnBm` mRH?NTO|fp`Rm mJg 0-mm0-mJmf(`?< NTO|fp`xRm0-Smmn`?NTO|fp`RRm` 0-`BHHBJjDRDJjD Da>JDgDLJNuHHBJjDRDJ~ҏBXO` HzlNXO -L N]Nu Error in LoadSample Out of ChipMem! Unknown error in LoadSample Sample not found... Directory not found...NUH zHx/-NrPO+@JgHxHl apC삺E삺f2<&1kt"Q)O0,x)N4H瀀.)gKN`B_NsC Nh)@8f .<N`NPONudos.libraryINuNU/ Hy0,/N PO)@JDgDLJNuHHBJjDRDJjDa `/a "JNu/a"JNuH0HAJAf HA64B@H@"H@20BAHAL NuHA&"BAHAH@B@tЀӁbR@QL Nu o Jf SNuNUHl/-NPON]NuNU/(-/- /N4PO f& m (   \~HHgHx/- NPO(N]Nu`NU/ $m Re -// NPO$_N]Nu RR- HH`NU/ A$H J/aXOA삶e$_N]NuNUH $mx f pLN]NuJ* gT* g Hx/ aVPO(* HH/NXO* g /*NJDgDLJNuHHBJjDRDJjDa `/a "JNu/a"JNuH0HAJAf HA64B@H@"H@20BAHAL NuHA&"BAHAH@B@tЀӁbR@QL Nu o Jf SNuNUHl?-N\ON]NuNU/8-/- ?N0\O| f$ m ( Hg?NU/ A쀞$HJ* gAVep$_N]Nu`BBB `NU/ $m?<NTO+@f5| м%@$_N]Nu5| (C  %m* H?NTOJ@g* `NUH0$l`&R *P// NrPO$K fBL N]NuNU/ A)HZB -P/NPO$@Jfp$_N]Nu$%m)J P`NUp0-/aXON]NuNUH0$l` mQg&J$R fpL N]Nu g&`)R *P// NPOp`NU/ 0-$@삎Jmm0-llJf9|zp$_N]Nu0- l/0NXOJgp`p`NU/-NnXOJfN9@zpN]Nup`NUH 8-Np0$@삎JDm llJf9|zpL0N]Nu0*|f 9|zp`p0-//- /NO *f N  )+u9@zp` `NUHxBNPO+@ gJl|f -N]NuNp`NUHxHzN/NO ?<N TON]Nu^C NUJVg lVN?-NTON]NuNU/0-H+@Jg(x` ?NTORDlm0,//,NPOJZg lZNJjg /,jNXOJfg /,fNXOJng /,nNXO,x.)g/ K N*_`B_NsJf0Jg(0,H//,NPO0,~R@H//,N~PO`Nj/,NXO -.lrNu(N]NuNUH 8-0$@삎JDm llJf9|zpLpN]Nu0*|f/NXOBp`N"/,lbN"/,lbNN"/,l *w#bNNL,lbN,lbN,lbN|"/,lbN(NL,lbNNL,lbN,lbNNL,lbNN"/,lbNNL,lbNHL ,l^NL NuN"o,l^NbNL,l^N:"o,l^N,l^N|N"o /,l^N. o,l^N,l^"o /N"o,l^NL,l^N o,l^NL,lN o,lN o,lN0123456789abcdef 00000 @@@@@@@@@@@@@@@ @@@@@@@  +[Xy@@@@@@ @@@@ TS/N,lbNNL,lbNN"/,lbNNL,lbNHL ,l^NL NuN"o,l^NbNL,l^N:"o,l^N,l^N|N"o /,l^N. o,l^N,l^"o /N"o,l^NL,l^N o,l^NL,lN o,lN o,lN0123456789abcdef 00000 @@@@@@@@@@@@@@@ @@@@@@@ -:gB,zE>&|KB,BB,ЁC&(1 rg@ r@*f-*B@*@A5p*g @ <@*g |H5@ 2<gS6M.,H5@B0*"IHA-HA|@e0<@4Jg.*f-%V 5n.5n0 B0.2Ъ %@3& 7j7j7R *dl0*l&XQR, , fB,R,,²,flÃ)yxNuNUH0Bp,:r6NAJ0f +|`&Hx/-N PO(Jg/NXO,Hxp,:r6u,NhAЈ/NPO*JgHm/NPOJgzp,:A삺$pp,:A&pHx/-xNPOr,:A삺!gp,:A삺/p,:r6NC$#(p,:A!xHxp,:r6NAЈ/N:PO.Jglp,:A/0r,:C삺/1/N*O g / / NPO/NXO+|r -xN 0?p,:r6NBA41`PHzNXOp,:A/0r,:C삺/1N8POp,:A삺!p,:A!`HzN\XOp,:A삺!` HzN@XO/NxXO`$HzN,XOp,:r6NAЈ/NXO/NXO/N/+/=g*f-fa`D*%g@%S6M쐜.,H5@a%V 5n.5n0 B0.2Ъ %@g*%*$g&@$3 *?g0*l& 7j7j7R(XQ`R, , fB,R,,,flNuNUH - -JfJg DE` llNJL0N]NuNU/xr6 N A쐜Jg" AR/0r6 N C쐜/1N PORm(N]NuNUH $m~p,r6N tA쐠J0f~`Hx/ N PO(g/N XO*p,r6N PO)@:fL pN]Nu m "h$/)N`XO(gRHzm D/(6N2PO&@Jg4Hx/ Ng l>N/-NXON]NuNU/+mJ g,x` /NXOR0,NHm0,N//, NPOJBg lBNJ*g /,*NXOJ.g /,.NXOJ2g /,2NXO,x.)g/ K N*_`B_NsJf*J&g"/,"/,&NPO ,R//,NPO`Nz/,NXO -.lNu(N]NuNUH (-r ND$@ Jm0,NHlJf)|6pLpN]Nu0*|f/N2XOBp`Hp4&HCHCBCԃH@H@B@ЂLNuN"/,lNN"/,lNNL,lN,lNNL,lNNL,lNN,lN :NL,lNN"/,lNNL,lNHL ,lNL NuN"o,lNbNL,lN:"o,lN,lN|N"o /,lN. o,lN,l"o /N"o,lN o,lNL,l:N o,l:N o,l:N\ X(\:}hS@. xq,g$ * E%h%FHxHz8NPO%@/NXO/,:NhXOB:`icon.libraryWINDOW* o Jf SNu6R@xNPO0H l! l (|ѬRD|mHx m /( NPO)@f m /( HzNPON/,/,/,N$O g8 m /( HzNPO/,NXXOHzNXO m /( N\XON/,N2XON(N]NuProgrammed by Erwin Kloibhofer on 14-Mar-1988. This tool will convert a SoundTracker song with its instruments and an executeable replay routine into one file. Usage: Convert {SongName} {instrumentsDir} {FileName}. Can't open song %s. Error while loading song %s. ReplayCan't open 7Yشreplay routine. Error while loading replay routine. Can't open %s. Error while writing file %s. Removing it. NUJgHx/,NPOJgHy @/,NnPOBgNTON]NuNU/-HlNPO/- HlNPOHxHlNPO)@fHlHzN^POa/,/,N4PO/,NXOHxHlN\PO)@ l/(|"l/ /,NVO l|gHlHzrNPO/,NXON , lB0 lB( lB( lB(/,NnXON]NuInstrument %s doesn't exist. Error while loading instrument %s. apC삖E삖8 Ǯf2<kt"Q)Or,x)N^H瀀.)gKN`B_NsC Nh)@bf .<N`NPONudos.libraryINuNU/ Hy0,/NxPO)@fBHyN8PO.lrNu lBh l1|"l3| lr ,rP)@v lv MANXBN,XO$@Jg./- /-/ NO 9|| lh lh `DHj\NJXOHj\N XO)@ lJ$g l"h$/N XO/,/ NVPO)lN l N, l!@HxHz,N PO l!@ /,?,~N\OBgN "TO$_N]Nu*NUH 0$m m (( D (&@HHЭ T9@B0,H/N#'GPO)@fL 0N]NuH? KR//,NDO Hz:HHЬ/NxPO?-/ /,NDO Bl~&l$KH:| g| g| g | g| fR`  mz "f.R KRH:g JR|"f "fR`B*```8 KRH:g&| g | g| g| g| g JR` JRBJEfSRl~`ZBB0,~R@H/N PO)@fBl~`z&l`0H l!/ NXOR@HREl~m0H lB` L 2/ `WgRA`BQNu0<`0/ oJfSH"oS@WgB /Nu o "ofNuNUH0$mBHzN PO)@fL pN]{: sngs7 01 09900 0064 0500 8750 Strings8 01 08100 0064 0000 8040 Sweep 01 07300 0064 0000 0002 Sweep2 02 06500 0064 0000 0002 SynBrass 01 04000 0064 0000 0002 SynBuz 02 03700 0064 0000 0002 SynClaves 01 01000 0064 0000 0002 SynPia 02 05400 0064 0000 0002 SyntheBass 01 07900 0064 0000 0002 SynthPiano 01{;[ 05500 0064 0000 0002 Take 02 06800 0064 0000 0002 Tallic 02 07000 0064 0000 0002 TeaPiano 02 07600 0064 0000 0002 TechBass 01 05100 0064 0000 0002 Telephone 02 05500 0064 0000 0002 TheEgg 01 09900 0064 0000 0002 TineWave 01 09900 0064 0000 0002 Tom1 02 02586 0064 0000 0002 Tom2 02 04376 0064 000{<0 0002 Touch 01 09200 0064 0000 0002 Trio 02 03500 0064 0000 0002 Tubes 02 07000 0064 0000 0002 TuneBass 01 04800 0064 0000 0002 Voices 01 09900 0064 0000 0002 WabberString 01 03900 0064 0254 2546 WarmBells 02 07900 0064 0000 0002 Warmth 02 06500 0064 0000 0002 WoodBlock 01 01200 0064 0000 0002 WowBass {rؖ 01 05000 0064 0000 0002 YaskMe 02 07500 0064 0000 0002 --------------------------------------------------- 02 07600 0064 0000 0002 TechBass 01 05100 0064 0000 0002 Telephone 02 05500 0064 0000 0002 TheEgg 01 09900 0064 0000 0002 TineWave 01 09900 0064 0000 0002 Tom1 02 02586 0064 0000 0002 Tom2 02 04376 0064 000} }8 m f&"-$NRgd"-NJg"m -,xN.Jg"m <,xN.Jg"m - ,xN. - NuC9v`C(v`CRv`Cdv(R "-$ ,zN`,xC:9NMLKJIHGFEDYXWVUTSRQ|.P  PRESETLISTv #i ""Jf")Np(jN$0#p(`,rҩ$"p(j4NJf")N")#pJfrNNqN#A p(j8N#A$vJ((fF#CBBx#D *) !X ") !JgJ"$0&0(8gG" p0(jN#A`G" p0(jN#Ar JfX"#p$J$g<$) !$(")$&0$)rp4(jN")$p4(jN#At "#pJfr G" p0(jN#A")p0(jN©F$) !(,"$0$rp0(jN&)$)") p0INp4(jdN.~9JpQzEFa(QNu*g\*f0Rj*f`2*⁂HAB2*A7p(`<0*j"g2R@5@4* "j7B`*g2*j5A7A&7j NuB0*"IHA-HA|@e J@k0<@`B@4NuB,zEF&|K쀜B,*g `BB,ЁC(1.1 r<?fa`P@ r@*f-*B@*@A5p*gT*f @ <@Bj`HpGA00pj5@ Bj0|BA,M5@"`*g |H5@ 2<ANJ8Gl" pHI4N#A<$),r pL(jN#A@$) #p(D$),rpT(jN#AHBLJf$)#p(&0( #C`"t0#B&R#Ct")NRt ҂p\(jtN#A Jf`r ҩ R#A$)S#BPr#ATPn&ҩtԁr0($)ԩT(rҩT`")ҩt ")4v!")8()4!H")8()4!H")4B ")4!DJLCB $rp0(j(NJg "*`") NNqNIL:**JfGP" ` ")"0#A JfGX" ` ")"0#AJf "<` ")"04#AJfr`")"0p$I`N#A$!(8"!0"t !"&0$x8"!4"!") 0#Dr#A n($) ԁv0($(0(؁Hrҩ `")t0#Br#A n($)ԁv0($(0(؁Hrҩ `N%N> SYS:Btԉ#B`Rrp(jtN#A JgB$B(""0p(jN$) !(")!{ ER0 0002 KlickOrgan 01 05700 0064 0000 0002 KorgBass 01 04000 0064 0000 0002 KorgBeau 01 07000 0064 0000 0002 KorgBow 01 05400 0064 0000 0002 KorgDoi 02 05000 0064 0000 0002 KorgFilter 01 03400 0064 0000 0002 KorgString 01 04000 0064 1014 2166 Koto 01 07100 0064 0000 0002 LaserShot 02 01316 0064 0000 0002 Leader { FI; 01 03400 0064 0000 0002 Licks 01 06200 0064 0000 0002 Licks2 02 05000 0064 0000 0002 LongSlap 02 08100 0064 0000 0002 Magic 01 08900 0064 0000 0002 Marimba 01 08000 0064 0000 0002 Mechanic1 01 07500 0064 0000 0002 Mechanic2 01 09700 0064 0000 0002 MetalKeys 01 09400 0064 0000 0002 MilBass 02 0660{ Gw0 0064 0000 0002 MiniMoog 02 06100 0064 0000 0002 Monkey 02 05200 0064 0000 0002 MonoBass 01 06600 0064 0000 0002 MonsterBass 01 09000 0064 0000 0002 MuteClav 01 05100 0064 0000 0002 Nice 01 06600 0064 0000 0002 NightMare 01 09900 0064 0714 8354 NoteMan 01 07000 0064 0000 0002 Organ 01 06400 0064 0000 0002 {HZOutlaw 01 08400 0064 0000 0002 PanFlute 01 09900 0064 0000 0002 Paper 02 05200 0064 0000 0002 Peck 02 05800 0064 0000 0002 Perc-Agogo 02 04000 0064 0000 0002 Perc-Bongo 02 03400 0064 0000 0002 Perc-DryTom 02 05200 0064 0000 0002 Perc-HandDrum 02 03700 0064 0000 0002 Perc-Taiko 02 03900 0064 0000 0002 Perc-Timbale {IP 02 02900 0064 0000 0002 Perc-Timpani 02 03000 0064 0000 0002 Perco 01 04500 0064 0000 0002 PingBells 01 05400 0064 0000 0002 PinVoice 02 08000 0064 0000 0002 PitchBrass 02 06700 0064 0000 0002 Pizza 02 09400 0064 0000 0002 Pizza2 02 04900 0064 0000 0002 Poison 02 05600 0064 0000 0002 PolySynth 01 09900 0064 {JL 0000 0002 PopBass 01 02700 0064 0000 0002 PopSnare1 01 02000 0064 0000 0002 PopSnare2 01 04000 0064 0000 0002 PopSnare3 01 02700 0064 0000 0002 Pulse 01 06400 0064 0000 0002 RapHornBlast 02 08100 0064 0000 0002 RealKoto1 02 07500 0064 0000 0002 RealKoto2 02 07700 0064 0000 0002 Reflex 02 06200 0064 0000 0002 RichStri{K4ng 01 06900 0064 3540 2982 RingPiano 01 09900 0064 0000 0002 Ringtone 02 08000 0064 0000 0002 RoomBrass 01 04600 0064 0000 0002 RubberBass 01 09000 0064 0000 0002 SawJump 02 05900 0064 0000 0002 Sequencer 02 05400 0064 0000 0002 Shaker 01 02300 0064 0000 0002 Shamus 01 09000 0064 0000 0002 Sinbad 02 {L06500 0064 0000 0002 SineCZ 01 03900 0064 2178 1684 SingerBell 02 06900 0064 0000 0002 Siren 02 08500 0064 0000 0002 SixTease 01 08400 0064 1120 6680 SlapBass 01 04900 0064 0000 0002 SmartBrass 02 07800 0064 0000 0002 Smash1 01 03500 0064 0000 0002 Smash2 01 04400 0064 0000 0002 Snare1 01 02000 0064 0000 0{M_ 002 Snare2 01 01900 0064 0000 0002 Snare3 01 03800 0064 0000 0002 Snare4 01 02000 0064 0000 0002 Snare5 01 04000 0064 0000 0002 Snare6 02 02700 0064 0000 0002 Snare7 02 03900 0064 0000 0002 Snare8 02 03000 0064 0000 0002 Snare9 02 03000 0064 0000 0002 SoftBass 01 04900 0064 0000 0002 SoloBass {NN 02 06200 0064 0000 0002 Soundtrack 01 09900 0064 0000 0002 SpeOwl 02 08500 0064 0000 0002 Sphere 02 08300 0064 0000 0002 Spoils 02 04500 0064 0000 0002 SqBrass 02 07400 0064 0000 0002 Squares 01 09900 0064 0000 0002 Squint 02 05900 0064 0000 0002 Stabs 01 07400 0064 0000 0002 Starpeace 02 08300 0{9064 0000 0002 Stars 02 05300 0064 0000 0002 Steinway 01 06900 0064 0000 0002 Strange 01 07000 0064 0000 0002 Strings1 01 08900 0064 0000 0002 Strings2 01 09700 0064 4462 4156 Strings3 01 08500 0064 1992 6130 Strings4 01 09700 0064 1220 3410 Strings5 01 09900 0064 0000 0002 Strings6 01 09900 0064 1972 6634 Striy P7bs701V@strings801@sweep01B@sweep202 @synbrass01@synbuz02:@synclaves01@synpia02 @synthebass01n@synthpiano01 @take02 H@tallic02 @teapiano02@techbass01 @telephone02 @theegg01V@tinewavey͊01V@tom102 @tom202@touch01@trio02@tubes02 @tunebass01 `@voices01V@wabberstring01@warmbells02n@warmth02 @woodblock01X@wowbass01 @yaskme02@01@strings501V@strings601V@ string{R*䌀 01 08200 0064 0480 5362 Balance 02 07400 0064 0000 0002 BassDrum1 01 01100 0064 0000 0002 BassDrum2 01 03000 0064 0000 0002 BassDrum3 01 03400 0064 0000 0002 BassDrum4 01 03500 0064 0000 0002 BassDrum5 02 03500 0064 0000 0002 BigBow 01 07800 0064 0000 0002 Blast 01 09900 0064 0000 0002 Blower 02 09100 0064 {S 0000 0002 Blubzing 01 01300 0064 0000 0002 Bouncy 02 03700 0064 0000 0002 Bratz 02 06500 0064 0000 0002 Breath 01 03800 0064 0000 0002 Brian 02 09100 0064 0000 0002 Bright 02 07100 0064 0000 0002 Bubble 02 06400 0064 0000 0002 Call 01 08000 0064 0000 0002 Caugh 02 05826 0064 0000 0002 Celeste {T8 01 08000 0064 0000 0002 China 02 06700 0064 0000 0002 Chink 01 05900 0064 0000 0002 Cinema 01 04500 0064 0000 0002 Claps1 01 02300 0064 0000 0002 Claps2 01 01400 0064 0000 0002 Claves 01 03000 0064 0000 0002 Cliop 02 07200 0064 0000 0002 CloseHiHat 01 01200 0064 0000 0002 Conga 01 {Um]01600 0064 0000 0002 CordPiano 02 06500 0064 0000 0002 CowBell 01 01400 0064 0000 0002 Cowbell2 02 01500 0064 0000 0002 Cymbal1 02 05200 0064 0000 0002 Cymbal2 02 03300 0064 0000 0002 Dangerous 01 07000 0064 0000 0002 DeepBass 01 08200 0064 0000 0002 Detune 01 05700 0064 2410 2414 DigDug 01 03100 0064 0000 0{V 002 DigiHarp 01 04000 0064 0000 0002 DigiPop 02 06700 0064 0000 0002 DreamBells 01 09200 0064 0000 0002 DumpfBass 02 06400 0064 0000 0002 DxBass 01 02700 0064 0000 0002 Dxtom 01 04000 0064 0000 0002 ElecGuitar 02 06700 0064 0000 0002 ElecTom 01 03000 0064 0000 0002 EloPin 02 05300 0064 0000 0002 EPiano {WQ 01 08000 0064 0000 0002 ExBells 01 03500 0064 0000 0002 FaeryTale 01 08900 0064 0000 0002 FatBrass 02 07000 0064 0000 0002 FilterBass 01 05900 0064 0000 0002 Friday 02 06500 0064 0000 0002 FunBass 01 06500 0064 0000 0002 FunkBass 01 05300 0064 0000 0002 Gato 01 05000 0064 0000 0002 GlassMute 02 06900 0{Xe9Q064 0000 0002 Glockenspiel 02 07600 0064 0000 0002 Gong 02 09866 0064 0000 0002 Great 01 05000 0064 0000 0002 Growl 02 05500 0064 0000 0002 HallBrass 01 09400 0064 0000 0002 HammerBass 02 07400 0064 0000 0002 HammerHihat 02 04700 0064 0000 0002 HammerSynth 02 08890 0064 0000 0002 Hapsi 02 06700 0064 0000 0002 Heav{ YrZen 01 06600 0064 0000 0002 HeavySynth 01 09800 0064 0000 0002 Heifer 01 02600 0064 0000 0002 HighVibes 02 07600 0064 0000 0002 HiHat1 01 01400 0064 0000 0002 HiHat2 01 02000 0064 0000 0002 HiHat3 02 01800 0064 0000 0002 HiHat4 02 04100 0064 0000 0002 HitBass 02 07500 0064 0000 0002 HitMe1 02{ DGQ9 04000 0064 0000 0002 HitMe2 02 05200 0064 0000 0002 Hooman 01 06500 0064 0000 0002 Horns 01 02500 0064 0000 0002 HosBass 02 06000 0064 0000 0002 IceRain 02 05400 0064 0000 0002 JahrMarkt1 01 09800 0064 0000 0002 JahrMarkt2 01 09800 0064 0000 0002 JamJam 02 06600 0064 0000 0002 Jetes 01 09600 0064 000y[[q02@blubzing01@bouncy02:@bratz02 @breath01l@brian02@bright02 @bubble02 @call01@caugh02 a@celeste01@china02 @chink01 @cinema01@claps101~@claps201@clavesy\`ʃ01@cliop02@closehihat01X@conga01 @cordpiano02 @cowbell01@cowbell202@cymbal102 (@cymbal202r@dangerous01 @deepbass01@detune01 "@ jdigdug01@digiharp01@digipop02 @dreambells01@dumpfbass02 y]0}}_@dxbass01F@dxtom01@elecguitar02 @electom01@elopin02 Z@epiano01@exbells01@faerytale01b@fatbrass02 @filterbass01 @friday02 @funbass01 @funkbass01 Z@gato01 @glassmute02 z@glockenspiel02@goy^*@ng02E@great01 @growl02 @hallbrass01\@hammerbass02t@hammerhihat02 .@hammersynth02]@hapsi02 @heaven01 @heavysynth01$@heifer01@highvibes02@hihat101@hihat201@hihat302@hihat402@hitbassy_!02@hitme102@hitme202 (@hooman01 @horns01@hosbass02 @icerain02 @jahrmarkt101$@jahrmarkt201$@jamjam02 @jetes01@klickorgan01 "@korgbass01@korgbeau01 @korgbow01 @korgdoi02 @korgfiltery`$M01@korgstring01@;koto01 @lasershot02@leader01@licks01 @licks202 @longslap02@magic01b@marimba01@mechanic101@mechanic201@metalkeys01\@milbass02 @minimoog02 @monkey02 (@monobass01 @yaZmonsterbass01@muteclav01 @nice01 @nightmare01V@Qnoteman01 @organ01 @outlaw01h@panflute01V@paper02 (@peck02 T@perc-agogo02@perc-bongo02@perc-drytom02 (@perc-handdrum02:@perc-taiko02@perc-timbale02@percy b -timpani02@perco01@pingbells01 @pinvoice02@pitchbrass02 @pizza02\@pizza202 @poison02 @polysynth01V@popbass01F@popsnare101@popsnare201@popsnare301F@pulse01 @raphornblast02@realkoto102@realkoto2y cHT02 @reflex02 @richstring01 z@ ringpiano01V@ringtone02@roombrass01@rubberbass01@sawjump02 @sequencer02 @shaker01~@shamus01@sinbad02 @sinecz01@Jsingerbell02 z@siren02@sixtease01h@` slapbassy d4P01 @smartbrass02<@smash101@smash201@snare101@snare201@snare301l@snare401@snare501@snare602F@snare702@snare802@snare902@softbass01 @solobass02 @soundtrack01V@speowl02@y OahRsphere026@spoils02@sqbrass02t@squares01V@squint02 @stabs01t@starpeace026@stars02 Z@steinway01 z@strange01 @strings101b@strings201@nstrings301@ strings401@strings501V@strings601V@ stringrfToüߛrD$08qhnA|g`a610QNqNqNqeNuprS@Sf< * QNu H,9J\ ypʙڹ3ڃ88x*ژJ d@LIg`A/cchgbgG"!xp#Cb?@rĔ@9p4@QhD>*6cŘ"ǩX%xȀ\ `7DĢ"xBB(\@h-5gNB<0L<KB*Bl@L"@?`f=7# $$$qe@H#pt?w**'*2,܋К0jZV2tھӯ%Pczt4D..a))??:G{dݢŨ*zK`bNMqilL"@,O!ͱ<@ݫoF*,k" 8t$R# dvb}fmvmwpjؼr4ɹڒߜ*iZYo;')AFjrb9@V,T{jtR³bb,K܌_ݜ[@j䨘׹h5u1T6dH߹[SX=tv7UC.yRXLO.~dw~ou {֘ Cd')qrRKHN̋NL3RG*4:APؙp23b{4ČO#Y$ܙ@TNʬeNΉuƆaoΉOOJqj8mzbS`@ҳcc"2"zqbK e! zER`Hc0Dd ,X1e)$Qwa\E*ZH  v &)07 N,AΒmO x@3Г`#@d0 03; 0_"&P8<m<ô }<`=?4 &  $"@?,JgpP"`S B1 ?ZAH e2f".@`O2àlTp\ 08#>BG $<{X@g ,&xKZԀBiłp!HzO <4#0@x @qkZb́t`T;|C!Hd K@ps A. p0=0`hl FF h|0@HVvA,u FȈ`0e CD5dF2 qѤI/00p@$p$|;Uax_ȪB[ X!Bx$`NZ} Xt I FX%ЎY`  lX`,`B"@j,_@4)<ӀƄn 5׀H ; ,ѲD$L""6:!I2`D l f8% *>d8DG5G9[G#\ (CbS0CPAp_B  + M I&RJNARlI @W0)01ql!w)*9()P1OpJ"\Hp9Q uD>%`r@"RmD aM5.P0 nZ^a@@Hdf$GAphH0@<1*)$LP!(00 (#0šiH5`Y 6?II^D X)<*!:f Ղ I $P`Aـ"8X?8(X0$ 2 (_Z?iI S4 6{@It %I7/0DI `8`y,‰q:!0 PA&Y%Bf! (HFo]  a  D/Hsh`RB( *s4 % A "2H*@fA@0B@;Ra4]b0Jqmqx0؍BΤP*AAp@JfbH#IdB F1 dyb?d 1(b'f]p dJc8p< loM@ItA`p&D dàkh@67q% @1Pp$<@$ %4AAQB ELX'#( @0 ` jxK @Q d  R-L 8"@pB҂ A`? ?Ĩ3@tP(0dP" a.Db QD aB|I40 3qA0@ H/*&"@%3>˟> !卍𥉉ɥ=qnP l<MBYF  rOs (L@@`JCaFS|! |2( H@4Fy`Ly| {ǀq[{F04<F@RL֊DʃDit*(1Vb7>>opqmU j6HA571Z  hqi !`bQhԑ h h`vA49, 㧝;,7l=B8 'qT'@@fyF8^HaMO6\a4Mn CQH2,.mg !|&vNO"Q`)\ڃɑ^#>_0L +": GP$du{Gq  JrGмд<5l ʡ{`Sm$&:AhT" ȉmȴ  Qv P^xm` Ne(~.AzMgFЁZo0>rKn [- .x) X|0zh0 M^D٠0ԧ׾@Rlt(&AѦ `/8 5x~1x 0R.nAUb4 }  @( HA``x7` CEz#҇ BG`à|> ot\L`S= 0pN#`' A0@ H/*&"@%3>˟> !卍𥉉ɥ=w$('  f -fC" $<N+@g"-$-& NRgz"-N`p  g Ae Zn Q`2"J  nQ$I2Q  oSNurt ԁ  nNuC8v`C'v`CQv`Ccv)R "-$ ,ztNJg"m -,xN.Jg"m <,xN. - Nu,ztN loadpH{vu  qLDr"$*%BG ST-00u |q tKnmlkjihgtbvmenuprsXTfes load pre 22A <FQ,yCNh# 9A Cf (Of (MfQ"H Cf (Of (Mf,y" $<&<N",y"yNbNudos.libraryCOMMqg2|vHA PJ"H,xHE6 a2L/&IP .P,SN @I (g @BI Kr$H,xC\pN+@g,zFN+@  o J  l| <r,xN:+@gr(@" t,zN+@gd"$ NJgV"-NJjV+l| -r,xN:+@g"" $<,zN+@g"-$-&-NRg"-N$m&J -f  fRaxaa6aa6aa6aaJ6yz=POdcba`_^]\[Zz^ st.presets{vyZ*accgit02 H@acopiano02n@ahhvox02@alien01<@aligator01F@aloog02 "@analogstring010@ asia01@ ybalance02t@bassdrum101&@bassdrum201@bassdrum301@bassdrum401@bassdrum502@bigbow01<@blast01V@blower{|YZ<;:9NMLKJIHGFEDYXWVUTSRQ|.P  PRESETLISTv{Q$* Samplename * ST- Len Vol Rep RLen --------------------------------------------------- AccGit 02 06800 0064 0000 0002 AcoPiano 02 07900 0064 0000 0002 AhhVox 02 08700 0064 0000 0002 Alien 01 07800 0064 0000 0002 Aligator 01 02700 0064 0000 0002 Aloog 02 05700 0064 0000 0002 AnalogString 01 08800 0064 3326 4970 Asia }~=~ makemodulv}=A`dos.library.modFile Open Error! Memory Allocation Error! Read/Write Error! Argument Error! Usage: Makemodul Kr$H,xC\pN+@g2,zFN+@  o J  l| X+@ r,xN:+@g> J"@fA$SIpQB0<r,xN:+@g(@" t,zN+@g"$ NJg"-NJj+l| -r,xN:+@g" $<,zN+@g"-$-&-NRg"-N"-$<N+@g|McpI?>CBA@ run@|O&O(jdp N$"<I(l/ / g ,倲l"4(T`,2(jtp NJg2**p$A. J (F NU/-N fXO//-NJ/NrO N]Nu9g HaLNp1AFBQ9|L9|t9|9|ByByByByB,l,MS@A 3@A l!l3Nu3@!vl33Nu(zbR,BA,,MgJlg0,|3Bl&|60+*)('&%$#8765convert5첞NNU/HzzN XOHzN XOHzN XO mgHzN XONHyHxNBPO)@fNHyHy @N&PO)@fN ,м )@Hx m /(NtPO)@f m /(HzN HPONl/,/,NPO/,N~XOHx m /(N@PO)@ l/(|"l/ /,N:O l|g m /(HzhNPO/,NXON/,N~XO l (|ѬHxHzTNPO)@fHzKNXONHx/,/,NO gHz=NpXO/,N XON/,NXO ,м)@x lJg./, m /(1 "! -,ZBurster,u@&N l3@A0 l!&l3@Nu9g HaLNNU9|D9|^9|x9|ByByByByp,eS@B,lÃ!@NrN]NuNU/x A삺Jg A/0"C삺/1NzPORm(N]NuNU3@!Tl3ByByByBy3N]Nu(x@)ytR,BA,,egJl&g0,&|3Bl&"|pE>3j "*g(BB,HAJg2*A3p(`*g2*j5A3AQ` 3playo\NNUBmHzN:XOHzN0XO mg mgHzNXONVHyHxNPO)@fN <"N:#B <u0"<N:#FNu,x"y> <N."yB <N."yF <u0N.Nu,xC&Nh#NuA&a2,x"yNbNudos.library ,y*yF"<$=<QPONMLKJIHG\[ZYXWVUTSRgfedcba`_^]rqponmlkjihx}|{zy ST-BLUE.docu( sourcespy----------------------------------- Dokumentation zum BLUE-Soundtracker ----------------------------------- Allgemeines: ------------ Als BLUE vor geraumer Zeit eine Diskette mit mehreren Versionen des Soundtrackers in die Haende fiel, waren zwei Reaktionen die Folge: 1. Freude ueber die gute Idee! 2. Aerger ueber die noch schlechtere Umsetzung! Am 2. Punkt vermochten leider auch die gutgemeinten Bemuehungen diverser Editoren nichts Wesentliches zu aendern, die hier jedoch nicht  0/.-,+*)('&;#7SNote: This SoundTracker is based on the MasterSoundTracker V1.0 by TIP/AGENTS D.O.C-SoundTracker 2.2 - A Quick Clarification. ---------------------------------------------- Update : Dezember-1988. Update done by : UNKNOWN of DOCTOR MABUSE ORGASM CRACKINGS (D.O.C) INSTRUCTIONS : TRACER and UNKNOWN of D.O.C / Based on J.C.-Instructions ----------------------------------------------------------------------------- Modifications by D.O.C: ----------------------- Glpk T Port-Handler UpLLL$#p(BB #p(v։#Cx,؉#D(z@ډ#E<,<܉#FBri * FILENAME>songname * 'TSTART>song * END> * SEKA>ri * FILENAME>sample1 * START>sample1 * END> * SEKA> * etc... * * - Write the object file with the wo command. * * READY ! * (make sure you load the samples into chip mem) * * To all who want to use this playroutine as part of their * own program: * * Because Soundtracker pro uses speeds with a resolution of 1/4 * the subroutine 'playmusic' must be called four times per * display build-up. * You should spread these four times evenly,so for PAL-mode * this s-would mean the vertical blanking area and raster lines * $4f,$9e and $ed * * If you don't use speeds of 1/4 or 3/4 you can call the routine * twice during the vertical blanking period,and twice at raster * line $9e. * * If you don't use speeds of 1/4,1/2 or 3/4 you can call the * routine four times during the vertical blanking period, * or any other raster line * Only one of these four times will the notes actually be played * so your interupt code can still be fast. * * Before playing the music you must call 'initmusic' start: bsr initmusic move.l $6c,a0 move.l $2230,a1 move.l #level3int,$6c waitforbutton: btst #10,$dff016 ; RIGHT button bne waitforbutton move.l a0,$6c move.l a1,$2230 move.w #$000f,$dff096 ; DMA off rts ******** actually you should use graphicsbase+$32 ******** instead of $2230. initmusic: move.w #$0400,label72 clr.l d0 move.b song+$1d7,d0 cmp.b #64,d0 bgt lengthok mulu #$10,d0 move.w d0,label72 lengthok: move.l #6,lab͙Y3!el64 clr.w label66 clr.l label68 clr.l label69 lea $dff0a8,a0 clr.w (a0) clr.w $10(a0) clr.w $20(a0) clr.w $30(a0) lea label73,a0 move.l #15,d0 clearloop: move.l (a0)+,a1 clr.l (a1) dbf d0,clearloop rts coplist: dc.w $0180,0 dc.w $4f01,$ff00 dc.w $009a,$8010 dc.w $009c,$8010 dc.w $5001,$ff00 dc.w $0180,$0800 dc.w $5101,$ff00 dc.w $0180,$0c00 dc.w $5201,$ff00 dc.w $0180,$0f00 dc.w $5301,$ff00 dc.w $0180,$0c00 dc.w $5401,$ff00 dc.w $0180,$0800 dc.w $5501K,$ff00 dc.w $0180,0 dc.w $9e01,$ff00 dc.w $009a,$8010 dc.w $009c,$8010 dc.w $9f01,$ff00 dc.w $0180,$0555 dc.w $a001,$ff00 dc.w $0180,$0999 dc.w $a101,$ff00 dc.w $0180,$0ccc dc.w $a201,$ff00 dc.w $0180,$0999 dc.w $a301,$ff00 dc.w $0180,$0555 dc.w $a401,$ff00 dc.w $0180,0 dc.w $ed01,$ff00 dc.w $009a,$8010 dc.w $009c,$8010 dc.w $ee01,$ff00 dc.w $0180,$0008 dc.w $ef01,$ff00 dc.w $0180,$000b dc.w $f001,$ff00 dc.w $0180,$000f dc.w $f101,$ff00 dc.w $0180,$002N0b dc.w $f201,$ff00 dc.w $0180,$0008 dc.w $f301,$ff00 dc.w $0180,0 dc.w $ffff,$fffe level3int: move.l #coplist,$2230 MOVEM.L D0-D1/A0-A1/A5-A6,-(A7) LEA $00DFF000,A0 MOVE.L $00000004,A6 MOVE.W $001C(A0),D1 BTST #$0E,D1 BEQ level3end AND.W $001E(A0),D1 BTST #$06,D1 BEQ blitternotfinished MOVEM.L $009C(A6),A1/A5 PEA -$0024(A6) JMP (A5) blitternotfinished: BTST #$05,D1 BEQ noblank MOVEM.L D0-D7/A0-A6,-(A7) bsr playmusic MOVEM.L (A7)+,D0* s-D7/A0-A6 MOVEM.L $0090(A6),A1/A5 PEA -$0024(A6) JMP (A5) noblank:BTST #$04,D1 BEQ level3end MOVEM.L D0-D7/A0-A6,-(A7) bsr playmusic movem.l (a7)+,d0-d7/a0-a6 MOVEM.L $0084(A6),A1/A5 PEA -$0024(A6) JMP (A5) level3end: MOVEM.L (A7)+,D0-D1/A0-A1/A5-A6 RTE playmusic: subq.w #1,label64 bpl label1 move.w #3,label64 bra label2 label1: rts label2: tst.w label70 bne label3 bsr label38 label3: addq.w #1,label70 move.w label70,d0 cmp.w label65,d0 blt.s label4 clr.w labe ;hl70 move.w label66,d0 add.w d0,label64 bra.L label35 label4: lea label74,a6 move.l #$dff0a0,a5 bsr label10 tst.b 3(a6) beq.s label5 bsr.s label9 label5: lea label75,a6 move.l #$dff0b0,a5 bsr label10 tst.b 3(a6) beq.s label6 bsr.s label9 label6: lea label76,a6 move.l #$dff0c0,a5 bsr label10 tst.b 3(a6) beq.s label7 bsr.s label9 label7: lea label77,a6 move.l #$dff0d0,a5 bsr label10 tst.b 3(a6) beq.s label8 bsr.s label9 label8: bra.L label44 label9: move.b 2(a6),d ҏ0 and.b #$0f,d0 tst.b d0 beq.L label28 cmp.b #1,d0 beq label17 cmp.b #2,d0 beq label21 rts label10:btst #2,26(a6) bne label16 btst #3,26(a6) bne label20 rts label11:move.b 3(a6),19(a6) rts label12:and.w #$00ff,d0 mulu label67,d0 lsr.l #6,d0 move.w d0,8(a5) rts label13:move.b 3(a6),d0 lsr.w #4,d0 and.w #$f,d0 cmp.w #2,d0 blt label14 move.w d0,label65 move.b 3(a6),d0 and.w #$3,d0 move.w d0,label66 label14:rts label15:move.b 3(a6),d0 and.b #$01,d0 lsl.b #1,d0  O eor.b #2,d0 and.b #$fd,$bfe001 or.b d0,$bfe001 rts label16:clr.w d0 move.b 24(a6),d0 bra label18 label17:and.b #%11110000,26(a6) clr.w d0 move.b 3(a6),d0 label18:sub.w d0,22(a6) cmp.w #$71,22(a6) bpl.s label19 move.w #$71,22(a6) label19:move.w 22(a6),6(a5) rts label20:clr.w d0 move.b 24(a6),d0 bra label22 label21:and.b #%11110000,26(a6) clr.w d0 move.b 3(a6),d0 label22:add.w d0,22(a6) cmp.w #$358,22(a6) bmi.s label23 move.w #$358,22(a6) label23:move.w 22(a6),6(a5)  S987654IHGFEDdoc2.2replay.SD8@; ----------------------------------------------------------------- ; ------- Mega fast playroutine for D.O.C-SoundTracker V2.1 ------- ; ----------------------------------------------------------------- ; ---------- Improved and omptimized by Unknown of D.O.C ---------- ; --------------- Based on the playroutine from TJC --------------- ; ----------------------------------------------------------------- mt_init:lea mt_data(pc),a0 add.l #$01d8,a0 move.l #$0080,d0 moveq #$00,d1 mt:4CheckSoundControll.S:]Read=-$2a Write=-$30 Input=-$36 Output=-$3c start: lea name,a1 copyLoop: move.b (a0)+,(a1)+ dbf d0,copyLoop move.l #dosname,a1 move.l 4,a6 jsr -408(a6) move.l d0,dosbase cmp.l #$fc0cd8,$6c ;ist dort nicht der alte Vector ??? bne SoundControllAktive ;nein etwas anderes.... clr.l d0 rts SoundControllAktive: move.l #text,a0 bsr print move.l #5,d0 ;CLI-WARNING rts print: move.l a0,-(a7) move.l DosBase,a6 jsr OutPut(a6) move.l ZOUNDMON.CFILESI'&%$#"! 3210/.-,+*)>=<;0HPlayer.c; #asm global _AudioTemp,200 ; public _KillZound ; public _SetUpInterrupt ; newlevel3 ; This is the new interrupt btst.b #5,$dff01f ; Was it a VertB ?? beq backtoexec ; If not let exec process it movem.l D0-D7/A0-A6,-(A7) ; Save registers bsr _intrMusic ; Our music ! movem.l (A7)+,D0-D7/A0-A6 ; Prepare to reenter exec backtoexec dc.w $4ef9 ; This means JMP oldlevel3 dc.ݫ! LetsHearIt.c܊A-t(Zound.c(X̥#include #include #define MEMF_CHIP (1L<<1) #define VOICES 4 #define PARTLEN 32 #define TABLEN 256 #define NOPARTS 256 static ULONG ZMemsize[16]; static UBYTE SN; static UBYTE MaxPart,MaxTable; static WORD Periods[]= { 0x0000,0x0358,0x0328,0x02fa,0x02d0,0x02a6,0x0280,0x025c, 0x023a,0x021a,0x01fc,0x01e0,0x01c5,0x01ac,0x0194,0x017d, 0x0168,0x0153,0x0140,0x012e,0x011d,0x010d,0x00fe,0x00f0, 0x00e2,0x00d6,0x00ca,0x00be5[L/* * This tiny little program * is just an example how * to use my music routines. * Link it with Zound.o * and it'll be able to play a song * This program was brought to you by * AJ from Activas. Enjoy it! * * Note: PlayZound now takes to arguments: * the first and the last part to be played. * specifying 0,0 means: play the song as last saved. * This parameter passing allows you to define * different tunes in one datafile * for example: the first tune could be * fromp GuruGoodBye.os;jgF0,FL!`0!`2!`4!`6!`_!`\!`Q!`Z!`\!`^!`]!`W012Trap 3: Illegal Address Trap 4: Illegal Instruction Trap 5: Zero Divide Trap 6: CHK instruction Trap 7: Overflow 8Trap 9: Trace Trap 10: A-Line Emulator Trap 11: F-Line Emulator (z+|Іy``(z+|Іy`R(z+|Іy`D(z+|Іy`6(z+|Іy`((z+| Іy`(z+| Іy` (z+| Іy/ <#Q AA& Zound.o͖ jgLN#   X(\:}hS@. xq9g HaLNp1ABQ;|Є!6;|Є!^;|Є!V;|Є!^ByByByByB-umwЄv-rS@ЂtA 3@A l!sl3Nu3@!vl33Nu(zbR-tBA-t-rgJm~g0-~|3Bm~&|pQzEa(QNu*g\*f0Rj*f`2*@ߌ     ^ 2.3Replay.sl ; ----------------------------------------------------- ; ------- D.O.C Soundtracker V2.3 - playroutine ------- ; ----------------------------------------------------- ; ---- Improved and optimized by Unknown of D.O.C ---- ; --------- Based on the playroutine from TJC --------- ; ----------------------------------------------------- mt_init:lea mt_data,a0 add.l #$03b8,a0 moveq #$7f,d0 moveq #0,d1 mt_init1: move.l d1,d2 subq.w #1,d0 mt_init2: move.b (a0)+,d1 cmp.b d2,d1 bgt. 5z fxplayer.sKs**************************************************************************** * * * * * Sound Abspiel Routine zu Sound FX * * * * 1988 LINEL Switzerland * * * * * * * **************************************************************************** ;Einbau: ; 1.Sound FX laden ; 2.Song schreiben oder einladen ; 3.Sounddaten mit Save Datas abspeichern ; 4.Sound FXverlassen und Seka laden ; 5.Sls/" BLUE-playroutine.st$*** playroutine *** songlen: equ 0 smp1len: equ 0 smp2len: equ 0 smp3len: equ 0 smp4len: equ 0 smp5len: equ 0 smp6len: equ 0 smp7len: equ 0 smp8len: equ 0 smp9len: equ 0 smpAlen: equ 0 smpBlen: equ 0 smpClen: equ 0 smpDlen: equ 0 smpElen: equ 0 smpFlen: equ 0 tempo: equ 0 bsr.s mt_init mt_wait: btst #$a,$dff016 bne.s mt_wait1 not.b mt_onoff-v(a5) bne.s mt_wait1 move.w #$f,$dff096 mt_wait1: btst #$a,$dff016 beq.s mt_wait1 btst #6,$bfe001 bne.s mt_wait mt_end: m֥12vHA PJ"H,xHE6 a2L/&IP .P,SN @I (g @BIg,@N#Na,x"zNbNudos.libraryCON:0/0/640/168/* Lord Performers SoundTracker Ripper. Copyright 1/89 by Traitors INC. * ********************************************** * Lord Performers SoundTracker Ripper DeLuxe * * ------------------------------------------ * * Copyrighted 1989 by Traitors Inc. * * --------------------------------- ·R4#11pm( !HAp0(## (й# 9"</,yN: _#grr&9"yS"؂"QHAII 9/,yN: _#g( 9йܐ#"y 9"9ёPSf#  #a y 9"P""(X#APSf yp8g\ @g^p"y*1P 9(qP`rHJf (ITH,۴hSDf`R`L*y*UPNH"y 9,yN. 9"yN.LΑn|{zy12pњ[FAC "*$I fae,y"<6$<N#Bg"$9&<Nր3F"9BN`st-00:PLST,y"<6$<N#Bg"$969FN"9BN`,y>9FgSG*yA.a9g MaAa΁:987LKJIHGFEDCB18pB D"'paNH,xKA P"PXXHaL/ Q"H N.&WP ."<N:+@ P S"m "XT"Q/ ,S&m (KJ"< XgN:(XQ&_BB kg kg kg kg kNqJBRn"_Q N.C m X"RSg"P (" (X#@P`BC m PP""m N.LNua(J  K"m ""qPN`HaP`@JgRzNuJ m "pP g$" m (pPS L$I""$Q`` P3210/.-,@?>=<;A19pA2]HA PJ"H,xHE6 a2L/&IP .P,SN @I (g @BI*n<gx@~0ٴI5`Ȩp6 44l_$@oS0`1oK0fBR~k?5 $ T\H0nPilзT!fJ*0FI ! 4Na%Ops~h L@?y8?icZ\% |VBUJPDt$84jN֘Uwj RC@/to@wD`=$vW ,LtT6@"@a8@/3%>*4!`;-y+_~x䲵 ׀fvt-{@q +KfϛmI !d 24X,4SZkN. . @Å <@APjb%I |}"XHab@?8sAC+}Ҫ'0Jp{FcfF:O1S2_) )s)Es?.JPxq/1<; p`/̀{P}( An+U     @HDLLBJFFNAIIEMCCKGOO@.pu".0P6`.5Ю5.0Ю3d.0000.004>b.606=>8B'[jL3 2pF)` h|kZ]0 @M@\򀪭 7Op^}ui@Z-B>h8쾮 %((ύm~( NXG1aXq `X !_fhP5 k`b`%Q"`\:$~\Xj) L Y,(\o@skc,'0}B 0,8xn( DP @d Z )fN)gkh (0%a0(40Hg𗄼Ҁ AiZkdEB- 3 OP4-ʂ@\m8RCbRl~匠$qdzoex6Z.g{;sgz?=zA\ !WT9_1NGx~>JBt_-0Yu#80¹̃ B?I!@̈DH0 m }*SPXr7@ZMdM1P\zT 'A? 6jT]Ѐ<E-na~E3prLr5"h3B]/AX2"RV3%Sh%`lMv.L6euJ%턇"(MOġ_a#e σi V`s5/CS4R2$_A^@Ogx= GUH , &#hx!9uDb";?X&`)s0c7qW;{Ptx:"S?)$sƆ1{043'#@{A"A!wٍÿ̀#C @ f?3 O1*͑ 8bp<Ǡ P @ԘJL<`>|(ǘ#('x*A0''>\T%wmm@zwqqqqpA\zqW$'H8D(m x|A, 9O`0;MD|W,v'G8Ր @Hm@z$]laVd`j IYט@ 5MY/pюc#=R?wW\m㉯8.\qݯ O(&Iuy. oǚ\\~`&Hh]Rlqw{ߔT\GqqDe4xWq ~g> ccl@ *bW#| 0QefPPDi0_jtfSQCanOd~ 'BH3P!ʡ l& \ W';Йe*bݏ,,lVZ%010\F0:0-sLGfH>%@G L2SgmDR (  %ꐦ_TX4ҼAp ƥ'H^! ĭH Rh֖_+ Tv /ZO'!ysG ( {Ys!%bCAXCncĐ%b$6@REKZOu h(Vk^xU<z!(4 #C c h H9Ny i爵: r+THpa#`l= 4ݣ$`C $iOs`&ILA}obA!A'_N~}]bB8TsK# ~ D}R93֒GN%a; Li!6BEUXN4p+ѱ? /06`FZ];0|LGO(kZe8(ilc3 9;` Dޣ:poQ C7@F 6L"`4`gq D|]2dFy0$6&_?!Bo`;`& ؐE JAQQ8`H @F"W1.%QeQ:I_87J^6`m?/_*yy_>`0\_$J!$8@A~=#N18YEawB #Á X'J`lR a$ QB) QC\  @i [bA= D_À? _ VhD v'AH3sbeTĺvXٸC@ ` A gBm kP2B>𶨷@@=@?`8ޠX~A!@I#C׊Պt$u)4 "'_Oӓ3880`0aK P#H5v#~z0܏axx0&cp¦PW;S+)?K&&]'''L.bF'`u+c'a+b3PFcx0@.s;4?niFRkـb< `$aEv dp&as ` hX~ n?@? p!qp< (p*px*Gq$P E,0klp%qx-1G\³[P=Cp Ȼֆif@D!6],Oȃ$Pȍ0:̥qFOʺ`E$Zy7 n~S8XPpwLM61Y34 *mX:lLL`&pH5hw %)BU.Rjr|PBRL@`&<3 Xj 7o?A('\Q  N*~1 Q45?T]C%G!KXZۆf?`-8 f?s  eBm+LPJmrµ,itwpckDi`  b&P O&|"+!4 $ H3 j (/4' L^MeeI(D89Wzy$UEe DEDDUe`}x@x! E ޿>GǿH/}\h8@]PFkIT\q[7pT*Z 9O@E%EH[Ǻۈ((pA8;8m xXaፀ_ Zh@ Wـӹǁh,  %sB  = qqR 7Desru)s W@[DP}5Zv `dH05fgUwAk!p qbDo@/$ٺ>@GuB4 L t` <%^5DT,%`PrnO{]"$ػz dFeTUEdgZ.;\h/D;xꓰ8Ma;QL@DT$P} ,%Y0` %<4<^=e9@AX Vo*eٔ% EƏO ^#a=h܋@ e .Er 8/[bH Oz;uDݨn7I ̱؉lAo= pyˆDC"/3ns3y?5ۄtFH?_lgp`hIg @ *쟘^5.hf#`~TvGLT??Pbm}jajB'p?c(S 5RB_<Pjt?})  A1p`b0J#PG@0 Eh0?9W<2 2{I; r!".I=8`Y`ل .7"HR!QE}xx_@+ [`@l2!8'D%aJjF8@1+D `2ez@2 !y3/M3k0 CX\q X Lf!7TK,XMPNv>Wma3<8k#FlLр94LHcI3.D:3&2ayv@sQ'+e-ñM /f_-$Pxl;.z6N7KNf3DVCAhH g#SA%Ұ3" P/z|-|pI-N(Tvutsr~}J 22p)Ф) 6p2$HA PJ"H,xHE6 a2L/&IP .P,SN @I (g @BI&fdu7M2٩d#}Hpޅ0̀I(` f˃7:9#H_P= Y33u03R RitCHN$ I(fC`F(0t 8KbxQ91p?˝q \!-I{PD&7%#BHFҀ~xiN(sK)#ݰ(!(X1q&mi8I єC@Bx: @9 4& LM m ` 돑$, fqŻ<eCÇVyB &m 0AϧpVAHـ@zA Pl $fh0B@ÄR:PDZq|k"^̮z `95?s>8p@ 9傒f9HL@;<,Z@Hx N*{"aFd w}"mZP OHWx.  1,t= 3p cYA+ '^x"'"@C2[CØ@HP_ݍ-- O7F(2$ZJ`>)(>ӉRLKAPN@ :BFoX Ͽ2!y$bSm3<6Z685AԖs(fa>! 䓩 ` µGH?1ABbH Z/ 0wdpaT[_0CК 2FE6C`\ C*a@?@#N#j38"&Ce"֊*xO'A&߸6xBRH .PH_yBWo 鉊f,t$y6 d X J ΆdK&;tyH0t8 qeBq*0f fI r0ꠍl~X@6.` w*?$89_P9a\"٨tA# GsdPz*et0f|I7N( C $y  JDA(he?a 0 ,B6 aH H0MɅ` S$71O w\8b ̾,A%{Fp GYʸB8F#v..Π^ƀ |_W Ju ;@y)2]H1E!BqdO@bWXبi ۽DLI]m*T žu $L @2Ȁq'^?` M0 X 2 $ \{U70 PР&v 8>!QUtAn<9^MD0 j8/1P+LpV\s xKn H.0 LP@#?,%ɀJC䠩3b _&D2 XPdw@@0.Vp !%#"֡WUQTTV,&.!%-#%KֆJX0(k22;OWGt L,mYX=܌lh98  9  7q eɺ!1$;Gfeh2 wt0x0 1@T;D {CP2w(kdWJxdDz}Aa38Lh|p`?e\h`ǘm>ziZ4 C쵅Q~ϖv1Ah>;? 6s X6Fݏso2M{3YhXWU+Pv\AS.^u%CL+p?atsxq-ق1F|LxDJF֮s ~ t2<D+;U5e~t8`@!>ZSw `9/"p=m,UTQTG8`?ـJXws'7NA=?u3?Sozo;3J,'A0'A45/p*N }9'@DK瀇Iиr 4!7]'&%:9876543210EDCBA@?>=<;PONMLKJIHGF[ZYXWVUTSRQfedc!aX3p cp@6HK6A"P$QX+IX+JHaL"mQ ,xN.&mP ."<N:+@ P S"m "XT"Q/ ,S&m (KJ"< XgN:(XQ&_|z kg kg kg kg kJzRn/C m X"RSg"P (" (X#@P`.BC* m PP""m N."mQ N.LNa(J  K"m ""qPN`@aP`8JgRzNuJ m "pP g$" m (pPS L$I""$Q``HKA"#\$#"! (/.-,+*)#:x,4p")2;|HA PJ"H,xHE6 a2L/&IP .P,SN @I (g @BISRQPONMLKJI^]\[ZYXWVUTih@?>=<;:986l8pA$. $I{I{GC(I$xza|f(r;atV;!SCffN taNfaJf C`pa@UCkfpa6\C` Rpa,gC <pa JC; 2aB0; 8րE8"Sf`pvJgSfx!CSfRBJCNu     AAAAA AAA AAA AAA Apy@Щ,xN.`Q gE}Vphic,dos.librar]Jp У[n:<4>@3\|u@_ON^n~   <==a@;I-ch<f 2k88U0']+`^܇m:'H]$(( ^~}|{zyxwvu$k=I@'',yCBNhJg@##nj,y yj"BBN"j rjf,y"yNbBNunrpro 2dos.library  $*0DJN^jnxwvu$*+gfedcba`_tsrqponmlkj543210/.-,+:| H7p*,2:yHA PJ"H,xHE6 a2L/&IP .P,SN @I (g @BI&eN(#i `"ƣ!Dq7`bA!Ԃ`iɲL/ &BH`B Lȡ .ЄIb8>@ O@ *4*2ψ#Pev&omB@F JQ? <(8*.B̬Ƃ[Lmh ć$ i qф, t 8FޑФ/H[)tg ǐH ⇲5T$11D9̠(p|hRN4|xh=!x@H1hs B( Lb"b. Vx=S3?QPX0D@":Hh*G_'@4 `Nh!"C&?BG: r% f0` I f) ݡd[DB J~@ O*AJNO|aX[t6FNN?c'SS;9@{uK;{w^eEhE\PZ(_󃿍X?G'遴 tgP;$1r:pTڛ~hAس*/^0!4b!=l@'B^Cx!LA{(u&)!$8IrU~r#\^.hV@ VWWWƽV W-W$-(KY:*@O}j%P Z5j>uꠛh4?T H armA $!  |C +L| FV&FG$'ey@`6@3Q#P9!4؀9 @#,"F#F Gz4 @ ң`CD躸*Ct{C>y}?s^'9 I92a,h FXv%֎> B0\ JAT |jpv 0ӃoMcNAAy ,6 e庈a!X"pe>*0 @ ŒC=x7c*S%n _[HW_i@y _Ij :_K2^c pF8W"$YYYaf^<,t?<ԃ@ir #ЇAjkp(GIڎak7q?{4gfVC(d báQ4\0@B"$e 4ـRKTVFP&J8?Y {Zj&?H<|anI@-RoY1!r6("ooA(`'~\@6CP (oFo8 @)QX >a"c@FA;#i#G&F2_ZFG2lq1 tӐ[V1CB&P@C1t~~*1W ȆF6\ƸB4$Ʀ" ~&6_8 "MXMn)̝ lmA<2u2ӄ%(E D #JCЗG `h~*aAS7 zW]8??Rc7SCP.aU24 "V`nP0ٗ/e' ,a#=a9S-]-mLcXDf:`a{w-A14gi=R s⇀1UƖ`@e{eC7^B˒ sA* JӁSPЇ(=f)JPB66x3Bəgt@8|o. aV 8|=8>n?㛌\.ͦ ͢S>x4t=׃AA_ +2t>TN.lAjJ!؃Ua Z[8*3,,;:Y<,-L, AO@`#FbGd{ |qP(7oъŜMLMxAq"4 45 cp+p% KJH}9/&RN΁b !13 \ =L0"`w^|>aR:0&`85#a.EaŅ@ NXdޣBy&/aJBzP|By*0hH @?+A`O?/PAL1[P>e)O8d@9н`e3ʹ-yv4y63aNM8yw3Azk]d~!kk keB5֪,8eioGP^hGY Mȏl2|-kH kCh|C}go!x~hy7lPpA-|.i4(?=VYVإ78 ]ig"0N:&U'=eᫀϠT 6WlCIL'w%Pt?}>6sH[-7>`!r!H4{b_auG/&<,(|cI  by-oքaA``P| TAꃳUIƃՁ鍲C]JuU UKaTIsu!:*j1BUp UU C~/ͅ ņ?Iv# blRSO2JS#yzӃC?' rKA 5 kǛy* 5:a<;NlgMxHM8>ac#=|r^ d  @BK`rS1 `ˋGÇ@zp1`Ry?o?ye@h{x OВ1qX~cad8 60C@hA^l ^cAdy:-=_Z<_Pjì?=8`񙕈82JpCF!x' X"B%4 89':604- H$?cyA(Q"`_~ P l<0DZ^~ndjN~xfC|爻BE Bja2a3PG⃸G9Lcb FpqX3 fJfVf/ބv5B(~?4צ\xpBBi Cn C usP n@tĈ @`$o2a'8ǢOp iGT΃殈,d8%Q@P@C|X~AeiP@J/!u@(2P:lAhLlX` s(8|< [Ukɣ*2l,%8.d88H,xKLN:Jg0A aLNH,x"z :N.LpNuC&,xNh,@N"A$vRJfN`dos.libraryMega Crunching Error: Can't allocate memory. A*""zt$` ra"Jgf Bf0fad r a JBfra`SAtgQNura^BSBrgQ3Q` DQQԳl~ravrJBg`v BgBv Bg,ra Bg BgZB6`$ra~^B6`rar6`rfa2er`rfa$d rfaer aFSC2(Q`pNu DNu D7%IKJID fPLSTp%9AQ NuGވ dgՑQE h @4:T*Fv@3j ưxKH- r̹WfCFIcP$tP ÎN;29ߙ:`$;B <$` ZhPK`N7AA b7*u{@ b0 džaKp&|5 N5@(\Ree[;͐!I*x@A~95R:P'@oF$3L +H C& MK# 4(8xQ.h >p L(@ hGa g2t@q`V1,-UTOQ]QFQ 0(]B\! :@!dD0NL:y > &˿B؜sA][c 2XM1@h >^X- @r.3@*@4(v 7eC%<<+f4Y3 ÿӿ˿ۑϠ[4CJ0p]1sDJY Hp  Ys DJo M„|H_ " HFY OPA@X H` lv(&|~A8( .0y"PPP PsT`_ X1L8v13#CW q>Nv&zJ2bb\ a @%hF,/5,X)Hx, ԡ-x8_xUqA'Xł!؂?3Â//OOOOGq $A i  #@p4%Er~???????????????>sV%=_sxb)P!$IX#x_D !3D V22 L    q\ Ibf80noE" @$qV@20Y28@; bydddՒbb"B*% *VgC=m U%$ @"wx! R@!d @# $@" $ " ^6C<ʸ{g'pe =8M u78/.0kXLIBGa gc3@??5$ܞvmNٛLHj/N2 ]"2ǖ %>̨zb.$SW pq # ~ `35(@46@> fE3B l  g \Y. bLJ/@@ @ @@ Bv( &~ kDS)@F)k\A6CX?ˆ}@j] iH@C ,mZh\s ?<@^ g/3W^ fo5@KS|@' 1|@6oȂ?3_ a$nſmk^;<&./ /T_<Ќ ǁĥtP|8&<~k <OJH Ĉ +_(ph@P~F;(|XxN|Nx-,<D7 8`ċ!* . fWKd<" St/(A:' >,xɄ}* 6 _DH :荌"+7]?DB g\P, dk1C‹V KRt1h  K1`A x;s`2< 4 =po耇AI@塉8Q rpsIc&Z*1eb|,BDK{ kC =euơ =X_ ( A0*% @&ALPbA!,2aۂ"D_ 8Pp\P耤A @ "PB(9wb ! Q෱8AP#Ŗz8T@W @   VGgA@/G?O@HmJG,q2~exN#9_đqex.Өr뙚`Hs *Uc0 \fp6`!DS?DS@DSADSBDSCDSDDSEDSFDSGDSHDSIDSJDSKDSLDSMDSNDSODSPDSQDSRDSSDSTDSUDSVDSWDSXDSYDSZDS[DS\DS]DS^DS_DS`DSaDSbDScDSdDSeDSfDSgDShDSiDSjDSkDSlDSmDSnDSoDSpDSqDSrDSsDStDSuDSvDSwDSxDSyDSzDS{DS|DS}DS~DSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDS DS DS DS DS DSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDS DS!DS"DS#DS$DS%DS&DS'DS(DS)DS*DS+DS,DS-DS.DS/DS0DS1DS2DS3DS4DS5DS6DS7DS8DS9DS:DS;DSDS?DS@DSADSBDSCDSDDSEDSFDSGDSHDSIDSJDSKDSLDSMDSNDSODSPDSQDSRDSSDSTDSUDSVDSWDSXDSYDSZDS[DS\DS]DS^DS_DS`DSaDSbDScDSdDSeDSfDSgDShDSiDSjDSkDSlDSmDSnDSoDSpDSqDSrDSsDStDSuDSvDSwDSxDSyDSzDS{DS|DS}DS~DSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDSDWDWDWDWDWDWDWDWDWDW DW DW DW DW DWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDW DW!DW"DW#DW$DW%DW&DW'DW(DW)DW*DW+DW,DW-DW.DW/DW0DW1DW2DW3DW4DW5DW6DW7DW8DW9DW:DW;DWDW?DW@DWADWBDWCDWDDWEDWFDWGDWHDWIDWJDWKDWLDWMDWNDWODWPDWQDWRDWSDWTDWUDWVDWWDWXDWYDWZDW[DW\DW]DW^DW_DW`DWaDWbDWcDWdDWeDWfDWgDWhDWiDWjDWkDWlDWmDWnDWoDWpDWqDWrDWsDWtDWuDWvDWwDWxDWyDWzDW{DW|DW}DW~DWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDW DW DW DW DW DWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDW DW!DW"DW#DW$DW%DW&DW'DW(DW)DW*DW+DW,DW-DW.DW/DW0DW1DW2DW3DW4DW5DW6DW7DW8DW9DW:DW;DWDW?DW@DWADWBDWCDWDDWEDWFDWGDWHDWIDWJDWKDWLDWMDWNDWODWPDWQDWRDWSDWTDWUDWVDWWDWXDWYDWZDW[DW\DW]DW^DW_DW`DWaDWbDWcDWdDWeDWfDWgDWhDWiDWjDWkDWlDWmDWnDWoDWpDWqDWrDWsDWtDWuDWvDWwDWxDWyDWzDW{DW|DW}DW~DWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDW DW DW DW DW DWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDW DW!DW"DW#DW$DW%DW&DW'DW(DW)DW*DW+DW,DW-DW.DW/DW0DW1DW2DW3DW4DW5DW6DW7DW8DW9DW:DW;DWDW?DW@DWADWBDWCDWDDWEDWFDWGDWHDWIDWJDWKDWLDWMDWNDWODWPDWQDWRDWSDWTDWUDWVDWWDWXDWYDWZDW[DW\DW]DW^DW_DW`DWaDWbDWcDWdDWeDWfDWgDWhDWiDWjDWkDWlDWmDWnDWoDWpDWqDWrDWsDWtDWuDWvDWwDWxDWyDWzDW{DW|DW}DW~DWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDW DW DW DW DW DWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDW DW!DW"DW#DW$DW%DW&DW'DW(DW)DW*DW+DW,DW-DW.DW/DW0DW1DW2DW3DW4DW5DW6DW7DW8DW9DW:DW;DWDW?DW@DWADWBDWCDWDDWEDWFDWGDWHDWIDWJDWKDWLDWMDWNDWODWPDWQDWRDWSDWTDWUDWVDWWDWXDWYDWZDW[DW\DW]DW^DW_DW`DWaDWbDWcDWdDWeDWfDWgDWhDWiDWjDWkDWlDWmDWnDWoDWpDWqDWrDWsDWtDWuDWvDWwDWxDWyDWzDW{DW|DW}DW~DWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWDWD[D[D[D[D[D[D[D[D[D[ D[ D[ D[ D[ D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[ D[!D["D[#D[$D[%D[&D['D[(D[)D[*D[+D[,D[-D[.D[/D[0D[1D[2D[3D[4D[5D[6D[7D[8D[9D[:D[;D[D[?D[@D[AD[BD[CD[DD[ED[FD[GD[HD[ID[JD[KD[LD[MD[ND[OD[PD[QD[RD[SD[TD[UD[VD[WD[XD[YD[ZD[[D[\D[]D[^D[_D[`D[aD[bD[cD[dD[eD[fD[gD[hD[iD[jD[kD[lD[mD[nD[oD[pD[qD[rD[sD[tD[uD[vD[wD[xD[yD[zD[{D[|D[}D[~D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[ D[ D[ D[ D[ D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[ D[!D["D[#D[$D[%D[&D['D[(D[)D[*D[+D[,D[-D[.D[/D[0D[1D[2D[3D[4D[5D[6D[7D[8D[9D[:D[;D[D[?D[@D[AD[BD[CD[DD[ED[FD[GD[HD[ID[JD[KD[LD[MD[ND[OD[PD[QD[RD[SD[TD[UD[VD[WD[XD[YD[ZD[[D[\D[]D[^D[_D[`D[aD[bD[cD[dD[eD[fD[gD[hD[iD[jD[kD[lD[mD[nD[oD[pD[qD[rD[sD[tD[uD[vD[wD[xD[yD[zD[{D[|D[}D[~D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[ D[ D[ D[ D[ D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[ D[!D["D[#D[$D[%D[&D['D[(D[)D[*D[+D[,D[-D[.D[/D[0D[1D[2D[3D[4D[5D[6D[7D[8D[9D[:D[;D[D[?D[@D[AD[BD[CD[DD[ED[FD[GD[HD[ID[JD[KD[LD[MD[ND[OD[PD[QD[RD[SD[TD[UD[VD[WD[XD[YD[ZD[[D[\D[]D[^D[_D[`D[aD[bD[cD[dD[eD[fD[gD[hD[iD[jD[kD[lD[mD[nD[oD[pD[qD[rD[sD[tD[uD[vD[wD[xD[yD[zD[{D[|D[}D[~D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[Lc? Ѡħbko#@ 1@}wzb>pRqAt>\xQ1]ڏ3Guigת/2|QAMԖK>{ _{됸v c; +2.]'CTf9 KI{j';6^Iy" G:t"" ΤE͝Ilo'B]pá8Nx~LiO>h !BWЍITT pP/y4% 4HK~;PB) @aQx"oP@ uaZXWΕB nl,W.,X2 l %d 6`8r_ )1E^ \/Vp\/W# @I8|*Y,& 1<TdTBJR?$JEnɄHLd230PЍ5`aVPjY2ТH!i@!!;A aD8ok7Y$?*/ *;j1P $1P ޣ57"*P C PH:U0~,A0%~HPm:stGjDz?a@A5 B }pt&) c\ 1fB#nPu%t-kʝU|CթKZ ({EHxC/(dg\$vInL*nLhd  `!10_" @8-!Qh` ! (+bSB5P B 6va$!'<)Gtx!S$P{P8G$'P>  pvH"-@HLe& 5 Md.blrT?p4XcCO㐍q@,aHPD%C"-(IB$bOX z9z0W8:W^*ACP6ׁO2.jڀtrـs?g2p-Eq930bg044e!ayc*xQ"T9ȸ`!B:9C,bv6J[Q`@- B8:L,lF&f֦\:& dEˇPC'M\s4u2r糰'360350!4vm L,~_/,F2D =s @  Wh@-5st(P1@ 1fT(^u 0 Ps}L fx#Zn. r@$:Ic̤H~t2$HT3d9`"P00 X3F~|,X 3E0 `e` 5>J\"|)R Z̢Dl@>k" u@<ځ"`PL*TXfpyI]B`8n/Q0 b5{θp ^?[z\p M:ˀy7ήM0! \ :H@i/QJD 6H@liyHzU 1:@q)i^rN)ReH  ? @r4iRHP? @~%J(P? @~%J( "E7@b-ZTh8+@m-L!g%Z޴ih :@ulԌZ0t`U0 F\70`4`T 0D`w0 \`QX T+V'?X u`:u+]`7`|QX ʰu`8JoSgĜy8pt)`}򭁉[E_l b?+`~V-[r[`e- lbe4`wz8 p2e#]8p=XdQU 8L#i'o'dpc5 up;*v+Wn\ p?z`woȸOP<x3)k'O fx1nw/A1PhTARZfuL$jtܪPk4)AR)*RT5PjAʃ*TS0 Z3=KP}Eـ\:1KP|v-AFBR4h0 Fi 24dh5({#E9Ic h1(bU+AVeh뙚`Hs *Uc0 \fp6`!DW?DW@DWADWBDWCDWDDWEDWFDWGDWHDWIDWJDWKDWLDWMDWNDWODWPDWQDWRDWSDWTDWUDWVDWWDWXDWYDWZDW[DW\DW]DW^DW_DW`DWaDWbDWcDWdDWeDWfDWgDWhDWiDWjDWkDWlDWmDWnDWoDWpDWqDWrDWsDWtDWuDWvDWwDWxDWyDWzDW{DW|DW}DW~DWLn&7 yVxZDR<\$T2222x+B<-"Z)b.iAhVxZDR<\(3333; Џ HX```````dOhGKE,'#''3' '+'';'A' Џ Hd4d2d6d1d5d3d7d04xZi hdlbjfnaik!< cFc&cfccVc6cvccNcCc0xZ hdlbjfnaihbdbg&xAєɔٔŔՔ͔ݔÔӔpS ffLff,fflfffffFff&f?fP0HȨX8xD$F&fV6vN.n^ L,lt\ԂB"H !` =n! 'U Y!> 3i h @v|@maOLo4@a2*f G. ` 8@[ lQR k(| H4B x LTRp@A vP Th0 ``)@Ll0l qH3#X X(D#`F0 P p 0   oBp~ S f@c+4 AOLcC8O9+ћہ@B?p084<2:64> ......l3, $.8.N tdLB($@ p&d/^̖ȏ߉C׀y~9Fs5?nLp@{w)wi@ ̴'ِW;~vcG> O >'_rxxI+~ug`<|jxL)>~yoǰ]w_qS 2aAe_9/3s! r˟R<3:gy?“OƤ&??G>  8A`4 aAx A y@C )g l!0ar&{9 ?|2y>19?~yi/;<]p3sy>|#ǹ(o/tִBlfx053mj/?.v~ac,|sDP_ !pyLq'PR=  <" E?/x >~yKCs!`/O4K! q9G`~~d2zbgx g>/g# Q"πϨ7x?N)7a>4SOGb@dw5}a0g%""  fdCSFO`~ o( g a\d8$ؿwo<&<~q=qN>nzgϒwq_0xX"dDo!~?<mY=█'.*Qq@}$ -@B 5>1 7`y=U B@gXsA?q|g1xl%*wϠLrX"ޞN'vCd"0N0`d矉Ϟ<p! WhH]pqj}9&TSF|A$n Haχv]b)b)f7?kq(f!cuF\p|sxp22:̬ 3 t)<0?ѣ pX11v=^HREJUOa^aA~8By1?B8`"" (Yb NP0T޶?yn ӏOtD2虰=`l@cH4L"0Sqpg r)- @Pk& d r ' 6"UI @=$)"(8"Upp"D.`T ( L $$'5# ġLsM3.C={_ui1 d A]KCtyRgx}_v^UD5Gwnn~?=$cjX*w;ݾ& <p4X~H=s hn;~ r6a݋;;Cʀ8#铟8%1=[bOttL ,#Џ%+ֈ;8>mEOt: -utBtBtzo3ka޵=?]oJ meƒO :y&$'dqȀ|p&Lɜc ( @AAzE?~_Lu+0E!Ht/7`| O|g`m@+ `/~P AH!((A< pwChl|GPInn(r`$}ɑ$!B% ?V (m?Ȩ PJ= f/LUC `A'F_/ij M,]],]-dΆ偔1](1I- pPa@#n1`!0IȀG&Lv ^F,Y86q3!7J5a (@1H\\{ z}Av. T. t. LiUw`@ tP-Aɀ/1lp@ ?@DFGXq@^q(A 11 ` ԇ@8ӎ ,0Pv85 %tsP# $1 `9c$*$:hVx`@%ɠ?Ö 0csp P%PX b@sCbu"HS@r((`ǘo-f0&a.΀+xx|0IՍQ^Hzć _2x و2X L j n qI7OO ̜ajEh`jL,%XHCw 0QLw f* @*POoX RBx*`,y  8R@) ' `P@ 3%@06 $p]8 Hp.[C:?tzz,Zp-@ #||||cAx%Vx0+aw6 aO S8 p0/8Q fO @jz :'Io.0'L%*>`x8אF R%!U(V NZ0%L&U`48 / 9<p'0+W 7톡[!l `P'a*/`0D/l*0 x`LbH>%  $gc8BBݶяϵG2dC ?XD9T^| VyX= fjӁENA1!M 2 YOP>1Aq4 `hbQS-C K\\XJElPò)lw*<P{: .ͨC?6 7?$:iNMIO R)O"@Hni=E:|@CF*\D, TS/u:ӠoAсѝAA I 0b&@t1(&ẢhMg(~=GKʆxyTP$/wdPq=9imLAfApE`%$qB-P;TͤB$OD~M,sf7^ %Za/FNbܗP"m \XLy]=K+%o B! ۀVG@.PS G s~(Ú@&+w)MI0O\ShmJd#1GGH<.``3" NJ x}$Ä^:!S- !q߻pUpDZh'( 5aDAb?BmtJ:vtxi)nd2 ~p?))n+B#0E"d\J'Ll$dLG3HHoPFB`86@';78` s0{':D{ -(9@oxd|׎?L`h`LLzrO0OT<\b(ͮqPj(vh P2 m/X`bbĶ:И-BPG8=g&0ڄ9 g~Y$!~gߐa>N<85C q6 rXN TBDueJPxjB0AtB)΄,zGVH;@њgH44_b7qʐ "AQWXzr~(.N춘An%T!Чc|` /bJ6 94mB=H(& :AAO m?-a2. &, % $h`0 gX:! Nz5'@&C$\C$Ii0^a  3 ,__FaF~ܜvP II@ O!T\"9b pxdxir )*(SpI/@c$>>^R$3#+LD~Yfp !id%ߦ pi2[hs!fc&j3u20@jb 2srB@E&OE tt {)z40Y֚P[{?:=!iy qBvs$=P@5L | YvK_DO/v0Xd8@@  3&t~yd EJQ,uiJ' b$D%8)) ( #@%(DF@5s&v? AV@ybD&r0&RC|sS}Og]lF(s] ڸ宎rQO__l#M|C$P tQ}}D6X/u*2O:Y$#@YCRoC쏓0~0vU#FyP #A촆 ,24% "*$~CL4EKBx(J!P) \qǺTab@]P#$A.bV)@$;_(L ]2f3YH0r#?l,8|qb Sr9\O(0Z@jL ~_s4/$X . =S;ad PH$3(cP ΖT>$ AXf>kM|M|$p?1>2y8!Br,"[1+a`RobzL_II2}&e*AeBAO |( D~##8@9eόD@-Sh0R )y\Xh d(7P(4H-?*Pk Pikh4 BA(}B HLjX8SE 8PХ-z "eL6f ;`!Z^g 0)5s:/&h0gBM*@M Ʃ!Y4JQ.$kPP'Ed`IcL ʿr@& _t\:[Ag1n(Ε|8 p#RxL*ؐp!VNiGN`Vxh?!&%Xô!LS,~_GH@G +><,.;d`k %_!{,YPYf/5b "JV>A[le,iD5!b&y`6nt1@.VjjV..:Q#?a8&,ozp000I49(#@FhzVo nF F%99 Дaq )~NH) <PIX5%%* `@# }TPn< @@ L 3S3Lc`v}2`x|`qJM}/PL868 VCxA0 p9Ӡ'5 zH= @%`\ I?̝Dܪ}a3BF{ 4'VEI^ !0yp=  8`q`YaEfw"`;h=1`@dc`JFG `2 28B}`ZxO԰rNDJ <{`zb 8 s8f\i H.>O8 nrK(HF9hNwlf"l!v+b0 lsAD8F4 Y BBD 5@ ("H&j($"@1̄ "%6C 0#@sC_a \* Axɳ ' c0];ۛ;3.cHq}z #>^x 8/LXÀ  p0.aPÀ&F00 P``   2hYAyAA Җ- |@@  8  8 з HXHI  '#%!&"$ `xZiKpIRiai'#%!&"YXXXX7 n4@st-06:sun5+$@st-05:sun5+$@st-06:sun6)#@st-05:sun6)#@st-06:sun7(@st-05:sun7(@st-04:superwindiW@st-01:sweepB@st-01:synbrass@st-02:synpia @st-07:SynthBass @st-05:synthbass3@st-02:synthebassn@st-02:synthpiano @st-01:synthpro-dur@@st-01:synthpro-m7!oll@@st-04:SZUM.FUK|@st-05:take H@st-07:takeiftt @st-06:tallic8@st-02:tambourine@st-04:TAPCLAP.FUK@st-04:TAR.FUK@st-03:tb.n01@st-05:techbass @st-04:TERINATOR.FUKO@st-04:TERINATOR2.FUK @st-04:THE.FUKM@st-05:theeggV@st-07:Timbassd@st-07:tire2vossice!@st-07:tirevoicee7"u@st-05:tomS@st-03:tom.e01F@st-04:TOM1.FUK+@st-05:tom10l@st-05:tom2@st-04:TOM2.FUKM@st-04:TOM3.FUK@st-01:tom4*@st-06:tomdrum@st-07:Tomtom1@st-07:Tomtom2 @st-05:tomtom4@st-05:touch@st-07:TouchPiano@st-06:tourston Z@st-05:traksclaps@st7#HQ-02:trombone @st-05:trumpetsV@st-04:TSH.FUK@st-05:tubes@st-05:tunebass `@st-07:turnitup@st-07:twoelse@st-02:VeryBusy @st-06:violine2>@st-05:virvel.ss@st-04:vocoder.ssF@st-03:vocoder.ssF@st-03:voi.asc@st-03:voi.yell@st-03:voi.yhbhbW@st-03:voi.yhbsbH@st-05:voic7$sFesV@st-05:wabberstring@st-05:wap-bam-boogie$@st-07:WarmLow=T@st-05:warp;@st-05:welcomek@st-07:Whistle@st-07:Whistler&E@st-06:wind.long@@st-06:woodblock@st-07:wowtlick@st-04:WOW.FUKC@st-01:wowbass @st-04:YEAH.FUK@st-01:yelloblastV@st-02:zerodrum1 @st-02:zerodrum27% 9})@ @st-05:trumpetsV@st-04:TSH.FUK@st-05:tubes@st-05:tunebass `@st-07:turnitup@st-07:twoelse@st-02:VeryBusy @st-06:violine2>@st-05:virvel.ss@st-04:vocoder.ssF@st-03:vocoder.ssF@st-03:voi.asc@st-03:voi.yell@st-03:voi.yhbhbW@st-03:voi.yhbsbH@st-05:voicLTOA|g`a610QNqNqNqeNuprS@Sf< * QNu Htx\PN?@j0 QjA=|`)$&5@D o?Pf=s@ Y;ҠF*PcJ#Q 菬6`( vA5_r& ''e jCZ6 $G |!=8@Q0pX5gz^?>d5H# %N▄@zYqQG^IEU-z;rJq-SG g@3)<>u$OqC)R7 0 . զ80@48\DPsS 'lk`+%Ӑ'ͪLA.=`"F ,:!<ʤ^|hg @KTB ?ѴeJ =_c:F}ʘXx& H2 DWlM8%& _i-. x0kn^Qmo"mn6=/Kl=@qX8 dZ`h|\ 2q%gS̀3GmDd Ǩ(CGL E~(+I{LI]Π쉨2(L$ ,P`89llK  h[( Ci&ļH:/4R@(P99̑`@B0 0P#j R`3&[G4Jd@$Fp  ݸ?ڤG{jEPp$C EL<(nPV0 @&O[&0Hw" D"\[qD@DDdb &I ';d &d9K3pK, xF뤰0Ò8$&pb)#d@̍C|C3 =  `sM@O#N@TL6'~XHtPT8rR H đ' MBv|v+S҇xJH"H"">A 6 I p@B"EH |?`b!o%dJf`¼i| `Kc&)\@Gq b &s!<<(B,FLV#>=N'`BL'pT  \-lm} b܅O`ly˗d ЀP5F)L$tP&&嗑o}/  |q_?$ 8ku>?0Q_-`/㏬||q3! (L`B '?8|@_@jQO7eO|-&`,X"gFo4~ـg6?DXQgzq$i_0EQlnOzu|{=)~G9 d#X8i qΘ<Ir db2sįEL`7Щ胀Op"]b0L!ũ, 4/.,pPw"!o` x#?D h? 9Eɛ/Cch )a  ;AK 1 A:O$C)c,( @ð)$NNv;X@`Atɀ/@9XHA#)1rvDpf8`Ed'q0AzK L#+{P5]N.TC$x x"L8@Rh|ٱZs` _@st-03:par.3$@st-03:par.4?@st-03:par.4b>b@st-03:par.4c+\@st-03:par.5.@st-03:par.6<7@st-03:par.7:@st-03:par.doing@st-03:par.hu?@st-03:par.noimia@st-03:par.p1'!@st-03:par.p2%0@7rst-03:par.paranoimia$ @st-01:patbassdrum@st-02:peck T@st-06:peoplemetall@@st-01:perc-agogo@st-02:perc-bongo@st-06:perc-drytom)@st-06:perc-handdrum@st-01:perc-timbale@st-06:perc-timpani@st-05:perco"@st-03:perco@st-01:perco@st-03:pia.n01 @st-05:pinvoice@st-02:pizza\@st-07Y1:pizzahigh .@st-07:plybeat @st-01:poison @st-02:polysynthV@st-02:popbassF@st-06:popsnare1@st-05:popsnare1@st-01:popsnare2@st-02:popsnare3F@st-04:POWAGAIN.FUK@st-07:powvoice&@st-02:prelb@st-05:puls<@st-02:pulse @st-07:pumpuptv7@st-05:putv@st-02:quintb7nUrass2(@st-02:quintbriteS@st-06:raphornblastg@st-01:raphornblastb@st-04:realclaps@st-03:realclaps@st-02:reflex @st-02:richstring z@st-07:RimShotX@st-05:ringpianoV@st-02:Rock@st-04:roombrass*@st-01:roombrass@st-06:rraid4 7@st-05:rubberbass@st-02:sanxbdrum*@st-02:sanxsdrum7X~@st-02:sanxydrum @st-07:Sawteeth)@st-06:saxophone@st-02:saxophone@st-04:SCRAPE.FUK~@st-04:SCRAPE2.FUK e@st-04:SCRATCHMORE.FUK@st-04:SCRATCHQ1.FUK@st-04:SCRATCHQ2.FUK @st-04:SCREACH.FUK@st-02:Scream@st-03:sd.l01 @st-03:sd.n02@st-07:SdrumHhat1@st-07:seexbeatmn@st-05:sequencer @7ǚROst-05:shaker@st-02:shaker~@st-03:shamisen @st-02:shamus@st-06:short-s2@st-06:short-s3@st-06:sin!@st-05:sinecz@st-04:SIREN.FUK@st-02:slapbass @st-07:Slapping@st-05:smash1@st-04:SMASHY1.FUK\@st-04:SMASHY2.FUK@st-01:snare1@st-04:SNARE1.FUK1@st-06:7snare13@@st-01:snare19@st-01:snare2@st-04:SNARE2.FUK6@st-05:snare3l@st-04:SNARE3.FUK @st-04:SNARE4.FUK@st-06:snare6@st-01:snare6@st-01:snare7@st-01:snare8@st-05:snare9@st-04:SNAREPLUS.FUK)@st-07:sneeze@st-06:sodbassdrum@st-06:softbass @st-05:softbass7ba$@st-07:soinsulted@st-05:sonar@st-05:soundtrackV@st-06:sp12bassdrum@st-05:sp12bassdrum@st-05:sp12snare @st-04:spaciousweep.ss!D@st-03:spaciousweep.ss!D@st-05:sphere6@st-05:spoils@st-01:spring@st-05:squaresV@st-07:Squareshort@st-07:ssbeat1>@st-07:ssbeat2@st-07:ssbeat37@st-07:ssbeat4@st-07:ssbeat5@st-07:ssbeat6@st-07:ssbeat7@st-05:stab2)@st-01:stabst@st-04:staccatoheaven@st-05:starpeace6@st-05:stars Z@st-02:steel.voice.l@st-02:steinway z@st-03:str.annoying@st-03:str.n01cm E@st-03:str.s01c?@st-02:strange @st-02:Strat @7Jst-02:stringc1 @st-02:stringm1 E@st-01:strings1b@st-01:strings2@st-02:strings3@st-01:strings4@st-05:strings5V@st-01:strings6V@st-01:strings7V@st-06:strings7k@@st-01:strings8@st-07:sumjoke@st-06:sun1"8@st-06:sun2"@st-06:sun3)+@st-06:sun4(J@st-05:su7 ,tedguitar @st-04:DOO.FUK@@st-01:door1@st-01:drake1V@st-04:DRUMCYM.FUK.@st-02:drumsharp @st-03:ds.bullet.echo@st-06:dumpfbass2@st-05:dumpfbass @st-05:dxbassF@st-02:dxtom@st-02:e.sd2 @st-02:echo.pan @st-01:edge@st-02:elecbass @st-01:elecguitar @st-02:electom7 IbX@st-05:elguitarrV@st-05:elopin @st-05:enemymissilesj@st-02:epiano@st-01:erabassg _@st-07:evilaff@st-02:exbells@st-02:explosion8@st-06:FallLeaves@st-01:filterbass @st-02:FlashSynth@st-07:fmee @st-07:fme.22@st-07:fondlemy%@st-01:frazzebass2w@st-05:friday @7 fst-07:FulloutOrgan.@st-06:FulloutOrgan.@st-02:funbass @st-06:Funkbass@st-01:funkbass Z@st-06:g20*@st-06:gato @st-06:gbass @st-05:getoff@st-05:glass@st-07:glassbrk@st-01:glockenspiel;@st-01:glockenspiel2@@st-05:gongV@st-07:goodclean@st-07:greatnation@st-05:7 6Tgrowl @st-04:GSNARE.FUK @st-03:gtr.f03K@st-01:guitar2_@st-01:guitar3V@st-06:guitar4 @st-07:guitstrum@st-07:gunshot1@st-02:gunshotV@st-07:Ha! @st-01:hallbrass\@st-01:hammerbasst@st-06:HandClap@st-01:handclapsl@st-05:harmeffect{@st-02:Harp-1 @st-02:Harp-27?R&@st-02:heaven0@st-02:heavysynth$@st-07:hedgehog@st-04:HERES.FUK@st-06:hey@st-04:HEY.FUK3@st-04:HEY2.FUKm@st-05:highhat3h@st-01:hihat1@st-01:hihat2@st-01:hihat7@st-04:HIPHOP.FUK@st-05:hitbass<@st-01:hitbass@st-07:hitit@st-07:hitmaestro7o l@st-01:hitme1@st-05:hitme2 @st-02:hone2@@st-04:hooman @st-06:HornLead@st-07:hornnote@st-06:hot" @st-01:howcano@st-07:howthat@st-03:hum.d01#@st-03:hum.d02'j@st-03:hum.d03%@st-03:hum.end0@st-03:hum.humanoid"#@st-03:hum.l01(@st-03:hum.l02#@7vdst-03:hum.l03$4@st-05:icerain @st-01:idontH@st-07:iloveyou@st-06:InnerWood @st-07:interest.sonixIv@st-07:isthisgood@st-01:jahrmarkt1$@st-07:jakbodyQ@st-01:jarrehum@st-04:jbass2$@st-03:jbass2$@st-01:jmjbassdrum W@st-01:jmjbassnare@st-01:jmjhighhat@st-07:JungleTune!@st-01:ju7Y=st @st-03:kd.n01^@st-03:kd.n03@st-07:keepfreq@st-06:kermit@st-05:kermit@st-04:KETTLE1.FUKZ@st-04:KETTLE2.FUK!@st-04:KETTLE3.FUK>@st-04:KETTLE4.FUK@st-02:kick1^@st-07:killhairy#Y@st-06:klick@st-01:korgbass@st-05:korgbow @st-05:korgdoi @st-02:korgfilter7Lo@st-06:korgstring@st-05:koto @st-01:ksnare @st-04:LAA.FUK@st-04:LAA2.FUK@st-01:laser-zapR@st-05:lasershot@st-02:laugh36@st-01:leader@st-02:LesPaul @st-07:lettern1 @st-05:licks @st-01:licks @st-06:licks2(@st-05:licks2 Z@st-01:licks2 7'f@st-01:longslap@st-03:luckybdp@st-03:luckysd@st-04:marimba@st-07:marswomen@st-07:marymaryJ@st-05:mechanic1@st-06:milbass3@st-05:milbass3@st-06:mixW@st-06:mix2W@st-01:monkey (@st-02:monobass @st-01:monsterbass@st-07:monty@st-04:moog2@st7#l-03:moog2@st-02:moogbass4/@st-04:MossOrgan@st-07:musqns@st-01:muteclav @st-07:mynamelm3@st-06:NativePercu@st-04:newbass#q@st-03:newbass#q@st-04:newpanTj@st-03:newpan@st-04:NICEBEAT.FUK@st-04:Nightmare=G@st-02:noteman @st-04:o6echolot1@st-03:o6echolot1@st-06:obliF@Oԡ0000000000000000000FA'0 0 0 0 0 0 0 0 0 00`g'???''''''''''0`p` ?FBK0`p???g'&? '''?pg0?Np``` `p7N???'FCHl`?? g0w??''?7?? '' wr~#%~=rR~~%rr~FD^}0g g?"?'` g'%'g'' ?pg0?Np``` `p7N???'7R @st-04:BASSYNTH1.FUK@st-04:BASSYNTH2.FUKP@st-04:BASSYNTH3.FUK<@st-04:BASSYNTH4.FUK;@st-01:bccowbell@st-04:BD1.FUK@st-04:BD2.FUK@st-04:BD3.FUK@st-04:BD4.FUKK@st-04:bd7@st-03:bd7@st-07:bdguitstr d@st-01:bdrum3 @st-06:BdrumHhat1@st-04:BEAT1.FUKh@st-04:BEAT2.FUKF@st7xR-04:BEAT3.FUK@st-04:BEEEET.FUK@st-04:BEEOW.FUK@st-05:bekken1@@st-04:BELCH.FUK@st-01:bigbow<@st-02:BirdOrgan@st-02:blast@st-01:blastV@st-07:blow@st-01:blower@st-07:boingbt@st-03:bot.n01cmK@st-04:BOW.FUK!@st-07:boys T@st-06:bratz2@st-05:brat7z @st-06:breathl@st-05:breathl@st-01:bright @st-01:bsynth3@st-01:btbguitar$%@st-01:btbophighhat @st-01:btbsnare@st-04:BUMM.FUK@st-05:c64.snaredrum `@st-05:c64.sound10b@st-05:c64.sound8\@st-01:call@st-04:CAMERA.FUK3@st-07:carscreech.sonixdb0g g?"?'` gN'%'g'' ?߾ 0 0 0 0 0 F?I0 0 0 0000000000000000F*޻}F+uF,F-ddF.KmF/zmF0{0003  O00s3󟓓~|3?3F1yhpF2DKF3x6!00001111F4x1qqqqqqq11111F# ''??8`!vvv 9| 灄` g ɟ9?O?'?vr 88<`g?7&əσ#<'? 0| ' '?F f 0`p ps???1g'&' 0'''''2pg0''3F!"Oh0g g pg ?"?'?"?` g '%''%'g'' ''' ?F"YF#?WL(F$sF%޻qF&iF'WL<F(zF)F{FҎFӏFԫFXlpp! p``` `w?'vr???7g0s7&`?? g7?3??''7`a ?? ''7FbPxp``` `s `0a?????vr'?3?`?? g?7&~``???''?~~s?'39?~?? ''?~rg0a9FT  p g???vr&? ?7&r '?'?r '0?'? Fr `  ??vr``?7&9?''??9g 8 F'0g g?9 "?'vr99` g7& 8999?'%'?99999g'' ? ?9  p g?FHE??vr&? ?7&'?'? '0?'?;;??0g' ??'"?vr~'' FTwG7&g'%'`0g ?p` `0`???vr``??7&'??F ܥ` @$ J@`  O$ J@` !@H$ K@` @H $ H@` > I$ H@!I$ H@ I$ H@`  HI$ H@`  HI$ H@`  HH$ H@`  HD$ H@`  H# $ H@F \B`  H $$ H@`  H $$ H@` xx` ` ` ` ` ` ` ` F ?` ` F F F@F{FFF[{p/F?3B)A$?`@` ` h|&>0>f?0kF|@kL80s LcYαc@ 9c2c c b|c    0 0a>BndKA` @ @11` 11:@ `  b  d @  8q @ 0@@   0 cBe} 8x|`0~0  A `3X0 c  @`7p0 gX  ߀b30k   d#0 1 8|0  A"g"XfNNuR0intuition.librarydos.library # & ldD.*6,$ B 4n]rh`XFA` @ @11` 11:@ `  b  d @  8q @ 0@@   0 cF뿆`  `  `  `  `  `  `  `  `  ` F? `  `  `  `  `  `  `  `  ` ` F?` ` ` ` ` ` ` ` ` ` Fl.L` `   $$$ @@` !@$$$ @@`  #$O` D$H` HH$H$H@R$H$H@R$H` $H@R$H` $H@R$H` $H@R$H` H@$KFIP`0|||~~<<||||t~|||8l8ll8` 8`80008`0 FX888lD|`  `  `  `  `  `  `  `  `  F꟒h`  `  `  `  `  `  `  `  `  %pW> & @d C"IE.Dpd%s‹t<`'CpS"mpmPwFB (D X2a B D [A(5%q)Z =@ @aL޳0FI#hrfa?R  Ap((HX q 4l;hLy"bm \ ~Y"$&!$M-0AИxPa'F7f @'*gDs(Dob$h  JS] @ =aBL (aӂ* 3lk8QIQ @B D_`7Hq}"A4omЫ6*N#! PPren{|TIĔ#Lns89+a\RCaWoAM|}'; @%q_J/a0NB a< 0LH:Cop? C< 0ޠ HH @8$$! `0ˆÆao&=4DhH4Y xL&bka 7[ >XL] X&"0Hh!イ&#vAG @L {?_|p|}[4*B`¬+p  !\nCa08xÈߟǠM=Qps(x"B8j~7aw {>`@v3o#8TPgwb@j#wpxV@+" A00+3Ly$&,30 1am8-q˘D6}h<k(l,#< ^pO ;P yJ<8'`!F #1%rd>UWCƼ!7axė8V]pd 65;\TC@{ pu#kָx5xtsp@? 84x?@ ?@ ?@ ?@ ?@ ?@ ?@ ?@ ?@ ?@%st ?@ ?@ ?@ ?@ ?@ ?@ ?$/pA@ @, @,P4 A@A] P@Cz@B" 4@CHH HkH3 C`@ ̄A T/XAT/X3B/X@/X` @a[#B X6 X6 `V 6 `6 a6 K   x6 U` (d((( aT 6 ` 6hA 6 `66\B(=` 6a$Ma& %t`6aM$OM6M$ MY6aM$uaM$bB͂,Y͇{6` 6` a```a%-0"a @a  %`-0"! `^p*(*cad jBZ `p*` ]`e`f  a a a ` ` y` a oa: Pa: n`6nt킻 n-aF n1P.0!bB!-J0!qh)SaNv`Ν)`ΝZv`>)_) )u%/` v a]v5a u%` ]YvU` vet@. +H[n}0[=[![K[An %u}:q [n-[n-#U`=#k=Xa=Xd=#'=#A``=#af++tD` @aV++w` `a d1DAC@fÆ8 `ඣڎj8c `#.8wQ.8oT  h " `Bp+  ' *'`Bp&R2 ,'pohDz 8B 00AI P5B 0j& `Rp'`Rh )l 0 A)< 1l  N85ӂp-7@i2p+fJ0ggFghg u1p:g VpYf24 fˆ0'pWYf*0esD2cAn/%v6A&D@l`qD 0nh#mm0 _m" 6 pۃ8DA#]ՑxycA;5fAvf0&kv0`ȃB }3 '] 5ښ p `(Ag8A=o(B D@C0cDA6?lD _B e01t 0 0"訃. 0\ p3 o A! AJZ`@?@ca(AVy`Aa9j *B 42 ɰ @ !" Q1 P1B 1 0 txG@ ?@ ?@ ?@B`h,y N",y NNu ~pX>2 |vpf\VP<6"di+ D@F0SOUND-FX SONG-CATCHER ar2 LoadName:aBX6Z2 SaveName:Ra&M NN28Load LData&M~NNSave Data'INFOBԦ-P-0?`@` ` h|&>0>f?0kF|@kL80sABb!` @ @11` 11:@0@@   0 c 8x|`0~0  A `3X0 c  @`7p%e4Ғ_fkoXbexKpr{~愅u͝< N'X!޽xxxv|woha v1t<|k~bʚ*2A)`q0;?-%YI k#Eŕ# ǻ['!b $D j'UE:xpdY_[?gkuL ëGG+Sc >eMATh$ôp=:N*/$s`#c<'(% vYM ;AJ@Kd"'AAAADE !B@^nT%faB B $ "MM.lFJOM,(!ƃFER'[-c'UaiuUEAR|zIMB!2]Z0v5VЉvW&ǧOߠOZj~M}CC}ŖC2PpX|w|~ԥ_>9<$C ˨VJ@I 0`@O Jܢ孕ӈf~mm83#]MuU5eE卝7AwS$aQ* .ff?|HT`##-1`DY FE%BֶZ B\ 4gP%\+a ޞj}7sp2 'Ϲm d0)  p0ON,*x~|;,:& >3?,)9+7:.-! (~8B%gHVD1ѱ0Wp2??zp}zu>h-{t76w wwmt&ch <tAW˨(1XddԴ"KDXI (=  Hcalpt`!vΎVKϞ.ab y;^]Alyw~P"H&H@X Y|+4oЏq(NOM$--kggjs`H~ѱ0x '[;;[G̬Vjdpp|vj`rdk5!.#׏oxHmx`HArV~qQnN.^A6Fnqe}k+  a | JBRZ \C1QRdJB!BAĄ eJ!q1RX{~D7907x&tzvtpq}!L|rf# )a%h4C>3X0gE+B ~a/rSH%JJOND%@ }h\#], Vߐp+C=MU) cSw<~OϘfE5yшdiAAuM 4O_ hՅH^Q69!8XHP@oNV/[˰,͌ t77^B nζxxrp減_޿|}_}PTt: х`C4`(:93 @Ђs p;dDX_?1qaԐEi8XؘH/&J@Epz44675}Nv~imkKMEYYieceɉ8sGbR@O !!@(^ BRJʪj "@,0g!_>?'VO$ 0P&!@̨0Yn'"=?8!ы}uJbgOz!~pՈj wL x #q. F AKVwϟN 8 8 u%MKB+:>ɀPhT|rz& #ā tA' %% ?Pp0 >op5ӣ@K%jsiy{vߑK×n>b`%A?!#@l\!",)`;Te )^\&V!r{{~}"|x>YonVW`R, Y@c@4@~ @M`BBi0(H`BDȢXh@GŠ \A_]7X Ap;?>:2>=523;8[lc}<^lTt4dt4dtl,(.(i"2D Q:DAHkۇtL$#hW+8;[[^;?#8ٚZ^_Z;NCnH/'9FEG@?('Ec` a?B%k1fq!B?<KXBDOwwP@B_],༻s-l-Mͯm^<<]\7" :!DL% JFBFbC}lXԬ\ D'9X0O8X"{~yҳ0`!"cb!]@?7m<\L vwwO=ݜ΍ ?1y0(pQ)^?CAA#c3r3QSQP B`t倁 tg'gghh((>D*A$ <"|dK ` @P $!RmՍ /OϲqphhXhd:yE |_%0B99><1@ pHHp2?{7BRbBFPpM.BϗG۫k'- Y%l1R˳S3;Gǀ >N8C  =%h^X3*%&<-F \ )D{w`xAJ q0_@ޅrh~~=ZZ>ɏvAH߯.O] e6p|}dZ^i1>z*b|QM0BPH;Ch}= "h5G7 (uDЦ@`J22PQQa`MpX" Bxu@(zck{op&DH(H|5hD4<<8 Ĥ$xXHg L  X ac 0珃ÔtЯ&?A 0RE ( A$C_?>vV}5RFfp@ QZ`I,xHhp  45J ҂~nƣӝ^zoAT '0%od;:J=ޒE@Q`{@(DBظxD$D8($ LL4DG $}=8?F|~&nt@as8Fm@L (6 ]B 0boW⅂L ZL0HXfx0% bA ҇l'Gww` Ow3p CH~yN9 0Tt4$d4,\\LT$8Xx Ib6`5J&GQw۫_^:pbBDB. !Y!7π4[@0 xA>!E0, <:*2"!A$Q? l|C ??<*|hpu yPLPT%Z=j:S][P+B;Pu t5@``  P.t!c >ku OFij h"@4,4B4 K)￯  2A;g "0 <43m,&0Ԡƪ"|h8@h̤۪lZl@< l.p~@+.BÅ'u &k xA-Q PD8ُ t*?BJ `9x (W(A%_"d Za qQ!0H4dK3'WBHE/8)L9yC p \BlbujqƸB{3.~a a3, !h@ b؃-k 4CPK%[ Ʃ}" xh,ΝxC4`VD>CC 9A?J #TXۋ߈G!$=ʉP1; dH&联l}" h@]!"Q[!mY %!P0' LDCt3L3~F|9BPu= m `]CIT$\QTF(7ed'?)0o-@Ҕ-DؤK0H `ԑz UH^ulO %AA@(~c` ,OR S( j\r&(b5tb@H^ q;H"HZ!~ ~}MZW( eJ!DF=Z/ʀ2 <?%\ Ү!Q"C3܂. +c )$BUj`M@(| & Cp9*$"A:]`8 @/<UA( '(pn9pB!@A[A7bȔ ك:sZ-4b jdcR`ļ N(du pBf,{ ᆫ(I8"0 `b;CC'bA cX{tqA2^hFEWq2N4 q0MpL8xN$98 aCA1ĞcpŘPf3uc18<c ¬x? o27߸=pl(mg_&{!Qg.l+C.a@h7`+Eu*Lǘ@9 E0!또~Ewa`LpBx~2 V|#>]{`^0H0Iaf:@v|OB S(o?ϰ%p @ a܊i00Lyrp x'Gtv=CH.twh}{ϰsL@`!6APB (y*tst$  1/<%_ w> ,h@`Ag/8L(DAweBn(U 9聐.yq+PB$ TG:$(>R #oN ߂2P!L0*@"A`:z^?y&1)EFtX``G{7( /Џp?G>LSS!CmD |"| Op pTVLpHXk?ބg @` ljRP (a0I{pOz1T*?1 C Y3 wAae kTa}`+ ?*? ,Mf._]! Tf \(#!g !K ?FtGW5%`mDg(xA.+7ƬP QX N@? Z a5L20Al(QDvB@BM2 '[ P@aNa1ټ QW,BpT> OuyDp H:@g+u<>g4 |hzfeA2>=FPV/ r S tR*!|dAP.@  O">?q^D!_(UqQD=(&Λ 0 !CGnE, Dž 銅Ah~m!ht!_C p' `dN56 aD ՘#y LL`T(R  $ځD{Fl2@ `B@aDLE~x;+'I,] k <ہo%a)`L$\o ]( 21 Z~`.0D|!2cu'uN' pa2QA `gd^aA@I @=odoB$ }AY 0oqT*m$2aB0;2)@# p?nGBo(Ap*7nyZ o+P3-T/t !@> z(9f )K{ s 4rԄ/Qh 8 \׆vkYA<%b1#CwL"AG{߄}I_ Ҁ _ <6??w E~t !w'@Qk5'!G(s5J !? 7iLW"0 lPZV`@A?`Ba(Clbu2`@dB,=cWCx !݊_5 ́*!s HP5\#ƻ9@pd >p@$6k€&n o y!K U(t+V $ ~?0Vp BXr ؁x r~z$B\@RфB' E L(lv`~6z q0(PP@F~pB D "B.%cu% Ȅ4xK@H_@{Xp!}FR@YHt=5D L8 H1υC#J'0  "ȣsF! Fo@k(_y'HN9g _P6! ' [hY@}>pKL# a@/#@ a?4i(Pl `8c8"00omP#3Q  ›(N@}8P]'%"p@C|C<šlHg"'aHwORcb~ :5I9&^F|@9bEA>aPfuAZi ƶ{p& 'A {zQ"=DKQmÔX. ``%dKi xRa%P?z@ `1PP%V8Z B@;z _4oPf`x*0 D;@/ >!2RNc= 4+wxNJz$" >nO׋3 D''ׯ>FjjeE%>+D:rbH ";3#Ajoz9\lNΎvvD#,T\ اP/5; K$ $/.`{(1:Z* Py Tz}xC0]|\4(Z"$-/+F.%"P ؄('mUb7= (!p#$J>)p?!`4sAPD Ggg)P, o( 'GVy `]q/[Z@C  9$>9& +`|;4+vBw@zߨz<-w^ (B"@/kW~"3 "Dh5 PB{,$3M``Q22,9 wty_ዢC~]@KtT8@"Aƀ <LJyF!_%,C/pj jT>b0 1wHBtKN '-;9A\>o˜awC S?-f~^(CA>e<7DRo%Pd ]L@y~m=~u: bBs|Dԡc`L8: .=M@!@%lB<O!6B0-Q  L8! T$o&| b,|0> *!@x?ˋhI8@P A~vv |3΀FMg* $P{ AH  _[SBD?EP$n bQta@P7 z~wۗa a}|^z@P m# 825(&u(\rH>x(3?|A|, !2Xm<$(}40'G9>5# h $X}Ґ#*> O0FP9ߩ.Ŀ^!xm(cU-D`i>| W8?V™%QVZ?q!K% ~?|y,BܙQR lPd BhR"<"F@5  !%B/] /2 zM!'A辄.`^ PW޽.`i ,@Z*/Gu.?|6CHi|'Y@V~Ж 80#^Hp?1YYԡ}n W  sj!a0- @2$C*`wP@ x@ױ(EB:"@8R@Rq+Ep rS {B6 C"!X#u `V" 0 C)@(; @ 7 hGh8_L~n`"#X]D8dp|4p$HtҀ%RsT(9/?߮ ]?`, 0M  _ _L%JK>ҁVA)3w&0 h'0R/p[(#q~^#*yI>^~)R^`BQ5-}q{6Be <h00t0@ /n߰@> جɃ@k 0Ր##ɪh~޾aQ_zzA nAcSsPmA>wmΩ>x# ~P Q`Țؠ 4 HZ;L  W L6 KC8ed)pC@Hoš @&^PI@ǔ`0W%XfB@%*;ABT2I@&%S%ldH/V ԐU 搂Duw!">= u/!X`H4!F@p_6' >a<} +|&p <"C y+zI 47SPA`G" Er+6lZ$&/K:0QycB?w _X;) ", :ϰH.\HF DU(OQ¸!5Ct/B^X5BaA<@|,z! rPZ~Ēka r!x ,! d"1$ c )  Ԓߝ`5RWviC|&=GD1 9 -0b@$pX%TԎ x"HX܇X YUg)$ ,(-ABDM*E]. &1ZC(!$柆Ek"@?8$;)K-pS$?^bA$ @@ϓb 9HB6!x,"6Yr`P`= d= A,Ax`An$$qEA]o<;i6AKCQ7@!yGu@`@A|mBs9A~LD MGh3FCLъ>K1?g? Axʮ> vZ  >9Q3'@9t.` ʗA ;à|HI>/-@%Up$`=0 1. dX7pgqw9  /iP`(AP $6F *) B04r_܀ab {S0  "* = ~ It;9~ @>RQO@pQ2MqQ^.Vo bkcÝ gYTb(^'8@%ǀ'G`A1g6πIXzrV7x'D:G K^ ?X^!H_?]'IU `b~btHNfyK Xr7gaaxjlmKoFM*W|gx"d|v!qvnfR r>V;k *py)!}} s -i}U3{ gWm ymk?g";u %V n~}w y[@`cã-|B6|8$tqtq23>66<71P_WPQ[JT/*nzA~eqEAQ^FrbvA}aMucS}PT_\^=q O t5O_ܜ߬/\/ݜ5R⡣A1Q!v&fZC&Iqu%oecm)~ u1q~AaiY55u a qY99i!n Q& jf Y i.&VV~v,t4D8GAr d8z#PG9 it08-c / _zq}sy|p{vv|q{zZ]ߟY\=FOwTPݠJʊ꒵747T;[z:+K*K;zZ;&pz'wΎO3sw!|(C/ %W  8&h:BARJp&L` DeVG@$#&:jPS\Fbdcc;A9y8yxS77? pV~* z?sҰ0Q hT)0A)LC-P?bU PE ռBu;ˡzzjNKSr憻z']ÔKwOOWWKK[gwopuչ^fzbtxd|rrvqaaiq~qnf䮹@mݽ㳃ﲄz }r')~E0E U&8*&@D TcZtT>JP15*GB8c 4A8LЖn S`Ph" h3f# ,j(H(CH(Z͡ Z88^e ѡ D%X]jBHPISBTAD  0]7BШ(8`+ȀhBMxd$!0;Nc;I0}B䠨=Sh9b~@&ȡ 8L9`ۨ>`b,F—ǚ, ؘip`\,84&`'B,@pQxCņ ;?BT{0XuU͡=8Daa@1C1a [@`ZZ& VRL*֔"Gօa ~.LEQ3B&4 `Ac1Ej"t(@5hMOйE PE<bŏL*8I',twai: shJb  "C;PҀ,`G @ ``aa0! P!Z;kA/̌ sN"B7q`qGm,6 j4'mC4%YmG4!qc . `@@0 XGQ*0hJf`0R{T qq  #血)0!81X01 9uX5F ~ ṂJ,BNϘAa 8}AC 7Aa>XCA_&A 41|,!g1G %*A0! @48hY7PցWgPZ(:oz_E0 Z, Ol`@DՠXEh/ (x+HHNVA 1EEF9lI@WV0a-. ?2`0f0ll#$0Ň P7<A@h#Fi! 8򠶪VXJ\Ɔ8ac2 PݭB%Dy*#J#ҽ4A? x<#x'@#X!?hXxG#6fx<h/p/p /p/p  L̸#P`է sQS0Ax0A@=  r0= 9ObGzo < "҃ǁ#<1 78>2cA q 0U0x <a4 h( x <sAȠ%G!bzQmdC c#‡= ,y!99<sX+ww`70!x3SyT!!V?DoB@ָ}>;;@ _a~fB"Tل;P5 vO#D`D=@(P{WW>PU " }Z9zBY93^?` Fv#jr880@}*aaPSONdNRp?1?3wV,, B^~@h"! O'v$-#]\ pHLM ˃'+NrlE*cހM>{G܏P OPn#.k#0B?oa*B!=B _4R"n0"/iZ/obfPQq%H"}cK$D4Dd"r\pGstDB;:A_̿`L;SI &AGh~PP@|d Ē !M;+0 /rpnz0G/TrTE1s`{ˠؙ1BTDDdhP"#@ Yv6$% Lx\&'tv|;脐"0y  C` ?޹?̀B<\+O "-o< !_Ѐ_3>Pp`h@ vI __LAC4 Bhl~BzS݆$2[HyVr0|N- K= G%I#&]Rؠ-̓q R'JnY|yqs0 d `)GOp7I yG=@:=Mj:.E H\s,_`##lrMC._ QskԈ{K(cD#, "4 "Y)r fE G# <%0:?]}?mꉰA D~N vDG!yʔ0<,Y R Au*ua*n]>%O, 0ϓO>8!?.qn3O%J$o1sw'`;eIdI@^`DcDD@DTGT nkp`.oMA*Lx@́EsPLz'$Hh/i}Rmz^6F7-E 8$?`bc O @OЧ~zfLg. H^.:<@#XQ/3A{#xl!Rn@.OztDz,DAQ aȀS}+ځ !AyR4Y@ ^0gvGG:KQ\a}P&NAW? d%IB!}y|4P_һĈC@`/e'@fW&?6 1%R$-]aa j @s yCW O ':{ D M-,$O-n9"о%L&zپp /fF;{=L(,`9?:ЯHD@d[2M@|&F@~@  0_P߸~lR_ ׊9:_д@E, C }atE`>*'K(IU ##OpӡaX}b@5NGF:6&D/;\ae? ytj?dBn28 ZKI;<|*G(Zo71~; =YH}Dȷw~GdQ|{coyy%M'Ԭpr؝A* ;:34 qGc9XAT4@sbީ)џ'm4 "D!~~ jDe;d?n ?0b 5`$* !"`* P>&ɂR|bt1RGP`B%NE– 2&41)\_}W#A _YS}OQ@$nIG$xG?@8 B @$"'; 'W4@@@] |X#:!g$A~ezH cUD:thlaxCD$!41!0AWA(z,jpC!@R7|FS! $. k /Js}b!jPˈ! pNe~[G:?0@z 37 /]@h`p? c܏"?0:  !@} U@& @x '8޺yl1/>PB``<" ~s2 /K N C?_Ā>11}<6| Tn b 1@cȨ0G/%@!c Л 0K`b^M%8 sC(rUNrS64#h=@9ŀ39S3 1 ەXD1`&u{a `11X`M ax|ڟF/0<!] M%;+ҙm akV8!IH̓.m qfB_]4!bB P8N_`v`ԩјfn50f3g^ed$0p%9t@&A'H ˃(`N~GP J28%Kpr %<,J. ֌8əjb+B`Ԃ>Fx*-hx!P} oa8ncЭ +Bg @ 9q8 P Ԏ3\Cpˈ=q8 P 8|3b `s8b(L<B/L@(&@33Ky!{։~fJF fq*2?i< $IKp jtm;AH( O",‘`X`AH ØN|#L` q#P0A0E#'` l] Qb@h4f3dhȐY0ћ4hđ@t-ƌۣFHcHarDrqU?A`|]iQ+\5 K gR &ȖAJ!ncd `lIH Ae"0#M3zx@l%B P)H2)%=-ߥ*~?Ԡ- +! 1)PH`1 `H rJP%t``e@!Ej` (&#mPPa/>Ԍ q!`JNHvj.`rRuӴMC`u2KQ~rҊZ94`1D::;J-GWZD_0ɬEeSh  u: vD@R"؊?J8ő@0-XH0 #h @l`\!.Pe@!4zX 4x`x)`` -0J4pCkU}-@:@\@Y?5(ʀtGkS}-qXx^ 8Xh:ˤx8Xh%>.({।xҬLT'bB|<,Lt4T$DLR2?=B g3@ǠD ʒc[rW  O"T yqs\m7C. UZ11D41ȒNp =6\, M 1+C'Kg7:F63kI&VZ[:Yۘ+^ʧG$Dwx_H ~ P8 )+RVAPTApڈ ]A2 L;% =#P@k{P$48d"\y~;C9"ǀq X֫F)K <5`z|<\LtTdDxXgLe"d`/8mp6wʑ\l 45q^z^20b^Lx0z%?/ʔ$2  Հ‚E&"fb`yx!!`Q1bnB d$$hb<22Rk꜎$q䎸&CC#AA@}@! ۇMPJp<^v.4@c3 @i84aq+|lgbc ;|G % DP (P?? 3# 5%1Bb+FFR  @<%I5A 4A@p =`[o_a\ o|D0}'b*&1@z>A7,<"2tEphhD@z= 9% Xr<@cp@vx#q  q(x?qxAp$A @c!QG"3 ԭ^m@LF&%@0ĒxTWc6.>Ҵp aP  5%%1AQT45ba`xd9) f!vj} 0༺b7+= %1.: 2"7oJHKuANDHO ?:?6:2"<<,, 5$$88GC&Q},-p $6ʀ BG1Y sqxh, 1 lcx!Z>IYQx@ k@`a#1IEF@H {Q!0L&.01#& bHGh py9!pOX P@&@K+( /; #5%~e@s%A1A!%a0h0@|\n(%)! |X{] 8Ɉ@gGJLDHm8tLLtTddTt,\8Ñdt sx B xz @HLJNFNQх %0 cgbMy3px [g" $qxq!ć8xxp. LņN".4v0&q@'`  x &0f,4h B2`|I@& 97 z<¸<2! %kEp>&q#@^r(pCf@8 p `@R w3E<QQ, |B5 '> %B2Zlxz"&@bB&aX=b m9U"A!xpx:6 8Ԡ 0 ,68G&gE28 ǟ_ 0 4i @Qgh&']-'`'@A BM(\$7ل<CQ"!pxFÖ|<#a !M@&p@8"O:xtx8x|z8f @:4@!0 ǀx}w[Op< p 9 [/'[s$n~f4a9Ba`8y GC,8i GCĸ.! %C9ʐx<F8~f H<z5v ]@FXG-<6=Xǀ-1' `@ǀ-$' ր@4 BLp x<v=_`T}MSG`2x<€\<"`O xpaA309 3poL{L3'`#1filf0<C89<hva@'o#5 'av; G ـCCI@F4!b < px@ؼx{l10 F I&c+7F8p x<hxfpG/Cp&c'W s>!"g"-˜p%.44EkrXnwDx"eR20B@ qMx͆W >O{lL?)A$N j @ \.Tui.j7 hBD=fT0* #%̀X  H (V0 kq23I3 f3 TcF:oY?`9l5!XC>|d(V>c 'aek[9@)@qtB G0<=52)=B4E1D>F]ŔbB?VG{8 HC&Vc<F `Fy`m 9`ޟ~Doa ڠsKO`D tCab7Q~#3|q CISE%/5 4:_aT ZB?pA/2B3\24F3I5 [a Eи[!!  eC @0$#@ $aX$# y@F4Zq0Z4?DJ ~ "@ɠF[8C C)RHD0;C) ؂̸yNh0bj߄ 2!A`Ģ Jы-5 X^)j,AMB`4+Ra H=(%WhA/5ެj# OxBp,ip;z/36`Iq(2yӨ! ~GnA 01fN,!]Pe(<`Ccp oa'AoIVcЄipB-,Ct,Di452@j 4a(X%06,n;0,#4| .s& \,g >TdL'xUBaǑiD8IE쓚tb{DCu @@'EB2b3ف,4 h<dd(=4]Fq 6>>C*+؈0i<0Y!MARf9!#M.=3SO^&Wb B*2A;0? #Q%,T)2, z9H:,|X^iMÐǶE1wq!x?\a|2rƆpP|nB! x(Hofkv8BƸnCԃaN884Z_,%4( `dDi]PGD:hA```f(XT,I`I%17sWxP\zv@RPEƒư0D&a:`GAS RW!PPE/=0"A LM?$~ L=` QEd8)Dpxޑ]8rpCbJAdr?:5` 2i G(d<gUhbil-0R.P9Lxdj*&,AN\\oghluKkTu CkaD\B R#fAu' {g@RTy[E\N6`k;{w>gfE$Bɤә ;%28Q\72f4=eM 1M a!H]Be` " F.haXC UsHf,%RA@i@ҦD/>@82+lLɸ ;% H.P`B`yѠ.} e5aWN&ÑL,SwSV!U60<-Sm4#J֞ x S@NNRXl]L<\Mp<pL)@|T l&8o0x 0[7XB Js4Bg=ֈ>pܘ_J tP!$A`(A R-ȃO%${j*5gbIta(b-2QVAS/##X3'C !SВPEK|)h!,B<%# N.a0X-%39*>dGhH'1NP@(wo~" f@ !1a/'AO`$ c6d1#*LMd%k_7~R@J_7 Y0B>0^aQ\L_hOٳd€XX8xxH J A>`g ' ւfNRDCpEg'_E b:weq"bCLq˂&<)DMpDw&8A?mHP7"! vuDq``|}b "`IT8P pᙼJ C A>L<PDl_Ȉ0Bjж x b6iB7aq <,).70Fmx#y)`k<oLziTpg, t%4:18KK;9Z, f 8,\ XCq f 3l;6E'b1s\p0`4 [&ـ8P@@J}bfkI {0G0Cn01cg0" h9` >~M80H1 ($j "` f! &*(f` ᣛ o3|0p8A70Pc Yeh aan8aXaFx0 p @pw03PU`f "@Dx= Ɲ  ]@` 00 A C`!`@ 00 A C`!`F@ 00 A C`!`&@ 00 %5;iA C`!`f@ 00 A C`!`@ 00 A C`!`V@ 00 A C`!`6@ 00 A C`!`v@ 00 A C`!`Bl(!"hPCqA 4XԞ䜁2%ѥAIp!LL#%&F@8xHh+BBBPW',%2,ac( y0ȈGOPLe zd ('M#w\Z M/C#J+KK"`ԡ^@C򦻰( +ӨӉb`'ɹzY` V!pe0*\5R &TCjY@p>V=22 !C#VZY{{w?.(d *Nַ+kZ`hTzcEU%3Q c”EFO+G ygXYS>iE(|<$cK+PJ* (w"D0 0Req)G ke.LL]3 :0aA(F _*b4%7=ox&5~7YG? } <  /+yPG<a5id(33+,Axo:qD.J)C NJa< ::w|:YgwS'c%h tx#/0 "`C" ǁ,ע8 |Iy4t# .TA7н#0B@g4o ~ @-yfq9~rrq=UE$P B6pQxqM!#"8E DDț;Bd+hPGe.BD( I|dǦBMPA0~dThbm\MxLz}Y=1s`PSL*hE GM?C6! >셞nfbL*g3E`p 0#2w<H"IpH9%8(cS`dA$9` ba ;Y*a: `am@W:%i, ATWƦ2,)F2z& :<=z Io"=t< @F"Z"1&"cK]hk `+yҋ.FQ 49'_p #l1-~Tu1s@[{%PvCQckH.t5q.RXГ10AS>;m'.Xf g]&а  z!A1p.7(aL{)`~O`x %D?0?PN~f*v@?Wnߝp pv;/!x/)ɀL c'|)3ܘOpzԝGAAt`)xA)aP$9T&ALqS@V2 2XGrP%$@!ę -?H!(U M8 `U@1`pnjG8<z&w?>p>q<}:? 'N%%Ah 'Ip x@SD%  'N8R#G "L):=C=x=G|/t< s9ɘx<CaShYpx<ra2\GO#83[Ǩr< qǞ()x{!|xZ< n>~nF;ԿC?tMǑ(D_ Ӣ]o b1x!$d@+a\%d:D+L YRa`&{"8[B& `fp8K8xx(hcčpLiK8Ö_$2#  0 ;Z,, Z`j.W$B8+|td*- 63%&Bp5؜F &y1;WDH!8iA=#F <4mх`ڳ li$|w#q3Bc( sllvyPxfR "/ M0f)b5@WhCL\X`6ԀÕAEaj\H *JpFA?b2@HH8Ϙ4q4fABNF8[*MN4f9hsV&@@XH f Y&A`fY:tK "zFeTbARG̃Yyff(W( 9UA@d !a Ns3,&.%AeA& 0fkjQU!f`_aL̘%a #@TyXu&p2 ]*FÆfU y?D @PŒyQH ;됣PQprbQL%'C܃n`˘FG3 ="a(e KP9,. $$C TRi_tvrug=!liAc0xk`ፚ KCʵV 8 ؐ"6pϐ) H0!cP C]N=øtaXf; >-Ca: M'A|; (M 9goCp0-h:áӬ+2l4` L9,#& ty!ag,!)!Ll&萸'ѩΫ CC40,q&4r 6PQ0G 8g̞aAKL13}a3G\ K|B\fvG TIr a-͆ncQ$C^* V 28zBwB$ Gb;aFG 3%(DH-E3+\|34ftGpx̮ o"3#>VWGGa@' A~a(.w(=2TҸ 8-I0r !Ja0L Iۣ(93:GCACB,mΑPI%1t< f ܊(f 8`45["]Z 2"g( ! !8 k8 J0bX؊Pjp`lEH" Bp̈́0T%2w`X@2DTVa`NR(04"%…fdP1i'-ؾC` D LE N04$!C= ;0v` -lfdD:c\0;,\ h\`8Xx͖€1ه 54Ԛ< Ds9fMCNpS00)r܊w6:`(ٙ|l΄j`_onq~A `@mfA!p&} M  s?C 4_,'e ^ؗ88 CXA $ב0 1pneeN2 FDj rT.h/ !ӨSˌ˄#$?IP~p@(:F8`&B Q<"xNeJ=68ppa b mdCb`0(|UAp`DI7?@ MÆSӤ0 aA?E "[f\@Yuq>wP&PI-‡%,# qB dpGC5F ;0`@3RX2v``0Q@?%&j`0f3]gb@``f0y\hC0HYˣ&d1H`20f93<쑃5H`20f#F`XC2bhǑ(`xAĀ ؎HxZ <=4C r&C vfC uC VDI`# 7-~B0"5!Fi@BwQ(]Rf( lаf_ȢnVtD!"gA0TI38X@fx נ%-3|:*D gp31 uAkH=z73x S d8An:k <:{Jf6fW10f3Oi,5b@"E@F0Lđ29B`,Jxfz(@c;(17 zH1!/c `HKx!Kxp% }C D|\11Bpd #gaPIUZAP` !hc g=x vd1IsTPCdA~H13T;ԃ`@Ƃ,3$Ҥɂ` 0BoMbA 0\Z6Aa'3l9l\3V9~(bgPR?Ʃ1[dP8&]L&aǵA1$(#(j4䐟2!/3p"[4\ oL=^\@>oZ%JAt?7@H| |(! y/`@{ Ǧ&iXGAL1x1GCo0Ġ`a(S'A c` {OS` E$bb ȰP @Ňt!,l`P )p^@S\vH ;  {BD01I@S\% s8) R灂B'Ya@pq :@NQá"+$)x<%`1 M#7%Pڄ=F_C `SBX;Sή Q\~%L326hj `S*;! cXL4=3ր$z%ŋd"5Œ''Mz=%l< h ž0x{) 9l<) S$T+|ˆ aA/1Xbc@&\7\<%MO\vȁ# ($<| @+nAOpE ?+6;_ &> ;_ `}wa/Ls&$"/ȁ\ cA' Qȱ#@SM0)X|< g=%| .5 ؤ?B0#I>b4 O$F.`TsW,yW:NmU3w_ @ s|8xo8S/+-_4|@|~/ %Qt]@%SCM  f3_ Gy@3hЦ_^ P|~~|/t_|<< g)3F,J`;BN  )x  #R< v< F`E$3B#T`ZaS#PA9$pa%eS\NĹ1 D)<$t>10)بMBÇ6 b|nMG2ßCP P-aYɄx>B<8?u#!tDvc/uP͇IG|?`0u4pk Gxl?|}7a0% R=Q-/2j' 'CeG\RLjKG !3*e߃ǂ\$', =Y<ˊ |<7)?==Q]=asa=L̐(kFfS0=LLjpH1x1aD.p9)L9G2P <9t EBGv\LF@ sShj@>MLc|0Ot& c+S,/D aSxH f0` cP0%!S%t?y5 a(~~Mbl)@S0L@Ʀb7@ P*QD2]Gu(` 0CM P {Lq0_)Դ1M 1v ; k AᕭlHĥSC7>?3@I f\gcP1=;Y) L)h^1R !KLBB0($x5U(H3fPPD?:Pf ,BcA T v@H=H@ l_Z W{ H < Dۈr:Ӭ pٱˢ1IxIh x% &4O@,' ̈́&2O š\B{,@a8b'@ x@0,%">?AAdbxH1n>5똞F B X'.P!-pSmLJG&q@P);M0|+ a +Vp]F` v$ BLcGJt#+04ЖɅ&0@SRb9"@xiDB( <@9{ c %X@Lze`$P#,WP)~<8 ?%aC,Y1@HS8`|L nx`{6S@3Xl…N@;  (}LXbyRa(kANb* )X?E5 -E4HPQ )60)D )(?Mb L<M0q࡟)% 2pিG@OTL8`xA% U^nz+ @<a)'a)ϟm6%?~a iy; qߣXxL#N\& ņ@SJ4(d3EF M|`cNqG&a_F"cpg|$>0dC%a<A^aSy>'a_+(< otp ㇁@6dfĈM%.v%^yF*8xc<=(F &1ZIC凃Q GD~LB8aCJB)1B4`% DJV1΂ H@ DD$)y#Nj9xpֻһÓP@-OaO% @ DE_BG@`?N Q 4H$RShB#U/ Vn0)x VI).AM. L <'G0P&% S`D;ĀB;| ,O@; aT8uOH=a8%WCBip?d2P0nDux0(LNI`f8pA ^8U U !ifK ʿ>πd= ) b1@K #2Bb21bqD 9?A0 > !hCKWo@Sq 0MB_`@S\u8Mf:&Ǡp#)}$nd i99L0 ė vi_}S~px@8C'@SH߱B %SPAHjR 2 @0~@P *%O D lP P@C>A%0S2 b& C` SfTAU\b$ @(1'@B@}%XRrAPNhdCHCC"7z0d  U@~h ßJG l  \ 1hq:T  8ye l E{91%BÞ`QXJl sAAE( ec  A݉Cc@B8^q((AMD(D&A@.N#a=B.UD^M8K8 cJp$>b ,{%Y⩘4Hf7vp| L !,r نiq`2T>ZE!,@atpz4'$:8ǣ<7 ([dANdzO`czzSL v  xMaIF SC2Z%^N8 58` ( G `=Ц |9?#VP7z&|?O)0/ @V  q(P~!MAb nB; (?C/ >❇ ob]78Sq0[H@P Z<%[gSB+n% n)$ sMvD tݲѼ) /@xߞ )1`/"6=<}š/?E p~{GtjDM ySlC.e0߷x_){%lPx/ܤ_\<p) Gpq@WS( dX`3 7{(g lqMX(!N_5QtDŽ`? . `?:4/g#Cm w1}0#L-)ৡШ41Y hS01x67L{N?/ oD,ɘ @8ES?(̉~%\,guvV7SwסOc V@0SX)H a! f)n&4Uox)x AL#Ô(xSaL !8kAGB< n= c3=%80 <3m.tQ`NqBc+P S\D> "NϡcDOA S0 ;LG aL&aSF f2jA]xQ'0 G1vCau<I:! ?,JMSqh0BM9~A8s4x@=&=;@|1QIcg>!āO%h:  BD1˞} }(I1 m,N x< ]pFs<,V%OC|4<%bSOxB /Çt& >`Rʏ?t93z  !(j_NpH@ O ~xom1 ,_@c_+@?|/ Ph |:ã u1 h< Â<SЁM6$-@p0h(n ߈4x$?qA\SM (xAOpp0u2 qpPMxH*`',@DAds8Q8 g I'H(`̇30{×xHGAdTXx02z8A)cAX7Q l3"D4lI\:#G/  VV< x (*@JszXi Ƒ>sz̨ki 32 i@46U j > sZZ)/r)ij@i"$7L R!p 4y6 RIfH>L9]p*O}0C`גK0YF{1a!apb@H@Ah7i(0}*bQ?zvBe Ǝh> 1|&`YBD `tIrP 0p9:|9Woxh`lhi@CCC9a{[ëR0VCh'w{Q "'{/rp8 s A܃T!Z zTuJ s+P9>0PH`Ø: `8$4 ,<F/          `````   r:|bvpp`_*cVt`XDDTLL\\PPH@0qZ(@`P0>$@͠ CRt1Ϡ2r1ro],oiP/_gNW.ʱ4&'STtC@ze@@ ij:4zC `<\PBL]<%<6q31b ǝ; !%#"֡ ޾kt,d,lPixtDU5U%tD$eV6:- a5!9Y:z::vN_ PSk"7,"A#L;:?ʛ,?#nfǜr !6DTZ* <L-U*dsrZ 2"<@` ? Llp@ Rx,ojlkˡr2q*X<41wHw3;C{Y1 `zG\B=!f 0]XHW3qnapwp ӯ%͉`ߏhJ 59OhÉSK3'N0/"_5ZB`;9l8/@=',% `/2yi4#i'Nb$:_ pBt|@6QNN.UGu*hv#H)uO*%pߢy _q󰟈 ~ ,RO:;*f?.xs,,CxǏ}/b?$fbgjsؘDfv6*)w&CO`=9Tx{;goʾ@~- eiBA0.5r.U>WDA~'(0š(8{h9Us1| q2٘8ilkd5CFFQ(<nh3AQBtvp#, qq3Ddb~[j&B6<`2V =URj;X83032.&+a B7':t&M#F0@` .!#F:]f0 L.` . & x0`!!FCUN^=o;?i"1 brɉOeO;;ϛB"̧GU3)Ó'+/ H.x@X/+eJ=+=y Il-*cCַe1v0%gde % iacNȕ4 )@ @P P -_u'P(ps~o<( o#`|L .b}A#*Y;K0{[w{p\>Yy hP@Mm⇿vY{[y8.7_Kۛ}zxp?zvvnnE5m]^^,93}k6Cǫ-ldJ@NA,5#߭?h!L5& f7^1 A#* kN ȇa,VE TL%W"ɀLC~2O_ZuOf&f\Rfl<}G\Ao~<3(JZZFQ #6r?0a&qٓsqybxBh2!<SF(s5-4 !F>8spE&#Op@ |܇G`2PL@i`⌓PG/@x)acS`$2E0KbP;% `xS f QI57v=""'㞃/N}gU=S M@K@G4 h{AI a 9d&ѠLGa*X% =;|#p#0A -@Js3,I@Rf$4 h#Dc@ /@_.! y]cP. ye pw-`g* l} JQ0(>xɎ=;$R`XDUT62!ј?>y}CXPrq<q@s9zlۂ[X,ɗƮNYrQ."g,.8fi`(p@3 W* *K 0| F9jB@,vXyUb :`.@F \\a1K؛8(XI:ڙظ8nnkpH"bibog`AB`GiddcjlK E:0wi*+̠H#<^:<~q寻0)}L[|Q+D)fsAOzBm@&>^݃0OhԓP{ F;P[ CM^a(3}H</BJ$A$tag_.Psr%ĩQJN[$&q {=lmÌAj w$ xI79w]cza;pE!]JHtidKLE az@V~obDYX$A`Kb*n<3S sF! ᔱ 1dP> u(%P:@(rh 1qL@x]`'@ T+{@ P9_Bbrjz;GiFHs?:f @EDdci #S9@w.v&< 5BZ*@.΋XnS*D>`[4 8@Uj[: 96۸2z: Z<[>|Nω9(_@A 20>~ @ 0åcآ|9a Dx8}ΦN.4plt8 /@ O`"C0!>& OO %ˀGKPSd %D}[ jBk*ot!& Lف0A !iZG*O ?<UT(e-1BhL2 $^܍0` Nִ.F PH`Lg'͈D~+r#`## #_#P* k' 8Q*@D9@P%N'4rDL=0 xX]cO~fh1^`t FRP0rƀPC "/b_ވWG3(!^@ A ^ Om&:F=eK@LPZk ,<)DS#Se8 Ly_C !DŽ?_sA" ߃Iaz;J ;`/Bρư/h*pO/J@y@fN04=4)p:L8qѰ㰡Q`:AD~%?lHM}(};Z17 p>e/[E0pd> 9Z 玠7y`Iځ:tH}0vOL2D1#!''pX0cNcTξ` s#18.6SJZhAFR 𾗼ɠX GOHS spp· (ppN@ȁ2 \H "& ##A^LYA#p9w J #7>,H: ቅpf/FH|>'8;@,;4RP7Sp$٠a9#4`97q ?0?Є8J*qL'P/pKQ "0 p44;!%r0A6'@ JYH)Ƞ.t'Ԥ5(؄VAd-Dj4@`* -d<; l7$ PYo32thne PO8@um,j kP "$ ~;wnS#Ώoo0p;AVحp\XoWQ#Vz &*CB H0)`&d!mA^F(KNdD a0k_ 8=@$NP9;pT~կfTX& %(lBBP6 ,} #y * @2: #z? lLY̒C=2ƫdQ9H>`/R̐hk|P 1Q'*rNj G7(sE?02'xm($$(#D28Ilɉ@Vɐ(M Av!I 1T8Bd$)sz3-׈,"[r Ђ H Y20@V O"`Q,^ ooԸp0+$Bz>$^@p([5=<YQ` Č%w@x@'Lќ*HP&QEBQ@YX ' IED@B ,Vp'<(Ṻ b`!́! ``@I"lhBܨoPH  0|@z{&K . vti dY'1z*L3w)W`a  ,C?R5 ` ̴T NlH"'3%*ss @&banQp7s"`ħP)~2wf2)` thzsrrǰbٛ^<ss )Ӹڅ"=X-Hh7I4#mAB(Q4_I_VP*P=#1X+;G`F 3jb4"dj}À'Nd: b='##ȵIy_0B&4 DfEt&`L!i`*kgY<*tUhc ) ^wGΦ )&N.N} -'@T`iX(QsOpdnp<r`կA@ GTnK6" w Y9"T9 )q㣊"/B< R4DF \Х]+e*(PSS?-|n|"\ D-䓇P|NTL7aЂuH:@~? O!@f/a 'z1 u٠1IY*$4lMhax4<0_`' ]M~pϟe;ygqCB/bCE݅_" H*_ /ǡbЛg<Pz!K)I)B-2 9,F+s i:6{^S @hn( AGC@ ѣ@[LH.4*)򡛥 `P0= XDn[&xѬ \e<4Q0T0-Zp)=Og?I"5f0t<L)H1%99y)?8 f(W?n|6$v+|08 `Zx5|(x< 0U~%>0.# -PQ;Q= Nך>σyx\ rzi!pXz  VPf| p Z( p 2yq#.Z`H 1ELA L?N N 1p} (PЬ 8 hpTn}X <ъa[@ ,Y  @~ A;@p pVw6jUjHn&SktDMwn(416@L: +>Rh l{Z3cU/#3Og ] 7 C +$wa5VpA<츀9o,v$,rIqkkklllmmmnnnooossstttuuuvvvwww{{{|||}}}~~~ȃȃȃȄȄȄȅȅȅȆȆȆȇ: QRL}5}I*xTxJ*g2Jg, NfJTg JoBg4@0?O6+ݖBejJoVRg( qT gUp@DiKITQ6Kx(fJՌ&JS\ xtG]'UDtBEܟCRV0Q$E@(x<2Rh"@`RiW$x~(k<,@$Yt*$ J+Hڂ,3 Tr:AAt" $ɬG+8gl L>$PD&cA<֠ s9$\+H`j"x+렴T\ATQ=<.+Aː_1 Hnw΍LXhhw K&"{Fx:ڇ,a9~RG9P[@ +5;maFkj>T ?Xna0o_  AJA]g YP asR$_$I\!q@MX,NQt6q~Z:kaXgR$}l(J%"hT4f Sej@B *D(VF1ID"p =A@$.Ԃ4a ""pItN n견yoJ" 0;gJ>,4(^= d"$yNRRXm2- +b8Pn"Xd*(hDM1*N4(C360E]2 Tx1g~gTL͈REGkMP|iCBma l@f4.!}ezx|$q8nTz`h 2{\FDX 8fc($Q{0$'z xHH@.!4dL 0- 06aAAHAII<bA; q┲?%bѸzLĨ8hLԳmr(i rJr 'art -R"[WmBGx(ZX C?Ĉo꧂v CGD"Gq`|r``m'lbt+I)+Z1^a6CXQ'J+Zx`A\{K$zk4`EUi{wH[!ў{ eIP"(p5vtC\'hQ8ɍ|(u t`d!Bp$;"1T!Alr d*Pp`0|*)Q, \N29*fA``@)`PBD1aFtdLH!Tld bYA`Up@'XSmhf<;| tA 0(zU]/vz@ rvnrjn)fj1h Pf1@bNuP3#ßqJ :܈ P'$8c5AG\QmbPkH6bp p'\PSA v[htOi+1J܈ZP6~p{Dw7LG!܈-F nAE~EF$1B܈vBQ_U*\${Ė_ @B 2watJkw1`߿& ߇H p@` ͑Fp:@1m7,.nVST#ay#+,n$lDnh}pv-3}_`pp'Ăm gmA6B[m#ZP 12ݚm9bpE p@~ObsRݚF n öœh7H++` :6ZpYnFd "*\w-"q<N586H0dLUT<@/_CAqA=; Z|ė|:x D@x(|;L{$|׺ݻ97ܻ x'{>*{߉ .s?qK. pw[==Hi̽_*ko/-ua?sI6iA8;&=ɀT?q灶z-Rjnni恚 0'X!y'I'$@G?? &`F^ppTƞ =:9@ B/=F{99Cs⽅{ dχF{⹏F{8osO-ݓBF{b޼.`>x{=[??w';yU7jx_'{DxsI9@WrvNv{ 0u(lP$}Xx'ݻ&NTd><0@ONx}%[ɓτfaȝlFɦ=0|Ap*w|ɣ(ޞM{ϓrO8N ^M{0<2 /1|pp frt& d2>&{Vd7LdwnۻUL8x{23 p=sV|H$'0Vq 0 L⡉A`"n\2ȹd\ vdq0=rq<3sdn?wCu7\㞀> NA7_R\'Æׯ~Lhdq2gqpnNO DZ 瘜2?W\Y=!In8qݻC%=Ĺ4?͹<$~Jpk-@..^K /g!_AVɨ?r8~b,'̜`?).9|'pR9> 3 L9I tq89? =Y\sϑ39ܗ𸠇~I}P xx>_02/"dZ&\%O=Yzwk̽}{}n/Ž'k/)ݟdpOVw3,wsW):\'"᪼a"tV<'̸yOh`8qgϜwYON 0ϑ׼M׃I q3 ͗&MߟdDyZI8f@E &H!F'k቟?2d(s 0weؽ03%rC0~DLI=2"$Hq.d`@A Nʞ  pN&JO|‰2R|~fNOɓ9 p2r| 8 >r#S=\UدΗ/U{Nd'{PueўX pR Wʃ'NvRNK;^) 7omw[mPQP> );>N<}w:} _N={a s@@~(A FÏs<NU ɓ/q>ldNN8d?8\x:hsP=~\:-ޓ%@s_htO>vɷusOF&#߇';> s%=o'[ؼ7Z߃;F|Gȹ\7}bݼ~ w$0B=ߓ}Гw(n'=F{~99A~ hsO:,`pF:ߓUP`>:pOp \xkh+.ua?sI6iA8;&=ɀT?q灶z-Rjnni恚 0'X!y'I'$@G?? &`F^ppTƞ =:9@ B/=F{99Cs⽅{ dχF{⹏F{8osO-ݓBF{b޼.`>x{=[??w';yU7jx_'{DxsI9@WrvNv{ 0u(lP$rǞ⨉aXFq1 j\W`1Id `x M9}>+J~6!zEHޙ>>CP];Z #H@3̲oluĐfxk ڋ]&.0Hg~:qmܵOYć!z+2晤zd0 LFnp+'CH"$3q<"A$@.YwS& acSd"Lp +Kݟ&i(3IC44tj.h& R<܅~|!;n\gRG(9 ݌J6vX\?B-^>2G9H3¤ر)|E1lb"$uhLdXg|cw.FҤM"zp"|o* 2RHeP6;F"v0sCB\s /P^rDNf(&BE?b\:ײ3KueҎkP Շ {Q uP<6-պ C%dm>kQ2ō+G,\\Ӭb^`nc\ljkrfZցIV ;Gjpp WPJ- ܫFEG 6fXLDK}<Ҫ1cl"x+Ҡƈ8? E*gl='@8.cED&DVzx4H03HPn.6%Pf,bfz9 H&PPL10mU~3J^~k?m/t$GRQ04Bo `Y<B$Gtp؁wK&XTR@",lg xzMyD綨bwŴec D6|<̈"un"R)- f0]S>b3@+(`(v,ֱ6 )pц 4Q# $7[#`$zRΈȟ4R٤w}bGxࣔ7 ҊU(nP-j~B1"\Lj6 @ (sףaHg1v@cJV=VF =5l{iBE;Ev @t>^; a M@*g@" f|л|@e4〬$, Ҳb"ҕ}_+ɯ]|h|d́!c2Ji`G7`D `(0HГn3.?m8Ml&gw,6~^ŕ/tҕj2eESɒT/IЉ>!n ]ڊpLEO~Ѐ<6?XR VԄ458ן4֖Z,wH֐,HR<$nYk1` @O.BƵRd_ F\|k@40<JmSj`iȠƪ(4ȀVǦh>gg8ĺ&Jf ;ӃL#3*o=O,h"ƚb2ԋh/R;>#Խb` VƻhDߙLg2HnNգcNsPl q*N(r"qĒfF7g6U*T;\CggAfN1pB&86@+b6dl$g0p)`g$@ agfg gff`1P$`;s`,!iHK tmt.R 53"b wV,n()֙L=IKQ@)^T(pƨ6hҭΪ@lI`H@ vN 2_WD2]"/,]$ @C$x0z1UAUPBqPdt@cDB(R840t԰9Q:l"hhJ"FDhQdd+ iJxl#)x`8O*qrw#_&(GgM= ǼPaqSōuab(22M"("F[n4+X#(S%+pC8^F1ǡ(Q a P Aب6Ԑ| P|`BŨ;ht PtTC\m;.PiE~Y~Qw}ҙژiBIXtPaa( Ŭ+Hu$5N 7 ?Pp?ӜgZ` H" dpt R)KMR1p0fX^R-AZBfPYAjc}@d@01B:Gh$f,( kA`8F8< q@@ vcm*8 t#2XXV6e6["p"&PLqqA |lE`~!&~~ \O`~`|(~9f<${Ȕ4N.'P]rV4NfDʬ2T4E6qk0up 78C>+>m_ GΣľ*NGFKFg89~@";)*CBVBNYʊ$Lgeث_$H~4}>ح[; ҒԂ@ 40[$ł p t7P7:꺤mR;E)F0H̙M96@;G&k<$]SFDFr.@(v<;p|]f8cGD#鈱M'Rf;c-µK-K؉RUǮ#Yt<@,9lGN/]]QТQlS@ 8"*8 v : zB>js?t"Xr"X@|Ď8v Jd T`!H b$|:?iwREF`d<f@)eS@-?4gJ@"%2(ml8$4R* Y*`WvW)CfqXYl-08x$}$i?؄q61H;C"|tw=ܛk60U+(ܑ:5k&bB&к ,lZ<5b*9hNV ˅V'VI߆}z`8kk..8KŢf+ݎ*3<%`z4(H&b7V583x"Voi9fZ9ޢZ!,z݂c(Zo#sw(&|aTgm)`&eQj2:K U-0o g+~R:O@oj vsT"E D#p-ƚ'%qO-,1cj Pfr\gR0l,tCdБJf $ ]VfӎL*8ERe.Dzz)tqMI`5=8 (Ug0=ۍaJdEf6fXU&&"6~UZc4MHq$~%rqjP7闬0IA@A5 7SP\qJ+e>BYS"k HҔZS#$7t%v3pr*522ITt#4%Ki2command/Tԑ s/foSxxO}p#1U2–na(nUiE3bD%;hpK5War.ggI++/-- s 6%n7Q(8%h-VI9 mh a*i b-mod. J+/rt.*7=per+ cbDOa ,dTup:1cde-autoIjmrVdown:2.nibblef-z/slidNb umpo=byPY toԩrvv8 fn f4$Or8frfGڔ5@V-HYZ.Lrbra]4|ig976#/vrx&gD/\[$}lw $GX42"\eTfXR~ 8(bNn(J؄ݎJ&@l=۟$T.b$އ)|7'8%:"aDZDY4J"bƝ5.XP;Mz'B*"7j,09n}D; h !&9f!R24$&c*f(455ŽL/:mJP3BPhk`0';m|ёK$::{)̑Rep(huїnnP?LS|v(SYAdRmgxg +uYLDoʢk  .E&, g?*4{CDG6PUzUgh`t ^mK W W P8@`Z,?l\%uD3@Y Y P$DZMTC*@bCHqφ[W[-o]|+F|+t܁f\B)6ߚ 0KG(Rq.+"zC%ĬhU} \| <{*G Gݼf_@끫nTӅ4P?fg:lY?"eC,(t){Jʪg(ȹfȘ2M7Vٮv6hI nHfk7`S0:*jF7tmK|*i? {(Lnf|AJ(ADt$ E91:2lb+Np;&v>+q_vk DX.:-`ztotal:SPLs L0cl \EGriveٜ4 sur0 ؚ.x%1~`e4$"sCEGD_Uc`!#.">8|Tz䔅\&R:Rj Y]x 8,P|1'&؂4cdB'x!B7rf5%Hs]'Jg""J$R,`&XB Y'$K[:R[;S:"ۈ&5NhEzJ2t+e8(C#cXAF֨Xpv$Y8<z#HdD`Nc/JQTM0< $t\8ƘAJylnz#9bG<;:{ώںQg5&Q UƴJj>Lp""@$tYRͅ1/gA$1 Zn, ua2<' +|t,B@XuԴou(J&T@A MKpU]X(K`"((Q#l)I;Ru`DdzBEZ HE .rnfq# ҞzFc%tP$yPZJXU۫&J,%Т&xH*:b꒔2Q$^ZLD#_(_6P4RBtq4{:t;B)>AF0o pAtH#рM`B%L7c} Tn)24 q0}y}K2Ù@@BY22"D5ZK &V~pTPJfSZLdmlkvH|Y+L3@W,}`PA TBA)B@q( ,Y^3"$M$N#J-"R$ .{J-fZP7nRP"gL6xc"e>(%x!?@ #Lj2]Wr 2G2J+Ւŕ ׺2>q%JJ[Wbx%l- Z^.i| f29@#$~j3JMSJXv )=mE{]$$MTIB=h*Qh`iH>ĸ" .ff ;F,LʸocU-`$`,b) Z17rtI7'vڜBQxo֣Cxp8ldJpӓ6pP(FsO\Ү:)O\|7gFkIVDZL&L69"mN CL؅&).bh- G=G4~樕GkO,mS:Fl" mipwz4p/~tm=As\"ciCdTOjH5'. op6b/writr3x.r:6full }rcvolugz"Ohkn'0׃ sk B$f1h`GU"d'8E]#loaJ KYveTugh$Zyeem5directory nofound can't de0tfileʛphn ;eZ8`_ƍzw\|"t@y4!@ks@%i}6 Ip! J8Ae rZn+U`wN4s)|&Ca &SJg/3{fJV%KiDHKLKLѸah\$H MHƂg s"~E0c."GcB*baEFU"Vꘆ ѮE¨SnMM `-T397x! %=`Q(\tUxIZ9+L^E3 ?fJ(D2(ƸsohP{ l $9$ԸU}g'G7<:&p QԐ0`F\Bf0^mJ7uAԕ#paw`D$p0|3 &4=s4I{LUǗ`Q*Ƚz -Y#U73iGT*Dשig-ֹVH;$W3\J\P\f#EZiɉWIg WMZ G2 [GnW f=:p=FܩmuVfM5@LL} mG" kZ`\gJLO͔%?Ҋ; npBgmXdLh/0QkH5z$ņ<n z[Z&p[,wj VqB%vYk tF\Uf )qM>qDE\$mE(@:8o wI*.@:3*p F#u.6Rul663Im ܋ p2̈⌸! и٣e`+-0G*Ȅ hp6Ӛ& $qA~ g-x]w$Lq"䒮)dda!\<6!`ʧkI#ӤD8i5 O\`&+|*+ L#]T.N zRѫ7C#mԅ^V \L.4ӎۛe;W9{ dgRB`G},lͱ  8 `Ɔ[#@oo%GDf~}f+iɇB?ցȎݲ_@jer?U0/xD€12Ys1o $'س&ˆۙCQ W_UB y+iA1rmzPLVkh+*$#ψᇀÆN#h  SOkZ's y#7C+R$rРdT󲀠[Ju-rW_Sd6=IMB*⦑ȴ߮@.h\ObhX;L(Cڍ*M dkp&|1"*k'^@6@L*@QLȆN'Sh'XjR"Ą,>O_p8 vueUF5'Ķb. s'1>HU_js xvk_RF9,Ǻ*灃 @ '*,5:>CIQYZaeknt{}:B|yqhc[RJB;/( Ǿwwa H X"%(+.3689<@CDHJLbXSV[\]bdegijpopuuvy}||V~vvtkgfd`ZTOLD?;1,( k »7⁉p `X#Y$vZ<p 9=ƌ ]"!$%'%&--}.5448<;=>AAFIHKNRRVVZYX^^_becdiliionkoqmnnljkjgcfb\[YUMKHB@72/-%hmXq ( YC^CILc $'-15B13`,011//,+,.-))')(&&$ 0YV Dh 5( 77$P$ `B8&J?A}&@8BcCFW   WDI#"dddXFGqT"]nƮnƥ#u&$l#x (+dՁ?(kUhY-px$s;BIpIҐm+Z  qp$w@6X=Ўo2Oa+4FO (6#u|LLX0(0Zނ>;; 2`}a@*(S*zwXjUici-\V,j9,wc AQQ5Q$ W;@l.v?p+Ѯ ,"n(((рw,6 Nm6aل טZm&-L2y.*z2G@@E@A,yc v*B?r[WrӾt>:Ynhɦ|Bu.O  6X~쩖 8Š n]jCz~$yX)*i:?n:rbpUb4gI@#c[)qǦffrmԅ 0?[4&ƺv(j=SKp-;`p* pLp0]$S0-& 57g=~p/-z >UkҮNbQ{[StU9W†Uq]uFdbFS4#lJtЈM_6{4_tdp&.U$*xX9CZPE%{p'Ol !6<GISLFtXb)2[~Ԟ8>x\M֙d $B(-2SnbFafFFx&ZfR&TSxDS~6`fl$ztܭA0At8N);GL}mSX JDG$e('tr?B?b(` e bO.d޴c1 ~u1[.fbh\RtBiz|۸,T7a$, sB7sVi`00Zo;&iI0D^`R02IPgqZd$@T@?b'wAJ6<l!5BVi~C``)ҴE$>.J!"JRB*cI2?\8- qvےvx`.8^L0RD?LK!2q12UBjSCtF BG7BB1mMF_x{b0..$QRxT0*Lx"hx`I&}`(HQ.&gFq( B)qP.vTn JcDOk0fXǷm}gX7h-4k̢^uZg+$eGaI--&  #33NT~v=`"?(,+!%#3!T!|=eĿ\|vgS '+*e坘?㇆?Մv?T3s˟,ܸ"&' k463y>]rpZʟ, &('A[r LkNr5ܷxL "t_D %&#.D& 3O3}x`P$&" $"~t,l>ڨҭ$v?!^ M>ƾRFe Bg?"ï Jn#"gs2* r77 !Z!~Ț?iS1JUOx(.]}k..W3: 0@> 7^M8 B/G]HL)60I(#պ\);Dc9+Ad,# , ЁD$g#}T %8@=R)/*5#EB*AA%# ᙀ01z4*/. 7w%% r7<. mys;5,<$x,( ,<p6i q#? #,F5 * k ֣ F"*/'$;%xd(-D5*6+9O 4* 6KCZ #?`n'8@@!! )%b+'7^J +4 ! hV, ; uRM'>%'-T+ -u\, jM46!`.݅!"% Ko')$hMaAz+CBc k1R[ $ bB .p W(%1jX(3x@n!  $ % Ɉe7D qyqI1[j="36GNh0 i Pnht3N,+KM:f>3cc$jX^@201ƞLX"Wp+.('#^7#n π̆e& =ןƪ8^5* DhSPU^[\?[qusmapj{OBh`{JȻ -&#uHʬw[߼6\<|/Ϳt )' ~Ag2Tppx z \M0Ͼh<ʽ?嚐=V&X@#7%?4%,FQWIHYiu!Fk_A${ª2ڹ³qԳ*AMPI<,*+04=N |HFKIQZ`gfc>hkqhIiVNL>m,&1<;$k(h 'cH!%+5`VcPbcopbRiSEJONF@>0*HGALTZhM?}51"Z)o˿dZHl p)m-7BoAGNONR h\^8hhllc^XVURKrx95, D_3uMU:`Oܯjg筦途`trA>-(.7$lv.HRZ_`ceThiijihghe_YTRF(C;)ey/ dEMUt_EKk`*čE"1 $,49>D|PGJQSY_eil\nmoqqokgecbeeb^ZUNE<4-%  |-]|  O mI;j"iEKQTVXZ]_`abdfh hfb_[YVS:631.,P" fɖ6 *^@N,+jWKM΃#MgzV[Fa{girrB$)/;>>ACCDEC A?<:;9654ć91%v  jM#Ὑޥ#AuUGA A$nw͖ @4z>:$= 5%s+./14P9:9;<<=>%@?=:0A.*'$!58sHxCbK`E#g^Ա#l;0Nʴ^ˑN#40$ qzYT 898N5678775<0&"a3$ 4"t` !=4|D=eNqh 3E()*,,057643321Yh*)BVۘi,; @&u&&5MiCkRD6#NC)+,-P.-,+)%$#0hF H.}Ɯ9&Qg䷤Xh3P<Ӏm+䎖O?q\ HT~!##%&'('8"! XZ]+$oABGĢF/Zj= რV,$NFcjWldG"EXzLPӋɍ$B=.t EEhMb> ibH3)p <]F6H<vw1Yd|f*)ы4*P4j!HujдEIŋ$>i HQ68ȭ,;nPkGXp@A[hf+"~aa謵LD/sf43 d|Vso$*{&wOKm5RV|D38* )}i&ɣhss}rWOhS_<%J.B&eZ];mG_XL&&@&*eq0u$&ah$Z#|AY֓}  y=1\sSP'L 8/iA  L "%у?  >?#|ipGC8DJx_>'%ME ȃ ޿ 0ᇫAsue@?%?3 GA 4N+?ء; WkzV:=+; n "@t&* 94(ɿ νļ=` O7pzdT` @K02 ) :,%P, ȹ?pvsuaL3EG52g L;%- դ &wo`>C2x70+y!:, ƥɵ$\0o)UJ~6xl`-G+IB:-F.w($6(G`ȴ‡Iwf^! E! JC=(r`% '2 ȵ\l-AOta\ BHB>&q *+4%>!޷ȸ_sk:\q^T?h<-FC>@>-.'' "筶Ĺro \l\Q64DD>L-٬ü0cg[D"-9A#0- 'Э[aĿf#k,"fc\>8=@Lr _  * $Ư&`m|G>u4d][0& -?F5e g `($]1ՁM9cYZ#&'@>G1{ ŗ"v o?bFaWY"-?=E,}T !38渻Km9`L\TSuz>E){" aⷽ~˕x/^~RYTO "<>=C%? طn(ki_ XTHHD&@<<@ ! ϸ2 hg'TPSA@E:fɺmۘ?P]_-SLT9  F:;:l( } ýԽpݕ_՞7RJS+p(G::7 $^p Fu1쿾 _j;~6.l7==F$'E?1$2L͢ |sCg99=B 00E>1"~~C #?Gd86>@.3C;/~U2q) ۅ])2I#95?8)3A:.D?QʱP|.) 3'73@5[O7?9,{ m q"?tO *A1\y8=Y-rHx> |;o6Aj9 /32@,DH8;5'~HOӯ d)ՂWA}}aVp 3>' $9:Yns C$`DJ(D@m8x3<$٘%874"*䣝0 l3.59Hk52 sBC:"|Yq uj?~f$O!2ç6~ }`s1 e}F}v=dZ[$B700ng-h OL rzY-7* 20/, / 2Л:+-1~(,1.-* /'; O_'R~#oN05% !1,,'> ećgX{~RCч+)02$ >$a&_%4Q=1雺}xo m . +*31bú7e#: /g? "**4."3*-(>\O>B#)+X"[~ **~*͟a 7OCWDƭx~gޮ5&-6I+<( q?}MT~~#}=58J,q>?siX,*/1}C87Q~ۼga>?,2&m5oT=|07('25 ~%o߮:K6J') ȗ(44K"!+d$4[W]|ƾޮry(g"()&~'*yw,V$bFn}mpѿFvQ~&+7y}N K?(*=/ );n{٦g%z& %<4 ?&.?g[ '.?%%)S_?ӦY(K19/% %%!| ]BdT⦘|~>`28 YO*&!" u_n;ME?YNϗ: &)47-"B+& σSpCaHׄ_,g? `65+"$+>рb<֒L:?X C, ?d.>;w <,8 ?%a_=MMJJ$cr]^܇t#sBS.12/$.93*o &*嘬X-<?}и9:!%292)F/?o}C .%)Fg~^\F/$3' o}=9`٧] M$d+5a˧+ .61)v~(% :_Hons!(q  062( &ggx޷PH?9O@ w} !/51& 'w>sC77H#g\140#'~ #!or|Si( #03/  i?[4~8gN&?$12-' Qgk9l˾QR %01, t\ O⡟s+e< &//* ? !vX&mO>ax~hg '/.(cFG CS~O9 $O۾EYL+ j$Ͷ4U^B&h-3ȭke<\^G%2㼨򣁞ïaY81z|=߷ZD[Y* ];-Ҳ#LVF$o>.3?: ,FZ;}O "0D;4ƥ_-6MH6 ,2=D) ݴw=LH o=A5$Ժ=ԶBJ7!> 8j˻';E5%/6C>.ɹr]&<<( |1:;7" 1~X&i2:BG<->0 &.8@' @180s *6=B4<{ ˰1?#/<>B9% 1].x s9L{!.<@<7#܆ A"-  ):9C2,CDߑ'P, 67%ϫp_^{m03>:.( σí,",988/3p."  4o#$@=Y!_ 3823O7g̎| p%5848@<CyNK:da (-33,']=K-="ҩ t50.1$!鐟 : {)O +.*$.K& ^ **,'`$Q= 0AW -**#V[,w܍ !(+M7$ 'ϥ}T:}#))m)&' tv~ Ly$'"}(% s g셫 kz& 7 !շ K^U"&6ŹdO8$-Xo# -~o>+'hVW}~mS g>02)"ǧy&qݽx5|fo+2hxdWGՃ^ܕ-2/*Qh pwp$-41& €w؋Gi$l_+^ {x^(/:0#5KxUP M So5$RQ71!l!0N!4. - {',05'}Jy/30'j|zeN++3- / x3W*0*+cxth?)-,- |^5-->(zS)̿fW).Pgч@9xm} 6+,x7'>eվ$#  SQ3u&͖Ab K_7%)&!\>;9%%ښjvAf&T)~$&#yit VO|}dj2=&$mz LPG[]h_"s!7 &"Khn!$Xm>$% ëo~{#* 6D!"!O #(#JUfGm ! Cܾ*)8ۿQ#,! zL $T50ntG&%,:!!8|B)%>'<c'$SFOy' ebyu " # A|s u6!#""Sn!aAj|  " f n5 "  v V>yE_J5 qAvm Kŷ1ȣ7x<=$~Ym$Ɠ{kvZlב^  h LG^]t$U$c޶>a? r!8ë?x)t43 j{ W< r%ꩋ8 }_ecS N 0}IaxtFp;-Dr<>iv͸ZSH}XZDGt!<r&tF6 <o*%=}>魤{]lvFMoXӽ u^dp q0{_Sx)M#);fz'o[ ݃7U'obylx KIu). 2fgn<\)*cW7u:dz|ӽL}D")z$V^}+^z?lf\3^1޺ͬHٴ'Nǧ +GR=~%y)7:G# 賞wk_ #%ݏsZM{Y7=$vn% UlbCv $4ivMS<Z ,w MI{ XV Gu U~@4JMkORmtv?}Ǝq#=5[ӣE* 8M;-+;`5 bd5 8ScCԆ.5#ݒCT? md8$nPcA2<}  :l"4M}Ds)xUCI-[Nj aۑ$cG|X<xPܠOeUƟ;|M>J3R$W)n,'t 6>Ү, ȁ[7Gwv i-v G CHrJGKT`& n@~pտ~ A|$W?MShk . ̯')B] Z~j@Ssz7ɨ۫? A&)'wW )_ZHJ8$Xǰ5 3ះL&ڧ)NSJJ}TĹц?#OݚaRhG맇XOD-ġs:vGR_MfM(ܣ?&z~D͎(t1Ȣm1L~>?7d~6LRi/ҋhss9]IA~Po13IId  $F$VB7\2QLHz}+}! _&V1>Nb=㙳Æ7g_~ŊIO vD4ԯ`}A"_uٳ>9 AG?Vax~~P^Ǐ^أ(tZigʞ6>vZWFgTgbĚ8Gz۳?I}eX$Y1n#ٵ=~PRlרGLפa=zU\?Qg 'FS/Ua?a?h<>cpӛ#AHTV عցG\ٌ5u:m33}D=DP?a?vI'*QݚDT~=ϣ@=ɵ%|!La?C4^AU?6z>cL8г[Vu!Š~h=Cs_?YlU#ZaO?~r~ nXnr~.}zӇ:׏1!-=ـrbܙO?w\pM{k}-=˅ + ")* 1-$ v|yO?pbuQd1H#}•o 8"PCQ)*$DØ_+q04~-M~?NNMKC4"Ӹ Me~RQEM@.׸əU . >AGԠLI>.|9y sǣ ]$Ұ(@OJKKLG;'Dپyň{; C-F5>hJE7& mG °ඪzM035@JJID5!aȰϷ@62 }.G=AOI+H@1_Hɴ"!ao#q:_ EHIG>/ B0Ɵj,#(?F"π.7˽Ji)Sjg#)17|(A@@ACC=2a s8Ծ NL7r>\}$+38's7,lvxX¼r2&K6iE#,39=? >`9<=@CB:/! 5ŵ io7Z b0&.4g9:70$7ŸiLü~ſ$FPȪaxS&/4:=4;>BDA8+ vFšͺyy;Fmڏp%0})h>J/2(S,~kcF L SYMdn#*069;A?7.1}mZͿ4 vJ_R]" u%50e #j0$ #_仅9!f]H8:;93)!`ο.=5mQr2ҙ97@nWIw)錥'5Op4%K0.=ѣN6`*()5.%dpz 7ĵ+>jU_$HNjy jsi \""+nL0" $B䣪MLG, 50)|Wɓ6H2 ŶX&dz$! Lo8ؾR]$=GYsKJ zTm"V@(+  )\32|θ*` -0w\Yy%GB|FC[cGQ,˽3=Bv[=.d 2B6?[kbSʛXy͕v%"4y;%Jo/`'$t켆˼ @nχOja XkZzp>#w$^_Ln|GT2< ƻ*ĥ]#Joe>vh$> 3/isZZÏ.J;G:n%i&*">txĢHӗ%$J5Co#" 6.źxNЪm̚N&siJOSJi c"5/{:^UL΋2-&BdtH¸T#Ɛv~<3>PwVJO>/*!? 2NR䚶9 r&4^ӝiL9jwh}OS}T*?dm#&3d:K6fOmBOǽ #9__($׍̡7=s+BMs Uy,UHQkM3%o ϞI%K4SɧDu> IZdgjӼh4+e6Dn3" (F?¶ϓ-ЏEr*#$KPo k 1 ;{DEFRHZ8.*$ 47zV驫Q4]C2ƼaRAit-"iat͎h$ȤizT62/ħ7b413 ~DMǾ ? ʱ!<B$="*E1c-O#{TH}T9(E1.'t5VyƟ5 M 1)zº*YEθ+N"i; 簞?u "/G* (O6" փ 6=7MK IGuúD͊PwO΄ibx]іIg{-#$$譨δ~641vlBh"~hF>iv0rÑ6m1$LkyV`(("u:GGG契F3'i<;2c™Tf񂧁ɁβiJ^G[, gѧ+gQi&?ё L1sO{I"?O飏tg-c? j(:y9q |{0¾Ix0F'ρtt^a #>t`*-.OHT}D/. ^"2%Nc>|P=v)~vi|H_?# =,T\GY32 aϴ4ÿC}R'y $NJ` qM8V䓭wT𧯽?9U;;O87(3' 00X)J tQf2UBD;e^2Z ;2';KIt&99qM' 0sVH&&2xc/( a% +B&?D*"($J0Xj 0?9(}$( ! m-?/  ~K\Ő7<5 %![ )?D/C#{si9LN7 &#zϔ: ?PL, 'BQG)98{ßGQ6SW@'+0  pŹrm|=TG7H $$9t&, ච'ᅍ)*) )귾 * "޴#*"-ѳ') &˳!+%($,õ&/#)$)*1!軿,4,tr0'߹{Ae5% غ"25 ()&Ѻ(53`(("л-63X'̾162y ȴ552-%84->:/#;5;(:50):3:/ ;- ŏ3#-.<# $'םMl?#$:ϸwT-7 % '2// ?%0)" 0' 8+*$.G/ @ȍ $+ &|-WSje)(ss))9 ? ߷(7( %,  $)G d  ~. X"/$T%0`gu$1  #1җ!0   O -͟m ' x z:нDʿ !$"޹.l'$teֱ[^)' $;B>3,,(  |0=   6) ޞXݯ]!$ Xx4ȴ%@  XIfxy p.F#. 4D?M ֙30 9D㹑F";> y8!'"?t_+ޤ 3%-ʡ '`3'.翠,<@7*.Ѽ2A=7-) >7E<6/$溭$;E>7.ս+:E6-F3KHqT길=؛9޻#?aM5# ;*DN4:¿2I@LP/ľ p=QQ*ǽ ?SO&ȸWI#ȵLAH̬4!P;^?Ϥ)N>M_9Z+$<XKAR]6Η4FCV[-ɋ7DFYW(Ʉ6EG[R @Á4HK[J鸀!1JO[@뱀4JQX:w码 !SV-<딃QSKމQR@<ڇRO9 ˇ-ERL-+sňĭ/HOG#f3oQ |\=IH9 #7JD3=F 窓&:)Ʈ 夙 (=E`kݠ*>ݜ. @ ڜ+%#ןE^p7s*"hX"41T$- ԢF'&2Σ'2$$oX*5Н '-w8Ǘ *B!!5:Ɨ) %99%>>6$=z'!+ 1E)벭+8H䶳=I෵ $@F޷rQ +EBD1I;A5K9;K1>K* H;9%CJ&n)DI>/FG^37}HD p5J> @p27'N:N% DK UX탷(DE!]*I=!>4/ ,L/'# ԝ*2L",'4J/( :B1'7=9'3&CїJB*,7&!D~":$.`U.7;&.8</<"88*ɽ$>r 2.':7+̽ 6$2<9+޿˶ 85=<*ܼĶ 68>@)Ի@ 17A?(̹=h&%'6{) Ƶ+(/9H>(ìiZ*0>I<& '0BL8&𸘳%0FN7$寗*2HM6ᛚV, 0KL7zя#>NJ3ljZ$ANI1/ ,ENH0 30GLG/퓘 nL6ة* , :KID)ڛo$ "|C4 *FA 0DO?3GDC9ۣf:Gs0ɢz">F@?ȡ&j=:_HoEA;2/G@9 6H<4D 9F:qS!=C8 $? h;߷ A3 ׽|!)%A>) %LvB<#0%?; " :&=4o079&8%$ $4F=#z ̷PL<$t g1 Q?O&T? ?%C*U?F.V> >>;1T;ѧߡ 6P5}x 9J08⯼P$01x "0.[xc"1+?p2$ (8ov$!2 0(#1  - $AŨ;Z&//`X1 ) u1) $90-(#&! & + փC+) `$  }K  1  hUC% ぺ=ILE70@9̯cJj=Lxʺdsp_3Y=Lr{%!r:ѬW/ '0 "0.-,дw` թtӜa>]"! )##*8<;9@=97-<`Ѿ9iӤ B&,,)$*lZԟ}$Bi~X9%+)'%+<~,J<Xxkz  &++*).:EpE!wL8?9eW(궐ci? +5?HD oo;GLRBJ|*%bx>oCTMJ}?PB]٫nzs[6=ͤ1@#@z?Tʧ2úUݧý(Oԧw HB@ >VSB! " Naq  ̪ 0sQ1A#y!{:NSUVTI%P *Ŀh1/k%%@ESTQ>&*` $CLXdTQ?NOPRSRM9ưOr~Mi$ǩ-nKTY+aЯ @- p:/~MPME+ܽÁGy[|ZP0i>>muQRQOI8' or б[s,QHAӧ:HFJ!,LNtWϮhA:<{&jL쿜 +FM1؈۵` )Z3~>y{T}A+ڷJÃ$.<\mA- uhDpӠ{4)$7r Ln_ s*qH :  'kK5S*Jķst~YG5n7m7ߤ*PޡvzrnjQgvEg8vsvWA:tW7S^1c~чEĦfmUp^rԹ_M=8> wh8=-|&}ysYzD#}S}N죧3+= ۾E$lt(% ĢsU 0ڢbɹ ~(d\<.:E|۝ _~> ZDd6_Z  < 3\)%~d;  IKc0W.O7pС9>ԣ=$/ڟ3G{ߦm'O 39l}C}-9h XK4g8 > )ѩN =B.g}vS ϳe9NbrvSE| {}TδT9Yx>h|wloӗջ=/WN#)i6;ƻW]>ɜ>Ts0? tA w>Ӈ:`_o(:UН[%{'=փ/G>TeƦG6zOցh? BQF]ԇ m?׃\ u?:d@(}|?8.O]lŋ( .H},."@=>Hp80u\Cq) ' Ôi=tq p$0/=|m2'  R ' 8/; 0OyfG  Y c<3^ } tdfҿ\)s E?ߟ  X ;8O #-'QT?ʟ& $|"#߾`?ag!"! UO{~!!ٶO$! ɷh%+"뾼l(- "鱿7*-5ݫGX8Nzb+z$1$!* ! ­$(0"! M +2]*,0 a騵-/, ۣե7 $01*֤22&LƧ3~*4-6.$` 7,ǡ筮tV8)#دg85*bϯ'-:2*Į=1+5>F +8<.)3 ;90Ÿ 3'NW˴*E@B澮w{:HRH=lX:LRF'@ᩝ(>ANQEפ.?8Q?+4BHPQ5Ɠ6EJPN縌7GLOI䯏;JMOB;R'࢖">MMN7ڑ $BPMK 9Ո'FRLC;dž.GSJ7 𲉺4KSI$ 觑7MRB]] 疙$3qELS=Ǖ-?.!*#5{X%4V &0= '(/ x',`|I֞#.+zm/&h$4 R0." [| -  ) 3,n(~ W!?$" %'-t '(%?Ͻ*(eζ:`c"%Rεr/( %!`ĸ1# $ 1# _2   ղ )* HZ̻ (&  QA# QIy&! $% CA##ܾ4g"$" qD#2͇"4uZ{    Pr/ A 1  x "R x !տPN 5? HY$5d ¦ ,  f  3  ?5 sqGlfq`AR?}CEC} ,7  @ 0c_ pby9b 9 {)7t|{ %3)*- ؼ& !.ϻN&.H+!-+ٶ2)ү$ !3( ư '!(3*6),0,q$W2..ܪ`+/Ϯ)044/$6410517/? i`81ܵ-)94oι 2*78@sBo*6>A9)8BBٵ 9(<%=F<\ ѧ{0=!AK0C3}; GO%88#KQ߲@]XRN ӴD(*XH PiF+,[= 빼*D'2[/ 浿@'+A+:V߳/B,@O+Ҷ0 2D-?L&ƺ0F1JU:7ஓIK4A)BIB& |,CG8ʀ`gu /DC2^ 3D;+'6C1"$8if7@' =:< ;6":*; 9 8 O{:U0 ya`'%X|=(| $(wl QJ ?  y Bû ܒA L$## _& : +<0&!sr;d-  {"1 8GA (i   0"ؽd2<% ,1 -cg0!) $#,y20uE`*p!,@*h0[e"L>խ`3=h_p^pX}_wѣ}&lxU0/0u&Scݠifh2 ? 0cD?Lf*Luc@m L?>gE! L?*z2և G=ƈc`@WSƨ~` R7kMu/2;_.-k?^G&;0Tz~K%h0P0Y0?Wj\2;hZrE& +SK&`b5R@ R`/  p ~? 0N M|  X b  Sӈh $$ ٽy ;eW`{ # 1o%! ^5! X<9:4 ÿO8'CG$ֵu 2M\WO'Я-SY`Jа@-U^e> ϩ7<2The: ͧH[qd.ɜ =dra(罗hpz\(㻏Lw]೅Y0R=W"ߨ4$XPwA٦#/||@ڞ4l'bp9١d *ag&ט %m[z֔>1gIN@̖ /ls?lА5nh-Ŕ 9l\ Ɩ;dO Ț!#9_@yŭ (!6R&D̵+% /$%欮6,ҿ%3) (r/9! '(`977%/%:7-aۿ.>;Ͽf6_x¼ȔI& ĸ(;IF7#,BGC1Ѿ4EH<*p "9F)$ Ź)=GD3÷g<.P9,Ё0AG;(ξ4DE7" ɾ$'/> 9CC2Ȼ:6 $6C?.Ǽ '9B<(ľt(:@8' *:?6!:<1 <8:-<8 +66*yDz ,45& *31#)1."h(.+ ;&-* &+&<$)%!& x' #ſw K?KD~F ? ȅ= FrH)c>'c[>Ppow Iy0Z"A΁'V-ED?1C=T m$(遷|G˹| ~?d / <: aapa`z Jղ/ Dգ9~K|~PC*>`?q9L.mFfƭ!ӗnM$fC%E)"ylέ4քG&ȁsf\oq.:\ηa{7Lc@_VeLƧ4q~PrVadm+0G*[nYdp(2$^BY[֡it뾭[:\ɑ$ڇAHU[s$govnW/v nqrr.pL>a| 3PLL |ae0Xw>l؛l=P9=ɕ0817`e beGm7 =[AtVkOTe*f[  ?ۂ>m0 )M)Y0w$)J7̭'[`65 ܡ҆(>JZ- e;}u,ޟep`S=r$Vϣ}{␷J/׫OoU0yܡS]xHO!nj"!//~}LfʝR'w).(]L# a)/ Pk,-8 ++&큍v -&]%-#?T/",Y]">/N)f{%'G$$ q% Q7&%jOvh 2r?:`> q$s72L7yS:yi ]f3][][;u|~Gt- 0GLd o $*J@2>I2yg-X51^J# suv, GhE]  ; A\Iê .Ɵs*~kpN N! c "! |#c{Rrn.G"|f#&ޜ9  l,WH|#<큮"("x>#)D>;'(e;س, ('G "*$ށ%* Pi᪀D ()A] | )( 0 )&"?0#+!Z` &'!0iAO3&%b%$ \( $+?' 7p "& r $" Q=G !"*f>#  "z9| u*{ˇq xbuZD@ _ ad3JSZ i2vS}?.J.75%V~*ٿCc).x p f yY:(-<Ck6A O=?} K*/>cuQģ0e9 x[V$;_5isrhޖP$?+: >2`g:I_R=e.9).Nnm?OiZK@o|،2)KRSV$,4*tJ lW<K/?qqLS/M623-~Pj] 8M؇'7}2h&_PSo}b_^'=Ο }C\ɏɗ^fK?hH>@"1o>Pjet~PKP?9(ڭXL[T[ NA~lҎʢ] xYKv/؜K?WYm=շ'*uо`o]5b_~;4j.֭:m\իոZ[7uwPW C:-+Bс@b: CЬ=Cn@+g ^8.PJWWXprWIIMVʏK_zb.l8:AwDXj^K? ;|.OsDSSjw;x$-jo)=˻Ô'U J&pZ?[aI5I+͝uš$1'=XT;Pͧex?f_S& aQ-gb >tqlAtoċw8@ ~$e %%=0gX'c4] P[-/R$4f7ߐꍒ} xx>>|F mw>Б9x"#Úi|[{h;tqKw۝=O shcYHa%38Dwz&ڏ=wh tY@¶s#st#z$%$:WG^}{7ǃ[_qN.ݝٟJup.o?w.ڴOw~up5V} gG[SpUT6?G];!ow ws/ɸ–}C<7X+ vC0U>,pOM+> ӾWrG/ܽ}&?;o>cVp/>  ־ ,pF}mhw]ڟ>~h?E_Ӿ&헶+wRwt/ jW?&v/i>+1i{{ J^>PN};IsGI218[Y';Hw /]]~nrM$h kw;p!> #QIe 꿲?\PeC?_pRSD'%}~zk'f0CGS% IE~IW؟iDoT~':"^Ų`(HT87LQY r?"/>+pוwnwg{!SЊS5!폴0p;'iHHѾ.wLwRO{Gz\ oi|@1+ĥ G5U>H+V]U]/2B}]VWA/i?;$}hp"   v@ڝÉ括@p6h@@}@NNu}K@~' 1_E*3 Ԙx>^$$4/ $9?~P4(謀> (䶫= þoyuD>Ԍp*ķ~ [npJδ -"[sXGW źȃƷ# #WmeH:P +@ ]  't``!*$G0سȾ ?xQ]40A gbTU8'ȻUs82)cTVRO ұ=%?MOUH +P< ح+jͺ<KX(?@؄){ :G+;VH C, N6> _0$C <׿}=-7X$>M@t:"=H#" 9A$ X -, =?*0~Cσ@.?P ,?+o  կr1 '&w %D0? nPF2 |! I4@)D Ezp#* ?)(EЋ !V 74|.0%Ļ `}G -4 64xٽ 9`#)N79(#ػ9E79<2"̻(tPWO?B8,?P¸ rkY:2CI= ¹ j%"[;#7GMB">²D *,=NSJ&${M(+0պ O?SYNsĪ,4"Sp?W^P0hBwȧ(-5$:;[bP:Ȩ!.3*Ŀ9[dP@"`ʰ ~1-ż /ZcQpɰ12/* Ǽ *XaPD5(^ɵ&.2.W>ɿ (R^OE8!ͷ!330(&IWPJ;/ι870' $DMLK=4ν8<0)¿$ACHM@5Ѿ0<4)ƿ<<=KB6տ&`G(:7*ʾ"835GD/y$49+п3.+=C:ƽ XH6+!/.)&4?8h&1*='$88$ $􉶹!`2&f] &\& @(\Iy@!2&| X   _R"C?p7M=>o7+NJ}8dK|'_p@a  rSR_ॄWrx^ -݄0yu Acok qX_iwnh5 _L a ǹ..=6gӞ2Lx&돣)]zH4H}}]xQmLHf御 h߸r$&.6q`/8M  m>5^z FNo]t* 5$jWEJV%i^,۷Yi) N^[ [MDInf/48?|}dO&n?2ZNYQ|;H%C e&@4sz} /2Ǐ&^f? |%3^ % 쌣 'xt,ȰI=nc҂g1$ T{'! xM܊n{ -x%KDze!# +ÿg u{7 "". ;:A s!' \4Px$"/'q أa0v u.5#`aU޷?HGi+73/?hUYiI)8:+$4g'+z*iْxti#4=6" i06c N<--J%5>7(t } (9=1 |Ib<845-:8*@M{494!Qa逡cV&%/7.Z=> "$.6( P;D#/0 3 JB\""/+hh6 \ M Mtꃞ!&$ 5:A!" 3d,瀠{uA C c!< d2!!sFH$ =We[!YO5?P  Qi2%t5LrTk&xco;X ,}-pOwŎgAW@)^]QrctfB9??>S& n>5^$'{ǂG 0>1~ @zt̻H A: $ kjөD1|Z5>h?H  s7q6F`1gU ,k܍ 83F&1?,GWAs3SY'4ˊ x c*C܄ Ic͟Y( ,&pqyh: 8bcG >'%rf~*MiiX/q%ZզQ-iMi62\ߒJ _CLSJ Aw)d8.P?։E6hכtYǸ9 ,^IMY Img]u`,FG?}ĄDX)Գ'?E@IJvk?QaiqNoR^3 A2t?(^4U qHA1n3)r1e?&RFQȰ~vO$"J`,ŧyLXe!eqΘsI"FY-~))q/| y1Aytg 3 8M7LI?]BX'3LAlWeNSpl5\S{:3)1}nnXLVSazbB,88QЄXe?NSȏc  3G U 3]Z cg֐&0ڥe1D<~,,MfUl&Xse!wyR<=R(;NYa-rg5fUj_0="JҤj Sz׽#: Sj H.gfZ"nt,9S=1[̒wHgڶ1L`ҏ 9 L[GH`¤4{pթƢ2csGK1TC=xLA=aLMF氯$ 5JF}z C"l"GnS"ZXYTl@liaF)MsICs,g  7cC2;F"OMUF?eFF4XIBEfěK&: "ICwAk-ᩒrURSEBfCZ-qh7!E9vCIF sa)O4T] zOF PM#ɭ1VN;`ڧCFEX&Sv }EPntv~lS՚z[/DڨDRyPl"Xbh{6WLfb NKF&a't(GMD"DOC$CԝTULT [SvOԢ# PICa;QaBUѲ?.CѠ%OFd˯c'͠*m/H MBLUE-e Ue/TRACK XHOP'T7ENJO-*mODmO[BYEK!MYmTIR@ZS򂰇FW~S~D>D7~3~B>B~~@>@.s}܇8\q %Ap胚|@I 􃚪=U>h$=ՠ.hI=h@CP|Q$"ժ^I!KèuB=d$i|p^CE[Pu2Щ<8"d$1B_o-n?np`kgp?~KrE]~F~E>EG~<7~3~B~A>Ai.kq pQ>Apm&|C~q}? {@{@ueǪˎgp![;͏=<8܂ D``quL<8\_7 ?6p?&ҏ3g?hv.3ҏcr?"xo8g5^.sraD?*=?.:=\v~~P.;=?(w!T .wzKEEXN4PdW@P\4a :DZ5 =pvO+Xw&Ghm$*)LJb`tOkGա$\"g0w{08:넀 :*v)(EA"7q[ xrS3 + ҝZ t8h <.h 0 $4F(#Hn?#iBPD-$T""PlicNGퟞInx][ Ɖk[ +E?Wܠ|F!Ը"i( "6 43w'1T4 @ 33z 55 :7 79BIfNh` ڜtPP'"AN I#%f 8f;\]jrjKDy"p:1BlF(0l3"~́˞.jfEZzRf%L IZp07h02:g0<5a`4X"XJ;$䭖Sd!IO?Ej`F]Cz!lB*J+:UtS%ZpOJR%Zj*ч,[dM\=LDw3]OtkXXV:WY уSD УBtTђhIPY];OV1f,Xd`4b@X;P5ZK]"\Z \^A= 4ogF^xNZ'D8czX٫IH"pm4-ZJQd0"}6f` mʟ$MLHF/)~`Cr r"2Hbl\Ųtp$X&Y&mtf0L JRyS.&HEMxjelilffbq0f`Kszv@%ڣR]&PX %DZ,DA,.2I;A0.J{X$`SBh(D"H-A% Bj+h -="f4Ihpj5O$J$g٨PQ$&y"N" q,u\ZtĒHJ(!(P`G`%f4ZE +#Qs,Q<B=Pb u2:(*f"Y*qBfQMʸs T Z-cFu:>i`F Xy̶,jbH;,n^f|>`RdN @h 4D(7.Ce&H+D`&NxtbODbq]L J8-(L8H"+@FE T+ZXbr7*Y6BO9,i<%0zRCyg)]`SBj@D iykTr P+HK n` @v<<ZG2 \4G 68"r)2z9QI 2RB i ,f >儍GDwBh(!s|'_<@10F,P^htxE0 "M ]b_ o(Q7fsշC #nCnEQp" Q9x* ByJv'ґHnxmg;e$D.>'}PGNH+x2t!ȳb: @SvHl!\`3|as|HA?b2KvJm$R\0m09R#ln,,5)Iga LN*l)^)dqQ[B%\Be%ؕJg"x,c= olB@ d][>"]>$_7`> ylslK`4`Hrbz4(вPT`9B xrAG EX*jKIIxE Օh5T- P 6I -4a dxW% JgLvC$W -qЏE0퇺63H-C=sH `og - ,5"T3T\( 9Pn\nJVg=VB>f=puJiWfBB*  d儍 g|gd( f^>`e( Yyb  <Hh40-4Vdj c;| ;B``` 0.l HJ@3 Nux#6nS >K h@!4ܯP@5P X(\]@61gO/.9VdW/^Lf*dxqf osovckH% T.cUl28trUDgs3Vv : synthe7юnE[}lancemptQ%$/lG0nsteinway6BG z%fiq;nhihat-;17 tperc-P@ytomt Gsnare6nF(bassdrum5‡02$2 i"T@kw[w;;wG/:q$[-wo=qho2O3ytMAmߨef}1}m߈?rmqA)I['ߙ7Jﶿ;[wk{YZPg;ߴ 8/M\p{BӎK勵Up95?}δ?=vVEto% $a/GR@;/Ja{yXW>w'FEے\`JonI ܋ ZȀZ b!s @܅ ?@1b߀%Vw"S fF B]NJ+>v'pVCDlɂL@@t'`X٪qbp% S܆-Tw* O:QU; VN`(@ W-U%KjB+Tc u<; ssQpD  aDGh-:"*wј bh@@ +CD-訸Y\  8pxఘ&xpfagD1' @pUpPp0 `@XaXBQsWrPPrWvTv,@,X@X@@A4܁4X[$`  \ 0PX|D>ե@JJ7f*Jߴ6: lG#'@TOJ\`hncRx<Ʒ <9P,ր>h~` 0J4$z>q_ ORK|[4!Е_!˅Clo8 I8%pD"x%kb`xx.}EH(%'nRf={&D| c`ܐm#|  % nV@c` ρqC3scs`7@Й92@x xh<~|`~~>?xCG v;h+Pb/=Sa>|f@E_`$DO^ĞUmDBl*$.U^Oa/ >#%We_Ԟb"M/ ܫ}b?GO (bESH3JoOW{>-{&ڷa!j|%{5z&lEފ`?ǰ~Dz;7[M_F5YH}Fuf 2o ܯ~CפG>`Eؕ=olEJݰ؋p͓!b_} X ~G/@ퟴw}z3:.p K'F8Uðva#=(j_#3ɿҖ þ|+1>SkpyG_`SBث[K`_PCC?½[Ө^a}/ ~t{'Ob #~0b/Mؗ~V~$IxB~2} { w~gza;/?<"n>|w=[M [{p+װOKpB?6tE_ U&Bz/ 'MKl_Bڇ~|'l;vQ[ar؈Ci}Q*X)Wj؟g> \>zT֣La kp/= Z0"Џ]})C+Q~~wa":*{?"Dو'X{Z%0p; ֐~'ؗ]'po&W~$$Fu@l !!"{tBA$t@h,?K40(.Kkdj#;=|FwGj t:۫0݃mU[VʨFu\_ ezq3˴$ DB#T@hszps:z`GZ >M,r힮Zi rjCVzYj k  tbc L 4ATxbQ`F]rYp#V( "-5ybg*o!=OH.)f3 ]T" $VKB\R\0a'ScY&u2t|4!p^`OzBWi #BRrkrQ+ O IO2աɈ[2w HuU4xp'hXbIY \)9=A#S酘j KŜO!'C#$ fu,3r?9pCQC'bmnN|Ѽ+Vj23-hYmȌuLH$ }k>NjH MoXL4[LkBJ䔵/m!Wi~pvfI! Cq"D2,BV;BRXIfk dٷai鹤ȴQ$J:2*WʮVΘlw{ bH•TxGSXX!#%ή,%-+7b-.~~]ns!SCȘ ^\እxT5@yܤ*'G%SXz=:Y*2ՌYliTFrJ(S;#ДIC$$-9r +ur c UC+z%啔tYJVRZtTb";ՎZھZ<${ TMeBUM"`E->L&UJLM) 򲲶fL g:}-?X= ɗDfeȿ]+`L=$  :1\UHBYoŞRTi$9;~_:1:6VAiFojºl)0񒈒 ü6j'#s2et/jY bTxRp6bYy&?1U X&?`ʣ+ uKd$،;bZ\B'LvRK`f903&FLS i#m%l%NVxӈ5"CyS+qOړ4ۑ GҬ"BDU/N"{ ٳLoYĘ̡tFBK7EuY?V"5(za+^@ n) bRQfma0q;EXo";`Eźk%b`:٘Õn2VAA-LT^!F}Q>5fY[?QaJ.S6M+@\^s%L'EN6U:*,J ֲ*sFnDCvEFJMy8 $  $x(oe!Upkᨯ!)b0'+ȿZ*䪗2PT5 5*`Q5VVMUQpRSKaqH'd}%G]gq Adtk-`Vmo)!=E;DqRtRHfQ4"#;Y+vYAa&5m>* -񤈐ƌ#n0t M5)Y߰qVRCe okSd O{Xb(=jAi+|ZvE .(*Fl̾@LVOlTD~EE 1ͷYn1aUG}a6pf[#"xM&@$  b[G?":ؼK"i:.%8sYԗ֋AyGDZQ: kͷABB)EH՜BC"T*SjGIA0RHlbD!"ƒ5̕49>I}aYRU.8v/YR_[kGQeCDIvH#+HKb݈FT{}L܅{mp`n@ LNO H41:- Dع39<  ,0\4@i"~C@0p/ j&CsFCsJ?hL}pfHbKY/@k.M0" JОL oY0SP RC Cp @<@`81⨂$$89Pc^q⻙_ Ԁy,|?@À   Pcwkr<* &LNLP6c Z?A l8y{1樘9 \vqudbw^@`px|~A!B>|Dx HpP``< ^@}AIxkC1O񐉈      @__v. <D>] ` /2 . ,@Q_@ @e@@:@\@X"9,s?LTx8zx 888/^]Bppp _A/} x p0"aT38 p6$֙^VxZDR<\$TZXdP0 Џ HXJK bdb<- 4) ̌0x+B<-"Z)b.i*R-A녁OhGKE,CM%J+#+-+lx+B<-"Z)b.iAVxZDR<\(3333Y '#%!9898X9X89xZiK &I'#%  Y Y 9 8^VxZH1111qqFx+B:tkV}X4js.8 p:nSN 6IwS`$a| Xo_P" @| iy> LP A@y u0 @ 2s0 @fu `Aفu*u h@I_Vl(APzB E>*u APءQB V0zdt APɡ"bDpAH#"D 3f $Aȃ`u" :| AXb]6r#(MR$DH3d"T/M$H=Hz "ADH &$LH9ؐi AԌUH6j *@_zH6k *ATܩiR ҤH=ʐh jAԃNd(0 Lzu &Ãș2 d>Yx fAL(2=2j A\r .jnA\Yr).A\r .M; ~"gm!AB $(2P|ABD(9xPppaA҃J LL)ARJ”(9PfARե}J  9Ps2AJuPc2%AJ* 2TL0Ps%Aʃ͕Ej ^4PiAZj:U0 Zj &[1`f&1K0}`ƬYf Nm0 E\X7Ȱ?Q`Ńxiq`"ŃR>`E2YʬX0Zr`êUj9V blD1ibb4%aI4؃0 ̓6l; g3`& &^4[kc !Q\ˮ]| rKl`ڡCć&rhp.`JtpmiK|pnR/.\̸;pnL..2..)=pn-9\b1pq`b<x0 GSyh~Q/2dɧIE"H/|6`P.q> J|:u'^|'O K'ǹF> be9k/IN WT#B/ /™^U/_X{K^`\qfD/"L %)_"zl0`Ȁfir0 `h&1]"+^0( |PJ * 0 `p'D#F y:0`&Gc+0 `@%@ l0'Q`-p 0dzנoA^z3  D10j`e w(0g` Ae =0jP``A΃`\E5 0`%FbLԘ80zR`Iݓ|0f2`$Ƀqf" BTfd٤,?9h}H+S˳+ @D#<E 6 o,uY08c-L\sq1ϠHe`1Z uY*&N.!EP#p'`~P3Ԙ b0flg"!QtatpHfHC(5Id38[+!eo жхef?rXitDiY0$M- bh~a6J3B YY;!A A  @&8p) ѷulTY3 @#| [.$(ckrxq-b 4 X:$b A;Y =u&- pQn8pX Ҍ>,pA݀cZJH!?Ƶ ^IY EL x Z9$I>&6w d`iZ'P 1An &80Pq? ',r w; <9`]w^v8 pYDÀ`N/Mp8xp`+aEBU5 Ï`!'Ʈ!9:vy:I:: tᖶ" mMYnc8 p08 p.<C@NPIїf4(0 jB͏ "Sq"&&1 o@e@??0< %%ca{F:! 8f2$H%$pg{mLlwdb_6B=n=dG3Hq@/17H-y|ǰ1P_54rHz4x#"GXYf00h#P'Ia??c5tN%:BjQ GwtB @ICHJD5dಗiZ0eE#ű " Ӿ=̱(U~ v?/J0fO?qA`M&pO>>ZCG7\:a{پW0/&D`kx׈bAo'BIPŧ`<~#V?PLDA /:2* JÃ&R4;F; #%+aԊL'Czg$11Q EvWvȀj?dI%A$K@#"flA&ۆbM "9X+/ HRdDg(2L>88 h J 8t 2`m()M‘thWY`9eBZ"!ZI 龶u+XPv: l@Vu`B6F\h 2@GѴh>0 єn7Ŀ6 c&R\hYFB\q44& i\93ƢgBf_=2<В L"b5HBp7@CSNEonl#'@Wi T 88Y@@D @-hJ`064f/VD0 ^Iwy(;'>0Iˠ;A 8dO;Ob ?(01rؚڙA胀k6 <vT"w""3>9^r  qB禄@ (9s 8)w ς7![wa ,ð/+W#*LrA ؖ,9b? >w0 2ufO!B ^; [W A%x`X05,(fŐd p顇9 RZZ(0B>v87l Xnѻ5~5>: `bfiZDRe)RC A :N4<Ȅ V79xc0hLf" ` ui3w}BW){6X P*|JW/#XDWÕ:w~ "`= PH@D"#l٢" hNK\U凬 !ED0sUVU@MM@P0b.̪=fDYS@Y ~gWf 4G"_qTi#WmčЀE>0PkFdW2ƅqqqs*nTO̼ P?2Ҡ(~b0~e@db p3 !5s.@Ն4ehPc#26atr?;#X+ThPpbc@eeZ +$d-<*:4hT,Q ?A<ƄAB$xNz'Ѿ }%1QxCly5&?d4ilYain u*#F t,0W %*>Aq`ZNi 2& !gvm͇~9>ʷ{ۛ~|;o?`ݿfH8כ{F旿5J2̙>3ʙ3 ?뇞LTx< ~<gzp oɍ!n߻6xהqCBXm|lw)r`n- ၂dp|sûD{ϛ!rɓ 33&As9j" 3ʙ3 ?뇞LTx< ~<gzp oɍ!n߻6xהqCBXm|lw)r`n- ၂dp|sûD{ϛ!rɓ 33&As9j" DҝPO`0?S:̈́K1g^$.N"*V).0A|g`a610QNqNqNqeNuprS@Sf< * QNu Hx\FC@F <ŏ1LpW0SL0/<AmH&w07\mZx(X\N n b GoAH".yh?z-s;KgM|탠\,}1(o2 D@8LJkD_v/%1 rIbr"e@I.LS}ì Sn6` s@7Ҵ(%|GBxX&"4T$k<ÁI:"+137`zq0`MZ~h0 ^*W ?wBY Jt$`,okD坋(illCidddtbK@$hV&2 #F`@b q'_HG_DlQ HJl [:.8l(oNz6D 6t]^E 9 ^E7@B9dɈwVRPAAQ ((&偨PiJ&~0!KRF}}}6gf8a\P\X ,>eL<3>OD P0e"( 9y  5fCo |2@DY,@".%JpQsh7qCs N5`Nl/a‡?&$s@I #`~V!l^ IP1P A0 fMA1@ay Ã#X0 `v ͤzƐGAA.?8x @8x  CMX_*v3[ ж6.`65 5!@lJ[sleV\~a`l aj@C1 l8?#}xZABF'G5 Ohx9{tp(iʆj ޏ5 gSEN&u8 K l<Yp)dO"h>MeAeee{;s 83AYS8CǂL 'yeBl#IOs 3oCݎ@5F@;fRf"/hУCɅA:t@\ tǾAHQf$ Aπ@܇2SC;=+hW& =m^eC9BS|p u[ F6"k# Ȃ)Ø]_`m-bq,rL'PLn( pGP7L fp 'bf:1@Zr.n =|De@ @ @/,dSYX1RV0%|y+dRkQv"f/`G;"9 31K7p|4aKg0υΐj34NZL?Be;Y@O/gnC0C 'w >v& P[ )vJ@=J #N"(Qtcllhm8;́& ,00<8O?|@`tvqJ"(Ptt]h@na=idj`G,ڛP INa lHPy?@h7C :yaٚxuQOM]$3834] 0O4CMi0d-(3T:%"KC!*fg 7:>t Miy&8 fZP6s}Cu^/Sjd fXi͈5>[aMb`͐5(BZCh 1v k-q4$Yse 53DNk"M zZO{h-4:\b-5pJB`k54khBdFXkb)% hAiYe kYШY`5XYh 5ZkE(k+ Ѧ XnV!k!!4! !!k!!F!8!Yc`!"5""""k$"ɱ""^""Kc"h"-" )34"6"Z+"k###Z"#k~#,U#OS#ik##a#6#rP#v#x#Z#k###$XC$hp$)$4$$$F$h$$$Z$$Bb$m$5%%Xs`%M%%%Xc%i,% %51%^%Y+d%̈́%5%%%J%%%B`&͂&5&&Ә&Xe&-&&F&&FS&i&m& &&Z&k:&& 'p''BC'iQ'Y'''k'Y'4','X`'͂'F' 'Z9(k3(-((6(4(Z(A`(((((2((M;`(()&)BrP))L)k )-))D) )k) )5)v)7)kB,XB*h#*****H*hV*ղ**Z*k*m*5*֨*++k1+,,!,-A-k5-]-- .k+.M.5..*.X c.-..F.Z.k . *4Xf.*.J.Z.h1.-/%////k/// //H;/h/,/k/ͅ/5//Z0k00f00k"0`9B00k!00400j00Cb01y11Z$1k41151t1ְ1Y1h12F2222O2i72%202֤2Xc2i+2223k9333.3Xc3M3'33X#`333V3 3k133H3־3X33h13q34I34Xe4m4y444f44k.444V4rPT4 5iU555r5Yd5ݚ5565<5X;5i566&666k06E6&6z77M*888C b8-8588Y8h8t9~A%8Z 8k 8M8]8f8 8k&8)9?9X99k9-99699XK9h9I999A*99:As`:-;%;$;~;Z; +5ܓmLc;͆;r;h ;M;`;;հ;T;;<4<< g pc]Dw  '࿬ o,,8+$vqZ<~:gшM:2-}@ГTRL4 m6xfo3 m6xMB `Ԡ5AuS)", YfqxkK@P 9HnA[db[^^!/@+Єtx@?'xrv>}Ƃ| -73$Oy?~>ံ$7]U 0^]"EƂ8p'1ձx\-ɜsgPܚ(a>~1ffG.Va.ϒgI߾f`;Ic6w?pY ;I 9$R̸?;p {1xƝ$ùß߰IٳBy% z?x3F 8[&f}߿zy(ߙ-;8x<|y~nWZpw=p+b~M@$ܿN­|VZWx`2SIuxp j\&9^|O`>~xf矎ϣs\kXV .8c.rE?5?γLxI~?N.{?|~?5w#mk;Sy^&3~m >^YWSցacMsD CL~}y G$ pſG~F6l !پ /9qwFo߿|3 {!F0~<>pR8^9gs֝8@|=r?vU8~ > cfy1C"gfxc|ǙО'xj Gx29 ۿsoß` <߈"oǜ7 x7/Ay7 wsJX%ta%h<͘ʻ< @G mMx @ W7G poQECgY/lfk.A@Cc ,ߡ<`+xmԳT.a qo? >~`W 9:gy9pٞ0^@?~}:!;~p~@c9`0 0:,#aat?xȜ` f,x<`u6u8Xl>石ϟ* h <</(; ~r>fc>9!x@$jȨDwkmPyF<=x<.g{{@sЍ4=x<.@:xj}g?~<Xx@kx'b`ߟnƙV7<& 1̝0 wg8@Iߛ&]fW~[۔݆՞ 1%.$7Jρ3{7Ox~yG]=3?|=».~/LQBQ BrxÛo7A SQ wn[:">g>p&L2gML^\xs 8|+d0;ﻤMxqVǟ<>5Kkpt65w{П53~ks5́mk@Æd0 | 0OeEY <rȒ8fcB# `0z/ d:8lDWGy |"x~C߿㟿w>`gـf͛߳7xJoW Ѱg>g'?Ïͻ6<<߷ݻw| ZP9&2dp L3Ϥ,~|#|l޲'3~:/'|x0f2~=?>zߕm]M{%A$ 7w8{~~~qy?j߀`y6c><1xD  s=+!|f9^K=<3X'CnSx 8GA'F7Ny!x)< 1o^^n6 >8>` x"tqBy}߭t9?}"?y ߟ>a~H  fv߻6n:/0ɹd{M`lv$Cwb]%|>۬? ra7y?~.fs8~30Za).7ృ >gL~ED ߷7 E\Ww}`]ÿ?nݻ~\ϛrGQYN|0 @30֏8aT[~U o-n x3 f7c ldM {>߷o͛7!O'Y?bA7w&g \ Lj㞯'n%'w跒c[#3ȽԈYJ Va;X}{;@Ӏ$<&x ,^>v|~RC7)wCS`nwnv>Kf|2dYC ~G6*< v VEkBC< @Sz=5~߀΍v8By ~n쩋g3@ ;fͻ~O7◓ݻSfL3 qj !AÍMZt 7H7M 8#B1N~C<zKcEws^­~󝻿ߜg>ٞf>_1G`.ǏxA?x_x{;<fy+qxv/Ro><̓tw?~~i=xt*tU $s?د*:8w8sn,316~^r4x.N|ynI~A?ȂR_ϵg9IDǀ~c0i.Rpp$1 0f0clG|ݩ:3S^@2Nǟrx>Z<ߟ<I PS?+?ϙ} 9_7``/wէuπy$矞<sMwI~B㚻x #Cd7 Zí7?y3Ěÿ< =w18?6| fc%x@<CB xK$Knfb]!x'Æ3 \b> $D1o"5XgC:H8X~_#K3DC#+cGwF~+ѝ$sV;GwDNE/}dQ/ ɟ2St2!b kӜ$f?i/#I:I,~>KuX>RDvXbϙϜ ?~} <>|0ϞŌǦj[=%X i8clÛ߼;w滚'~ ߻߿42? |<38&IL> ?>6?s>yÇv~ O1~?Cj?p p? <쏕!x@ %Et3FPqb6kSfZB`MVXhtYHdXifkkdAVtk> 4BZf  " Ia m # ֔ Xs h ! 4a R 5kVfk m"FC;d 5ֶ\o 56Gkh(V kY`AP0Z%kR}"X`(&Zk-O)ibmj`R&FZ`*X`y Kc ""##V###k-$ݱ$v$5#$(%Z=a&͉&5&ր&XD'''M'h'U'4*F*)*kB*ݰ**P*X*h8*]**]++5++Z+k++ &0!@8K,y,F,P,Yb,,5&,p,I-k-001Bsc45%5 5Xe5̀56֐6YC6i6y7&77E7i7m868:D:(f:-:;;,<8<qO5!9!p|p.$&Zy f^Ʒl;ÖuGt_ZEx ފgHLքtmR@8n4\ѲBo~t`A pB~'pGkq0" OptRюa`fO~f|aR[ fe`T剕"w8g. 0|m=+uN0g~vjf$ 0sŒ3 Hbl.к+ڸuNܼ+ules/mod.!79li2mgLj nDLKd LjgtFc_nn^Ti: W % a葖AzIojlG`v2 & ^=0n1.E"_vpl@`ݢ(nR^P P o0?SP_PJPjB?\6+@:+R ʢk(zT@d :S7JCBh}&MI f[: tv@4جjȹ4Vvgav8vov,䳄Yh\g%E\<8R9Ao؏{gQW Hp2SxUuf YxGxJ3Z$.Vw@zTj)\H ("R I Nk?av`rĤ<SJjBaRaP`N ygzg&ntk[a̴s"a S.AL;7kV TYr>d0<@1gut{c慓ٌ-\Pm W:eLT`2w60. U UJg YN\e2)茨#ՙ0b3bf` Ag ``4}`H_zJ3K>4ܙP\`;K&Hכ $HfqygxV` r.28Y9# G̘٠a:ݰla`~a(n0raioJ'hEfa8,Xe idJgjv(-q(lCjVVI63HJCg&wwL`$Mԃ-Bx=sH4rq0=Vm,^*g_J; J-1sNb.˭`̣̏zc@#QIe~^sěm״Mc-f#l X3痤mjdVeditwf2q?f:e pat0/f+ͼHp沀fVng;wL0q1`:lΎrH$nMdЈv:YqQ u4[||0H2߯ ~4Hk 2'@0` |jYȂ~j v "j. s2[ ykLeɀd HD܆U=p2 $gZhJ g,XJTX̩ȶe:ِ2qg L"ԓHntխ4cNsru( o'A2pF).~dP2z`a6bg6=dgDeg>gB媮  KC(Ygvgn`-)k |`vqE:`Axgܚr:Zlp|$;VlbmR[܎t槬QEBJgzMZ]p (|}V[d 1r B N9').g"rA gְf"K`wf s. 2"=f|I37~8<"z_.0:J@0pM!41|xޛM.K.86Vvx`Llm 40pt4'K:c.:Z a0djBdfYj=TI9XE XT7 -6mۣ ZU\Ct3XcXQNn"uD9vagp!?9l $M6[2(H@3@ ,xcHe L&x Z&b& @Nhs/*  @#s`8!(@,&D <K4<~/ C`z|00Q 0QK2Qof.qB .X )X $X0 0 @ށ P `؞ p ^    ހ  XAd đ iqe@x`@`@`@`@`@xg(XI'$=Hv=l"`K'Ib#"pNgT`]K姹9`w`@H4 -nlP x 6b;XR,lEo2R@f<:02?N\1:yCqL}[ޘĭgA"`x$b;ѸOY.sVbZ6JcXz%v`<[vD%ιvJ@gr/:#}f^% R0W8oQ|hnQ9 yI3Ouf @\{m afg403xS@iW0k NAi2ra"a4|da. a(a&3Z, Q`bCDt 0BAHA #Jbg0v1vlv3^]&l0 Ȅ(5/ sL#{#J`QaB4rx0 HJgFnxE*aַC~a ,\׾$fT\f}@$B&f#{"Nܨ7`.}gP=gdG g^JAO ePk=ձSÑBa;Pa%\2pm+{jWqaB@T Tvk8X;Tdn27 Hf[I O3.JVga8 hgC g.{ g2h gH<^h59쏃@ SOl3Y C Eo|@{n.cFg&g B#mPNu7idf݈songP1:N st-00:modulesM;dog7ph1s.librytrackdisk.deviceM :x^m1!2"34$5%6&78(9):    F$Axk Vb2xxS5Oϕ h tX(\:}hS@. aY+q `EBrTQ.*ʅ1(r!A"\U .2 (cjdQdeT +fjgQgZaԢa#,b-3 --- @ S",&' Pp(!421219 *wY^cjp/H *=Oby4Z00 ;Ȑ9WiuI)1=;Ȑ9WiuI)A02X~2vdȍTɜDʫ4˺$ɐ03133#CnJ$R^Y%a`0414244aGHIJ 05152535,~5aGHIJ(0616263646_6vdȍTɜDʫ0717273747577#CnJ$R08182838485868?]8vؑ!7R%s0919293949596979#9;2FD0a1a2a3a4a5a6a7a8a9aa#Cn0b1b2b3b4b5b6b7b8b9bbvd0c1c2c3c4c5c6c7c8c9cacc$;0d1d2d3d4d5d6d7d8d9dadbdaAdd 0 ;He1e2e3e4e5e6e7e8e9eaebece.eG0f1f2f3f4f5f6f7f8f9fafbfcfdf f !"#$% abcdefghijklmnopqrstuvwxyz0123456789().-'#:/ż0 y? 0`@_3Q <1X 8 0vx @P4`F'3<8T@ siIq9 αc@c20O l¢0 :v `qab:9ga8@&W-,2"B RSk,`~#ۿo?q69M&>P6x:+;`6*hxtb p+r?K'<V7^H~|bFj R]+͛uC>$-O|7zBQQ"7@{ l~, q|h"O Wg0<ӊalaDanm n po$&0X(0rp&r &0 "AAP6[9 wvHD{`Wmms -hT@N[IV Z'> O : J@`1|ie r{|%*Z;_]6Z-]g,g.8"ga=F T,s,aԝq [f0|pbr('i`(B CR6ڻcU*bܴ4V㗙лWV wXlU&lhkYUta)JKm"؎Bj8 0Wl jacpu @`V :;&+@yq󿲻`!GS-.!@J <k04: IӁX@8.VBjo]"L zB@!xG@O|cf/P v(QW-gIjgIP^TJL53Y7V@wdžtz1E34ZK:2[4g Ryg`ӺzD. .f2#6Eq/Y䌎Lf|JGRn٤v8GGw!m m=fڭ0:lHga,G.  U 0''1.V;-~pnivGf~3*:5݌Xh6n/lKֲ5fD>Pˈ/FYQ⬚3UW*2OfI`]fn^ O%^PP3h+㎲% f0Y!P€^,RA,gS#"iIHHL#p0p`u3Jg=gspg$3g ediol2SeIBf!Eg='fwHf)v1_T613,Fv0vVf`f#V33QR,E!5s lhJAg%P8\Gnܼ(]\C,wΜ#]7oif]$.Wf$ YBp?oƶ><@{{`` fLYmՆnHmܲNRnCm;mt&YXrn7n0Çc <(s$Mp}KqTqPm9Qt*Ʃ/ȍaFr̆M805f8ߝH]EC՛Tw ST-5Kbq\mP"lzT&9%@&J(Krph#s )@lK%|7Gp6&6r5|?>Wv#0t3-J̖ B\%F!;8j=>ffř \=;Kf. ykf$fkx,oa,_@z('ʌ$ۏrCp !30<l 2Vٴwp&rfi (BZGa@% progssforme~1rifyP trac!itializgV Y+Q|removand ingrt disk!please enter na@of volume:st-__0^Rf˦$IeuBfԫ˿p3sM&ꖧf1|x!|xh5}֌W x59 8l ˣ Nze~&4Jyg?0@B Pe.RGss fִl(|`zip;dlJYfԢNpCQ Ƹ8E--j|Q"jE-j Jl8# NpX:3":qE9t1lǦvYW4,LfY6+ 귀R(a\ YatEs$a8<ͤK Kb?ynDRXL\dp n)m"r5V0AHA5ߙDb  Df>rNu:ۅdlH܄V2 fF8ht0qAn$!f3|pBPXL%!4z&(( !Cxƭ־!PBY?&5Ǒ80f? `q!tks=J䙗_M w#an F=91.  +P+2f PACK~6!I *,+&$ .(aJg RA|.;nvFZo&Iz*HR(geo`\S(Hf& Sl@( S7%o|m6<``<UFN#@8,D{-2*#9ʷn} g:fB,>\ g&2)066` a|`(Bp6jpB8X\" ^Li3JAg6BA|׏ltSCpx,,vCfOCp S@e%Nj@$t,OyfI640a<`*+"3'+3ev= +*BSf|$A2rle2Vvg`eLrBDabDrL0H`8xBr >qm+gr ]E1r,P )w) vC  hc`#:phh,8 Hf0(GsDC;wPA/ eY+Vɇ>'v6h@~8PZS ?!&x=TC9[`ӈ!NU<RT^6 -/(@Y9qBÀ($d| ''|adbPb̟8㥓 V!!AI ".8??.0|`4ڠ"-q &cgC5@ ^ǶX]hB!{ceD'J0f4R  -?4zpzZQcDZԒ`& rj_ T?@11 ́B0 5ZRxDu0ԂzZA7C鳡2rzm; 9 {T@(QD e0 ^<x #0 `޼Ex Y{1f^`2g͌-Q#(h :@sJ20 J( fI0 R(&%0 \p R4nLԘ0 `0 L֘0 `d2ɀd*T.U`!A]xĀ4JgT TqZIzaV,.(0 @~5T.`Z@u3%,Qd 2=+ v6@ɸ^Fy _PN70 I$H$IR(He,Y2^I9*y+kW3?\ p3*j` p1o1#Gil e e`rթS  Zh@0 ]t un]5Ib@쪁U3PK2`"&D 0 Hp" D\?l hAЇse5n ֨APU)Bք=bT (AP5=3iV-AZ pPe-AZ 1*)%Aʃ5'7 Pb+Q?2}Z-;(e.U0 0 󴿄p2}!7ʠc&_Bc $;+@fR@1,PZ2nH P> @kրhFw.HP)0 U 8 `b ՠA"%*tu&р\*3e/^" Qyw@dQBx2ˌh|ĪZz%p9( b2@$^ =*l'1\ )]@$@:hb,D3t@9*dԀ)Ji$ jHKa EY\d4a _%H? &B] 0P`.u (G0`gR¤*AR|2 d >iwR,H) >@{9T|Bp NU6ˡBG1Ϣ촃.Xr@쁌@x B@aĤ9NC{Z&` ˩J8hr 3?0 BD3kuZ`'M/T;= z bjS"k3Q`@-ɀKCl !iLqիQ/8 ` Xp:`W̧^~XBeWlv5 '^a}o/^ x >i@ q$ fA.=}: G .>@d.[ {CQCM;G y  ~xw%AyOB|AHĜ:ڋ ( ps>KQ tZ[C.Lnx%0 A\ۅ%>.5P4 Cк (AʃPgA3R3jb>L`2j1|P},] hy ?M/~6z0\KxcM&>d pL@l mKޤ/e&_`D0gA[xk̇!Ɔ  `X BPgPMN.a !SwA>GcG1?@au{ oC`0 .XLT0X` DFCWR《x?c,g `7H~_IlD4 &_d@?c2EH/F:p47A{z9:}9W_`p0` "BC Ij0`!E<O@c 쁌@x B@aĤ9NC{Z&` ˩J8hr 3?0 BD3kuZ`'M/T;= z d.$q"PX+I+|a NLNu m*"mБJ`jS f dZBAf dBG8vBA30HxlFDSBf QQJCgAV30HB`  3QG&kPoG:tf dQBARB3 gHSCf QQ3 HC`   AgBG4vf dQRCBB30Hf RQKs0`2  BBvBDf dvx@f RQDE HSA"Q`Nup]̊[-;@LI2c$*`ZKSoundtrack7 V2.3!Coded by: K e8sae(@JgnW$A\m׮k"/]sg`|f  l*B U#܊*:":`>g--Xܮ7q Z/Xn P XfW@-gШgwZ{H/S?P𬾼+X(l#2Oj nx B-Oh#tC cW,ŞO"F:(͘.7h'}xr.n C E,xb #;@8G$w l 76;bp]< P =n&HXvc gX)g&_m.!yl~Ce rGâ >f Ze `!8 -BXBY" 0Sf= b1S`C0ݸE1(h2(X(Qy7ha66r a&ތ QTN|2 aACCEP& \arz2Jhg,J(JQg$fwl@op@ݰBCPQAj-oĥqڣnت t!4-  &9pn؀q ؑAf46fI0JYcBg1S hʐ w$ڛ*QT $GJ0KĤ>~'dȞ* W/2F]K\d͐%x M vʇ<$P@xVC qŸh/ЄGU&Al%h0!Pc:3>CtHb~:\08rw7)KBeݲ>G=1GL*x l l0PQk cq\C쌳g ,EdHh郠C"!D1H{ V0 OE&׈4)KcZTn1Pcde}+ELdq E VÐ6ڤ+a$ iŕ|1h"hYFS$}F+ \X*f.mx2Z;.LPmf"=GȲx@&2o M$ jHqǧx|(q2W88 hp)H^x, p'a@G ?& M#M >D%=ra2~=xI]| $@;qp7_] Nl!iN%f>KfSWucE=ſ`)qS $-Fè 8y{S_$3?t;sR&NC懜9bHl6`4BZb# 5@ëNF|S96͚EHu a2A,[%p$X-jBTFr0j`}PHvxt{860v O(3*E|;iG1S僳XAJpڐ Ho%xz {TG .Z,zX5g@YL3ě@2!=n@dCT6#j_E.8&0g cAh)eb㱡  KCL 43ї<2`2"?p !H"G6XJU :x{B^fߤϚq0 awg t3{1XP`byp ,)LQ=EqɮT l%baa" tR__VN 9`hᇀ@=NT̛X# Ȝ@(rec;> %u k;"oI\߀21v,už@1 ņ s,PR8bwτ-F% eƆ($$ H(!$3nbϗi$BD2` 5Lg#qT@HTG;8;8Aa30y 1azh3ƽڌ$6<@J WA^8ܚ&B|%" F@@Qs7Sv ,Ɓ4%G dz1"'TD<9@QsXbk m0&O_NGX}Ub85D@PIP-'`JĦG} ft8 !xB(2 7?䟿Rqg@@TB 5G [H|F?[9H@C..*H04Q#0gAF@un0 `@'Jp*[X(w>d6zGV{qU9<[c:(~&*4fs臖>dG,s7)OOנ f@dP4^rHz(AS.&3X0Fx~!{H7YLu3N;\NJ5("?(P Foq`! @_M*eZhA̰2fh'   iYRb汓_G@)'uق&i TCTGP9  "Uˆhl wB pgv4 7F 4 5w@%u RA˖@b pd   GaOLppA@TS)S7 L ?j6j$)D9 *@F׀Й" ؃8@2.M( 4~dkԸ HҸŞ SXr7H+pQCF94 @2B$@Ӓrq-it"D$сgzMCCGU8pJPlp 8K$$T @:ƠD p'j>Ơ h(Ny`ȃaPOa@€QiEѡ P+e?5.`M@T R]!v"n ǒ d-hp 6 T%xha44J !B?!(@>'AN;NqB`ؐ`pmr9U"K`FDA@w 'C7c:2 #!Hc`2RPXMOWd"EcPB m0 ˝1QGLXJ ,"L"La2H aT0zp-=*(`Z_@g2x*? sA##1֯=v#˲{j=Yx$`}`AN&=x a&`c=h Lf8|,0XeXb<(bvΉnN0vHRa᳨ quY$lw`3xN''(=|pA ;_!@+-3aՕ%0,,`qf(hQE" [|&^ 46k81$'q\ @+pprQ|fG3 ϾÇL*FL8  v@ѻGa11u?@%w$L_tr+ݦ~`~;xvH|1 (@fF'ܣPlK`8"Apt&<0@~xrGB>G> ׂօ: 03؜F@>5S /MlHQxyA3Y\9/CXGU"?z_O@ #; |Ph} 4УZvWT2"pɶ \u#4bQ?l 6 :+6X2_@m'Eg5 8$' aV8B҇+VeS&)Pa06@'W 顏P_`$l`>- /L:V aNb` 4H $hƠ Pp6t4H<.ӁK#8h+NC$).1ǁŅJXjPQdv@AS{eXrA%M!Gg6&M 95TN"TX;3A4 ‚! E@ ʦ ĮQݪlx2AQ78@ o艂l D$s8?7 9l.Ah "05k i#|kxw`.]v\3pcfxHf$a$]J5z0T/- 9o`30 @!B,38``P a@ڀ-hP6 R@$6`r֤HҐK 2l. R@ 0 ` J?f,X`;l\j @?j4/ %t2mIJ6 $@>v"DbP Ҡ@;z|5.cP]@2jU.SPJL;b&L0`2p&p Bu9p)/LЀơW]E 0 RwHLT4/H24?i@p$.(JP7Y@dR%Z)h e3A>`JsLXcCR0`3Hf#F560`4|ӫVqJuuN8 pR38 U>Kp^x b<( rP@ AMa D:( @ ‚ ]2Z d@hQʢDR2y lRBt/%$JH1 }@CL = `o%Kw,X;`2&u偒[]lBE6K`eV-[(l6.hG\"5p3&` < 2x5i~'30 1|Zp0 ɾ|&:uدq| 2u毁_1|gx ˠA@&yt ȠE_21d APqBL (AЃ~Iy dAHto lAXRb:5Kwq "ADH3g#.iRҤH0!/2 "d4i &ALZ2 s!/ rE:Np  JL(%0 `Å (:jPiAVTEZ "tdz`4u 430g`A̓F U>j0iT`Q& L6'v|a0|b.&Ll<0i2b Qf R520lV`,Yl#r,X0 E# L1`ӢŃ ,_*UҫeVʬX0(`&I#FtmUb.VwsTM96!L`&M8&1 Z 0 ]3FtKh`\/v8pz.5 RipjSy pf)Ź]"D0``ȗ&t)phR%H#T2qf`(..b\T;Iq`[p+q`&upr$L17q`, &. ,s%x8}/a>'L^'O_0`"D~0'MF%/i @ 0 `'DC &0 `!1Nc(T!dO0`"K* <08`!N#F"M0@0CX{}i~'30 1|Zp0 ɾ|&:uدq| 2u毁_1|gx ˠA@&yt ȠE_21d APqBL (AЃ~Iy dAHto lAXRb:5Kwq "ADH3g#.iRҤH0!/2 "d4i &ALZ2 s!/ rE:Np  JL(%0 `Å (:jPiAVTEZ "tdz`4u 430g`A̓F U>j0iT`Q& L6 xG%e_,:޺ pi!SlHPtn}AyHa*N/ݔe$8iۢG؈S^ 2Ȍ <(r\+&  0Aj!2q RX jb4%'(=  aY1nT w9Yw1 R y0m \l^PoԶu z'G0&@!NN!NAz KClkjvjrbq$`%S7-q9 r)Mv"~ 2aØP48Gf_s~ZRD@򨀡0@77Z@ !:ck< ǚ[3$QY511: {s:9,[4!4:aeLkaPgSM0 hd!k 7/bign`Bc@.†v.66Ɔ.6ʇ3Ĥ1ZMX{Ve`?i#Fsd`=`0fxhv#ɀ]0X}/h5-Zh Re:@|-zPJД(BP7i@mRpf FRH8HxB s =hA`-L.\QpE:u.L g0t`0`T0\` fv*&`L /QPLP`/!&!XxY0` Id$@$I3t wB.D  ()H |oLr0`P.aLt/yD{`FP`&Iȑ1Y0 `@*8 2}+Y^>d%>Q S #q,n]o&>.`Ln+QAi~-B:O4YK1G1ƒ`pP (/ r@. XZ Y Hk8,EՏ Mڈhq `'j8.lP- @(r_:`+೘ /%2"ZZ@2CU{Ł<8ppˆTK;( jAYfQzn{x>|'` g^vLI $px@ ^&!<T!A@AzW 1̹d嫔*臝+$2*Yk}.wƀ=J)քON%X9BU,P2 %A 4 S $f?0A[zg OD: HsJ&uP|CЀ8)\f8,D[3) @`o%5h `X"Y@+O}oj )m@K ߔus*?$ 52Đ Xϴ1 H;c('S#DgR&B: yL %;{@Dm19X)Ȱ,-  O>' Hxx h Ec@ѽK0<񀶥oB( P8BJpݟ8p0$  B%XP - T7"dD yr$ Snhp8BA(6աcBTQ8GJ ,**(&+).*#""*#Mi )JV cZhXT_vHK--L`<PP 00 p ph y 0  ;5@# '9W)?JȀ0 9L#!4 @EW@"5s@ JQ'q 4@ t@Zhh:TIb^9@;( BeB@@׆2@xՃA  cHHΊ@9 ^`Plv5Kuall~AW>@t.>@u>@v>@w:,~W*8QR6#Xˈ'BRCBݑ2HvAPH$$>rk@̓"RJ3'N8"# )FB6# ):CdyS$3e/}򺤒(lp|0z2Z1 |K8E[+P1$0#-+(!DA[(/B6>%QeQ^ D@A5.PP)BZH<#*),ul"'Hfv N FPHC <%e*Kˆh(C G2 Hy2*().b|$& g;iڴphZhBJO,e%E!cc!S0^MTQV.b+|jDjU`RMKzy>UUHIAq='PO4 /$-/ V@@+ ;CrX# UBHvURQ &須'9:C@A4hiCA""0g2h b['ɐIrCNq C`A5Ppp d3,<C"gD+N)'*+F'` 8BC\Cnw%$u G xSӀ0O,F1$4& `tML(!IQ~Ƭ8 (+pV\BGE5=XZQA#;^:UʖrEJQ{f Di `JX.@ hs(hdj!:<JHsP=#)`Ф0` G%@ƀPGV7(@H():b(Š ;G})K\  z4k3@S@#I2=g!pŀ#tS4/9T@ oAgdG$gF h9b#>A"iM5N*d 8 = P$dP+?CW K|.IT@!.:b  )څ,`(y ^ _ͥ3_@,vmQD7 hv`It@2&tBR+)J@Spq h ? PJHC2k&`iA18liʀ׀ S:ύ$nD}@I`h*9:?!ˮa1 \u weW2ۉ!%OH(LB*JA?P=0Ԁ`[i 9G^]`wb%A@1Hmx ~6 x{ 7F:VZpr:zahZ0v&6PxedcZ JAk)(>H&S%iW[.`[@CG(4`TBJ! p($@4@PT\()" \b&xm V82Tih \gaxPVTFqQGa  M)W" PY@c8)* P¼B2Xo,d:A 24 `bdі%v!A`@$(- "8Œ/*3!ʚB2sB26% ^V P+bv4pq V?LC ,`эыb MlVnF 8A8y?ulN $^DS2Bid@MnTmQԸ6zFNNz^$8tv^nv𽭕Ԏ d@tC*pCKA\fV"6a #ήfBC%MxAB"3 1O(v¸" pGT0! C2aTCđv/f`DI`p8DAv! s ~ VD\Iu`r 0XHJOu򥗔b utC,vnJX~ ,&&D;8: zA- mh@!'C;c ^$ :Jr, 2 hN&F<4?#+&u0"#GѰ{K{;8$pAS"v ==3%:P N..p r4`  DIq$6S)rRhic^`/5kρ8r<@ca,J I W"zĆ3m`lhځbf@ P@>GރIkW&!K&Rswyς$^7Pm Tn$i A CC[`5c;MP^+(Ed9G_|!) K(F(,K*+*jL -('$ l.$,,* M$'Yy!ª*|;.LVlPP1Y"!yHĤ?sP+ypBhpJI`_3D HmM7@pˑu#/,6y6[TW 3A"M"0 %H1:x""1@cF-0`"Q@F )?``a0G z zʂӬLU10=X>- RHXoW㵠,90aBRDUy=-vzwiUX/i*&ш޼:|=g0 8\xiB&k0x&FG ` /%.:ʎL܌Pٿ>-$H<"Ι]PQ{A-'@00`@8@Hmt(=kD8HKbJFF0 OCYuZ0DBD\e`az4iK͘D\(f݁ܣ,Hǵ}4 0P \&`6M]} =WATVյ )P)g'>Ard\̸%E NYY?HL3P,d&%e P5 Yi1ѱix(TR^\8I>*:&d.y QY?0 P LrKSkܪ͉HLOݜ_N}y7K?( :pyB ^8 euRVE013H#r]f+" |:m9Z646/((U.A77.j8*L -E*@Md 'ɎظP-Ə\$B#G%4?# h,A |&$0 A8E"HpNrhHt:#ap@x_1H$ރ )gE';CSK{CQ''{'**{g:K#'C'OY BI#.̈́\E. I"!4a w˃d?6Q@D$'#N!.p0eG  p0^vs@`MtA`s,:+!2 @r|*JrO @J_a I K4GFw)P"&   F{D5=  A4~%~ k1>#2X<~s7 Qq>H9WA/+ )xvJBsxj3TDL;8PR &K?@l!A`9l<R *D!Q YN1 |*w<F&X10&` a:e>[ / F[A%%=n;`=D#̤ex<< x2BBf@ _8ro% JO%M5 ?Xj@gGa Tl+j x0$ '(Y  xt)3PM/&w'4 Gf߀.G NJS_̿Z2@" R`Fs~2 V%, *8A1P5I-1@1 1"\E˸ \OG>Dy5]~< ݉򣁠F@Ġ]. lXc9!BBJoKB=} I0Z1i .xi*<;P\q$ B9aZ!0>8A/E%A$#c< P abDɀ 662aB3R6L 0`rtePF8\$O@(PKеffw T1wʂp".'?JFRv>%[{w@O\ wYA]Ø t`@H]tIdLPyUb08 \Ca cCC86ƙӗqJ$@?PM(jMَ:'eA37 V @Dc :/ @1&8NJY1vA۠ حcPeϾQY'Y@5`B|M~%=@(  ˇ$oB;@tdS8}J I@/sTRE0Bb_դbfXRҲ x!Jmmj3"pPaf+cFPĬ V0 0(%@jeC19]8?B-cCx I) h``A0x{QN&c8s 9פ&(A:sD!AdA|(%puCB02>3ӧ&i %i@x# C^vިe~`64`"*t$  H0x# $ w'>(]xd~3+&t(3p$@RiMM(uBc@I `lH2.R|S R0 @Hi ~$B %Hbq|-cWܐIE1 } c(<&AMCH8 p#@ÀcPdp!^qH,07K 3='5T#e<ZޅAJH'`.# Y3˺@9@#%0/2=:^)A-'ŀ3&H 8M'zxOOy ^3%N&O1@1cȐ$e O2@d%@T*@Td @gJh! 9@^ĨDԘ/r })¬rBQ L+? Lƞ?\(:u6Bk5r\rL cH L oJ nrbӁF@OpZ6SS'{n1n%ĺ&p b(4IXr! |:&.!hYl @V#aZ*P)O@n ; ~4 ]Bt"ݭ) PKPF o Tc &!8 W-yN8 r`-Ƥ@VtK: )PMD90NU@:\aIm)  [6 w~E}28Dv@ P#qQ >T`H{v4F7wQ@?$7aa%,P0D`jyP1JF 5%Q|P @1`)rx] x`29GNN8 aEirl r)Om mzn$]TLd4#`'{!O>J8G `5X%.EC_r 5*lC[ "Y{yMR?B[ P 1=@_?aN7 8_$`@:IW2`Hsn tHA~4уѮ(/\ ``C۪@vQtL@I  : (E$Wh  tKlxHv¢:Bq.HLzfp$y1 $bLIE[oo`FWA 8S+FR4|]*Dz42}R"lCp!9v@E^T\UdIeglX?ux x-VVNtÂ#%c`QKMt JCr GA?o R{t& 4D hs-t^8$*O|įq㏛$ҡ@L^7WCRuz }&a^>A\+ H‹$Ǚ`C.P "ZqB`  Fz#͎ }(@jm㤠 Pr`!` `:'a#`JS `kp$'AÿP"U v|@ct$3)go5Ȼy5,T1^T"}%@<[(a@,Rq:񣽑+ތ4A;韧x? ap8 HyR!F ۘNLH(z<&ah7H,nb Go ZXP@ @FB،RjCƋ႐vCDIlc22ⴝhƒ4 I 0-(n$]L'=~`a# >1@@HxM 1G}G?~ȴ50$*=G} <. .ZS x3q>ג> Jj> gD 5m2LEEIHL$NFG(Dht<ƔŦ?kALp"#,m4R\Ol"BHJ@,{25AE&e'\CK0Z+cTb}@D  `ACJ:4Ar)+J$CNJ pM. }9 # Hڡ@ pԠ(j b"Q6, dl4E hDbB2 rP3np}7\I" ΄A>D]dL]%/ PuO yn;:{*}2_ &k %)q0ױInH rD,N"%!, (BF(DI2 LQQn8 p0&`W @KM Oܦ &'FTZp 0m!! KO"8 Ap"(`:bA:aI ! Gq*ƈcc>KZd 襀NEK(t BU0KBFQ7@PE@!e3i+ D D"!@Ad)Xr(p8eC]>X4? /ֳá-:D#21`23a),;Ch*dmlDxfxd< (\pYr΀ +@*ȓ"L 00I Aa pP8cY@ldh= 'Lpa-@ICľ;@PQ $?$05·M0Ubs% Iqw eBhPB(Fwsx=^x M-G)yQ:h + 'O8D}'p~DHq83U"aTr067fvSY#N 5Hl+Ll.SO0 "JaxR`@7:@A!Af>U3Xz|')Ȃofŕ/ 3%\92$w4̋Px?Jrpe i 88@:iv >ТNnЈy cpnɾ'f$a0Lz%'C'{8LxDP %9B( Ln$Ɣ#7GpC yjќNp\~AȤ!Q5cIDQ vz^wwy ;+EC"x8 pc`F8 nRy QÀt1@69tl/ iiˍ, \i.B-SŠu CPbySc`,I3 샐 ڿd$;ym *L,(2|~QH~C`1U.X0QtP>X r6P6)vY zTsXQJ~BXJ>%$zNj') nTh%38Aot(@ %b@p ^LFQ# f<[2(fdXD`D~ 0(Y>ޔ\Ý @RD@cS$ K0f [x!`p,'PH=@1DiBN.D%<zI̾-<>H eq4@10a$`(q86+WP00~iXb}=4"4@K`̒t @h3b.5xNf|~J6t LPzidJwB$]+f<: wG$avQ[ H8Iv҃nIZ5CjÁ" z%Wڢ`J=$N#ޝŕ0 se,O5 p@f9%q\cpBA AA  s(9 [ qLlH0 X cpz/p8q&u]B!LF(>C0">-F,$^NBHzО$ Z|%%$I sIexDX; &F@;(fd,0Ȑ%n -) 0?݃ %RO5?!F-cN j>=p CỳO!n`DP51 Pq$QG?̖spL#JG ~ l`O(P# NtD9@L $!㤇x Q*sō@&3 B 0!)LX"MfQ-T^^ -97#FEae.i@+AUuuꁼl(dHϡ1M1,#Rq@-,wU@X:_F(ME([*t'qΩ/R/D)@S;6@HL}-`LHT )Y&Bxq# K P f[LAÂ$n \bOΩ ACZ5<wWfܫZ@#tAQt &Xyʨ?ٗE!&Q*(G\lxwRDPz`(DFcJ$ g1,:̘CP`@jbh-!az80ST.@. 3E1HDc"?#(3$u. WB 0 (Ib{\ cJ<>ėHJSgIN/BD7L<-p@sN2Op(Dda"cubȌWP0dCXRJ«0)NL *e*r 4 )N(D%u^~5$B8a; p?ݮP 0 Mt. X:v0_g/8,0J@@XM#6X8$H[FJaate( @~B]4 x bh?!yC B[G#Ä+82`H{L7oafƴe P@jK9 @!`A`w&3&Me~00j  ya`NU0HH HHHxXD PVDF lOaÚ *HG`,Rp 8i&@,̈́8S).#ʹ o70s 0D: p̀Y³pI*e1'@f:(0,S p ; 0 {Dc Űk ° egHa,(a0CIh@ Zp@>mhecb4 3a삗=@Hb P@ALkȊp hRJP"XQd8|j T8`iT8bSC!q/8B CBaA8\CY*8 C 8`K5* 4'gTrHcDȊEF FYK hFI0u@-<p/!p," "7,"EI n] DnE E.U!]KTX l%pd,"0?DaB[c5+Z煖LK, Ψ/7TJM(ʏ/(dȮ&Ohʍ(h hy.hՀr#&85B)qd%+z)ɻy*-p'R|| ܆0<@Zp$B3jPh:V?R*lJT&@F0KPA ~f9 n &Lh#GBrA1 A)\f@_aU.\mTj @JY-(1 'd@Ph'qa!AZ_#ɘB "/dDEn#@vh}Kg;0vp{ )R?&08 p‡U CC  _Ү aS@Qʾ0xfUG@#M'8=C"z!`6SD2!äL6umhW 0Pi pZ,(>PЕpAN`N pC 4z İ) SG[@sqvI !HG ){^@1 xc+_h9'[MQ.;pG\Bi1ߤ@VN䘇(F!d SL00DQ5LAu$:B>`=RĜ-<|VLb % / X 4KuJ!c4 A,y'@ AKZn"f si0O 9!N79?ƟpAl|g_f~ >E䇻|<0/sǐ<^#~Nh<;r ?x5GSb#.9wh3[H?9x3G˟;6!77&pO( \oɟ-Ӑ` r`*Mp;: Hpf(x~wP^A/<8_ s!/p?OH@?B0C'\# ?<`? Ã~L8C`pw .A#b`8 dnN;['nE';3fAnPp8w'_s~\pxg\==<=cB'5t8~y=?ܘ??>|˓}`#N+?`[#y S'9]&fg'@ɀF04l1N&ab2 ~-?<7ߌy8__O<oɘ6G0?so@9U< #qAe9 =:?"x7!j?'{sfp`^F~oxnNkɓ ?f& 70!''9p ͟%ˉHd@ 42 sNNj 4B E9?ȁ ?)U?"ϟ?<Ar~A0V$?`pry~\|9|た0c* 'grONL qp~+|8xzPx~|ptAywwx@<VXx L^ szF~4?#@s~y?(y ?'0=DP > ^N ȠMBr `E/@ P!w'I߹b#"~@J@J@'oo?8?A?ɏ!:"PN 21` 6͡ U0 T;>@?y?oɀ2oo'/s!wA#9?/O t7]xNo~t? y7]~A!<~A{9Ӑ~y''Ü^O( ?a@ȸǒ`7 w x><x?C T;?/!0_ $~@z@??|?ɿ?埈_ĿɃKO&>s@a w80?_o-">`Vjp> ('-?ɴN>ɇ0y> 8!'y0<Mzqq'#08O;_Ϙ007ȁϏp O>^~|܇&>0! Ox~_'^?};`uO_˄Y7&˓|oa~K'P}=|O00Ox'?0NO=>0?N`B<<原'xfH|z|>a&>w'&?<\Oɟ~W!W'O2$=Oy0$!g`ϿO'mNxGa @|;wI,7|~yCƸw>">3?#?~7 _࿾OL8IG7;^;? Džȯ Ϗ]&O~50Obl`pp0` O7<;?[̈́ˁ?$g˃|O w'^?3roP/<y||8'B;y|y7'7&/4ͯ&9H78@8 z`/U `/sil`/b`%ဿrـF $e֐v@`#ဂFEV`.l*qYFǰ!"bH Rf `.f $`/`0 z` `9R`#Ayy&&&)nB 8`.~n.X@x؄j y`"18@ui&)ƤܤZA` *P@`. PM`$%Ԕ-&, ˴@dь&d R0x`.0N`/0X~`.p `.Y >`#r˜ `/:p. f  Μ.p`.n`)j`/{o¼N`/*{ \`/:X { & X`.x s`ـF ܢ& f(ɀ rV r(ƈw zH f䁄Hy sd͒H jܒrH ~ w,)v ۲fE jk w"&b(`/6((.`!b&x`$Jg*f x`%ڡv` 1` &hm)IV`'QS,`.h7 `.jmq, Jh`/  `#လF) fYFC † + l`%q   `/"& X`#F; ` `'F%ـ `$AF `"Qs`|#T ` Fe =\rـF $e֐v@`#ဂFEV`.JgA|g`a610QNqNqNqeNuprS@Sf< * QNu Hx\J 0%8AXI`FGpp M-2TM?籠hQA^9 (.Yĉ 1d5_FK`0[R(ȫ'#R+B,%el[?z]vXZf!h6BJ` 9Q` DbI()cZ4 ~Bhdlx%cjM2p?/}26/4Lvh38SvCOI Lyn  0љZ6D|^\~#lW/M,~B~` .DB(3/ ϸ?#8 ?<` .pc忍7__C_|xǻ\r??_Ïqa˾_]|G>/yzLJpy \Ah`#~?"`# $=8KD>Gpp`T|x Ga1?,*C|%^BDp倉Ï!!sa?ÞG^^@# 16|~GN ߧ^E)!p??( 8N Ā0~>?54^_;^|?p)N8?|^B?:)X Wy}RI|<`A@^X1+Gyx耟@}Nj #Q)C 6*g !%jx =90x %8p/ `p8?py.Ɉ1v_ @u&KzL%OpA>>Wȟ4P/^|pÏOpiUŅAr#?@>HM; 2<D_ÀD@>ϸւ#' p8<(;>;/@s.^@O/aC/>[53?67هt</K, <Mk?y|\duQxWs_@->'>8_8_ ! % Bos $yވ8 o/y }@{.`1@Dz_1sS>y-F2?t~S_m[~B _3pq嘉Â`Nw0 (艡ߌ02@$J+}w  3l.1`>K` +?70 ?݀,+?`/ ~Goy/@"@Fx?ˏO5^~@?Ɵ?$-P.E /r #o^\Pb//? 1?q˟,3H<!˗1?/e ?Dlf| ?s,&\ 3 218 L@7# \` | 5o˖`>K` +?70 ?݀,+?`/ ~Goy/@"@Fx?ˏO5^~@?Ɵ?$-P.E /r #o^\Pb//? 1?q˟,3H<!˗1?/e ?V1+uK S rfkQ鏉AR#6 A/gd?qS/q'3FQU@ Zp~#`%2m(qyaHP&7(68_Fcdr&,4P`jA!OT8na {J>=2ƂQM{@|0WB #\x\U0EHMv'=Z KDH tC@D ns/GL-l)XB3,<2$>8 a4DB C" XB41H 19?M#nwchN@.t@h eNf0X:O  $!,[43M`B$ei͟AHdeg#NUע8Vp/* /< |R>*v)$?"MH&@2PI@ C,dt;`МohVUV&Sb ,{t+P0VQn@I1Nї%(2XIT,S)mC8U\AiSA@Y )pmP(.Af$$$1:1)A[T0hi-!@hvT_Ip` c*]q}`iw E \@Xwhm,AaGг<$3)L S, 򜁊JTPjR m@@ Э#6LF45Dc8Bd9ɡJ)c4Ak#vX ab ,) "@(Y .*0+J!E@GwrDCF9"\ &G(( ()(t˰ b{B:)+ɨˆl)2A.J4Hr8D 0   ^2`B*J=0: B*r "$**H ʉ(* k id)* /?&&~v hlp,|&?ϗڌpu꺀Xp%`@c~]}|| p7s~p7 6 {^0=+0 >`.|q~p+kxӎ1?ޯޟFz=o=p_AǶ8ǀAgn|8cX>p2O8xxif?|`0% @Y%9B'N/s@ %}(/jm*9TrC.}D | G8qjb@? 0.tpW! L#pKRCŁ~^ RGB |B[OX$>X]jFdY$/^d04ԯV0 %2ÇT zp  d>8<`A0@dp@ey<")#<0aФ^KLG\ }N~8yR˄rD ? 29SW _̾0@ rK$ 7 &0oTZex?~10yy 4! 5,//$L@fW`$`a`C< <ap?pp6Œ xa Cr+ ap$?L <\Bu? xpqe0B8W_Ծex/_)@o o&?e ].<6GD~!*?ɸB<"x8`Q偃/J>FǑI 'pOȟ~di埋.)_s C<&^?+x_|2h^ /Lō/>D~4|a0(0@<_~NFx]u?|w;~s/z >o`Tg'埇/ __uAJ( t#&"退. 9R 2"0~(|0| S SdVGC:ԩABH0`0p` ~8/t$c`{.YHD! (Q8pI ED_k__+Ð! n@q 9%`8@?XS _[{?x tW)b SyPǸ AuL _@S@SxuEG\,`P;@ >\/%D~(ё/4K] !! ?%0t@D@d3# $ 8X!$> 0 !stw.>`?< 8C .(?X!/_/~P`Gqyaspŀ9"?p`|]a`PpwĀ`N\IYH f+ח8!C|6: Äo˳  B,p)?et9_dwazyu/O, P)> ,3r@?oR 3#k=+Aa偏@£|~/a`cXyy2}ė'A>^S?K|38@.8Z|KwR!"WAFmW0OBO/  }Կ!?_ 9XxPf} _? AϠ `[xxxl<8l?`w F @# W`f`dna`&@`a\L8  -Sk`0 >x1`#& /o*0-+//4?K/}/?BDH !#>#x/.(1?ywH KO5.I|s.# Ӫr<>[_ 5p?. 'G/ .x8_^@5zXx~[?ˡp .>|p\Pb/D3>@G`Q@X,po>F:c`&0q@\,_gd p5Xa OgBGp!]  AZGQӐ@*Df U/ni^Ag5/6*./GB? J5+  !(r1ڟ#<$o`*H_7C /67[C~`tKBʶHqR 'H>K#8Đ <?0x%#?˽A|8@?X??_?  6. y+{˒qMX=&%DH\(s{sȁ Pg}{?p\~gH _‡rW2Ck@|cC4]%5y|@e3h'|p\_/$ȿp~`_^@g%!e[$8]|  Sxt HA  Z2!\]!@LEWFAh\A@VH_񽈀Kq d!0~DQY]!-$G0L4_@R@ O}!yJyI%;0<,oL.?. y !8}t@7CHp <|OJbCH_#<}čQ^d|ijA < GףԂK4 e,l` C1\؋X#fDD |! //G40> p4> ^D\y~?Հ5A1  `p5ޅr./T;"ϋ` MA #>阃E/r( p(7+KB``"i/r(8J7&OA <@ܿP=  DC?y?pP7_?qEAK<Xp]@ .8u Ǘoo7='yx0(`  ppp|'GÁ_[ ?8u.2#(.x6 _Bd P  _??˪K IBJ/6*(\Q? bD7bXz<<=4;R6q(<"0d+PA(@?/~& x =<]D \  _?W]u^hw , zP:G?{y1y H" 9 G! " B/~/?w3Lj|߄ˆ>:#<;/8!. ĀӀ'  ꨜ`r/ >3<JwO?^MN1^`΅pQy| HŸ+[P6p$89; sx W<C>9KW{W/,E />H|, tu^^G<l|]xw )xxy+X W<i8psw;_@ _-#<~%޼8`_?珏;D_)uH?3r/8DB@o/.(=$;w\s0,>^1|xʏ/.|yjygA`c |8y8~aya<<Ȝ@_s@AW@p+y?&l%X.&nfy!22jPq0(&'aa? `?8~s? x k77Ha>Ds CReOpIʖ@@mQ^/x sRsVFS p!gz: L^0^FdX~|y?_}@8XaPxyx!_ǐ2#3g  !@bD0X|`'a`?&D``cG V @ !BO ?!@ ^@BLC `; xr|Qkaw. @//  (".ȷ_H+=w<.0'Gػ/@\g{p<. "_ܴ8K. 8? (O>C<0F.} !`YsS; @'.:`?@`;`|T jN(7` !BL0`*.:0 ?H @(*.H ǐ@~/*/xϐ,,!;?! ~H/*ˆA?c3s.9?t|( ү~i8O.y/9/ ĀA?,D?k̿P<|5A70p> )„ DB02`  @8`D@pO "kʎ'?Ǹ "_y`i9 &@ .8u Ǘoo7='yx0(`  ppp|'GÁ_[ ?8uХDv4?G$,d?\yr;p\$~(z-ȉ<܁:?%\d! 0 3H'Po/ c X\H xIY_/be}T 0!}|?/>Le//{ar Bpp_UpX0% 0\ w?8\"C ~]p0*1 a p_ @u !L@<&I=|<%%# Ulҝ N`:T a3OKH_{ fezlȜ D&l d*˂F2&0S.&xP EٳE > FuB13큀覆*i.2_Bj&fsIՙz`00$2ia4ag@C[ cE,J3ȅ@+ӌw09. a?Ry f@bx&eX^HCli@:l@Qxrhrf_dGWN0 A@0@^F:{`50Dn6p o@ K }Rjl3a@ްp"T'h=,#Ch:d@Jsi[D!Xg9ga/RbYC1I/5q7s2t2u I M H|f&6V"A ̯2ʐGW/pCGpeJz)ƇK$FH 1I LRe~{!JJ9Dwg  m  $uac`AQf,IxBnReaBb b$`9p *0lCW7V$ `<haFNcUS s&[ +$LUjH& B0Hfk:P ಑ix_fGWGc~' Y/d W&F4~E*Dx] &FEņ= @xd 瀀Vfc[`<%=0Df =Ta,!+D HHt CC0C]=P7CRJQY2R)Oq ` PveQĠ(", ,@ /HA@NFrM)=$(E(GM*vG-(- Ԧ002p$ Rf?D}2 % /|AOKaZ *b*O2C.UF!Te6  D@Q^A`9"4tld[!В4ۙ@XSIxctȏrh9|`B[kT`e ۣIȋ˨ɰ@E6D35IzbCp@DDE 0ID zQr A)A3[6@/(2@"!ZA !x$E)T&%J}c\|7@Ks(kUPPf 8cBu 5,{{j 2\j/\z4ijc#-@.@O[Rw! &x$ٗZ %ɍ8:5R" &[ݫ%@(@)c{yB#0s?8`~$"s 1 x3d# zz;w2!ǘB[L-PK<II-\`Zqdͅ*<c/v덁py{S56lM$Ap . ׆II!vP_?oPJĂJVf-Svuh2x l@$ aH"Аj+A`~@2bR )/X|@@AJ`$&ss0C{ v/W.%Gz7M)RР%q꞉:!BPrA\n.0SkPC#ݼ3, ϤԊte3"B1| D@ ؙmhMȒ  80P Wv1\Y  WآmWD4o^:O#3=x|bdF'1?>H/f^&[" %i~HW?orClk~ I,K3%q@Z`  mm*_w3A؀fGɠίC:K `:G245!*H$O Aa wP6MAS~@iE ؄1^r,Q l/%W VBRf\RfNA*xJ|I*6`m ( PUО gATgCTqYs8!y h=0K 꼎 ˟~c0⑲s:AAс т 8N`1`Ҵt 5 t jh/$hĢ.USv bs! ]WP" @d  K1F! pB*K}#2C붐 גM3`l^ $znFg k#~̤ L O5E3QXNo=,ᖙ@L\_ߘN&_`.UφF`'р|zk`g9A`vS,ۯXn`x@ d{`2faBqyߓC\ĺ\o0 I 4Au_D=EI F1ybNb?9͆ 'FMc5Oe@&,: 4+ݍ `"hxi"j wۭfHxc2 "p ]`&逻J nhH` H!`/xx`/rnGY`/"k V:wEFof$ADZB$^p)R4n` AJ0v`ĩ#xpu%Jpn-Zn jt$6@V`Yyx`/zcfh f`_ &逻[g9x&R 1 Rs „ʐ:@jiɀJA` A6`.ҐO &%jPI@bـ@b`.r+@xmy#)#0; @`.`$`.p|'fea// N`/Jh `.r `/ :  .O ܢΈJ f`. {ޒH<`.H q9H/ &lf9 `%arkDYz$@ilCـ [k.Al n`ByQ`%!A&  8`'ှP`AΔjP}A"TIPsATvx`AW 4h~+A` C gA Af+nA&, ݽ d `. s0k( &(Œ^ R)0m h`/, , c鰶`/l{^`/Jg܇pi)p`eĉ%)qv`ùKpR`.+pw9ph #<>`#!F)ngÉ9 =Igboɀh`/z(n 9(xy*v"&b e ݈f9ʠV `.*A D`.ʀkݘ`i`.*`1 &`)`%QK `W ˁr`"!{p逸`. ȄF(@taf!ـ2z@riɀ@c)j:@s)ޔ&P@l%P+@`.@F`.A`/j0 0m+&2p~j *B `/ZZ `%"H r$9i!~`/b+ r`/zK }l m,yء`#H`/(x}b)X`/( x`"htYX`/(S`.(he*R:`'j ׁj`jYjij9ڡ` q` &hr`/Zhr ̚hJ`%`i*Pc%AӕTyPa#Cy-ftK)oEFAɽ0z FYx0o 6 P`/ތ0bi0j(fԓ&h `.vL ٓL 1`.k0~,0|lـ3,k"9;:5 `&))pk$ `/\I ÉKq`.1 T`$рF} `.; <B`/2<h`.<`/"5ʌ*ʐ`)&33CR='-`%$rr( |$|X uR`I{JDaP7@( ` ' \w*?=4?S MO4??3U' -}wi&|F@/\pXY? D/ȡ<QJ>S@~8"C ?A߱!-3S0B 1/£'l*)9T P1Ul3Rg@͍ L @WƄCuC3 ~J# NKQ -g@?_|}@\IH=J)6J/a )ֆP+B=-D-0 1@ Ab'"P4do R*ح C>Q =( i y "dώv:?)we0JV X ct+OW0K|F.G.SDd;ȠK=PuHXf#PYhRDP"]F0-$1+|A3Cv e 25j6i\ }$'@3NwsLLp+_0 F3X ѓ% d0?@lIǢ?f(COCjij0 ؏u O% [o0RDxVDx1F,ZN'ƂB J!=}-Vy@PXTAVB~_ KE6#|#X ;C rrr} =5?A/yLd0M6Ll0M6 \0Mp6Ll0M6؀Lb0M6 ؀ R0MH5 ؀6jo #o"$3 @„=C&, xH"p$3 D0C- LH"$3 @ H $1 @C H 0$1a τC  H $1 ĂCH .C8D 2 }L@ " |`# L&Bu`.! P)Pg)d"/pKo  0; 4&dfqO+*jt4.F0MʫꜤy 899g-‚('(boߦqecf4h7zsYlTg_,{E\ӡ`7K1R&a)L'w_/66ЮB/fNKY 0:y`7;6jXs@0$`wϹRq@cN8'3rC99nnHOg0 L=#Z'Eh{OF A ]lfE:<--,aw%H9MeeȅŒct)Uiyn 0@ҸkAH̞ww o 24q-tfۖ7% \Y6iEG #(͒6M=Pr*"bJ¢?ճ D !ⴻsaBl 4rF /e@`n *94cB*+ wF7؄&hxU p0P"(r0Up)@}7A86Bh:X);$'3 )3 D}Pzh`=`8 p,b$v(d`va̍`pv4`M0{ign`KEL⾻5Ȫw$d'{l*0&7uqpDHCkO -p'C;g{'^7KC|:-&DSAeׄt61q. = 2 L  N/lhd¯." Ru6vp!31sH{WgSZ#W{;*>?L l ϴl !"yQx3 n4Ap}$ m Rs#+hS,*xrx\\$xE01|Cᶪ[ ii%F Vh;Y{ 1"0S)`9Nx~m@]0B;:~4~@RJ̶)jU4;7!%@@i@L Hc@8N(` {'F 4bɐ 2)@jOXBL+@` +j +dS"I2qsڠG F/@>JQK?Q[a e@7Z$.OU ˩RRHT؉?A@ M@yP2HLg/y?8PpϐKA 8  kM0$L~C"D۫%0'f4stE!FŎ>#dx ̎l٣ځ!#  ?@sLUH /b7SRjaٕp=D.>P`I!5{ UU)ŠUN\㉄St 2 aU h#0_ )"jZn&l .Yۈð! Gc%4(5-@ ݢE(J2"Zl(4b  Rœ0B Մn( =|2 *J.Yr5P X( !R*wBS wJM C0 dD6BFSY|x/Cho bpl )! 40EFznD 6~EQ2FJ!JI9aj0’}2ay=@)@7,'iMaYP`Aĸcfgbh{AɮSJ5(GxB,N@Ll:b@bʇ@UDM9 9v.6FNN?L@J@83%QJΌ wް |23)@':$ B (rwI?kV!cu 8=C;BQIaIGQML!Le`ʡRf+J24e+`9?224ؠzĥ.zd0v )҈GmOP d8(o@Wic;CͿh|cP sZldLj 2\18#ƩEGdž0ĴA}^ X-gh1eHl-LA`/ lij!. D&B.Ba1"E %%$;S =FY\KlE V$AH'AO )$3bOg. PDq1H"" C7̨01R1@#DXXD+Û y @~@ZF3e ) u Y]@