From 6ec0fb49ab4bf7b2227a6e273382bab0628f22fa Mon Sep 17 00:00:00 2001 From: Miguel Angel Astor Romero Date: Mon, 5 Oct 2015 17:58:08 -0430 Subject: [PATCH] Added the launcher and files. --- README.md | 24 +++- ack_launcher.tcl | 229 +++++++++++++++++++++++++++++++++++ dosbox.conf | 196 ++++++++++++++++++++++++++++++ launcher_icons/banner1.gif | Bin 0 -> 6334 bytes launcher_icons/banner2.gif | Bin 0 -> 4681 bytes launcher_icons/configure.gif | Bin 0 -> 1498 bytes launcher_icons/create.gif | Bin 0 -> 1639 bytes launcher_icons/font.gif | Bin 0 -> 1597 bytes launcher_icons/import.gif | Bin 0 -> 1281 bytes launcher_icons/macros.gif | Bin 0 -> 1806 bytes launcher_icons/map.gif | Bin 0 -> 1739 bytes launcher_icons/messages.gif | Bin 0 -> 1813 bytes launcher_icons/object.gif | Bin 0 -> 1696 bytes launcher_icons/people.gif | Bin 0 -> 1744 bytes launcher_icons/run.gif | Bin 0 -> 1611 bytes launcher_icons/tile.gif | Bin 0 -> 1626 bytes 16 files changed, 448 insertions(+), 1 deletion(-) create mode 100755 ack_launcher.tcl create mode 100644 dosbox.conf create mode 100644 launcher_icons/banner1.gif create mode 100644 launcher_icons/banner2.gif create mode 100644 launcher_icons/configure.gif create mode 100644 launcher_icons/create.gif create mode 100644 launcher_icons/font.gif create mode 100644 launcher_icons/import.gif create mode 100644 launcher_icons/macros.gif create mode 100644 launcher_icons/map.gif create mode 100644 launcher_icons/messages.gif create mode 100644 launcher_icons/object.gif create mode 100644 launcher_icons/people.gif create mode 100644 launcher_icons/run.gif create mode 100644 launcher_icons/tile.gif diff --git a/README.md b/README.md index 5cc2048..a4555a5 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,24 @@ # ACK-Launcher -A clone of the ACK Launcher application in TCL. +A clone of the [Adventure Creation Kit](http://mozomedia.com/ack/) Launcher application in TCL. + +## Dependencies + * Adventure Creation Kit + * Dosbox + * Wish 8.5 + +## Installation + - Copy the "ack_launcher.tcl" file and the "launcher_icons" folder into +the parent directory of your ACK installation. + - Copy the dosbox.conf file into your ACK folder. + - The directory structure must be like this: + +``` + Parent directory + |--- ack_launcher.tcl + |--- launcher_icons + |--- ACK + |--- dosbox.conf +``` + +## Notes +The launcher icons and Adventure Creation Kit are © Chris Hopkins diff --git a/ack_launcher.tcl b/ack_launcher.tcl new file mode 100755 index 0000000..cef4b82 --- /dev/null +++ b/ack_launcher.tcl @@ -0,0 +1,229 @@ +#! /usr/bin/env wish + +# Copyright (c) 2015, Miguel Angel Astor Romero +# All rights reserved. +# See the enclosed LICENSE file for more information. + +frame .banner -relief flat +frame .info_f -relief flat +frame .buttons -relief flat -pady 5 +frame .bottom -relief flat -pady 5 +pack .banner -fill both -expand 1 +pack .info_f -fill both -expand 1 +pack .buttons -fill both -expand 1 +pack .bottom -fill both -expand 1 + +image create photo bar1 -format GIF -file "launcher_icons/banner1.gif" +image create photo bar2 -format GIF -file "launcher_icons/banner2.gif" +image create photo con -format GIF -file "launcher_icons/configure.gif" +image create photo cre -format GIF -file "launcher_icons/create.gif" +image create photo fon -format GIF -file "launcher_icons/font.gif" +image create photo imp -format GIF -file "launcher_icons/import.gif" +image create photo mac -format GIF -file "launcher_icons/macros.gif" +image create photo map -format GIF -file "launcher_icons/map.gif" +image create photo mes -format GIF -file "launcher_icons/messages.gif" +image create photo obj -format GIF -file "launcher_icons/object.gif" +image create photo pep -format GIF -file "launcher_icons/people.gif" +image create photo run -format GIF -file "launcher_icons/run.gif" +image create photo til -format GIF -file "launcher_icons/tile.gif" + +label .banner.bimg1 -image bar1 +label .banner.bimg2 -image bar2 +label .banner.just -font {-size 9 -weight bold} \ + -text " Just launch ACK: " +checkbutton .banner.mouse_c -text "Enable mouse (experimental)" -onvalue 1 \ + -offvalue 0 -variable mouse_var +label .banner.sclabel -text "Graphic Scaler: " +ttk::combobox .banner.scaler -width 10 +.banner.scaler configure -values [ list none normal2x normal3x advmame2x \ + advmame3x hq2x hq3x 2xsai super2xsai supereagle advinterp2x \ + advinterp3x tv2x tv3x rgb2x rgb3x scan2x scan3x ] +.banner.scaler configure -state readonly +.banner.scaler set "hq3x" +label .banner.fslabel -text "ALT + ENTER toggles fullscreen while running ACK" + +label .sep1 \ +-text "------------------------------------------------------------------------" +label .sep2 \ +-text "------------------------------------------------------------------------" + +label .info1 -font {-size 9 -weight bold} \ + -text "... or launch multiple ACK editors" +label .info2 -font {-size 9 -weight bold} \ + -text "in separate windows:" +label .info3 -text "- Pick adventure with \"Select Adventure\" dropdown" +label .info4 -text "- Click buttons below to launch editors" +label .info5 -text "- Press TAB to save changes in current editor. Then" +label .info6 -text "switch to another editor window and press TAB to" +label .info7 -text "update it with the changes made in the previous" +label .info8 -text "editor. (You may need to use a selection menu" +label .info9 -text "before changes will appear.)" + +label .buttons.butimg1 -image cre +label .buttons.butimg2 -image con +label .buttons.butimg3 -image til +label .buttons.butimg4 -image map +label .buttons.butimg5 -image imp +label .buttons.butimg6 -image fon +label .buttons.butimg7 -image obj +label .buttons.butimg8 -image pep +label .buttons.butimg9 -image mes +label .buttons.butimg10 -image mac +label .buttons.butimg11 -image run + +button .banner.b01 -text "Go!" -command "ack_base" -width 10 +button .buttons.b02 -text "Create Adventure" -command "ackmod -n" -width 15 +button .buttons.b03 -text "Configure Adventure" \ + -command "ackmod -c" -width 15 +button .buttons.b04 -text "Edit Objects" -command "ackmod -o" -width 15 +button .buttons.b05 -text "Tile Editor" -command "ackmod -g" -width 15 +button .buttons.b06 -text "Edit People" -command "ackmod -p" -width 15 +button .buttons.b07 -text "Map Editor" -command "ackmod -m" -width 15 +button .buttons.b08 -text "Edit Messages" -command "ackmod -t" -width 15 +button .buttons.b09 -text "Import / Export" -command "ackmod -i" -width 15 +button .buttons.b10 -text "Edit Macros" -command "ackmod -x" -width 15 +button .buttons.b11 -text "Edit Font" -command "ackmod -f" -width 15 +button .buttons.b12 -text "Run Adventure" -command "ackmod -r" -width 15 +button .bottom.b13 -text "ACK Manual" -command "game_manual" -width 10 +button .bottom.b14 -text "Open Game Folder" -command "game_dir" -width 15 +button .bottom.b15 -text "Visit ACK Site" -command "home_page" -width 10 +button .buttons.b89 -text "Refresh Adventures" -command "refresh" -width 15 + +label .buttons.advlbl -text "Select Adventure:" +ttk::combobox .buttons.advents +.buttons.advents configure -values [ concat ".. " [ exec ls -1 "ACK/GAMES/" ] ] +.buttons.advents configure -state readonly +.buttons.advents set ".." +bind .buttons.advents <> { + if { [.buttons.advents get] == ".." } { + disable_buttons + } else { + enable_buttons + } +} + +grid .banner -row 0 -column 0 +grid .banner.bimg1 -row 0 -column 0 -rowspan 5 +grid .banner.just -row 0 -column 1 -columnspan 2 +grid .banner.b01 -row 1 -column 1 -columnspan 2 +grid .banner.bimg2 -row 0 -column 3 -rowspan 5 +grid .banner.mouse_c -row 3 -column 1 -columnspan 2 +grid .banner.sclabel -row 5 -column 1 +grid .banner.scaler -row 5 -column 2 +grid .banner.fslabel -row 6 -column 0 -columnspan 4 + +grid .sep1 -row 1 -column 0 +grid .info_f -row 2 -column 0 +pack .info1 -in .info_f +pack .info2 -in .info_f +pack .info3 -in .info_f -anchor w +pack .info4 -in .info_f -anchor w +pack .info5 -in .info_f -anchor w +pack .info6 -in .info_f -anchor w +pack .info7 -in .info_f -anchor w +pack .info8 -in .info_f -anchor w +pack .info9 -in .info_f -anchor w + +grid .buttons -row 3 -column 0 +grid .buttons.advlbl -row 0 -column 1 -columnspan 2 +grid .buttons.advents -row 1 -column 1 -columnspan 2 +grid .buttons.butimg1 -row 2 -column 0 +grid .buttons.butimg2 -row 3 -column 0 +grid .buttons.butimg3 -row 4 -column 0 +grid .buttons.butimg4 -row 5 -column 0 +grid .buttons.butimg5 -row 6 -column 0 +grid .buttons.butimg6 -row 7 -column 0 +grid .buttons.b02 -row 2 -column 1 +grid .buttons.b03 -row 3 -column 1 +grid .buttons.b05 -row 4 -column 1 +grid .buttons.b07 -row 5 -column 1 +grid .buttons.b09 -row 6 -column 1 +grid .buttons.b11 -row 7 -column 1 +grid .buttons.b89 -row 2 -column 2 +grid .buttons.b04 -row 3 -column 2 +grid .buttons.b06 -row 4 -column 2 +grid .buttons.b08 -row 5 -column 2 +grid .buttons.b10 -row 6 -column 2 +grid .buttons.b12 -row 7 -column 2 +grid .buttons.butimg7 -row 3 -column 3 +grid .buttons.butimg8 -row 4 -column 3 +grid .buttons.butimg9 -row 5 -column 3 +grid .buttons.butimg10 -row 6 -column 3 +grid .buttons.butimg11 -row 7 -column 3 + +grid .sep2 -row 4 -column 0 +grid .bottom -row 5 -column 0 +grid .bottom.b13 -row 0 -column 0 +grid .bottom.b14 -row 0 -column 1 +grid .bottom.b15 -row 0 -column 2 + +proc refresh {} { + .buttons.advents configure -values [ concat ".. " [ exec ls -1 "GAMES/" ] ] +} + +proc ack_base {} { + set scaler [ .banner.scaler get ] + exec dosbox -scaler $scaler -conf dosbox.conf -noconsole -c "ack.bat -exit" & +} + +proc ackmod module { + global mouse_var + if { $module == "-r" } then { + set scaler [ .banner.scaler get ] + } else { + set scaler "hq2x" + } + if { $mouse_var == 1 && $module == "-r" } then { + set use_mouse "-mouse" + } else { + set use_mouse "" + } + set command [ concat "ackmod $module" [ \ + concat [ .buttons.advents get ] "$use_mouse" ] ] + exec dosbox -scaler $scaler -conf dosbox.conf -noconsole -c $command & +} + +proc game_dir {} { + if { [.buttons.advents get] != ".." } then { + set game [ .buttons.advents get ] + exec nautilus "GAMES/$game" & + } +} + +proc game_manual {} { exec evince "MANUAL.PDF" & } + +proc home_page {} { exec firefox "http://mozomedia.com/ack/" & } + +proc disable_buttons {} { + .buttons.b03 configure -state disabled + .buttons.b04 configure -state disabled + .buttons.b05 configure -state disabled + .buttons.b06 configure -state disabled + .buttons.b07 configure -state disabled + .buttons.b08 configure -state disabled + .buttons.b09 configure -state disabled + .buttons.b10 configure -state disabled + .buttons.b11 configure -state disabled + .buttons.b12 configure -state disabled + .bottom.b14 configure -state disabled +} + +proc enable_buttons {} { + .buttons.b03 configure -state normal + .buttons.b04 configure -state normal + .buttons.b05 configure -state normal + .buttons.b06 configure -state normal + .buttons.b07 configure -state normal + .buttons.b08 configure -state normal + .buttons.b09 configure -state normal + .buttons.b10 configure -state normal + .buttons.b11 configure -state normal + .buttons.b12 configure -state normal + .bottom.b14 configure -state normal +} + +wm resizable . false false +wm title . "ACK Launcher" +disable_buttons +set mouse_var 0 +cd "ACK" diff --git a/dosbox.conf b/dosbox.conf new file mode 100644 index 0000000..f46fb3a --- /dev/null +++ b/dosbox.conf @@ -0,0 +1,196 @@ +# This is the configurationfile for DOSBox 0.72. +# Lines starting with a # are commentlines. +# They are used to (briefly) document the effect of each option. + +[sdl] +# fullscreen -- Start dosbox directly in fullscreen. +# fulldouble -- Use double buffering in fullscreen. +# fullresolution -- What resolution to use for fullscreen: original or fixed size (e.g. 1024x768). +# windowresolution -- Scale the window to this size IF the output device supports hardware scaling. +# output -- What to use for output: surface,overlay,opengl,openglnb,ddraw. +# autolock -- Mouse will automatically lock, if you click on the screen. +# sensitiviy -- Mouse sensitivity. +# waitonerror -- Wait before closing the console if dosbox has an error. +# priority -- Priority levels for dosbox: lowest,lower,normal,higher,highest,pause (when not focussed). +# Second entry behind the comma is for when dosbox is not focused/minimized. +# mapperfile -- File used to load/save the key/event mappings from. +# usescancodes -- Avoid usage of symkeys, might not work on all operating systems. + +fullscreen=false +fulldouble=true +fullresolution=original +windowresolution=original +output=surface +autolock=true +sensitivity=100 +waitonerror=true +priority=higher,pause +mapperfile=mapper.txt +usescancodes=false + +[dosbox] +# language -- Select another language file. +# memsize -- Amount of memory DOSBox has in megabytes. +# machine -- The type of machine tries to emulate:hercules,cga,tandy,pcjr,vga. +# captures -- Directory where things like wave,midi,screenshot get captured. + +language= +machine=vga +captures=capture +memsize=16 + +[render] +# frameskip -- How many frames DOSBox skips before drawing one. +# aspect -- Do aspect correction, if your output method doesn't support scaling this can slow things down!. +# scaler -- Scaler used to enlarge/enhance low resolution modes. +# Supported are none,normal2x,normal3x,advmame2x,advmame3x,hq2x,hq3x, +# 2xsai,super2xsai,supereagle,advinterp2x,advinterp3x, +# tv2x,tv3x,rgb2x,rgb3x,scan2x,scan3x. +# If forced is appended (like scaler=hq2x forced), the scaler will be used +# even if the result might not be desired. + +frameskip=0 +aspect=true +scaler=hq3x + +[cpu] +# core -- CPU Core used in emulation: normal,simple,dynamic,auto. +# auto switches from normal to dynamic if appropriate. +# cycles -- Amount of instructions DOSBox tries to emulate each millisecond. +# Setting this value too high results in sound dropouts and lags. +# You can also let DOSBox guess the correct value by setting it to max. +# The default setting (auto) switches to max if appropriate. +# cycleup -- Amount of cycles to increase/decrease with keycombo. +# cycledown Setting it lower than 100 will be a percentage. + +core=auto +cycles=9000 +cycleup=500 +cycledown=20 + +[mixer] +# nosound -- Enable silent mode, sound is still emulated though. +# rate -- Mixer sample rate, setting any devices higher than this will +# probably lower their sound quality. +# blocksize -- Mixer block size, larger blocks might help sound stuttering +# but sound will also be more lagged. +# prebuffer -- How many milliseconds of data to keep on top of the blocksize. + +nosound=false +rate=22050 +blocksize=1024 +prebuffer=1000 + +[midi] +# mpu401 -- Type of MPU-401 to emulate: none, uart or intelligent. +# device -- Device that will receive the MIDI data from MPU-401. +# This can be default,alsa,oss,win32,coreaudio,none. +# config -- Special configuration options for the device. In Windows put +# the id of the device you want to use. See README for details. + +mpu401=intelligent +device=default +config= + +[sblaster] +# sbtype -- Type of sblaster to emulate:none,sb1,sb2,sbpro1,sbpro2,sb16. +# sbbase,irq,dma,hdma -- The IO/IRQ/DMA/High DMA address of the soundblaster. +# mixer -- Allow the soundblaster mixer to modify the DOSBox mixer. +# oplmode -- Type of OPL emulation: auto,cms,opl2,dualopl2,opl3. +# On auto the mode is determined by sblaster type. +# All OPL modes are 'Adlib', except for CMS. +# oplrate -- Sample rate of OPL music emulation. + +sbtype=sbpro1 +sbbase=220 +irq=5 +dma=1 + +[gus] +# gus -- Enable the Gravis Ultrasound emulation. +# gusbase,irq1,irq2,dma1,dma2 -- The IO/IRQ/DMA addresses of the +# Gravis Ultrasound. (Same IRQ's and DMA's are OK.) +# gusrate -- Sample rate of Ultrasound emulation. +# ultradir -- Path to Ultrasound directory. In this directory +# there should be a MIDI directory that contains +# the patch files for GUS playback. Patch sets used +# with Timidity should work fine. + +gus=true +gusrate=22050 +gusbase=240 +irq1=5 +irq2=5 +dma1=3 +dma2=3 +ultradir=C:\ULTRASND + +[speaker] +# pcspeaker -- Enable PC-Speaker emulation. +# pcrate -- Sample rate of the PC-Speaker sound generation. +# tandy -- Enable Tandy Sound System emulation (off,on,auto). +# For auto Tandysound emulation is present only if machine is set to tandy. +# tandyrate -- Sample rate of the Tandy 3-Voice generation. +# disney -- Enable Disney Sound Source emulation. Covox Voice Master and Speech Thing compatible. + +pcspeaker=true +pcrate=22050 +tandy=auto +tandyrate=22050 +disney=true + +[joystick] +# joysticktype -- Type of joystick to emulate: auto (default), none, +# 2axis (supports two joysticks, +# 4axis (supports one joystick, first joystick used), +# 4axis_2 (supports one joystick, second joystick used), +# fcs (Thrustmaster), ch (CH Flightstick). +# none disables joystick emulation. +# auto chooses emulation depending on real joystick(s). +# timed -- enable timed intervals for axis. (false is old style behaviour). +# autofire -- continuously fires as long as you keep the button pressed. +# swap34 -- swap the 3rd and the 4th axis. can be useful for certain joysticks. +# buttonwrap -- enable button wrapping at the number of emulated buttons. + +joysticktype=auto +timed=true +autofire=false +swap34=false +buttonwrap=true + +[serial] +# serial1-4 -- set type of device connected to com port. +# Can be disabled, dummy, modem, nullmodem, directserial. +# Additional parameters must be in the same line in the form of +# parameter:value. Parameter for all types is irq. +# for directserial: realport (required), rxdelay (optional). +# for modem: listenport (optional). +# for nullmodem: server, rxdelay, txdelay, telnet, usedtr, +# transparent, port, inhsocket (all optional). +# Example: serial1=modem listenport:5000 + +serial1=dummy +serial2=dummy +serial3=disabled +serial4=disabled + +[dos] +# xms -- Enable XMS support. +# ems -- Enable EMS support. +# umb -- Enable UMB support. +# keyboardlayout -- Language code of the keyboard layout (or none). + +xms=true +ems=true +umb=true +keyboardlayout=none + +[ipx] +# ipx -- Enable ipx over UDP/IP emulation. + +ipx=false + +[autoexec] +# Lines in this section will be run at startup. +mount c ./ +c: diff --git a/launcher_icons/banner1.gif b/launcher_icons/banner1.gif new file mode 100644 index 0000000000000000000000000000000000000000..605c934cee622a6d841d863340995ae3bd55f518 GIT binary patch literal 6334 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%0DuhZllK z(1MObd0?kZW)dn6e-BkvOB;cCI8!QQJTykv3rV-G>9pp-x&=gT%m&AI@o;La0Dm5n zrRu7cW4^xzukoc*aEKP+g1-g8mrTkz9zf4Ogq)WxAq*!;9E34%gtQsPMD7InLC$ThYdizjFbqsR<=O!n@3v}I znXDUa6~zfvh{{|nGKTA|PYW?tOlLTn6JNQ(`=x5-MH$~4R+$L!sprGA?yy*bYrEfr zM~b8*j*FIDj;6n)G!1qV*LQwF^kDkDG14 zPKDzbCkUSh^d|+FBjUsOa*+tSHT_|eIPKp4m5 z4&Ad5GFwDBY6~Brl2Pt&>}M|Jwu^|~-_`a|pTOjq8+UENouCV}Oe)eeA9CjUp`vHR zWoN_H^}qg`iVX4```OnsHki^&r9Ht&T{k|e#%@r5{JpY*>iM?4NWl!iyCbtFwmklC zv$Y6pVVvB=NO~5*fqzNO%mMWr+(iKvOXsAzM{oMY>^<+#25>wN8^pl|`Cx97&vOk+jliE$#BM3}k_cPp12P%$aCu^y6a`;H-+LOioe@rs%KGzWD3X(5 zI-gK(6tV1nvTZcf#ua8%0&}|#-|rkB;ume}0rsn?kV`yx;EZ;&#M+5=HOd8_oAPb`6ti#eznEy_N`0kcT|C&2vC= z@;#zQ(V=E+w8&C{pP*>NGVJp!>>o`-kO+_fuE~Q`g@vjdNJ9jrGV{`y(WWU;nGuFG z5lFd9{3MK9B`IhLQ!N^@TNy}*161Y601k9eid6T3enh0qRvm-8$D;&*{3|ELQzpvO zD#^X?b_~Ws0uFdihg2<4!EC6C4Jio-EjjB2a}_C@lcORd01d>L@wO-Xpp!-DlQKx@ zYr+){_*+iE3BUmnVwetjaKNODXzQO5-yLIe|A^X7Y=lMfi6~bqDP($+|C48aF$Fm! zfFIx>x85hxd-$h~${sL+tLdmSK6@vG+{eNVwmxyjRY!(6!G18@;o*(O9I!+`8~49_ zKMG7;h6$1GTBIwkQ3}(e`6@d(5WrDM2s8<9Du==HtM+}4`J4m@CD>pV){KRIAtbH{ zi1mB_$Tp7hr6a63FiQ^DXaQr;FPMHwIGtRK_koDQ3okf|tI|yi^oy50lC0@)?{N4A z4y*?S5HByH#$x@}JHk*h7#FUXo@imsK53(I>28Ffwgu7n2E_F!o!^-hc_S7sgo)sR zqJO!w;|V6*;1?Xj3ARE=>L08AMP3-t%LJQUG3ioNoV=_j$8ac`g9Neu9ha4QQu1~R zcrR1guCNp8jvLtUU`AOU^X#Yk>iPU5ecjoIpS$1Z5FeBfKkkEvY)rcA7Ipk!lI0&Y zs4-X^I2yj=l(lB^75{Pv&l=Mx(?yoIlC=$1bMC} zoTH1@(*v3eUcnB8!)CK!+MqryvZ*HZPybH|W&k}S%Bx%=>S#2YnbfO&yO`y_cTuY7 zZKL?HGBgO+T=EJQ$0L4_?jBMvDSOo*h-$Lz@tzm${?qyn^vlJqh06cR>~4t`v*>l2&K|=g{X@{sQ227 zA>2Q{nr%R(O{k_?AnXNd-(x7XTS!=6Wup*0^>w?RJw-25OUtWc2~w*pUB_?qB3%bs z65WogpgqkA-_4?JEx-#(JGcJVDJkvj;&rlKciP2XclDyV6kOlc+UXTbCeLbcd`WKA zB+?MYwq5JGu0~6I7xBHy!GbPFC+glIO6U~D@rg>rLc8i~+NSs9Q|)-`5GA#EQjjlR zZI-erRyp14Cdv2ag0Ir4_c!^}ZpM41Z;!m;w2%l-CDTz z!-UjN?HlY>!rnle1(}f~Dpx~i9eUql`lT)}^ul_qWc)C(-|EzugynXwlh5q{4 s{)hGhb6&{jUdZ1{29^&YUtApU;0(yAgRAy~Ylj9ur4Q~Wk%0aG0UY1xp#T5? literal 0 HcmV?d00001 diff --git a/launcher_icons/configure.gif b/launcher_icons/configure.gif new file mode 100644 index 0000000000000000000000000000000000000000..0c981dfaa21603c28b05bb2ae212d247d4279b1d GIT binary patch literal 1498 zcmeH`{Zo<$0LLF5Odi1O0To}M4V9HPEiDuUIv?Z>86{t8UkJYbzx)Tb89>t{1)4{)PRz?+>5fzCV1vci-*B zqP+Y%Ccp%i006|{h#-guNyG>UfJhJoaoCx>+>E?U>`Z=cPHrwgXG>0g4wsw5&V36W zo6F;JxgXPF_tN8b(HOGC=tg>sES`QOjxNj~9AE*mRC)~~wSk^2$lWO3vI))RAiM$& z2Vv(6cw8Y`Ad-}qR!d5ylF~A9Wo5ZU{E?(wx~pubv`ku4Eveokt*n+vr8{dXYNYzr zt2!tV3JRo;j@87)tTA(0CU%;EgDBEfJ?(zwNssa5A%~^G-Y4(rKGNSK@3Xe_^|d>k zM?J zB0SwX_wdNX6mvTdTpxiUaZ@$?Q>cz7Q5Z2TLACPF_1XP=^oX>K%T45vIr zEn!k3tfi3PS`rZ90*J7&mX*|CEBL9KU&Y38;&8 zcL8Vu6?gm#VwJn?MDNWKjR^&ca128l5WRH}@v0f&VUiY3DU8y=Eg(tFnja=>AW#7i zk--Z2cjT?lfFc!xswQjGEGm*lM;c+Oe}L6YonlIXhqEU9a?wVrj_itV5t59olo8^E zvl~WJG*P#Fov8?bE2OZGjgm$juY@UT`!f~O;QW3xSrtot1d?=nZr~QNSXmMN&1EXU z>V%)--(xf*MZwikj{wE#sVfkR52y&gCeuMsv-Jk@V`$wmI7CcqRuIUim`~AkPL>J^ c(H5^rqxe}ukSGrZ17xSMDFCwv5d`4<1D6-!?*IS* literal 0 HcmV?d00001 diff --git a/launcher_icons/create.gif b/launcher_icons/create.gif new file mode 100644 index 0000000000000000000000000000000000000000..05e68b58936c44bc59525b9a1acc99843e9404d5 GIT binary patch literal 1639 zcmdUu`BM{j0L8zXi%kLv*<6IMAqgQICPp-YWP`XsxKtp9KnWlPr3zF_7!i=6HGv>O zP(Z*Ik5NRhptaayJ!cv~6kDmc^}s0}okFn=Dq^iImg#@d_tTqsGoN`sycd@ctJUR- zff&32fB+F_5Cl8`fk2}}G!6hl004VF-~oX8`mj+{CVFfl*}Xj0SM-aB&cW}ruG-f z6sVLhkqV_!kvs?lYkS%X!4+=y_KFPE z;7dazL&LRr2;iCk&jP$HU_p#JG%`FaDl{TGJUkMRH^P*UnbZQn`2;YmL{cS8+6vq& z0J{{hKE*NI_p|)O#6+{%Y_V9Juv?8gwVv+Lh%js{z7s(_4tViec*5Nr-WQ(SHj%JR zz}+Jh?h%NaeI@N8s2ieoQJ`J|vCEy_$)+3@cGftR{H|ZP90;nn%2IE z(;UibU*cCIR&5KE)hXqzeuB10nZuxT#`)JJpxg2#)gSq7D<(lzRALoOt%ZmUR8l?Q z+W@5v&~^jjK8SFb2#yki&9=`U+73;2M=MKhZ{gIS3mzDe`C3!BVrZj4_s@Hd;j8 z`uE7=CqFQK31u_mkPO~|B3mcGA!}{y&d8D(_%X4wQ4!20)D3oCwC&YG6JuvKfvX1q zfpksM8OH%cLqqymv*QK{E0V{L-N1h(g-jHNoZx0p(TBcv$$GxZ(ra+PTQOW~Bkc|^n0;`WEg!5{ z_2_;~#Rp$!oR_*ar3-pm7iKRmcsbRB_nZc`#@h@7} znTsi@HpqeewH{D=W&(^2gdD&w=sR)IdnKpuW?E3l@9g9Va*mCdaIE9v;f-n|4u})u z#B6N8eVbq||9l1I*!pK?7b})yA2=@Xv|nIRfY{Ux_T?Tsk?)gvG>IJ8ae);4B|b<% zPj|%j>6-?InAmWkV$t`3=YjxY!0mLN%Qi?X%$j-_iS=Vsf^ktjC0S$xgJhny&+eI^ z&Yfh2kywtTaXH=nH2wXdmPS#zb%464#AZOE@FuyZW!h5(=tK9XRrD!GVSm6u7sT2q zmOwCOxqkhUtmXXls0*B}atqjCH6YO?#sM;R!mwdfQ~j=fXjNC!AlW;x*gy$zOxu%| zT{+e=>QOeD(l4$&Xs2){&Vf79V*1M)s~)w9#j1h>>G~5$Ib~|RczNrS7}m literal 0 HcmV?d00001 diff --git a/launcher_icons/font.gif b/launcher_icons/font.gif new file mode 100644 index 0000000000000000000000000000000000000000..95833584903123b2ee5ea197415cee55bdbde86a GIT binary patch literal 1597 zcmV-D2EzGANk%w1VITk?0Qdg@000010RaL60s{jB1Ox;H1qB8M1_uWR2nYxX2?+`c z3JVJh3=9kn4Gj(s4i66x5D*X%5fKs+5)%^>6ciK{6%`g178e&67#J8C85tTH8XFrM z92^`S9UUGX9v>ecARr(iAt53nA|oRsBqSsyB_$>%CMPE+C@3f?DJd!{Dl021EG#T7 zEiEoCE-x=HFfcGNF)=bSGBYzXG&D3dH8nOiHa9mnI5;>tIXOByIy*Z%JUl!-Jv}}? zK0iM{KtMo2K|w-7LPJACL_|bIMMXwNMn^|SNJvOYNl8jdN=r*iOiWBoO-)WtPESuy zP*6}&QBhJ-Qd3h?R8&+|RaI72R##V7SXfwDSy@_IT3cINTwGjTU0q&YUSD5dU|?Wj zVPRroVq;@tWMpJzWo2e&W@l$-XlQ6@X=!R|YHMq2Y;0_8ZEbFDZf|dIaBy&OadC2T za&vQYbaZreb#-=jc6WDoczAeud3kzzdV70&e0+R;eSLm@et&;|fPjF3fq{a8f`fyD zgoK2Jg@uNOhKGlTh=_=ZiHVAeii?YjjEszpjg5|uj*pLzkdTm(k&%*;l9Q8@l$4Z} zm6ev3mY0{8n3$NEnVFiJnwy)OoSdAUot>VZo}ZteprD|kp`oIpqNAguq@<*!rKP5( zrl+T;sHmu^si~@}s;jH3tgNi9t*x%EuCK4Ju&}VPv9YqUva_?Zw6wIfwY9dkwzs#p zxVX5vxw*Q!y1To(yu7@dCU$jHda z$;ryf%FD~k%*@Qq&CSlv&d<-!(9qD)(b3Y<($mw^)YR0~)z#M4*4Nk9*x1lt)=I7_<=;-L_>FMg~>g((4 z?Ck9A?d|UF?(gsK@bK{Q@$vHV^7Hfa^z`)g_4W4l_V@Sq`1ttw`T6?#`uqF){QUg= z{r&#_{{R2~A^8LV00000EC2ui03ZM$000R70I5`=Vr5E|DFUY$q!I;-lv1lstx9zY z6)K1kRh=ru%1RX|PO=P?qA=k=E38DV8imSLsZ^(n>_7N{<2va7rSoiBhaYse^=N@*#*r?_6BVs&4>C|3CW<5?w&DN_Lmm_ns06)95!1gug;8L^Zq z|Mp?2!qbWqe*UOnQPoN*0k8uEq}pp)6_wjl`sF)l@Jf|_{+>{|h%_@;0H#`*npmm| z$t!dF8UB|~Uuc}CFbi02Dph5rsyP0lx;;?wzJLAhh4!cKV=7bu0EB0iN>pnBtV)%o zf-uTId{;n$7=QirGes7puo7QHqNw7^C;}h{Qz~gqam7BVSuxlYQ0%jh6jGpaN@S^c zcS?d|siF!fr&uAyRQ}+jmT*{Lah(;FMTist#+~(-D->GsgcScQMw$~>IH6BJ1d-Aj z0R$KqVP2)Y)M6A_WWhufQ&80f6m8u!MJu1Yatccpox;i}B|?=7d0-C2))OxFMg>HZ zMP!ji6P-fQo)Trp8D)QQwhAf(8Fb)H2YK|F6jZE23PqN^qMs=>ouY~;sZ4>zT2(wT z)fG)(q3EZ{%_gFH|LB9-UjDG8GEjU3AQfK$CvkYiY#X7{Nu2LOqrYiMW6&^+L8g5gZ$jU0#y;LG8rG%EsC|E2J+hB@;3#qfBhQlu>2HzEEUNfHvqHFraIXvth(wCtg=!;tE~Xw vN|3ISQc8-Y*=4$E9jBjeEb5D;o*D&ZfjYcrp=Tk=-$4f_h literal 0 HcmV?d00001 diff --git a/launcher_icons/import.gif b/launcher_icons/import.gif new file mode 100644 index 0000000000000000000000000000000000000000..258f917df88a1ee85839499430ed1d6ab580536d GIT binary patch literal 1281 zcmV+c1^)U+Nk%w1VITk?0Qdg@000010RaL60s{jB1Ox;H1qB8M1_uWR2nYxX2?+`c z3JVJh3=9kn4Gj(s4i66x5D*X%5fKs+5)%^>6ciK{6%`g178e&67#J8C85tTH8XFrM z92^`S9UUGX9v>ecARr(iAt53nA|oRsBqSsyB_$>%CMPE+C@3f?DJd!{Dl021EG#T7 zEiEoCE-x=HFfcGNF)=bSGBYzXG&D3dH8nOiHa9mnI5;>tIXOByIy*Z%JUl!-Jv}}? zK0iM{KtMo2K|w-7LPJACL_|bIMMXwNMn^|SNJvOYNl8jdN=r*iOiWBoO-)WtPESuy zP*6}&QBhJ-Qd3h?R8&+|RaI72R##V7SXfwDSy@_IT3cINTwGjTU0q&YUSD5dU|?Wj zVPRroVq;@tWMpJzWo2e&W@l$-XlQ6@X=!R|YHMq2Y;0_8ZEbFDZf|dIaBy&OadC2T za&vQYbaZreb#-=jc6WDoczAeud3kzzdV70&e0+R;eSLm@et&;|fPjF3fq{a8f`fyD zgoK2Jg@uNOhKGlTh=_=ZiHVAeii?YjjEszpjg5|uj*pLzkdTm(k&%*;l9Q8@l$4Z} zm6ev3mY0{8n3$NEnVFiJnwy)OoSdAUot>VZo}ZteprD|kp`oIpqNAguq@<*!rKP5( zrl+T;sHmu^si~@}s;jH3tgNi9t*x%EuCK4Ju&}VPv9YqUva_?Zw6wIfwY9dkwzs#p zxVX5vxw*Q!y1To(yu7@dCU$jHda z$;ryf%FD~k%*@Qq&CSlv&d<-!(9qD)(b3Y<($mw^)YR0~)z#M4*4Nk9*x1lt)=I7_<=;-L_>FMg~>g((4 z?Ck9A?d|UF?(gsK@bK{Q@$vHV^7Hfa^z`)g_4W4l_V@Sq`1ttw`T6?#`uqF){QUg= z{r&#_{{R2~A^8LV00000EC2ui03ZM$000R700RUN0000%f&~*QTv%`b0D%SrBorVK zA;XIe4H_g+ut0z)PNFcG(jlPFV0X(C06lPOFh0-&N~3Kb|*p6J}kv*!~jQCv20 z0$@M@0#2Y1lqj&N)29#$i?3dWYUs}aL;Z*Q}-^>VF4&Qp$vZLojQ2M8u2gm zD?K-Ih+Gjsnt1qqcU*nR1@OcYOFSVFZ}q8nSz!oW(b5%=>1W`23b{wX5_&B`z7&35E%TqeX@K~rVq#85y12{lvjuggP(%$t&`3_SG!#iX rm1NaQc}_8AOE1NQ5CI3FHriYQK$x0FiT2f0LOo)*HbB%al!8S{-t*6_HB^wm?OU1;GmxJ%>wM zKon6?hZnRhh1Qu?L18ndMNs3GtuZXROBUvQkY!uS=Df|A>HdSg@B8q{_u>2WNxtiq z>m<@D4&Z>701zRF4gdtfGysPKz=8k|fQrlzO?pIyfK@13wk?C95k+bwky}OV3K2^q zVbu#LyVI7`3Mo2q&@N$cgOF+vF43k%>(d#!l`-`zV+`+0W@KGvq)r;8U&GLfSUW{= zT4|hK%4!fZ8ig?p5|(Bqrywh(K$fBwam&SAwUk#bO;Tm0lx3x=<*8+|)GhK=8hM6R z%-tnU*dgQYkSFhzFaNk;Q*lvYSy5rZX0)(aqehFjtG24tJ)qR>Z?_vPj`wZYBHyE!U=uGlsj)`9JW&q+r=xkbK{P|DeK^bb!cj2=(g*;^TO~syY1qr)n>Q4 z>{h$e=5pF?BQBT2X?HqZF6Z?T>-d<}?Q}ZaE{DV8bb7%5`7Z_%UX%Wv3qJ6}Cjk5o zWaw9gb^UQ$ zujT0n>edrU^aaI?St~#FmxK~l`HLyGD4)7?ZFhLWro!fTfme&U2qtNGI79PhgCTir zo%_J0yRcn(x$pj^Y;OIL7o_1ua)dez0rZSpyy;wt4Z7EMqB4=n`qeXx!!&t525HXx zlow7Wp}B-TMV0>A=f4%5J-A}hi%=D7=i7r~`!97xY;f1+hNR8_0y$Ljln}q})}r~~ zd*KjG+BJ*^^B+GWMeOll3X~e>_rXkzLgV$Fxt9Z%W_uBMb0aXBmA6jWV7AfVZO_88 z;H2Z|y=gc;F5shv3hw)us*hgJ1>r3QHI=Ccxx9XP4y`%0lS81z>zoQW#V>`;S$DYEeVNW)2`%&{9RJInYp`LGq zW}~8}na@T-k@+0n04jt5X%3kVeqizvNC~40f^ldZtAW{al0s>wuh|Jgbr_(ry-WhF zu5NKAywKx^$fSewweX{j;R!bd^f^c|vd^GkvW1Kc8Y%tkaX4KPu1xy#vjE~Ndmw9= zg=)W35QETw&v;rdRC=J%c>*Ev(rZ9o&Wgo|l;eItqfho*5(koV>bb}0VMwk1=z@=2 zX;|FzKyk>8(bM54_j#wWZ{wTOkbYJ0wMNAB%_jG@o#?Vj%wp(45|w<;>O|%5RnG^8 zRaD*q4>@xEWZwdsnmo|W9Yh{(;GaeRsOHYCh*85lbz1)Skb2|vO;Mo8eB=FbFi`Ja zg!yxd`Ikgyo;N?HfU|g#F0S6s(DqxmP$(+IVux6&6gp2@fz0lx#T`IuL-ibAbZH(=ZcTg?K*;c$_rKznl;bx9%O{F|4(N-DLs$#ZE6>SRn zGfK&Jnff16&9kf?U^Q?L1HOUg*GbSvK~)V*9W1qju~djR^2yB<(S!t?ipPY47>%74kS~(haS0h? z1ut;2Q6<%vfkzEgpOGFkvWGGxhwo+jbLbwkJiI~@E~by<(?fam!BuQup141cjjmMm z7P0*+xuN2FJ9LJyzMxZI?APWW$TSBsmvv<4hYY%2O;&G~A&@T*+v!6VX|z;%WDPg4 zMinX7cRZx`uQT}8>-|mI_LlTOv);G;9{)C7(1RjA5bnpY5Q&C>=mGhD!25uVBIpnZ zh7e>NMNSKl35<9NLCzxBg}?tFV_e+q;uACg#9i3>*`O@D`b;gs+8izeX{FS$16 zj|6(uMV^a;>wo;%>O1H8b79%)!_$7cPO)sd-O*b?}9E;XZ0 zUvq^`x9$A$@~y-y)}ylrEB9>BXC5zT?li`pB<3y4)u?|$%F@yV-crXBOf8rbLW0+G*6f8{*PtP6yboEzTd zpS-y9)_m=61bC^+6ZMhF(msRM+;BH_Z2NaRzO60E|LiRLRyPV+6*axu42lv6xj?h; zd$GE3fM*J2JGnfys;U0hV}eYV^?6yg!ve^_#74e)zj5rAX4tbogs-4Ur3)do_1F(rRp5kBz8mYluyl?54QW2IS;a(qs6UwgfG%U+~Lh zrsg=Wwqf5sq-R6DpG^VFoMPMgp-+r6@8u>?h}EMYsM!qi8ZPcll2%Mk3!uR})8xL2 zXfE0>m%aSfogdzP`E8&coSY)Eh5Ve-tX_xqsTy=#-&0YGNXxkqMD$5l^_;TFdPI?9 zJ)jL}+_6y$+Un5iQ|er~R-px^5XAc_(zz2_l_6&Nrz4KECoN+Z&_~?waF3hPe@se+ zWeM%|IpeJ56|wbFrgL=LAB67e3OkpriX;4q--E;}OM^f0zAy^^T1aF%-|wB#SIL`s zH-&OB|}5D`U$I&)weGp&2!O>BWunKTjLPqbo1nb27^|dxCiNhLch6 zc9n{6e&Gf*ZxXGvz2+&n#1F=MBR`%0Jp88Njo*Ix??1g%xmlGgla?hPeWLBsL&I$m zXU>w*Gh*Adr>=-|r2n3r%UlC{%8cRJJmx=Nm(3@%^B?j`a!MBd)xMfWTsbZ2C2+G` IgdkA-KM+i|`2YX_ literal 0 HcmV?d00001 diff --git a/launcher_icons/messages.gif b/launcher_icons/messages.gif new file mode 100644 index 0000000000000000000000000000000000000000..5ecd3f390c22b0bc5fb9c7d8150a9e5532d6aeac GIT binary patch literal 1813 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 VBqI~g+XSlb2t9gxFa&{=zX5pN*17-y literal 0 HcmV?d00001 diff --git a/launcher_icons/people.gif b/launcher_icons/people.gif new file mode 100644 index 0000000000000000000000000000000000000000..88f478e27696f9f0459c5da901bee65785281c67 GIT binary patch literal 1744 zcmdUu=~J2q0>)onP*G?KDnj%nav4z$!2v`Lg%?mjNDP9a0&^7Np+A*25>+Eh?Ow%^qcAZW8U+iz@d7iJ&mtV22 zNSyDY02JUS06>5s76E{00EtLIBQP=X2}uYb4FDi=3IstE0HCEM(aBKmRzez;kU}Am zX%LMDWzo~gWcs%BY&x0F+_pUGVgg;Js91=1QBLFO@l!8I2`b zEjt*^r5ty;Xm^?XfJN4B%V)_{0ud}1z=C|GRH9TBsNq7bU8WK$)N++7uS6l$DrF^F zwMtc@R>3-0tJi2W`Vw`CMz1&QFgkX?#)_Q=Q>kT_$!4$GW6*d^ih7gr6`QWP3O-z; z_EwjB9kwRB+2*#t?%e5i+3TG4YMawz^X{wmI6NM&*X^pU^EEWKH24nrS`M|fkC~HB zS(1-eCcSA*9JQpLEZ;g-nR?m=oh<`r%Mfo@#hfimn6BP(!H&IT0VgbkDOY-6*Y*J` zqqBlDP{|psU>vt@KW(E8Rj^0wtP#8LOck%onbYfJA9D&m`a|Wl27CXZ+Ofm#k=8w3 ztu4on_&VBNzv1>SG`g1R8b5dK{?c84^R?P=puz8Nf8*%EGsEq#wg*~UI|4`iulWOQ z!Or$jUw?iI5g1L^&+Fk!XpC%1L5JLBS%MuhlaK(O&ClJRA2ysABdvdNpZ^US{kHYtIAt+iG5tfT zIC48YX-vreWj~ez2eTNZ@CwE7APSu1E#qj68yQB#)Av7}MFcU#bn_-VGv$+90C`ff zv3{?kIMcZJ{kKmpK3X!yp}YS3&r=5!09iJ@s%O0womlcbz0?JOc{7n93is=y{=IRA zA7fHxBdd3^t*!jZ(0Dv9fMQLozzL~59+v-)O1F0V>G7eWw7u`#D@xt%8}6k>pNs;? zEZlWCCN;Wx7ZK-7)X}?{53l2mf~L+SJ+!K2yutMO9s2!6Axs)$qMtpoZ}EC!P@H(1 zGK{8aPj!glTZx8!xwk!cKURd2*}tL;>c$=@}_zyjTf5kau!f6m~7oj)M}!3Moi#K zJ&*bjPtR2JQjRgeZYYAv{e*WF)!czSPAgTSS$`9_fkk}W{7Zaw;_alS2bbcwAN(7> z3&e>3G#|^oH?0JZ;Biw#Y2B2L+`OXf=3H3`mds()YoMFW3=t9He`P3eDiR-wS4EXK zx9!0?FSlZOYjCmvUn}_Za|BSdmDS_=zC%&N+MF{S-Q6h=;IINmGY*|@|&$NaVsG%Q(T?9ubwTl?@*y8`9 zQFXBbmBM%zj^B^0Jwfnb@oK!|`REccUwu(iQ&=7eB(OdX`(yFEiTlKvmnVsF^{+&( z65MqQU&rc_j>21#%q#g0hoK?l_=|MrKF;B7eDmov#^^0CUxC^6xC+ o4GFO2&(RMt>@WYmoT34!H%LpfIf`e$T!o3xR`LIdK>^bL0Wq33V*mgE literal 0 HcmV?d00001 diff --git a/launcher_icons/run.gif b/launcher_icons/run.gif new file mode 100644 index 0000000000000000000000000000000000000000..8b5773de8c756ab7e0dee4639e626c7b6e859399 GIT binary patch literal 1611 zcmchW`CHO=0DwPVV5lG}2uKE{KxV0+xYE)sypkFwm+R0HjaG`+l-5k`$qSjbmI5Mp za0sX%24>}^TY|^TYO`j?svlaL&okRqOSi{u`Rw>3_Wtnx`u_B$@7W!{BQFGmfZqXt z;4t6^0LBmC03ZW^^#efxAQZrTGtrn#KuiIoG(gFK2m%aF05b|$vgra+g%VwnS zOcxi;mK3|oOFYtw>jkHLHAv72V0si<>yOu<3IA9f6xc;rr^5#;DKHD?6ovex_cWe)9+#J@zj6BBz zCMvMefqBbDT@|(GwAWxE+FlBG=Aniq-a}_7mYRL%Q&Sar+&Wp-tIX`xjLbjzhko0i z^-7ri7hk+4$Xh+IOV(4Bd!aI`vpQS9|5U>PNssinqOd@nU*29SvPg4{Rfh*M3ynF) zEuvyePGN6ag*oZ8CA-|3TjDw@F&9Xz;=;b;@7Scr`i~Y4l!=Xs{o1SLjm^2P4f?Z$ z_BLXtn$)Agcj(r2cQO?XiSni$&9#Z=TVh(}EM+rGp{BPf8R|A#M?0fK6{*&S>U*}S zRICdf$f0`gp|gmg7NVso*jkHlHUj4d;9?tO?m}6+fxU-h=pi^dLQUQ4l$OA5D@AA8 zpcy1|4Xp396S`fb4j1FRIlies?wmd0{LrQ@6SZqFLGFA*;iR=Ww`iR7?qP)0g6i#s zY-S&u8DX`d%mZM+=3^funoNO4J2X59SzScqm5qi=8Hx@;U3-$;p_6~4x;CmE|IGM_ z#d)dUadp%~fBt`?9Oc-P_|C>7TZm++*EiQ;w?>hH=lQmp!$!b2|5o-aTjX zOoIQ5&{f2LsmOo*?-Rg#4V+x^G@?n-N5*9Pej~l!iBLDKN*eK-)BxP{&_gCt|#|hAdhZb_eNX&E%@^6X|3Ooi|foNq*4G)V>gXm4jblp`tF` z%%9upPoI}>aLu-PZA5d~b8P*xY@Wa4uPD@&t za`6Oro06N4^m;6LNn;|v&ex`RX9@NYvP9+A!#YpEIK=gdlNh{KVhoQ{sRW9UwOZe& zK61<}@elsoc%w8RUG$_j_BM%+2y1{ zQ1(sZ*o!)>9KAQk0ByfLFHXVi;(k*Qh6o7YM8khIrC?|uJ%(S7CPxDh>Cc`VVZZK1 z1hRawD1-NsVG^_R7p}v1tAEHc#Ns@vABh9l=}nq40Ur~$AcmuPzZ+7}tl8*EU*_O^ zV^D69ar(g_UQ0w^T8`(fkslwPg)h+F%Kix>F2ypxzWpqxKEhvgfK|M}qfu7;MCmm# jmv?>#;vbLhLq}bI^TsXsNRjY|`lpFrUwHf=2qgRs$xd;M literal 0 HcmV?d00001 diff --git a/launcher_icons/tile.gif b/launcher_icons/tile.gif new file mode 100644 index 0000000000000000000000000000000000000000..4b336e0f41b527a26f96e6ff49ec8dbbca376efd GIT binary patch literal 1626 zcmeH`{ZrC+0LMSyFNh#SfRHFSfgp3IH?8cfxdJ5=1p&XH2;}gg;RBYIrfxp)B$5xE zk(r`(R6dZ_goSU==30R;d$03ZNB3<@A|{zbqAAk0W5rBWzCf2#cT8jc{P^jt@+9su@OO!)9zLs{>pK;Wm z=As6=sMOY=pkoaGlOc=_2KV?!-1b1Y2ZH)x^m#0^jm7L>e_{&@ZwQODaibbH%iqe< zR+Exe<;c8Jxr}I*RLF9MZbhqKP}e-IRbUMO zq|cLjn7@s)D_M-rP2IEwMXtZk=I0VOzI)*0h3{(DXHeD;|G0Jc71OIp`;?8jegA^P zeaYB2)CT80(t%+ago{UE<@{bVd;;=h{-Bu$kGi5S5F>(yfe-Pc*kZ3~{>8&V)c3v3 z!_j-6ekZ6>@37vSp+%)WNQ6+p5^G-|aayOREq-*?%Au>?SRt0kPU{=HZ@b*!w9h;r z%&C`I&_s^ZCCtA%N4Qh%eS%MRd(r+Mt8XO)zrIIKj9dKkQV5UH6ba*k^1Ln_PhWC_ z5=t=1Xia3$9>%az(kvNZzoyK2UpGOp2#42@x5J} zOSZYlBI+q0at8C|PmBWFpeVrTVgMFFHK)@XA4 zEC>sg7wx~zi}~yon!2KQ)dd(+i%MK-o5Fq5kRK0DvL zt!qhL)}MTjhhd_uxQVR!QvhU=JEqjq#eATbpL zlL@REY^no5Rg;eO%`tPg$0LVX@%V7BTVT3#nTBQZ#-p$> z6yqFwa45#20g|RZF>D?R^h>|EdlZ*hA9