From 5b1e36fe6ef82d91db40148dee2fde1f39ff4b7f Mon Sep 17 00:00:00 2001 From: Mischa POSLAWSKY Date: Wed, 27 Dec 2023 22:54:46 +0100 Subject: [PATCH] keyboard/altgr: msx code layout Example of better times (my first computer before Windows dark ages). Characters manually transcribed from printed 1984 Toshiba HX-10 owner's manual (figure 3.2.5-6 When [CODE] key is pressed). Cover image modified from a nice image of such an HX-10 with graph stickers: https://www.nightfallcrew.com/wp-content/gallery/toshiba-hx-10-64k-msx-keyboard-fix/20151210_235257.jpg --- keyboard/altgr/msx.eng.inc.pl | 96 ++++++++++++++++++++++++++++++++++ keyboard/altgr/msxcode.jpg | Bin 0 -> 13868 bytes 2 files changed, 96 insertions(+) create mode 100644 keyboard/altgr/msx.eng.inc.pl create mode 100644 keyboard/altgr/msxcode.jpg diff --git a/keyboard/altgr/msx.eng.inc.pl b/keyboard/altgr/msx.eng.inc.pl new file mode 100644 index 0000000..4ad315d --- /dev/null +++ b/keyboard/altgr/msx.eng.inc.pl @@ -0,0 +1,96 @@ +use utf8; +use strict; +use warnings; +our %rows = ( + '!' => '¡', + '1' => 'ƒ', + '@' => '₧', + '2' => '‡', + '#' => '¶', + '3' => '§', + '$' => '£', + '4' => '¢', + '%' => '¥', + '5' => 'ÿ', + '6' => 'α', + '7' => 'ß', + '*' => 'Γ', + '8' => 'γ', + '(' => 'Ç', + '9' => 'ç', + ')' => 'Δ', + '0' => 'δ', + '-' => 'ε', + '=' => 'Θ', + '\\'=> '£', + + 'q' => 'â', + 'w' => 'ê', + 'e' => 'î', + 'r' => 'ô', + 't' => 'û', + 'y' => 'á', + 'U' => 'É', + 'u' => 'é', + 'i' => 'í', + 'o' => 'ó', + 'P' => 'π', + 'p' => 'ú', + '{' => 'Φ', + '[' => 'ø', + '}' => 'Ω', + ']' => 'ω', + + 'A' => 'Ä', + 'a' => 'ä', + 's' => 'ë', + 'd' => 'ï', + 'F' => 'Ö', + 'f' => 'ö', + 'G' => 'Ü', + 'g' => 'ü', + 'H' => 'Ã', + 'h' => 'ã', + 'J' => 'Æ', + 'j' => 'æ', + 'K' => 'Ĩ', + 'k' => 'ĩ', + 'L' => 'Õ', + 'l' => 'õ', + ':' => 'Ũ', + ';' => 'ũ', + '"' => 'IJ', + "'" => 'ij', + '~' => 'Σ', + '`' => 'σ', + + 'z' => 'à', + 'x' => 'è', + 'c' => 'ì', + 'v' => 'ò', + 'b' => 'ù', + 'N' => 'Ñ', + 'n' => 'ñ', + 'm' => 'μ', + '<' => 'Å', + ',' => 'å', + '.' => 'ª', + '?' => '¿', + '/' => 'º', +); + ++{ + %{ do 'keyboard/altgr/groups.inc.pl' }, + version => '1.0', + title => 'msx code', + intro => join("\n", + 'Resulting selection of equivalent Unicode characters', + "when the code key is pressed on an MSX home computer", + "(International model such as Toshiba HX10 or Phillips NMS 8245).", + ), + description => [ + "MSX keyboard layout table", + "with the code modifier key.", + ], + image => 'keyboard/altgr/msxcode.jpg', +} diff --git a/keyboard/altgr/msxcode.jpg b/keyboard/altgr/msxcode.jpg new file mode 100644 index 0000000000000000000000000000000000000000..85535648caa7fcef12986c762dda8ae1c27506bc GIT binary patch literal 13868 zcmb8VWmFtN*RDOt;O-i9aCdiicXxLif&_OP+&#EMaCZ&v2~L0jK?8vRA9-H+&iQ$E z*Q(WPRrl383hFm0|yfg9UC151&aU+8y62BA0G{qkeCpU2nP=z@86F={kszg zM1q4u!b3+v$NPV_w;=!~0$>7)2?mN10F4O+g9-IE0w4hZpn(5+`~MphG%OGf1|H$P zmEgVQ|84|8LBqhlZ30kWpa9SqFc|N*7x&FRnPzm>&uyQ=(VaBgm*nQ@J$@r=uy`R4nO&mUB&R84dCtu1A#Fho%zFkCIQDWfb7<&(-Y@@Y|NR)Gd^8x4N9JMxnR zuNt}=V_CE!DM|c4D5-Zum2Y>HRr35Zxqf3fN9gq2@Od1Z-R5hH)R~giyS?U2(VO8h zF|H{}rEEDX;No>S_k~XC+wxyz3(Ht4`@8}0!TE;e(E5uH{M$WM)?Dcu#w?b~te?%i z304{ikZZ^LDz)3Jov3efs@jC9r>kve?Vi+y^OXd|I!~qWm8ztA545H_i+ud<%|Cj4 zld&|-XmKU-5^{-kTz=}3N3kbweQ}UT6>A5C$;#In|H5PVHV-YtWm9Kp@*!M_kuUA z_OJX@iI`N{|H|&G+o%1<@hq`3@9aclhw!FVz5o^IM2pR0$Ax%OLQ*;wy9YI_O%kmU zT~wzxoww+F)}wabBYoB*eeSN6IhoJG(RNep{ew8RO}ki(j=y+IF>|G&2x^25y5!TR ze-%Ztu?H`Nd%`N!gb>Dz5XK}@K_&%zx+XCCdw_o5>e)5Tv!7pB;DC^D-+olIb2~B` z43yaW%pj$vQ&|EJ1@vhBKw;5Y4}}A(t_G!s3xy-5j)#E*P*)cR0B`|n(tws|tXSwu zJv!)5-{eXpr0{&M7|BFu`CfxfZLVpJef>p@Wb-Ky)pUIkrYUJB%tcb;{+9Islz$*+wG4;4&&|vvMrNwl90nC}WI` zTa}ue$3W@=L`nrXdZFbuf!QYuc&?LcQd66%GWzM&!LIZRV9s58sk7Z>b@xB zV((lQAs)4!i_ljE^>p11J1%9BF8-XV!Qc7;N*R6Gv zf&2vdR%N9V_wEm+U&{>LMcwMvWfLfw+@D8i3mhPhanfFMG`Nq#IFZZ0I>X-pw6_oU z*+>cOkcA{k(V|lxF0fN3BEqXC@zb`z0*<%HKJ4b=Ud4-!1P`T;#8!=*X8!avE_AoO z&=45Aqaab2D(eO|b}7E#@oL8eWp&%#mir#(8B%(+g3vdv(#^zBQi8swHox3dXvY8TVhSE9?m^10aOXh0?$mtb^ljX>_T z&vb@Luyfjemm}Xvo>agc<$5{0P*kT zs#29_GUDh(rPo^%=^ z-@Qq-)DMz$-VWl-;{^!b#|aTto-U{oRfKC~=E}ty1#{)wOPFnGnl5VAb)X^1g!+RB zuS(LY$LtCn0~ZuNe~$g4oM=)|RfRP_CMq);&xglpllYA;R(2H^L6pUXa@CIH<9N$V z^5P+|>d=S7Fhz~eoPxJktKcb9y@hx82OR=?`;4GH6DtjS zrGen`Kz)0ADv2hnf*4R5p`@reXcmt`I`Bb&53DDVcprtDx&9>{<}Osrs{U2SSeGlu z-I>;SzOBl|NDk~O=z)*x3aP56tH$pRroy1!$yMT1c)pP{wqd~Sl_cIK|7O4$v#qc~ zO9EM9m^r2sTHH{v?Vjb>wnUvG-!4HNquaKOxmmvR6{^>*wHegQNiBLk!rF>wykwKv zgY~`o?+WfY9I9goscM`u?PkXt>FB1DYAT$srM}U?eYF^hy2!yQZ%Q1PQ7b!o3Aqu~ zXS#QAH!5$KWt!cvC52Mv2>;=imhKkTsidOsoqAjLLaQ<`^Oq(F3mH!)!noms>Dn<^5veL#9}GF&1l)WtIkd$U}?KL8%L`U zK|8UmP@_H<{ZS;y{Q1gruRnDEAjR`^;^kvZU8<*?G^Yt&6{`Y2L6c3h7DDV;8l4+n zPXy!KsMRlS*^|QlXA4|l;Pib|uaTmfr;a9q`@@k`I$_#ijtfHXK4wV^wN7m=zz8E-$I*3Ve%0y@v6HX_GZS$(;}+xS6~xHw^cs5+65 z?>VuX_xUPw?ke-R)2o9D*1YA|!Rf{9LiLl5heCbn^`u}t)vdtm8-R2WIqnf+VUKkE zLd^}#|2o#v#TLcUFFZQ>loA(;4;#=hv*PtA|0Mf}Vm5UDm#ks<3m!>SF45kdGTTJ2O6HeGtgifbE{Oug`B#gHqj5N|zvZ|H(b?ZK6;C zrugYo7};szqeN6xm@*0aH76FcEb0nI&xem~OQ`yUa0)WAg~2dn1J^;w-~L2PPMG2+ zcl+@CvswD!!gp7cnD36>l`G&~hyJ%gLI3kb!7k1QL&@=9-k|?^Q=P5atnFcH9!(RO z^90T@^?(Ml{jB=am}({eh|>DS)ruR^)a3c8BRnaH?A?LBaF+49y1H7hdg)MX`1Obf zZCNzQKw{}?nVWt&1ufheQmyyJAiAlSEmDJXM>7oRN@D4vyWVRuQ!Q}Y{qJQ5ZlVOq zOtK%r@7)x~06@V&!6LxGAOT_ilcC>bGt7HGDcE7LDLFXB)l8^dnl8m18Z$fe79Up!-JCL0_=Jv>kTVht#+2OJ;R8p zh6f9%lyWF6ER;XSrUWta37!(mbNJ52U!(hfX4+c+=;89K<`7douKM^Pj+;q?4Zp2y z8zYI(sK-w1Q*3=PrFTlkRJ|emW7dD3{Bp{4y6q0Sx)%Jyt%zIUddGRGw|H z#iz-aQ^z+zY-Mwzoo~+Gmzgv*^fp~eFm6rkDHc+QG%{E^YAhqgfXGZUx9l`%@j+0q z-QLOl4G^y_Ty&7Du;>M$+jZf61N6~99;iE-977*puBCS}Q>uBU!*K}201cD4afD8F zHLICvF>YNdtlZFPh`b@3adn6Hh)nf?racpf0I!Yan;7KEGm1 z%NVX^DEDT99LU|FiUl+(Ny3bXOwMzlD_WSmf@d8r;Y801%w0ncF(7>oJvE^nqTTeO z*U!v}4mqFGh#q;8X!d(IzQsP+Qh8wN{Nmb^miaVwr{e5;{lQWCgJ?C{BXb@;V!6@s zcPhc6g^%6cxR*bgv=eEPwTWOfH~l{+AyeM)h`zLy7Gggc=;0(CkzGgu(~l{JJG5Ll z`n|laO=imk>iOD6e(V+rok%yMIgilghyzD*ZGAm>g!)C3U?dKa_k2v>!~x<2W=5l?ck$(Jc=ROUXH-FA5E#s!mB z*|~``?snt+F5ul6 zRG8ICdg1VKtEN=OY;b}gp*NN)5rjSzs`Uz`m6K6&vHoa#EkMYb zBum_czPv@%#Z|KdM$P$-pb71X@Mj%a8Q~b0`|xoI=kY%BJa-`f@ORU)Q)nWomUqgy z=J0dn#JOUE{8`Ncp*6SraZ6(mZZnLU-=@mv!-U>z14aW@%?E=ybLVkWkoPS23A%7yh&gYlNY3ro=MJ2NLH0L)P9sJnAdKF9Hyo9J%Wz~E& z<;8IdWQ?$8PdaUQw#y=)6@J9$spkYCTqeI` z=6S6EWp;ZF|&B;TwGb<61w$0^9@6li>Cm59m zA8*vKxPI&gPdAfmpc;=%a46V%IM|AWGB^=Q{&2zCt{&H+DB)Ws;!ElqU}=h{Z>sAX zngm!Rn|wnm$#+ltH`u;r?h+ZVyDgkS6Veb`r~BFlJ_HC9DeITE?uu;Mxe$xn+U7() zZa%3{R$bU!KrGWW^;f62S4bEtp-Xd6GZV#iOOmciXLV1pyy_rb{dTW*-vpTlC{UDp zZl_CDC&s$i+?lvb&@pTnz4EKUR9wtZA#3vB&-7gskq}Ye(jJFAV`^f;5X#g^f-;{a zHp#(a0 zl5DHv4S*tRcD+_TCR?;*i|ko$Y*%!Ne>g=89xAuPbc~CPT=KUKwDgJqab?x`Ulos3 z(a*MOyIiSH_ND|a*>u&ql%}`ZortFnCQKVu;FBCP;`G@dt1MDv>jGI3h zg+SIlGKq>A=-mCoeSV%oMnQ2+Kd3vBbP>x*DIv{16Q8+&e$&F;$ql!{4L7U1dX$3n z!C>p5)aKp(<~`Boz5eDQ-rt5v=T&Z>;l^&@#p=&McPy~)7o{$CaQN#YzNQZcTX$Vf zdr#*aw??VmJeeqhlJ%MA+a)G^4C~I@i8ow$|2>XRFejaFfR%qbi5BCZPJ($SkpIi^ zpfKMxlDavDdq_%g)8N9@-ZlCEU;$BzG=@R3SBZtn$O_kKen^ngki=YNK@2f`7nkd2 z;9+o0mP6b<<#q~|RIlMt_o-*Coke8Sb5=9WjRdjP3$ZPy==_;>8s1$NaqUG)Sx%Ig z6jD*Otv!ut$g!LKq87UpI~8bqxl=Rb>p3N=T)uh}%NCex5Nm--g5}^te6~7>K^InF zOtZ3@WC+~n@LIdA5O8hAm-%Tv^7hSZB}G*#Y>n(X ztiA<@kt?HNm2frbXtRa5K|h7$R5LDcw4!X$7aYkD0|s`h^*SEv)K%5>(sPK77iMu# znL=f*I%StXHn+0N;RWSLi+M)u$R>yoDOOyVR2jvr>CmDU(z4}Q6P=lh}ays zhQ@;Hw+NR|3hzZeuUAHdDr$N7R_0;WEUwNSNj{dVP$v0eQg4z`_k44;TW$a<$<8d0 zRh~inL~{{2GIhRQVBO&mBC|eHg1l~ukxQ;)i~}A!nQQbgrQwp_G(GWWy=@$a)kyve z&0)qgZ2y&_3{n^(^fxVQ%YKABVX&vE+V5{Ghc3zXLN8`Xkhsv(1~9({wJp(q0`ryu zPkyW(2e`lxI7Hmfn#zpMGIqFzktd%R92Y9L*aoEBqh)fFTxHU?o=M%+G#Ubz=(4J3 zJI{z;@lhHb_08A7X`xAnANI@oh_+ZgJNg9;rBT;-fC+6P$IU?Qpv_B?^XXeyb1Rw~ znsw&pFJ#<(!(Sn&%E$&PE%IId*J95q_w{RV5Lx+1Hzm3TA!uidL%4_^nSu>c`vs-1q^2F zT%8-3el3=@UvC-^q`x*)$Es>$x)|micaKq_;4z2$mWJ`84g(K%l!@Q=^GNdk&7sPM zbs85BQMU!63f@Wh;iiw(zI-$v*C?DKWmyKxkgA10&(t*-TgBQ=bq7b~WfN=3{fRlw zCu`3w);d*r?|GQ~&e6pXA$-7RNCDrHRK{zdk=h zF>KBud_u;SS64a|pz9?B-5#usE%~Z6kWzyn`cDM}ZJ<0EynD&G*FFlVz}<;~eMCAc z(%nb$W$#%mAbx~pL_PQY!h-=CcbriBA-6x7vx`mxSxLKn~n4&o{mrth5v=syGRD73~ zSWc<@6eoR&>ZpE} zwX`yrA$*uUG4K!OJcp*#g(Vctn!8SMf(C}=GTWr@)Upjn(}NkqwbBpSy_1W|*zO6s zRv2AA&ix^nJKH41>~mMRyIzDUb{;?Fwfeq77dGc5Sn4P9{!Ka3%(z4R?v}CT!xl|< zU{A+q=5JJKkt0M+`B^c`YXzM)qGVmN^iJi#10*BQ3KmTA3^kHLryg`h>`!5WJP@0u ziBl?O&@bnGmKkBF;)W=!$~(~*E-O1huE|p9ZyR%|Z|LX8T5&dF2dG;WFiM~VVsWYv zElbAKD|-~xo|%aw!=@e9XSw)^w~ zBF3lyAqqj{-Am*K0|#eH?Av4a7|kwcK&EInFic}Xm{Re{FXa`q0+iYL4)2s-u1*pj ztW+F%P?LB%H_T1&5UTYf$ANu$-jjg+9ml~=nu?{OY=QfA zTc#54xP>Ww*VbkCZ+a!8QxO`htW<4mF z;&L{^EP1Fem8N|m3?K|YEUQOsg8qXTqrXr+g_vie*a36avY`HfM#5dWnn!fbd4jR? zM`(+`u!@u)C{ofm$f&>AT2kCfpDz%jna9qTh2+@s`%pf@Pcv~? zNAR!}93rN0h5eIf4|DKas*W|faE0QFJVG_)w$7xR^2jmb4z2KF%lgK-<{JQQvi~o( z=p5ba?sDBP4)bD(1SwmYHFbXd-@GUJh^zjpe=#{@L0Us1G9y2= zC-M(KDdJfgyj-~XbGGKBV`$To_O3J*74A#y7Irt!SU#kc5SXeMUhTm6i^IbdyOi$? zxi z5C`E65Rh(hX}|)bVy*FqNNUq-!^Tc{zNvD%Em^hyeMRjPyo$>I8_0Tu$}(^0$X1%pyl;z+*yi~rFg?iAxLfo(-9Oiv$UR*EIzjO*YtB%T-HG4+a%&5j9sX|Nip zmHPK&_es~Bzk{3aNuN|Y^7&k3J|0ucxXL#!k*|YAn}!Ac^}6!gYvp&V{G*>eF>p#k3X+7an!!#}RENx0oi#;41mz3^uw{vh2^l?koeSQXd^PW8L5#yO< zb{3^WbR=f8PT$q*f3~CF;UfTm0kvXmcSJvzWK+VT9IE{b1tcJYae$kx*ec_X_Wk?X z_p=YN8r?=75Yadjq}tCIM)o$F$3}2J2X;u4usAJ5ydkJJ&vTImrJm#NS zd#+~VVI{GM){8@pzKIMDljKly_RP}}#Zwqz^NO`%A08j;0Dyo`2!Px1zK|0VG=hJ; z@E<|_M+pB{tiSKCV^UzSlZ&gfxtsqlLB&wQBEtHP9mz8Ld4qpUWI~)s?rWbgd(%)c z-?jp2r0{VggQa0jasp!UZoC z7$bZyp&X+W|77#TyvsaK10&C_0hKlUk+K)_DrUZKmI{c%IffBV?^li$^YjMzfc}RR zrw{tEbb&ueEgU~~?>%FAjs4G%-{0K-J!A|Dc5-!haW=944EZ0%#ju*ZDph~fKa`m` zCJPOV@7}#$uhNR#bT4&A*oc`B{+CxEBhhZE5E zne=jBL_7SZdgxo5h}j|8#z_`t>+xcUEPmTeMd@RhSM1P?M<8p|E$<<5KgUopy)99E z%;l|d#{lcGUiJ%_n-&A9Us&unE;@fh->;*0&v6h^LwN6p9R`dopPrO$n$=x?H)gbW zd)6~G(7^%>dK#xuaMZS)&hiEy{0J|qo#GQSjBVKTN$B(CWdjIFF%B741Slklo1pgi zF+(YC|3-4-BPS+w4oP9Q#7`~!IYXmxV5O`cE*}o=u7BnX?WcqQw)Snf7=$tuG_y~r z$h)E*qmK`K{&?|G$3i(dyZj>F8RuGrNz)^H^ZbpBcSV>aUtR`RyhoLIi%1OVYpxk( z<<#^SwhRMVEA{QN=mUZ=DL5JpfJxn;6*cCC#UN`-I#j^&y-vW4+58mL^C5Hf8(;!o zVk;V4*Z6BVrJ!90 zy?_Vm$8y)!oUnP+8_p}zWMOo=D7Z{2g@;qFq zFAogb9@-VRWC%RkDZy51Q9Ki%m8dY{oIQgSl)H1;Jsoo`xCZ9!h7Y9m#db)2#02pC zUL9+*7>39yNI&FNRG2Sf&`2o!<4ltjDm{IZyOs z#b{s%-MRcg%)bfem{o-sff92)_$SM)wUIGMYkQVTe!aGTrhEx|$V5FVHp2qA+e1g; z5VU-8}f<3uApoBnO^ghvxZ zURJ5ic=L!iv@D7%uOnwDhwc?2JA~UC^|hF`*k>0Q?DSDGos0D{J3PrYD(*!JH^9;J zn5oxuVM=kBcY}L?$@I4Z0LBULPn-kuh`fW?`7M1VjvABv`xjr+KVr!84VB|{a%w2) zPXZ|AL$fMMphZo`>%pRWF`pjtoI4XVSWUN1AZAx3{|%s#P0dv?Iq?T+3@r?`MzuZ0 zSF4s!4d#l;(>z)54Pb)_ToOTrwZB|pxrzg=g!p$6tg#ns4uGCIa+P*aw7>J4z~|I- z5H+gkPUMToh_dl+_C4k&{N%%T+`q`a%n3wx z`cwqRP$FNmYwl{4T(f1=S;r5FK>zq8zKs}A*XfsOOnw-m=;a|K^Um4bM9^hjhq3n0 zf8vz~O`WKGR+S^IjPECeV)!XSX*JnLxUIX%qis#~Cl3c*E7LU`H62|u?qc~VkpzAk z5a&cU_-xCR;~(!$lKVr0Y3YV`KjaxkB}V}>ZnX3h*lhte%PQY|D|1{(Joyb=wd-iYG&&& z2UoS(ni<^i^8yuG;1fkVwj{Ddq+b-lmT_|ZUc(>*!%b2Hg^3KtTaV53kp1P2;{KOU zdfs)}$`^;Cl^>x)?93vK+S-yvS5 zkd$~#r%vYnjD_z|%M6VSC$$)*hyFFKC_*r`536(1BFYxku;6g>Se+0X%-%_dq%J(A zHMU~O*J$J=azItK0#^es95rItq6|I{4ZZU*Y|Id;Scl@M*pP!J+J~F(Bm(=Vs%w+aHB*~jHKof>wIL`JJ&`m zc^LC%j7-XY)Yo-yF7!;yievf3!ZiwjW&^;-<|ZP~h%Z?4*}d*=`6Ls+9+iHKbsSPi z-~6=6Q(sjX=rjEzyjI((cV5VsAYF^ST+o2ZfY6z<7olT3dSPhP5iPEUhoadGJ$Aeq z-*y@a79YTfRZvj+knDWjl<9C}9Gdh7=mgMYsW6%eNZ;c8!(nzxI7q|g`SBn`3ubI$ zmir{q*$vD#0qtKB^xKW+G>zR3B{o?@yJ6M6wZ}AwHpb-7I^{+Z;lE8U4GL|vbhc|v zRquh~6Bpj3N|f))1%Sbr;ioXPr@~He#Tt287>yhW&mhy2Gg8}kyD|-9;P3{y-_!lt{r8K=v6q*}RLglKNAj-OlqDC4HtM2oZIO? zas|Jam#bc^dWk8G>r4euHE-*REG-Nfe}K~N`Cd-Q0^D9$x^Xg{=;EF0$df>mC@f9@ znVrF78@eD;EcEg)FkPZ%;%dQ^Ttk8+E46VRorvHY*wC2dZSyM2M+LtQaTtK#*|SSQwx!=M~c+_ z!~h`w$jt_!U+ptm&@^#uIf82OUp59y`m+^3BJ$$HON#$VltQKW`DmuH5yV>9I>pv@>g0T=Nj1%S-)OtrE0~JAGx{n=Ph(H)6eMeW^_n3>N$?u z%Im%znn?p2cijMzch}y}#$|2`c!3J*74WfO=T<)X$0BzdF*G2caNmHI1WxaGsGKRj zQ`T8UYWuhNE|YA=$s=FbfL=i~Yt|eq&rqMG;HFAI5iqG)1H8-_`P`x4=MW149fM{5 z)*6GoGkQMKc6UcDrL7WRH2093M4j_jC;uc7aAp)H_StQMFf_qWNX&C&ZY1YP1|^hKJ?sU9S-1YEGBs1ewYR|D%~TU?kY5gjM;OI zdH9PnJw{Bg(5(fD)+tkVn=)cCiJH<-yfo=N!Cl`rBDg8UA02}yR^#yv@H64`Sz`QW z2f$s%a@ltGQ*nr6DLFD;BGj>+wtM5xVm)8r)C=Le6aYg=Fc_3ppWZ97yvO;X1}XuGSKLnA%+xU$eEqiLD&!QGrvt zm-mCH5t>ttO_o9A(AAY_#}C^MMIw*IslLQ*M=E;t;<)_qPmGsfdkmJtmvc40eL(0H zN#00bB(WHULo3eyUnhc3E;1`5+T6ZexMa#W(!^xLsQF9UDaCRKdFkifJkt~=fO;tp zy=n1n^B*%a*tx?KeON@!u%*UE8H1}tJ9aX~azCsG^jOfEuA#V%6Uy1`KJOV@uCeQV z+V7Brj9hkxC1mckiZiSRXzhn`nwa}xPfyWF<~vUh9!|@b_3b{4pm!wxhOR_=pS%S4 zD1sjq>w_>t1Nop?u6`vJ!3m3w7|5=1RkM5)ioR{`UG7fo&Y!x2xkl6qOi*vXp zcsjUM=d|M7ro3xUNBGWPMo!OCGgLozB&o{Ldo$F=^c=#KEA^+gxhhv}84aIKBjFZx z9;_xKQ@>8WYwAAofV;cuZ}31Ca73bg3R^|py#Ojx5!s^tKtlxnJUn) z2K|NL4S*9gyz?k?@;9>Lp3mY&!F0KY&O7r;2HaJm2uS}Xy3O$ZAFF5h(npZ@@IBn_ zi?SltQ>-^{Hl6y(zO%jEgs9mkLz~AcRq7jX6ehj#0Y!>kd#+((F(Io&*8_d4*tF9d zKn~F*WKpN-Wd9=v;-aX(!Ay`Y%6#2bl$YYJE?Rc1_zMGX2fQ9SxFr%yGj z4n7*p03FJiDyl|ZMzS7^Ql*=ORu~&?M3tle6h%r_de6-I253CffXiPtmrN^yxh0@m z`(*aX!2#tlN_YqX=M#0G4^b_`NB$HY^dtVQxE%}LVRkX+l3sC+(`pYaJ4XG9u>{b! zH^4|+(aq4yvb-W!u$~m)P&FrdEP3mIX~NtsVaqIYwBTnnbl7FN%AftBUz5j-vkbd^ zJ6Bp(xTPo!)XVpB(6z|%_I5j zV3*=J9#hOq?(?^T&KaG#w>F{|caO>aKBkWnhIV7E8tE&9LC$tTBmy0+&TZF1fD|!S zjHHiDj9J&atg+RvN1{+b@?UnFQf^SEQ4$w7ih2qBiTGw)X(ar|S`Ir(Xrb1*A1f?g|_f_ zV2I{s3}g7W^c#!08Khy%X%)S=cynECtB zbQ)BTf`5LECWJq|jd}d~xt?1|mb`qB-et~I4GHWQ-0Ej*tZ-LzNs_nWjo+Suvp_#` zGrfZA>MaDN-9Ez}E}an3Ett4$vC@Fq2D{gib$-o3uJ&+X=0Qe{HcS#N!6td?F&k6a zBKCsms)esL;PDuSAB(uc!{xREB9y2lU8S*0D=(k^A%fc*-u!oT)L2R5+n{v$lu=JR zF9-&b1xpW*{@sIf%y!{EAcm9nL7{$uJP$+(R;OXifxK)Nc*3VDwBL@255BezV3a@zC}2Xco~{oC6PA1`K!Et z3QD_qfD8SG28u1J*uk`)@)P+?zxAxFoybqJ__ZeC2>AiCxz8Z15ELwxHLWzF^D9^CoT=5sOLE+(jNLNW^!}O@rMDC(q8g` zF#+w2;G|x*80h1P`BB;zwFvjX2B|`5yZpAziLJ zmA{QJquk@;NPTgy2UY4j4o8RdX{PsAI_HU%lRU@HtGx`KJ1_+8XomP)^@^!~PCppY zia8*e$h+ys#3`zbu&V?CD$Nw;dK8;sbnl_Ogx%qZOs|