A_BGPRINT AZM!ϠBGPRINT COM%BGPRINT FORIBGPRINT LIB+BGPRINT SUB:XBGPRNCFGCOMaBGPRNCFGPZI/LOADBGPRAZM<G BGPRINT.FOR 7/14/89 This library contains source and executable files for BGPRINT -- a BackGrounder RSX for translating characters sent to the printer. See BackGrounder ii user's manual, p 62. It's quit old, yet no less useful. It illustrates the design of a simple RSX. For further, more modern discussion of RSX's see The Computer Journal #34. These programs are (c) 1986 Plu*Perfect Systems and authorized for use by licensed Plu*Perfect Systems customers. B. Mitchell - Plu*Perfect Systems - 410 23rd St. - Santa Monica CA 90402 ?< > !* :8 O >? R7\8Cc686 BGPRINT v 1.0 Character-translation printer driver $s1Ͱ2͟5{͹{ .!?*"#o"%"'.~#fo"):*)^#V*R"]*#~#fo*R ^#V!r +++ r͹! ^#V!͔ù~?#( ͧ0_Y͹  Module is already loaded.$ Non-permanent module active!$ loaded.$Copyright (c) 1985 - Plu*Perfect Systems $*%-2*['R8=2[R"$"!%!*%͖*# ͖*! ͖*1:(*'.*! s#rK*[10*[40*[70*[:0* [=0* 0*[[0*0*!*%.s#r* *%.s#r+* s#r* s#r* "* "* " s#r*+V+^+>ª!Rª:0?O![[[s#r#~G#~# !*RData overflow! $Module Parameters Different from Loader! $Ss@1;.x( } f#|g03,{@T HLT CMC STC CMA DAA RAR RAL RRC RLC NOP CPI ORI XRI ANI SBI IN SUI OUT ACI ADI CALLJMP LDA STA LHLDSHLDMOV ADD ADC SUB SBB AN52u;BUu1* "#{ #z * ":O!"*"7!B~y(( %: (># y >2ɯ2#FX#~({=!Uo0$~#foF #N $! +| BGPRINT v 1.UUUP@  f  . ~ Ͷ ʻ .͓ =« f |« }w#Ä >2L͐ ! =« f }ʫ +"MD Å D  !  #2!"%!%!"%!u%"%!%8!"%!%!"%!"%!%>:* |p!"%!%:og"%!"%>2%:=2%:%og:%og͟!:%og!W :%og>G*%+*%"%*%#*%n&"%*%!+ :%og=5><!%4Ì!"%!%s#r!%\s#r!%s#r!%s#r!W 6!%6:%!"%!%R!"%!%͟!%!%n&!%n&͟}2%:%og |:%/:%og>͕!%!%ͱ!:%og)%^#V8!"%!%B:W !"%!%͟!%!%! !%6!%6Y!"%!%>-!%>-Tf"%*%*%͟V*%+*%6*%#"%3:og"%>2%:=2%:%og:%og͟/!%>-!%>-Tf*%͟/!W :%og!:%og>G*%+*%"%!+ :%og=5*%>P*%#*%n&"%!%4l!"%!"%!%>!u%"%!% 8!"%!%X!"&!&B!"&!&!W 6ù!" &!&R!" &! &!" &!"&! &!"&!&% !"&!"&!&!"&!&Q !W 6!"&!&R!"&!&!"&!"!&!&!"#&!#&% !"%&!"'&!%&!")&!)&Q !W 6;!+&6:+&5!"2&!0&R!"4&!4&>2,&!+ :,&og=5n&:,&og |I!6&ͱ!8&ͱ:,&og+e%":&!:&ͱ!<&ͱ!>&ͱ!@&ͱ!W :,&og"B&!B&% !D&ͱ!F&ͱ2%<2-&!+ :,&og=5n&}2H&:H&og:-&og͟/:%og |B!+ :,&og=5:-&_G!K&>!I&*!-&4!,&4H!"N&!L&!"P&!P&͟!T&!R&!/&!%/&x4:og |!4!W :,&og%>G!+ :,&og=56:,&:2Y&!U&:,&og+e%"Z&!Z&ͱ!\&͍ 2!%/&x4:!5!^&ͣ 2.&:.&2-&:,&=2`&:`&og:-&og͟!W :-&og#!W :-&og>G!+ :-&og#=5!+ :-&og=5><!-&4*!W :,&og%>G!+ :,&og=562!%/&x4!c&ͣ 2e&!a&͍ 2!%/&x4!+&62!%/&x42!"h&!f&R!"j&!j&͟!/&!!W 6l&~# C!%w#w*%5!%>-!%>-T!%>-Tf͟*%*%5"r&!p&Q!u%"v&!*l&^#V!t&*n&"x&!x&*%#"%R^#V"z&!"~&!|&B!&ͱ*z&"&!&N ^#V"&*&%x4*&!%x4B *&~>_!&w!&>ͼM *&>ͼ" ^#V"&͟!&!&!&!%&x4 >2&:&og+++| !&U%>| ͟!&!&!&Õ !&ͱ!&U%>+}2&:&= !&~!&͍ !&~!&͍!&%>G!&4Æ :&*&wÊ ^#V"&*&~2&!&ͱ:&!&w:&oge%"&!&ͱ:&!&w:&oge%"&!&ͱ!&ͱà ^#V"&!"&!&R!"&!&!"&!"&!&!W *&~og"&!&% !"&!"&!&!W *&~og"&!&Q *&~:2&!&B!W *&~og"&!&% !"&!&B!"&!&!"&!&**&~:2&!&!+ *&~og=56!+ *&~og=5"&!&"  ^#V"&!"&!&B!"&!&2&*&~og:&og͟:& ͟!&!&!&!&U%>}2& !&ͱ:&'^#V"&!&6!&62%!&6:%og |:&/&:& !&6!&%>G>2&:&og+++| !&U%>|¬ ͟!&!&!&~ !&U%>+}2&:&= !&~!&͍ !&~!&͍!&%>G!&4o :&!&w!&*&<>d!&*#͟!&:&K !&6!&*&<>d!&*#!&x4b !&6#!%&x4y !&6#!%&x4 !&6#>3>!&G*&*&n&]G!&>*&*&n&+M*&G><!&n& | !&ʹ !&~>!&ʹ !&ʹ#!&*&<>d!&*< ñ^#V"&*&n& |j!&ͱ*&n&@ }3>!&!&ͱ!%44ð*&~>*&n& |ʠ*&"&!&% !%4444ð*&"&!&ͱ!%4^#V"&>2&*&~2':'og:&og͟!'ͱ!'ͱ!'ͱ!%5!&4^#V^#V    "+  Later CP/M or MP/M Version Required$*61**61{ozgU|g}o!\!l!ÉÙ3>Ù!*3>K* !*   >    !"#$%(/j0~# !P$"n0!n0b:W$>*l0~:M$og}3>!r0G!p0ͱ*j0~:N$og}3>!u0G!s0ͱ:L$ʎ:K$m*l0"v0!M$"x0*j0"z0!N$"|0!v0Ë*j0"~0!N$"0*l0"0!M$"0!~0:K$ʶ*l0"0!M$"0*j0"0!N$"0!0d*j0"0!N$"0*l0"0!M$"0!0da0~# *0~*0~20:O$!0~/!0w:03>!0G!0ͱ!X$"0!0b*0~*0~20:O$@!0~/!0w:03>!0G!0ͱ!`$"0!0b.0~# i*0~*0~20!0ʹ!0!0K>G!0>!0ͱ!0{G!0>!0ͱ!X$"0!0b*0~*0~20!0ʹ!0!0K>G!0>!0ͱ!0K>G!0>!0ͱ!`$"0!0b?!h$"0!0bO!x$"0!0b_!p$"0!0bó^#V"0>20*0+:0ogn&:0og |*0+:0og"0!0ͱ!04n^#V"0>020*0~20:0og |!0~ w!04!0~0w!0~!0w!0~!0w!0>ͼ!0̈́;O;2# ?:gl*0"0Iv*0"0Iv*0G!9!x +Ÿ$%¦g-ʔ0:0T])ڦ)ڦڦ)ڦo|gڦÄ{$%¦}|ڦz-̗o&9}O!9 w#60#60! 9~ 6!97>?'w#'-!9~{O~#{<! 9~.a+60m0m6 #U+r>o&9y>o&90w+’6./G! >0 >-3T]))寕iO>`G>0 < DM0 > Mw#M!9!'w#`ty!Wf.ͧr~#foͧs#r!>O ʷ)ï|W}_ |}o|gþyx/Wy/_{zW{_~#~#W #X~#o>gxGyGwF#"0xͼ͖*0!9G_>WObk++ʶ~+®y~#/g{ozg! ConversionGKMbkͻFͺNͺN#Fͺ^#V"%y2%xi&8 x>;!${#z*$*$VxyxG͟_!^#V͙>(͛y>)͛||͎c|ʈ͎>,͙͛> _  0:ڛÛͩé͙|ͷ}÷ d xͩN #~͛!*01!9{_z){) =;͙>#͛*01>=^#V#=T>: ^>?͛!!>=͛^#V|“}ڊ.))B#F>AO> #®~ >.T~ T=ß^#V# File: Traceback: -= ERROR FIXED OVERFLOW OVERFLOW UNDERFLOW ZERO DIVIDE END OF FILE UNDEFINED FILE KEYNULCONCONRDRPUNLSTBADG!%~ڊo. Condition Stack Overflow$x|¥}¥!%~4O!0 w#s#r#s#r!9!% s#r!%N!0 +++++#{#z++~++!%5!~#  !%N!0 +++++*#~#N+{I#zN++~*#^#V=!$~ͪ5:$_!$^#V"$$9~# |*$))))):% )| ‘*$|}*8%"$:$*$$!w# ·*8%{  !#"8%ÇCopyright (c) 1980 Digital Research, v1.3 !"41"21"812%2$*;1 F"01q#p##}o"61*}o|L\.+w+w+r+s4w#w#s#r͇<2:1++*41s#r"41*21#"21*21DM!41x~ #~+ +F+Nq#p*21+"21 =!-~O~#~G!1xy >O6#  ͇͇͇=ɯ ~#fo++È!21~#:*41r. ͇!>! ͇|S}0SYl͇ Insufficient Memory$ Invalid I/O List$C%2R%"S%'e'''''((()b*.)/g///<0Y!"4KayproP =ER B0C0|-0123456789ABCDEF0123456789ABCDEFBGPRINT COM0V ADEXH`{<> #^%%%%%%%%%%%%%%%%%%%K&%T&%Y&,&,&e&,&%r&v&%%&&&%%%%&%%&%&&&&&%%%&%&%%% BGPRNCFG v1.0 (c) 1986, Plu*Perfect Systems$Unable to open file BGPRINT.COM$Read Error -- file BGPRINT.COM$Write Error -- file BGPRINT.COM$Unable to close file BGPRINT.COM$Select from the following: 0 - Exit to CP/M 1 - Write changes back to BGPRINT.COM 2 - Change Pause Character 3 - Change Prefix Character 4 - Add/Delete/Edit Special Characters Your Choice ==> $Abandon Changes (Y/N)? $Data Written back to BGPRINT.COM$Current pause character is A <00> means that no pause character is active. Enter new character in HEXADECIMAL or to leave current value. Enter Pause Character (HEX) ==> $Current prefix character is A <00> means that no prefix character is active. Enter new character in HEXADECIMAL or to leave current value. Enter Prefix Character (HEX) ==> $ TABLE OF HEXADECIMAL EQIVALENTS 00 ^@ | 10 ^P | 20 sp| 30 0 | 40 @ | 50 P | 60 ` | 70 p 01 ^A | 11 ^Q | 21 ! | 31 1 | 41 A | 51 Q | 61 a | 71 q 02 ^B | 12 ^R | 22 " | 32 2 | 42 B | 52 R | 62 b | 72 r 03 ^C | 13 ^S | 23 # | 33 3 | 43 C | 53 S | 63 c | 73 s 04 ^D | 14 ^T | 24 ** | 34 4 | 44 D | 54 T | 64 d | 74 t 05 ^E | 15 ^U | 25 % | 35 5 | 45 E | 55 U | 65 e | 75 u 06 ^F | 16 ^V | 26 & | 36 6 | 46 F | 56 V | 66 f | 76 v 07 ^G | 17 ^W | 27 ' | 37 7 | 47 G | 57 W | 67 g | 77 w 08 ^H | 18 ^X | 28 ( | 38 8 | 48 H | 58 X | 68 h | 77 x 09 ^I | 19 ^Y | 29 ) | 39 9 | 49 I | 59 Y | 69 i | 78 y 0A ^J | 1A ^Z | 2A * | 3A : | 4A J | 5A Z | 6A j | 7A z 0B ^K | 1B ^[ | 2B + | 3B ; | 4B K | 5B [ | 6B k | 7B { 0C ^L | 1C ^\ | 2C , | 3C < | 4C L | 5C \ | 6C l | 7C | 0D ^M | 1D ^] | 2D - | 3D = | 4D M | 5D ] | 6D m | 7D } 0E ^N | 1E ^^ | 2E . | 3E > | 4E N | 5E ^ | 6E n | 7E ~ 0F ^O | 1F ^_ | 2F / | 3F ? | 4F O | 5F _ | 6F o | 7F DEL ** dollar sign in this position (hex 24) -- Hit key to continue --$(A)dd, (D)elete, (E)dit, e(X)it, (H)elp ==> $Enter String (# - Hex, DEL erase, ^Q quotes) terminated with $Trap Character is (Return for no change) ==>$ Which string (0 - F or maximum) ==> $------------------------------------------------------------------------------ # CHAR Substitution String $BGPRINT.COM parameters do not match BGPRNCFG.$r0u000000000=1vBGPRNCFG.PLI"P!D"P# 1#qg`u9Do7 )ARQxA%$PI.y9L惠Pc#X (f23e6x#J$y6a@C #!vW-j3Cq@c3 f6 :MA;Lz_DV!3)0 !"I8 Sto \i6s9M R E `Agcx˜  z&#K:o3d C tNg Be=^uUU7 x\/IBTPp/`$` ('  R!؅/Q0L!^ę!TE1 (0SUx $)/D`0}e!`LDYWIjSĈK0Ae1N: H'JDASV@/QaIoIPT1 REcDD4OCy%cG"rsgpe$ݷepe6rcU7I5}Tѽ!E"s 1Rl FKRʲjtR-kbιWo&+n^rn^.vR{r&(ao+q+AEn`l1"T8mF/\RuSrjޱ&28!zټg_a}}'}1uqFlFGa ߑ(se.^dHX Աqo!1D( ›qT_7'!x8kūl dx{pχA9S2ޟ.1SGz^n._:CVɺo{<4ʩ'&g k1,uF&טU( ݧ@8u(:|s{F18 "16k 鹖.ڎAτ-:Gv!$#mm1HC|e! 0I ÞJ i3 0crRL<*zq;QVPGA"dT;SΔ"@FOA)D9fRw9ћdTj>eP`R h S^zcT!H"b$$RjHО$l*0%B 9yj31q0Y 4S:<0"<-}ȤؘnaK@KR̂.G8lyOhp[T|209aP'B `cD`9IfXb=Q]4A1 LBy"]}zS&l .TX2Ђ" ٦[jab[K8Yfl}1Pb>ƭ4l蚃*6=pOYXY} cPj !B^sI `57|}vz>;xs{f8ln2 1?5Ch6;4nA` M8'7¸KELXȈb&"1'N'r hgX9d J1!$H \v0A$3B|nei9+iK8M;9 xi<gyisb$Z k8>Z 3φQ<1G vɹ=nTCtjkmG#b j)˘, "Ǔ@_`QU%햖r*FN68-y!)4нR ы=%hn@ZtԖ^k R,`3>lb N&G#kPQx.=h8Ovc8!fj )u8 ids\l4=ʔaB;d H);H؀ fqE(\2FLCV$-ʼn!1o?aaV9J˳n=O—lk&%f|baӿg4{45d{< a_`}(u?coxW3Vk@zBʓr| AkChWO2&ۜƷ߹re"3sGbu^hFps궠=kkO{t_N} v}Dm g9!f6d%A0nq8@-'D7pSs-B0p28)I>hi&i(rif#d1y;8} o~~LJHQ~Wɉi6Ƹ0;|Y^| ؕz8{9?y>׹L-{1zn³阨K6M~S9`peG#l{9~1T ;SIi)!4±BI}鋜9,;o;9؝+ƚD6|hrٳy|y 1yg`e1 ]Z1k7}鄩~9~yɜg뜉XIϞY(<7"c);!<>J9T +ҙ|x}r髢Px+sAfDFP/WFLLI@bAwsDKy9Eqb@EbH+5 7Ig:+t}ʓ`=IdN'Xgu i'a#kCI&y}{K_prtsKNsawF1ti-GGy&^lai|!RvjYJ*iٶ R&OAx!spB5+@)釛EA+n +MY xy +V!൫t1urDlX !+=p_O%q0pq5v,~dKHjii[qBj_}#l~0+pt;u @'*2 kH itD1({I*{(t򂩆 pX!EPx–2[ozy˭ìp'?E@ R1g@ܝ {)gު!ƻ+$2j'+ T:Լn$£(^ P'x| [1Y4*]fEb+ĻDFI*99-Fk}Qz|EAĴc&<6z!u{l:eGө2E1 z̀*Hts@duvtf"̅%Wt!Mp](r T6g̈'_;ܔz_-V-dd FB\!%Msƪ~W(.# XAQRlyk5БlK e&6EEeF@c p`&oMH'V2a:z]Xt5 Np5Ut̺Zx| paT0}@:qnv8HPX!ĝJg!hY]*u Nc)3ktPDa`6 U7H?ٱȳChm0'TnGf"Xq̱'Lws ͺu;6sy~JL@=NмMż#wڑM1ǾuGL8p5[1ÂlRn=-l۫A)yq;rwJ5םo,[ = iImN T@2cN0bM OW01N{_G;O]^gA.Tm&>[+bݻ^>8%TpxӽKxM8i<8}3ܡ#VoщѹzD7=Tj=4CӌE^%ޘPFONlΘlx\i7ۗ꫙Z2j4ꕱqy(!N2jTUU*@,떹/^8k+[r*z%콡v-6˱%KOe/-qJP4 YBK?>]_C0ʘ{ 'ɸs&g x} ];8[;ݲ_)P(:i^r XOn" ﱛm.fʽ'K/Y/ _T!"Nz8+fځ B):c&>M&=_?%5\a\xukBOPgyɯ;/+ (Q _pn}J/| %l1-ǎM}oE#_-q !nm+_ޘnVe N J .i}6MikWфڪ=TY*ǝU*\?}s=!Kϸ} `h' rL6Y/0~"5=Oʆ1k!rQO50imH<E(R•o6sˏ Ic h. I^ڶ透ص3?; ى5k8_ֲ&nϬXRIZiⅳN5k8<\KQh' 3BȪmi`+]L1Sk~FNhB]H&U]ޡH!^YJPimw+g~󿨹~>V$ 4*wu5'\enx .B?>]V6n؟6]u;VZOh@:s1WMZm"^Y;҅( A 'p^8}.SlIfw:=K ;equates for BGPRINT CR equ 0DH LF equ 0AH BELL equ 07H ESC equ 1BH IOBYTE equ 3 BDOS equ 5 BDOSLEN equ 0E00H ADDRESS equ 0FFFFH ;filled in by loader TRUE equ 0FFFFH FALSE equ NOT TRUE MAXCHR equ 16 ;maximum number of strings MAXSTRS equ 256 ;maximum string space hlcount equ 2000H RNGTIMES equ 3 ;ring 3 bells CCOUNT equ 3 MHZ equ 4 ;nominal 4 MHz  NEXT PC END =]gѮ#w:Kʹ^#V#ý~wh͐ .ڬ:m>."͜ ʜw#Ӱ=vBGPRINT.ASMG!CH#  'Ca'!"I8. ɢhr4Sh0&8Zc7X 2Fc8 DTv-Ht p<惠Pc#yRj0(w],EaTPqLsNuB7*AҺI&Cɰw4 2 %i1M3.890h2RcYo:Y0tsLe (vmtTo6c3I:4o;v].O,"9܈FQaGrIUyeܵeYm[JZfi^MFyqukսq\UYT5AOeGUT$ LFT. T3 ÀFaTuI=K "ovsFF%PTfl4_B%I]tY-}gؑwoj ^zIoGTi\A7anєawRu)DtyntHnH[ʀc1&kLsVV?  N5Bqx'XC@T߷eLdvƐpp, FBnuRkųmg7ͪrg 1jՔťNII, Z5g$T'\[PEQLELT)d~I6Bk%q myA2J%bFWvf F uApLkam%hCbGȴ|G $n]6!QGcI3p}mjJ[} eIGEG Q闊yn*q|bηHQŠBJnڞ^R DQLS * ܱHMD6 CeKVp ?@@@Hb rg;,)BE AL`HHf4'@L n#H0 _NEiW $\ >  ;(W w1v/Z A;'x1"WLb7)wWU#t-9c%rBGq4P12L$2QJ&CRtʩO&%tYK˜ JǘT\.Rs(0T3AL\ÜKfS8B8Ehr_a7= ʢ$@Řos$x5h)`K CEpZP >)j 6̡W+dI#-ER] g-ˑtF䦾 Ct! ^S,2thGCXcxt.ʊ#$^E c*$+u\%l\Yʯ$s;iWUeHJ4C|!v'S5h@%JLux=Dxw4Et&7R$P_aR[>M- ;5;Ayέ$89K:J$kE:2?s$!8U\PMt6QU5hVC_-!&9AU+b r]Ȭw2CV b #27B uUew0z?e@ɿ\@HaAzfjA=_7@Y#F\ofպYu+=͙ =Xn`,rcC 08l5_9%:[1&P^rCT7:L0D'2YЯbҀ97uNJt鏔pA[ LQQcWξVx`FB !<)pP y })AUo2DS[ro| G[ڍQ$y`6b|, .mwI$RE茍 yc_Zใ1T՚j8Gx<]XY8.WQOv7$:4?L 9)ޅYcA>?ξ-BA\B6ʶ4D5ZNABx[!g2 6yf9ARD0hy CXS Y'@߈Xa )aC[oP}ŃU柚cݿCзcrH!$Qq wl#<|BPO *saVm t<;ITpur uCEB_Wy=#n}f= @yRL:f.?MgMXz0[~Tk OH&g,'1b8"'?ue1&T,1&r?4>kŁ_Tg,{s&.n7}%!.dAcgNCLPQR4@Pc9c?@p&g"ZzPAeFF!ae@a\Wc2xKcCdTwq?S oIb9EpbLTxiRHu` b*x$0qτP v! 6^:ь7$Kn|hK9@rTAv\SI5jGzs(NI}~dhA$uG@:$#T5rHH"\Ir2Η XQYلm0iaș,Hx*Whq 4=bdHǃ5%ЗFhu0v9AB߁I>k7x4-*|8ِls}3ˆ!njI2Emˌ} noP |C6$+V8N ]Rz~|Jaxec"'WyWir:a*&/ϏwϦb(sVmaN!BA%ig$Lh3F(c0`F BP$u1ts4b~`0zǥ}xw0]g;1dA fVqB1bvJad@z)}ġsnuZVa-Ml;?VcԢAIdcA? K\4\VIqIlr7җ9jV)3: 8y jICA\! Tr5"jz1PDor=& 3 =0ӌMF ; xbf(gD0uZ۱I)YlhbsM_YJ*dr6ݱ&^cڼLc^tdƬ;%%Ͷ0n_?)*]!Vd4ԭ>Jdhc{k<$Bjژaxv + ,LfQ﬑`eaa+axnppʚ 3.%` NpT B[EmZ ս{=?*@:EH0OQH߆kb ELU Q,<J>CRG+Œd,T;,0*;0TPZ/I1}vy,u!˧w&PH$?p D@cwFpJra(P~dlAMC_r uQX(lC*\{X\9G$.T'(!9T ' tp.AQ#59\y|> +=M{dC/;+{(c, .! "ݳԳ?!;BTk; bgprint.sub usage: EX BGPRINT 5/16/85 ; This EX script creates a new BGPRINT.COM ; rmac bgprint $$pz ;;assemble high module link bgprint[op] ;;link to prl format rmac loadbgpr $$pz ;;assemble loader link ldbg=loadbgpr ;;link with new name to keep SYM file ;; ;;use debugger to place module into loader ;;read module prl file to 800h ;;move CODELEN word to reloc instruction ;;move code and bitmap down 1 page ;; ddt ldbg.com ibgprint.prl r700 m801 802 701 m900,3000,800 g0 era bgprint.com ;;erase any old copy save 11 bgprint.com ;;save new COM file U # `ѷ͐ xG͐ …xÔvLOADBGPR.ASMB!CB#  'Ca'&$BRJd@L7LSoD"DqP@6BN Lbԁw5g4@1#NC&W(|e1Jgm9ԪPIx #J $&al2O " m$+3ae7̸CTs !Lf9u7GPa7Zps9M Bk\F@p썲ݾl|i09GSߕcL{ ՟hg@N:7rY~`t0M`~@[\FT eZzǖqFהvie \WbYhZ8ZMӔ;h'US6S`lmA G60@MD1HOLᵰeGP$1 5 B3Kh@dz\avchZ`t'  !dwYVNfeGFlfj\ h)l5AЇ= dFGQ4OlG&YHƨ]3qo})ZC:⺯=akmY _r%1jyZ~|7^Ud+uGFA+ r+ѺmBo!>XKl{< ڣu[Qh~ [o1bHLHX!:[RDTE!MoEh03s|;0 4RP3Q@3smWW@GS4>6'Xֵ7f h ZQi87ax8gr0NDTPf {5B8ȇI 0DbfUr*ɹW.V_ol!@$ztcB20ΗhhI%mXG&@T X *NFI\4f AH1M]N6,IC*YHy M$LߝP܆]AXN)ٕ'r@hMb=1؛(N%5ɣy0D pm iBP(s&adoID,0TPIu+SAUF;Cxc; SGB~gS(OPSZDN3ɽnByLSJa O2:i(;'c6:Á5rKw'|ɼ͂t˪/jM)&8:<%8U4GSQA86Efv/Ѭn;,nN-;!Zua@chΙgDԞ*ָҧzF :&L3`Y1A,NU0MI-& tf?fט@PYB!m;(R`v5b$|-eMoSt1Zh[ѓ (S^3&qoެpD $H\a8ުH)em>W7i a<  $Pezcw 6c} "4 Ɂ'bPXX':}܅άnZ;wTl$OYH)5^Q Z -- bw\#~tC9d8TUnVBpZv!*t![Q^ \mAA(vkJs61?,u +ƩkUԙ_mIjTVTĕ3̍3&{6ZSFztӹH:Iv~ՋP`w&aއ=ǼS,s~ Ad$dOp ۸1G Qޭo U }24f9AԄ#(GAŽ G 2^%qUTü6%0X13T40IB' 6 m}@.wYVӪwN pA>*FvKk ICYV %t 3P(Q)^e8L+:L-P9 oUM) uo?zCA X`jz_G% DlbJȥO8Hl0 hɌst$R9x:WUOXinRj)W0T:`e,1JDoKXr"jY5RMS~y h6KoFj 7@x>B7BΏ,=Ն9n3tR1djYQXwG)0"Xi2.'7|Q0nؾ)Ntx ?ve,qIi0)l qs12Yxyw&F!yXa,j8B Nd#Pw1a;i&hҝB/Ine0Zh;P.s@DCPX$ Pmɤ`oqc2p3t#sߣE49sV8Zue9v(oe*/v?'c9oig@iK6栔l9I! liA$IXa1S9B]GIHrYibOvGy2?3?ci=>'@KxڬZqIKAN[Bq (dW?q7dXQWc]ZAQiA"?j|Aa KY7*Rԥobt8fx7?pQ)XҰT1UsDُY(=q+AIh/tfs_bi T(: )LOw-W=̚AHLU"_"xs~a'VF 1?<֩p{pXV{p'2o3)*C" 6bY(ªB|DKTG|V*Fq+C=#Q,"&j$)v[v$e隧+[M\J۝z*eFhݛKݴٻG؞Y?6qFb q{KҐ=,=#MHRwf]4k>Iۨ ukl)+ .*:Rd'Hm\+DV+v3)rҮfWQ~p +{L2.`tQ!7GXy7/{߻-L>{2i*Xh ;׃ 1[NC"y}Od+f{.d)uNNWvCKdnow!sEg퇳7S/bC"jB YP4RQ7+f&뙞AUlU$Ff婂kk,S ֬ߞPx_p jS'kl_9ktq2l\~M=Dos3_")۪F-m)eO)QOP!MtWNBH/'uՐ@b+$ԄfJƁwڄA1zɮM!!VO CETbf[ʛ&LF*OT)6oO6`pNgJVZuS܍#O]B7L5gc;rs2d Ag8Y$DtF06RByRB85Dl-sپ#~ޅ*aS{!h]1ƴPlL"q򖾕?Oi.S[Yey:C:[-J1+WeH C).no@'€Xk߃2bV3rlTi N̊rvӭ?{-|zD?Q <;l=ʋ+H-9}]'iB4,p"*S.ʩ *Q^ l-) jsKl! p jTmi%̊s f#p]'7.b%A3vdH EnZ"J]'( n~twq`"MziBFmq OP-Q*>LMjܛqIt5q/N{=oZhRz5+ Rns?RRr7$>~]nl@N!2q>1]4:[[ C+#-$WZEd#m 9} pT~~i`![u;uu#,25e^TXRa=٢V둃:B+[X\FMm