Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorolpc <olpc@xo-11-D4-33.localdomain>2009-05-18 20:47:22 (GMT)
committer olpc <olpc@xo-11-D4-33.localdomain>2009-05-18 20:47:22 (GMT)
commit4843a3c4aabe161f28bdb8ad4d3b0a3b386a4b7c (patch)
tree47707b83f26c9eae1472dfa39a8176a47bfbdc6b
Initial import of Produce Puzzle into GitHEADmaster
-rwxr-xr-xactivity/activity-producepuzzle.svg101
-rwxr-xr-xactivity/activity.info8
-rwxr-xr-xactivity/icon-producepuzzle.svg101
-rwxr-xr-xactivity/strawberry.svg~101
-rwxr-xr-xbin/launcher3
-rwxr-xr-xgraphics/apple.pngbin0 -> 4118 bytes
-rwxr-xr-xgraphics/bananas.pngbin0 -> 5300 bytes
-rwxr-xr-xgraphics/banner.pngbin0 -> 16651 bytes
-rwxr-xr-xgraphics/kiwi.pngbin0 -> 5584 bytes
-rwxr-xr-xgraphics/mango.pngbin0 -> 5175 bytes
-rwxr-xr-xgraphics/orange.pngbin0 -> 4885 bytes
-rwxr-xr-xgraphics/pear.pngbin0 -> 5080 bytes
-rwxr-xr-xgraphics/plum.pngbin0 -> 5174 bytes
-rwxr-xr-xgraphics/ppicon.pngbin0 -> 3342 bytes
-rwxr-xr-xgraphics/ppicon.svg68
-rwxr-xr-xgraphics/strawberry.pngbin0 -> 4574 bytes
-rwxr-xr-xgraphics/watermelon.pngbin0 -> 4471 bytes
-rwxr-xr-xicons/3x3.svg94
-rwxr-xr-xicons/4x4.svg122
-rwxr-xr-xicons/5x5.svg158
-rwxr-xr-xicons/6x6.svg202
-rwxr-xr-xicons/7x7.svg254
-rwxr-xr-xicons/8x8.svg318
-rwxr-xr-xicons/9x9.svg382
-rwxr-xr-xicons/easy-level.svg72
-rwxr-xr-xicons/edit-redo.svg16
-rwxr-xr-xicons/edit-undo.svg15
-rwxr-xr-xicons/hard-level.svg128
-rwxr-xr-xicons/help.svg9
-rwxr-xr-xicons/medium-level.svg106
-rwxr-xr-xicons/new-game.svg14
-rwxr-xr-xicons/replay-game.svg15
-rwxr-xr-xmanifest7
-rwxr-xr-xppactivity.py177
-rwxr-xr-xppgame.py352
-rwxr-xr-xsetup.py12
-rwxr-xr-xsounds/background_music.wavbin0 -> 2834368 bytes
-rwxr-xr-xsounds/clapping.wavbin0 -> 94086 bytes
-rwxr-xr-xsounds/doh.wavbin0 -> 6108 bytes
-rwxr-xr-xsounds/oriental_gong.wavbin0 -> 13590 bytes
40 files changed, 2835 insertions, 0 deletions
diff --git a/activity/activity-producepuzzle.svg b/activity/activity-producepuzzle.svg
new file mode 100755
index 0000000..377af1d
--- /dev/null
+++ b/activity/activity-producepuzzle.svg
@@ -0,0 +1,101 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ version="1.0"
+ width="50"
+ height="50"
+ id="svg2542">
+ <defs
+ id="defs2545" />
+ <image
+ xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAYAAAAeP4ixAAAACXBIWXMAAAsTAAALEwEAmpwYAAAK
+TWlDQ1BQaG90b3Nob3AgSUNDIHByb2ZpbGUAAHjanVN3WJP3Fj7f92UPVkLY8LGXbIEAIiOsCMgQ
+WaIQkgBhhBASQMWFiApWFBURnEhVxILVCkidiOKgKLhnQYqIWotVXDjuH9yntX167+3t+9f7vOec
+5/zOec8PgBESJpHmomoAOVKFPDrYH49PSMTJvYACFUjgBCAQ5svCZwXFAADwA3l4fnSwP/wBr28A
+AgBw1S4kEsfh/4O6UCZXACCRAOAiEucLAZBSAMguVMgUAMgYALBTs2QKAJQAAGx5fEIiAKoNAOz0
+ST4FANipk9wXANiiHKkIAI0BAJkoRyQCQLsAYFWBUiwCwMIAoKxAIi4EwK4BgFm2MkcCgL0FAHaO
+WJAPQGAAgJlCLMwAIDgCAEMeE80DIEwDoDDSv+CpX3CFuEgBAMDLlc2XS9IzFLiV0Bp38vDg4iHi
+wmyxQmEXKRBmCeQinJebIxNI5wNMzgwAABr50cH+OD+Q5+bk4eZm52zv9MWi/mvwbyI+IfHf/ryM
+AgQAEE7P79pf5eXWA3DHAbB1v2upWwDaVgBo3/ldM9sJoFoK0Hr5i3k4/EAenqFQyDwdHAoLC+0l
+YqG9MOOLPv8z4W/gi372/EAe/tt68ABxmkCZrcCjg/1xYW52rlKO58sEQjFu9+cj/seFf/2OKdHi
+NLFcLBWK8ViJuFAiTcd5uVKRRCHJleIS6X8y8R+W/QmTdw0ArIZPwE62B7XLbMB+7gECiw5Y0nYA
+QH7zLYwaC5EAEGc0Mnn3AACTv/mPQCsBAM2XpOMAALzoGFyolBdMxggAAESggSqwQQcMwRSswA6c
+wR28wBcCYQZEQAwkwDwQQgbkgBwKoRiWQRlUwDrYBLWwAxqgEZrhELTBMTgN5+ASXIHrcBcGYBie
+whi8hgkEQcgIE2EhOogRYo7YIs4IF5mOBCJhSDSSgKQg6YgUUSLFyHKkAqlCapFdSCPyLXIUOY1c
+QPqQ28ggMor8irxHMZSBslED1AJ1QLmoHxqKxqBz0XQ0D12AlqJr0Rq0Hj2AtqKn0UvodXQAfYqO
+Y4DRMQ5mjNlhXIyHRWCJWBomxxZj5Vg1Vo81Yx1YN3YVG8CeYe8IJAKLgBPsCF6EEMJsgpCQR1hM
+WEOoJewjtBK6CFcJg4Qxwicik6hPtCV6EvnEeGI6sZBYRqwm7iEeIZ4lXicOE1+TSCQOyZLkTgoh
+JZAySQtJa0jbSC2kU6Q+0hBpnEwm65Btyd7kCLKArCCXkbeQD5BPkvvJw+S3FDrFiOJMCaIkUqSU
+Eko1ZT/lBKWfMkKZoKpRzame1AiqiDqfWkltoHZQL1OHqRM0dZolzZsWQ8ukLaPV0JppZ2n3aC/p
+dLoJ3YMeRZfQl9Jr6Afp5+mD9HcMDYYNg8dIYigZaxl7GacYtxkvmUymBdOXmchUMNcyG5lnmA+Y
+b1VYKvYqfBWRyhKVOpVWlX6V56pUVXNVP9V5qgtUq1UPq15WfaZGVbNQ46kJ1Bar1akdVbupNq7O
+UndSj1DPUV+jvl/9gvpjDbKGhUaghkijVGO3xhmNIRbGMmXxWELWclYD6yxrmE1iW7L57Ex2Bfsb
+di97TFNDc6pmrGaRZp3mcc0BDsax4PA52ZxKziHODc57LQMtPy2x1mqtZq1+rTfaetq+2mLtcu0W
+7eva73VwnUCdLJ31Om0693UJuja6UbqFutt1z+o+02PreekJ9cr1Dund0Uf1bfSj9Rfq79bv0R83
+MDQINpAZbDE4Y/DMkGPoa5hpuNHwhOGoEctoupHEaKPRSaMnuCbuh2fjNXgXPmasbxxirDTeZdxr
+PGFiaTLbpMSkxeS+Kc2Ua5pmutG003TMzMgs3KzYrMnsjjnVnGueYb7ZvNv8jYWlRZzFSos2i8eW
+2pZ8ywWWTZb3rJhWPlZ5VvVW16xJ1lzrLOtt1ldsUBtXmwybOpvLtqitm63Edptt3xTiFI8p0in1
+U27aMez87ArsmuwG7Tn2YfYl9m32zx3MHBId1jt0O3xydHXMdmxwvOuk4TTDqcSpw+lXZxtnoXOd
+8zUXpkuQyxKXdpcXU22niqdun3rLleUa7rrStdP1o5u7m9yt2W3U3cw9xX2r+00umxvJXcM970H0
+8PdY4nHM452nm6fC85DnL152Xlle+70eT7OcJp7WMG3I28Rb4L3Le2A6Pj1l+s7pAz7GPgKfep+H
+vqa+It89viN+1n6Zfgf8nvs7+sv9j/i/4XnyFvFOBWABwQHlAb2BGoGzA2sDHwSZBKUHNQWNBbsG
+Lww+FUIMCQ1ZH3KTb8AX8hv5YzPcZyya0RXKCJ0VWhv6MMwmTB7WEY6GzwjfEH5vpvlM6cy2CIjg
+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
+q/UAAAAASUVORK5CYII=
+"
+ x="0"
+ y="0"
+ width="50"
+ height="50"
+ id="image2551" />
+</svg>
diff --git a/activity/activity.info b/activity/activity.info
new file mode 100755
index 0000000..8fd9855
--- /dev/null
+++ b/activity/activity.info
@@ -0,0 +1,8 @@
+[Activity]
+name = Produce Puzzle
+bundle_id = org.laptop.ProducePuzzleActivity
+class = ppactivity.ProducePuzzleActivity
+icon = activity-producepuzzle
+activity_version = 2
+host_version = 1
+show_launcher = yes
diff --git a/activity/icon-producepuzzle.svg b/activity/icon-producepuzzle.svg
new file mode 100755
index 0000000..377af1d
--- /dev/null
+++ b/activity/icon-producepuzzle.svg
@@ -0,0 +1,101 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ version="1.0"
+ width="50"
+ height="50"
+ id="svg2542">
+ <defs
+ id="defs2545" />
+ <image
+ xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAYAAAAeP4ixAAAACXBIWXMAAAsTAAALEwEAmpwYAAAK
+TWlDQ1BQaG90b3Nob3AgSUNDIHByb2ZpbGUAAHjanVN3WJP3Fj7f92UPVkLY8LGXbIEAIiOsCMgQ
+WaIQkgBhhBASQMWFiApWFBURnEhVxILVCkidiOKgKLhnQYqIWotVXDjuH9yntX167+3t+9f7vOec
+5/zOec8PgBESJpHmomoAOVKFPDrYH49PSMTJvYACFUjgBCAQ5svCZwXFAADwA3l4fnSwP/wBr28A
+AgBw1S4kEsfh/4O6UCZXACCRAOAiEucLAZBSAMguVMgUAMgYALBTs2QKAJQAAGx5fEIiAKoNAOz0
+ST4FANipk9wXANiiHKkIAI0BAJkoRyQCQLsAYFWBUiwCwMIAoKxAIi4EwK4BgFm2MkcCgL0FAHaO
+WJAPQGAAgJlCLMwAIDgCAEMeE80DIEwDoDDSv+CpX3CFuEgBAMDLlc2XS9IzFLiV0Bp38vDg4iHi
+wmyxQmEXKRBmCeQinJebIxNI5wNMzgwAABr50cH+OD+Q5+bk4eZm52zv9MWi/mvwbyI+IfHf/ryM
+AgQAEE7P79pf5eXWA3DHAbB1v2upWwDaVgBo3/ldM9sJoFoK0Hr5i3k4/EAenqFQyDwdHAoLC+0l
+YqG9MOOLPv8z4W/gi372/EAe/tt68ABxmkCZrcCjg/1xYW52rlKO58sEQjFu9+cj/seFf/2OKdHi
+NLFcLBWK8ViJuFAiTcd5uVKRRCHJleIS6X8y8R+W/QmTdw0ArIZPwE62B7XLbMB+7gECiw5Y0nYA
+QH7zLYwaC5EAEGc0Mnn3AACTv/mPQCsBAM2XpOMAALzoGFyolBdMxggAAESggSqwQQcMwRSswA6c
+wR28wBcCYQZEQAwkwDwQQgbkgBwKoRiWQRlUwDrYBLWwAxqgEZrhELTBMTgN5+ASXIHrcBcGYBie
+whi8hgkEQcgIE2EhOogRYo7YIs4IF5mOBCJhSDSSgKQg6YgUUSLFyHKkAqlCapFdSCPyLXIUOY1c
+QPqQ28ggMor8irxHMZSBslED1AJ1QLmoHxqKxqBz0XQ0D12AlqJr0Rq0Hj2AtqKn0UvodXQAfYqO
+Y4DRMQ5mjNlhXIyHRWCJWBomxxZj5Vg1Vo81Yx1YN3YVG8CeYe8IJAKLgBPsCF6EEMJsgpCQR1hM
+WEOoJewjtBK6CFcJg4Qxwicik6hPtCV6EvnEeGI6sZBYRqwm7iEeIZ4lXicOE1+TSCQOyZLkTgoh
+JZAySQtJa0jbSC2kU6Q+0hBpnEwm65Btyd7kCLKArCCXkbeQD5BPkvvJw+S3FDrFiOJMCaIkUqSU
+Eko1ZT/lBKWfMkKZoKpRzame1AiqiDqfWkltoHZQL1OHqRM0dZolzZsWQ8ukLaPV0JppZ2n3aC/p
+dLoJ3YMeRZfQl9Jr6Afp5+mD9HcMDYYNg8dIYigZaxl7GacYtxkvmUymBdOXmchUMNcyG5lnmA+Y
+b1VYKvYqfBWRyhKVOpVWlX6V56pUVXNVP9V5qgtUq1UPq15WfaZGVbNQ46kJ1Bar1akdVbupNq7O
+UndSj1DPUV+jvl/9gvpjDbKGhUaghkijVGO3xhmNIRbGMmXxWELWclYD6yxrmE1iW7L57Ex2Bfsb
+di97TFNDc6pmrGaRZp3mcc0BDsax4PA52ZxKziHODc57LQMtPy2x1mqtZq1+rTfaetq+2mLtcu0W
+7eva73VwnUCdLJ31Om0693UJuja6UbqFutt1z+o+02PreekJ9cr1Dund0Uf1bfSj9Rfq79bv0R83
+MDQINpAZbDE4Y/DMkGPoa5hpuNHwhOGoEctoupHEaKPRSaMnuCbuh2fjNXgXPmasbxxirDTeZdxr
+PGFiaTLbpMSkxeS+Kc2Ua5pmutG003TMzMgs3KzYrMnsjjnVnGueYb7ZvNv8jYWlRZzFSos2i8eW
+2pZ8ywWWTZb3rJhWPlZ5VvVW16xJ1lzrLOtt1ldsUBtXmwybOpvLtqitm63Edptt3xTiFI8p0in1
+U27aMez87ArsmuwG7Tn2YfYl9m32zx3MHBId1jt0O3xydHXMdmxwvOuk4TTDqcSpw+lXZxtnoXOd
+8zUXpkuQyxKXdpcXU22niqdun3rLleUa7rrStdP1o5u7m9yt2W3U3cw9xX2r+00umxvJXcM970H0
+8PdY4nHM452nm6fC85DnL152Xlle+70eT7OcJp7WMG3I28Rb4L3Le2A6Pj1l+s7pAz7GPgKfep+H
+vqa+It89viN+1n6Zfgf8nvs7+sv9j/i/4XnyFvFOBWABwQHlAb2BGoGzA2sDHwSZBKUHNQWNBbsG
+Lww+FUIMCQ1ZH3KTb8AX8hv5YzPcZyya0RXKCJ0VWhv6MMwmTB7WEY6GzwjfEH5vpvlM6cy2CIjg
+R2yIuB9pGZkX+X0UKSoyqi7qUbRTdHF09yzWrORZ+2e9jvGPqYy5O9tqtnJ2Z6xqbFJsY+ybuIC4
+qriBeIf4RfGXEnQTJAntieTE2MQ9ieNzAudsmjOc5JpUlnRjruXcorkX5unOy553PFk1WZB8OIWY
+EpeyP+WDIEJQLxhP5aduTR0T8oSbhU9FvqKNolGxt7hKPJLmnVaV9jjdO31D+miGT0Z1xjMJT1Ir
+eZEZkrkj801WRNberM/ZcdktOZSclJyjUg1plrQr1zC3KLdPZisrkw3keeZtyhuTh8r35CP5c/Pb
+FWyFTNGjtFKuUA4WTC+oK3hbGFt4uEi9SFrUM99m/ur5IwuCFny9kLBQuLCz2Lh4WfHgIr9FuxYj
+i1MXdy4xXVK6ZHhp8NJ9y2jLspb9UOJYUlXyannc8o5Sg9KlpUMrglc0lamUycturvRauWMVYZVk
+Ve9ql9VbVn8qF5VfrHCsqK74sEa45uJXTl/VfPV5bdra3kq3yu3rSOuk626s91m/r0q9akHV0Ibw
+Da0b8Y3lG19tSt50oXpq9Y7NtM3KzQM1YTXtW8y2rNvyoTaj9nqdf13LVv2tq7e+2Sba1r/dd3vz
+DoMdFTve75TsvLUreFdrvUV99W7S7oLdjxpiG7q/5n7duEd3T8Wej3ulewf2Re/ranRvbNyvv7+y
+CW1SNo0eSDpw5ZuAb9qb7Zp3tXBaKg7CQeXBJ9+mfHvjUOihzsPcw83fmX+39QjrSHkr0jq/dawt
+o22gPaG97+iMo50dXh1Hvrf/fu8x42N1xzWPV56gnSg98fnkgpPjp2Snnp1OPz3Umdx590z8mWtd
+UV29Z0PPnj8XdO5Mt1/3yfPe549d8Lxw9CL3Ytslt0utPa49R35w/eFIr1tv62X3y+1XPK509E3r
+O9Hv03/6asDVc9f41y5dn3m978bsG7duJt0cuCW69fh29u0XdwruTNxdeo94r/y+2v3qB/oP6n+0
+/rFlwG3g+GDAYM/DWQ/vDgmHnv6U/9OH4dJHzEfVI0YjjY+dHx8bDRq98mTOk+GnsqcTz8p+Vv95
+63Or59/94vtLz1j82PAL+YvPv655qfNy76uprzrHI8cfvM55PfGm/K3O233vuO+638e9H5ko/ED+
+UPPR+mPHp9BP9z7nfP78L/eE8/sl0p8zAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMA
+APn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAAG+0lEQVR42tya628b1xHFf3MfS6oNahRGUitw
+UbeSK9eJ/GgUB03//wIp7Nit29rWyzAQRE3yoVBj1eTuvTP9sHfpFfUWTbbwAgtSJJc75545Z2au
+KGbG+3A43pMjLPJmIjKh38xk4UA+3x2c+J4qNNl4equxOy+iVEEmryc1qiA8XKkNYP15xDsIXhAR
+29ipJmDqZJhBDMKjlfFiGVGDbBMQ/HWtsftblXgHBojAw5XaNnYqLEOtxpPfNgB0IAwYN4ZmY2ng
+yaqLSa1udb/YHUgQGJdkSdm4+yLy+GZtGzuVPL7Zfm5jp0KyIApPb9X8frsSJ116tdeh8JPKEYDJ
+m/MAYvZ2dT99FknZ+Oo3LYQvXw4FwImQcps+D1dqu7cZEWkBaDIe3a65vxnFAV5kcv3xN0TmAkQN
+Hq/W9mB3gGZjpPC7vwWGA8effj2yP74c8p9aabKRsnHnRYQSsMuG9605RhH+vNoy9WBrwDgZjSo/
+HwbMjNdJCaHVz0XNQM5TRz7fHaAGX6/W9ofdIT+OMgJkhWEUlqLDiaNuEk0GFSP6lg0UYnT8O2We
+3mp4sDUgmdGoMW6MDwYOyzBSJXhhEIWHKzVzAdK3TYAvtwfsj5SkivdCDMLAe1JSzKBRI2OIwpUq
+kAXGWUEMBLJB3RjRCV6EWpXnnyZmseZwHhAbO9Wh1xqDDyrPKAnjpGSBEYpgZGtTsUmGE0flHftN
+Q50hRsi5tWXNxt/X3wbft+K5iN3MpGPks+2KcWOIGJohiBC8YNr6qA9CUgUTDKhz5nV2vEm015gw
+aoykxqv7mbvPooQoyDsojedqUbrVerRak9V4U7eirrOSswFCrW2glXeMspLVCM7xusnUWUkKb8ZK
+yi2IL7YG7wzEherIxk4lD1dqGwTh2SfNoffu/KOiaYyDUca51oYrJwyD8Lq4WQzgBJYqx4Ntz1er
+h+137qk1fTxZa9iLbY1QM7xz/OL225Zi7S8BU2NsQohQRcGVtmRzPQEZgL1w+NbLpdB+tl3JXows
+Nw1zc63u5iKCcw7McCGQVVEzMGO5rgG48bXHDJwXXt5rRf3Ke6pTcsmAj1O6lHOdCURErL96IjI5
+nffgPWaGmYEqljO1Gb/srei2c0QRgsiJopyO4uOULgTmwqklIohzOO8R75HCjAI0DeY9IWe+iREH
+JFWSGVHkxL6jD0IXoREpwQggIeBCQEQw5/CAqkLOOOcwVZxZ26aUa061+WNYme+EKIKLkav7+7jB
+AFlawi0tITG2uhHBmeGAa03TGsKULpZTOpGVywK6MBBxDhcC+8vLuKrCLS3hqwpXVS1L3qMiIMJe
+jAR39BZ9zVnvvJ5S+/wS+wjnTi0pIATAeyRGZDCAqkLMoK4nehERUEXOscLS08WrYhwyb0bawcPh
+nENihOEQNxxCCDgRrvzwA1JmEylpeOaIMP3980otM5PllEBkcoMr33/fOpb34ByU2rH/4YdoSY1+
+ihyniX7AHSsde7/K+cJ15NyMdEGJc+xfv96mV3/F25tDqSnd583sSBWfPnIZQ3UG57qw/U7mXhGs
+aMHqGi1ALGesbCCcJdq+fpTZjosVxLLiolp2DtqUw6xlpNhtx8yZX1cAaEnFXGx77nXEABNpAy2s
+MBphKfGz775Dc54AOAtG7r7PjNT7W+cJZC8EmQhWFRuPsYMDODjAUsJU+dfVqxMQ187RuXY1o9NF
+Lhq5qcqu9zJXRugYEcFy5qebm2165dyeJaizxG3ANyGgHRtm5Bl1Ei4mEWuFXET9440bLSN1jalO
+zvMIXDs2Coh+Wuk8NbIXglyr6xZESljTYOMx2jRYzhPXOu6YriNWBK5FGx2odVWeO3ep6ffie7+q
+5LfDT1vMuvpx8iIcZbYHZrqNWQgQA0QVTQnXBZRz28KfYbv9BjH32ehcsOvpFgKk6IMiUnqnncKK
+9a7XHhvaAe86h1MGsHfmWnshSDdjaM5oO462wR0j8uO0kUvweSq17pnxrOhj7kCOMFPY+Wg8PrYl
+OUkbaapJnA7ILQpIP2AD/hnjqX3VEcstqWRl9bsg/AwrG2Zh5NxtTU8bXfFLvXoh/eGta04XlVqX
+cbt+EbzbibsHxIngF6WRQ33XGcdyr97kXj+lwJOyu+KAdTM2nRM/Qx2ZKyPfhnCodnQgcr8m9djo
+xmT+34DYVN3o+ijpi7sEHkowl93JfudAlrstnSltdI9S2pou6NAXeq+6LwTIaTqZ3rPqHle78bdn
+uV6ENVVeei9+xlW9tP0WMMYJ84f1CiDAlnOkEjzA7dKbdSBmYWMmIB2Ykk4TQHbKFqgD1goznUv1
+K7n8Lxg5DdC3IRxq6x2wUgBsufanDV1quRkaxUM7PPP4vdb0v7O7jb55OqS8Lz88++8A+/N3u72V
+q/UAAAAASUVORK5CYII=
+"
+ x="0"
+ y="0"
+ width="50"
+ height="50"
+ id="image2551" />
+</svg>
diff --git a/activity/strawberry.svg~ b/activity/strawberry.svg~
new file mode 100755
index 0000000..377af1d
--- /dev/null
+++ b/activity/strawberry.svg~
@@ -0,0 +1,101 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ version="1.0"
+ width="50"
+ height="50"
+ id="svg2542">
+ <defs
+ id="defs2545" />
+ <image
+ xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAYAAAAeP4ixAAAACXBIWXMAAAsTAAALEwEAmpwYAAAK
+TWlDQ1BQaG90b3Nob3AgSUNDIHByb2ZpbGUAAHjanVN3WJP3Fj7f92UPVkLY8LGXbIEAIiOsCMgQ
+WaIQkgBhhBASQMWFiApWFBURnEhVxILVCkidiOKgKLhnQYqIWotVXDjuH9yntX167+3t+9f7vOec
+5/zOec8PgBESJpHmomoAOVKFPDrYH49PSMTJvYACFUjgBCAQ5svCZwXFAADwA3l4fnSwP/wBr28A
+AgBw1S4kEsfh/4O6UCZXACCRAOAiEucLAZBSAMguVMgUAMgYALBTs2QKAJQAAGx5fEIiAKoNAOz0
+ST4FANipk9wXANiiHKkIAI0BAJkoRyQCQLsAYFWBUiwCwMIAoKxAIi4EwK4BgFm2MkcCgL0FAHaO
+WJAPQGAAgJlCLMwAIDgCAEMeE80DIEwDoDDSv+CpX3CFuEgBAMDLlc2XS9IzFLiV0Bp38vDg4iHi
+wmyxQmEXKRBmCeQinJebIxNI5wNMzgwAABr50cH+OD+Q5+bk4eZm52zv9MWi/mvwbyI+IfHf/ryM
+AgQAEE7P79pf5eXWA3DHAbB1v2upWwDaVgBo3/ldM9sJoFoK0Hr5i3k4/EAenqFQyDwdHAoLC+0l
+YqG9MOOLPv8z4W/gi372/EAe/tt68ABxmkCZrcCjg/1xYW52rlKO58sEQjFu9+cj/seFf/2OKdHi
+NLFcLBWK8ViJuFAiTcd5uVKRRCHJleIS6X8y8R+W/QmTdw0ArIZPwE62B7XLbMB+7gECiw5Y0nYA
+QH7zLYwaC5EAEGc0Mnn3AACTv/mPQCsBAM2XpOMAALzoGFyolBdMxggAAESggSqwQQcMwRSswA6c
+wR28wBcCYQZEQAwkwDwQQgbkgBwKoRiWQRlUwDrYBLWwAxqgEZrhELTBMTgN5+ASXIHrcBcGYBie
+whi8hgkEQcgIE2EhOogRYo7YIs4IF5mOBCJhSDSSgKQg6YgUUSLFyHKkAqlCapFdSCPyLXIUOY1c
+QPqQ28ggMor8irxHMZSBslED1AJ1QLmoHxqKxqBz0XQ0D12AlqJr0Rq0Hj2AtqKn0UvodXQAfYqO
+Y4DRMQ5mjNlhXIyHRWCJWBomxxZj5Vg1Vo81Yx1YN3YVG8CeYe8IJAKLgBPsCF6EEMJsgpCQR1hM
+WEOoJewjtBK6CFcJg4Qxwicik6hPtCV6EvnEeGI6sZBYRqwm7iEeIZ4lXicOE1+TSCQOyZLkTgoh
+JZAySQtJa0jbSC2kU6Q+0hBpnEwm65Btyd7kCLKArCCXkbeQD5BPkvvJw+S3FDrFiOJMCaIkUqSU
+Eko1ZT/lBKWfMkKZoKpRzame1AiqiDqfWkltoHZQL1OHqRM0dZolzZsWQ8ukLaPV0JppZ2n3aC/p
+dLoJ3YMeRZfQl9Jr6Afp5+mD9HcMDYYNg8dIYigZaxl7GacYtxkvmUymBdOXmchUMNcyG5lnmA+Y
+b1VYKvYqfBWRyhKVOpVWlX6V56pUVXNVP9V5qgtUq1UPq15WfaZGVbNQ46kJ1Bar1akdVbupNq7O
+UndSj1DPUV+jvl/9gvpjDbKGhUaghkijVGO3xhmNIRbGMmXxWELWclYD6yxrmE1iW7L57Ex2Bfsb
+di97TFNDc6pmrGaRZp3mcc0BDsax4PA52ZxKziHODc57LQMtPy2x1mqtZq1+rTfaetq+2mLtcu0W
+7eva73VwnUCdLJ31Om0693UJuja6UbqFutt1z+o+02PreekJ9cr1Dund0Uf1bfSj9Rfq79bv0R83
+MDQINpAZbDE4Y/DMkGPoa5hpuNHwhOGoEctoupHEaKPRSaMnuCbuh2fjNXgXPmasbxxirDTeZdxr
+PGFiaTLbpMSkxeS+Kc2Ua5pmutG003TMzMgs3KzYrMnsjjnVnGueYb7ZvNv8jYWlRZzFSos2i8eW
+2pZ8ywWWTZb3rJhWPlZ5VvVW16xJ1lzrLOtt1ldsUBtXmwybOpvLtqitm63Edptt3xTiFI8p0in1
+U27aMez87ArsmuwG7Tn2YfYl9m32zx3MHBId1jt0O3xydHXMdmxwvOuk4TTDqcSpw+lXZxtnoXOd
+8zUXpkuQyxKXdpcXU22niqdun3rLleUa7rrStdP1o5u7m9yt2W3U3cw9xX2r+00umxvJXcM970H0
+8PdY4nHM452nm6fC85DnL152Xlle+70eT7OcJp7WMG3I28Rb4L3Le2A6Pj1l+s7pAz7GPgKfep+H
+vqa+It89viN+1n6Zfgf8nvs7+sv9j/i/4XnyFvFOBWABwQHlAb2BGoGzA2sDHwSZBKUHNQWNBbsG
+Lww+FUIMCQ1ZH3KTb8AX8hv5YzPcZyya0RXKCJ0VWhv6MMwmTB7WEY6GzwjfEH5vpvlM6cy2CIjg
+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
+q/UAAAAASUVORK5CYII=
+"
+ x="0"
+ y="0"
+ width="50"
+ height="50"
+ id="image2551" />
+</svg>
diff --git a/bin/launcher b/bin/launcher
new file mode 100755
index 0000000..e46ea51
--- /dev/null
+++ b/bin/launcher
@@ -0,0 +1,3 @@
+#!/bin/sh
+python ppactivity.py
+
diff --git a/graphics/apple.png b/graphics/apple.png
new file mode 100755
index 0000000..859100a
--- /dev/null
+++ b/graphics/apple.png
Binary files differ
diff --git a/graphics/bananas.png b/graphics/bananas.png
new file mode 100755
index 0000000..02024a6
--- /dev/null
+++ b/graphics/bananas.png
Binary files differ
diff --git a/graphics/banner.png b/graphics/banner.png
new file mode 100755
index 0000000..1512cf1
--- /dev/null
+++ b/graphics/banner.png
Binary files differ
diff --git a/graphics/kiwi.png b/graphics/kiwi.png
new file mode 100755
index 0000000..0337612
--- /dev/null
+++ b/graphics/kiwi.png
Binary files differ
diff --git a/graphics/mango.png b/graphics/mango.png
new file mode 100755
index 0000000..2ca5445
--- /dev/null
+++ b/graphics/mango.png
Binary files differ
diff --git a/graphics/orange.png b/graphics/orange.png
new file mode 100755
index 0000000..10122a2
--- /dev/null
+++ b/graphics/orange.png
Binary files differ
diff --git a/graphics/pear.png b/graphics/pear.png
new file mode 100755
index 0000000..ab3cb25
--- /dev/null
+++ b/graphics/pear.png
Binary files differ
diff --git a/graphics/plum.png b/graphics/plum.png
new file mode 100755
index 0000000..25e6077
--- /dev/null
+++ b/graphics/plum.png
Binary files differ
diff --git a/graphics/ppicon.png b/graphics/ppicon.png
new file mode 100755
index 0000000..ab1edff
--- /dev/null
+++ b/graphics/ppicon.png
Binary files differ
diff --git a/graphics/ppicon.svg b/graphics/ppicon.svg
new file mode 100755
index 0000000..1ffdb41
--- /dev/null
+++ b/graphics/ppicon.svg
@@ -0,0 +1,68 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ id="svg2457"
+ sodipodi:version="0.32"
+ inkscape:version="0.46"
+ width="50"
+ height="50"
+ version="1.0"
+ sodipodi:docname="ppicon.svg"
+ inkscape:output_extension="org.inkscape.output.svg.inkscape">
+ <metadata
+ id="metadata2462">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <defs
+ id="defs2460">
+ <inkscape:perspective
+ sodipodi:type="inkscape:persp3d"
+ inkscape:vp_x="0 : 526.18109 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_z="744.09448 : 526.18109 : 1"
+ inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
+ id="perspective2464" />
+ </defs>
+ <sodipodi:namedview
+ inkscape:window-height="669"
+ inkscape:window-width="640"
+ inkscape:pageshadow="2"
+ inkscape:pageopacity="0.0"
+ guidetolerance="10.0"
+ gridtolerance="10.0"
+ objecttolerance="10.0"
+ borderopacity="1.0"
+ bordercolor="#666666"
+ pagecolor="#ffffff"
+ id="base"
+ showgrid="false"
+ inkscape:zoom="9.24"
+ inkscape:cx="16.866116"
+ inkscape:cy="26.638626"
+ inkscape:window-x="319"
+ inkscape:window-y="36"
+ inkscape:current-layer="svg2457" />
+ <image
+ xlink:href="ppicon.png"
+ sodipodi:absref="C:\Users\Elizabeth Deng\Desktop\olpc\images\ppicon.png"
+ width="50"
+ height="50.324677"
+ id="image2466"
+ x="-1.0321172e-09"
+ y="-0.21645021" />
+</svg>
diff --git a/graphics/strawberry.png b/graphics/strawberry.png
new file mode 100755
index 0000000..c248844
--- /dev/null
+++ b/graphics/strawberry.png
Binary files differ
diff --git a/graphics/watermelon.png b/graphics/watermelon.png
new file mode 100755
index 0000000..4763b52
--- /dev/null
+++ b/graphics/watermelon.png
Binary files differ
diff --git a/icons/3x3.svg b/icons/3x3.svg
new file mode 100755
index 0000000..760a5da
--- /dev/null
+++ b/icons/3x3.svg
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ version="1.1"
+ x="0px"
+ y="0px"
+ width="55px"
+ height="55px"
+ id="svg2"
+ sodipodi:version="0.32"
+ inkscape:version="0.46"
+ sodipodi:docname="3x3.svg"
+ sodipodi:docbase="C:\src\implode\icons"
+ inkscape:output_extension="org.inkscape.output.svg.inkscape">
+ <metadata
+ id="metadata9">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <defs
+ id="defs7">
+ <inkscape:perspective
+ sodipodi:type="inkscape:persp3d"
+ inkscape:vp_x="0 : 27.5 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_z="55 : 27.5 : 1"
+ inkscape:persp3d-origin="27.5 : 18.333333 : 1"
+ id="perspective12" />
+ </defs>
+ <sodipodi:namedview
+ inkscape:window-height="988"
+ inkscape:window-width="1680"
+ inkscape:pageshadow="2"
+ inkscape:pageopacity="1"
+ borderopacity="1.0"
+ bordercolor="#666666"
+ pagecolor="#7f7f7f"
+ id="base"
+ inkscape:zoom="6.8"
+ inkscape:cx="30.441176"
+ inkscape:cy="33.653437"
+ inkscape:window-x="-8"
+ inkscape:window-y="-8"
+ inkscape:current-layer="svg2"
+ showgrid="false" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:4.00988102;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 5.6519405,23.303202 C 9.1900707,23.303202 12.728202,23.303202 16.266332,23.303202 C 16.266332,26.710292 16.266332,30.117382 16.266332,33.524472 C 12.728202,33.524472 9.1900707,33.524472 5.6519405,33.524472 C 5.6519405,30.117382 5.6519405,26.710292 5.6519405,23.303202 z"
+ id="rect1310" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:4.00988102;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 22.651941,23.303202 C 26.190073,23.303202 29.728203,23.303202 33.266335,23.303202 C 33.266335,26.710292 33.266335,30.117382 33.266335,33.524472 C 29.728203,33.524472 26.190073,33.524472 22.651941,33.524472 C 22.651941,30.117382 22.651941,26.710292 22.651941,23.303202 z"
+ id="path2359" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:4.00988102;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 22.651941,39.742789 C 26.190071,39.742789 29.728203,39.742789 33.266335,39.742789 C 33.266335,43.149879 33.266335,46.556969 33.266335,49.964059 C 29.728203,49.964059 26.190071,49.964059 22.651941,49.964059 C 22.651941,46.556969 22.651941,43.149879 22.651941,39.742789 z"
+ id="path2357" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:4.00988102;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 39.652277,6.173114 C 43.190407,6.173114 46.728539,6.173114 50.266671,6.173114 C 50.266671,9.580202 50.266671,12.987289 50.266671,16.394377 C 46.728539,16.394377 43.190407,16.394377 39.652277,16.394377 C 39.652277,12.987289 39.652277,9.580202 39.652277,6.173114 z"
+ id="path2353" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:4.00988102;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 22.652138,6.1731139 C 26.19027,6.1731139 29.7284,6.1731139 33.266532,6.1731139 C 33.266532,9.5802019 33.266532,12.98729 33.266532,16.394378 C 29.7284,16.394378 26.19027,16.394378 22.652138,16.394378 C 22.652138,12.98729 22.652138,9.5802019 22.652138,6.1731139 z"
+ id="path2345" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:4.00988102;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 5.6519999,6.1731139 C 9.1901301,6.1731139 12.728261,6.1731139 16.266391,6.1731139 C 16.266391,9.5802019 16.266391,12.98729 16.266391,16.394378 C 12.728261,16.394378 9.1901301,16.394378 5.6519999,16.394378 C 5.6519999,12.98729 5.6519999,9.5802019 5.6519999,6.1731139 z"
+ id="path2341" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:4.00988102;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 5.6519405,39.742309 C 9.1900703,39.742309 12.728202,39.742309 16.266332,39.742309 C 16.266332,43.149397 16.266332,46.556485 16.266332,49.963573 C 12.728202,49.963573 9.1900703,49.963573 5.6519405,49.963573 C 5.6519405,46.556485 5.6519405,43.149397 5.6519405,39.742309 z"
+ id="path2385" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:4.00988102;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 39.651941,23.302796 C 43.190071,23.302796 46.728203,23.302796 50.266335,23.302796 C 50.266335,26.709884 50.266335,30.116971 50.266335,33.524059 C 46.728203,33.524059 43.190071,33.524059 39.651941,33.524059 C 39.651941,30.116971 39.651941,26.709884 39.651941,23.302796 z"
+ id="path2387" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:4.00988102;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 39.651941,39.742796 C 43.190071,39.742796 46.728203,39.742796 50.266335,39.742796 C 50.266335,43.149884 50.266335,46.556971 50.266335,49.964059 C 46.728203,49.964059 43.190071,49.964059 39.651941,49.964059 C 39.651941,46.556971 39.651941,43.149884 39.651941,39.742796 z"
+ id="path2389" />
+</svg>
diff --git a/icons/4x4.svg b/icons/4x4.svg
new file mode 100755
index 0000000..e87dee1
--- /dev/null
+++ b/icons/4x4.svg
@@ -0,0 +1,122 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ version="1.1"
+ x="0px"
+ y="0px"
+ width="55px"
+ height="55px"
+ id="svg2"
+ sodipodi:version="0.32"
+ inkscape:version="0.46"
+ sodipodi:docname="4x4.svg"
+ sodipodi:docbase="C:\src\implode\icons"
+ inkscape:output_extension="org.inkscape.output.svg.inkscape">
+ <metadata
+ id="metadata9">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <defs
+ id="defs7">
+ <inkscape:perspective
+ sodipodi:type="inkscape:persp3d"
+ inkscape:vp_x="0 : 27.5 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_z="55 : 27.5 : 1"
+ inkscape:persp3d-origin="27.5 : 18.333333 : 1"
+ id="perspective18" />
+ </defs>
+ <sodipodi:namedview
+ inkscape:window-height="988"
+ inkscape:window-width="1680"
+ inkscape:pageshadow="2"
+ inkscape:pageopacity="1"
+ borderopacity="1.0"
+ bordercolor="#666666"
+ pagecolor="#7f7f7f"
+ id="base"
+ inkscape:zoom="6.8"
+ inkscape:cx="27.5"
+ inkscape:cy="50.271085"
+ inkscape:window-x="-8"
+ inkscape:window-y="-8"
+ inkscape:current-layer="svg2"
+ showgrid="false" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 4.176,30.647058 C 6.8230588,30.647058 9.4701175,30.647058 12.117176,30.647058 C 12.117176,33.196078 12.117176,35.745099 12.117176,38.294119 C 9.4701175,38.294119 6.8230588,38.294119 4.176,38.294119 C 4.176,35.745099 4.176,33.196078 4.176,30.647058 z"
+ id="rect1310" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 17.255,30.647058 C 19.902059,30.647058 22.549118,30.647058 25.196178,30.647058 C 25.196178,33.196078 25.196178,35.745099 25.196178,38.294119 C 22.549118,38.294119 19.902059,38.294119 17.255,38.294119 C 17.255,35.745099 17.255,33.196078 17.255,30.647058 z"
+ id="path2240" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 17.255,43.528939 C 19.902059,43.528939 22.549118,43.528939 25.196178,43.528939 C 25.196178,46.077959 25.196178,48.62698 25.196178,51.176 C 22.549118,51.176 19.902059,51.176 17.255,51.176 C 17.255,48.62698 17.255,46.077959 17.255,43.528939 z"
+ id="path2238" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 30.392,30.646939 C 33.039059,30.646939 35.686118,30.646939 38.333177,30.646939 C 38.333177,33.195959 38.333177,35.74498 38.333177,38.294 C 35.686118,38.294 33.039059,38.294 30.392,38.294 C 30.392,35.74498 30.392,33.195959 30.392,30.646939 z"
+ id="path2236" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 30.392,17.705942 C 33.039059,17.705942 35.686118,17.705942 38.333178,17.705942 C 38.333178,20.254961 38.333178,22.803981 38.333178,25.353 C 35.686118,25.353 33.039059,25.353 30.392,25.353 C 30.392,22.803981 30.392,20.254961 30.392,17.705942 z"
+ id="path2234" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 30.392157,4.7649422 C 33.039216,4.7649422 35.686275,4.7649422 38.333335,4.7649422 C 38.333335,7.3139612 38.333335,9.862981 38.333335,12.412 C 35.686275,12.412 33.039216,12.412 30.392157,12.412 C 30.392157,9.862981 30.392157,7.3139612 30.392157,4.7649422 z"
+ id="path2232" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 30.392,43.528942 C 33.039059,43.528942 35.686118,43.528942 38.333177,43.528942 C 38.333177,46.077961 38.333177,48.626981 38.333177,51.176 C 35.686118,51.176 33.039059,51.176 30.392,51.176 C 30.392,48.626981 30.392,46.077961 30.392,43.528942 z"
+ id="path2230" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 43.382354,4.764942 C 46.029413,4.764942 48.676472,4.764942 51.323531,4.764942 C 51.323531,7.313961 51.323531,9.862981 51.323531,12.412 C 48.676472,12.412 46.029413,12.412 43.382354,12.412 C 43.382354,9.862981 43.382354,7.313961 43.382354,4.764942 z"
+ id="path2228" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 17.255,17.705882 C 19.902059,17.705882 22.549118,17.705882 25.196178,17.705882 C 25.196178,20.254901 25.196178,22.803921 25.196178,25.35294 C 22.549118,25.35294 19.902059,25.35294 17.255,25.35294 C 17.255,22.803921 17.255,20.254901 17.255,17.705882 z"
+ id="path2226" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 17.254902,4.7649427 C 19.901961,4.7649427 22.54902,4.7649427 25.19608,4.7649427 C 25.19608,7.3139617 25.19608,9.862981 25.19608,12.412 C 22.54902,12.412 19.901961,12.412 17.254902,12.412 C 17.254902,9.862981 17.254902,7.3139617 17.254902,4.7649427 z"
+ id="path2224" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 4.1764711,17.705882 C 6.8235299,17.705882 9.470589,17.705882 12.117648,17.705882 C 12.117648,20.254901 12.117648,22.803921 12.117648,25.35294 C 9.470589,25.35294 6.8235299,25.35294 4.1764711,25.35294 C 4.1764711,22.803921 4.1764711,20.254901 4.1764711,17.705882 z"
+ id="path2222" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 4.1764711,4.7647059 C 6.8235299,4.7647059 9.470589,4.7647059 12.117648,4.7647059 C 12.117648,7.3137249 12.117648,9.8627445 12.117648,12.411763 C 9.470589,12.411763 6.8235299,12.411763 4.1764711,12.411763 C 4.1764711,9.8627445 4.1764711,7.3137249 4.1764711,4.7647059 z"
+ id="path2220" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 4.176,43.529411 C 6.823059,43.529411 9.4701178,43.529411 12.117177,43.529411 C 12.117177,46.078431 12.117177,48.627452 12.117177,51.176472 C 9.4701178,51.176472 6.823059,51.176472 4.176,51.176472 C 4.176,48.627452 4.176,46.078431 4.176,43.529411 z"
+ id="path2391" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 43.382,17.705942 C 46.029059,17.705942 48.676118,17.705942 51.323177,17.705942 C 51.323177,20.254961 51.323177,22.803981 51.323177,25.353 C 48.676118,25.353 46.029059,25.353 43.382,25.353 C 43.382,22.803981 43.382,20.254961 43.382,17.705942 z"
+ id="path2393" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 43.382,30.646942 C 46.029059,30.646942 48.676118,30.646942 51.323177,30.646942 C 51.323177,33.195961 51.323177,35.744981 51.323177,38.294 C 48.676118,38.294 46.029059,38.294 43.382,38.294 C 43.382,35.744981 43.382,33.195961 43.382,30.646942 z"
+ id="path2395" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 43.382,43.528942 C 46.029059,43.528942 48.676118,43.528942 51.323177,43.528942 C 51.323177,46.077961 51.323177,48.626981 51.323177,51.176 C 48.676118,51.176 46.029059,51.176 43.382,51.176 C 43.382,48.626981 43.382,46.077961 43.382,43.528942 z"
+ id="path2397" />
+</svg>
diff --git a/icons/5x5.svg b/icons/5x5.svg
new file mode 100755
index 0000000..52139ec
--- /dev/null
+++ b/icons/5x5.svg
@@ -0,0 +1,158 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ version="1.1"
+ x="0px"
+ y="0px"
+ width="55px"
+ height="55px"
+ id="svg2"
+ sodipodi:version="0.32"
+ inkscape:version="0.46"
+ sodipodi:docname="5x5.svg"
+ sodipodi:docbase="C:\src\implode\icons"
+ inkscape:output_extension="org.inkscape.output.svg.inkscape">
+ <metadata
+ id="metadata9">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <defs
+ id="defs7">
+ <inkscape:perspective
+ sodipodi:type="inkscape:persp3d"
+ inkscape:vp_x="0 : 27.5 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_z="55 : 27.5 : 1"
+ inkscape:persp3d-origin="27.5 : 18.333333 : 1"
+ id="perspective26" />
+ </defs>
+ <sodipodi:namedview
+ inkscape:window-height="988"
+ inkscape:window-width="1680"
+ inkscape:pageshadow="2"
+ inkscape:pageopacity="1"
+ borderopacity="1.0"
+ bordercolor="#666666"
+ pagecolor="#7f7f7f"
+ id="base"
+ inkscape:zoom="6.8"
+ inkscape:cx="30.441176"
+ inkscape:cy="33.653437"
+ inkscape:window-x="-8"
+ inkscape:window-y="-8"
+ inkscape:current-layer="svg2"
+ showgrid="false" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.32562613;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 5.6922254,34.085589 C 7.7442485,34.085589 9.7962717,34.085589 11.848295,34.085589 C 11.848295,36.061612 11.848295,38.037635 11.848295,40.013658 C 9.7962717,40.013658 7.7442485,40.013658 5.6922254,40.013658 C 5.6922254,38.037635 5.6922254,36.061612 5.6922254,34.085589 z"
+ id="rect1310" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.32562613;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 14.954829,34.085589 C 17.006853,34.085589 19.058876,34.085589 21.1109,34.085589 C 21.1109,36.061612 21.1109,38.037635 21.1109,40.013658 C 19.058876,40.013658 17.006853,40.013658 14.954829,40.013658 C 14.954829,38.037635 14.954829,36.061612 14.954829,34.085589 z"
+ id="path2359" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.32562613;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 24.217434,34.085589 C 26.269457,34.085589 28.321481,34.085589 30.373505,34.085589 C 30.373505,36.061612 30.373505,38.037635 30.373505,40.013658 C 28.321481,40.013658 26.269457,40.013658 24.217434,40.013658 C 24.217434,38.037635 24.217434,36.061612 24.217434,34.085589 z"
+ id="path2357" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.32562613;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 33.480038,34.085589 C 35.532061,34.085589 37.584085,34.085589 39.636108,34.085589 C 39.636108,36.061612 39.636108,38.037635 39.636108,40.013658 C 37.584085,40.013658 35.532061,40.013658 33.480038,40.013658 C 33.480038,38.037635 33.480038,36.061612 33.480038,34.085589 z"
+ id="path2355" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.32562613;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 24.217434,25.003488 C 26.269457,25.003488 28.321481,25.003488 30.373505,25.003488 C 30.373505,26.97951 30.373505,28.955532 30.373505,30.931554 C 28.321481,30.931554 26.269457,30.931554 24.217434,30.931554 C 24.217434,28.955532 24.217434,26.97951 24.217434,25.003488 z"
+ id="path2353" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.32562613;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 24.217434,15.921386 C 26.269457,15.921386 28.321481,15.921386 30.373505,15.921386 C 30.373505,17.897408 30.373505,19.87343 30.373505,21.849452 C 28.321481,21.849452 26.269457,21.849452 24.217434,21.849452 C 24.217434,19.87343 24.217434,17.897408 24.217434,15.921386 z"
+ id="path2351" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.32562613;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 33.480038,25.003488 C 35.532061,25.003488 37.584085,25.003488 39.636108,25.003488 C 39.636108,26.97951 39.636108,28.955532 39.636108,30.931554 C 37.584085,30.931554 35.532061,30.931554 33.480038,30.931554 C 33.480038,28.955532 33.480038,26.97951 33.480038,25.003488 z"
+ id="path2349" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.32562613;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 33.480038,15.921386 C 35.532061,15.921386 37.584085,15.921386 39.636108,15.921386 C 39.636108,17.897408 39.636108,19.87343 39.636108,21.849452 C 37.584085,21.849452 35.532061,21.849452 33.480038,21.849452 C 33.480038,19.87343 33.480038,17.897408 33.480038,15.921386 z"
+ id="path2347" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.32562613;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 14.954829,25.003488 C 17.006853,25.003488 19.058876,25.003488 21.1109,25.003488 C 21.1109,26.97951 21.1109,28.955532 21.1109,30.931554 C 19.058876,30.931554 17.006853,30.931554 14.954829,30.931554 C 14.954829,28.955532 14.954829,26.97951 14.954829,25.003488 z"
+ id="path2345" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.32562613;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 14.954829,15.921386 C 17.006853,15.921386 19.058876,15.921386 21.1109,15.921386 C 21.1109,17.897408 21.1109,19.87343 21.1109,21.849452 C 19.058876,21.849452 17.006853,21.849452 14.954829,21.849452 C 14.954829,19.87343 14.954829,17.897408 14.954829,15.921386 z"
+ id="path2343" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.32562613;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 5.6922254,25.003488 C 7.7442485,25.003488 9.7962717,25.003488 11.848295,25.003488 C 11.848295,26.97951 11.848295,28.955532 11.848295,30.931554 C 9.7962717,30.931554 7.7442485,30.931554 5.6922254,30.931554 C 5.6922254,28.955532 5.6922254,26.97951 5.6922254,25.003488 z"
+ id="path2341" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.32562613;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 5.6922254,15.921386 C 7.7442485,15.921386 9.7962717,15.921386 11.848295,15.921386 C 11.848295,17.897408 11.848295,19.87343 11.848295,21.849452 C 9.7962717,21.849452 7.7442485,21.849452 5.6922254,21.849452 C 5.6922254,19.87343 5.6922254,17.897408 5.6922254,15.921386 z"
+ id="path2339" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.32562613;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 42.742643,34.085589 C 44.794666,34.085589 46.84669,34.085589 48.898713,34.085589 C 48.898713,36.061612 48.898713,38.037635 48.898713,40.013658 C 46.84669,40.013658 44.794666,40.013658 42.742643,40.013658 C 42.742643,38.037635 42.742643,36.061612 42.742643,34.085589 z"
+ id="path2337" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.32562613;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 42.742643,25.003488 C 44.794666,25.003488 46.84669,25.003488 48.898713,25.003488 C 48.898713,26.97951 48.898713,28.955532 48.898713,30.931554 C 46.84669,30.931554 44.794666,30.931554 42.742643,30.931554 C 42.742643,28.955532 42.742643,26.97951 42.742643,25.003488 z"
+ id="path2335" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.32562613;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 42.742643,15.921386 C 44.794666,15.921386 46.84669,15.921386 48.898713,15.921386 C 48.898713,17.897408 48.898713,19.87343 48.898713,21.849452 C 46.84669,21.849452 44.794666,21.849452 42.742643,21.849452 C 42.742643,19.87343 42.742643,17.897408 42.742643,15.921386 z"
+ id="path2333" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.32562613;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 24.217434,6.8392837 C 26.269457,6.8392837 28.321481,6.8392837 30.373505,6.8392837 C 30.373505,8.815305 30.373505,10.791328 30.373505,12.76735 C 28.321481,12.76735 26.269457,12.76735 24.217434,12.76735 C 24.217434,10.791328 24.217434,8.815305 24.217434,6.8392837 z"
+ id="path2331" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.32562613;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 33.480038,6.8392837 C 35.532061,6.8392837 37.584085,6.8392837 39.636108,6.8392837 C 39.636108,8.815305 39.636108,10.791328 39.636108,12.76735 C 37.584085,12.76735 35.532061,12.76735 33.480038,12.76735 C 33.480038,10.791328 33.480038,8.815305 33.480038,6.8392837 z"
+ id="path2329" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.32562613;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 14.954829,6.8392837 C 17.006853,6.8392837 19.058876,6.8392837 21.1109,6.8392837 C 21.1109,8.815305 21.1109,10.791328 21.1109,12.76735 C 19.058876,12.76735 17.006853,12.76735 14.954829,12.76735 C 14.954829,10.791328 14.954829,8.815305 14.954829,6.8392837 z"
+ id="path2327" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.32562613;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 5.6922254,6.8392837 C 7.7442485,6.8392837 9.7962717,6.8392837 11.848295,6.8392837 C 11.848295,8.815305 11.848295,10.791328 11.848295,12.76735 C 9.7962717,12.76735 7.7442485,12.76735 5.6922254,12.76735 C 5.6922254,10.791328 5.6922254,8.815305 5.6922254,6.8392837 z"
+ id="path2325" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.32562613;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 42.742643,6.8392837 C 44.794666,6.8392837 46.84669,6.8392837 48.898713,6.8392837 C 48.898713,8.815305 48.898713,10.791328 48.898713,12.76735 C 46.84669,12.76735 44.794666,12.76735 42.742643,12.76735 C 42.742643,10.791328 42.742643,8.815305 42.742643,6.8392837 z"
+ id="path2323" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.32562613;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 5.8388719,43.212436 C 7.8908949,43.212436 9.9429178,43.212436 11.994941,43.212436 C 11.994941,45.188459 11.994941,47.164482 11.994941,49.140505 C 9.9429178,49.140505 7.8908949,49.140505 5.8388719,49.140505 C 5.8388719,47.164482 5.8388719,45.188459 5.8388719,43.212436 z"
+ id="path2399" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.32562613;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 14.954813,43.212436 C 17.006836,43.212436 19.058859,43.212436 21.110883,43.212436 C 21.110883,45.188459 21.110883,47.164482 21.110883,49.140505 C 19.058859,49.140505 17.006836,49.140505 14.954813,49.140505 C 14.954813,47.164482 14.954813,45.188459 14.954813,43.212436 z"
+ id="path2401" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.32562613;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 33.479813,43.212118 C 35.531836,43.212118 37.583859,43.212118 39.635883,43.212118 C 39.635883,45.188141 39.635883,47.164164 39.635883,49.140187 C 37.583859,49.140187 35.531836,49.140187 33.479813,49.140187 C 33.479813,47.164164 33.479813,45.188141 33.479813,43.212118 z"
+ id="path2405" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.32562613;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 24.217813,43.212118 C 26.269836,43.212118 28.321859,43.212118 30.373883,43.212118 C 30.373883,45.188141 30.373883,47.164164 30.373883,49.140187 C 28.321859,49.140187 26.269836,49.140187 24.217813,49.140187 C 24.217813,47.164164 24.217813,45.188141 24.217813,43.212118 z"
+ id="path2407" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.32562613;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 42.742813,43.212118 C 44.794836,43.212118 46.846859,43.212118 48.898883,43.212118 C 48.898883,45.188141 48.898883,47.164164 48.898883,49.140187 C 46.846859,49.140187 44.794836,49.140187 42.742813,49.140187 C 42.742813,47.164164 42.742813,45.188141 42.742813,43.212118 z"
+ id="path2409" />
+</svg>
diff --git a/icons/6x6.svg b/icons/6x6.svg
new file mode 100755
index 0000000..29ae024
--- /dev/null
+++ b/icons/6x6.svg
@@ -0,0 +1,202 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ version="1.1"
+ x="0px"
+ y="0px"
+ width="55px"
+ height="55px"
+ id="svg2"
+ sodipodi:version="0.32"
+ inkscape:version="0.46"
+ sodipodi:docname="6x6.svg"
+ sodipodi:docbase="C:\src\implode\icons"
+ inkscape:output_extension="org.inkscape.output.svg.inkscape">
+ <metadata
+ id="metadata9">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <defs
+ id="defs7">
+ <inkscape:perspective
+ sodipodi:type="inkscape:persp3d"
+ inkscape:vp_x="0 : 27.5 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_z="55 : 27.5 : 1"
+ inkscape:persp3d-origin="27.5 : 18.333333 : 1"
+ id="perspective26" />
+ </defs>
+ <sodipodi:namedview
+ inkscape:window-height="988"
+ inkscape:window-width="1680"
+ inkscape:pageshadow="2"
+ inkscape:pageopacity="1"
+ borderopacity="1.0"
+ bordercolor="#666666"
+ pagecolor="#7f7f7f"
+ id="base"
+ inkscape:zoom="6.8"
+ inkscape:cx="30.441176"
+ inkscape:cy="33.653437"
+ inkscape:window-x="-8"
+ inkscape:window-y="-8"
+ inkscape:current-layer="svg2"
+ showgrid="false" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.05992842;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 3.5593765,3.4417289 C 5.3078087,3.4417289 7.056241,3.4417289 8.8046733,3.4417289 C 8.8046733,5.2612182 8.8046733,7.080709 8.8046733,8.9001989 C 7.056241,8.9001989 5.3078087,8.9001989 3.5593765,8.9001989 C 3.5593765,7.080709 3.5593765,5.2612182 3.5593765,3.4417289 z"
+ id="path2325" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.05992842;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 3.5589642,12.123706 C 5.3073967,12.123706 7.0558287,12.123706 8.8042607,12.123706 C 8.8042607,13.943196 8.8042607,15.762687 8.8042607,17.582176 C 7.0558287,17.582176 5.3073967,17.582176 3.5589642,17.582176 C 3.5589642,15.762687 3.5589642,13.943196 3.5589642,12.123706 z"
+ id="path2433" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.05992842;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 3.5589642,20.947236 C 5.3073964,20.947236 7.0558287,20.947236 8.8042612,20.947236 C 8.8042612,22.766725 8.8042612,24.586216 8.8042612,26.405706 C 7.0558287,26.405706 5.3073964,26.405706 3.5589642,26.405706 C 3.5589642,24.586216 3.5589642,22.766725 3.5589642,20.947236 z"
+ id="path2435" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.05992842;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 3.5589642,29.770765 C 5.3073972,29.770765 7.0558292,29.770765 8.8042612,29.770765 C 8.8042612,31.590254 8.8042612,33.409745 8.8042612,35.229235 C 7.0558292,35.229235 5.3073972,35.229235 3.5589642,35.229235 C 3.5589642,33.409745 3.5589642,31.590254 3.5589642,29.770765 z"
+ id="path2437" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.05992842;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 3.5589642,38.447236 C 5.3073962,38.447236 7.0558292,38.447236 8.8042612,38.447236 C 8.8042612,40.266725 8.8042612,42.086216 8.8042612,43.905706 C 7.0558292,43.905706 5.3073962,43.905706 3.5589642,43.905706 C 3.5589642,42.086216 3.5589642,40.266725 3.5589642,38.447236 z"
+ id="path2439" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.05992842;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 3.5589642,46.976648 C 5.3073962,46.976648 7.0558292,46.976648 8.8042612,46.976648 C 8.8042612,48.796137 8.8042612,50.615628 8.8042612,52.435118 C 7.0558292,52.435118 5.3073962,52.435118 3.5589642,52.435118 C 3.5589642,50.615628 3.5589642,48.796137 3.5589642,46.976648 z"
+ id="path2441" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.05992842;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 11.936175,3.4415657 C 13.684607,3.4415657 15.43304,3.4415657 17.181472,3.4415657 C 17.181472,5.261055 17.181472,7.0805458 17.181472,8.9000358 C 15.43304,8.9000358 13.684607,8.9000358 11.936175,8.9000358 C 11.936175,7.0805458 11.936175,5.261055 11.936175,3.4415657 z"
+ id="path2443" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.05992842;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 20.759704,3.4415658 C 22.508136,3.4415658 24.256568,3.4415658 26.005001,3.4415658 C 26.005001,5.2610551 26.005001,7.0805459 26.005001,8.9000358 C 24.256568,8.9000358 22.508136,8.9000358 20.759704,8.9000358 C 20.759704,7.0805459 20.759704,5.2610551 20.759704,3.4415658 z"
+ id="path2445" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.05992842;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 29.583234,3.4415662 C 31.331666,3.4415662 33.080098,3.4415662 34.828531,3.4415662 C 34.828531,5.2610555 34.828531,7.0805463 34.828531,8.9000358 C 33.080098,8.9000358 31.331666,8.9000358 29.583234,8.9000358 C 29.583234,7.0805463 29.583234,5.2610555 29.583234,3.4415662 z"
+ id="path2447" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.05992842;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 38.112645,3.441566 C 39.861078,3.441566 41.60951,3.441566 43.357942,3.441566 C 43.357942,5.2610553 43.357942,7.0805458 43.357942,8.9000358 C 41.60951,8.9000358 39.861078,8.9000358 38.112645,8.9000358 C 38.112645,7.0805458 38.112645,5.2610553 38.112645,3.441566 z"
+ id="path2449" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.05992842;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 46.789116,3.4415654 C 48.537548,3.4415654 50.285981,3.4415654 52.034413,3.4415654 C 52.034413,5.2610547 52.034413,7.0805455 52.034413,8.9000358 C 50.285981,8.9000358 48.537548,8.9000358 46.789116,8.9000358 C 46.789116,7.0805455 46.789116,5.2610547 46.789116,3.4415654 z"
+ id="path2451" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.05992842;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 11.935964,12.123566 C 13.684396,12.123566 15.432829,12.123566 17.181261,12.123566 C 17.181261,13.943055 17.181261,15.762546 17.181261,17.582036 C 15.432829,17.582036 13.684396,17.582036 11.935964,17.582036 C 11.935964,15.762546 11.935964,13.943055 11.935964,12.123566 z"
+ id="path2453" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.05992842;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 20.759964,12.123706 C 22.508396,12.123706 24.256829,12.123706 26.005261,12.123706 C 26.005261,13.943195 26.005261,15.762686 26.005261,17.582176 C 24.256829,17.582176 22.508396,17.582176 20.759964,17.582176 C 20.759964,15.762686 20.759964,13.943195 20.759964,12.123706 z"
+ id="path2455" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.05992842;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 29.582964,12.123706 C 31.331396,12.123706 33.079829,12.123706 34.828261,12.123706 C 34.828261,13.943195 34.828261,15.762686 34.828261,17.582176 C 33.079829,17.582176 31.331396,17.582176 29.582964,17.582176 C 29.582964,15.762686 29.582964,13.943195 29.582964,12.123706 z"
+ id="path2457" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.05992842;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 38.112645,12.123566 C 39.861077,12.123566 41.60951,12.123566 43.357942,12.123566 C 43.357942,13.943056 43.357942,15.762547 43.357942,17.582036 C 41.60951,17.582036 39.861077,17.582036 38.112645,17.582036 C 38.112645,15.762547 38.112645,13.943056 38.112645,12.123566 z"
+ id="path2459" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.05992842;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 46.789117,12.123706 C 48.537549,12.123706 50.285981,12.123706 52.034413,12.123706 C 52.034413,13.943196 52.034413,15.762686 52.034413,17.582176 C 50.285981,17.582176 48.537549,17.582176 46.789117,17.582176 C 46.789117,15.762686 46.789117,13.943196 46.789117,12.123706 z"
+ id="path2461" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.05992842;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 11.935964,20.947566 C 13.684397,20.947566 15.432829,20.947566 17.181261,20.947566 C 17.181261,22.767055 17.181261,24.586546 17.181261,26.406036 C 15.432829,26.406036 13.684397,26.406036 11.935964,26.406036 C 11.935964,24.586546 11.935964,22.767055 11.935964,20.947566 z"
+ id="path2463" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.05992842;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 11.935964,29.770566 C 13.684397,29.770566 15.432829,29.770566 17.181261,29.770566 C 17.181261,31.590055 17.181261,33.409546 17.181261,35.229036 C 15.432829,35.229036 13.684397,35.229036 11.935964,35.229036 C 11.935964,33.409546 11.935964,31.590055 11.935964,29.770566 z"
+ id="path2465" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.05992842;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 11.935964,46.976648 C 13.684397,46.976648 15.432829,46.976648 17.181261,46.976648 C 17.181261,48.796137 17.181261,50.615628 17.181261,52.435118 C 15.432829,52.435118 13.684397,52.435118 11.935964,52.435118 C 11.935964,50.615628 11.935964,48.796137 11.935964,46.976648 z"
+ id="path2467" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.05992842;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 11.935964,38.447566 C 13.684396,38.447566 15.432829,38.447566 17.181261,38.447566 C 17.181261,40.267056 17.181261,42.086546 17.181261,43.906036 C 15.432829,43.906036 13.684396,43.906036 11.935964,43.906036 C 11.935964,42.086546 11.935964,40.267056 11.935964,38.447566 z"
+ id="path2469" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.05992842;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 20.759964,20.947566 C 22.508396,20.947566 24.256828,20.947566 26.005261,20.947566 C 26.005261,22.767055 26.005261,24.586546 26.005261,26.406036 C 24.256828,26.406036 22.508396,26.406036 20.759964,26.406036 C 20.759964,24.586546 20.759964,22.767055 20.759964,20.947566 z"
+ id="path2471" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.05992842;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 29.582964,20.947566 C 31.331396,20.947566 33.079828,20.947566 34.828261,20.947566 C 34.828261,22.767055 34.828261,24.586546 34.828261,26.406036 C 33.079828,26.406036 31.331396,26.406036 29.582964,26.406036 C 29.582964,24.586546 29.582964,22.767055 29.582964,20.947566 z"
+ id="path2473" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.05992842;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 38.112964,20.947566 C 39.861396,20.947566 41.609828,20.947566 43.35826,20.947566 C 43.35826,22.767056 43.35826,24.586546 43.35826,26.406036 C 41.609828,26.406036 39.861396,26.406036 38.112964,26.406036 C 38.112964,24.586546 38.112964,22.767056 38.112964,20.947566 z"
+ id="path2475" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.05992842;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 46.788964,20.947566 C 48.537396,20.947566 50.285829,20.947566 52.034261,20.947566 C 52.034261,22.767055 52.034261,24.586546 52.034261,26.406036 C 50.285829,26.406036 48.537396,26.406036 46.788964,26.406036 C 46.788964,24.586546 46.788964,22.767055 46.788964,20.947566 z"
+ id="path2477" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.05992842;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 20.759964,29.770566 C 22.508396,29.770566 24.256828,29.770566 26.005261,29.770566 C 26.005261,31.590056 26.005261,33.409546 26.005261,35.229036 C 24.256828,35.229036 22.508396,35.229036 20.759964,35.229036 C 20.759964,33.409546 20.759964,31.590056 20.759964,29.770566 z"
+ id="path2479" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.05992842;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 29.582964,29.770566 C 31.331396,29.770566 33.079829,29.770566 34.828261,29.770566 C 34.828261,31.590055 34.828261,33.409546 34.828261,35.229036 C 33.079829,35.229036 31.331396,35.229036 29.582964,35.229036 C 29.582964,33.409546 29.582964,31.590055 29.582964,29.770566 z"
+ id="path2481" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.05992842;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 38.112964,29.770566 C 39.861397,29.770566 41.609829,29.770566 43.358261,29.770566 C 43.358261,31.590055 43.358261,33.409546 43.358261,35.229036 C 41.609829,35.229036 39.861397,35.229036 38.112964,35.229036 C 38.112964,33.409546 38.112964,31.590055 38.112964,29.770566 z"
+ id="path2483" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.05992842;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 46.788964,29.770765 C 48.537396,29.770765 50.285828,29.770765 52.03426,29.770765 C 52.03426,31.590254 52.03426,33.409745 52.03426,35.229235 C 50.285828,35.229235 48.537396,35.229235 46.788964,35.229235 C 46.788964,33.409745 46.788964,31.590254 46.788964,29.770765 z"
+ id="path2485" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.05992842;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 20.759964,38.447566 C 22.508396,38.447566 24.256828,38.447566 26.005261,38.447566 C 26.005261,40.267055 26.005261,42.086546 26.005261,43.906036 C 24.256828,43.906036 22.508396,43.906036 20.759964,43.906036 C 20.759964,42.086546 20.759964,40.267055 20.759964,38.447566 z"
+ id="path2487" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.05992842;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 29.582964,38.447566 C 31.331396,38.447566 33.079829,38.447566 34.828261,38.447566 C 34.828261,40.267056 34.828261,42.086546 34.828261,43.906036 C 33.079829,43.906036 31.331396,43.906036 29.582964,43.906036 C 29.582964,42.086546 29.582964,40.267056 29.582964,38.447566 z"
+ id="path2489" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.05992842;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 38.112964,38.447566 C 39.861396,38.447566 41.609829,38.447566 43.358261,38.447566 C 43.358261,40.267055 43.358261,42.086546 43.358261,43.906036 C 41.609829,43.906036 39.861396,43.906036 38.112964,43.906036 C 38.112964,42.086546 38.112964,40.267055 38.112964,38.447566 z"
+ id="path2491" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.05992842;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 46.788964,38.447566 C 48.537396,38.447566 50.285829,38.447566 52.034261,38.447566 C 52.034261,40.267055 52.034261,42.086546 52.034261,43.906036 C 50.285829,43.906036 48.537396,43.906036 46.788964,43.906036 C 46.788964,42.086546 46.788964,40.267055 46.788964,38.447566 z"
+ id="path2493" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.05992842;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 20.759964,46.976566 C 22.508397,46.976566 24.256829,46.976566 26.005261,46.976566 C 26.005261,48.796055 26.005261,50.615546 26.005261,52.435036 C 24.256829,52.435036 22.508397,52.435036 20.759964,52.435036 C 20.759964,50.615546 20.759964,48.796055 20.759964,46.976566 z"
+ id="path2495" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.05992842;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 29.582964,46.976647 C 31.331396,46.976647 33.079828,46.976647 34.828261,46.976647 C 34.828261,48.796137 34.828261,50.615627 34.828261,52.435117 C 33.079828,52.435117 31.331396,52.435117 29.582964,52.435117 C 29.582964,50.615627 29.582964,48.796137 29.582964,46.976647 z"
+ id="path2497" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.05992842;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 38.112964,46.976566 C 39.861396,46.976566 41.609829,46.976566 43.358261,46.976566 C 43.358261,48.796055 43.358261,50.615546 43.358261,52.435036 C 41.609829,52.435036 39.861396,52.435036 38.112964,52.435036 C 38.112964,50.615546 38.112964,48.796055 38.112964,46.976566 z"
+ id="path2499" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.05992842;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 46.788964,46.976566 C 48.537396,46.976566 50.285828,46.976566 52.034261,46.976566 C 52.034261,48.796055 52.034261,50.615546 52.034261,52.435036 C 50.285828,52.435036 48.537396,52.435036 46.788964,52.435036 C 46.788964,50.615546 46.788964,48.796055 46.788964,46.976566 z"
+ id="path2501" />
+</svg>
diff --git a/icons/7x7.svg b/icons/7x7.svg
new file mode 100755
index 0000000..666213e
--- /dev/null
+++ b/icons/7x7.svg
@@ -0,0 +1,254 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ version="1.1"
+ x="0px"
+ y="0px"
+ width="55px"
+ height="55px"
+ id="svg2"
+ sodipodi:version="0.32"
+ inkscape:version="0.46"
+ sodipodi:docname="7x7.svg"
+ sodipodi:docbase="C:\src\implode\icons"
+ inkscape:output_extension="org.inkscape.output.svg.inkscape">
+ <metadata
+ id="metadata9">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <defs
+ id="defs7">
+ <inkscape:perspective
+ sodipodi:type="inkscape:persp3d"
+ inkscape:vp_x="0 : 27.5 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_z="55 : 27.5 : 1"
+ inkscape:persp3d-origin="27.5 : 18.333333 : 1"
+ id="perspective26" />
+ </defs>
+ <sodipodi:namedview
+ inkscape:window-height="988"
+ inkscape:window-width="1680"
+ inkscape:pageshadow="2"
+ inkscape:pageopacity="1"
+ borderopacity="1.0"
+ bordercolor="#666666"
+ pagecolor="#7f7f7f"
+ id="base"
+ inkscape:zoom="6.8"
+ inkscape:cx="30.441176"
+ inkscape:cy="33.653437"
+ inkscape:window-x="-8"
+ inkscape:window-y="-8"
+ inkscape:current-layer="svg2"
+ showgrid="false" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 1.9558912,3.4558906 C 3.5478234,3.4558906 5.1397558,3.4558906 6.7316881,3.4558906 C 6.7316881,4.9718212 6.7316881,6.4877531 6.7316881,8.0036842 C 5.1397558,8.0036842 3.5478234,8.0036842 1.9558912,8.0036842 C 1.9558912,6.4877531 1.9558912,4.9718212 1.9558912,3.4558906 z"
+ id="path2325" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 1.9560671,18.608457 C 3.5479993,18.608457 5.1399317,18.608457 6.731864,18.608457 C 6.731864,20.124387 6.731864,21.640319 6.731864,23.15625 C 5.1399317,23.15625 3.5479993,23.15625 1.9560671,23.15625 C 1.9560671,21.640319 1.9560671,20.124387 1.9560671,18.608457 z"
+ id="path2527" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 1.9560671,10.961398 C 3.5480001,10.961398 5.1399321,10.961398 6.7318641,10.961398 C 6.7318641,12.477328 6.7318641,13.99326 6.7318641,15.509191 C 5.1399321,15.509191 3.5480001,15.509191 1.9560671,15.509191 C 1.9560671,13.99326 1.9560671,12.477328 1.9560671,10.961398 z"
+ id="path2529" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 1.9560671,26.108456 C 3.5479991,26.108456 5.1399321,26.108456 6.7318641,26.108456 C 6.7318641,27.624386 6.7318641,29.140318 6.7318641,30.656249 C 5.1399321,30.656249 3.5479991,30.656249 1.9560671,30.656249 C 1.9560671,29.140318 1.9560671,27.624386 1.9560671,26.108456 z"
+ id="path2531" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 1.9560671,33.608455 C 3.5479993,33.608455 5.1399317,33.608455 6.731864,33.608455 C 6.731864,35.124386 6.731864,36.640318 6.731864,38.156249 C 5.1399317,38.156249 3.5479993,38.156249 1.9560671,38.156249 C 1.9560671,36.640318 1.9560671,35.124386 1.9560671,33.608455 z"
+ id="path2533" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 1.9560671,40.814338 C 3.5479993,40.814338 5.1399317,40.814338 6.731864,40.814338 C 6.731864,42.330269 6.731864,43.846201 6.731864,45.362132 C 5.1399317,45.362132 3.5479993,45.362132 1.9560671,45.362132 C 1.9560671,43.846201 1.9560671,42.330269 1.9560671,40.814338 z"
+ id="path2535" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 1.9560671,48.020221 C 3.5479991,48.020221 5.1399321,48.020221 6.7318641,48.020221 C 6.7318641,49.536152 6.7318641,51.052084 6.7318641,52.568015 C 5.1399321,52.568015 3.5479991,52.568015 1.9560671,52.568015 C 1.9560671,51.052084 1.9560671,49.536152 1.9560671,48.020221 z"
+ id="path2537" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 17.612102,3.4561395 C 19.204034,3.4561395 20.795967,3.4561395 22.387899,3.4561395 C 22.387899,4.9720701 22.387899,6.488002 22.387899,8.0039329 C 20.795967,8.0039329 19.204034,8.0039329 17.612102,8.0039329 C 17.612102,6.488002 17.612102,4.9720701 17.612102,3.4561395 z"
+ id="path2539" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 9.8179843,3.4561399 C 11.409917,3.4561399 13.001849,3.4561399 14.593782,3.4561399 C 14.593782,4.9720699 14.593782,6.4880019 14.593782,8.0039329 C 13.001849,8.0039329 11.409917,8.0039329 9.8179843,8.0039329 C 9.8179843,6.4880019 9.8179843,4.9720699 9.8179843,3.4561399 z"
+ id="path2541" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 9.8180671,18.608139 C 11.41,18.608139 13.001932,18.608139 14.593864,18.608139 C 14.593864,20.12407 14.593864,21.640002 14.593864,23.155933 C 13.001932,23.155933 11.41,23.155933 9.8180671,23.155933 C 9.8180671,21.640002 9.8180671,20.12407 9.8180671,18.608139 z"
+ id="path2543" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 9.8180671,26.108139 C 11.409999,26.108139 13.001931,26.108139 14.593864,26.108139 C 14.593864,27.62407 14.593864,29.140002 14.593864,30.655933 C 13.001931,30.655933 11.409999,30.655933 9.8180671,30.655933 C 9.8180671,29.140002 9.8180671,27.62407 9.8180671,26.108139 z"
+ id="path2545" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 9.8180671,33.608139 C 11.41,33.608139 13.001932,33.608139 14.593864,33.608139 C 14.593864,35.12407 14.593864,36.640002 14.593864,38.155933 C 13.001932,38.155933 11.41,38.155933 9.8180671,38.155933 C 9.8180671,36.640002 9.8180671,35.12407 9.8180671,33.608139 z"
+ id="path2547" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 9.8180671,40.814139 C 11.41,40.814139 13.001932,40.814139 14.593864,40.814139 C 14.593864,42.33007 14.593864,43.846001 14.593864,45.361933 C 13.001932,45.361933 11.41,45.361933 9.8180671,45.361933 C 9.8180671,43.846001 9.8180671,42.33007 9.8180671,40.814139 z"
+ id="path2549" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 9.8180671,48.020139 C 11.409999,48.020139 13.001931,48.020139 14.593864,48.020139 C 14.593864,49.53607 14.593864,51.052001 14.593864,52.567933 C 13.001931,52.567933 11.409999,52.567933 9.8180671,52.567933 C 9.8180671,51.052001 9.8180671,49.53607 9.8180671,48.020139 z"
+ id="path2551" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 9.8180671,10.961139 C 11.409999,10.961139 13.001932,10.961139 14.593864,10.961139 C 14.593864,12.47707 14.593864,13.993002 14.593864,15.508933 C 13.001932,15.508933 11.409999,15.508933 9.8180671,15.508933 C 9.8180671,13.993002 9.8180671,12.47707 9.8180671,10.961139 z"
+ id="path2553" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 17.612067,10.96114 C 19.203999,10.96114 20.795932,10.96114 22.387864,10.96114 C 22.387864,12.47707 22.387864,13.993002 22.387864,15.508933 C 20.795932,15.508933 19.203999,15.508933 17.612067,15.508933 C 17.612067,13.993002 17.612067,12.47707 17.612067,10.96114 z"
+ id="path2555" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 17.612067,18.60814 C 19.203999,18.60814 20.795932,18.60814 22.387864,18.60814 C 22.387864,20.12407 22.387864,21.640002 22.387864,23.155933 C 20.795932,23.155933 19.203999,23.155933 17.612067,23.155933 C 17.612067,21.640002 17.612067,20.12407 17.612067,18.60814 z"
+ id="path2557" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 17.612067,26.108139 C 19.203999,26.108139 20.795932,26.108139 22.387864,26.108139 C 22.387864,27.62407 22.387864,29.140002 22.387864,30.655933 C 20.795932,30.655933 19.203999,30.655933 17.612067,30.655933 C 17.612067,29.140002 17.612067,27.62407 17.612067,26.108139 z"
+ id="path2559" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 17.612067,33.608139 C 19.203999,33.608139 20.795932,33.608139 22.387864,33.608139 C 22.387864,35.12407 22.387864,36.640002 22.387864,38.155933 C 20.795932,38.155933 19.203999,38.155933 17.612067,38.155933 C 17.612067,36.640002 17.612067,35.12407 17.612067,33.608139 z"
+ id="path2561" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 17.612067,40.81414 C 19.203999,40.81414 20.795932,40.81414 22.387864,40.81414 C 22.387864,42.33007 22.387864,43.846002 22.387864,45.361933 C 20.795932,45.361933 19.203999,45.361933 17.612067,45.361933 C 17.612067,43.846002 17.612067,42.33007 17.612067,40.81414 z"
+ id="path2563" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 17.612102,48.020139 C 19.204034,48.020139 20.795966,48.020139 22.387898,48.020139 C 22.387898,49.53607 22.387898,51.052001 22.387898,52.567933 C 20.795966,52.567933 19.204034,52.567933 17.612102,52.567933 C 17.612102,51.052001 17.612102,49.53607 17.612102,48.020139 z"
+ id="path2565" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 25.553279,3.4561393 C 27.145211,3.4561393 28.737143,3.4561393 30.329076,3.4561393 C 30.329076,4.9720699 30.329076,6.4880018 30.329076,8.0039329 C 28.737143,8.0039329 27.145211,8.0039329 25.553279,8.0039329 C 25.553279,6.4880018 25.553279,4.9720699 25.553279,3.4561393 z"
+ id="path2567" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 25.553067,10.96114 C 27.144999,10.96114 28.736931,10.96114 30.328864,10.96114 C 30.328864,12.47707 30.328864,13.993002 30.328864,15.508933 C 28.736931,15.508933 27.144999,15.508933 25.553067,15.508933 C 25.553067,13.993002 25.553067,12.47707 25.553067,10.96114 z"
+ id="path2569" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 25.553067,18.60814 C 27.145,18.60814 28.736932,18.60814 30.328864,18.60814 C 30.328864,20.12407 30.328864,21.640002 30.328864,23.155933 C 28.736932,23.155933 27.145,23.155933 25.553067,23.155933 C 25.553067,21.640002 25.553067,20.12407 25.553067,18.60814 z"
+ id="path2571" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 25.553067,26.108139 C 27.144999,26.108139 28.736931,26.108139 30.328864,26.108139 C 30.328864,27.62407 30.328864,29.140001 30.328864,30.655933 C 28.736931,30.655933 27.144999,30.655933 25.553067,30.655933 C 25.553067,29.140001 25.553067,27.62407 25.553067,26.108139 z"
+ id="path2573" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 25.553067,33.608139 C 27.145,33.608139 28.736932,33.608139 30.328864,33.608139 C 30.328864,35.12407 30.328864,36.640002 30.328864,38.155933 C 28.736932,38.155933 27.145,38.155933 25.553067,38.155933 C 25.553067,36.640002 25.553067,35.12407 25.553067,33.608139 z"
+ id="path2575" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 25.553067,40.814139 C 27.144999,40.814139 28.736932,40.814139 30.328864,40.814139 C 30.328864,42.33007 30.328864,43.846002 30.328864,45.361933 C 28.736932,45.361933 27.144999,45.361933 25.553067,45.361933 C 25.553067,43.846002 25.553067,42.33007 25.553067,40.814139 z"
+ id="path2577" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 25.553067,48.020139 C 27.144999,48.020139 28.736932,48.020139 30.328864,48.020139 C 30.328864,49.53607 30.328864,51.052002 30.328864,52.567933 C 28.736932,52.567933 27.144999,52.567933 25.553067,52.567933 C 25.553067,51.052002 25.553067,49.53607 25.553067,48.020139 z"
+ id="path2579" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 33.053278,3.4561393 C 34.64521,3.4561393 36.237143,3.4561393 37.829075,3.4561393 C 37.829075,4.9720699 37.829075,6.4880018 37.829075,8.0039329 C 36.237143,8.0039329 34.64521,8.0039329 33.053278,8.0039329 C 33.053278,6.4880018 33.053278,4.9720699 33.053278,3.4561393 z"
+ id="path2581" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 33.053067,10.961139 C 34.645,10.961139 36.236932,10.961139 37.828864,10.961139 C 37.828864,12.47707 37.828864,13.993001 37.828864,15.508933 C 36.236932,15.508933 34.645,15.508933 33.053067,15.508933 C 33.053067,13.993001 33.053067,12.47707 33.053067,10.961139 z"
+ id="path2583" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 33.053067,18.608139 C 34.644999,18.608139 36.236932,18.608139 37.828864,18.608139 C 37.828864,20.12407 37.828864,21.640001 37.828864,23.155933 C 36.236932,23.155933 34.644999,23.155933 33.053067,23.155933 C 33.053067,21.640001 33.053067,20.12407 33.053067,18.608139 z"
+ id="path2585" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 33.053067,26.10814 C 34.645,26.10814 36.236932,26.10814 37.828864,26.10814 C 37.828864,27.62407 37.828864,29.140002 37.828864,30.655933 C 36.236932,30.655933 34.645,30.655933 33.053067,30.655933 C 33.053067,29.140002 33.053067,27.62407 33.053067,26.10814 z"
+ id="path2587" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 33.053067,33.608139 C 34.644999,33.608139 36.236932,33.608139 37.828864,33.608139 C 37.828864,35.12407 37.828864,36.640002 37.828864,38.155933 C 36.236932,38.155933 34.644999,38.155933 33.053067,38.155933 C 33.053067,36.640002 33.053067,35.12407 33.053067,33.608139 z"
+ id="path2589" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 33.053067,40.814139 C 34.644999,40.814139 36.236932,40.814139 37.828864,40.814139 C 37.828864,42.33007 37.828864,43.846002 37.828864,45.361933 C 36.236932,45.361933 34.644999,45.361933 33.053067,45.361933 C 33.053067,43.846002 33.053067,42.33007 33.053067,40.814139 z"
+ id="path2591" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 33.053067,48.020139 C 34.645,48.020139 36.236932,48.020139 37.828864,48.020139 C 37.828864,49.53607 37.828864,51.052002 37.828864,52.567933 C 36.236932,52.567933 34.645,52.567933 33.053067,52.567933 C 33.053067,51.052002 33.053067,49.53607 33.053067,48.020139 z"
+ id="path2593" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 40.700336,3.4561393 C 42.292269,3.4561393 43.884201,3.4561393 45.476133,3.4561393 C 45.476133,4.9720699 45.476133,6.4880018 45.476133,8.0039329 C 43.884201,8.0039329 42.292269,8.0039329 40.700336,8.0039329 C 40.700336,6.4880018 40.700336,4.9720699 40.700336,3.4561393 z"
+ id="path2595" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 40.700067,10.961139 C 42.291999,10.961139 43.883932,10.961139 45.475864,10.961139 C 45.475864,12.47707 45.475864,13.993001 45.475864,15.508933 C 43.883932,15.508933 42.291999,15.508933 40.700067,15.508933 C 40.700067,13.993001 40.700067,12.47707 40.700067,10.961139 z"
+ id="path2597" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 40.700067,18.60814 C 42.291999,18.60814 43.883931,18.60814 45.475864,18.60814 C 45.475864,20.12407 45.475864,21.640002 45.475864,23.155933 C 43.883931,23.155933 42.291999,23.155933 40.700067,23.155933 C 40.700067,21.640002 40.700067,20.12407 40.700067,18.60814 z"
+ id="path2599" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 40.700067,26.10814 C 42.291999,26.10814 43.883932,26.10814 45.475864,26.10814 C 45.475864,27.62407 45.475864,29.140002 45.475864,30.655933 C 43.883932,30.655933 42.291999,30.655933 40.700067,30.655933 C 40.700067,29.140002 40.700067,27.62407 40.700067,26.10814 z"
+ id="path2601" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 40.700067,33.60814 C 42.291999,33.60814 43.883932,33.60814 45.475864,33.60814 C 45.475864,35.12407 45.475864,36.640002 45.475864,38.155933 C 43.883932,38.155933 42.291999,38.155933 40.700067,38.155933 C 40.700067,36.640002 40.700067,35.12407 40.700067,33.60814 z"
+ id="path2603" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 40.700067,40.81414 C 42.292,40.81414 43.883932,40.81414 45.475864,40.81414 C 45.475864,42.33007 45.475864,43.846002 45.475864,45.361933 C 43.883932,45.361933 42.292,45.361933 40.700067,45.361933 C 40.700067,43.846002 40.700067,42.33007 40.700067,40.81414 z"
+ id="path2605" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 40.700067,48.020139 C 42.291999,48.020139 43.883932,48.020139 45.475864,48.020139 C 45.475864,49.53607 45.475864,51.052002 45.475864,52.567933 C 43.883932,52.567933 42.291999,52.567933 40.700067,52.567933 C 40.700067,51.052002 40.700067,49.53607 40.700067,48.020139 z"
+ id="path2607" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 48.200337,48.020139 C 49.792269,48.020139 51.384201,48.020139 52.976134,48.020139 C 52.976134,49.53607 52.976134,51.052001 52.976134,52.567933 C 51.384201,52.567933 49.792269,52.567933 48.200337,52.567933 C 48.200337,51.052001 48.200337,49.53607 48.200337,48.020139 z"
+ id="path2609" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 48.200067,40.814139 C 49.791999,40.814139 51.383931,40.814139 52.975864,40.814139 C 52.975864,42.33007 52.975864,43.846002 52.975864,45.361933 C 51.383931,45.361933 49.791999,45.361933 48.200067,45.361933 C 48.200067,43.846002 48.200067,42.33007 48.200067,40.814139 z"
+ id="path2611" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 48.200067,33.608139 C 49.791999,33.608139 51.383932,33.608139 52.975864,33.608139 C 52.975864,35.12407 52.975864,36.640002 52.975864,38.155933 C 51.383932,38.155933 49.791999,38.155933 48.200067,38.155933 C 48.200067,36.640002 48.200067,35.12407 48.200067,33.608139 z"
+ id="path2613" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 48.200067,26.108139 C 49.791999,26.108139 51.383931,26.108139 52.975863,26.108139 C 52.975863,27.62407 52.975863,29.140002 52.975863,30.655933 C 51.383931,30.655933 49.791999,30.655933 48.200067,30.655933 C 48.200067,29.140002 48.200067,27.62407 48.200067,26.108139 z"
+ id="path2615" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 48.200067,18.608139 C 49.791999,18.608139 51.383932,18.608139 52.975864,18.608139 C 52.975864,20.12407 52.975864,21.640002 52.975864,23.155933 C 51.383932,23.155933 49.791999,23.155933 48.200067,23.155933 C 48.200067,21.640002 48.200067,20.12407 48.200067,18.608139 z"
+ id="path2617" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 48.200067,10.961139 C 49.791999,10.961139 51.383932,10.961139 52.975864,10.961139 C 52.975864,12.477069 52.975864,13.993001 52.975864,15.508933 C 51.383932,15.508933 49.791999,15.508933 48.200067,15.508933 C 48.200067,13.993001 48.200067,12.477069 48.200067,10.961139 z"
+ id="path2619" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.79413426;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 48.200067,3.4561393 C 49.791999,3.4561393 51.383931,3.4561393 52.975864,3.4561393 C 52.975864,4.9720699 52.975864,6.4880018 52.975864,8.0039329 C 51.383931,8.0039329 49.791999,8.0039329 48.200067,8.0039329 C 48.200067,6.4880018 48.200067,4.9720699 48.200067,3.4561393 z"
+ id="path2621" />
+</svg>
diff --git a/icons/8x8.svg b/icons/8x8.svg
new file mode 100755
index 0000000..46871cd
--- /dev/null
+++ b/icons/8x8.svg
@@ -0,0 +1,318 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ version="1.1"
+ x="0px"
+ y="0px"
+ width="55px"
+ height="55px"
+ id="svg2"
+ sodipodi:version="0.32"
+ inkscape:version="0.46"
+ sodipodi:docname="8x8.svg"
+ sodipodi:docbase="C:\src\implode\icons"
+ inkscape:output_extension="org.inkscape.output.svg.inkscape">
+ <metadata
+ id="metadata9">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <defs
+ id="defs7">
+ <inkscape:perspective
+ sodipodi:type="inkscape:persp3d"
+ inkscape:vp_x="0 : 27.5 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_z="55 : 27.5 : 1"
+ inkscape:persp3d-origin="27.5 : 18.333333 : 1"
+ id="perspective26" />
+ </defs>
+ <sodipodi:namedview
+ inkscape:window-height="988"
+ inkscape:window-width="1680"
+ inkscape:pageshadow="2"
+ inkscape:pageopacity="1"
+ borderopacity="1.0"
+ bordercolor="#666666"
+ pagecolor="#7f7f7f"
+ id="base"
+ inkscape:zoom="6.8"
+ inkscape:cx="30.441176"
+ inkscape:cy="33.653437"
+ inkscape:window-x="-8"
+ inkscape:window-y="-8"
+ inkscape:current-layer="svg2"
+ showgrid="false" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 1.6794519,2.4499225 C 3.1086962,2.4499225 4.5379407,2.4499225 5.9671851,2.4499225 C 5.9671851,3.7051261 5.9671851,4.9603307 5.9671851,6.2155347 C 4.5379407,6.2155347 3.1086962,6.2155347 1.6794519,6.2155347 C 1.6794519,4.9603307 1.6794519,3.7051261 1.6794519,2.4499225 z"
+ id="path2325" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 21.826452,2.4499359 C 23.255696,2.4499359 24.684941,2.4499359 26.114185,2.4499359 C 26.114185,3.7051395 26.114185,4.9603441 26.114185,6.2155481 C 24.684941,6.2155481 23.255696,6.2155481 21.826452,6.2155481 C 21.826452,4.9603441 21.826452,3.7051395 21.826452,2.4499359 z"
+ id="path2643" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 8.2974519,2.4499359 C 9.7266966,2.4499359 11.155941,2.4499359 12.585185,2.4499359 C 12.585185,3.7051395 12.585185,4.9603441 12.585185,6.2155481 C 11.155941,6.2155481 9.7266966,6.2155481 8.2974519,6.2155481 C 8.2974519,4.9603441 8.2974519,3.7051395 8.2974519,2.4499359 z"
+ id="path2645" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 14.915452,2.4499359 C 16.344696,2.4499359 17.77394,2.4499359 19.203185,2.4499359 C 19.203185,3.7051395 19.203185,4.9603441 19.203185,6.2155481 C 17.77394,6.2155481 16.344696,6.2155481 14.915452,6.2155481 C 14.915452,4.9603441 14.915452,3.7051395 14.915452,2.4499359 z"
+ id="path2647" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 28.444452,2.4499359 C 29.873696,2.4499359 31.30294,2.4499359 32.732185,2.4499359 C 32.732185,3.7051395 32.732185,4.9603441 32.732185,6.2155481 C 31.30294,6.2155481 29.873696,6.2155481 28.444452,6.2155481 C 28.444452,4.9603441 28.444452,3.7051395 28.444452,2.4499359 z"
+ id="path2649" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 35.356452,2.4499359 C 36.785696,2.4499359 38.214941,2.4499359 39.644185,2.4499359 C 39.644185,3.7051395 39.644185,4.9603441 39.644185,6.2155481 C 38.214941,6.2155481 36.785696,6.2155481 35.356452,6.2155481 C 35.356452,4.9603441 35.356452,3.7051395 35.356452,2.4499359 z"
+ id="path2651" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 41.973452,2.4499359 C 43.402696,2.4499359 44.831941,2.4499359 46.261185,2.4499359 C 46.261185,3.7051395 46.261185,4.9603441 46.261185,6.2155481 C 44.831941,6.2155481 43.402696,6.2155481 41.973452,6.2155481 C 41.973452,4.9603441 41.973452,3.7051395 41.973452,2.4499359 z"
+ id="path2653" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 48.591452,2.4499359 C 50.020696,2.4499359 51.449941,2.4499359 52.879185,2.4499359 C 52.879185,3.7051395 52.879185,4.9603441 52.879185,6.2155481 C 51.449941,6.2155481 50.020696,6.2155481 48.591452,6.2155481 C 48.591452,4.9603441 48.591452,3.7051395 48.591452,2.4499359 z"
+ id="path2655" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 1.6794519,8.852488 C 3.1086962,8.852488 4.5379407,8.852488 5.9671851,8.852488 C 5.9671851,10.107692 5.9671851,11.362897 5.9671851,12.618101 C 4.5379407,12.618101 3.1086962,12.618101 1.6794519,12.618101 C 1.6794519,11.362897 1.6794519,10.107692 1.6794519,8.852488 z"
+ id="path2657" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 1.6794519,15.176018 C 3.1086962,15.176018 4.5379407,15.176018 5.9671851,15.176018 C 5.9671851,16.431222 5.9671851,17.686426 5.9671851,18.94163 C 4.5379407,18.94163 3.1086962,18.94163 1.6794519,18.94163 C 1.6794519,17.686426 1.6794519,16.431222 1.6794519,15.176018 z"
+ id="path2659" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 1.6794519,21.499547 C 3.1086962,21.499547 4.5379407,21.499547 5.9671851,21.499547 C 5.9671851,22.754751 5.9671851,24.009955 5.9671851,25.265159 C 4.5379407,25.265159 3.1086962,25.265159 1.6794519,25.265159 C 1.6794519,24.009955 1.6794519,22.754751 1.6794519,21.499547 z"
+ id="path2661" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 1.6796628,27.823077 C 3.1089071,27.823077 4.5381516,27.823077 5.967396,27.823077 C 5.967396,29.07828 5.967396,30.333485 5.967396,31.588689 C 4.5381516,31.588689 3.1089071,31.588689 1.6796628,31.588689 C 1.6796628,30.333485 1.6796628,29.07828 1.6796628,27.823077 z"
+ id="path2663" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 1.6796628,34.293665 C 3.1089071,34.293665 4.5381516,34.293665 5.967396,34.293665 C 5.967396,35.548868 5.967396,36.804073 5.967396,38.059277 C 4.5381516,38.059277 3.1089071,38.059277 1.6796628,38.059277 C 1.6796628,36.804073 1.6796628,35.548868 1.6796628,34.293665 z"
+ id="path2665" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 1.6794519,40.764253 C 3.1086962,40.764253 4.5379407,40.764253 5.9671851,40.764253 C 5.9671851,42.019456 5.9671851,43.274661 5.9671851,44.529865 C 4.5379407,44.529865 3.1086962,44.529865 1.6794519,44.529865 C 1.6794519,43.274661 1.6794519,42.019456 1.6794519,40.764253 z"
+ id="path2667" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 1.6796628,47.234841 C 3.1089071,47.234841 4.5381516,47.234841 5.967396,47.234841 C 5.967396,48.490045 5.967396,49.745249 5.967396,51.000453 C 4.5381516,51.000453 3.1089071,51.000453 1.6796628,51.000453 C 1.6796628,49.745249 1.6796628,48.490045 1.6796628,47.234841 z"
+ id="path2669" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 8.2974519,8.8529355 C 9.7266965,8.8529355 11.155941,8.8529355 12.585185,8.8529355 C 12.585185,10.108139 12.585185,11.363344 12.585185,12.618548 C 11.155941,12.618548 9.7266965,12.618548 8.2974519,12.618548 C 8.2974519,11.363344 8.2974519,10.108139 8.2974519,8.8529355 z"
+ id="path2671" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 14.915452,8.8529358 C 16.344696,8.8529358 17.77394,8.8529358 19.203184,8.8529358 C 19.203184,10.108139 19.203184,11.363344 19.203184,12.618548 C 17.77394,12.618548 16.344696,12.618548 14.915452,12.618548 C 14.915452,11.363344 14.915452,10.108139 14.915452,8.8529358 z"
+ id="path2673" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 28.444452,8.852488 C 29.873697,8.852488 31.302941,8.852488 32.732185,8.852488 C 32.732185,10.107692 32.732185,11.362896 32.732185,12.6181 C 31.302941,12.6181 29.873697,12.6181 28.444452,12.6181 C 28.444452,11.362896 28.444452,10.107692 28.444452,8.852488 z"
+ id="path2675" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 35.356452,8.8529363 C 36.785696,8.8529363 38.21494,8.8529363 39.644184,8.8529363 C 39.644184,10.10814 39.644184,11.363344 39.644184,12.618548 C 38.21494,12.618548 36.785696,12.618548 35.356452,12.618548 C 35.356452,11.363344 35.356452,10.10814 35.356452,8.8529363 z"
+ id="path2677" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 42.12084,8.8529358 C 43.550084,8.8529358 44.979328,8.8529358 46.408572,8.8529358 C 46.408572,10.108139 46.408572,11.363344 46.408572,12.618548 C 44.979328,12.618548 43.550084,12.618548 42.12084,12.618548 C 42.12084,11.363344 42.12084,10.108139 42.12084,8.8529358 z"
+ id="path2679" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 48.591452,8.8529361 C 50.020696,8.8529361 51.44994,8.8529361 52.879184,8.8529361 C 52.879184,10.108139 52.879184,11.363344 52.879184,12.618548 C 51.44994,12.618548 50.020696,12.618548 48.591452,12.618548 C 48.591452,11.363344 48.591452,10.108139 48.591452,8.8529361 z"
+ id="path2681" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 41.973452,8.8529356 C 43.402697,8.8529356 44.831941,8.8529356 46.261185,8.8529356 C 46.261185,10.108139 46.261185,11.363344 46.261185,12.618548 C 44.831941,12.618548 43.402697,12.618548 41.973452,12.618548 C 41.973452,11.363344 41.973452,10.108139 41.973452,8.8529356 z"
+ id="path2683" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 8.2973101,15.175936 C 9.7265548,15.175936 11.155799,15.175936 12.585043,15.175936 C 12.585043,16.431139 12.585043,17.686344 12.585043,18.941548 C 11.155799,18.941548 9.7265548,18.941548 8.2973101,18.941548 C 8.2973101,17.686344 8.2973101,16.431139 8.2973101,15.175936 z"
+ id="path2685" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 14.915452,15.175935 C 16.344697,15.175935 17.773941,15.175935 19.203185,15.175935 C 19.203185,16.431139 19.203185,17.686344 19.203185,18.941548 C 17.773941,18.941548 16.344697,18.941548 14.915452,18.941548 C 14.915452,17.686344 14.915452,16.431139 14.915452,15.175935 z"
+ id="path2687" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 21.826452,15.175936 C 23.255697,15.175936 24.684941,15.175936 26.114185,15.175936 C 26.114185,16.43114 26.114185,17.686344 26.114185,18.941548 C 24.684941,18.941548 23.255697,18.941548 21.826452,18.941548 C 21.826452,17.686344 21.826452,16.43114 21.826452,15.175936 z"
+ id="path2689" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 28.444369,15.175935 C 29.873614,15.175935 31.302858,15.175935 32.732102,15.175935 C 32.732102,16.431139 32.732102,17.686344 32.732102,18.941548 C 31.302858,18.941548 29.873614,18.941548 28.444369,18.941548 C 28.444369,17.686344 28.444369,16.431139 28.444369,15.175935 z"
+ id="path2691" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 41.973452,15.175935 C 43.402697,15.175935 44.831941,15.175935 46.261185,15.175935 C 46.261185,16.431139 46.261185,17.686344 46.261185,18.941548 C 44.831941,18.941548 43.402697,18.941548 41.973452,18.941548 C 41.973452,17.686344 41.973452,16.431139 41.973452,15.175935 z"
+ id="path2693" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 35.356452,15.175936 C 36.785696,15.175936 38.21494,15.175936 39.644184,15.175936 C 39.644184,16.43114 39.644184,17.686344 39.644184,18.941548 C 38.21494,18.941548 36.785696,18.941548 35.356452,18.941548 C 35.356452,17.686344 35.356452,16.43114 35.356452,15.175936 z"
+ id="path2695" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 48.591452,15.175936 C 50.020697,15.175936 51.449941,15.175936 52.879185,15.175936 C 52.879185,16.43114 52.879185,17.686344 52.879185,18.941548 C 51.449941,18.941548 50.020697,18.941548 48.591452,18.941548 C 48.591452,17.686344 48.591452,16.43114 48.591452,15.175936 z"
+ id="path2697" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 8.2974519,21.499936 C 9.7266966,21.499936 11.15594,21.499936 12.585184,21.499936 C 12.585184,22.755139 12.585184,24.010344 12.585184,25.265548 C 11.15594,25.265548 9.7266966,25.265548 8.2974519,25.265548 C 8.2974519,24.010344 8.2974519,22.755139 8.2974519,21.499936 z"
+ id="path2699" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 14.915452,21.499936 C 16.344697,21.499936 17.773941,21.499936 19.203185,21.499936 C 19.203185,22.75514 19.203185,24.010344 19.203185,25.265548 C 17.773941,25.265548 16.344697,25.265548 14.915452,25.265548 C 14.915452,24.010344 14.915452,22.75514 14.915452,21.499936 z"
+ id="path2701" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 21.826452,21.499935 C 23.255696,21.499935 24.68494,21.499935 26.114184,21.499935 C 26.114184,22.755139 26.114184,24.010344 26.114184,25.265548 C 24.68494,25.265548 23.255696,25.265548 21.826452,25.265548 C 21.826452,24.010344 21.826452,22.755139 21.826452,21.499935 z"
+ id="path2703" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 28.444452,21.499935 C 29.873697,21.499935 31.302941,21.499935 32.732185,21.499935 C 32.732185,22.755139 32.732185,24.010344 32.732185,25.265548 C 31.302941,25.265548 29.873697,25.265548 28.444452,25.265548 C 28.444452,24.010344 28.444452,22.755139 28.444452,21.499935 z"
+ id="path2705" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 35.356452,21.499935 C 36.785697,21.499935 38.214941,21.499935 39.644185,21.499935 C 39.644185,22.755139 39.644185,24.010344 39.644185,25.265548 C 38.214941,25.265548 36.785697,25.265548 35.356452,25.265548 C 35.356452,24.010344 35.356452,22.755139 35.356452,21.499935 z"
+ id="path2707" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 41.973452,21.499936 C 43.402697,21.499936 44.831941,21.499936 46.261185,21.499936 C 46.261185,22.755139 46.261185,24.010344 46.261185,25.265548 C 44.831941,25.265548 43.402697,25.265548 41.973452,25.265548 C 41.973452,24.010344 41.973452,22.755139 41.973452,21.499936 z"
+ id="path2709" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 48.591452,21.499936 C 50.020696,21.499936 51.44994,21.499936 52.879184,21.499936 C 52.879184,22.755139 52.879184,24.010344 52.879184,25.265548 C 51.44994,25.265548 50.020696,25.265548 48.591452,25.265548 C 48.591452,24.010344 48.591452,22.755139 48.591452,21.499936 z"
+ id="path2711" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 8.2974519,27.822936 C 9.7266969,27.822936 11.155941,27.822936 12.585185,27.822936 C 12.585185,29.07814 12.585185,30.333344 12.585185,31.588548 C 11.155941,31.588548 9.7266969,31.588548 8.2974519,31.588548 C 8.2974519,30.333344 8.2974519,29.07814 8.2974519,27.822936 z"
+ id="path2713" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 14.915452,27.822936 C 16.344697,27.822936 17.773941,27.822936 19.203185,27.822936 C 19.203185,29.07814 19.203185,30.333344 19.203185,31.588548 C 17.773941,31.588548 16.344697,31.588548 14.915452,31.588548 C 14.915452,30.333344 14.915452,29.07814 14.915452,27.822936 z"
+ id="path2715" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 21.826452,27.822936 C 23.255697,27.822936 24.684941,27.822936 26.114185,27.822936 C 26.114185,29.07814 26.114185,30.333344 26.114185,31.588548 C 24.684941,31.588548 23.255697,31.588548 21.826452,31.588548 C 21.826452,30.333344 21.826452,29.07814 21.826452,27.822936 z"
+ id="path2717" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 28.444452,27.822936 C 29.873696,27.822936 31.30294,27.822936 32.732184,27.822936 C 32.732184,29.07814 32.732184,30.333344 32.732184,31.588548 C 31.30294,31.588548 29.873696,31.588548 28.444452,31.588548 C 28.444452,30.333344 28.444452,29.07814 28.444452,27.822936 z"
+ id="path2719" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 35.356452,27.822936 C 36.785697,27.822936 38.214941,27.822936 39.644185,27.822936 C 39.644185,29.078139 39.644185,30.333344 39.644185,31.588548 C 38.214941,31.588548 36.785697,31.588548 35.356452,31.588548 C 35.356452,30.333344 35.356452,29.078139 35.356452,27.822936 z"
+ id="path2721" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 41.973452,27.822936 C 43.402697,27.822936 44.831941,27.822936 46.261185,27.822936 C 46.261185,29.078139 46.261185,30.333344 46.261185,31.588548 C 44.831941,31.588548 43.402697,31.588548 41.973452,31.588548 C 41.973452,30.333344 41.973452,29.078139 41.973452,27.822936 z"
+ id="path2723" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 48.591452,27.822936 C 50.020697,27.822936 51.449941,27.822936 52.879185,27.822936 C 52.879185,29.078139 52.879185,30.333344 52.879185,31.588548 C 51.449941,31.588548 50.020697,31.588548 48.591452,31.588548 C 48.591452,30.333344 48.591452,29.078139 48.591452,27.822936 z"
+ id="path2725" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 8.2974519,34.293935 C 9.7266966,34.293935 11.15594,34.293935 12.585184,34.293935 C 12.585184,35.549139 12.585184,36.804344 12.585184,38.059548 C 11.15594,38.059548 9.7266966,38.059548 8.2974519,38.059548 C 8.2974519,36.804344 8.2974519,35.549139 8.2974519,34.293935 z"
+ id="path2727" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 14.915452,34.293936 C 16.344696,34.293936 17.77394,34.293936 19.203184,34.293936 C 19.203184,35.54914 19.203184,36.804344 19.203184,38.059548 C 17.77394,38.059548 16.344696,38.059548 14.915452,38.059548 C 14.915452,36.804344 14.915452,35.54914 14.915452,34.293936 z"
+ id="path2729" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 21.826452,34.293936 C 23.255696,34.293936 24.68494,34.293936 26.114184,34.293936 C 26.114184,35.54914 26.114184,36.804344 26.114184,38.059548 C 24.68494,38.059548 23.255696,38.059548 21.826452,38.059548 C 21.826452,36.804344 21.826452,35.54914 21.826452,34.293936 z"
+ id="path2731" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 28.444452,34.293936 C 29.873696,34.293936 31.30294,34.293936 32.732184,34.293936 C 32.732184,35.549139 32.732184,36.804344 32.732184,38.059548 C 31.30294,38.059548 29.873696,38.059548 28.444452,38.059548 C 28.444452,36.804344 28.444452,35.549139 28.444452,34.293936 z"
+ id="path2733" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 35.356452,34.293936 C 36.785696,34.293936 38.21494,34.293936 39.644184,34.293936 C 39.644184,35.549139 39.644184,36.804344 39.644184,38.059548 C 38.21494,38.059548 36.785696,38.059548 35.356452,38.059548 C 35.356452,36.804344 35.356452,35.549139 35.356452,34.293936 z"
+ id="path2735" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 41.973452,34.293935 C 43.402697,34.293935 44.831941,34.293935 46.261185,34.293935 C 46.261185,35.549139 46.261185,36.804344 46.261185,38.059548 C 44.831941,38.059548 43.402697,38.059548 41.973452,38.059548 C 41.973452,36.804344 41.973452,35.549139 41.973452,34.293935 z"
+ id="path2737" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 48.591452,34.293935 C 50.020697,34.293935 51.449941,34.293935 52.879185,34.293935 C 52.879185,35.549139 52.879185,36.804344 52.879185,38.059548 C 51.449941,38.059548 50.020697,38.059548 48.591452,38.059548 C 48.591452,36.804344 48.591452,35.549139 48.591452,34.293935 z"
+ id="path2739" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 8.2974519,40.763936 C 9.7266966,40.763936 11.155941,40.763936 12.585184,40.763936 C 12.585184,42.019139 12.585184,43.274344 12.585184,44.529548 C 11.155941,44.529548 9.7266966,44.529548 8.2974519,44.529548 C 8.2974519,43.274344 8.2974519,42.019139 8.2974519,40.763936 z"
+ id="path2741" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 14.915452,40.763936 C 16.344697,40.763936 17.773941,40.763936 19.203185,40.763936 C 19.203185,42.019139 19.203185,43.274344 19.203185,44.529548 C 17.773941,44.529548 16.344697,44.529548 14.915452,44.529548 C 14.915452,43.274344 14.915452,42.019139 14.915452,40.763936 z"
+ id="path2743" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 21.826452,40.763936 C 23.255697,40.763936 24.684941,40.763936 26.114185,40.763936 C 26.114185,42.01914 26.114185,43.274344 26.114185,44.529548 C 24.684941,44.529548 23.255697,44.529548 21.826452,44.529548 C 21.826452,43.274344 21.826452,42.01914 21.826452,40.763936 z"
+ id="path2745" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 28.444452,40.763936 C 29.873697,40.763936 31.302941,40.763936 32.732185,40.763936 C 32.732185,42.01914 32.732185,43.274344 32.732185,44.529548 C 31.302941,44.529548 29.873697,44.529548 28.444452,44.529548 C 28.444452,43.274344 28.444452,42.01914 28.444452,40.763936 z"
+ id="path2747" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 35.356452,40.763936 C 36.785697,40.763936 38.214941,40.763936 39.644185,40.763936 C 39.644185,42.01914 39.644185,43.274344 39.644185,44.529548 C 38.214941,44.529548 36.785697,44.529548 35.356452,44.529548 C 35.356452,43.274344 35.356452,42.01914 35.356452,40.763936 z"
+ id="path2749" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 41.973452,40.763936 C 43.402697,40.763936 44.831941,40.763936 46.261185,40.763936 C 46.261185,42.01914 46.261185,43.274344 46.261185,44.529548 C 44.831941,44.529548 43.402697,44.529548 41.973452,44.529548 C 41.973452,43.274344 41.973452,42.01914 41.973452,40.763936 z"
+ id="path2751" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 48.591452,40.763936 C 50.020697,40.763936 51.449941,40.763936 52.879185,40.763936 C 52.879185,42.01914 52.879185,43.274344 52.879185,44.529548 C 51.449941,44.529548 50.020697,44.529548 48.591452,44.529548 C 48.591452,43.274344 48.591452,42.01914 48.591452,40.763936 z"
+ id="path2753" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 8.2973102,47.234841 C 9.7265544,47.234841 11.155798,47.234841 12.585042,47.234841 C 12.585042,48.490045 12.585042,49.745249 12.585042,51.000453 C 11.155798,51.000453 9.7265544,51.000453 8.2973102,51.000453 C 8.2973102,49.745249 8.2973102,48.490045 8.2973102,47.234841 z"
+ id="path2755" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 21.826723,47.234936 C 23.255968,47.234936 24.685212,47.234936 26.114456,47.234936 C 26.114456,48.490139 26.114456,49.745344 26.114456,51.000548 C 24.685212,51.000548 23.255968,51.000548 21.826723,51.000548 C 21.826723,49.745344 21.826723,48.490139 21.826723,47.234936 z"
+ id="path2757" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 14.914958,47.234936 C 16.344203,47.234936 17.773447,47.234936 19.202691,47.234936 C 19.202691,48.490139 19.202691,49.745344 19.202691,51.000548 C 17.773447,51.000548 16.344203,51.000548 14.914958,51.000548 C 14.914958,49.745344 14.914958,48.490139 14.914958,47.234936 z"
+ id="path2759" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 28.444369,47.234935 C 29.873613,47.234935 31.302857,47.234935 32.732101,47.234935 C 32.732101,48.490139 32.732101,49.745344 32.732101,51.000548 C 31.302857,51.000548 29.873613,51.000548 28.444369,51.000548 C 28.444369,49.745344 28.444369,48.490139 28.444369,47.234935 z"
+ id="path2761" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 35.356134,47.234935 C 36.785379,47.234935 38.214623,47.234935 39.643867,47.234935 C 39.643867,48.490139 39.643867,49.745344 39.643867,51.000548 C 38.214623,51.000548 36.785379,51.000548 35.356134,51.000548 C 35.356134,49.745344 35.356134,48.490139 35.356134,47.234935 z"
+ id="path2763" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 41.973781,47.234935 C 43.403025,47.234935 44.832269,47.234935 46.261513,47.234935 C 46.261513,48.490139 46.261513,49.745344 46.261513,51.000548 C 44.832269,51.000548 43.403025,51.000548 41.973781,51.000548 C 41.973781,49.745344 41.973781,48.490139 41.973781,47.234935 z"
+ id="path2765" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 48.591428,47.234936 C 50.020673,47.234936 51.449917,47.234936 52.879161,47.234936 C 52.879161,48.490139 52.879161,49.745344 52.879161,51.000548 C 51.449917,51.000548 50.020673,51.000548 48.591428,51.000548 C 48.591428,49.745344 48.591428,48.490139 48.591428,47.234936 z"
+ id="path2767" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.54690385;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 22.120839,8.8529357 C 23.550084,8.8529357 24.979328,8.8529357 26.408572,8.8529357 C 26.408572,10.10814 26.408572,11.363344 26.408572,12.618548 C 24.979328,12.618548 23.550084,12.618548 22.120839,12.618548 C 22.120839,11.363344 22.120839,10.10814 22.120839,8.8529357 z"
+ id="path2769" />
+</svg>
diff --git a/icons/9x9.svg b/icons/9x9.svg
new file mode 100755
index 0000000..43b2d3c
--- /dev/null
+++ b/icons/9x9.svg
@@ -0,0 +1,382 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ version="1.1"
+ x="0px"
+ y="0px"
+ width="55px"
+ height="55px"
+ id="svg2"
+ sodipodi:version="0.32"
+ inkscape:version="0.46"
+ sodipodi:docname="9x9.svg"
+ sodipodi:docbase="C:\src\implode\icons"
+ inkscape:output_extension="org.inkscape.output.svg.inkscape">
+ <metadata
+ id="metadata9">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <defs
+ id="defs7">
+ <inkscape:perspective
+ sodipodi:type="inkscape:persp3d"
+ inkscape:vp_x="0 : 27.5 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_z="55 : 27.5 : 1"
+ inkscape:persp3d-origin="27.5 : 18.333333 : 1"
+ id="perspective26" />
+ </defs>
+ <sodipodi:namedview
+ inkscape:window-height="988"
+ inkscape:window-width="1680"
+ inkscape:pageshadow="2"
+ inkscape:pageopacity="1"
+ borderopacity="1.0"
+ bordercolor="#666666"
+ pagecolor="#7f7f7f"
+ id="base"
+ inkscape:zoom="6.8"
+ inkscape:cx="30.441176"
+ inkscape:cy="33.653437"
+ inkscape:window-x="0"
+ inkscape:window-y="24"
+ inkscape:current-layer="svg2"
+ showgrid="false" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 1.8927417,2.3690946 C 3.1307732,2.3690946 4.368805,2.3690946 5.6068366,2.3690946 C 5.6068366,3.5311247 5.6068366,4.6931557 5.6068366,5.8551861 C 4.368805,5.8551861 3.1307732,5.8551861 1.8927417,5.8551861 C 1.8927417,4.6931557 1.8927417,3.5311247 1.8927417,2.3690946 z"
+ id="path2325" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 7.9958938,2.3692845 C 9.2339253,2.3692845 10.471957,2.3692845 11.709988,2.3692845 C 11.709988,3.5313146 11.709988,4.6933456 11.709988,5.855376 C 10.471957,5.855376 9.2339253,5.855376 7.9958938,5.855376 C 7.9958938,4.6933456 7.9958938,3.5313146 7.9958938,2.3692845 z"
+ id="path2463" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 14.172364,2.3692845 C 15.410396,2.3692845 16.648428,2.3692845 17.886459,2.3692845 C 17.886459,3.5313146 17.886459,4.6933456 17.886459,5.855376 C 16.648428,5.855376 15.410396,5.855376 14.172364,5.855376 C 14.172364,4.6933456 14.172364,3.5313146 14.172364,2.3692845 z"
+ id="path2465" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 20.201776,2.3692845 C 21.439808,2.3692845 22.677839,2.3692845 23.915871,2.3692845 C 23.915871,3.5313146 23.915871,4.6933456 23.915871,5.855376 C 22.677839,5.855376 21.439808,5.855376 20.201776,5.855376 C 20.201776,4.6933456 20.201776,3.5313146 20.201776,2.3692845 z"
+ id="path2467" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 26.231188,2.3692845 C 27.46922,2.3692845 28.707252,2.3692845 29.945283,2.3692845 C 29.945283,3.5313146 29.945283,4.6933456 29.945283,5.855376 C 28.707252,5.855376 27.46922,5.855376 26.231188,5.855376 C 26.231188,4.6933456 26.231188,3.5313146 26.231188,2.3692845 z"
+ id="path2469" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 32.113541,2.3692845 C 33.351573,2.3692845 34.589604,2.3692845 35.827636,2.3692845 C 35.827636,3.5313146 35.827636,4.6933456 35.827636,5.855376 C 34.589604,5.855376 33.351573,5.855376 32.113541,5.855376 C 32.113541,4.6933456 32.113541,3.5313146 32.113541,2.3692845 z"
+ id="path2471" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 38.142953,2.3692845 C 39.380984,2.3692845 40.619016,2.3692845 41.857048,2.3692845 C 41.857048,3.5313146 41.857048,4.6933456 41.857048,5.855376 C 40.619016,5.855376 39.380984,5.855376 38.142953,5.855376 C 38.142953,4.6933456 38.142953,3.5313146 38.142953,2.3692845 z"
+ id="path2473" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 44.025305,2.3692845 C 45.263337,2.3692845 46.501369,2.3692845 47.7394,2.3692845 C 47.7394,3.5313146 47.7394,4.6933456 47.7394,5.855376 C 46.501369,5.855376 45.263337,5.855376 44.025305,5.855376 C 44.025305,4.6933456 44.025305,3.5313146 44.025305,2.3692845 z"
+ id="path2475" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 49.7606,2.3746014 C 50.998631,2.3746014 52.236663,2.3746014 53.474695,2.3746014 C 53.474695,3.5366315 53.474695,4.6986625 53.474695,5.8606929 C 52.236663,5.8606929 50.998631,5.8606929 49.7606,5.8606929 C 49.7606,4.6986625 49.7606,3.5366315 49.7606,2.3746014 z"
+ id="path2477" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 1.8925652,8.2569542 C 3.1305967,8.2569542 4.3686285,8.2569542 5.6066601,8.2569542 C 5.6066601,9.4189843 5.6066601,10.581015 5.6066601,11.743045 C 4.3686285,11.743045 3.1305967,11.743045 1.8925652,11.743045 C 1.8925652,10.581015 1.8925652,9.4189843 1.8925652,8.2569542 z"
+ id="path2479" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 1.8925652,20.168719 C 3.1305967,20.168719 4.3686285,20.168719 5.6066601,20.168719 C 5.6066601,21.330749 5.6066601,22.49278 5.6066601,23.654811 C 4.3686285,23.654811 3.1305967,23.654811 1.8925652,23.654811 C 1.8925652,22.49278 1.8925652,21.330749 1.8925652,20.168719 z"
+ id="path2481" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 1.8925652,14.286366 C 3.1305967,14.286366 4.3686285,14.286366 5.6066601,14.286366 C 5.6066601,15.448396 5.6066601,16.610427 5.6066601,17.772458 C 4.3686285,17.772458 3.1305967,17.772458 1.8925652,17.772458 C 1.8925652,16.610427 1.8925652,15.448396 1.8925652,14.286366 z"
+ id="path2483" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 1.8925652,31.786365 C 3.1305967,31.786365 4.3686285,31.786365 5.6066601,31.786365 C 5.6066601,32.948396 5.6066601,34.110427 5.6066601,35.272457 C 4.3686285,35.272457 3.1305967,35.272457 1.8925652,35.272457 C 1.8925652,34.110427 1.8925652,32.948396 1.8925652,31.786365 z"
+ id="path2485" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 1.8925652,25.904013 C 3.1305967,25.904013 4.3686285,25.904013 5.6066601,25.904013 C 5.6066601,27.066043 5.6066601,28.228074 5.6066601,29.390105 C 4.3686285,29.390105 3.1305967,29.390105 1.8925652,29.390105 C 1.8925652,28.228074 1.8925652,27.066043 1.8925652,25.904013 z"
+ id="path2487" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 1.8925652,37.521661 C 3.1305967,37.521661 4.3686285,37.521661 5.6066601,37.521661 C 5.6066601,38.683691 5.6066601,39.845722 5.6066601,41.007752 C 4.3686285,41.007752 3.1305967,41.007752 1.8925652,41.007752 C 1.8925652,39.845722 1.8925652,38.683691 1.8925652,37.521661 z"
+ id="path2489" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 1.8925652,43.256954 C 3.1305967,43.256954 4.3686285,43.256954 5.6066601,43.256954 C 5.6066601,44.418984 5.6066601,45.581015 5.6066601,46.743045 C 4.3686285,46.743045 3.1305967,46.743045 1.8925652,46.743045 C 1.8925652,45.581015 1.8925652,44.418984 1.8925652,43.256954 z"
+ id="path2491" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 1.8925652,49.139307 C 3.1305967,49.139307 4.3686285,49.139307 5.6066601,49.139307 C 5.6066601,50.301337 5.6066601,51.463368 5.6066601,52.625399 C 4.3686285,52.625399 3.1305967,52.625399 1.8925652,52.625399 C 1.8925652,51.463368 1.8925652,50.301337 1.8925652,49.139307 z"
+ id="path2493" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 7.995624,8.2572845 C 9.233655,8.2572845 10.471687,8.2572845 11.709719,8.2572845 C 11.709719,9.4193145 11.709719,10.581346 11.709719,11.743376 C 10.471687,11.743376 9.233655,11.743376 7.995624,11.743376 C 7.995624,10.581346 7.995624,9.4193145 7.995624,8.2572845 z"
+ id="path2495" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 7.995624,14.286285 C 9.2336547,14.286285 10.471687,14.286285 11.709719,14.286285 C 11.709719,15.448315 11.709719,16.610346 11.709719,17.772376 C 10.471687,17.772376 9.2336547,17.772376 7.995624,17.772376 C 7.995624,16.610346 7.995624,15.448315 7.995624,14.286285 z"
+ id="path2497" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 7.995624,20.168284 C 9.2336546,20.168284 10.471687,20.168284 11.709719,20.168284 C 11.709719,21.330315 11.709719,22.492346 11.709719,23.654376 C 10.471687,23.654376 9.2336546,23.654376 7.995624,23.654376 C 7.995624,22.492346 7.995624,21.330315 7.995624,20.168284 z"
+ id="path2499" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 7.995624,25.904284 C 9.2336547,25.904284 10.471687,25.904284 11.709719,25.904284 C 11.709719,27.066314 11.709719,28.228345 11.709719,29.390376 C 10.471687,29.390376 9.2336547,29.390376 7.995624,29.390376 C 7.995624,28.228345 7.995624,27.066314 7.995624,25.904284 z"
+ id="path2501" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 7.995624,31.786285 C 9.233655,31.786285 10.471687,31.786285 11.709719,31.786285 C 11.709719,32.948315 11.709719,34.110346 11.709719,35.272376 C 10.471687,35.272376 9.233655,35.272376 7.995624,35.272376 C 7.995624,34.110346 7.995624,32.948315 7.995624,31.786285 z"
+ id="path2503" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 7.995624,37.521285 C 9.233655,37.521285 10.471687,37.521285 11.709719,37.521285 C 11.709719,38.683315 11.709719,39.845346 11.709719,41.007376 C 10.471687,41.007376 9.233655,41.007376 7.995624,41.007376 C 7.995624,39.845346 7.995624,38.683315 7.995624,37.521285 z"
+ id="path2505" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 7.995624,43.257284 C 9.2336554,43.257284 10.471687,43.257284 11.709719,43.257284 C 11.709719,44.419314 11.709719,45.581345 11.709719,46.743376 C 10.471687,46.743376 9.2336554,46.743376 7.995624,46.743376 C 7.995624,45.581345 7.995624,44.419314 7.995624,43.257284 z"
+ id="path2507" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 7.995624,49.139285 C 9.2336547,49.139285 10.471687,49.139285 11.709719,49.139285 C 11.709719,50.301315 11.709719,51.463346 11.709719,52.625376 C 10.471687,52.625376 9.2336547,52.625376 7.995624,52.625376 C 7.995624,51.463346 7.995624,50.301315 7.995624,49.139285 z"
+ id="path2509" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 14.172624,8.2572848 C 15.410656,8.2572848 16.648688,8.2572848 17.886719,8.2572848 C 17.886719,9.4193149 17.886719,10.581346 17.886719,11.743376 C 16.648688,11.743376 15.410656,11.743376 14.172624,11.743376 C 14.172624,10.581346 14.172624,9.4193149 14.172624,8.2572848 z"
+ id="path2511" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 14.172624,14.286285 C 15.410656,14.286285 16.648688,14.286285 17.886719,14.286285 C 17.886719,15.448315 17.886719,16.610346 17.886719,17.772376 C 16.648688,17.772376 15.410656,17.772376 14.172624,17.772376 C 14.172624,16.610346 14.172624,15.448315 14.172624,14.286285 z"
+ id="path2513" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 14.172624,20.168284 C 15.410656,20.168284 16.648688,20.168284 17.886719,20.168284 C 17.886719,21.330314 17.886719,22.492345 17.886719,23.654376 C 16.648688,23.654376 15.410656,23.654376 14.172624,23.654376 C 14.172624,22.492345 14.172624,21.330314 14.172624,20.168284 z"
+ id="path2515" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 14.172624,25.904285 C 15.410656,25.904285 16.648688,25.904285 17.886719,25.904285 C 17.886719,27.066315 17.886719,28.228346 17.886719,29.390376 C 16.648688,29.390376 15.410656,29.390376 14.172624,29.390376 C 14.172624,28.228346 14.172624,27.066315 14.172624,25.904285 z"
+ id="path2517" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 14.172364,31.786284 C 15.410396,31.786284 16.648428,31.786284 17.886459,31.786284 C 17.886459,32.948315 17.886459,34.110346 17.886459,35.272376 C 16.648428,35.272376 15.410396,35.272376 14.172364,35.272376 C 14.172364,34.110346 14.172364,32.948315 14.172364,31.786284 z"
+ id="path2519" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 14.172624,37.521285 C 15.410656,37.521285 16.648688,37.521285 17.886719,37.521285 C 17.886719,38.683315 17.886719,39.845346 17.886719,41.007376 C 16.648688,41.007376 15.410656,41.007376 14.172624,41.007376 C 14.172624,39.845346 14.172624,38.683315 14.172624,37.521285 z"
+ id="path2521" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 14.172624,43.257285 C 15.410656,43.257285 16.648688,43.257285 17.886719,43.257285 C 17.886719,44.419315 17.886719,45.581346 17.886719,46.743376 C 16.648688,46.743376 15.410656,46.743376 14.172624,46.743376 C 14.172624,45.581346 14.172624,44.419315 14.172624,43.257285 z"
+ id="path2523" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 14.172624,49.139284 C 15.410656,49.139284 16.648688,49.139284 17.886719,49.139284 C 17.886719,50.301314 17.886719,51.463345 17.886719,52.625376 C 16.648688,52.625376 15.410656,52.625376 14.172624,52.625376 C 14.172624,51.463345 14.172624,50.301314 14.172624,49.139284 z"
+ id="path2525" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 20.201776,8.2572845 C 21.439808,8.2572845 22.677839,8.2572845 23.915871,8.2572845 C 23.915871,9.4193146 23.915871,10.581346 23.915871,11.743376 C 22.677839,11.743376 21.439808,11.743376 20.201776,11.743376 C 20.201776,10.581346 20.201776,9.4193146 20.201776,8.2572845 z"
+ id="path2527" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 20.201624,14.286285 C 21.439656,14.286285 22.677687,14.286285 23.915719,14.286285 C 23.915719,15.448315 23.915719,16.610346 23.915719,17.772376 C 22.677687,17.772376 21.439656,17.772376 20.201624,17.772376 C 20.201624,16.610346 20.201624,15.448315 20.201624,14.286285 z"
+ id="path2529" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 20.201624,20.168284 C 21.439656,20.168284 22.677687,20.168284 23.915719,20.168284 C 23.915719,21.330315 23.915719,22.492346 23.915719,23.654376 C 22.677687,23.654376 21.439656,23.654376 20.201624,23.654376 C 20.201624,22.492346 20.201624,21.330315 20.201624,20.168284 z"
+ id="path2531" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 20.201624,25.904285 C 21.439656,25.904285 22.677687,25.904285 23.915719,25.904285 C 23.915719,27.066315 23.915719,28.228346 23.915719,29.390376 C 22.677687,29.390376 21.439656,29.390376 20.201624,29.390376 C 20.201624,28.228346 20.201624,27.066315 20.201624,25.904285 z"
+ id="path2533" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 20.201624,31.786284 C 21.439656,31.786284 22.677687,31.786284 23.915719,31.786284 C 23.915719,32.948314 23.915719,34.110345 23.915719,35.272376 C 22.677687,35.272376 21.439656,35.272376 20.201624,35.272376 C 20.201624,34.110345 20.201624,32.948314 20.201624,31.786284 z"
+ id="path2535" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 20.201624,37.521284 C 21.439656,37.521284 22.677687,37.521284 23.915719,37.521284 C 23.915719,38.683314 23.915719,39.845345 23.915719,41.007376 C 22.677687,41.007376 21.439656,41.007376 20.201624,41.007376 C 20.201624,39.845345 20.201624,38.683314 20.201624,37.521284 z"
+ id="path2537" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 20.201624,43.257284 C 21.439656,43.257284 22.677687,43.257284 23.915719,43.257284 C 23.915719,44.419315 23.915719,45.581346 23.915719,46.743376 C 22.677687,46.743376 21.439656,46.743376 20.201624,46.743376 C 20.201624,45.581346 20.201624,44.419315 20.201624,43.257284 z"
+ id="path2539" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 20.201776,49.139285 C 21.439808,49.139285 22.677839,49.139285 23.915871,49.139285 C 23.915871,50.301315 23.915871,51.463346 23.915871,52.625376 C 22.677839,52.625376 21.439808,52.625376 20.201776,52.625376 C 20.201776,51.463346 20.201776,50.301315 20.201776,49.139285 z"
+ id="path2541" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 26.231624,8.2572848 C 27.469656,8.2572848 28.707688,8.2572848 29.945719,8.2572848 C 29.945719,9.4193149 29.945719,10.581346 29.945719,11.743376 C 28.707688,11.743376 27.469656,11.743376 26.231624,11.743376 C 26.231624,10.581346 26.231624,9.4193149 26.231624,8.2572848 z"
+ id="path2543" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 26.231624,14.286284 C 27.469656,14.286284 28.707688,14.286284 29.945719,14.286284 C 29.945719,15.448314 29.945719,16.610345 29.945719,17.772376 C 28.707688,17.772376 27.469656,17.772376 26.231624,17.772376 C 26.231624,16.610345 26.231624,15.448314 26.231624,14.286284 z"
+ id="path2545" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 26.231624,20.168284 C 27.469656,20.168284 28.707688,20.168284 29.945719,20.168284 C 29.945719,21.330314 29.945719,22.492345 29.945719,23.654376 C 28.707688,23.654376 27.469656,23.654376 26.231624,23.654376 C 26.231624,22.492345 26.231624,21.330314 26.231624,20.168284 z"
+ id="path2547" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 26.231624,25.904284 C 27.469656,25.904284 28.707688,25.904284 29.945719,25.904284 C 29.945719,27.066314 29.945719,28.228345 29.945719,29.390376 C 28.707688,29.390376 27.469656,29.390376 26.231624,29.390376 C 26.231624,28.228345 26.231624,27.066314 26.231624,25.904284 z"
+ id="path2549" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 26.231624,31.786284 C 27.469656,31.786284 28.707688,31.786284 29.945719,31.786284 C 29.945719,32.948314 29.945719,34.110345 29.945719,35.272376 C 28.707688,35.272376 27.469656,35.272376 26.231624,35.272376 C 26.231624,34.110345 26.231624,32.948314 26.231624,31.786284 z"
+ id="path2551" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 26.231624,37.521284 C 27.469656,37.521284 28.707688,37.521284 29.945719,37.521284 C 29.945719,38.683314 29.945719,39.845345 29.945719,41.007376 C 28.707688,41.007376 27.469656,41.007376 26.231624,41.007376 C 26.231624,39.845345 26.231624,38.683314 26.231624,37.521284 z"
+ id="path2553" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 26.231624,43.257285 C 27.469656,43.257285 28.707688,43.257285 29.945719,43.257285 C 29.945719,44.419315 29.945719,45.581346 29.945719,46.743376 C 28.707688,46.743376 27.469656,46.743376 26.231624,46.743376 C 26.231624,45.581346 26.231624,44.419315 26.231624,43.257285 z"
+ id="path2555" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 26.231624,49.139285 C 27.469656,49.139285 28.707688,49.139285 29.945719,49.139285 C 29.945719,50.301315 29.945719,51.463346 29.945719,52.625376 C 28.707688,52.625376 27.469656,52.625376 26.231624,52.625376 C 26.231624,51.463346 26.231624,50.301315 26.231624,49.139285 z"
+ id="path2557" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 32.113624,8.2572842 C 33.351656,8.2572842 34.589687,8.2572842 35.827719,8.2572842 C 35.827719,9.4193143 35.827719,10.581345 35.827719,11.743376 C 34.589687,11.743376 33.351656,11.743376 32.113624,11.743376 C 32.113624,10.581345 32.113624,9.4193143 32.113624,8.2572842 z"
+ id="path2559" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 32.113624,14.286285 C 33.351656,14.286285 34.589687,14.286285 35.827719,14.286285 C 35.827719,15.448315 35.827719,16.610346 35.827719,17.772376 C 34.589687,17.772376 33.351656,17.772376 32.113624,17.772376 C 32.113624,16.610346 32.113624,15.448315 32.113624,14.286285 z"
+ id="path2561" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 32.113624,20.168719 C 33.351656,20.168719 34.589687,20.168719 35.827719,20.168719 C 35.827719,21.33075 35.827719,22.492781 35.827719,23.654811 C 34.589687,23.654811 33.351656,23.654811 32.113624,23.654811 C 32.113624,22.492781 32.113624,21.33075 32.113624,20.168719 z"
+ id="path2563" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 32.113624,31.786284 C 33.351656,31.786284 34.589687,31.786284 35.827719,31.786284 C 35.827719,32.948314 35.827719,34.110345 35.827719,35.272376 C 34.589687,35.272376 33.351656,35.272376 32.113624,35.272376 C 32.113624,34.110345 32.113624,32.948314 32.113624,31.786284 z"
+ id="path2565" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 32.113624,25.904284 C 33.351656,25.904284 34.589687,25.904284 35.827719,25.904284 C 35.827719,27.066314 35.827719,28.228345 35.827719,29.390376 C 34.589687,29.390376 33.351656,29.390376 32.113624,29.390376 C 32.113624,28.228345 32.113624,27.066314 32.113624,25.904284 z"
+ id="path2567" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 32.113624,37.521285 C 33.351656,37.521285 34.589687,37.521285 35.827719,37.521285 C 35.827719,38.683315 35.827719,39.845346 35.827719,41.007376 C 34.589687,41.007376 33.351656,41.007376 32.113624,41.007376 C 32.113624,39.845346 32.113624,38.683315 32.113624,37.521285 z"
+ id="path2569" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 32.113624,43.257285 C 33.351656,43.257285 34.589687,43.257285 35.827719,43.257285 C 35.827719,44.419315 35.827719,45.581346 35.827719,46.743376 C 34.589687,46.743376 33.351656,46.743376 32.113624,46.743376 C 32.113624,45.581346 32.113624,44.419315 32.113624,43.257285 z"
+ id="path2571" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 32.113624,49.139284 C 33.351656,49.139284 34.589687,49.139284 35.827719,49.139284 C 35.827719,50.301314 35.827719,51.463345 35.827719,52.625376 C 34.589687,52.625376 33.351656,52.625376 32.113624,52.625376 C 32.113624,51.463345 32.113624,50.301314 32.113624,49.139284 z"
+ id="path2573" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 38.142624,8.2572843 C 39.380655,8.2572843 40.618687,8.2572843 41.856719,8.2572843 C 41.856719,9.4193144 41.856719,10.581345 41.856719,11.743376 C 40.618687,11.743376 39.380655,11.743376 38.142624,11.743376 C 38.142624,10.581345 38.142624,9.4193144 38.142624,8.2572843 z"
+ id="path2575" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 38.142624,14.286284 C 39.380655,14.286284 40.618687,14.286284 41.856719,14.286284 C 41.856719,15.448314 41.856719,16.610345 41.856719,17.772376 C 40.618687,17.772376 39.380655,17.772376 38.142624,17.772376 C 38.142624,16.610345 38.142624,15.448314 38.142624,14.286284 z"
+ id="path2577" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 38.142624,20.168285 C 39.380655,20.168285 40.618687,20.168285 41.856719,20.168285 C 41.856719,21.330315 41.856719,22.492346 41.856719,23.654376 C 40.618687,23.654376 39.380655,23.654376 38.142624,23.654376 C 38.142624,22.492346 38.142624,21.330315 38.142624,20.168285 z"
+ id="path2579" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 38.142624,25.904284 C 39.380655,25.904284 40.618687,25.904284 41.856719,25.904284 C 41.856719,27.066314 41.856719,28.228345 41.856719,29.390376 C 40.618687,29.390376 39.380655,29.390376 38.142624,29.390376 C 38.142624,28.228345 38.142624,27.066314 38.142624,25.904284 z"
+ id="path2581" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 38.142624,31.786284 C 39.380655,31.786284 40.618687,31.786284 41.856719,31.786284 C 41.856719,32.948314 41.856719,34.110345 41.856719,35.272376 C 40.618687,35.272376 39.380655,35.272376 38.142624,35.272376 C 38.142624,34.110345 38.142624,32.948314 38.142624,31.786284 z"
+ id="path2583" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 38.142624,37.521284 C 39.380655,37.521284 40.618687,37.521284 41.856719,37.521284 C 41.856719,38.683315 41.856719,39.845346 41.856719,41.007376 C 40.618687,41.007376 39.380655,41.007376 38.142624,41.007376 C 38.142624,39.845346 38.142624,38.683315 38.142624,37.521284 z"
+ id="path2585" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 38.142624,43.257285 C 39.380655,43.257285 40.618687,43.257285 41.856719,43.257285 C 41.856719,44.419315 41.856719,45.581346 41.856719,46.743376 C 40.618687,46.743376 39.380655,46.743376 38.142624,46.743376 C 38.142624,45.581346 38.142624,44.419315 38.142624,43.257285 z"
+ id="path2587" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 38.142624,49.139285 C 39.380655,49.139285 40.618687,49.139285 41.856719,49.139285 C 41.856719,50.301315 41.856719,51.463346 41.856719,52.625376 C 40.618687,52.625376 39.380655,52.625376 38.142624,52.625376 C 38.142624,51.463346 38.142624,50.301315 38.142624,49.139285 z"
+ id="path2589" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 44.025624,8.2572848 C 45.263656,8.2572848 46.501688,8.2572848 47.739719,8.2572848 C 47.739719,9.4193149 47.739719,10.581346 47.739719,11.743376 C 46.501688,11.743376 45.263656,11.743376 44.025624,11.743376 C 44.025624,10.581346 44.025624,9.4193149 44.025624,8.2572848 z"
+ id="path2591" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 44.025305,14.286285 C 45.263337,14.286285 46.501369,14.286285 47.7394,14.286285 C 47.7394,15.448315 47.7394,16.610346 47.7394,17.772376 C 46.501369,17.772376 45.263337,17.772376 44.025305,17.772376 C 44.025305,16.610346 44.025305,15.448315 44.025305,14.286285 z"
+ id="path2593" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 44.025624,20.168285 C 45.263656,20.168285 46.501688,20.168285 47.739719,20.168285 C 47.739719,21.330315 47.739719,22.492346 47.739719,23.654376 C 46.501688,23.654376 45.263656,23.654376 44.025624,23.654376 C 44.025624,22.492346 44.025624,21.330315 44.025624,20.168285 z"
+ id="path2595" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 43.878565,49.139285 C 45.116597,49.139285 46.354629,49.139285 47.59266,49.139285 C 47.59266,50.301315 47.59266,51.463346 47.59266,52.625376 C 46.354629,52.625376 45.116597,52.625376 43.878565,52.625376 C 43.878565,51.463346 43.878565,50.301315 43.878565,49.139285 z"
+ id="path2597" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 44.025305,25.904284 C 45.263337,25.904284 46.501369,25.904284 47.7394,25.904284 C 47.7394,27.066314 47.7394,28.228345 47.7394,29.390376 C 46.501369,29.390376 45.263337,29.390376 44.025305,29.390376 C 44.025305,28.228345 44.025305,27.066314 44.025305,25.904284 z"
+ id="path2599" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 44.025624,31.786284 C 45.263656,31.786284 46.501688,31.786284 47.739719,31.786284 C 47.739719,32.948314 47.739719,34.110345 47.739719,35.272376 C 46.501688,35.272376 45.263656,35.272376 44.025624,35.272376 C 44.025624,34.110345 44.025624,32.948314 44.025624,31.786284 z"
+ id="path2601" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 44.025624,37.521285 C 45.263656,37.521285 46.501688,37.521285 47.739719,37.521285 C 47.739719,38.683315 47.739719,39.845346 47.739719,41.007376 C 46.501688,41.007376 45.263656,41.007376 44.025624,41.007376 C 44.025624,39.845346 44.025624,38.683315 44.025624,37.521285 z"
+ id="path2603" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 44.025624,43.257284 C 45.263656,43.257284 46.501688,43.257284 47.739719,43.257284 C 47.739719,44.419314 47.739719,45.581345 47.739719,46.743376 C 46.501688,46.743376 45.263656,46.743376 44.025624,46.743376 C 44.025624,45.581345 44.025624,44.419314 44.025624,43.257284 z"
+ id="path2605" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 49.760624,8.2572842 C 50.998655,8.2572842 52.236687,8.2572842 53.474719,8.2572842 C 53.474719,9.4193143 53.474719,10.581345 53.474719,11.743376 C 52.236687,11.743376 50.998655,11.743376 49.760624,11.743376 C 49.760624,10.581345 49.760624,9.4193143 49.760624,8.2572842 z"
+ id="path2607" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 49.760624,14.286285 C 50.998655,14.286285 52.236687,14.286285 53.474719,14.286285 C 53.474719,15.448315 53.474719,16.610346 53.474719,17.772376 C 52.236687,17.772376 50.998655,17.772376 49.760624,17.772376 C 49.760624,16.610346 49.760624,15.448315 49.760624,14.286285 z"
+ id="path2609" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 49.760624,20.168285 C 50.998655,20.168285 52.236687,20.168285 53.474719,20.168285 C 53.474719,21.330315 53.474719,22.492346 53.474719,23.654376 C 52.236687,23.654376 50.998655,23.654376 49.760624,23.654376 C 49.760624,22.492346 49.760624,21.330315 49.760624,20.168285 z"
+ id="path2611" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 49.760624,25.904284 C 50.998655,25.904284 52.236687,25.904284 53.474719,25.904284 C 53.474719,27.066314 53.474719,28.228345 53.474719,29.390376 C 52.236687,29.390376 50.998655,29.390376 49.760624,29.390376 C 49.760624,28.228345 49.760624,27.066314 49.760624,25.904284 z"
+ id="path2613" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 49.760624,31.786284 C 50.998655,31.786284 52.236687,31.786284 53.474719,31.786284 C 53.474719,32.948314 53.474719,34.110345 53.474719,35.272376 C 52.236687,35.272376 50.998655,35.272376 49.760624,35.272376 C 49.760624,34.110345 49.760624,32.948314 49.760624,31.786284 z"
+ id="path2615" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 49.7606,43.257285 C 50.998631,43.257285 52.236663,43.257285 53.474695,43.257285 C 53.474695,44.419315 53.474695,45.581346 53.474695,46.743376 C 52.236663,46.743376 50.998631,46.743376 49.7606,46.743376 C 49.7606,45.581346 49.7606,44.419315 49.7606,43.257285 z"
+ id="path2617" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 49.7606,49.139284 C 50.998631,49.139284 52.236663,49.139284 53.474695,49.139284 C 53.474695,50.301314 53.474695,51.463345 53.474695,52.625376 C 52.236663,52.625376 50.998631,52.625376 49.7606,52.625376 C 49.7606,51.463345 49.7606,50.301314 49.7606,49.139284 z"
+ id="path2619" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.38524806;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 49.760624,37.521285 C 50.998655,37.521285 52.236687,37.521285 53.474719,37.521285 C 53.474719,38.683315 53.474719,39.845346 53.474719,41.007376 C 52.236687,41.007376 50.998655,41.007376 49.760624,41.007376 C 49.760624,39.845346 49.760624,38.683315 49.760624,37.521285 z"
+ id="path2621" />
+</svg>
diff --git a/icons/easy-level.svg b/icons/easy-level.svg
new file mode 100755
index 0000000..d863d4f
--- /dev/null
+++ b/icons/easy-level.svg
@@ -0,0 +1,72 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://web.resource.org/cc/"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ version="1.1"
+ x="0px"
+ y="0px"
+ width="55px"
+ height="55px"
+ id="svg2"
+ sodipodi:version="0.32"
+ inkscape:version="0.43"
+ sodipodi:docname="easy-level.svg"
+ sodipodi:docbase="C:\src\implode\icons">
+ <metadata
+ id="metadata9">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <defs
+ id="defs7" />
+ <sodipodi:namedview
+ inkscape:window-height="540"
+ inkscape:window-width="756"
+ inkscape:pageshadow="2"
+ inkscape:pageopacity="1"
+ borderopacity="1.0"
+ bordercolor="#666666"
+ pagecolor="#7f7f7f"
+ id="base"
+ inkscape:zoom="6.8"
+ inkscape:cx="30.441176"
+ inkscape:cy="33.653437"
+ inkscape:window-x="88"
+ inkscape:window-y="88"
+ inkscape:current-layer="svg2" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:4.00988102;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 6.5343528,30.950261 C 10.072483,30.950261 13.610614,30.950261 17.148744,30.950261 C 17.148744,34.357351 17.148744,37.764441 17.148744,41.171531 C 13.610614,41.171531 10.072483,41.171531 6.5343528,41.171531 C 6.5343528,37.764441 6.5343528,34.357351 6.5343528,30.950261 z "
+ id="rect1310" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:4.00988102;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 22.505079,30.950261 C 26.043211,30.950261 29.581341,30.950261 33.119473,30.950261 C 33.119473,34.357351 33.119473,37.764441 33.119473,41.171531 C 29.581341,41.171531 26.043211,41.171531 22.505079,41.171531 C 22.505079,37.764441 22.505079,34.357351 22.505079,30.950261 z "
+ id="path2359" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:4.00988102;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 38.475807,30.950261 C 42.013937,30.950261 45.552069,30.950261 49.090201,30.950261 C 49.090201,34.357351 49.090201,37.764441 49.090201,41.171531 C 45.552069,41.171531 42.013937,41.171531 38.475807,41.171531 C 38.475807,37.764441 38.475807,34.357351 38.475807,30.950261 z "
+ id="path2357" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:4.00988102;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 38.475807,15.290761 C 42.013937,15.290761 45.552069,15.290761 49.090201,15.290761 C 49.090201,18.697849 49.090201,22.104937 49.090201,25.512025 C 45.552069,25.512025 42.013937,25.512025 38.475807,25.512025 C 38.475807,22.104937 38.475807,18.697849 38.475807,15.290761 z "
+ id="path2353" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:4.00988102;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 22.505079,15.290761 C 26.043211,15.290761 29.581341,15.290761 33.119473,15.290761 C 33.119473,18.697849 33.119473,22.104937 33.119473,25.512025 C 29.581341,25.512025 26.043211,25.512025 22.505079,25.512025 C 22.505079,22.104937 22.505079,18.697849 22.505079,15.290761 z "
+ id="path2345" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:4.00988102;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 6.5343528,15.290761 C 10.072483,15.290761 13.610614,15.290761 17.148744,15.290761 C 17.148744,18.697849 17.148744,22.104937 17.148744,25.512025 C 13.610614,25.512025 10.072483,25.512025 6.5343528,25.512025 C 6.5343528,22.104937 6.5343528,18.697849 6.5343528,15.290761 z "
+ id="path2341" />
+</svg>
diff --git a/icons/edit-redo.svg b/icons/edit-redo.svg
new file mode 100755
index 0000000..8950dec
--- /dev/null
+++ b/icons/edit-redo.svg
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 13.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="55px"
+ height="55px" viewBox="0 0 55 55" enable-background="new 0 0 55 55" xml:space="preserve">
+
+<g id="Redo" >
+ <g display="inline">
+ <polyline fill="none" stroke="#FFFFFF" stroke-width="2.9867" stroke-linecap="round" stroke-linejoin="round" points="
+ 33.067,27.523 40.879,20.935 33.067,14.344 "/>
+ <path fill="none" stroke="#FFFFFF" stroke-width="2.9867" stroke-linecap="round" d="M40.879,20.935H23.625
+ c-4.693,0-8.534,3.841-8.534,8.534s3.841,8.533,8.534,8.533h15.548"/>
+ </g>
+</g>
+
+</svg>
diff --git a/icons/edit-undo.svg b/icons/edit-undo.svg
new file mode 100755
index 0000000..d6590e8
--- /dev/null
+++ b/icons/edit-undo.svg
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 13.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="55px"
+ height="55px" viewBox="0 0 55 55" enable-background="new 0 0 55 55" xml:space="preserve">
+
+<g id="Undo" >
+ <g display="inline">
+ <polyline fill="none" stroke="#FFFFFF" stroke-width="2.9867" stroke-linecap="round" stroke-linejoin="round" points="
+ 22.903,27.523 15.091,20.935 22.903,14.344 "/>
+ <path fill="none" stroke="#FFFFFF" stroke-width="2.9867" stroke-linecap="round" d="M15.091,20.935h17.254
+ c4.693,0,8.534,3.841,8.534,8.534s-3.841,8.533-8.534,8.533H16.798"/>
+ </g>
+</g>
+</svg>
diff --git a/icons/hard-level.svg b/icons/hard-level.svg
new file mode 100755
index 0000000..19e8494
--- /dev/null
+++ b/icons/hard-level.svg
@@ -0,0 +1,128 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://web.resource.org/cc/"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ version="1.1"
+ x="0px"
+ y="0px"
+ width="55px"
+ height="55px"
+ id="svg2"
+ sodipodi:version="0.32"
+ inkscape:version="0.43"
+ sodipodi:docname="hard-level.svg"
+ sodipodi:docbase="C:\src\implode\icons">
+ <metadata
+ id="metadata9">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <defs
+ id="defs7" />
+ <sodipodi:namedview
+ inkscape:window-height="540"
+ inkscape:window-width="756"
+ inkscape:pageshadow="2"
+ inkscape:pageopacity="1"
+ borderopacity="1.0"
+ bordercolor="#666666"
+ pagecolor="#7f7f7f"
+ id="base"
+ inkscape:zoom="6.8"
+ inkscape:cx="30.441176"
+ inkscape:cy="33.653437"
+ inkscape:window-x="88"
+ inkscape:window-y="88"
+ inkscape:current-layer="svg2" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.32562613;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 5.6922254,36.085589 C 7.7442485,36.085589 9.7962717,36.085589 11.848295,36.085589 C 11.848295,38.061612 11.848295,40.037635 11.848295,42.013658 C 9.7962717,42.013658 7.7442485,42.013658 5.6922254,42.013658 C 5.6922254,40.037635 5.6922254,38.061612 5.6922254,36.085589 z "
+ id="rect1310" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.32562613;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 14.954829,36.085589 C 17.006853,36.085589 19.058876,36.085589 21.1109,36.085589 C 21.1109,38.061612 21.1109,40.037635 21.1109,42.013658 C 19.058876,42.013658 17.006853,42.013658 14.954829,42.013658 C 14.954829,40.037635 14.954829,38.061612 14.954829,36.085589 z "
+ id="path2359" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.32562613;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 24.217434,36.085589 C 26.269457,36.085589 28.321481,36.085589 30.373505,36.085589 C 30.373505,38.061612 30.373505,40.037635 30.373505,42.013658 C 28.321481,42.013658 26.269457,42.013658 24.217434,42.013658 C 24.217434,40.037635 24.217434,38.061612 24.217434,36.085589 z "
+ id="path2357" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.32562613;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 33.480038,36.085589 C 35.532061,36.085589 37.584085,36.085589 39.636108,36.085589 C 39.636108,38.061612 39.636108,40.037635 39.636108,42.013658 C 37.584085,42.013658 35.532061,42.013658 33.480038,42.013658 C 33.480038,40.037635 33.480038,38.061612 33.480038,36.085589 z "
+ id="path2355" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.32562613;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 24.217434,27.003488 C 26.269457,27.003488 28.321481,27.003488 30.373505,27.003488 C 30.373505,28.97951 30.373505,30.955532 30.373505,32.931554 C 28.321481,32.931554 26.269457,32.931554 24.217434,32.931554 C 24.217434,30.955532 24.217434,28.97951 24.217434,27.003488 z "
+ id="path2353" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.32562613;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 24.217434,17.921386 C 26.269457,17.921386 28.321481,17.921386 30.373505,17.921386 C 30.373505,19.897408 30.373505,21.87343 30.373505,23.849452 C 28.321481,23.849452 26.269457,23.849452 24.217434,23.849452 C 24.217434,21.87343 24.217434,19.897408 24.217434,17.921386 z "
+ id="path2351" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.32562613;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 33.480038,27.003488 C 35.532061,27.003488 37.584085,27.003488 39.636108,27.003488 C 39.636108,28.97951 39.636108,30.955532 39.636108,32.931554 C 37.584085,32.931554 35.532061,32.931554 33.480038,32.931554 C 33.480038,30.955532 33.480038,28.97951 33.480038,27.003488 z "
+ id="path2349" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.32562613;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 33.480038,17.921386 C 35.532061,17.921386 37.584085,17.921386 39.636108,17.921386 C 39.636108,19.897408 39.636108,21.87343 39.636108,23.849452 C 37.584085,23.849452 35.532061,23.849452 33.480038,23.849452 C 33.480038,21.87343 33.480038,19.897408 33.480038,17.921386 z "
+ id="path2347" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.32562613;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 14.954829,27.003488 C 17.006853,27.003488 19.058876,27.003488 21.1109,27.003488 C 21.1109,28.97951 21.1109,30.955532 21.1109,32.931554 C 19.058876,32.931554 17.006853,32.931554 14.954829,32.931554 C 14.954829,30.955532 14.954829,28.97951 14.954829,27.003488 z "
+ id="path2345" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.32562613;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 14.954829,17.921386 C 17.006853,17.921386 19.058876,17.921386 21.1109,17.921386 C 21.1109,19.897408 21.1109,21.87343 21.1109,23.849452 C 19.058876,23.849452 17.006853,23.849452 14.954829,23.849452 C 14.954829,21.87343 14.954829,19.897408 14.954829,17.921386 z "
+ id="path2343" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.32562613;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 5.6922254,27.003488 C 7.7442485,27.003488 9.7962717,27.003488 11.848295,27.003488 C 11.848295,28.97951 11.848295,30.955532 11.848295,32.931554 C 9.7962717,32.931554 7.7442485,32.931554 5.6922254,32.931554 C 5.6922254,30.955532 5.6922254,28.97951 5.6922254,27.003488 z "
+ id="path2341" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.32562613;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 5.6922254,17.921386 C 7.7442485,17.921386 9.7962717,17.921386 11.848295,17.921386 C 11.848295,19.897408 11.848295,21.87343 11.848295,23.849452 C 9.7962717,23.849452 7.7442485,23.849452 5.6922254,23.849452 C 5.6922254,21.87343 5.6922254,19.897408 5.6922254,17.921386 z "
+ id="path2339" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.32562613;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 42.742643,36.085589 C 44.794666,36.085589 46.84669,36.085589 48.898713,36.085589 C 48.898713,38.061612 48.898713,40.037635 48.898713,42.013658 C 46.84669,42.013658 44.794666,42.013658 42.742643,42.013658 C 42.742643,40.037635 42.742643,38.061612 42.742643,36.085589 z "
+ id="path2337" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.32562613;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 42.742643,27.003488 C 44.794666,27.003488 46.84669,27.003488 48.898713,27.003488 C 48.898713,28.97951 48.898713,30.955532 48.898713,32.931554 C 46.84669,32.931554 44.794666,32.931554 42.742643,32.931554 C 42.742643,30.955532 42.742643,28.97951 42.742643,27.003488 z "
+ id="path2335" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.32562613;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 42.742643,17.921386 C 44.794666,17.921386 46.84669,17.921386 48.898713,17.921386 C 48.898713,19.897408 48.898713,21.87343 48.898713,23.849452 C 46.84669,23.849452 44.794666,23.849452 42.742643,23.849452 C 42.742643,21.87343 42.742643,19.897408 42.742643,17.921386 z "
+ id="path2333" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.32562613;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 24.217434,8.8392837 C 26.269457,8.8392837 28.321481,8.8392837 30.373505,8.8392837 C 30.373505,10.815305 30.373505,12.791328 30.373505,14.76735 C 28.321481,14.76735 26.269457,14.76735 24.217434,14.76735 C 24.217434,12.791328 24.217434,10.815305 24.217434,8.8392837 z "
+ id="path2331" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.32562613;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 33.480038,8.8392837 C 35.532061,8.8392837 37.584085,8.8392837 39.636108,8.8392837 C 39.636108,10.815305 39.636108,12.791328 39.636108,14.76735 C 37.584085,14.76735 35.532061,14.76735 33.480038,14.76735 C 33.480038,12.791328 33.480038,10.815305 33.480038,8.8392837 z "
+ id="path2329" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.32562613;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 14.954829,8.8392837 C 17.006853,8.8392837 19.058876,8.8392837 21.1109,8.8392837 C 21.1109,10.815305 21.1109,12.791328 21.1109,14.76735 C 19.058876,14.76735 17.006853,14.76735 14.954829,14.76735 C 14.954829,12.791328 14.954829,10.815305 14.954829,8.8392837 z "
+ id="path2327" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.32562613;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 5.6922254,8.8392837 C 7.7442485,8.8392837 9.7962717,8.8392837 11.848295,8.8392837 C 11.848295,10.815305 11.848295,12.791328 11.848295,14.76735 C 9.7962717,14.76735 7.7442485,14.76735 5.6922254,14.76735 C 5.6922254,12.791328 5.6922254,10.815305 5.6922254,8.8392837 z "
+ id="path2325" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:2.32562613;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 42.742643,8.8392837 C 44.794666,8.8392837 46.84669,8.8392837 48.898713,8.8392837 C 48.898713,10.815305 48.898713,12.791328 48.898713,14.76735 C 46.84669,14.76735 44.794666,14.76735 42.742643,14.76735 C 42.742643,12.791328 42.742643,10.815305 42.742643,8.8392837 z "
+ id="path2323" />
+</svg>
diff --git a/icons/help.svg b/icons/help.svg
new file mode 100755
index 0000000..4611d8a
--- /dev/null
+++ b/icons/help.svg
@@ -0,0 +1,9 @@
+<?xml version="1.0" ?><!DOCTYPE svg PUBLIC '-//W3C//DTD SVG 1.1//EN' 'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd' [
+ <!ENTITY stroke_color "#000">
+ <!ENTITY fill_color "#eee">
+]><svg height="55px" viewBox="0 0 55 55" width="55px" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" stroke-linecap="round" stroke-linejoin="round" stroke-width="3.5" stroke="&stroke_color;" fill="&fill_color;">
+ <g>
+ <path d="M 50 27.625 C 50 39.9681 39.8431 50.125 27.5 50.125 C 15.1569 50.125 5 39.9681 5 27.625 C 5 15.2819 15.1569 5.125 27.5 5.125 C 39.8431 5.125 50 15.2819 50 27.625 Z " />
+ <path d="M 23.956 27.167 C 23.956 25.546 25.756 25.277 27.601 24.781 C 29.401 24.286 31.201 23.566 31.201 20.956 C 31.201 18.976 29.356 17.536 27.467 17.536 C 23.687 17.536 23.102 21.991 20.221 21.991 C 18.601 21.991 17.476 20.731 17.476 18.751 C 17.476 14.025 23.416 11.326 27.467 11.326 C 33.273 11.326 38.223 14.926 38.223 20.957 C 38.223 25.952 35.073 28.878 30.438 30.048 L 30.438 31.667 C 30.438 33.468 29.087 34.772 27.197 34.772 C 25.172 34.772 23.957 33.467 23.957 31.667 L 23.957 27.167 Z M 23.686 40.937 C 23.686 39.002 25.261 37.427 27.196 37.427 C 29.132 37.427 30.706 39.002 30.706 40.937 C 30.706 42.873 29.132 44.449 27.196 44.449 C 25.261 44.448 23.686 42.872 23.686 40.937 Z " fill="&stroke_color;" stroke="none" />
+ </g>
+</svg> \ No newline at end of file
diff --git a/icons/medium-level.svg b/icons/medium-level.svg
new file mode 100755
index 0000000..14f3a6b
--- /dev/null
+++ b/icons/medium-level.svg
@@ -0,0 +1,106 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ version="1.1"
+ x="0px"
+ y="0px"
+ width="55px"
+ height="55px"
+ id="svg2"
+ sodipodi:version="0.32"
+ inkscape:version="0.46"
+ sodipodi:docname="medium-level.svg"
+ sodipodi:docbase="C:\src\implode\icons"
+ inkscape:output_extension="org.inkscape.output.svg.inkscape">
+ <metadata
+ id="metadata9">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <defs
+ id="defs7">
+ <inkscape:perspective
+ sodipodi:type="inkscape:persp3d"
+ inkscape:vp_x="0 : 27.5 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_z="55 : 27.5 : 1"
+ inkscape:persp3d-origin="27.5 : 18.333333 : 1"
+ id="perspective18" />
+ </defs>
+ <sodipodi:namedview
+ inkscape:window-height="988"
+ inkscape:window-width="1680"
+ inkscape:pageshadow="2"
+ inkscape:pageopacity="1"
+ borderopacity="1.0"
+ bordercolor="#666666"
+ pagecolor="#7f7f7f"
+ id="base"
+ inkscape:zoom="6.8"
+ inkscape:cx="27.5"
+ inkscape:cy="50.271085"
+ inkscape:window-x="-8"
+ inkscape:window-y="-8"
+ inkscape:current-layer="svg2"
+ showgrid="false" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 6.0294123,34.029411 C 8.6764711,34.029411 11.32353,34.029411 13.970589,34.029411 C 13.970589,36.578431 13.970589,39.127452 13.970589,41.676472 C 11.32353,41.676472 8.6764711,41.676472 6.0294123,41.676472 C 6.0294123,39.127452 6.0294123,36.578431 6.0294123,34.029411 z "
+ id="rect1310" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 17.990196,34.029411 C 20.637255,34.029411 23.284314,34.029411 25.931374,34.029411 C 25.931374,36.578431 25.931374,39.127452 25.931374,41.676472 C 23.284314,41.676472 20.637255,41.676472 17.990196,41.676472 C 17.990196,39.127452 17.990196,36.578431 17.990196,34.029411 z "
+ id="path2240" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 29.950981,34.029411 C 32.59804,34.029411 35.245099,34.029411 37.892159,34.029411 C 37.892159,36.578431 37.892159,39.127452 37.892159,41.676472 C 35.245099,41.676472 32.59804,41.676472 29.950981,41.676472 C 29.950981,39.127452 29.950981,36.578431 29.950981,34.029411 z "
+ id="path2238" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 41.911766,34.029411 C 44.558825,34.029411 47.205884,34.029411 49.852943,34.029411 C 49.852943,36.578431 49.852943,39.127452 49.852943,41.676472 C 47.205884,41.676472 44.558825,41.676472 41.911766,41.676472 C 41.911766,39.127452 41.911766,36.578431 41.911766,34.029411 z "
+ id="path2236" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 29.950981,22.264706 C 32.59804,22.264706 35.245099,22.264706 37.892159,22.264706 C 37.892159,24.813725 37.892159,27.362745 37.892159,29.911764 C 35.245099,29.911764 32.59804,29.911764 29.950981,29.911764 C 29.950981,27.362745 29.950981,24.813725 29.950981,22.264706 z "
+ id="path2234" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 29.950981,10.5 C 32.59804,10.5 35.245099,10.5 37.892159,10.5 C 37.892159,13.049019 37.892159,15.598039 37.892159,18.147058 C 35.245099,18.147058 32.59804,18.147058 29.950981,18.147058 C 29.950981,15.598039 29.950981,13.049019 29.950981,10.5 z "
+ id="path2232" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 41.911766,22.264706 C 44.558825,22.264706 47.205884,22.264706 49.852943,22.264706 C 49.852943,24.813725 49.852943,27.362745 49.852943,29.911764 C 47.205884,29.911764 44.558825,29.911764 41.911766,29.911764 C 41.911766,27.362745 41.911766,24.813725 41.911766,22.264706 z "
+ id="path2230" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 41.911766,10.5 C 44.558825,10.5 47.205884,10.5 49.852943,10.5 C 49.852943,13.049019 49.852943,15.598039 49.852943,18.147058 C 47.205884,18.147058 44.558825,18.147058 41.911766,18.147058 C 41.911766,15.598039 41.911766,13.049019 41.911766,10.5 z "
+ id="path2228" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 17.990196,22.264706 C 20.637255,22.264706 23.284314,22.264706 25.931374,22.264706 C 25.931374,24.813725 25.931374,27.362745 25.931374,29.911764 C 23.284314,29.911764 20.637255,29.911764 17.990196,29.911764 C 17.990196,27.362745 17.990196,24.813725 17.990196,22.264706 z "
+ id="path2226" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 17.990196,10.5 C 20.637255,10.5 23.284314,10.5 25.931374,10.5 C 25.931374,13.049019 25.931374,15.598039 25.931374,18.147058 C 23.284314,18.147058 20.637255,18.147058 17.990196,18.147058 C 17.990196,15.598039 17.990196,13.049019 17.990196,10.5 z "
+ id="path2224" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 6.0294123,22.264706 C 8.6764711,22.264706 11.32353,22.264706 13.970589,22.264706 C 13.970589,24.813725 13.970589,27.362745 13.970589,29.911764 C 11.32353,29.911764 8.6764711,29.911764 6.0294123,29.911764 C 6.0294123,27.362745 6.0294123,24.813725 6.0294123,22.264706 z "
+ id="path2222" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 6.0294123,10.5 C 8.6764711,10.5 11.32353,10.5 13.970589,10.5 C 13.970589,13.049019 13.970589,15.598039 13.970589,18.147058 C 11.32353,18.147058 8.6764711,18.147058 6.0294123,18.147058 C 6.0294123,15.598039 6.0294123,13.049019 6.0294123,10.5 z "
+ id="path2220" />
+</svg>
diff --git a/icons/new-game.svg b/icons/new-game.svg
new file mode 100755
index 0000000..5081fbd
--- /dev/null
+++ b/icons/new-game.svg
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ x="0px"
+ y="0px"
+ width="55px"
+ height="55px" >
+<path
+ style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:3.95744967;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 15,47.647058 L 20.357437,29.061607 L 4.7920195,17.579494 L 24.123373,16.931499 L 30.233533,-1.4202612 L 36.823529,16.764707 L 56.165234,16.904809 L 40.906722,28.791732 L 46.750393,47.23008 L 30.730117,36.391634 L 15,47.647058 z "
+ transform="matrix(0.704893,0,0,0.702581,6.494446,10.69787)" /></svg>
diff --git a/icons/replay-game.svg b/icons/replay-game.svg
new file mode 100755
index 0000000..8966bc6
--- /dev/null
+++ b/icons/replay-game.svg
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ x="0px"
+ y="0px"
+ width="55px"
+ height="55px" >
+<path
+ style="fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 23.540935,16.565116 L 23.540935,42.111354 L 8.1151708,29.338235 L 23.540935,16.565116 z " /><path
+ style="fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 42.966713,16.565116 L 42.966713,42.111354 L 27.540948,29.338235 L 42.966713,16.565116 z " /></svg>
diff --git a/manifest b/manifest
new file mode 100755
index 0000000..f404d2b
--- /dev/null
+++ b/manifest
@@ -0,0 +1,7 @@
+activity/activity.info
+activity/activity-producepuzzle.svg
+bin/launcher
+ppgame.py
+ppactivity.py
+setup.py
+
diff --git a/ppactivity.py b/ppactivity.py
new file mode 100755
index 0000000..b003250
--- /dev/null
+++ b/ppactivity.py
@@ -0,0 +1,177 @@
+#!/usr/bin/env python
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+
+# Importing section
+import logging
+_logger = logging.getLogger('producepuzzle-activity')
+
+from gettext import gettext as _
+
+from sugar.graphics.toolbutton import ToolButton
+from sugar.graphics.radiotoolbutton import RadioToolButton
+from sugar.activity import activity
+from sugar.activity.activity import ActivityToolbox
+
+import ppgame
+import gobject
+import os
+import sys
+import gtk
+
+# Main Activity class
+class ProducePuzzleActivity(activity.Activity):
+
+ # Just a quick check to be sure we're up and running
+ def hello(self, widget, data=None):
+ logging.info('Hello World')
+
+ # Initialize our class
+ def __init__(self, handle):
+
+ # Print to log
+ print "Initializing Produce Puzzle", handle
+
+ # Gets us up and running!
+ activity.Activity.__init__(self, handle)
+ print "Produce Puzzle is now running!"
+
+ self._game = ppgame.ProducePuzzleGame()
+
+ #Set title
+ self.set_title("Produce Puzzle")
+
+ # Creates our Toolbox
+ toolbox = _Toolbox(self)
+ self.set_toolbox(toolbox)
+ toolbox.show()
+
+ # Set the button to be our canvas
+ self.set_canvas(self._game)
+ self.show_all()
+
+ # Runs our mainGame function
+ self._game.mainGame(1)
+
+class _Toolbox(ActivityToolbox):
+ # Signals for toolbox objects
+ __gsignals__ = {
+ 'new-game-clicked' : (gobject.SIGNAL_RUN_LAST, None, ()),
+ 'help-clicked' : (gobject.SIGNAL_RUN_LAST, None, ()),
+ }
+
+ # Initialize toolbox class
+ def __init__(self, activity):
+ super(_Toolbox, self).__init__(activity)
+ print "Drawing the Toolbar"
+
+ activity_toolbar = self.get_activity_toolbar()
+
+ # Takes out sharing and saving toolbars (unneeded)
+ activity_toolbar.remove(activity_toolbar.share)
+ activity_toolbar.share = None
+ activity_toolbar.remove(activity_toolbar.keep)
+ activity_toolbar.keep = None
+
+ # Draws us a toolbar
+ game_toolbar = gtk.Toolbar()
+
+ # Function to make adding buttons easier
+ def add_button(icon_name, tooltip, signal_name):
+ button = ToolButton(icon_name)
+ game_toolbar.add(button)
+
+ def callback(source):
+ self.emit(signal_name)
+ button.connect('clicked', callback)
+ button.set_tooltip(tooltip)
+
+ return button
+
+ # Adds New Game and Help buttons
+ add_button('new-game' , _("New") , 'new-game-clicked')
+ add_button('help' , _("Help") , 'help-clicked')
+
+ # Adds buttons to toolbar
+ game_toolbar.add(gtk.SeparatorToolItem())
+
+ levels = []
+
+ # Functions to make adding level buttons easier
+ def add_level_button(icon_name, tooltip, signal_name):
+ if levels:
+ button = RadioToolButton(named_icon=icon_name, group=levels[0])
+ else:
+ button = RadioToolButton(named_icon=icon_name)
+ levels.append(button)
+ game_toolbar.add(button)
+
+ def callback(source):
+ if source.get_active():
+ self.emit(signal_name)
+ button.connect('clicked', callback)
+ button.set_tooltip(tooltip)
+
+ # Level buttons (3x3 - 9x9)
+ add_level_button('3x3', _("3x3"), 'self._game.mainGame(3)')
+ add_level_button('4x4', _("4x4"), 'self._game.mainGame(4)')
+ add_level_button('5x5', _("5x5"), 'self._game.mainGame(5)')
+ add_level_button('6x6', _("6x6"), 'self._game.mainGame(6)')
+ add_level_button('7x7', _("7x7"), 'self._game.mainGame(7)')
+ add_level_button('8x8', _("8x8"), 'self._game.mainGame(8)')
+ add_level_button('9x9', _("9x9"), 'self._game.mainGame(9)')
+
+ # Add Game toolbar
+ self.add_toolbar(_("Game"), game_toolbar)
+ self.set_current_toolbar(1)
+
+ # Some help and documentation
+ def helpmenu(s):
+ window = gtk.Window()
+ notebook = gtk.Notebook()
+ notebook.set_tab_pos(gtk.POS_LEFT)
+ banner = gtk.Image()
+ banner.set_from_file("graphics/banner.png")
+ aboutframe = gtk.Frame()
+ abouttext = gtk.Label(_("Produce Puzzle was created by Elizabeth Deng, Matthew Michihara, and Aaron Macris. It was coded in python using pygtk and pygame libraries. Fruit images were created in Adobe Photoshop CS. It was created specifically for the OLPC project in a code-a-thon at University of Southern California."))
+ abouttext.set_line_wrap(True)
+ aboutbox = gtk.VBox(False, 0)
+ aboutbox.pack_start(addBuffer(), False, False, 0)
+ aboutbox.pack_start(banner, False, False, 0)
+ aboutbox.pack_start(addBuffer(), False, False, 0)
+ aboutbox.pack_start(abouttext, False, False, 0)
+ aboutframe.add(aboutbox)
+ helpframe = gtk.Frame()
+ helptext = gtk.Label(_("This puzzle is simple. Each type of fruit has a value. The pieces of fruit are organized so that the values of each piece of fruit in a row is added, and that sum is displayed at the right. "))
+ helptext2 = gtk.Label(_("The sums of all the pieces of fruit in a column are displayed at the bottom. In order to solve the puzzle, you must find the value of each type of fruit."))
+ helptext3 = gtk.Label(_("To input the values of the fruit, you must slide the bars that appear below the fruit menu at the bottom of the screen."))
+ helptext4 = gtk.Label(_("You may start a new game with a larger grid by selecting 'new game' from the top of the screen and selecting a grid size. When you create a new game, the previous game will exit."))
+ helptext6 = gtk.Label(_("When you have input all the values that you think are correct, you can click the 'check' button to verify. If you are wrong, you will hear an unpleasant 'doh' sound. If you are correct, you will hear applause. "))
+ helptext.set_line_wrap(True)
+ helptext2.set_line_wrap(True)
+ helptext3.set_line_wrap(True)
+ helptext4.set_line_wrap(True)
+ helptext6.set_line_wrap(True)
+ helpbox = gtk.VBox(False, 10)
+ helpbox.pack_start(addBuffer(), False, False, 0)
+ helpbox.pack_start(helptext, False, False, 0)
+ helpbox.pack_start(helptext2, False, False, 0)
+ helpbox.pack_start(helptext3, False, False, 0)
+ helpbox.pack_start(helptext4, False, False, 0)
+ helpbox.pack_start(helptext6, False, False, 0)
+ helpbox.pack_start(addBuffer(), False, False, 0)
+ helpframe.add(helpbox)
+ notebook.append_page(aboutframe, gtk.Label(_("About")))
+ notebook.append_page(helpframe, gtk.Label(_("Instructions")))
diff --git a/ppgame.py b/ppgame.py
new file mode 100755
index 0000000..cc27c25
--- /dev/null
+++ b/ppgame.py
@@ -0,0 +1,352 @@
+#!/usr/bin/env python
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+
+# Import section
+import gtk
+import pygame
+import random
+
+# Start game music!
+pygame.init()
+
+#end mainGame function
+number_unknowns = 3
+
+# scrolly bars for our little kiddies to choose their
+# answers from
+scales = []
+
+# Dictionary that contains the variables as keys, mapped to the random numbers
+variable_dictionary = {}
+used_variables = []
+
+# Game class (VBox to be drawn)
+class ProducePuzzleGame(gtk.VBox):
+
+ # This is a callback function, which we later will connect
+ # to the clicked signal of the button, which will be triggered
+ # when the user clicks the button with a mouse.
+ def on_button_clicked(self, button):
+ for i in range(0, number_unknowns):
+ if(scales[i].get_value() != variable_dictionary[used_variables[i]]):
+ doh_sound = pygame.mixer.Sound('sounds/doh.wav')
+ doh_sound.play()
+ break
+ else:
+ if (i == number_unknowns - 1):
+ clapping = pygame.mixer.Sound('sounds/clapping.wav')
+ clapping.play()
+
+ # Gets us up and running!
+ def __init__(self, *args, **kwargs):
+ super(gtk.VBox, self).__init__(*args, **kwargs)
+ sound = pygame.mixer.music.load('sounds/background_music.wav')
+ pygame.mixer.music.play(100, 0)
+
+ # A label buffer
+ def addBuffer(self):
+ buffer = gtk.Label(" ")
+ return buffer
+
+ # Adding images of the fruits
+ def addApple(self):
+ imgApple = gtk.Image()
+ imgApple.set_from_file("graphics/apple.png")
+ return imgApple
+
+ def addOrange(self):
+ imgOrange = gtk.Image()
+ imgOrange.set_from_file("graphics/orange.png")
+ return imgOrange
+
+ def addBanana(self):
+ imgBanana = gtk.Image()
+ imgBanana.set_from_file("graphics/bananas.png")
+ return imgBanana
+
+ def addPlum(self):
+ imgPlum = gtk.Image()
+ imgPlum.set_from_file("graphics/plum.png")
+ return imgPlum
+
+ def addPear(self):
+ imgPear = gtk.Image()
+ imgPear.set_from_file("graphics/pear.png")
+ return imgPear
+
+ def addMango(self):
+ imgMango = gtk.Image()
+ imgMango.set_from_file("graphics/mango.png")
+ return imgMango
+
+ def addStrawberry(self):
+ imgStrawberry = gtk.Image()
+ imgStrawberry.set_from_file("graphics/strawberry.png")
+ return imgStrawberry
+
+ def addKiwi(self):
+ imgKiwi = gtk.Image()
+ imgKiwi.set_from_file("graphics/kiwi.png")
+ return imgKiwi
+
+ def addWatermelon(self):
+ imgWatermelon = gtk.Image()
+ imgWatermelon.set_from_file("graphics/watermelon.png")
+ return imgWatermelon
+
+ # Main game function
+ def mainGame(self, i):
+
+ # Lower and upper bound of the random generator.
+ self.lower_bound = 1
+ self.upper_bound = 20
+
+ # Number of unknowns.
+ self.number_unknowns = i
+
+ # Dictionary of variable names.
+ self.alphabet_dictionary = {0:'a', 1:'b', 2:'c', 3:'d', 4:'e',
+ 5:'f', 6:'g', 7:'h', 8:'i'}
+
+ # Declare arrays to create grid array.
+ self.grid = []
+ self.row = []
+
+ # Declare row and column sum arrays.
+ self.row_sum = []
+ self.column_sum = []
+
+ # Declare array holding algebra game grid.
+ for i in range(0, number_unknowns):
+ for j in range(0, number_unknowns):
+ self.row.append(0)
+ self.grid.append(self.row)
+ self.row = []
+
+ # Clear out variable_dictionary and used_variables
+ while (used_variables):
+ used_variables.pop()
+
+ while (variable_dictionary):
+ variable_dictionary.clear()
+
+ # Load variable dictionary with a variable name as the key, mapped to a random integer.
+ for i in range(0, number_unknowns):
+ done = False
+ while not done:
+ done = True
+ random_variable = self.alphabet_dictionary[random.randint(0, len(self.alphabet_dictionary) - 1)]
+ if variable_dictionary.has_key(random_variable):
+ done = False
+
+ done = False
+ while not done:
+ done = True
+ random_number = random.randint(self.lower_bound, self.upper_bound)
+ for value in variable_dictionary.itervalues():
+ if value == random_number:
+ done = False
+ variable_dictionary[random_variable] = random_number
+ used_variables.append(random_variable)
+ used_variables.sort()
+
+ # Load the algebra grid with random variables
+ for i in range(0, number_unknowns):
+ for j in range(0, number_unknowns):
+ random_select = random.randint(0, number_unknowns - 1)
+ self.grid[i][j] = used_variables[random_select]
+
+ # Get row sums.
+ for i in range(0, number_unknowns):
+ temp_sum = 0
+ for j in range(0, number_unknowns):
+ temp_sum = temp_sum + variable_dictionary[self.grid[i][j]]
+ self.row_sum.append(temp_sum)
+
+ # Get column sums.
+ for i in range(0, number_unknowns):
+ temp_sum = 0
+ for j in range(0, number_unknowns):
+ temp_sum = temp_sum + variable_dictionary[self.grid[j][i]]
+ self.column_sum.append(temp_sum)
+ # base game end
+
+ # DEBUG
+ print "grid " + str(self.grid)
+ print "variable dictionary " + str(variable_dictionary)
+ print "row sum " + str(self.row_sum)
+ print "column sum " + str(self.column_sum)
+
+
+ # Create a new window
+ window = gtk.Window()
+
+ def setNum(i):
+ window.destroy()
+ mainGame(i)
+
+ # Sets the border width of the window. length depends
+ # on what's in the pack box
+ window.set_border_width(0)
+
+ # Creates the button to check answers
+ button1 = gtk.Button("Check!")
+
+ # When the button receives the "clicked" signal, it will call the
+ # function on_button_clicked() defined above.
+ button1.connect("clicked", self.on_button_clicked)
+
+ # Creates labels with the sums
+ self.sumrows = []
+ self.sumcols = []
+
+ for i in range(0, number_unknowns):
+ self.sumrows.append(gtk.Label(str(self.row_sum[i])))
+
+ for i in range(0, number_unknowns):
+ self.sumcols.append(gtk.Label(str(self.column_sum[i])))
+ self.sumcols[i].set_width_chars(4)
+
+
+ # value, lower, upper, step_increment, page_increment, page_size
+ # initializes the scales to choose answers from
+ # first clear out the old list, so each scale[i] is a new widget
+ while (scales):
+ scales.pop()
+
+ for i in range(0, number_unknowns):
+ adj1 = gtk.Adjustment(0.0, 1.0, 20.0, 1.0, 1.0, 0.0)
+ temp = gtk.HScale(adj1)
+ scales.append(temp)
+ scales[i].set_digits(0)
+ scales[i].set_draw_value(True)
+ scales[i].set_usize(75, 60)
+
+
+ # creates pack boxes, the formatting for the window
+ # note from elizabeth!! you can only add each widget ONCE!
+ # this means that when we are adding in images more than
+ # once, we actually have to create separate objects.
+ # so, if we want 4 apples to appear, we have to create
+ # 4 different objects that are the same thing!
+ # and also, we can't just say blah2 = blah and add blah2
+ # already tried it and it doesn't work.
+ vbox1 = gtk.VBox(False, 10)
+ boxes = []
+
+ for i in range(0, number_unknowns):
+ boxes.append(gtk.HBox(False, 20))
+
+ for i in range(0, number_unknowns):
+ boxes[i].pack_start(self.addBuffer(), False, False, 0)
+
+ for i in range(0, number_unknowns):
+ for j in range(0, number_unknowns):
+ if self.grid[i][j] == 'a':
+ boxes[i].pack_start(self.addApple(), False, False, 0)
+ elif self.grid[i][j] == 'b':
+ boxes[i].pack_start(self.addOrange(), False, False, 0)
+ elif self.grid[i][j] == 'c':
+ boxes[i].pack_start(self.addBanana(), False, False, 0)
+ elif self.grid[i][j] == 'd':
+ boxes[i].pack_start(self.addPlum(), False, False, 0)
+ elif self.grid[i][j] == 'e':
+ boxes[i].pack_start(self.addPear(), False, False, 0)
+ elif self.grid[i][j] == 'f':
+ boxes[i].pack_start(self.addMango(), False, False, 0)
+ elif self.grid[i][j] == 'g':
+ boxes[i].pack_start(self.addStrawberry(), False, False, 0)
+ elif self.grid[i][j] == 'h':
+ boxes[i].pack_start(self.addKiwi(), False, False, 0)
+ elif self.grid[i][j] == 'i':
+ boxes[i].pack_start(self.addWatermelon(), False, False, 0)
+
+ # adds the sum of each of the rows
+ for i in range(0, number_unknowns):
+ boxes[i].pack_start(self.sumrows[i], False, False, 0)
+ boxes[i].pack_start(self.addBuffer(), False, False, 0)
+
+ # adds the image hboxes to the grid vbox
+ for i in range(0, number_unknowns):
+ vbox1.pack_start(boxes[i], False, False, 0)
+
+ # adds the sum of each of the column
+ hbox4 = gtk.HBox(False, 20)
+ hbox4.pack_start(self.addBuffer(), False, False, 0)
+ for i in range(0, number_unknowns):
+ hbox4.pack_start(self.sumcols[i], False, False, 0)
+
+ # adds the scales to an hbox
+ hbox5 = gtk.HBox(False, 0)
+ hbox5.pack_start(self.addBuffer(), False, False, 5)
+ for i in range(0, number_unknowns):
+ hbox5.pack_start(scales[i], False, False, 0)
+
+ # adds the images to an hbox
+ hbox6 = gtk.HBox(False, 25)
+ hbox6.pack_start(self.addBuffer(), False, False, 0)
+ for i in range(0, number_unknowns):
+ if used_variables[i] == 'a':
+ hbox6.pack_start(self.addApple(), False, False, 0)
+ elif used_variables[i] == 'b':
+ hbox6.pack_start(self.addOrange(), False, False, 0)
+ elif used_variables[i] == 'c':
+ hbox6.pack_start(self.addBanana(), False, False, 0)
+ elif used_variables[i] == 'd':
+ hbox6.pack_start(self.addPlum(), False, False, 0)
+ elif used_variables[i] == 'e':
+ hbox6.pack_start(self.addPear(), False, False, 0)
+ elif used_variables[i] == 'f':
+ hbox6.pack_start(self.addMango(), False, False, 0)
+ elif used_variables[i] == 'g':
+ hbox6.pack_start(self.addStrawberry(), False, False, 0)
+ elif used_variables[i] == 'h':
+ hbox6.pack_start(self.addKiwi(), False, False, 0)
+ elif used_variables[i] == 'i':
+ hbox6.pack_start(self.addWatermelon(), False, False, 0)
+
+ # adds the check button
+ hbox7 = gtk.HBox(False, 0)
+ hbox7.pack_start(button1, False, False, 20)
+
+ # adds everything to the main vbox
+ vbox = gtk.VBox(False, 0)
+ vbox.pack_start(vbox1, False, False, 15)
+ vbox.pack_start(hbox4, False, False, 15)
+ vbox.pack_start(hbox5, False, False, 15)
+ vbox.pack_start(hbox6, False, False, 0)
+ vbox.pack_start(hbox7, False, False, 20)
+
+ # This adds the box of pack boxes to the window.
+ # we have one vertical box in the window because
+ # we are not allowed to have more than 1 widget in
+ # the window. a widget is pretty much everything...
+ # image, button, etc. but you can put whatever you
+ # want and however much you want in a pack box,
+ # so it's okay.
+ self.add(vbox)
+
+ # Show the window and the button
+ self.show_all()
+
+ # Run the main loop, to process events such a key presses
+ # and mouse movements.
+ gtk.main()
+
+ pygame.mixer.quit()
+
+ # stop gtk
+ gtk.main_quit() \ No newline at end of file
diff --git a/setup.py b/setup.py
new file mode 100755
index 0000000..f18e783
--- /dev/null
+++ b/setup.py
@@ -0,0 +1,12 @@
+#!/usr/bin/env python
+try:
+ from sugar.activity import bundlebuilder
+ bundlebuilder.start("ProducePuzzle")
+except ImportError:
+ import os
+ os.system("find ./ | sed 's,^./,ProducePuzzle.activity/,g' > MANIFEST")
+ os.system('rm ProducePuzzle.xo')
+ os.chdir('..')
+ os.system('zip -r ProducePuzzle.xo ProducePuzzle.activity')
+ os.system('mv ProducePuzzle.xo ./ProducePuzzle.activity')
+ os.chdir('ProducePuzzle.activity')
diff --git a/sounds/background_music.wav b/sounds/background_music.wav
new file mode 100755
index 0000000..9e76867
--- /dev/null
+++ b/sounds/background_music.wav
Binary files differ
diff --git a/sounds/clapping.wav b/sounds/clapping.wav
new file mode 100755
index 0000000..6aad12c
--- /dev/null
+++ b/sounds/clapping.wav
Binary files differ
diff --git a/sounds/doh.wav b/sounds/doh.wav
new file mode 100755
index 0000000..8e40371
--- /dev/null
+++ b/sounds/doh.wav
Binary files differ
diff --git a/sounds/oriental_gong.wav b/sounds/oriental_gong.wav
new file mode 100755
index 0000000..4e61e85
--- /dev/null
+++ b/sounds/oriental_gong.wav
Binary files differ