From 8d08cf9bd33d945871500224bf68ed0478c841fb Mon Sep 17 00:00:00 2001 From: nick Date: Sat, 24 May 2008 18:19:54 +0000 Subject: [PATCH] delete old lander graphics git-svn-id: http://svn.nickg.me.uk/work/lander@418 a97b1542-0b21-0410-a459-e47997c36f34 --- data/graphics/keyblue00.bmp | Bin 3126 -> 0 bytes data/graphics/keyblue01.bmp | Bin 3126 -> 0 bytes data/graphics/keyblue02.bmp | Bin 3126 -> 0 bytes data/graphics/keyblue03.bmp | Bin 3126 -> 0 bytes data/graphics/keyblue04.bmp | Bin 3126 -> 0 bytes data/graphics/keyblue05.bmp | Bin 3126 -> 0 bytes data/graphics/keyblue06.bmp | Bin 3126 -> 0 bytes data/graphics/keyblue07.bmp | Bin 3126 -> 0 bytes data/graphics/keyblue08.bmp | Bin 3126 -> 0 bytes data/graphics/keyblue09.bmp | Bin 3126 -> 0 bytes data/graphics/keyblue10.bmp | Bin 3126 -> 0 bytes data/graphics/keyblue11.bmp | Bin 3126 -> 0 bytes data/graphics/keyblue12.bmp | Bin 3126 -> 0 bytes data/graphics/keyblue13.bmp | Bin 3126 -> 0 bytes data/graphics/keyblue14.bmp | Bin 3126 -> 0 bytes data/graphics/keyblue15.bmp | Bin 3126 -> 0 bytes data/graphics/keyblue16.bmp | Bin 3126 -> 0 bytes data/graphics/keyblue17.bmp | Bin 3126 -> 0 bytes data/graphics/keygreen00.bmp | Bin 3126 -> 0 bytes data/graphics/keygreen01.bmp | Bin 3126 -> 0 bytes data/graphics/keygreen02.bmp | Bin 3126 -> 0 bytes data/graphics/keygreen03.bmp | Bin 3126 -> 0 bytes data/graphics/keygreen04.bmp | Bin 3126 -> 0 bytes data/graphics/keygreen05.bmp | Bin 3126 -> 0 bytes data/graphics/keygreen06.bmp | Bin 3126 -> 0 bytes data/graphics/keygreen07.bmp | Bin 3126 -> 0 bytes data/graphics/keygreen08.bmp | Bin 3126 -> 0 bytes data/graphics/keygreen09.bmp | Bin 3126 -> 0 bytes data/graphics/keygreen10.bmp | Bin 3126 -> 0 bytes data/graphics/keygreen11.bmp | Bin 3126 -> 0 bytes data/graphics/keygreen12.bmp | Bin 3126 -> 0 bytes data/graphics/keygreen13.bmp | Bin 3126 -> 0 bytes data/graphics/keygreen14.bmp | Bin 3126 -> 0 bytes data/graphics/keygreen15.bmp | Bin 3126 -> 0 bytes data/graphics/keygreen16.bmp | Bin 3126 -> 0 bytes data/graphics/keygreen17.bmp | Bin 3126 -> 0 bytes data/graphics/keypink00.bmp | Bin 3126 -> 0 bytes data/graphics/keypink01.bmp | Bin 3126 -> 0 bytes data/graphics/keypink02.bmp | Bin 3126 -> 0 bytes data/graphics/keypink03.bmp | Bin 3126 -> 0 bytes data/graphics/keypink04.bmp | Bin 3126 -> 0 bytes data/graphics/keypink05.bmp | Bin 3126 -> 0 bytes data/graphics/keypink06.bmp | Bin 3126 -> 0 bytes data/graphics/keypink07.bmp | Bin 3126 -> 0 bytes data/graphics/keypink08.bmp | Bin 3126 -> 0 bytes data/graphics/keypink09.bmp | Bin 3126 -> 0 bytes data/graphics/keypink10.bmp | Bin 3126 -> 0 bytes data/graphics/keypink11.bmp | Bin 3126 -> 0 bytes data/graphics/keypink12.bmp | Bin 3126 -> 0 bytes data/graphics/keypink13.bmp | Bin 3126 -> 0 bytes data/graphics/keypink14.bmp | Bin 3126 -> 0 bytes data/graphics/keypink15.bmp | Bin 3126 -> 0 bytes data/graphics/keypink16.bmp | Bin 3126 -> 0 bytes data/graphics/keypink17.bmp | Bin 3126 -> 0 bytes data/graphics/keyred00.bmp | Bin 3126 -> 0 bytes data/graphics/keyred01.bmp | Bin 3126 -> 0 bytes data/graphics/keyred02.bmp | Bin 3126 -> 0 bytes data/graphics/keyred03.bmp | Bin 3126 -> 0 bytes data/graphics/keyred04.bmp | Bin 3126 -> 0 bytes data/graphics/keyred05.bmp | Bin 3126 -> 0 bytes data/graphics/keyred06.bmp | Bin 3126 -> 0 bytes data/graphics/keyred07.bmp | Bin 3126 -> 0 bytes data/graphics/keyred08.bmp | Bin 3126 -> 0 bytes data/graphics/keyred09.bmp | Bin 3126 -> 0 bytes data/graphics/keyred10.bmp | Bin 3126 -> 0 bytes data/graphics/keyred11.bmp | Bin 3126 -> 0 bytes data/graphics/keyred12.bmp | Bin 3126 -> 0 bytes data/graphics/keyred13.bmp | Bin 3126 -> 0 bytes data/graphics/keyred14.bmp | Bin 3126 -> 0 bytes data/graphics/keyred15.bmp | Bin 3126 -> 0 bytes data/graphics/keyred16.bmp | Bin 3126 -> 0 bytes data/graphics/keyred17.bmp | Bin 3126 -> 0 bytes data/graphics/keyyellow00.bmp | Bin 3126 -> 0 bytes data/graphics/keyyellow01.bmp | Bin 3126 -> 0 bytes data/graphics/keyyellow02.bmp | Bin 3126 -> 0 bytes data/graphics/keyyellow03.bmp | Bin 3126 -> 0 bytes data/graphics/keyyellow04.bmp | Bin 3126 -> 0 bytes data/graphics/keyyellow05.bmp | Bin 3126 -> 0 bytes data/graphics/keyyellow06.bmp | Bin 3126 -> 0 bytes data/graphics/keyyellow07.bmp | Bin 3126 -> 0 bytes data/graphics/keyyellow08.bmp | Bin 3126 -> 0 bytes data/graphics/keyyellow09.bmp | Bin 3126 -> 0 bytes data/graphics/keyyellow10.bmp | Bin 3126 -> 0 bytes data/graphics/keyyellow11.bmp | Bin 3126 -> 0 bytes data/graphics/keyyellow12.bmp | Bin 3126 -> 0 bytes data/graphics/keyyellow13.bmp | Bin 3126 -> 0 bytes data/graphics/keyyellow14.bmp | Bin 3126 -> 0 bytes data/graphics/keyyellow15.bmp | Bin 3126 -> 0 bytes data/graphics/keyyellow16.bmp | Bin 3126 -> 0 bytes data/graphics/keyyellow17.bmp | Bin 3126 -> 0 bytes src/AnimatedImage.cpp | 8 +++++ src/AnimatedImage.hpp | 2 ++ src/ElectricGate.cpp | 12 +++---- src/ElectricGate.hpp | 2 -- src/Game.cpp | 36 ++++++------------- src/Key.cpp | 63 ++++++++++++++++++++-------------- src/Key.hpp | 9 ++--- src/Lander.hpp | 6 +--- src/LandingPad.cpp | 19 +++++----- src/LandingPad.hpp | 4 +-- src/Mine.cpp | 24 ++++++------- src/Mine.hpp | 2 -- src/Surface.cpp | 22 ++++++------ src/Surface.hpp | 2 -- 104 files changed, 100 insertions(+), 111 deletions(-) delete mode 100644 data/graphics/keyblue00.bmp delete mode 100644 data/graphics/keyblue01.bmp delete mode 100644 data/graphics/keyblue02.bmp delete mode 100644 data/graphics/keyblue03.bmp delete mode 100644 data/graphics/keyblue04.bmp delete mode 100644 data/graphics/keyblue05.bmp delete mode 100644 data/graphics/keyblue06.bmp delete mode 100644 data/graphics/keyblue07.bmp delete mode 100644 data/graphics/keyblue08.bmp delete mode 100644 data/graphics/keyblue09.bmp delete mode 100644 data/graphics/keyblue10.bmp delete mode 100644 data/graphics/keyblue11.bmp delete mode 100644 data/graphics/keyblue12.bmp delete mode 100644 data/graphics/keyblue13.bmp delete mode 100644 data/graphics/keyblue14.bmp delete mode 100644 data/graphics/keyblue15.bmp delete mode 100644 data/graphics/keyblue16.bmp delete mode 100644 data/graphics/keyblue17.bmp delete mode 100644 data/graphics/keygreen00.bmp delete mode 100644 data/graphics/keygreen01.bmp delete mode 100644 data/graphics/keygreen02.bmp delete mode 100644 data/graphics/keygreen03.bmp delete mode 100644 data/graphics/keygreen04.bmp delete mode 100644 data/graphics/keygreen05.bmp delete mode 100644 data/graphics/keygreen06.bmp delete mode 100644 data/graphics/keygreen07.bmp delete mode 100644 data/graphics/keygreen08.bmp delete mode 100644 data/graphics/keygreen09.bmp delete mode 100644 data/graphics/keygreen10.bmp delete mode 100644 data/graphics/keygreen11.bmp delete mode 100644 data/graphics/keygreen12.bmp delete mode 100644 data/graphics/keygreen13.bmp delete mode 100644 data/graphics/keygreen14.bmp delete mode 100644 data/graphics/keygreen15.bmp delete mode 100644 data/graphics/keygreen16.bmp delete mode 100644 data/graphics/keygreen17.bmp delete mode 100644 data/graphics/keypink00.bmp delete mode 100644 data/graphics/keypink01.bmp delete mode 100644 data/graphics/keypink02.bmp delete mode 100644 data/graphics/keypink03.bmp delete mode 100644 data/graphics/keypink04.bmp delete mode 100644 data/graphics/keypink05.bmp delete mode 100644 data/graphics/keypink06.bmp delete mode 100644 data/graphics/keypink07.bmp delete mode 100644 data/graphics/keypink08.bmp delete mode 100644 data/graphics/keypink09.bmp delete mode 100644 data/graphics/keypink10.bmp delete mode 100644 data/graphics/keypink11.bmp delete mode 100644 data/graphics/keypink12.bmp delete mode 100644 data/graphics/keypink13.bmp delete mode 100644 data/graphics/keypink14.bmp delete mode 100644 data/graphics/keypink15.bmp delete mode 100644 data/graphics/keypink16.bmp delete mode 100644 data/graphics/keypink17.bmp delete mode 100644 data/graphics/keyred00.bmp delete mode 100644 data/graphics/keyred01.bmp delete mode 100644 data/graphics/keyred02.bmp delete mode 100644 data/graphics/keyred03.bmp delete mode 100644 data/graphics/keyred04.bmp delete mode 100644 data/graphics/keyred05.bmp delete mode 100644 data/graphics/keyred06.bmp delete mode 100644 data/graphics/keyred07.bmp delete mode 100644 data/graphics/keyred08.bmp delete mode 100644 data/graphics/keyred09.bmp delete mode 100644 data/graphics/keyred10.bmp delete mode 100644 data/graphics/keyred11.bmp delete mode 100644 data/graphics/keyred12.bmp delete mode 100644 data/graphics/keyred13.bmp delete mode 100644 data/graphics/keyred14.bmp delete mode 100644 data/graphics/keyred15.bmp delete mode 100644 data/graphics/keyred16.bmp delete mode 100644 data/graphics/keyred17.bmp delete mode 100644 data/graphics/keyyellow00.bmp delete mode 100644 data/graphics/keyyellow01.bmp delete mode 100644 data/graphics/keyyellow02.bmp delete mode 100644 data/graphics/keyyellow03.bmp delete mode 100644 data/graphics/keyyellow04.bmp delete mode 100644 data/graphics/keyyellow05.bmp delete mode 100644 data/graphics/keyyellow06.bmp delete mode 100644 data/graphics/keyyellow07.bmp delete mode 100644 data/graphics/keyyellow08.bmp delete mode 100644 data/graphics/keyyellow09.bmp delete mode 100644 data/graphics/keyyellow10.bmp delete mode 100644 data/graphics/keyyellow11.bmp delete mode 100644 data/graphics/keyyellow12.bmp delete mode 100644 data/graphics/keyyellow13.bmp delete mode 100644 data/graphics/keyyellow14.bmp delete mode 100644 data/graphics/keyyellow15.bmp delete mode 100644 data/graphics/keyyellow16.bmp delete mode 100644 data/graphics/keyyellow17.bmp diff --git a/data/graphics/keyblue00.bmp b/data/graphics/keyblue00.bmp deleted file mode 100644 index 09ef8c1d527506bda941ca7c2d0b30fae7ab2463..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 zcmeH|O-NKx6vuz}y%`(LSxl5gBQk~y!9^O3;YS}NVH7h2Q6Y#lV;h6CMG<~g8?^`u zq6jyl7A^X)-NY*?yeH)M)3J9&?DABPL~{P_RRdG{TO z)t6$PdU;pNiYzb1F3DDTG0s*;0U( ze8gcm0da`IaX1QxpaJ$l4eWt1Y=hzr;v7UT+<@ya09WA>bU^~z;3TxdL5Lbwr4blh zA84um9e4&)@Eo4NIE=zw7=deW87{y%IAb)5Qn~&`R0OuKL(vjq7Um!eGfHJF>z&`9 zE-HHI_dmAnhf3Wx>aG}22b_Xq&Q_|gWKyTodVXGKGJ0r8x3px# z;Zz{-$g&>5Ef_RCI-jE)fW08Ckr~JzRHwcqF2c5TDD+oCBB8sxb$h#RYWh-M{=TH- zwQWx+H334o3H?S(5>6Y(8cbhy=bDmN(ftLx6xmZsTb9Ik%lf3$2c>4OpokaIlz;h` zcp!P(-6Sj4-<7pWJkdTd!ty{~))RI7{Knjw*=?pNZ<^D&r{DdZd%vIa`<~Oi&8>|A zv^B~&N3NQ`mtmSjMVf_5uQ>2uIN(C2|ND{lq{lv5%qtUM5`=V|2;;$* zwWWmSh^f(t=@5lQuoRZ*DDgr~&V>lffGHsK5mLo&^AV!C5w^o_NWd=G0b4b>4pzeo zB`$z@P|Kh1nUq#c*~@!~18@?~!v!7Bz;QSVhhabLRorG+3$4%$0+OO?APi%RgFO9i zxDSuv5j-&FuH*FheBD0Zb=SS*IH!#f)#(Vw;-Mkw{-S-0AmUcAQgiL@P?Fd+T8pELO@)m^`WwPyeU)6Y%?OeZ5U2 zY;Uhkr|rOiO{HvG+fZHIlR%)$b*~t67LI{fD!y$4p{&${A&$u*8J9=#^sT4wI5rfr z(Wq^2w;dfenY8h^ZD<&-t{$wa>UZ5c#&p3|I0q>;Eklv5Sq}1NtA$_|;pt0|LkP*aE3*{` LDh^Z}$amm3rkFtg diff --git a/data/graphics/keyblue02.bmp b/data/graphics/keyblue02.bmp deleted file mode 100644 index de930b9407a346cb2139653565a99120a183ce9a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 zcmeH{TSygA6o$WjCXaZu5X%suh|JP1pavQlRMtZm3NnJE3v>sm3{s*VA}S8pl_H|( z3Mphol3k!csUWbVQY)ee%$J179b^>J8;M8tuR1CESIDF4eup#D7i#r5Z~-B$jV#a$l@gJ2-Yp7Ozf zf1$+-qaYI|!4!?jkOLE8Jfy-fNK`tvjJ}edLdL>eSPH9PEv$nzuo9NRVpssPVVY7; zfRQj1L}Oq0^1LgBRJ##&z#cdN2lcua{Q7VkY=%Nupy>DcD#`_sGh92>lf}iag8T3Uo*VPZ>upI$ z2&ATd&&mp9WHhIwJWNcy852|CIH!#{0;RBB6^VxhFh@HjTI44h6|Tj_e+lp4BYcaF zwrOd$u+Uak+WLB1Q)5d@ZGL`RdU`{Ae05aR6=TZbxO%t?O0-kLG7IFlof6)C7ynbR z8^+kUIGdAWi;HbpnJq83e!nd!u$h_dNlDEc za`8KNyyIA(&&J1hL~N|}dadIGjCl`lpb1_;J=DT&xB(a8jI!*6O|S%J!syU`=>6Jp293v12lwC>TvnF-uoaf;7!TG)xcHKEN>B=^R!opNmtv;t!1&dZ zI`J?$xuZe3xz^(eekJV_qDnZb116hg2;qh5y5Qo^TI9*lgly0)a7^hQK|mT*RAgIQ zZApoZiE*n6=vN{{jGECKxGSJteZH&pTmT92S;~6`E$~HZmZr#i_@% diff --git a/data/graphics/keyblue03.bmp b/data/graphics/keyblue03.bmp deleted file mode 100644 index 4f959df4676e6b6094596707d79dd652c0b89928..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 zcmeH|ZD`eH7{-6kIXfF{p4m7$b-9?Co1kc>3<5{wHW<+&-^jGoJ}6V%D9RU9!WRf) zgcbFnGJ4S{X9)#<7%By$O{~bF%#AFk8`w0~%Wxu!kJs+A^XF{y97mu0us_dv&cpdX z&vo7Rbzk>$7FCyy!=6&jGxaGN{5U3SmE!R*Htu5u!jOLazw)KWyzARh5)C_>0g-#9 zkbERPi+0A~VVDh%!F-z^g;_8I9)d}rE=UF(xlTnf0Un2^VL7aX7vTk4JO_*6DJX}9 zFb|5M0CH0kjik_#6;KD;VHfPRu^V2uUtWV+SP!dVDO5ojD6b-TAO*`XikG1tK7`NV z3;5E;0p~t(?jv{~-hwxb?p3IV4 z{^?lk$7r-ME9;wZ_@Hz9;T(2Sy zTwhh?8yb91kMHjGhY$O@I$u_HyRh)jXtW~|X$^&1oI7F39)geIZ4+%1JP%L6^dyP^ z|7!da4Tb#Fseaiqzjdo$w@$FWpulHm_lLv1&hJF}Kf|@8Q({pOkAQgBz#~KPMKmap9qEGatk)L66nGHkTK{e|&*)Vf+>n@wOyg&z z;Scbh*(pX6cLF-`J)p3XRX3?&ahU)Gi z;RZVrS^Q(kD$e~Dk3#y?7@K9GtSnz%?mIesXQ!{I7_fnX-L#|*T76T22fyoxD1J8+ z3RB}JI42i5*Dt`lJfENMb8>><|F)gFTLOg9ER?URCRHz)^R@m9{!<%De47O;C7bNV d7!6?hJ!+-nApKPu$(4Td*xNA$#uShOcK`(>ITio_ diff --git a/data/graphics/keyblue04.bmp b/data/graphics/keyblue04.bmp deleted file mode 100644 index a7ac144f365fa135560bd60a8959ea342811d2b9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 zcmeH|eQ1?s7{-6k`|j+_bwb!Vw2G~T!fA>95e(6qQ4^_zRig-M(3ed}VYT|F=tCp0 zs2r8;pJ*e9T10JTiY@4qv{ZzeNt)jn%1oJ^(k!K?>)h}5aymO_^hN*V;W-b_d*0{1 zuKT{8>wZp4>#P*^nWec=-wVgSj&rpt^YQS%86iaD-zqrZ2ClU+AFhPUpb0LvJ>se;!&Q!=8k*r| zxC<7;eb8ldCoF*uxE*eR>tG(th8b`kRFz^WNg-qbJ^|0bbMT^#m9}01Pr~EyurZ3O z9a`ZExWr_P^@$b}@$Z1A;bnLO2H{;;8wBgZaBUc_4#R;U=y&cFc**FN!y|AnDC!2Q zItyq2v5-QFtDwg)KZZ@tZA&H(WHQIIS>M!ja^}n<)28jIt=*DJeUeBF1;LMxFDSj9<9W4-flX&aYYHJ34%03CMAj7Ty9yv=7$9>*nE` z?5{yajdw=dd=Pk11i`PMl-`6}$15$|97UoOgy z$}Ei1d3|Y)y&KX6;>4Tc&4*rsMS2U3YNm%a4)Qe4rlFd)KZ)Gz#VWaTo0GK=yaue{N1>2!b_kEbv+xph8Po0iZ^(i`lP=HeH0C*Y!qMFacfw6@C7cB(kSa1i%`zzD z(i(UL-hoeje{&+yUtGMms%p5VW>0x}|EyU*m0ntzEp>HaFX*Cfm?ptE=}F741wU`f_r%1;G~I|Hkt+81n(V z4o`t%k*b$CiuC7*C?0@MU<>>{b!rN*v(xtU*tRx1fBs+j`MZK(z?k1awhMN;v0t9R zM)(k3hKHdUE`@r?8C5C5?{k_9UdxDAB$EWmgNF2PKXoI=?T( zFE39$=$tu2L9hv4fE&ghi_S-r2w#(J@HRXMSGcYsiK1iDGj($2OuKNQl<7C-U1)_9 zvm%YIXrkhkI1$AkupSDE3@%CS|R68Y6MaBIw; z@U=_VYqR{L1HwDLP)xXAd!_t@G05`tXv zy#2-~(q~*NTLh=UJWyx8&^6W7@Fr}R+bZ++cDrhot*lh+DmN*1oBO8-ea;?7qA*7J z_L*yR_q&u^3b(t66u!WF^-{`&zCJrJU>h6dyw0lwi2C#_WinVsC|pW!a!qNiOYBZp zq#w!8Y13>nX_qgz%a+-?Iw?QsoKfZ|zzno;ml1`ETKz#)EV(us^PT5ykHv=b@@!$D zoiXEJ5J+>$q86n7BN@jmExE6FGxXP%`xpwK8FT V>tOW?YyKT<2FsD<5e2dp_#3*ZO6ULp diff --git a/data/graphics/keyblue06.bmp b/data/graphics/keyblue06.bmp deleted file mode 100644 index 5ced62196b0c1f15c5e4659b44cdb0096d91166e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 zcmeH|du$X{6vlsdW@omG+in{OEmosVkyeQ{F%eQ|k(9?Afx}cG-gRhcR(8JGpb` z-0wTjZ>r9j5k`MAEaE#-*r)+uOw!UN8PK4l%F;7Q$^S*$U+D>DTQy=3j#@JwR$aUAj%Ww;v0U^y&(y|Noi=|XE7PBi>?90y= zV{u!GE`yvjOJ9sc;dwR`+GdQjhooAnFnKh7EP*k1t{on>O-iCw+gR#a>nqWURB&0xEya_H3R_*h z!}D69xQF~`}U!n+6xGlP$cLbO73Qsqkmk#Y#E+-1Gab^9U_ zTU;#u@6FEcF-BzMEp=e#p}RVZemim4yD=X%Cg1i+(TV&Fg zYR{)9WSpImT)`hO1Tl~#?=YqZeo{SLui-okR~??)2jvpj-xPlUdf`VEYU%U$b(ETp O0QsPF|8M@cGVm8}F;3wC diff --git a/data/graphics/keyblue07.bmp b/data/graphics/keyblue07.bmp deleted file mode 100644 index 18a66435e7ebef35035a232a0d27a646f73bc80b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 zcmd^=TWnNS7=^!m&dl`8lxb<9#Ue-{qyZ9AgWC8aLs@84mZtB$xt^xMwOn1mocz7z%@+$E7S+Lopb}IS{VJR$!mGA+40w23kU*Cf_9q-eQi<6v%`kjF=Kw}+I6EbAG)5uzZ38@QHmlSx6`KC^76f&ryhPDRE2i< zQuw4+D)^Z*?T8Vzv6xEss_Sj7%#69+yfuZ&N;_-TuR$P@7rIlQ?s@*xkl$YD8 zD(SP;^OnO*=R8-&*TyMR?5b54x_93UOW?sa-w5%KrDGgA)Na|LdTlU92SHYou2i@z zdvZn_Rf6f$ZGFA%*>fwr<2K3wGXrZ*&5Z2VK&=y`V8GTYRY z#$O5#XT`6LDJA>&x988>i4&!d;-3sRW>qSaq6%8HOQ)c^+OA%Gs!Nv*&b1~$BCBdC z{M=mI*k~6o-j|cJ0%kbRPj^B%3SV>Gx6inf{+o6U9&BrB?1Tvieg8{W-_e(flMX3` zuV?aPyKmpcK7F)u5h#+fwiH5&el9h&x=!C8YUxRn?ELu>r^b2LY#7oJzR+7!Sh>3*MST7bM}~`C@HaX z=h{JoYJ6V`FK}0hYBAn5-jnbWNIjkI1_fVQda+lp!_la6Q9L?aw`VDz$&$j?qo_uY zw!M4T`u-QrSLMKxOAe+8g|iOC-jthrESYTZ{q3;E{i~LfjG2Jh^Hz$S9K~jP^f(fW zZTCC@ib&5_u*sMmzP~>jZHPqbjoIdYU*gR3ir^t#D~l9JBu)oGb2KVzl@Hf>UcKkZ zYW5nl8@>ZMv%nv{QrIDKIBBJTzh(Qz{BDe{n8T7C>ZK2;+jS%BKE3bS!9$kQ&YJ#I hE5cDY0CgarkpZd}|03)Vxx>l4>ji{kD!<5dwIW?=e@4$zVGY4 zpQ|fI=3&=J-7nOyr2XeOS5Fx(5C8QFA=5fbZJA)Zz5f?1DTMPZ(U-vGaD}aMD1%ZM zm=;v;S^B^*7!8wPD%=J$;4WKt!|iYjOa#^Wg03vRp%?_?3}GhR3y;CmPz?)h)xh)c z3_NIbHyVrV(~+@%rWg)4!z_3No`aWQF}w}$!)H(rYwf-Q-hx_q!a|$SHIPgc7g_8N znZlQ$&R_+#!MQJjU{@HnMA3n)tbK_@Ya+2T2sXnq(@+T&Ftn#Aln|vts+Pb9Amp{q zeeT?sLC_M0`@`_(IQ}y?*Z1%52M_i`haM{^Xb!_Q@G9I7*TMOxDbho@$r6&%{0Xdb zZk=-*rCj*X0{h_?IH7iQ&gbO#vNAtqiXSuPP4$T26vc~h2V9&1U*JMhN;f;VAqZAGrzqaDD!gJ9 z=@xSPP#H18H#hsqlfR9kW$-Xu3+EU`=lv4D4jSRBAZUyt>HiR3Gh51{*K2gO!*zK` zz6%0hRps~YJyl$+EXi+bmeRBkgth~kook8X?QvZ1+#6Qw889LPc#1JeQCjMCO`Fyf z1aHDU))A?8=uo8$e+NH=;laLr8{=4XFMwLLJT20WPtM@SvERAV*VgV&BtC{m;hHr4 zP0$8M5{V-N2X2ib)#7ou;q;K{hS~Y=3F%j%=g;>`m;RWSryhLLrb>2KVf)~ib`BUI zS1Uhq>3wiznvBlKspp?k_!Sj?-n_QFyp=XOB&=JB55P(7EGqJ&M>l0Oq>aVl2|Ef4CcT))-tV8B=Fr~xC$1*Oc?%m`0W(q#`)vN z{n)XZ53=ZVJGlmQiXvg3PlIPcHf~Ug;&@LKZH9L(`BR`ULq3x!QV7eJ`-XQjMcNoNTr>6nd)_>3fs2%MT-vS=dX0G)=DDQT3FZ+1RvQfQf?O- zvbsY)5vI60{Ve*Ukyx%=X{IS6*>xN&YPY%wAQqFg;-Gp9$)ZX4PujOY*N zjyQJ+_QGznr9#l5Ut>mhX3)-zW_3J BDgOWf diff --git a/data/graphics/keyblue09.bmp b/data/graphics/keyblue09.bmp deleted file mode 100644 index 82b99e0517fa48ee73951a67157045c80d0a4ed0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 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 M8SGfY_*d)?0-1K6;{X5v diff --git a/data/graphics/keyblue13.bmp b/data/graphics/keyblue13.bmp deleted file mode 100644 index bfda9a0b792ba9dc9cd458ce38f36d2032d7763d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 zcmeH}O>9(U6o#KW(`jdbw1Lb}e#Qidtq>9r3M^>V2>t}4VwEl+kQkz=iQ%^mF$!$} zl^BgiunUP2G!Ug?lM-2U1q)+CqR0ly!UYJ?h25|rkdS=5oJ+rc>CBx}yKn)MJCif_ zp7Xxn`Fm$py|iKq_FAFO`FhW}|Bjd;E8*qf;q_owAPq^^L}nwzoD4;H3?7F?W@scs zhkr#B22O|ZrCm!jw_d<%QvHOtY*CS~CrLSr7h2=Bso@Vj=s zP;fmxZg9{wH4UdygKz{o;29`X%tG3tCWgqdt(z^d3x0$@gkM$VmMwGL-LAP=_7yk< zd*M~9WEegs3)OI1Iedjk%eKG?xD0o^Tt$(#_8%*n@Yh)-s{({E_?m=S!PD?0>hkOG zi3D;)2X2g**RA6ks^_f*N%(CxBuXKK^>#Ku_7pP2_M7!rgQ~r#FA4X~Z`%wgg}M?S zv3R#quxm+ca5GvpI_*$F+qv$eta^{wFTza7n+%F*3`KbO*uF=RO1WauH8u|A^Zl7jPZWuz z6W)Lg@CrO@o2VJkvMhlGAOW0h6q$gc6nvDTw$`<`yMqT^Tic~#u|J#rGKxMl2~|3q zjYw*?23EmJSZvCmPH7S16q3M4De`%D;D8$*c71)Wwe@^`eQzcsmXB?QJK!x)cVdu(E%+OT;1^T-;~-g+=5K@b aCMn*3BE~s51O1@Ueg8k5b|UQmSL|I*B9x8* diff --git a/data/graphics/keyblue14.bmp b/data/graphics/keyblue14.bmp deleted file mode 100644 index 129dd68dd7e04703ec4e07c71a878df7ee541308..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 zcmeH}TS!z<6o$X;IHP8ywDL|G5GlaG(EZJO?lpLNE@-LN55D75_@hK^By3r=_qN z_QN4K2)kiD6hsRpqT+xj!vt6Xm2eU6!b50*2Dl1GVI542$R)Of10KGe3EK_)F}zl) zCne>R&)22YbEt=tuolK7ATc0Z9!`dGxDBtQmjr{lsYy3C>rm)3big&(0n;P+GR2*R zH#$IK?3n|5pb5HUp4Y33i*-eX&de0gzJnXE1tvwrhbKBD0-Xzgj1p z0%@qyT5Y_Wza)B%9Fab=xKamueC$_wV&IN=duvnJ3JYPh>mB;u#ByB&@vWt~2bO=t zcw5rU9wgoc?tS0}I-Xd54IDQTF|u&XP2|?{Tj3U*Hcnd(Q(;5`uNPOs^2G-2a1YL# zy}tn#8QaG&Rb03PSpFC22HB5~jGx7FdqGr+VV3D>vM!R57%35~jj?Ogrp_*O#ae98fx}>Bd5NJ$JzOK|cW8+HL2^(RhQJG^J zxJab+XE7N3kA$cM0=lY7*VXCjYF$*+84R|1y?2zl43dkqeKCM6O{uAvcp$Ie(y`(8 z+ulT!(kUrAE9*xn)SaIG!sBUEssV1o1vmlwjD*x`K8%lWqlLsB^s2x&=n-of1Itbn li5fTqhs}PJD#hi*4R{N0;2E@;pU6ufEi3M1v-(~i2W8Wv#^)JC-~f&EwpL2F4=BwB{i9}(6@S!_lj5ruVCflyIK zB0(7n)lGDhE746q5ER{7ktOU!)TI<%p1wUJ+dAv+w$NQW%nWDF&-$bWwFKmHY zn32MjlO-KldTfKU2hPDw7=Q(%aq{KDKXgqXAJTy_+(je%lZH> z;0_#z)!@xVkqKP-W&c~@Dm;f@<>k7kM|XAUqM~mQGZKQ6!5t`d>;4o~1HHKy8zhFt?KZX0oA!p$bw7@!83iDvrRN3m< zXQt02{ug)$!^YuPOdcJDT_!`Q<@?PMG2*ag&-OX|)QLn7TvjDW#zDK4=8m5E}B|*4E7m6H^53*3=*qpl73F0bG;|VMT>2Z z`+T3h-ZvhP7))&32O>mjb<`Y+ls-{W^Vi6!8*o^D!dG|?uVKhg^ulFx?oP6#E-AGC Hs|frCKTE-G diff --git a/data/graphics/keyblue16.bmp b/data/graphics/keyblue16.bmp deleted file mode 100644 index f7539231090d7a9c2e60257444079ea8c2d76d82..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 zcmeH{U5HF!7{`C_I5VbU>ev~~j0;v~S|t>1QzFYIv>W-VZB}9BJ0#g8g+#WcwuER~ zW%puSh*~S*Y7{O<`KY}T7s`#=E0ovcJvz=bd!`d|HK%h|C{IkKF_nFy?HX` zYL<7CJhOg1ij+h?mxlUXccAXTe|KO41iynfsh{RlSOBfC4mQGi6EB2h<=?0Q@>7=e z46K5Ea1O4)P3VV9a0J#uq7otdt0^_a<J60OI&7#Ccci?CsLviR z^sEv87>(+#F5TAV{p1(B2r*V1m>7WKCpGT6t6zZCAagwna*pAD1akEy_hYaVHo-~* znhP_)hR9#AT>ZPIB>Lbq9EKeRBn7hsqypy{_ohIQWAYm1>c52-@Ca_3lIVq#aL|CZ zz#3Qvi$Ri_3DY1BR)D-*{V(tt-os0!o`ymrq0pdGmz6pX$6-HggUtrC)B}>vnpBhG z>Pz5^pRbnnEs^-1%YDjb%jxt;JU(Dqy-J;eqp%w~O#ik*9_GPpnC?UIiaYU7gi<=0 z)P;f`8q&q0?(QDT=N~sT+zN;LlsaQ5dts}Y4^jyZMNE?x_Eti*_-}+zY+HAB>fvEs zD(Rjc-O^G{rS3%{{YqUlH6Xd{GP$(Fa#&;vI|VUgm!EhALK2C^bS9&7Io;U!&bFV2 z!}paMgsX4?PQU?kE;1j)F6o^nNRKyp{BX{R$a@Svz-xF051&z{B3<(-GM)L;0Nyy<4*tp diff --git a/data/graphics/keyblue17.bmp b/data/graphics/keyblue17.bmp deleted file mode 100644 index 672300e1d5884877feb28bf65b09ff9419563950..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 zcmeH}O=uHA7>1wOG-Ou{CfHyhL`5S0wGm2MQz^A55fysS=*56PC#8i#QLxfOTB@MX zDr!B5f}$XZA|f7Cw6`8akq92Fy@+VN3LZRo7(b`Uwr)wA;7xX!U1oNN_nG&dkKNtg z)w&dOw90k8oU2QxqCt8U4h??u6YvxG?-B?=^{twhz@lpPumQF}C+t{|J|DNJc&!uW zB4QAQB?~U8R(+Z8BD!Fgah-w9unty&K*JFH2dJw*2&bVBj>9210DBBhqE0~);;9G0-Pwba>m*=Xn~F9o3g_AswOU1{{y^(SMU-Z8`d?r0K;$!y5UIK zR0pIDXjK)CT>W406TZV&%lhOvQ<2EqXmmUreh>;>4+KV(k^oN{M|s!_S!jbMSOa3G zQen9I($O=!U00_Q37yO7Lg7!#=ciMt=aI;rVDPe1XN;X5I1G~8PS|QTNGMVa_TRfx zR-CP(62i81I<3dX^yH*27WL?;&Su}o<4=+ybDeq2bhP9YqiIU3f$~`#G z^B+o0DG_f0X23(rh{=qKPO HFgJnU5pNfe diff --git a/data/graphics/keygreen00.bmp b/data/graphics/keygreen00.bmp deleted file mode 100644 index 8d6f8311917aecfac954c3545548b9328915927b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 zcmeH|U1(Ba7{~ud-8|~1b2{BLH+7;;=StU9W*?^QqikCrl+}n}(Fa}?Q7{NrM#Ts! z3MyC^jRi&2cCqTFU=UR7CSpb1^g(nNth;Xa^u9U{60_x15WYO;@Njtf|IYvayoZzM z3s)hx!tCy4mwoXPP|vy|i-2;K6DTL}?-CH?C|0F@o5gfWdcGvIB!$1(Tu5R2E9)UT zplXK739$)ED=JM;=polYP!!GQ&mak5NTF^QOuJ!9qizR`1E}qVJ^@_})$P#uIhPR` zP9~PXlJp&C;T+}VI0yS_G!A3MF<3Kb7=md}4%ZFcTFz3paCa3($W+UN^7`(Z2u!2x z2?CGMItkxBc*o(s0oP?X&!g!SXIT!zypLO}?a6^cPV)%j8rd8Q6dDgC$Q?yG|H!Xl{QAk2HYBYhIuFf=}hjXbv{XC&nlU%&=JoRD0o zNRxGhy2dGUhmMX?dgw=!_<|_n z07;)U-GnWK6k#(7{iNJamSKuyDLG7Q4p2*KzApAo3_X_xrUl9dL|zJfYoo%K8sZ|XnPF*LynMMtlX3nC@1j$CGZO(>rdI9n31t|SP!S~+89{w0=!+0xAL@(2(>YgJ(l#c2i*|U<;kggz{(txU&vVzT z^`$}@KDOG}Tsk)e=vWqI5D<^J1OKuELIR@2-}QDhwV3soxR?qH*$|Dw-c3kDQZ|zG z5Dk1~d7_3FWnxr|A`-(9DR!s=(9|Kbk%y)M>RMz}LRE@1FH#&(SRgJzVkTsY1+nHM zGMk~_ft(%~d!^WmoINmfL*EJAR%CC2wgsAcWCSFZ9mysnYGZ>!2=ftG&%t&Pd6)QV zJC7A-VHrg3F)TX-(?O2YZ-=fOSsS1UN+36sR)~7;UPOynF{EE`7e!CtekR3J!TVV5 zA5Zp;DT;21j;r##VVPx6F!#gMCxJS#s14e6P*)?}4`m*|tcaA5e(@)ienHt+R7}g8 ze`>qQbCOzzXxmZRxN~Mz(_3TlXet9)hlJ%P_=$}BVCaHw3$oTjT_aI!NYee;1|j{` zgepQcAxL5u*>BQrqDMqiM3WPAW`J5Zf3pRir@QXR^RElcJ!YNxFiZ#d9nDdykmiQM z47uvJT_Js@+#p4egceeEkg<aq`__l3;$P$(Ed{x#Sxz;cRH zjQb@@JG9MEm2w7?H;UCC$o-^2Tw-&Em!I7VP+ z6n2)=5~UZ0UA)s+SEsDxM$H$W&1>h$Ruam;qjU1X9C_=@V?|~ PN5m^}2jUL=&kpROfAb`vdEG`-+0fi9I1Oz_7J{X8mK`EH!jH!*%8VQy#tC4gX4cT#$dr=zT7=)7?HdAH9TlQ zK{pD9F)%t|Oobr@h9u~$P!r-<6qh&@f~73wu!Uit0DBYclVESe=m>0euvQ|`19LtS zG6koa{)IIdF{&0Rk0R|Eq`!!a4rI(j#$2S&LE6)BK8cjaklY4GRB+ZH9w>$>3kC-i z{g9wL5lPL+dJQ>mB7YMK-a^3^8S^(HZ!L1(K=yLD79wLl#y&5sF^|B}jL{9SR=}Jm z2CByR6b+HP3MD(>*#qC_@O7iSTk#*%RU9z*cN@H)=u5iP!grLs4aivu_Y!2jjIqxl zb*5y*PO^3En;|(4Lepp2%A=_I0X3(U@fXa~uV!{o&2nn(r0BEPLv3fW!@V~DXNJ;k zYT>)cTaWA&l2Q6gaLz*VLsBM71xzmJEPtbD`qe+7{ue~9DN!|-)j1egein(!c;rX&UPeCMPeybvmiA6aiWZt*vOzJl61xs8h#Vms#B;ug48GAUWVeW zsQ4P;iz}HY7D)r^9k(~HWictX?S?Bdx#+`KD=v_% zId?9o_W**&5WQ;MO0$W+`iR;eCKKy(zPylE@s`SV%3-kv;)rV$p25eM#B2W|ke4RhiE diff --git a/data/graphics/keygreen03.bmp b/data/graphics/keygreen03.bmp deleted file mode 100644 index 9c336aaae19353b62728d0b8aee9fad1dbd8a41a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 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 Vna|f;`inON+o!LaFaKW^_!|iAqJjVb diff --git a/data/graphics/keygreen07.bmp b/data/graphics/keygreen07.bmp deleted file mode 100644 index 4f592a89033c1d96a0f093d43ed308a8baffc69b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 zcmeHJX>3$g6#m}4>CALyy3l22T3Wi7E_9i;vzIQ@mKJCQrqF=0sUe7vfGiOMq97{9 zg++}L(F7C}MS&;^3WQxju~Le(lqxm|C}?OzqM{tnZJS{_U6gDEv|06g9_P_oSp|1nJu(BSq4hjtvs@~o8 z1=80(gR2bCWgsXI!FGfeBeV!1E(ANE&p}`^R3?8%eL?x{Gjd=OLYxR60mFEhrXcEG zM9=70(-Acd#)*imMc6O|g}R#~KQzCe49*co)*<>n#Lh$9!$^1>i7SxwERvrS z&!lI>4)4c20Mk@Nj6#sbKNmkt-=E>tB2Ioi>1m|Ah{3NQ{S9QiiOhE}WNXLThRn@k zGxcR8K7~OKi3A5!ATae-7QTSKHiHj(5Xmb$U^fc1>>ZMMx1!*X((U745pJUqjqK=v-%1=7Z9Z_mJ|uxXg&r2u$hI#h`^qTaT>wk-Ha` zqspR2o%>8k>DeGxlgiO7+gl~adAP2i=sHUOk}4>mhJtI!SlJ$IYml>cAoV50&P7-y zRK_kBzBj}6;8&6JG4eix1z*8&PV)Q_J%=2g_E_r|GJDK;OVE-D z?;DKQX8e(aS(LnnM%Ua3Hy;$FV)`*-{Zh!?1N(Pyx2u;>`BED0ZVk@aEn<#;6k%1p zgLisid=II&(fy04(B33-3UP}upxhsyueb0j>d3U67A&L^+wp+REl7L<5o5$jZ@@hb zu0l0QTWR_}dc=KMo4r#sMWhD-VclM|okj5t%%xo}- z6C(&4X%f-iS~8grAY~1VcXf5N_q_8W+=Qi6Omt)hnYnjTR*PfG?qPV(dkv;j6-m2j zF437f8fZQwy52astHj=8wpKy8rBp=p(>!uAK9|){2W5!=O?qEpW8h2_{)|eJFVK3T zW)B&;!~%aJ0u26%R}iLA9MSJO@=0}3%_R-Sa6tKuFG8CP@-dPw4v;Z zj#5@tXs%0`PnMgscR5ws zn-p2wk?@$HT+evy--t@BqAH@6DU_PCOGq)7K%Wgsc`FNkQJ0CRdxRk59YN_8^=cZs zg=SY@56?d;D9usnvU?L1Q+7>Vd`abOQQE(jZ6_7B zQwnRNWNASD=g8d$RuUej{GUKS0r&bR?r3g`GC~Q7vBJZ}c>zo_TQe*t#H3*97862L6g}U}H>K@NH)w64ly1|7F0-^V({>89QG875%6A*L3uof~1Lv zAA{HmmIkBI|kNyo$VK$X@~5TG%$g(WKcosD0jYW5|9H1K&jcdni~1`+Ci}O)LJ);Mr#=J7ySsS|9#<_-N@p zNvu=FK2A~w9qnarQaO@ULOmj^?GP8Iz$?pK;OET9D^a+bb=7k@r66G#c z<)vC!;gFQ81+{`{k|lC)mYUU<=U=O@a!qJt))nv>?Zzj zm4bdw)*q6^Ls}!)CaL$R#t#TJ_@Ju=-XGv=3m^4ULh;8sm7jXIs-zy!uZEfc@E>H-(0EiwnUIW|` zuH9OLG>UeiO3)w!R>+K+6A7$;>RtXa>fJ$5x2`=H)TT9vb=>(>*DeE9$NKlK?&PUq zf_jN=mDlD-C2fI5an<$8@*eeUak;N4UqFAE-Gt@NUEa(Uk*hhKPw`@u0c9ibdE50?8JTKS!v{GHbOGD!G zBU^rsI7I$@RIYJ08M2;H&BY}oiD!0lI#1DyEMv%H_H@QC3Q#iw9?B69z3$w6g{tdJ3|+`FVl9q@6*zD3T=V52&G^V4GoA<8XHt921TR_K@k-M0YThQ z3oejY1w^z)5fl_lAQ~}(7-B#r5fQhTihm5(bLTZvd>u-oe~gpY$(uLdoO|!N=bqb! zX15)lmz(c-{7diqGmyZ$OS}a54_t;n244R@v4NOApZtSBCXQbiLQ)Zy2YVU9s}Sx+ z_(<4Y2+cuYoVB8%MdK6jfk@FO?*CT5!(wFL2anlh|gP?@|D1(Oxh(cr? z;;z+f9e2U`05Vr2XCv~rplAn*yHUCquH7hk8-?4Ew+R``k$fA5HzCA%`4D~~h@OPR z8{wFb^!t&y3fYe%?|Bry3fDUr@sTm|Xh6dm+k_t@ntq8Idn&a2pi#UFIZtXPF;g!e zf>bBZRW_Iv*&r3nu&@ioZxS5tqeks_{u3|QTE)3ertXk=3uILNw>H-v8SfUi~^%7Vy;3^ zyfp*~FM3^hE__Av&v+Oq^HtlNSt`~GIPiv5Oqa;bGOPLbSn8IlNVoxExmNswE|k6x z*Sjd%u4*SO39VWw!CCA;Snm_|g6*Co`OW8JOW!j{EJu=NVxfrO6`x>4k4iCjBhnTj zcAAegys+LIQ&CM~zv8T&_!I*bPAOXO%MYXK1S*dhuH6RtNxfTX4^FZk^TK*>sHmDB zFy>r9&50n+psI8(BC4%FtUQM5GpIi4U(w^A{}R#`t9=Cx0pGP3?&GLBZcsl(JJq0) z=J?2;XGZs;?&qK}C&G$fGb~EJR0|w;stc7Jz=(s|J8F-@puG$$x8~1!>$FqBEq^*H z_6KO0?fq$3$TZ2Zmm;+T`7dhAs2nCwVkwNcnXnZozL!JuW}Ki=0z0H;%DKd%9R~HU zEzar7#0=qm4;-!p(y1smN}AJ6Ryj3}1*-p$G#~ghmI;D;Wpt;s)gG~N7@1!5iqM1EZ**DwT4gDZxTEQ&YY{(~9r&_dUm-)o!L(@|B$s&r_9aZ}THP zhq9q9L^Z%a%qkn7u~-G8%#f&MQnysb%@k+-sbQ6e0?PLJm2?|wgWEyNVmR{8wsLoH z-UoL=OCWQJG-+!YM&QCvVD z)M|+VQX|F~4N*{hC=nBF(n9)RVhoUIgAc~*xznaC!?ad?WAe@9pPBDF_kQP|du~Hp zMHoD<3V!DBojUP05X+|-UIJX{%kaZY>wn&T64o4nfLH{?Aus{vD42pSiTEF)5Sbu> zNeC@~WdWiZVOt9Ob#ScEhv*hWR3g|3Q{YsfxkoX~2uekGIij0kUyit2k$5*!9z@zM zq(6zYN0It45_=H4M&pKL{kstU4i9n@>>Y?(kEBfso4FS`ZzAtK%sZs3;2?6}f%ADJ zZ$r#V-R~DV5oPvUFqz1D*sewFY9!o&a_W) z&-M58rx3p$miaIR|3iqNbR{I_M#QZ{!ktLIAE`T$`7CnY(ws}aM$H+&c8T60bw^}# zzw~s8vvSane`V}Z4q1^&J@~u@3m3N*3EfD%3rY7Xe#%40*p2Kr6ug#dhQxamnYCjGjj{Qrs(U*V%x1M^svlPTyA`GgMvr<4En*G*~Z32cnx`sX=%N!iuJl zr(e8T&@9GsvDW_@#9C*)qTEJQ`=|o7?R-&1NGXyWN{+&2XZc%o^K?wFXL7YrOs-$d z#mBTv10!cUOBPw{QnXzzRB7aau&q|C???@0XM^f}@4 zV98f1t^5zPoq5*Q4)&23e(5(T`wm5)YAdl8_Uq@GfA;I(-Sgg8@~I!TytTzg{^j4J zY8a&_^$Jvb?9Iymcn)5fOft_0HWXFod`SyOZKUo{RZ|$3^Uuu-&Y^nPDEZQ0nb-m} z3cCF)A^hzs0}_(ZP7jUib}y1~Hb3-8~du@S(x1Vs1i275r^JLQo-*wb~}? zv0K!sbR4V&O(rydV!szYzb;l+v27Rk!lB5#clF|Nw|E*YUxy<{Bo}E3$%VzGQ;cRf z?oqU?_}jG{k!}Q~_#kIIR+IL-X`giVNl)u&Y(c+~@r*J|7qTwVvypW=9jIPTNg6Vf zC+FP2mSHB07*PSUWk!5Pp=+%aD_!xN9A5QDZpl$I%gv@Hy$KsNNm>&hn6}cwwaw#) z8Dr|Og5<|<(3YXI z(Rs!}X8&Y}4hcUf-6OJpudL|2m|1f&xM;wX-)H0;0DFp7nfV;Z9tS=7;h<;oEc)!Q z)BoiJq5UqChz*k6B^k}qV zHxR*%R>dJ;Y6mjbBYP8a&PU!Q$h{Cb=fQI-+^w*9V^NkL!jPoM&RV2)!gCsO$56Np zCAYx82NjR%DtidNyWzbS+2_K&8s_x*D9Z`KR@f`y3M0K2nH!OJ5sI!?4OBe~|NSVq0_g*=a+-*qj)6Cfi9xuHE75h;03c{Zm`hIa; zCiOd|V^q8?Gv?aY^-qOYYX~M58QEf0ID(3twnj70SO?EAvd>1r%rjJv z3r9e`_#Z&gjVh(o?qgKBG(I~+-c~*Z-)b5Ww1pbpBKyU4r^zV&rF9&s_f(|*1@wuEr`V9;JByb*-B#vqxpxwK;u`ads{n6s*|Pv9#dSg zkyCs~qoz`5q_in^o~k6VErkj2d4x=8oCf`bOklkkLwY=dobZ!6a;!jVyIMDY%+50w zEjKxP{!}#i$fi@!_A6RuOtl9LWe=j@N==N8WOgTrVzR?pjFbk&Bp;|g`iZMWjW^oZ zIDCqQlI;7-*7Kb!bihcxQ;%7rDhEm?IS(cm%v^5m0H3fGdhe{$%oV>|E#2ma(Uv%W zhU-(wCvB7Pm;@W&wFdU9bJ7^IM%4E>J6pX)3x`RG?# z%9s>jUXUDCZ- z>IS~|G<}pzYVppclQ2r@o$6Ptg6$&nnS4T=B_49zy-F%W*B{2VA5BfuhK3J8C#jl5 z#eVqjQzi1>74@{>af3(Wb{qv)>(6NV1}i^B=pcg6>z&U0X+C65^p_`PL&H2NI429_ EZ`F76DF6Tf diff --git a/data/graphics/keygreen12.bmp b/data/graphics/keygreen12.bmp deleted file mode 100644 index 048ce89af94e07801a303e7fe7ebb50463505197..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 zcmeHIYiOHg6n?%oN!uj7rAgYfS(;wc^pf>{SzX(8Yu9y~b#HwIHt|5Qa3{2?+0Jw7MdzNAglRs5r1coR;(@0{n{ zpSOQwyA#n*JAZ5V4W9ZMD58|&Bf$UX-(3MC9jVSg>79w0mH}H4vMS-IM|KOG5!h>B zE1cu>?>dTsTk?=qg`9S{hT%OQzRTg?1^;y@xf(?m!?g~M2x;_}tQU!qWPIvHUfCSb8(un>5W>VEj$xg0HL|*nG(FYe+0|PKV+% z$cp<=KaI9ej1h6aDBHi3Cnlw@_j_COy9hsxz)dJvuU3n@$Sea7)!0oQ3QQqy6?~T| ze&khjevJXKPDUO1P-*`zVE>})Hm#Ku|jVGn5v z!AXt3;|uitiM4_aVr&unCUNxrZnS=+O$pqHf(=^LR4L@IL2ftfwb8+|#MP)z*Tq+$ z>fv}{*9g`N)(QFqZJ%k!OK*W^vzjl6&++q|i~N2#>NI9kCnhkL1zR>K==l}R@1y2P zjo&j0M*|F7+}yNc2Yr`nj~FV8GY{WXOBOo6LfsU~??&-eYR>S|vf}2ZK4+VYtUI;dC96Zsm@lDiEq4Giauho6e zs+gmesF~=3&sof@a-C{>weHKj-kHj6pQ8CaFpKhiD85pY6l^>$aMw4AzRbNzu46 zuxqVy9Z8HdLf)pJr(M1Cmf`J|h(9lQ^Dil7ObVxD=YF|xbT-&@#2R|sVAHw&9CZ?@ z_X3?^_o$K{?=NMomB?<@EVPo*;WyEeh2bc1?U8Pg8IfcAWb@E*U*k*G&_Sc}ew5v= zMPo)}W8RPS}e|Z{F$ysJIuU zx1MgzImkT=nZfx3V?w18NWTMuenIa^qx(Cf{kYNm4jNuY_&FsLX0hyg6kVcS;PR#d gS<3U3zo7dEy}VkEfpxN+}g; z)rutt5FkK6TUwBU$RQFEJyZoGXnTS5&;vUMa^ZqNLVCPs)A2Ba6Qfq@p^Sc8Z~l4z z_s!eB>6jaJA#p|dKghqbmp=ssY^Avfc)R}J8BokfxBf|QXfe%WVD}>{09ONCbz;~G zULk!WA}z8d7tSiU+u`X!;VSqyq2xpOH==M2Jo7NN5$5a^Q6?-}a6ap-M$UBjR$%;A zRPIISB*H%-{3AlgQTZ+Wo00z>oRyhUXu;X$mmd>Gez)LM^`UM6O@An{dyd!xd-SH# z@H0XuQ2GhH3nWJMY`Q2^2d&|#K>i$*ZbQv?nEX3>$a{nOh%Wb1W81JPav8y+DESDv zGhy|PL}7M;i>O6T+Pvv*#rQ11w*2t&@XL|-=8li32+ya5uwMFA*gN!I*X<5o^~n@?51aiH7gfxn0x~ z|IJr-#>y-czLFm1(iD9l)k(6jx^mteWiLNuMnL0ELLM!O_mSt0Ungi5#bE`e7knYzf?^~@c+<7~QSt{+rtz6TGx z1i}>S5D0)KsW@6`t}T`smhB5!P|-?z5fK#8Q(BqTTRZg7 zMhgf<5EVrP8Pr1r^$SJJ+z8KlxR=Ax3~LGWNj*e^VbOrcnP3?Wdm}s>karNiv+!Sr{|XAuA^#9E zH^V*y=8=P?(13@Byh(Q}^4bu%jNuI5PXWcl>Uuwyrokulv42l#dnd{j1uLw{he$eo3Owr&xGMOyga*R&P@6<3eIoj>fN|zt z`{(76__nGT8&E0qHe_x>en*c3S9}td$%Mc)Bm}g`>Oz&mH4jPUlHTg8$W9M#R8MD( zy(GL`#pmrg=OD2ZhSb>KM*+)3nm0_$;IMI7aM3+F~Tv z!7>WEgn_r$KRCZt@q^DW=9Xl5?tXaI!Z8y`;}P!#XU>2i{d}O}SALe<<9hU8g7>H# zBz=Xj*e1YQB!*^iK$i%`_;++FK6h$=q2eRTpDRVTm9V!kOU5d==1ck8Dkb`s0;x4q zCJauoHPO(}Cu1Zy_c@s-66$~I8@|};UnQ5_F&CVP%Wp^a9&tAJGKoIBTyiy%#=%-F zrpM z3`%i{dM<4~sF<2gsPJ_=sq{N_5xsm&otvq)>TXKlyxx0M;pnp)a00lO!pSTR;KFBf zh|h!31$OdqtTmXLVH2T|u$0_gwBt3MzDc{+(YX3@1(+RDQDS=^p$WefW1i+ zlN`tnB|t<@YG5_PuvU#^o<)x4AFi4=mf#~@;Y|s>_ZV^y$U!9f3q&jS7FJ1vFqk1b zB%5&6H;jLWvKJ_MAXkiJR|j(T%0-#B1gTSof~;X@aJKs5dnmjC-)Xrh`DWC7GdvuE G0>1&A*0V_f diff --git a/data/graphics/keygreen15.bmp b/data/graphics/keygreen15.bmp deleted file mode 100644 index ac647b563f7ed64d2a5fe153ec02fbcf2e791b0f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 zcmeHHNla5w6g{1w&=yMRgvAzUfzqT67Oa&)iz)Nq42ctQ*r*^Hqd`S?xFBLgA`USo ziW6~R!XUb2p$p>5g&GWMG%>`LMpq_!eXniW+5v&MGW~hKdAbKX1myt}U1C5P{E zv0p2Da{{jbdNzym5Re!N1riEGDIgFbdWd8YDIiRa{IsY`6b&m;LtYG39dz4}wFg;y z`9xI@`3i{BLR^1kiAH7-VJZ|Wq1yq|X%q~h=niZnu-=5_JhBf%)c~m}M8WdovBU&t zL9vo=m4Vyt!TAhjv!b#OLf2~)PoeNS3Z5 zlH37tdh9f|mboSS5bUFHzlVoVOK9{BFTpYpcUAZiGMl&)B$@Li`!~tDe9Ya(3)&UN3RRKVS*sJD$LH7v_E#Pw=~=UJvCO z$n20BAyGk?v_!5TzIzrW&*7Lv(Jh$I!E_SK_CwpsZO=qw)lV@a*#I%)k}iTPh`;s+ zD!#z|4kgn9$AqA07?ulMF;*AW4K$mfszrJw6i%dCAM5E1zPNBmkk^al$M|t{yP)2PjB0+O01;D93z0nbi6ZdX-#S7K33ifk zklKc+qlX$cy|K8)A zf2IdSALnSapSCx?FghQmSg#4qeK4KkEX)J`>M$Fyi<4qOl8(1QzdrH6{qZJ31EH0a z1GHg+x^L6LE-J5irFBjw*@gxA7m?cwV>fSWtfO+LRq_7DDEv)ke(>Pedaf0!NmxzE z-mj_Uvy#$jq2n=cp#@jrKZv0NdRCN{fSH497e3(?Csck1Yn85-yg54_`6w diff --git a/data/graphics/keygreen16.bmp b/data/graphics/keygreen16.bmp deleted file mode 100644 index dfa2ff7245be73d9ea90399c8fa7d72f8f2ce046..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 zcmeH{T}YEr7{~u-Zp)9?_N~+Tu{r0KnzQ95mSSv6%}o0+kPu3v2>XyeE~0{pkRpqM zC@Abx$hxR*B(S=X282aI=qAMA>732RoZE63-L#kUzMS`*^ZtMD^FPmX zyc;|c0+)wB9sD-W-V8?Gi*XTa1zY&IZ=-Z(2 zL8^dUGv_zruwp6m@zernn_$|9qO&Nu4#yqX2VlK`yk2Mq_iK;LlMOqLjq+dUc+Ha_tg!>J1y_7kJWu^C+?FuXEL%~tx_Q1GZ z)D$lPRqZTj2?yyQOOFQ%>GO`C;N@*v-a2FG{8_T~YjMN4(K9TS-jrMW8TT#!5OQ{b zXM(;}RPNGhWRxM*0!0>5qEW)dgZ*`cMq=B@c$>N=Y3LK(AEblbQ&p=+)a7>-w#&?X z8u^Ejy9e2wf%C!po5Ew!&Pnh2;=z#?LbE{VhiLZ?8kwQdXVlkAb^h_J$|p+40OMzZ z`IMjpW6`xhT@T5Hv|>>~vNT~=Eb-uYvp}GUSQ|;5l(&=Y9c1x+R=LL%6~k=VAWE)* z*K*-8aUAh|(QguVWx7R5$5)P+Z6NpvYY27UQS$}v_i(*J#Z!@E_8YMFqwqu^nRf_8 i#J7pQR!_kF4zAbY2r7Fdip6?yv6_kgLvsCp=)f=MGXW9+ diff --git a/data/graphics/keygreen17.bmp b/data/graphics/keygreen17.bmp deleted file mode 100644 index e09ce09231b36408c37ce21b5d2e2403ddc840a7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 zcmeH{Ur19?9LK+Rf4ZBSb6cCP>E`A(+ve2NvAN}+)vT!*m_`4f3^p}xsP0a0$J6RW)%6LYlc1sLwqIrQe0N? zd=D%}C{0l4AycpPN%`ut^J&ED9vBnQw?h|(whroQh&C{&Tnj<*@6eRKeHe}r*iWP4 zIIIIG+XwS@7`r4~2%1``T@bBM7$H;T$4cq@A0qG={s-{hg=ZX9V{n{D#UQMQBvv1{ zR?>#zAirEyC6uL-uN>Ny&L{L4!H;Nsjr!-Po#w3STX0>4^CD~~VLbv%Kg>J0sghO{ zH*t_?hccU^w0`?9wEaZOcdVb2w|`N`XAH4-hRDm}byK4Ew#;=!U;)}rNRIZx)C)rg zZ>c5#m6O}aRE)GfTWltD@LAbUj&a(Rq>*VlJ4QQqfAvS6l>{c0o*RPm66~i?eiWAd zF!#Z*3A!l1AWktsCjNChi^WsxErc#YFBP4m=qybT%@VzTL8F7TA@ONV<5SUhUvOWC z^D^v1oWh!5+9r7kqsR}j0t(#%VySp)r-#5O-6Zsq<}g*Cq395`9Hg4gc~kRSu|6sD zKf>BOa9@Mtf|S?*O80=(n{`{;0JR&d%Kp?o6D2|DloE>*VuaQoLUdkW9cX&P3lMk$ z-y}RYQ8kLnVU!<(<$zS_?(E9T5+mObnL~I6!4GJ7g}Nkarr^EDT`YUPuvti;kU%Pd E-@kV*^8f$< diff --git a/data/graphics/keypink00.bmp b/data/graphics/keypink00.bmp deleted file mode 100644 index 9b6314af58a98a1aa3f41a4d52c6d2c9e81c7696..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 zcmeH`O(>;N7{`D2GGXpS${39>SQxC3YhgqflzgS}nT_(1)ku_5zCu#SEGQOaLGrP< z*ig3=vXSnHjgK@t#m@FV^Khq^hFjNan!2ZRPS1OK`v3a>&v~?J%xSOy2H{I#H>ik9Ms}wwGeoE2)Fv6mVjwLpRm?)yc2@fSS zm|zPQUwl0geBNUq3Ms6hqKc|YD$6M^p`?IgZL+z}`YNl7 zEY2}E$>bPggA8`jrK~2J>Zns|`Q$4ondCU))KL&YhT4mT3vtf*C6{NMotRD>zK+9y z!#&I1_S@|>zqMJP*$LCc5JN6d0}VCQsG}TmtXLCBh$K>Td-0Bpe4IE1(dm5SlyH%+ zA}u1{MJnYs`F1ySciDe=+B`kVXfM4TbZB&Hr;M^(a??mtN(2#s1pZ~g(07U7?`Dw? zBHu(-MSh9=6!{@iB3IE@c8h(2Bnlz^^!`eCZ><@=>stIwRl9BMEpcP zilm9;htu@x>nb$Wk!bmsWZL~GgsP|GtQ5IQ-nump6y^5c5dc@HI Z2X^cmY^<=N2oDv!ZQcaD3H*-<{09G$nGyg1 diff --git a/data/graphics/keypink01.bmp b/data/graphics/keypink01.bmp deleted file mode 100644 index f14009ad897b32e8dd334923d60536ea61d306fc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 zcmeH`Unt#S7{@;cb!IUQNrl{$~eVadi~`HrtNWuB=~)yHepg8yr#eTTeXw@CzUykU(8E_r_a` zX3W=7Hul&fqKHZ&DUGx&vNSTtc+BI6JWL?r9`|C12_r0sARm0(aW`}>NzNj&$u6h7 zn(8;a(Ws%OimFN~ODQd;IG_BdJWVHE51=ePNeCgn_+AMz5bt=`LC0r4f8mR+U39h4 zX2J5F_YE}EQKz^v$_gpWBQKLo1;r8@PPlrg?m6nh&>v-Vn(0|)HD*jRQ*KkX8#b%E zb(<-p(rGbSnrN!0UP0Pa0R=haq>vI%d?b;2Sr<|a{Y^G^*x6-w&u#D6_gLqAF)4oYi`7Cq~Fx9?x}T+G}cn9cXUEYCRrT|CDaQq!>$YTO(Hi% zf<^9&WQnAU#EXQ=-tE10^ZLBY{G@4enBhM9KJlrA7Nxx9ty1)AbVw3ORJ(M>P7sE^ zCVyKndij$aa;VmAvGs!=%Pi|njWd2i(Oz0##G@eU-h&$Y&u#C iEG)6~o$t!hb&*9aTCw)fWB<9c;&j02fYX7?9ry_x3%~XN diff --git a/data/graphics/keypink02.bmp b/data/graphics/keypink02.bmp deleted file mode 100644 index 0000e483164042b0c051470f5dc9383da6398e39..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 zcmeH`ZD>wm7{`C-+4gM9MrPQTc_~5~o0k=anrL~+d=REJtC4p?Xhx&tHJRllO0ne3SUsM#@=12O>$x_xbxKTkxg;P-;R9+TRRvc1%Dfm)>r{JV>GLO7H?AgJNjci=b@^sRbk(`uu@-3QZ ze}tF^tTnNQMI?dw@W-F z7rA(bGee8FuF2dDsp~WzB%zBuOHp?)}HOnzeH%l@bWFLBc zXz(`Fcxo!0%3ItjrL>5m0t!^A0~`=VU9p(OYPnI2QiHW4T>T&7?cp)=nuVE#ngyGA z?3?rL6QADlwuz<&8lLm~2~R4i^x-R~{0dhJDLlam<+6n>nPkpl)<{N%6E4Ib^j%Qf z;v*j=`;@0uRHc!&lbz={cbB_Oo+j-m?s4xXH%llv&v`kPOKuif%0h$LQD30nDPXdz zh8kt9nMxpGHnUf;>L3T@NwrgL!_4x`Qq6*XX8n$LV#&1AoZiMZHLym*{dsrMj`+-H z9X`uhwc;i=DQo4ff|gPCn8(eL&6Z_$$1JnW#$WmBEB(@CE^AoEGS=1fU+AQKe!v3> z7E`RD&_vwlzPk4{ufI57RFof~X80xEN^3p!I=`Lm{(^yar1_ACk9eel)>2zX-78)R f@rE}FEnf0cQ*)i`o7o&lqHfo=!>T?f7cJE#0y diff --git a/data/graphics/keypink03.bmp b/data/graphics/keypink03.bmp deleted file mode 100644 index 5a607381ad300c2554ec7a3a9b485757776da098..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 zcmeH{Yivzf7>1wis5x!5WQCSZsCu_EeJ9R;#Na4 zf)JNTC8!gnjUq%eh{RMWPUF_9QhLxJ(KIgQo44oG9yuLyBJ*Q@bZ70Im9@Y1zTf+< z?^{3p+P6Kyr?0-LdXt)8heXXj@ffs@|EmKYJdunqIKfC@!(t+2ad*WM8%JC`@g3+8 zLrfG=?yt{GKF^|!NhI~6S3mjQwbK>1ka`UG?|X{sjN|_UDVDihON+d)d2<4@O&FflkZH1?z+$k@i zMuM?8AKgGwrIa`PJ3E^_e^OxN(=e)l}c(-Yss)Sjmx=?QB=2O<~FqhIFK(DBS#;@k10r zu0|S_tv0%5h9+v~-t?9gGXD~n-ttxnh)68QIJScwQZbs*UFrHUzKH&zz+Um{Dp!S& zLW+y8ZcFy>Unz)gg+~@ugj?87Q?gvGRMXfZ3 zG4q%w(i5Dha4M{A(9e*u!LRh5l}+I z4#Wg3)9eqkv|vem*cBk4<5uGjW^haJ&`OBnB`%|{nL);EK(fk>hF6YX*pWpYs=RI58??Zdw z`V7_IXniAFz7BfJ>)>PXKQJGB+SXuVit9gb)%%R3G~EqhEje z_oZ(nkzs`OqL)AZoe*`-qK5+*FoF@|7&nPYlbP(ciA;{nL3uSLl`2K?sRX((u!g+i?_4= zFo$!<$s;e{kze3bQ0P~9!S6zTm;5~6yliK7mLuyR2SvAqEgRS%T~d@p(ip}JWMC+v z-W1;Wy0f4C=QwwbYo*T8${v;PBH!6BW(j7o_W9?}H4!ysfo0dbUN7`1%yr}*=eQ!- z#V#pY!2sG#jVqv_C(_CeB@&j%>g{((G6~#bC^&g^CHde&>pNsEy6Q%#})x1Y??%u39XT>ap}SGrW+g)Hm{ z+?zsTHAIR>yC|D%nday+mo>kdWlJ?HHv6-A`V_poxVpK56`g~7Q%Hp-OA}N^ne0CI zs~lDJUFt2+EW|Y|>Nl*8I@LmpLPh@?aL*kLX(Nqqc`F1FX<&6yPrXiL^3?_^#4(O7 kV1eh=w>g>}?E%GEOz~B&p5^Rrc7Gex_gCLD@ZZV6KWcbLuK)l5 diff --git a/data/graphics/keypink05.bmp b/data/graphics/keypink05.bmp deleted file mode 100644 index 8ebcba0467c7a93a15a152d2946ff63ec09430ac..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 zcmeHIX-Ji67(Ms8q%$r|qas);Hjz!s6gUav2xeFi2`$)4`J*UN{}?S(&9qX`f@DEu zMH>`F8zoq2i7$9uo;`ObNt^E~Id zvGL=)(DfOoYq-9l-Cq*|wd>_W;Qz5);NrNx%BdUy``G^nu0GIud(?jxA^5^K3}M4D zd=y5F#aOM87XhG0k_0=?k%uPptc7=%HQh>SzrbWERxS#vOF9_G!(+?kj;4b!Gz z%6N=dzzB>8LXZbMoQV3Sh(JUF5|WUVhP2gKy%uZNVV!O1=L)RQ{Uum3AM?c?i&*6q zf)FQ`-Y6zxaw<|cV8c%A+>5;jaqtL^9K}&xwGQBbZtlkJt=PIA>sMl>h?L+&OdO5T ze(-Zlq$kA$OwehCZ~`YT;KC)-rCf7vzFU65fPz~CZsoh@Uv<5jZO+azWu3w)k?zC3 zZP>O3Ym$*X12du!r9}Fm(6Nu>cn)%I$F+X7ZQ*T0pIDH6*wqv_=OGKjN3Pq@$!Z8IsJ&UtbS67-VOHHNsaPK;g5Aqj&{QhI3x$!k#Yc-(ZE#AJvyJj>up~(vCGdwFo(G^@djKiC-NfZ*w z2R=3mdkQyk(*jGoYdd4fGO~tDBK_H9ZmK~|B`Ql%T8!dHc=QBMMAU{hf?A*ONk8>e zi5$Z*Rd6JGfCcK7mw0Ks4mReeKY$GDyqy?b#8TLuTADevs1>P(xf-c&kJ|xz+vxm4dxcl(Tg@3Yq54FlKx+5)%D4O96!5~tD-21P_2rf;sWkF6mi3f8@S-E zh~fewt}#Yjq6SPbYBXfBFxgC;aYoUJ#u$^+^UUxV5))GTqfk2Bd3^Kc-1FV`MtjJ!LNZ>MNNDN{M*A0dsE||tgR`|&%Xb=i9`~K$PVbx8J)YLYY+73 zhHhQZB_8oHh>1W%<18&qp^2jHjow2rWF$t8!I*IvHvtp$RIE2iNa~ONJ<+p0+B@NF zkf`}A0{2DVu^2lQQ|DmL5-eGc5WXk%q*sswdF zvqXCchfd<;S)4s@oKLnTr`S?b?Ww7@)MO)B;~dVN!l@%TvI9HTV(mQ48;|h=Fd!DO z&7>HGQR}cyvo!rGuBO@39)v$|wQ&{46c`m!iLB0oPoKiip|Y0tc6+`5EI zCvZYp)W9j2G6;jTBTc1HLr&xLbzILdGV&txD&s5Jk4$7;LR}yx;EVEkTX{WBkKf_< zIeb2+uhdcMvb)la^ozKtde>l$Hf1mdTa60sl7u1hbfiBup8BKx{DquKjwCzrMdXW8 zTWJ}}Dp28ruM(B-@xB(dHAYR9y~^wG=Gt<#s-rlnUTHfdyv8N$#7>bHqOdx;n!k}d z$VvPV`@wB@yWo0^$63hIc!-AuD0qW61cSrIcaC?3M&WJTK8(ZC*l3LIh>rCstP(Ec zvK#K#j@RbO)5$-{Z<%My%Rt68T+^ml$j~5|!p>S}ZN8D8f|Om@CHYCT4fr#WX|C!U z@+6r<{>Vam;a%L7PPC*@&IYlW!XR6*+FAVwkA#;3CGsdlDTM_tMzM+ffqY5s=iBJF z_i6nO#^;)&?+Bg$AlzdOlpxfzAM)D?X8j7Kz z%dqfP5ae$~#xmdtXcKh?r(?RDDs{#meNAp8C$K84N_yLeeUmY{ zHCl&~D>jiDeaN3#5mq6^uE%LCWD$(oGJe*XF&6n_I9&9xiYL z{$L6zp+6>!7||Wwb*HpLJ6$dVF;Lql&$)pc9=nI5X?_lvTab%fS)x2# z_{QWxew7eO#?c?<*O8Phufi%3${}?r==d+hLXlsQf`@JlM?ra5xhKr?-2S`-CF=Pd+|kO__T~v2{~JsJe#FNB0)F_t@IJ#c xd36zr#4I)HijntfYZ^~)`5Q66#7hr6r6`pqbr_|5U31&9z2zkTBma{f_zU#qf>Hng diff --git a/data/graphics/keypink07.bmp b/data/graphics/keypink07.bmp deleted file mode 100644 index d904db8ec513e2722dbb293aca2f47967c50985d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 zcmeHJX-rdT6g{skZ7qyUG=mJIL8B6vsH4UOo#;4mkH$5|eT`8^6W56vmoe_feTy2G z#C_kQxPn0z6|`1Mk(N?Lf`Y;r8j(1n-Z_twPV-pQU-M_0ug!fQ_nmX^{qA=zzx8h) zg0fG0{x;#ae)(5HIISu^0({HTL;p?wUvws5_3MiWRXGI0h9D#u!Dg6^Fb3}X?W#bk z+UJX52y2FBZP2D8I(9|ZF6h!3oud)m3auKUQ8>c=;69@&D9t{d8=_$+bn1(~!!dju z#!bScX_&?}1yd$t@@R}6f+0Q8vn|@zM|~4afkYZK%_BV-;V=xFim7ukcL|oP!m71c zyAc~VVH1BhU;}r!KO3{hWBdRNXoq&1Tr`-0kNwb(aq{)`SiciH_hRo69665Tr*Zl` z&U0PBg_AhR&E43&4(k?TArtI@9#M$$XAuY(XcK%s=5NMk!XCv@qQxjNvAWnKL(*Nt zU7OKn3$i(kj)#VasruA7C5~JNa9|DA%*4$8=-&iQs-ftB4ok6g5B4y;%eWk?#3mb( zZDyO@YGUcVgVK$ z#KB9rbPKmq3@MIaM`mbd)^}M>qtm5#c@$4Batl#df|5_lCkYa%DN;wgHNAGdJq9tm zuxk$H^g^#XsN+^1&D!fd~!7VH|#hN7+jDhlmgK_tx`1&_5vK37lYCvf(x0zQ=M3 zrZ7-SYnLV>kxj++W5;Un;}G{8&%GwEbQkF(o|>Lm#4_e(Sk@c8D+T|T!X)y$$S>m5 zJDI{_Ebfl(8hnKD78t7J$=rca6RT?95OBh}P61HL6D2(#mXup3R z@>I93B6mbu3-8WWY^9qf48OnMP}_;|&k@NK`AL$H#9KcWV|_>Lck{rb;&&1GOQe&E z&ts(ug(6f_N&hP}repdWyb-;~K@peQs61lgvmdCvn#5K7NRhuq#!0d+c?Whdj7UWK z@HNf^r{J)=3Q!>5i=>JilEUCZb_F$XD28%U1V%zz#b+m^i0l(r4Hp$`7H0V`i=V}3 zPzR`NM9W9Mv@0uqFLCOe7jba~RQ=4d_< z6DbIHaHr5zC__bNN=faK6r`}F8C46ksEA*lf>C6%$XxMQJg0DKC03GxlZ%6_0UEHK zXjAq%5qPO>itT;ado`p;ap)XZaE01C5+iG%hNd|FM>U1evRe=>_8>cDpY`M@;RqXp zF%vL>;jzQ1-tkJj)8s6zS6ci-F>e-?gz`8K^ID^|AFWbDrJ$SDX~gh^6Dy>xOQXB7Eg0MS$xyUQ=T; WkioF2x5sdd0{E2(|GWKH75E2Q9Cph9 diff --git a/data/graphics/keypink08.bmp b/data/graphics/keypink08.bmp deleted file mode 100644 index 3bc133607b0b0f7a501f24d7f795135d409c1305..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 zcmeHJYeuwoJM7tG97syLQF11S;^`|1kg21A5L!ygqQPEYq zT4pU3ZFaw4-bbZoET?QzL$lR}(y5Fg2qCPEJo|i&48!P*F8gEu?C{R;e&6?g&pGEg z=R9W;evS#k=T8iOqxt===c`~icV0dM{MSnht+(}Wd~?S%zz~dJt{?=t-*@f*sUf}? zf{>9IIUeIDVNx98rek^n65mSD*;EK5b| zYOLm3gEcF#A{ohZF*g>mV=%@&qJfwgjnRonT#Uu5uqp!?Td{Q)c4Z^`2#(|+=NOJ1 z#KC>ow;7vhZXp&7^dWIpmQ<8mPiOHg7|jQr*P zJkIAKZwGd)#L79CL$CTZL1LF<`6g`2LKgizg;SSs={l|x)2uPq>FOT)J+=qh?FM_h zq5YBWky$Zc#Z{hMhjsHYpGom;f`shE&Z9Vb24^nfB9V)g;wq);uI6rorlD2S+M(-s z@Bdzgh(wC~AQCPuU$huuWQ_D`9_B?N(rKbMOHA1w?4i#@rdI_@L5WgQs+3luvKrM7 z@vsFg4mdvIqbMT!&nA*ZlEe|}xUJkiffH-7mWc~PSf3_#WA|B{rOztQN=cDYRDc4m zo48qoqB4}xNk4qBEP97c!0?wz2h*hPke$iaTTbjP%4Oj12-7RX`Cj# ztQIot5ps`-Q6eoOsnYD%%=4^@*_iDN!Tmf-g$~@oof=JzS!bs6=WveI$l_$RPr(%T z!>+w*f?WM7(xK8-g{nh1v=mFD5akg9>!cR74N613Up?`!;aVC7T5il$V07eLj- zaFK426tQZpjF+`N8IwKmNy`&Fv1x6#V4F#2V!^Yg*tQf0p6mx-CsHhuE4Ba|+hij) zvhh9et+2ktONYPX^|05sbhlVV8?b>)4#FVc`0wyer6@xrPwYW2LWNE_Nz{GZe;v>Do172C0$?Hr0wcl=hge!?gDS|nDi z0ap4?e5SQu{AM(NP(H|yB8kH8zJe?CpMg82)#Z-`7By4filj;Vuy*pl9_vY?4muwu zShsbkb0`iLPj^JOMPp&rk^h;P+50UOKSbnrkvO3&P$(8)0Y%<<(&IcYDc#h!8q_@3 zKJWUn%Vw}qD0qkUGZj;Lz~#JiqvC5sveZgw3T`4rX-MNV;Vf`B;oQd{hELg&CYTy^ zjZY0v={%FWANyH#PA&Do=cQ_bO#UVEix@S=1319u;t&Z(xE^{ZGR;xLDOL>d0xqzp ztUBv`?R~ZaYXn+X+AM?h*-$p)H5&!@I diff --git a/data/graphics/keypink09.bmp b/data/graphics/keypink09.bmp deleted file mode 100644 index a203b4dbb3b57403f4247bda50d078f08639b0ec..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 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 diff --git a/data/graphics/keypink12.bmp b/data/graphics/keypink12.bmp deleted file mode 100644 index 73bc555a1f7e67a13e2cc07ca0705aea27cfd380..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 zcmeH}X-Ji66vuxrdaYEVva%*KTWycBEU{&>eX-S6nD*5c3!*G4T4<+z!DK3Ep%4U< zq=={wO^Z~}hEPHE#fqqJ5!Q#!{GHc%c+ts5=F2e5<++!0-}^uRv!Catr6))8$17Q% z?e$KmczZOF^qrT%|L5PGfiS|pcm7H39A_rt;QZIekJ$;hcpozMK0tX#p0B`lfA%n^)`Em`-$f765yjv}fV&E#-@`cGogQkHIF z(_s#u;mmo?pXF>Wx!c*EN#<~dx1fcurO)cE2vD2a4QSAu<{jwJhd$|~FJjSVHlN_c zWiCJP9y||!{w)02eeeENuIk}B){SSp!u+8L0UFV$DNW;ulS@i+Z+eSgPVQxI0R@k} z$JWp+)9hEXpY2`5yW8A8&FQtQ9mObVRd1ptEp-G_HFYE?gnCAA|R)p+5AJD3ESUciDw9CEcQH}U6r%2QQ* zJ?k^bkh)WJUQV*k)E)m(j&5bElB_Dk6Yl^&m=(GO zgB^33JBUGYEC{YDYXD=2ktZUT744QtB7-o;FQJUGQc8=xVwu>@Zf#)oo3bjeDvg`Z zAXk-bG0P3#fAPEhAWV>4vOkX>!aqC;Ju2`D4svict7kA{C_`02)lMGDmPq8VWIyd% zP&)cmCN%if@K=}!H;cEAKYhFwaqX0MO1aW)GMm}jz{41(U8g0cHKM&OK}Ve<>$+uh zy9N0xIq$xfM-gk5W%i4eCX^P23XgloRdkKNT3w5D8q?InS_N8qy1z6p{pi<|o{B=z z`OWXxstSIVEY+;o?4DVMl{7867`mA2R3>vbWyb z60hVIw=Qw%9Otx56vZl5&0?0Spy914c@Y1JPw#oJ8NA0m-RT+-?L)0x?ZY7KKPmqX DCn`)1 diff --git a/data/graphics/keypink13.bmp b/data/graphics/keypink13.bmp deleted file mode 100644 index facc9cf243ae740317da27bd24e8579956a2de41..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 zcmeH|NoW*#6vls@q_b#9P!bb0LKKY=!7XDBCMw1a#Vu+Mih_s|LEM9gO9ppDQC#|< zsHhm!xIl|J^hpn55Zo@NJ$P^lday5EL_v7-WlH`js_mwSoQ9dEx_DLf-uKnpzG_%l zTgczPTAi!)ul)57Q7$XR&*1;#zg>ZBvQr&>nGHW?fBIKYF`Cg6m@tlUGRi6UJNzRe zf8YQHjAGO@rZv*ImbF{ix}EJ?*s`AWi&7e6P=v8-q_ouv1U7@Z= zJi5lUee7GtGUe!EQ&BhvzcGRl3s|t5-8Z=Ll9yI$7BTBItFc5@qLa?cT;9QsS z)CDF}6jG=rItORyWl-|_A~_xH1ZDN9vJ7bPP=p&AZk zpx?pS)l_d{(=Bej;muEe8rE}!dd^??qM`|ZIm=ba9CBP#0AG_Zgdy&!-%yv=u;v6O zT*z0xdMw>^tK%A~xy)4yQsFnzq#^N-fgeAge245eMDd*G>aPY>dr?N2KT5W9-pEGH zfKn)?IN;-VbNXC{( zm8rk&g7fqn$!`+41|X%)qErVnR$h9GI& z9R5c>YPKKp@CsKBa!|dHCTJvnTdOpHfkzHs#y7sb=lx?Ix6^)-lUn&zteV4|Nlen* z4q}kDpnw7)fFgkZiz3Uc!mP^TCGluD8VNas6i87*58bQ?il|IP zG7H4FgdlsUAi~0zArJ%~ilC=_s9?8j;_q;#8787PXU-YcIcM*+=HLI?`z$Rj9L zp?>pp=KeZ8MhZpw81x_g75L8;NFX8d_($Uf2nRASo9uCn8_U?yjLsm#AMjUN{zPF> z<&n39C1sTDW$!@_9^k-EcCKSx0R?`ccvJ%9i6l;7!U|UGXa9N5-{o!-P0cjl=l*3b zAK}Pa)=p%i%Ze@G!u((cGq$o-yHdz z$A6f^^0xj-7FmIq@MR>k?))**f79{TQhSVJl8CVie`1{2@wd=&gBzzfC8sT8Sw8tg z7!oH*j4;P98?@1Ok9+4hr`})B`h_f%?PHiK2CaMK_&@Qfi!Sx!BOb}mvfOTVOQo3N znatEo)4pg$GLp-U2RMEKebtYhUT2%vR!_ZVi&QktWUbY#E~01-bEYsQms|}`4bpVd z(@2Y<=qC^JOX6F?x6kRH-)Fpkn))ed%SV$&MdEMn1o=Fei5s;5CM zOKW~=bVn{H!0#k1$84inh4mKnzRY^rnA}+F)t=$ZQI76oUpeKf+bUM6baR`pqm`yWlHVc{EGFxu#neFw7^;f;CXE`eytCzR4eFGa-vQjFunXLgX ziBwXsdl&8p3ctYdgbOH#`n@6JUoYAqW3GJv+Glu}hp9?-soEghTO zJ?&eFXO?0%%)VxS?Mmx7c{b>1^3^NzXCr1j`bK* diff --git a/data/graphics/keypink15.bmp b/data/graphics/keypink15.bmp deleted file mode 100644 index d4be9db954f631294a0f6bbf55e33414b01aae86..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 zcmeH|TS!!45XXP(x?AR2VG?TyUZ_+AGrNJ{l}ItPlp-r6@`9FFVnjruKB*vBXwo8q zCJNz!v=sps)s*SF|`o4EgX$gh-9Z9TBGpGQ&(h`Q}K&Hshb< zq;}A7S&e$?#~EK@Niog$D5KV3W5u8-rBpk3n8SuEn4wcXn9I6u;A;)9aV?kJqa2MQ z${P7^D+c}xUbNF*N8M#EXOX2WhdA_anC4vu{xs9Cd94b0!joER%P7ku?*u2}iH{-1 zdRomOA#4MGg_U{cy?9mOJ@n`~y35@PD)fYAlbu0^W)w%9CKW+M2*3cBfv?6Uo2#sT zvVEGgO^(_|d+BYXt(j&W1y{LRL{Sbos(}wl_V<~#+ zgX_bXW6Wdobkg~VN1DzpZk1DhfeV_E5~Y%=)l(h{zR@`y!>Xn!Gx( ze`3Hs&~58(rL~DB9d24TojH1}&TuA;v;-2gM*(%Sg8Nr~W)UWmD)LHXO=L>sw)hf# zZ}+`@8TPW9ZWVyC)KH^(*6ygJGs!&0F*j}N@SOWb|QbJp|J8Fl5CPfBHK_?LNtvsd%=aM zH4?5UT#oWnb0sd68#Pxb@4maUef#ZaMzeFVSMz=6`+Cng?|GiibDsBn)M?+~*Q4dX zhQD{eKLKiv+&l#Mnoj|r0{>kBfB1XeJTFprn30G~M|vR&%TQK{%5s!*oPmr8L`avs zLL^O-#j%JjLQw}gCNQypg=H+8V4A^9ANopB8jf&T{!12Ff~=c{v^KQOVQvRIHo;~W z>=(E=z`-IGD^MXzc6Ox{K?ri0BOM&aID_8?-O^{GPb8gk7mE}uEGrO*KzEtmjf?nt z=!;RTg*FLEe2z*ey#ti367hNO0~lyVa}}xzP{2efNQpz73aS7E$X0pY74bK)!Im(> zIEv9;^fsZ1iP$hX$YBR2B9YY#LzpMWBxM)zFL8N-lU?ktVT~rp^h)ZPWpoq@_zuX=bk5A!G&&khsNq4pwn>EyGR+tTfVFV-n=x;@9 zEo!-bxpK3Sor=^1Bt#?HC5sf?8ULgZh$4veMBj*3iN25{+p+g{Z$-Ic6pUjSW0rQb z*Q1{A2X=y!g+=2MmO9}j_#X;pQ4!S2OcYC$O!S_vR9DB!<1Jy!0?Rz+r!X~yp)Pdsx$ynK zax>A-*IfGe&aA0Igc9HRN*7fp03so7-bkn>LeYr1!uKljR(!XJMhd_3^@ z9F)CXR*E8u^2t}#X{05P5Jgl7Axi3rryFkewmV$6;&;>CK}R#q_0(5URZe*!g-WMZ z#}gkxL=Zu~_?j>|#I$X&;;*o>z`_hOy4GS;-{F5EDjN00FAY z7RO#~#XsZhgp+;tci35DO}QqS9A>ze-Zt7AXsDsaA}W*2B$AXUlu(C?toTnnJ@Ra`7y&-AAKsPk;ZDO)wewIGRV*mq%0Z+BSu@JY{4z{ z3x!c6N#wW4xyZ4|FOgh14LV&nuFty6jxyR$e>?5UqDd&BM73z@Vu=kV*b6TU#cS|? zC=4PdkqD7Aksl)8<<9@^(EV`JWpk0mX{JXQ>7hp*tD~-h3XQjhEs?}XA_Mhj!qHLr zBE;et@?dx{8_b%40}i&?US)NTxd|o)80e(4iKbd=%P1?Lz#;OR4cA=XaC5=MF~@uC XZLqP#l7?ATyxH$ubUNU4z~aCkk`HtF diff --git a/data/graphics/keyred00.bmp b/data/graphics/keyred00.bmp deleted file mode 100644 index ea4d3cbee1f76223f47b73cac30ff4b5340ea5c8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 zcmeH|OK1~O6o$V$Ny(%mieOV|@DW{Tbk&H>!iv&Z6{JRy8Xve3v?Z&GCyp;bWsv5LDcVw4xgyNOywn-1c~Ll1xIIShEsjhI@y@|=k z`gGa%ayu87r(wRW8ax8Q2oeYq_=gD)qS0vfs~YJvwO$w6l)~R^uB8=FrPnzd<0uyC+vb8?0_t6h8|c0t6-&aEz#oKCRkPdGjKu2SvU#D;1J|t zKkQcAMp&z?q`I32(V0OdeXheJcnXi90QcZFT!YJS4vs5p0QRZ1O$tiEGR<(#43skB zGkk?l#(W5e$D+}@8fDXVOb(8^n)2x7nnp?ddRr8rFT{A5$ zlkvFp_DVi4Lqn3wNhF$(p`j@mlfANb+7;z{mLY3 znvi!=;Wdnv%;&KXMBu#Pkc8Q=2r?RrVIjtQvlfV6Hv zShACe5UmUvMsNsD!+E%%>sdGn$KWvRhrNp12y0;#EK$&On4%tvrDANkDC*yahwxa! zm`9HDpr)oj9PV}9>yC3d6gp#!unxjL1xZtDU^&c(6in5_Dn}{me}GT$*>MJ<(eF)7 zw!PhUcG|W!+uAx9i@lCSdIV(5DLASf?Sw6`4pzbfrO1sS*MR#=BSrl}=DIeSv|U}c zug~UkHk-BG-Fa3b@ujZriR0Wd<|>GL(#`?cqh~ZknFr!n97Yup9(`kMZLN*PY)gyH zWNbQZQz;vd+xq$e*L@cXJvHV&+=MG|4vs5jw^HP2WJqSIT@3}qu)ZXJy2ieVb?_11 z!b?4=yFV$?%L%2(;BD4Plc}DTH>y;8DF40m6>{(%-oQP`>c_#7oyb(&fNO9OanchC~ diff --git a/data/graphics/keyred02.bmp b/data/graphics/keyred02.bmp deleted file mode 100644 index baf41adacd9f6fa9ff3a983c95a677231a6a2b56..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 zcmeH|Sx8h-7{`C-&Z2{vG%faGDHIlA+BRTWfl){$*+Z0tm|)RfR8*LS1<^`m(n3KL z(gFo77G?TUG#D*t3t|OY_Fz3k5iO?C>6_Cqqs?eWFFnlV+{-z4&iVh&_y5j!Co|jA z3v+qoIZWtVZ3z|Z=1tF8-H7z$r|v<1h2GE~U)jXN0O$*` z5EaIvu*9wqKB+XwfJ~SMQ(+2Bh6ykhQeY?~7+mxpSfL2U!(3PlD_}LOfmN^!7QsT8 z2RV>saN}S&3<5XUy99MaFda6*ZYYDpaKt|q5@=QeHq*y1u^$UXt>Wge0 zJXfmGKkLd{nB<<2u4Y&y9 zCR2MsC~_(mm?JmR9553_P~YFPEbVma=x7}krR{btL#2Me7kCeEpc!7kQxJ+5s^Bt+ zX-7>g8=(MZzzA^pq6pCs`Lp?KWS>DT%!h4o8tz(_u;h)jdvFWHw6n&s5-2oL#COsc zP!J{qv8&!hEj2X?X2NpVC!Q!(mz=CiOLb0;w%G#v`(RjN+6mYUa)8~P^nOkBzxrw> zpE5^rJxJ727n0CQcoG}iT3D!SYIH$?&&CeBl2x*$OQu-Hgb@$SMP`c64~$@iDT->i zFQ*sYD)mj0V)7DLAf0w-GV`}|r`&Oc^nIF-;IT<)12n>GLBKoHr1Q#D%{AEY7qY)m OBEyIS5eNQP2Yvz-I6?9N diff --git a/data/graphics/keyred03.bmp b/data/graphics/keyred03.bmp deleted file mode 100644 index 137916081e29ad5582328177b4000bba47969ee8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 zcmeH|d1w_^6vlrylc)1u7R6{31e6w5esS*mjpKyF{lWxO*O^3FO4;Ar4=gDy7YMF#N@pf6AdEb9~tfpcjn&vedqhm zxp(>v?U9UKJ@na0?~E6>qmB0Jxda;9d+Pum4QX!>e?wqv&1oP@bX5|hKq@qY2!!5( zmH<2hK7xsk5)hC2Z=ntcy04Bi{m<$tPJdA~W_zZH4P6KEU z>CmKZqL(RxAQkf~SOANm5SGFc_!j2D9QYEZ8R!rw!^ut&gsVuHoDyCzJcjRGzJEnoX%#N7snEd&wMC?BXH8Wb4{C;r={J@$oMlW z>wdd-x6{+hlao(`Li-XDcEAs?7FL+dSuoYCQ3Nl{TT5=P6c$Qx zu@n`_+_^Grm~`#>e_Gmg-#_DdrOxd&jhjr-Liid!hmp|N?9!^M7E&XDa`@Z1r!87Y ze!i5HNJWK|mC4GLGJ3Rh=^`y#{^$GmJnx!wKf@U~4u@g4$ysBjePLxV0Mx6<3yLWI z13gAPPujMXAw#5~Kyq>Ta070`Ex2sP9ycxPtkNbxA87tE zeicRa|KO=bs|ziX=u@|IH?v|joP{SAfD&o?_QQHpF&sXO!`EP=V)W%-_{q|j6@#z4 zNjLR43sMW|BB;75nfg=%^^1C?H9QeIL`SNo#J%5vJut)0hYp}DJz)gQG}434T}w<1 z{EWfZzGmkbd^psHKC6>q1NTf0^PnIo{?ChWjkfw8_dv}RF|~c zHHqh}c(jCc3p@&kB`HZlp_NqKJ=Dtk^)UQ7hGoj|fVp_$XC0#@1S`k5;T&w7Ok)&rCAYnY3!bKlZX`ICq~j zYwfikXBM9^zY>4u>-#W$nzNsPdab5-4E_&BM6n&X@M6r8o_|495@+AezsZsXsf8Ap z4RhgenB)D@0Ea?FiCj%k@0%q)b_5&`r^1j6s=1p*C&&&mX)ndB!LzC!FqXxZQP0 zQ5T#HM?zfzMLvFf<}r8~-VVbJm6hYo%|9<#U>zOS)@JkO{n6C4J(b!xZQ46gv_1%4 zfM-3D2VK$4aETYI6;u>eFlQ4KaW>wBkE3W?W21F<+t84WjM(z!wsfg2T4XIPR#WqR zdHHxEu_+AGK`;WZ!Sf(R{cs0d3+H)bEpN9#F2%hNFt`cj+3fsIb;n>+H0dGcA!2x13+X z`>>|;9n0^K3E*>h7gl?RT;omUO*{5~g`r**_DApxq)LNlew*Ff;{rt? z6{>{_F*}w}h%Z=CIQXydAw21gmurTC^Ku^Ry*dH$Cw$>WSF2p=e?WQoI^|?RkU9S~ zyaKoSU6F^MZM->f0Xzz-+62B9lKdV#PCQC;3wE?w@UBv>@nW4sJl7eD=^j-F+~Cqw z7sZ^9FV!0y|6-V4u#-78=~9Qh?#0qYbUL*8ZL`FME4?a8I+@&ESEr$fJ0Yi9@oO&n z;;iP==C89Gs@JFRB0K`O`7Ni$6S7`cYrtpCvc5h`r>(0i?uQ({(xv)dF(r6`3W?Pa zDV||i<)%4$L-VUy?(MbFQCqewo<0Z96jvv&-w${Jg;Z#=G(j8PJ_&-&Wo0{4DXXoG zhs8ThKiJ_jvLY^eek%66j)!zN{NxBC(!k2I(>-!(tv1jVu@Wx-XUN6W@p$SUP|u9Q VTksM*bfB2UEC)RYGw|PL;4fcSJvIOU diff --git a/data/graphics/keyred05.bmp b/data/graphics/keyred05.bmp deleted file mode 100644 index c299070502a7e43cb73022e6b352ca12cd644230..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 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 wWv1$tUahkciMn}kX3E}-XuT{3cZ$Z((pXSNH`O zU-$KF+BFk%v7d?h9;?qeT^~oWcD?*~_|F$1y{$9JEd?_PdA3ASrf~fY6ocf$d2kU- zf~jyhOoMWJyZ}Z*PD-rP4?zK33|GJ`xE1C?CCsyR7u*gNa2=Gv`Ou@H(+R;im=3qV zolp%Az@tzH&%rWS4ol%lSZv{Lg3I9CQ-$;$f=dipN!Gv<@GQIt4e%zs2OFK+q;K25 z3ia?X+yU1TXC+E)^%f%L`8K!@YAw&z@CLji%phoqqMcb;dvkJ*B$HZ)qv#vwTA}DowH~zpz@qGepSuTs=up3GnP0Lb4q*q>EYW*mFZcpi<2E~| zrOmrm$V*1A)UqhuM(la?Xy4lED=U3g);>EgRa^~LLeDP8Qc;GV2En!{YH>~pzhY{X zIHmR}>EI{c#fz&23w(QfOcyl6GcX&*q?Zuu5p8b+xar_qn-8Odj{cRgg@1k^OMA zu+WbkEA2^*((`;9{M0mhBA?iENcb~m#9c@x51A?+vT+`iihmIP9yZLEm8neCqA3vm zlyn+1;O}$p&j}O!^y!k&UU&BKIlmHnhX9@S|OkJ1p}?`*)@COp*JQ#{co~ EKY$=By#N3J diff --git a/data/graphics/keyred09.bmp b/data/graphics/keyred09.bmp deleted file mode 100644 index 61d7b6c43c771c603babf0f245f3789f4d0e2ed6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 zcmd6pdu$YC6vcnv?zGt59%atKbXu;zS*5Q z_nvdlz28>OnU=ziX}X@Q&k5;|;~1?*I6NEIwM7lG0^2{_)=o(j`J z(w_lSU=kEY8D$?O1TQe0vtbTg3^i~iTm{!a9b5+I!&xwKNR(_skO!wimBB8AMX(fB z!2PfaR@?PHSY|(61m%PV>MzjfA;^acSYX-S2+N@j9*5`P73hHXU=zFr8{jEuh3jB8 zlpZ<+N5Hvo1zZoe!Af`-*1^m0wsTv8U`H~!d;Iv{^7H@5%iHDLXRr|-1!Yow=n$dQ z*P0s2N@_?7W%wez30s`o5s&|zO!k(R`s!-m*yzj3d@}hHybEhBgjf`%SqxW+GSl-8 zxECI@%pZfN;dyuiK7_B~7wC1)j~nOf>U>w1Z*BF3g*_HREF_d_F+w3|G(jFRzKj ztXaOh+gDclSZu4kyVy)?6b4Ha7F2b7!PJnL55VmvSB?39N)){BU1QPE;G3F!BJqP6 zOs<#GYUjpTSmsv>Oo{k(lIFra4KVgEesqqB`f0=LPip$}oVfZr12k?%$ zT5fNFT4Snqh>wo1LQI}4{Qb_oZ^Ei2rw+px_?PghSyA}Sa6yJNBFXF49FRBDgm z%M5b3tT?m;d=5LE+wPotQ~KO&vL73LECaqA^=lC9&CT7Z9yIR>|IFx%d;`1V@veAW z6rP1!ZG2^euW`}oT&MZxH5*M=XUe}5dUA7rPb9?RRT%2zkxIZ4tJf!>L802I6J-pI zm(!#9hf4Y}V|;P(-$9^ORWmjWq!AIbPbE%+CRlGJ+XPBp!nVLAa7u_D5fh)2Ri;gu*d%Lf#l~yXWjH(b9njcPt#5W4+$L3~#;DE2Mmr!4soy1+nklH$BUCq6F`bX;%HfcpfOhszseMvAcp`Yb>_exegnH8*E=wI5}BmZM1$LbrKH7*SbFsnKmy^wfHj#evHM`=4z$Q zw$W=-R{kohx@<1`*AYR;=9bX3cJ7Bg@I7pUkBq{4+esIN?#c#g^k?`EzJ)I=`F5-6 OlK%mA^q_~qum1otAo$M! diff --git a/data/graphics/keyred10.bmp b/data/graphics/keyred10.bmp deleted file mode 100644 index 345acfb0412b3ec1c70e8c5ef587c1fd899fc6fd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 zcmds(S!|S57>1vJI+QN7#V(|V7#pG12BX1f6}O_PC@6}8tpzoRJ0jwO2#QqPkS*@S z4Xa$Z8`Bbq8e=p@t>OiZm?%kw^uoj#X`%!#jK}wX+s;5c(-ytb$(hN?%sJokF5f@r z&a4}QUv>ICPVcI|cSNOjSzZDD_lq2|t$*2jI&3j9%16R@I0Etx$@mYl#E})`C^#O@ zga()ev!ThG8E`68!{~IPk!K-kb({jzVGdjex50g|8rHx=unLyIeCIv(@KP`i6!`*Z zgd5;ahkYD2!|TxI^)76ICt*3v^ZCNQEJJsJia7@^g{xr^+yjrovyQwyioP5*>W6}Y z?)>~c$>c8h*xx_qGR}bfVN!660htTe!>w>PJOCTvW!L;gPR^dv(okO?mM#rTmW1l+ zkdw31KW#9EVx(Vb8M}xXTmTDUG2G$!D`7pnncetg`suo*jDLUq*;^ zhT+YgZ&Tsu4B+&~*GOq@j%ROWWp@<41M7T!E?fk7 z$r@i-i06r>Vtae2t^FgJl)N|F)PnaG7pc*tjmj1*TKZnJ>KlQ1zW;X(Vz#&V)F)xw zxX{rNIy*ySV<;)vnMkz5EAW(`1)70c(u~$>SZVNYv}LBmlP48thz(*nEL<2`TSHS* zm^kr3e*TU`Vp|l+N=hV8ZGtC^-YNq)-^EvrD0pvPA1y8pH8o+vgiu<#FE@8rBB3EE z^@^7*_S8muO5h0jNrw^qpcG<6Lq3XnqG&I4dJb>*OnBb561k1YYeS$h>`(j-`=A>% TM%2PqqqII2|FC!e;|Kl*xtH8( diff --git a/data/graphics/keyred11.bmp b/data/graphics/keyred11.bmp deleted file mode 100644 index e505f6fb9ff08be94947f050b7cf46f1a5e6fc15..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 zcmeH|du-iv7{))pbK0%dThP!<)o43KYg!Z?YF$U!s^;2_MMg(<$>uVnZi!o5hHeQK zM%=PQMg)EW#W!hzV1^9nWQUQ`=Ta!UfV-^vYu-av;YLRD22HWqs{o*OP}*y%A2jZaCWNOqbL*=h4%K) z-5n|`Ln5IpUU!Z%faZo%(C3IOVkoJtm=*bKI2BIvQaZ}wPNyJ>Z{eSTnKE^1C@Bfa z6F?E6sUOo&le$;U-uP z3qb)N2M4D!9i8j|c8c<6_}KWj!9{R%`ruGV++};q%qtQf4c>298^lN7qA&QOe$4<9{T4ov)dx=g8=oj^Pvym0K@a5`8 zsDk{=@r#a-n;RM%Lv5`F<45p}C+AAI%yUn*n+2y>6QK!K8cKF8?dNz{Rb&MpNQY2f z9(sC0S63)2`#za`&05{#`%Au(Ph>*%xF+6WuZ3n8(QGvFzcC^P)4|7&UryLN@X zzR=nl3JbR<60f-Z*Lj9?+weE|URXgqxWv`rq-uO+kBM)UBvf^E*t|LP_Qr`+Rqf8p zd(SM-I-N)0Ubx*v%bkU0`)R4kIXv1i_UQTxb#%zYi>wJY=S@c%l_6(B{qbu6AIn4^eFWHOustFO-5Uw&Vv0H%ukRpeifr;kuOt=N^hsWVnco#l^_ux%< z2D;%&I4y~#GD`$L8pgq?FcoG%CoF>}U?Y6$+_yonF9`NJ_YG{ZhY!Pz7G^$8tK^}-__Lk?ry(fgP%3ar_;Z{m+%fe1lQQ9iWE#DS^`%#wX{(P zvthB}e+K)*(6_hyfdSv&@0*&ua|d7>yk;@BL-|}V4bHQ|knBpURFd&nXtEFS|$W8g$`&26<(0!D-uoAOW>7cQYAZSz1uSW2z1%; zk?^DPyBX%d+2(WJCRa-U-R^*dEok8s}DPrJBSbOB9=xZrE&HpzhGwORP$jxV(F@J?r5q6Ioek zNDTfSf4TMbb*8P#LtPUl#}oX1cpZA-HmjlnA4CzGm2Nm6F0`lxu1Y&40WUnrc9ZcX zSYiEsMv+;eWg$froy0uds(Om`OL6XEW4?#4KvArLr53EZATML3&55Rox>BmD@y8UM zO7PV@~IkyR3h6msdxZE<>WFCr3Ad*hrW@VphGfKaT zLXBS@KMKJIfp2K=6DItgPH%PYZPRKc++`E^3Y&ErVj3eeKpU+#W7mx~xd{I#=i`6z zwY9#d$1hmm8ykniaI_ALB3fqmqqwez%Pb;IhVeP^OJNJ27)5=(@9XnBcKF_2 z-_mjK7sdbm?(NOD0w5jVK_{M zDyW4`umv{48dwBnQ0NeKh9w1D_LjmlSOweR1YChza1$=Uao7wCVOVD=QotpBIs9mt zr#KO~Z&@$>{`P``PnOjN58*QGhNYTgLauCCxWVJ`Lt#GbfNSs~6f%*BX>B!SWya%) zLMvQ=tuPZpxw1gqMT(d>gR_u_Vb}(@;cZ@?nK;qx*<&gyjI7}u+=accM3qe1?#d#j zVV_L+vPIl%J=}md@H1{$mKERsMMP8lWvXPJgW$%OP8i_)>zrTkrOGvM)Nw+-CTy`? zD=tknM@x_epK5IqNg*jgXYF^8lTQ_U`b_I9jVg0d?A~q%vrc-&V27nIVv_dAfE>@=j_0h_NJO5Jxe9h<^1=}??MQC?dvG3h z>6}(%Q1Z7>83XLY@B&(tqCqJtVTfDIj0m|OI`|*8w;#Yo*srw^Pmq?#*0EUxanafM zvfvxMheyx^$8_XZ!fcqJ_SILXAfQR*gHLPfhxjc&(-@P%WB9S(UT-u%|CPrhBY6%E z!UmN~9I_J1)%nFvhpT#n^o`ITf@*_8luF^kR|=2El$4m#QWFfm_W7DEE21p*uo_mt zVwk0qC_Ny~r}{C;6M1BcW?C7oI&5;vO* z(_u1<)r_Q4G65?u7ShRr-?t0kHdn`<@9-I3!((-O$wF*R-YFYldCXGm X`0gxt0uP{BTlc`9!R*d?{>t88CMA@P diff --git a/data/graphics/keyred14.bmp b/data/graphics/keyred14.bmp deleted file mode 100644 index 5c82b1af6cc95e3a10bcbeb2982504ca8a310963..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 zcmeH}Sx8h-7{`BS#+lKKbez#5C2Zd;D$9z*HZWTxDr_NI$ZWyLpcM+FsGx@yTL==# zOe9JRq_=_~d#E77!j~Zs0w0o~r+TR1^m%6Hj&o;Gi{8B4dpUFGyTAYWzVkod%!=}& zk(i@M?$hMT4_%5eGD>i07(Rz9@V_g7li2egMeV>;$bktk9`e8&r8p!lJ6TY&p_aoI zH~@#?5bS{sP#7gN7!^A_1t!5NsD?|>2#=r*?!z@W2J2yRB$wn8c6hMtvtfsUKT+zP z$J66>e^Dv`ub>G|!8#Z>uta>gNKA!FxC3wfe%;cdTU&Kbj!d){I-m}A!psO?II&sa ziVBF*%7wkq0s)sxmz3zLDxH}bM0|vsuob4*U$;r%vj;>ZMnDxj6h8cpZit<58lCJX2*}WBKr@LkZlv=I-D>PiL)4x78_tqhIY6OXN=QU!gLrFKap5Sk|z3EQdk6YP4%Qvi>1Ag8YeFsKP-`(t1BvWWu-1G{E?mg#_fKfl(_309EXFj z-PCQhDcu5?WvVyYzJFuk!6#^kLl+e2wl*CI==yqHTB?1%j+B&UrEb7^W8-Sr1)HGE zsLV4BTqM#$StNpoC1fppK3!9z8ya+Ntu8Lset)OS)vnZCxMFgVwl4;dr71TR6A$Ev zES(%~eT!B~dptTTOIq>I^z?40^R-e>&Ckj$xCkdu%FXvlJ8VmYP3fO4(RK*2XmXmoz3uGtrW0yh16&L`yME z;f=hpEqUWlDe`v6SnY*)xyZ|(=RSAt|8rP*=bp~FoqK-g_xb*w=l49{PF+KF7(J@x zw_L8-qcn{Cv z7957<;Qxb!D?GOTjc^H`6&3yL?zUZBHZMei? zUq~u)c zA&svR#@NzQ+uUqBI&5R3jYLKY3m-d9k1-dZ3y!F{N#4YBq^*|00{u>rJxa}6COq~8 z>+{))3ftRjM@Q|zfNg29Wo1L5&?BGkCWwj@fT*-;J&S+V!V;KA^czTQN?X7U{#!y4 z6%O0_dfVA)+uLnTjV&qp5C{w!(+5}Kta{xc*roMc2TNf-NUkQO*n)?Uz9+GW&xAr_ ze*Y(*@3j_~lyQ#+B3|9Dn>HFgFw<6^DML0*zt!X0m zYSQ;CeWw3@gs4VkE(5i@R)Jat{(l7+hx^<8_R4BbhI!BeYhXRBweft2lx(8{sI0Ok z5{DJA7tX?UxDB`95*&ur5H3Ne&PYlnan+v-yWuK47RiYWz&pso4Oll^yddR7;2-^) z66hHf_xnG0bePswUF@PeLx_A~wF2W^t#YG0ECtfA5_GaBK>O(XH=yGFHTR>i12({N z3z`knAOv;Qvx@rnttBqQDL4e%El3Ts2-JZyZS^MMs!fi*6!qW3D|iBTttBqN2{>Ru zn_v|zfrX$+HNX@If_Ln^iu&K+D|{4r?eRSKc=|Qa&_qHZ)820S z`b;)!y1Gnrvx!D?b#)I!bS7N19?)EN+FaUTDJ-zYjzS<`u5#iIgeDRQn0VYIlcupz zi64Bvmm&|L2d=?+I1c-5Uvxfbx%BMlPf=_PaVNU?=^%W9x9|cUK?ZI@!D9zuTYdyN d7giB70B@{^pTRxo&JWKjbZSd#75JM9`~n}h<4*tp diff --git a/data/graphics/keyred17.bmp b/data/graphics/keyred17.bmp deleted file mode 100644 index c65c1a229aea6e0d320dfcf2a54a990c0ecb4761..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 zcmeH}O=uHA7>1wOG-Ou{Ce&adL`5Q1TO*WMqZBPlqzXN>(Tf3XPl`f86smZLMFk73 zMXd)>P!t4Fq=*L<+glH!NCXd7FCtp6f(H*CJ}1*QKa?~-$FjrB^0Dl`&%Ez^u)DXr zeI;hJ>+2@H*3U0Rldj4P0e89yxCt!31n^M(tj2z2wbig0c0ecWTZ+CIS6RFkJ6f$6 zK?s7dVyP|Fv4K2-Zs;U>?(EkU2;kRY|bewO2z}H~#gWo^p^F8%=?kF_^I>58WQ5t$62|HmcYyfSi zOk?Erbz%Ccp+O=MNu?x{$<1_HVzJpk;I-HLP^lYm+1NP+$3W+{A9k4o(iGhccFE}! zi_g^tVcQaq%lNp=%t$sXqoa~cN;v$)2WD+|LN658zC$zyv^v^^&@%;VLCzSf5 z)GX*8cn5D_0v^CExC$3w0Q%t&94LLS>OT{{!w>iZS(t{G@WeFpSe=4-BW~d)u&fjK E4_J;DkN^Mx diff --git a/data/graphics/keyyellow00.bmp b/data/graphics/keyyellow00.bmp deleted file mode 100644 index dcbebf8af01e383732947cc561df0ee839d76159..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 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 diff --git a/data/graphics/keyyellow07.bmp b/data/graphics/keyyellow07.bmp deleted file mode 100644 index 8e660a70d847918f08afa669edc92f0eacabdcab..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 zcmeHJX-t$?6g|TXGsDu-*c2$$piv2G)S_{3v^JvDNL*vwaE(E$35qsqTx#5n`xZ4W z2`ad6QCyL@fC7r6EXt}#P*A90A`&a=?Rmpw7(N}9AN|+Kn=fy^ym#)o_nmv*{1)EX z8@5kpK7;vfYX9os&zXyl01X;?eZ$s&5uAXZA74apwZIwH+Z$e9Fq>gCema~h5LfRB z?(2)ztuWQzvaM8cgS(0|qFb+`eWFwr#_%T{v(62M^-tQJg%f#;H>{ zd|18Qu>-4DW8OTKU}z|Ug6gtx26Ubie9jzf*q~rzV~M7Vk9SK*FeD`zZrw6kEbbPI zF)Pb(_pUxIO?TyrinVtyR<1-;6vD$19Q?TuUAkb=BJA9$=$$>QBW!ZA*3^8{uVq$RS3=$I! zsi|IBSw4Ar-xL%Wb8_^#xw^tal$4;N0@c;J_wU_Bz7_G~(`wacWFS5s+qWY+8vXjg z&(9vhxiXyZ*@H`$kdk7|%xqLt=ka5=v@~41hKm=~vF_VfZ@t>9qIipR z6KO2s#w?B>$C4!&G6Vqu+7SEqL&%A|5)VWJ$q0lc}4l5KLi^ z$oDlh;8{>qlphtVNr7T`^2B7d_7VA=Rb{mk5)|jfixC#)0=(83#U%2F$S)##7LX|{ zSb#o#wD>G**n=yK{y`vrLOG~+| zm&i?#5aP33n>MLs8XAuEj)~Pu{?Q_NB0mv7DM@wx*s=B_b}VDTMS6<-Ez-RfpT|lU z^6}AD(y@h;Y18oXrCuaPB-bWXb;QJ{9_YOqiHZb@{39}sVoOfO)~$+0V4xjeyBNxF zsIKzz??lo>_KA40`=|C6H$SjJDCvxNnmMv2ucysY0Yt~H3iF4XMZv?ul z#p3(s4Jom(ZdqA4cTRcls8R6n_^3FwVpdi1v2_8v*qtp;+h;v_mGBCSh`@viiXIgn z8>_o|)s&Odq^9PFsw&l4bQ0R*?AZtjaSd*78M;cSt?}I-K2$Bktm(kyMhCMQxbE_0 zLwY)M^eiq`%&7-5;l0LNKzpnX=FStL>HB4tJIo;x!c?U)wpkNsntZzkV#zTdg`p6}dq zC-&FK06705`5wX7_wJX0?%cKUC%}Kc%x1K;J}0-9m{uzS19b%i_>T3dfe0QHgkHVS zzdr^ILUc5S4@Yb)Vq)}T-@XV9g};BRSRWsvOBW0nfDt1QACDpX=#VbO8@$LD_32e zW$?mtXYE{J8<9tjviIyygZ|@&~)vZsl41&Q)6jp==kc@mm*;z zKZ*1Z`QrY4up-vTtj3K)SeQG+`z7$o*00x`iJX;XWM>;>tE6yVAg+_?inIUIQN z#t`vyhDZ>J7YTMajLVm?dpG9K*NY1Y@f~8_IvhO6oXM>s=jI|iTUSmFxIcehqm-55 z=~IZf*4H9wB7ZnT=mB09>Fw9gH$K66aryZM7dNL*Ya#phE4@?;8TKw&qx>jxUnEha zLsgZYrz%E|c9+odJf*?}u3j}27h7yLP5#g!RU^eowGSEc9=OZ3gk1eD(%_^Eg@xF< z6;r1oJlwkk>g3ifqrALBSsC$h@+8vJHJM415E0P^xI095k!F!;BIc43t(V#!JlGpQ zKOfcAX1hJmZnqQ_so>dDY+ITGCD*c2@4Z+=@yFsw!5k(sm9GZiQb{gST(L5s6}%tcCd#pV#_9{HiMB z_3NKS;wYiYN}M>M`Ll4BwR+OHew||bP9#aBTV0*WmR?xszuI+vGv z<5SNa?1`S&aPc-L!+R;#D2MOL7kj)hqHjke30X6 zMh($Xj`?P7wyl-Ya;I56{HB}em?6`o3 z5B+Z6CKWmka&z^aInz?Op@H+3Iqz5&{`E!LoiarzhfB*PD8tPXP diff --git a/data/graphics/keyyellow09.bmp b/data/graphics/keyyellow09.bmp deleted file mode 100644 index b7bb1120f8961a3db0b40a4f5ee51ae3f01bf604..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 zcmds3X-HHH6#lL=E$Y12v(Pj$pA=>NXd$r79+?k$R9N;X+9)Nl#R}UkBie1VecyLz zu|1(ZTP%zsBWprJD{Kz#z!G|V4&jk>xcMwj2wx?L`_S}7pJfjCSdw>EL?~cE3jb$Hf_R=9eQ5B9*Y<2Pa{SkIvT;jHBssh5fFfw7>pXF z+0L1RWy_G2gPh(Yvwz5;=lnMJBEuFar-u&J;VF=a5@cW5Q;4)QC1lGMy>r_(#pg8-Mqw4%*$VRHiG~p2!6t4wF-=?7%~K{Tbo0W@bl-j#*-&C|5d9r z6Kb0?OU2dzdYYm9B9bT)`1PymmZ}&x4xKug@hOs9w{Y#6s+wviElEjQDZyE6z4$Dl zGw~}cjhi=>SdJvk#6%InA3w(Z`zl4^XJla5FfVC%268FNCSofuSA2?r3a1oJ_zxeV zsK_WNFjyn`nKw^qZ_~znngl=TGQmoUh=ow;cztl^vRD^oIPt+a$PN$HB0+-?;dCr>>ag7 zVbETB_B7|Og-bJ$&~M+Y995Q?np%^FiA*<3-Mb?_9fuEV%g8E|C$SX9=+WrXMe)sK zN)wT2k&ucCgG#3U*<$VyH@NBCvZWG8r=l1rX-+p;<^~##YQtXh8R9v z_0XXM+O|b#sP0NGh%sZ-!|7LKlJm|x=_gbj$#IL{Opbdn)lz;J`Ag(acL@k2t=t`)_XeD> zHhxtIMxkhZ*^4hiPj>(<3im;>8O*dZfv7n%GmOZMx_G`0*c_i4%MP diff --git a/data/graphics/keyyellow10.bmp b/data/graphics/keyyellow10.bmp deleted file mode 100644 index 34bc30c864ea8d5b81c148964f0b7c19c9637118..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 zcmds2X-Jf77(L%OH#OIC!H7t@nMzRkv%-4PcDe}7k^hG#LG5gUtc-7t7C#*W3znOM9S>(*iOX6)RF zty{5iBeJtGb*koV*RF9XqN6qPpg~Aa$L!fywoJnwIDoTfarrXx^L5?4iHjF;=nz(~ z#>9!bKPbqN#djAhrhk8o8igrSuwVgJt-_8SICe}U7Zn-Lp8fXrZBwf?u(HxzUXBM3 z^!=_~T1M~Q2n_s(6m8llAQL8F)+{Vsh!rcaX%qJE$GLM_^V6q(m6gp!l0|YvvPI%V z{7OspuYLOzLr%oW2ajEFaMPzFD+`MjVd+whzkWUT?!}oi8sx~MHDk~yFH`j^j=7-va`Qt}Ceyn36o`fho+#Mn^kbFLI zLdQfYQKwzIst|!6#3YTGy_roOyQmaMxL9 zo6n!)-W|I z1x3~!J*tBvH#TfgR+AX@@n<8SKN}W{@#v9`i4veu(CvMsh>B7g5Rh%#wDK)m^b{r2 zuOH};^-KEk!}R5gKT{MIs-LhDl0P`OPKv*$>(~*aM=KyyB~?QsCHZOQ^iumNC-{yB z6-$&zNJWKl{km2)X%c$$KxCwc6hxSHQYMT~UDK(k8hRH^rhR+Ie)sqkjzrq@9!}O> zx}+&)%uqaegqI_)NG`&Xn25f8^%i45yGPNo=FL-oOG!cN)*it5s|AWN)8@S~R;zL2 z2KMYxgy}-VhUwYlWW628Ufz;4WEM}%xq*^lCCr$Vgs?F0@wEl|30<*3B=OrfGwIE7 zQ`Cfa{(LQx*2D*vO<1`2o+sj$$Xl$eN`qE#L| zsOa&cCqBIBSv-f{px}-!m?cysUgUR?=2cZq%F9hONwSx7v6~^UPHKwa5P5Q-5y4$4 zn1#GGs;doNB4uUj!$n2v2`5jgtXMp63X-bP!R;w*zhA$istQ&sXd{fztBNRb7Ua*b Jg#9m^{Rzlm(suv= diff --git a/data/graphics/keyyellow11.bmp b/data/graphics/keyyellow11.bmp deleted file mode 100644 index dbce3c5356d06626fab6d3bb2608735c0b72ff46..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 zcmeHJYfQ~y9DYuxDBXreQ&K8IrNTijDM>E5Um|7^=CX1px6N(tViR+l+iZpzX3J&D zwYhy@v!P~_&0J<0pRD2M`E`!};dD+8KKP=&=f8LV&ig#S%kz8Qla^)iL+zi1&lrBf zZ66bYxpVO+!2k7^6)>COYW)qef$8s$;9x{YBPIrMacI*9ty;m?_b1ZdB_g=Dx8e{m zB?W^AWBhpJ=3>SSOr45JlQ48BdiF$En4QIa3NJ53?${B1`e68QOrDJS^Raq0ii)sz zudd=^Y}$lHi!gB_dh|e(CN>s#C|HVi?O?GWBLic`VA?b+U8=~3599oK+_+)7ecM!C zjw@Gi;smyDM?nDw3_wVTTNIIzNJ>JlUg+OnBWE3WeEoXt-;a_K)5C`WA3h|Bq=8@@4(kf(1&!z^pBEl|^i)X+Q=~%V zlSsCR_nS8;EybQam_1w1HfrROA}9#``e_)MnTpRnpF@Ud3X2zO&52W01rd{ozetuy zp-7~N2eUYPR&%5PC@@2H4p|V2)n?3$JT(>Fx}kGtT}+2rtX!!nkmAV`eEC8au7)Ck zBIbAR*c9yEjajqMyEpv&oTreNr}7&;TEp(rMMd7C1(+0{2?j2j2ou`cj$noP3@U7Wk+zUD{2;a{TjD!DgLr$7&#Jc+u9Er zr&g^}c~j&QCaC5kBJAIB30_OV;2%B0g$vr^B}*`Bl+I(_7I0p6?7)f@I!bA2KTT!* z_^eDx3637c=FONhMsPfr_#5&!YyICKabH)@ZlANS+mw-38^DL7}4zQOvlwj6(J z3I_hAOE`B^Yv@M%ayR<8Rxx2WJb;>RZUBeih_@ii}*P&;w54ciKQ{#yomz`)H!L4 zW5=rRv3I;mx^~r?5RI@b3(L;MJ*S>#Wn5>D!5hDVBvhnGBu^yx*)#K*Gg_-PYjm`! zE9!(Iq*Um5lnodCgzO|@q2lAwteFPy5?oW@N)~w`QYMlv;#Xeoaq5&dokK(q;eb%^ z^XBQjK+V&*$i+@EDVj5{>|fy9D56D;L8ef6rc96YG$Y~6~rYq5N}644Tw z1--p{cbjw87rap=W$_e=6G;W`DlOi*bP}>`*r0yJELbiopTWC}Y_Mpp zcw2dV{%n5x*2L+!dlz&PCc@Tl+oqGqpDXMyW&GRV-&tyE!1ew;oC<|r WGk%&6mGj5QP7l&BoxcA^FTVle{f~+O diff --git a/data/graphics/keyyellow12.bmp b/data/graphics/keyyellow12.bmp deleted file mode 100644 index 7a41835515a99dad2970754598bbfe4acbd3753c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 zcmeHJS!|496g_`BGpcO_Ep4f)T3SVgQkq(8D_v~0CicCSk_aV;CH7cqX-X`K5=|2c zjfRNuV4al2mL^E>GKladQXX9A`X~QPXF5~jg~a5W$(?`hJ$FCfWaXtt;O8rypUHeD zxZeh1C70Jnnj;`nQcO9AF&6}fh zXQZcN%ot3aiUkX>Y86(l#L}ghH4CFht1o&tm4DHNsT>}Twrw@wL4z=95|%B)=FK>K z80F0oU7cXqjpBoPz;Mz5PxPCpxkJmKK!1x)+1%GPQ3bC<>i_?%;}D zCr_e83Pnzc3=wg>e~-I&apnxxtwTZXbjYi)LND&~?3s3a z!v+)-sCk3<9KVSZk(GsR-85!P#}t@L!z~kh`GWiRaq5)DKVbrT^nkSQHuacW`kZYp&g99uN>NcB1=EqG<}XxL=@xK1 zXgheYPAQYM!n5>`9>un8T4Z)1KHj6yDE{*0y4U&nT3e0>`)jv*%q{%NN|ctOxENEW zsG4^SbYZFa3%z@zZ(q%tR-Clftv%r0hBt3&84n)BiWR!=9Xr-j^Vals!RIVyVxmrU zmoB<5KE1P)pFYLCdtes3c45&XO_p0g^F~jzW?B<&C9BHCkBF#eV&QXf-n`Leuc*Mz zotQTd!-i>K!ST6(k&zk+!RdwE5*Aj^#KNagR|l8Na5~k+o;}LIoHtgLQTeQ!>6D?e z+C*j;X8gprxSBfN;414r+CF}?KYnbG3Q9__W({V}#K@7_LH3Rj(icG(FlDpsBq$#K zN*7%GVEF37CK4~w=F=y~_3Osz(^@OuCUfQ}1CJV|Tt^ZkjgYq~@NjbIowp2cH*b93 z;H`f_5-n0BGD9T6<+4{*8OM%k)4Bc}brR{cX*$EC0+Jr@FYe30f#}mmvtV}S@CO8U zS1D7(DN-X+AQD?!Yrk~K;BB>kKelewqA??~G4DtE8aoyvMrcN422#4&nqc^D7jYtG zBDY0~MN+?h4Zn3OgbTvk>c9bP->z&~RHTzUeYz&XJCw}HTd#q(T9xq;B;;o=(nL~3 zB3&+r(`i&!>&;tMhP`{SaihC6tX_@Tv$YFc-bQNT5AOBk^JjecpqE!ojo#^85b_}@mwfmqu>XSX4|)Gg4gdfE diff --git a/data/graphics/keyyellow13.bmp b/data/graphics/keyyellow13.bmp deleted file mode 100644 index 3ea00769436f3a0588e24f2bed73e1dee2c7546a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 zcmeHJOGs2<6#mAyC5quIQ?STK1op68q$QdeMdhPh6b2%NLZp=<(ZlGC7)1{kiAF_H znFWe2TuHCubnMr%CYPd6;x%2JT4+JwSFl$GJg5ga>)swx~ji2Qt{r6DxbMKm84D>(NiB_TT-`}gDcaa_NS2M^HJ zhNn+)?;fsQ!_lMIwF}Fa&zHgq&X|W^xf0vAD^6o0y1E=gLqU_1f$!ftMn=%vi~IL+ z`ZRX$)*Q{f-m)+kSc7HDuww^KoWP?;7#xfgX%y)bNfYsLI?>mMJ9kiBjoe&BM*fH* zBm^v?71@Y+GcyylwRrXnZ{PZftP?pSk|DwvV`J#(z}d4XDpDn_+ih7;!$pf`Eif0S zq~P#jJb8jQZ}8;{2rJ_F_K6Q4D4OE$*`rGO`MD5m`0Rw(Sl6#6I0II>v=mpaxSVi$ z+F-%tq*k0wwRNkOz#D#Xu{Mdd4XpS}yD5E^`lV-qg{cfE>5LK>J>E{kd}}FQ3WLdU7K+m$?U&bio1-$hM75OHh{{Tpiw;S}($m%XX#$)h zsuv%xPlUyb5fPy_NFp1B9bYMYMB+q}L?T8<{oC6e^h~nU)ZoAY?AwQe0&Ll$lgJ+6 zu&h~w6)QjkT(U$dtXX&fH~t7os7SfU4UuAUjf@15<@Rk{x}+A$bohuN5#4OtHss`B z!v?Hcr5PE6;4ZrdB8d>WEaDV-E>b8G{ra_kYpb#}G-waAG!+$E9fO7LO5G9?W*%f7 z0Nww>srPOcsS~LY$rOpCT;1J{hYxY<7V7J9@}xQ{=aIHa#n!J^mFVR20-q7eC`YhJ z*yqo|6BE7z0}jr}Q{rVE&PV{Y{Xsg%T)~ diff --git a/data/graphics/keyyellow14.bmp b/data/graphics/keyyellow14.bmp deleted file mode 100644 index 18cb38ca744f7f70bdb2a323a2717f10e4c78c95..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 zcmeH}TS!z<6o&ufIHoC?nHDNynU^djQzs))E67WUq?Czhq1go`11|{$qG;fQb}7*O_BQ zrXc*dO#GY3cZ~Dau#){%7ECXTV^9d;3FC9njw&;o;c58@qNPDheSXE{eaU zr6V&cF%d_PqO1&8uHf1=)YqfB8mCVqEzLz}BPu$$uP^rOL0%r}>d@VdCr|MFImXBF z^eOJ%MN<=sixC&M7R&k)I=JI8B?Xn00-u=B-oD+mwB+~kqh_<=^=k|dqqP;MP9Zwl zyM#wLzf4F#O$`PIF*moJXq4y$Q8*EnmtnEs-aS-RVc)(rK2LFv!f13E@UvEABraaW z=qPM9BT+U{Ezwryb9?_D4<6v$ImE~7r|Tp_L-hlc#OBSYt;Mrv%*VHHf>q6G#m$>A znGh7DpZ+sHH`is46xq@7^OMcxJg94N(J3)CC2-w%^{6Du%W?QHA|gDGR9N>8`&QB1 zJBr`fDBk9kgoSw??@s17?m*oe#lL?aEiEFkP87Pi8+lZGvl#;exOGdMcKkT@?!}fZ z-k0Z9Lh;!K)6*ClLRXiZ{gM(KIU=@S$5dY7JV5b3eS+OC=keuB@iSZQ(j`&J&c=ZQ zQqy=}I3hOEMzCs(;!8))qqeZ1aUdfjQd?Mss~KCXun<{UNKZ#n5@KSccyb{P4n|<$ zdWtUaAABOi>T2-k&mkW^1kB9%aBaDB2W@R=XuyRFIC~Z+Pa-D=nVCpUmF#h$W=nH* z<86_U4t0!dv)29lE{dpmaM z&#wo#|sL_mNu zieJK=61*3oL=8lbh}wv;F9&{*nghz9S7eSQvd(} diff --git a/data/graphics/keyyellow15.bmp b/data/graphics/keyyellow15.bmp deleted file mode 100644 index c4764d54dcc52057a0a6f09a87385a4d0eee6cf7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 zcmeH}StzAp7{~v|!B~zNAu%aS#*(rxrK|~=tc`3*V~HU~G)aUjltPS1iV=kyxv?ZS zmQv)_lC4~bOOeZGp2yL_InFnk=4R@Az2DdSz3=z_{_nHA&pCMMz6S zSQzZ>pR^R1+9^Xak62m?r?3#Mtr!}@)D&iCF*%9;el#{BJsniOPw-5m_>y+u9lu5?+DxlIQ%85O4$)B&w<~ zKaZ0WVLoru(@Lv!5*Zm1L1$;BkG1Mt<`uS~H>KmV5A*U67YA=|*x9{-pa;}@)$xai z(b0j*N@QgrI$Bg59shxfj=#E!nHkBDmKIc0AUhlJ@dyfnyE~kmUOBCL`!x2dj zZx1UglHt9*a*nF2k)JOoG$sbY!D5k{n;2zn{RX>qeD2)b;QU;*yQ^ASQgK!c44}Oo z4GmHXa&wWIir84m0Y5)@dcxIJ%7S4PdTz*bxb!9Q)VH^G*VhgwCz{Poi@7<~$OyW+ z(9|U6l$0PR2g%7|5exbIi}yI?jOBwqUnEpSABnyYeJ9Ew@;yI)zqqI#9aZ)8psfw{ z^-|o}Z(MWuSVcr2AOId75+gmoy#m+%Q6V!Tf1+PR7evcMUx_^T_iYvy%*MvRDx3hU zQeH0k%+cYL4h_YpPjGROGNtv8QTU?-8=@ilO!R}OmME6U<><(AWkto&9~?wyr_{Qd z8Wa~xJ|`w3JRCkg;wy9W7iB?7NW#IkaGkNaxv@AsHQU*d1miRw9Th`3$7*XOC|vs3 v3jTFaqG@+-_1|#P|Gy(|9Rjy{tr2q diff --git a/data/graphics/keyyellow16.bmp b/data/graphics/keyyellow16.bmp deleted file mode 100644 index 56c9de8cd6e318ab8bd811f4ddd37343f082d83b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 zcmeH|T_~hc9LArQ875Y-z6KX|g(#tDQX;z~v=jL%4TY8OkYtk-64_8nh&0OV1s9^$ zNVuYKIm$=55*Nyink$t5{?CqHV|TvV-S%qU&O4oE&Ut?4|D5NX`KZ;r!Ous-pK<)Y zdwwOTxo77gz}?&qxE=Wa4tRRP_2&BW>}duEBPj_vIVdbdNePOIL_awhK|!yU;Q(Y$ znZFMYM{X{fn=w3$*;y-2-Um?-U2({8M5g8XGY^jjb)oWRfl} zaCU~hJ`j+?Vxr zI^^X+qd`mzcpsI@e*=>Bx%TdE)YYN16xrDV6d#X>2>AQM%j?fsvi{ndh{WV11_sd4 zf!bOD;=rV*iv&hT3-8Sw6vhQ8f9eyl#%fQ z;*;g;>xd%jiw<#9JUj$GKE^&h#oXS8nM{60qe8EjxSalebakPj0TmVE{PM|7OG82e zqM{HQYMb&(-109^5>XJ5j_4cFGSL^JG_(2b&W>_vN#flZ92AtMCRA04`+<{Sp|ELu zgsqccL;M-RRrnKC5`8DyBl=48fkLiwrQOzFyR#)gmhkDJde@YBhX( zgk5&UUl3e~4^cQ#EYW)=US28>52cL_7z~)1!RRP@d(qk|_J!{Uwu>Vj7l*JgXW|yb z3rOsX*^KLJoSx#~0GpdwUdH_VbH>`+QBxxjPS$KKYpc%}+R2H?@a`^FSE1L7%kwWa L-P7F;ICJ0!eq>7u diff --git a/data/graphics/keyyellow17.bmp b/data/graphics/keyyellow17.bmp deleted file mode 100644 index 7dd6b3159dee72db06aac692bda9c009df308ba7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3126 zcmeH}O(?8U9LAq_#$-l!Vq!8i4UOF%A1=pz*SLDk~okeZ6TJQNqBq$CjiPh3#(a1Z>B&}yO4 zASx=*mBQ6$=S76wjkN^f%tD#W*Jyg{1>qAcu+S}3GjJi71)S#k* z<5<*YGfXDv^@xpyN);YU)Zf^^$_f@1Fg1md5x89F=CP)Jy>p~r6?%iFNjfC8I;N|p?wkm_zH7` zlE^|dO>{-%Ci+EWBhp`7D7Uv|i;I|;z|au7yE%n5p{j~|VXaF~hrxj8XfMKt_$NXj zQW2SmtVBPEGKjQ~kCCURvfW**u3~;3=ZQ5np|%#R-mGld*+@=?PWM^+fRvBK z*eX0f3my+x2To3~zmLsLEG=PX2E)VX?L}J~8XHkvjq>sklzsiK+}+{+9@p1!yK!`c YogJ*L@iH?PesAbYM>;Ge@Si2{1~sO0`2YX_ diff --git a/src/AnimatedImage.cpp b/src/AnimatedImage.cpp index 3c67cc3..e9201b1 100644 --- a/src/AnimatedImage.cpp +++ b/src/AnimatedImage.cpp @@ -57,3 +57,11 @@ void AnimatedImage::NextFrame() { currFrame = (currFrame + 1) % frameCount; } + +void AnimatedImage::SetFrame(int f) +{ + if (f >= frameCount) + throw new runtime_error("SetFrame frame out of range"); + else + currFrame = f; +} diff --git a/src/AnimatedImage.hpp b/src/AnimatedImage.hpp index 712dd10..b19f800 100644 --- a/src/AnimatedImage.hpp +++ b/src/AnimatedImage.hpp @@ -27,7 +27,9 @@ public: void Draw(int x, int y, double rotate=0.0, double scale=1.0, double alpha=1.0, double white=1.0) const; void NextFrame(); + void SetFrame(int f); + int GetFrame() const { return currFrame; } int GetWidth() const { return frameWidth; } private: int frameWidth, frameCount; diff --git a/src/ElectricGate.cpp b/src/ElectricGate.cpp index 1d77736..42d2992 100644 --- a/src/ElectricGate.cpp +++ b/src/ElectricGate.cpp @@ -17,6 +17,7 @@ #include "ElectricGate.hpp" #include "DataFile.hpp" +#include "LoadOnce.hpp" extern DataFile *g_pData; @@ -25,6 +26,11 @@ GLuint ElectricGate::uGatewayTexture = 0; ElectricGate::ElectricGate(Viewport *v, int length, bool vertical, int x, int y) : length(length), vertical(vertical), viewport(v) { + LOAD_ONCE { + OpenGL &opengl = OpenGL::GetInstance(); + uGatewayTexture = opengl.LoadTextureAlpha(g_pData, "Gateway.bmp"); + } + xpos = x; ypos = y; @@ -34,12 +40,6 @@ ElectricGate::ElectricGate(Viewport *v, int length, bool vertical, int x, int y) timer = rand() % 70 + 10; } -void ElectricGate::Load() -{ - OpenGL &opengl = OpenGL::GetInstance(); - uGatewayTexture = opengl.LoadTextureAlpha(g_pData, "Gateway.bmp"); -} - bool ElectricGate::CheckCollision(Ship &ship) { int dx = vertical ? 0 : length; diff --git a/src/ElectricGate.hpp b/src/ElectricGate.hpp index bf365a7..29c079f 100644 --- a/src/ElectricGate.hpp +++ b/src/ElectricGate.hpp @@ -27,8 +27,6 @@ class ElectricGate : public StaticObject { public: ElectricGate(Viewport *v, int length, bool vertical, int x, int y); - static void Load(); - bool CheckCollision(Ship &ship); void Draw(); diff --git a/src/Game.cpp b/src/Game.cpp index e6012f3..985012a 100644 --- a/src/Game.cpp +++ b/src/Game.cpp @@ -18,6 +18,7 @@ */ #include "Lander.hpp" +#include "LoadOnce.hpp" /* * Constants affecting level generation. @@ -59,7 +60,6 @@ Game::Game() : ship(&viewport), surface(&viewport), speedmeter(&ship), - hasloaded(false), state(gsNone), starImage("images/star.png") { @@ -70,7 +70,7 @@ void Game::Load() { OpenGL &opengl = OpenGL::GetInstance(); - if (!hasloaded) { + LOAD_ONCE { uFadeTexture = opengl.LoadTexture(g_pData, "Fade.bmp"); uLevComTexture = opengl.LoadTextureAlpha(g_pData, "LevelComplete.bmp"); uSurf2Texture[0] = opengl.LoadTexture(g_pData, "GrassSurface2.bmp"); @@ -79,16 +79,6 @@ void Game::Load() uSurf2Texture[3] = opengl.LoadTexture(g_pData, "RedRockSurface2.bmp"); uSurf2Texture[4] = opengl.LoadTexture(g_pData, "RockSurface2.bmp"); uShipSmallTexture = opengl.LoadTextureAlpha(g_pData, "ShipSmall.bmp"); - - LandingPad::Load(); - Surface::Load(); - Mine::Load(); - ElectricGate::Load(); - Key::Load(); - FuelMeter::Load(); - SpeedMeter::Load(); - - hasloaded = true; } // Create the fade @@ -767,15 +757,12 @@ Texture FuelMeter::uFuelMeterTexture, FuelMeter::uFuelBarTexture; FuelMeter::FuelMeter() : fuel(0), maxfuel(1) { + LOAD_ONCE { + OpenGL &opengl = OpenGL::GetInstance(); -} - -void FuelMeter::Load() -{ - OpenGL &opengl = OpenGL::GetInstance(); - - uFuelMeterTexture = opengl.LoadTextureAlpha(g_pData, "FuelMeter.bmp"); - uFuelBarTexture = opengl.LoadTextureAlpha(g_pData, "FuelBar.bmp"); + uFuelMeterTexture = opengl.LoadTextureAlpha(g_pData, "FuelMeter.bmp"); + uFuelBarTexture = opengl.LoadTextureAlpha(g_pData, "FuelBar.bmp"); + } } void FuelMeter::Display() @@ -830,6 +817,10 @@ Texture SpeedMeter::uSpeedTexture; SpeedMeter::SpeedMeter(Ship *ship) : ship(ship) { + LOAD_ONCE { + uSpeedTexture = OpenGL::GetInstance().LoadTextureAlpha(g_pData, "SpeedMeter.bmp"); + } + border.x = 10; border.y = 40; border.width = 128; @@ -844,11 +835,6 @@ SpeedMeter::SpeedMeter(Ship *ship) speedbar.blue = 0.0f; } -void SpeedMeter::Load() -{ - uSpeedTexture = OpenGL::GetInstance().LoadTextureAlpha(g_pData, "SpeedMeter.bmp"); -} - void SpeedMeter::Display() { // Resize the speed bar diff --git a/src/Key.cpp b/src/Key.cpp index b816a9c..7a359b9 100644 --- a/src/Key.cpp +++ b/src/Key.cpp @@ -18,6 +18,7 @@ #include "Key.hpp" #include "OpenGL.hpp" #include "DataFile.hpp" +#include "LoadOnce.hpp" extern DataFile *g_pData; @@ -29,19 +30,47 @@ AnimatedImage *Key::redImage = NULL; AnimatedImage *Key::greenImage = NULL; AnimatedImage *Key::yellowImage = NULL; AnimatedImage *Key::pinkImage = NULL; +Image *Key::blueArrow = NULL; +Image *Key::redArrow = NULL; +Image *Key::greenArrow = NULL; +Image *Key::yellowArrow = NULL; +Image *Key::pinkArrow = NULL; Key::Key(bool active, int xpos, int ypos, ArrowColour acol) : StaticObject(xpos, ypos, 1, 1), active(active) { + // Static initialisation + LOAD_ONCE { + OpenGL &opengl = OpenGL::GetInstance(); + + blueImage = new AnimatedImage("images/keyblue.png", 32, KEY_FRAMES); + redImage = new AnimatedImage("images/keyred.png", 32, KEY_FRAMES); + greenImage = new AnimatedImage("images/keygreen.png", 32, KEY_FRAMES); + yellowImage = new AnimatedImage("images/keyyellow.png", 32, KEY_FRAMES); + pinkImage = new AnimatedImage("images/keypink.png", 32, KEY_FRAMES); + + blueArrow = new Image("images/arrowblue.png"); + redArrow = new Image("images/arrowred.png"); + greenArrow = new Image("images/arrowgreen.png"); + yellowArrow = new Image("images/arrowyellow.png"); + pinkArrow = new Image("images/arrowpink.png"); + + uBlueArrow = opengl.LoadTextureAlpha(g_pData, "BlueArrow.bmp"); + uRedArrow = opengl.LoadTextureAlpha(g_pData, "RedArrow.bmp"); + uGreenArrow = opengl.LoadTextureAlpha(g_pData, "GreenArrow.bmp"); + uYellowArrow = opengl.LoadTextureAlpha(g_pData, "YellowArrow.bmp"); + uPinkArrow = opengl.LoadTextureAlpha(g_pData, "PinkArrow.bmp"); + } + alpha = active ? 1.0 : 0.0; current = 0; rotcount = KEY_ROTATION_SPEED; // Allocate arrow images - arrow.width = 32; - arrow.height = 32; + arrow.width = OBJ_GRID_SIZE; + arrow.height = OBJ_GRID_SIZE; switch (acol) { case acBlue: arrow.uTexture = uBlueArrow; @@ -66,23 +95,6 @@ Key::Key(bool active, int xpos, int ypos, ArrowColour acol) } } -void Key::Load() -{ - OpenGL &opengl = OpenGL::GetInstance(); - - blueImage = new AnimatedImage("images/keyblue.png", 32, KEY_FRAMES); - redImage = new AnimatedImage("images/keyred.png", 32, KEY_FRAMES); - greenImage = new AnimatedImage("images/keygreen.png", 32, KEY_FRAMES); - yellowImage = new AnimatedImage("images/keyyellow.png", 32, KEY_FRAMES); - pinkImage = new AnimatedImage("images/keypink.png", 32, KEY_FRAMES); - - uBlueArrow = opengl.LoadTextureAlpha(g_pData, "BlueArrow.bmp"); - uRedArrow = opengl.LoadTextureAlpha(g_pData, "RedArrow.bmp"); - uGreenArrow = opengl.LoadTextureAlpha(g_pData, "GreenArrow.bmp"); - uYellowArrow = opengl.LoadTextureAlpha(g_pData, "YellowArrow.bmp"); - uPinkArrow = opengl.LoadTextureAlpha(g_pData, "PinkArrow.bmp"); -} - void Key::DrawKey(Viewport *viewport) { int draw_x = xpos*OBJ_GRID_SIZE - viewport->GetXAdjust(); @@ -133,12 +145,13 @@ void Key::DrawArrow(Viewport *viewport) void Key::DrawIcon(int offset, float minAlpha) { - frame[5].x = offset; - frame[5].y = 10; - if (active) - OpenGL::GetInstance().Draw(&frame[5]); - else - OpenGL::GetInstance().DrawBlend(&frame[5], alpha > minAlpha ? alpha : minAlpha); + int prevFrame = image->GetFrame(); + image->SetFrame(5); + + double drawAlpha = alpha > minAlpha ? alpha : minAlpha; + image->Draw(offset, 10, 0.0, 1.0, drawAlpha); + + image->SetFrame(prevFrame); } bool Key::CheckCollision(Ship &ship) const diff --git a/src/Key.hpp b/src/Key.hpp index 0df42e8..30a1df7 100644 --- a/src/Key.hpp +++ b/src/Key.hpp @@ -28,8 +28,6 @@ enum ArrowColour { acBlue, acRed, acYellow, acPink, acGreen }; class Key : public StaticObject { public: Key(bool active, int xpos, int ypos, ArrowColour acol); - - static void Load(); void DrawKey(Viewport *viewport); void DrawArrow(Viewport *viewport); @@ -43,16 +41,15 @@ private: static const int KEY_ROTATION_SPEED = 2; static const int ARROW_SIZE = 32; - static GLuint uBlueArrow, uPinkArrow, uRedArrow, uYellowArrow, uGreenArrow; - - TextureQuad frame[KEY_FRAMES], arrow; int current, rotcount; float alpha; bool active; - AnimatedImage *image; + AnimatedImage *image, *arrow; static AnimatedImage *blueImage, *redImage, *yellowImage, *pinkImage, *greenImage; + static Image *blueArrow, *redArrow, *yellowArrow, + *pinkArrow, *greenArrow; }; #endif diff --git a/src/Lander.hpp b/src/Lander.hpp index ba11ef6..ab1d6f9 100644 --- a/src/Lander.hpp +++ b/src/Lander.hpp @@ -50,8 +50,6 @@ class FuelMeter { public: FuelMeter(); - static void Load(); - void Display(); void Refuel(int howmuch); @@ -73,8 +71,6 @@ class SpeedMeter { public: SpeedMeter(Ship *ship); - static void Load(); - bool SafeLandingSpeed(); void Display(); @@ -115,7 +111,7 @@ private: FuelMeter fuelmeter; SpeedMeter speedmeter; int death_timeout, level, lives; - bool hasloaded, bDebugMode; + bool bDebugMode; float flGravity, starrotate, fade_alpha, life_alpha; TextureQuad fade, levcomp, smallship; int score, newscore, nextnewlife; diff --git a/src/LandingPad.cpp b/src/LandingPad.cpp index 193b6a3..d0edce3 100644 --- a/src/LandingPad.cpp +++ b/src/LandingPad.cpp @@ -18,6 +18,7 @@ #include "LandingPad.hpp" #include "DataFile.hpp" #include "Surface.hpp" +#include "LoadOnce.hpp" extern DataFile *g_pData; @@ -26,23 +27,19 @@ Texture LandingPad::s_landtex, LandingPad::s_nolandtex; LandingPad::LandingPad(Viewport *v, int index, int length) : viewport(v), index(index), length(length) { + LOAD_ONCE { + OpenGL &opengl = OpenGL::GetInstance(); + + s_landtex = opengl.LoadTextureAlpha(g_pData, "LandingPad.bmp"); + s_nolandtex = opengl.LoadTextureAlpha(g_pData, "LandingPadRed.bmp"); + } + quad.x = index * Surface::SURFACE_SIZE; quad.width = length * Surface::SURFACE_SIZE; quad.height = 16; quad.uTexture = s_landtex; } -/* - * Loads landing pad graphics. - */ -void LandingPad::Load() -{ - OpenGL &opengl = OpenGL::GetInstance(); - - s_landtex = opengl.LoadTextureAlpha(g_pData, "LandingPad.bmp"); - s_nolandtex = opengl.LoadTextureAlpha(g_pData, "LandingPadRed.bmp"); -} - /* * Draws the landing pad in the current frame. * locked -> If true, pads a drawn with the red texture. diff --git a/src/LandingPad.hpp b/src/LandingPad.hpp index 9224717..923f0ce 100644 --- a/src/LandingPad.hpp +++ b/src/LandingPad.hpp @@ -25,9 +25,7 @@ class LandingPad { public: LandingPad(Viewport *v, int index, int length); - - static void Load(); - + void Draw(bool locked); void SetYPos(int ypos) { this->ypos = ypos; } diff --git a/src/Mine.cpp b/src/Mine.cpp index c9e136e..964110d 100644 --- a/src/Mine.cpp +++ b/src/Mine.cpp @@ -18,6 +18,7 @@ #include "Mine.hpp" #include "OpenGL.hpp" #include "DataFile.hpp" +#include "LoadOnce.hpp" extern DataFile *g_pData; @@ -26,6 +27,17 @@ GLuint Mine::uMineTexture[Mine::MINE_FRAME_COUNT]; Mine::Mine(ObjectGrid *o, Viewport *v, int x, int y) : objgrid(o), viewport(v) { + LOAD_ONCE { + OpenGL &opengl = OpenGL::GetInstance(); + const int TEX_NAME_LEN = 128; + char buf[TEX_NAME_LEN]; + + for (int i = 0; i < MINE_FRAME_COUNT; i++) { + snprintf(buf, TEX_NAME_LEN, "mine%d.bmp", i*5); + uMineTexture[i] = opengl.LoadTextureAlpha(g_pData, buf); + } + } + current = 0; rotcount = MINE_ROTATION_SPEED; displace_x = 0; @@ -51,18 +63,6 @@ Mine::Mine(ObjectGrid *o, Viewport *v, int x, int y) objgrid->UnlockSpace(xpos, ypos + 1); } -void Mine::Load() -{ - OpenGL &opengl = OpenGL::GetInstance(); - const int TEX_NAME_LEN = 128; - char buf[TEX_NAME_LEN]; - - for (int i = 0; i < MINE_FRAME_COUNT; i++) { - snprintf(buf, TEX_NAME_LEN, "mine%d.bmp", i*5); - uMineTexture[i] = opengl.LoadTextureAlpha(g_pData, buf); - } -} - void Mine::Move() { if (displace_x % ObjectGrid::OBJ_GRID_SIZE == 0 diff --git a/src/Mine.hpp b/src/Mine.hpp index 0790835..f01e7da 100644 --- a/src/Mine.hpp +++ b/src/Mine.hpp @@ -26,8 +26,6 @@ class Mine : public StaticObject { public: Mine(ObjectGrid *o, Viewport *v, int x, int y); - static void Load(); - void Move(); void Draw(); bool CheckCollision(Ship &ship); diff --git a/src/Surface.cpp b/src/Surface.cpp index cdf8b78..702a90c 100644 --- a/src/Surface.cpp +++ b/src/Surface.cpp @@ -17,6 +17,7 @@ #include "Surface.hpp" #include "DataFile.hpp" +#include "LoadOnce.hpp" extern DataFile *g_pData; @@ -25,7 +26,15 @@ GLuint Surface::uSurfaceTexture[Surface::NUM_SURF_TEX]; Surface::Surface(Viewport *v) : surface(NULL), viewport(v) { - + LOAD_ONCE { + OpenGL &opengl = OpenGL::GetInstance(); + + uSurfaceTexture[0] = opengl.LoadTexture(g_pData, "GrassSurface.bmp"); + uSurfaceTexture[1] = opengl.LoadTexture(g_pData, "DirtSurface.bmp"); + uSurfaceTexture[2] = opengl.LoadTexture(g_pData, "SnowSurface.bmp"); + uSurfaceTexture[3] = opengl.LoadTexture(g_pData, "RedRockSurface.bmp"); + uSurfaceTexture[4] = opengl.LoadTexture(g_pData, "RockSurface.bmp"); + } } Surface::~Surface() @@ -34,17 +43,6 @@ Surface::~Surface() delete[] surface; } -void Surface::Load() -{ - OpenGL &opengl = OpenGL::GetInstance(); - - uSurfaceTexture[0] = opengl.LoadTexture(g_pData, "GrassSurface.bmp"); - uSurfaceTexture[1] = opengl.LoadTexture(g_pData, "DirtSurface.bmp"); - uSurfaceTexture[2] = opengl.LoadTexture(g_pData, "SnowSurface.bmp"); - uSurfaceTexture[3] = opengl.LoadTexture(g_pData, "RedRockSurface.bmp"); - uSurfaceTexture[4] = opengl.LoadTexture(g_pData, "RockSurface.bmp"); -} - void Surface::Generate(int surftex, LandingPadList &pads) { if (surface) diff --git a/src/Surface.hpp b/src/Surface.hpp index c46e39d..38f31f0 100644 --- a/src/Surface.hpp +++ b/src/Surface.hpp @@ -28,8 +28,6 @@ public: Surface(Viewport *v); ~Surface(); - static void Load(); - void Generate(int surftex, LandingPadList &pads); bool CheckCollisions(Ship &ship, LandingPadList &pads, int *padIndex); void Display(); -- 2.39.2