gcompris r3428 - in branches/gcomprixogoo: . src/anim-activity src/doubleclick-activity src/doubleclick-activity/resources src/doubleclick-activity/resources/doubleclick



Author: bcoudoin
Date: Sat May 10 16:48:20 2008
New Revision: 3428
URL: http://svn.gnome.org/viewvc/gcompris?rev=3428&view=rev

Log:
	Port of doubleclick activity from trunk
	Rewrite of the anim activity (in progress)



Added:
   branches/gcomprixogoo/src/anim-activity/AnimItem.py
   branches/gcomprixogoo/src/anim-activity/Color.py
   branches/gcomprixogoo/src/anim-activity/Timeline.py
   branches/gcomprixogoo/src/doubleclick-activity/
   branches/gcomprixogoo/src/doubleclick-activity/Makefile.am
   branches/gcomprixogoo/src/doubleclick-activity/doubleclick.py
   branches/gcomprixogoo/src/doubleclick-activity/doubleclick.svg
   branches/gcomprixogoo/src/doubleclick-activity/doubleclick.xml.in
   branches/gcomprixogoo/src/doubleclick-activity/gcompris   (contents, props changed)
   branches/gcomprixogoo/src/doubleclick-activity/init_path.sh   (contents, props changed)
   branches/gcomprixogoo/src/doubleclick-activity/resources/
   branches/gcomprixogoo/src/doubleclick-activity/resources/Makefile.am
   branches/gcomprixogoo/src/doubleclick-activity/resources/doubleclick/
   branches/gcomprixogoo/src/doubleclick-activity/resources/doubleclick/Makefile.am
   branches/gcomprixogoo/src/doubleclick-activity/resources/doubleclick/doubleclick.svg
   branches/gcomprixogoo/src/doubleclick-activity/resources/doubleclick/foot.svg
   branches/gcomprixogoo/src/doubleclick-activity/resources/doubleclick/foot_shadow.svg
   branches/gcomprixogoo/src/doubleclick-activity/resources/doubleclick/penalty_bg.svg
   branches/gcomprixogoo/src/doubleclick-activity/resources/doubleclick/teen_tux.svg
Modified:
   branches/gcomprixogoo/ChangeLog
   branches/gcomprixogoo/configure.in
   branches/gcomprixogoo/src/anim-activity/anim.py

Modified: branches/gcomprixogoo/configure.in
==============================================================================
--- branches/gcomprixogoo/configure.in	(original)
+++ branches/gcomprixogoo/configure.in	Sat May 10 16:48:20 2008
@@ -722,6 +722,9 @@
 src/clockgame-activity/Makefile
 src/clockgame-activity/resources/Makefile
 src/clockgame-activity/resources/clockgame/Makefile
+src/doubleclick-activity/Makefile
+src/doubleclick-activity/resources/Makefile
+src/doubleclick-activity/resources/doubleclick/Makefile
 src/memory_div_tux-activity/Makefile
 src/memory_div-activity/Makefile
 src/Makefile

Added: branches/gcomprixogoo/src/anim-activity/AnimItem.py
==============================================================================
--- (empty file)
+++ branches/gcomprixogoo/src/anim-activity/AnimItem.py	Sat May 10 16:48:20 2008
@@ -0,0 +1,297 @@
+#  gcompris - anim : Item management base class
+#
+# Copyright (C) 2008 Bruno Coudoin
+#
+#   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 3 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, see <http://www.gnu.org/licenses/>.
+
+import gobject
+import goocanvas
+import gcompris
+import gcompris.utils
+import gcompris.skin
+import gcompris.bonus
+import gcompris.sound
+import gtk
+import gtk.gdk
+
+class AnimItem:
+
+    def __init__(self, anim):
+        self.anim = anim
+        self.rootitem = goocanvas.Group(parent = anim.rootitem)
+        self.drawing_area = anim.drawing_area
+        self.step = anim.current_step
+        gcompris.sound.play_ogg("sounds/bleep.wav")
+
+        self.item = None
+        self.events = None
+        self.anchor = None
+
+
+    # Given x,y return a new x,y snapped to the grid
+    def snap_to_grid(self, x, y):
+
+        # Check drawing boundaries
+        if(x < self.drawing_area[0]):
+          x = self.drawing_area[0]
+        if(x > self.drawing_area[2]):
+          x = self.drawing_area[2]
+        if(y < self.drawing_area[1]):
+          y = self.drawing_area[1]
+        if(y > self.drawing_area[3]):
+          y = self.drawing_area[3]
+
+        result = []
+        tmp = round(((x+(self.step)) -
+                     self.drawing_area[0])/self.step) - 1
+        result.append(float(self.drawing_area[0] + tmp*self.step))
+
+        tmp = round(((y+(self.step)) -
+                     self.drawing_area[1])/self.step) - 1
+        result.append(float(self.drawing_area[1] + tmp*self.step))
+        return result
+
+    # Selecting the item creates and display its anchors
+    def select(self):
+        if not self.anchor:
+            self.anchor = Anchor(self)
+        self.anchor.show()
+
+    # Deselecting the item deletes the anchor
+    def deselect(self):
+        if self.anchor:
+            self.anchor.hide()
+
+    #
+    # Default actions, maybe overloaded by specific items
+    #
+    def flip(self):
+        bounds = self.item.get_bounds(self.item)
+        (cx, cy) = ( (bounds[2]+bounds[0])/2 , (bounds[3]+bounds[1])/2)
+        mat = ( -1, 0, 0, 1, 2*cx, 0)
+        self.item.set_transform(mat)
+
+    def fill(self, fill, stroke):
+        gcompris.sound.play_ogg("sounds/paint1.wav")
+        self.item.set_properties(fill_color_rgba = fill,
+                                 stroke_color_rgba = stroke)
+
+    def delete(self):
+        gcompris.sound.play_ogg("sounds/eraser1.wav",
+                                "sounds/eraser2.wav")
+        fill = self.item.get_property("fill_color_rgba")
+        stroke = self.item.get_property("stroke_color_rgba")
+        fill_alpha = (fill & 0x000000FFL) / 2
+        stroke_alpha = (stroke & 0x000000FFL) /2
+        fill &= 0xFFFFFF00L | fill_alpha
+        stroke &= 0xFFFFFF00L | stroke_alpha
+        self.item.set_properties(fill_color_rgba = fill,
+                                 stroke_color_rgba = stroke)
+
+    def raise_(self):
+        pass
+    def lower(self):
+        pass
+    def rotate_ccw(self):
+        pass
+    def rotate_cw(self):
+        pass
+
+    def resize_item_event(self, item, target, event):
+        self.resize_x2y2(event.x, event.y)
+
+  #
+  # Add the anchors and callbacks on an item
+  #
+class Anchor:
+    # group contains normal items.
+
+    A_WIDTH = 14
+    A_HEIGHT = 14
+
+    # anchortype
+    ANCHOR_NW = 1
+    ANCHOR_N  = 2
+    ANCHOR_NE = 3
+    ANCHOR_E  = 4
+    ANCHOR_W  = 5
+    ANCHOR_SW = 6
+    ANCHOR_S  = 7
+    ANCHOR_SE = 8
+
+    anchortypes = [ ANCHOR_N,
+                ANCHOR_NE,
+                ANCHOR_E,
+                ANCHOR_SE,
+                ANCHOR_S,
+                ANCHOR_SW,
+                ANCHOR_W,
+                ANCHOR_NW ]
+
+    # kind of beautiful blue
+    ANCHOR_COLOR = 0x36ede480
+
+    def __init__(self, animitem):
+        self.animitem = animitem
+
+        self.anchorgroup = None
+        self.anchors = []
+
+        self.anchorgroup = \
+          goocanvas.Group(
+            parent = animitem.anim.rootitem,
+          )
+
+        self.anchorbound = \
+            goocanvas.Rect(
+                parent = self.anchorgroup,
+                stroke_color_rgba = 0x000000FFL,
+                line_width = 3)
+
+        for anchor_type in self.anchortypes:
+            anchor = \
+                goocanvas.Rect(
+                    parent = self.anchorgroup,
+                    fill_color_rgba = self.ANCHOR_COLOR,
+                    stroke_color_rgba = 0x000000FFL,
+                    width = self.A_WIDTH,
+                    height = self.A_HEIGHT,
+                    line_width = 1,
+                    )
+            self.anchors.append(anchor)
+            anchor.connect("button_press_event",
+                           self.resize_item_event, anchor_type)
+            anchor.connect("button_release_event",
+                           self.resize_item_event, anchor_type)
+            anchor.connect("motion_notify_event",
+                           self.resize_item_event, anchor_type)
+
+    def show(self):
+        self.anchorgroup.props.visibility = goocanvas.ITEM_VISIBLE
+        self.anchorgroup.raise_(None)
+        self.update()
+
+    def update(self):
+        A_WIDTH = self.A_WIDTH
+        A_HEIGHT = self.A_HEIGHT
+        b = self.animitem.item.get_bounds()
+
+        self.anchorbound.set_properties(x = b.x1,
+                                        y = b.y1,
+                                        width = b.x2 - b.x1,
+                                        height = b.y2 - b.y1)
+
+        # Update the anchors
+        self.update_anchor(self.anchors[0],
+                           b.x1 + (b.x2 - b.x1)/2 - A_WIDTH/2,
+                           b.y1- A_HEIGHT/2)
+        self.update_anchor(self.anchors[1],
+                           b.x2 - A_WIDTH/2,
+                           b.y1- A_HEIGHT/2)
+        self.update_anchor(self.anchors[2],
+                           b.x2 - A_WIDTH/2,
+                           b.y1 + (b.y2 - b.y1)/2 - A_HEIGHT/2)
+        self.update_anchor(self.anchors[3],
+                           b.x2 - A_WIDTH/2,
+                           b.y2 - A_HEIGHT/2)
+        self.update_anchor(self.anchors[4],
+                           b.x1 + (b.x2 - b.x1)/2 - A_WIDTH/2,
+                           b.y2 - A_HEIGHT/2)
+        self.update_anchor(self.anchors[5],
+                           b.x1 - A_WIDTH/2,
+                           b.y2 - A_HEIGHT/2)
+        self.update_anchor(self.anchors[6],
+                           b.x1 - A_WIDTH/2,
+                           b.y1 + (b.y2 - b.y1)/2 - A_HEIGHT/2)
+        self.update_anchor(self.anchors[7],
+                           b.x1 - A_WIDTH/2,
+                           b.y1 - A_HEIGHT/2)
+
+
+    def hide(self):
+        self.anchorgroup.props.visibility = goocanvas.ITEM_INVISIBLE
+
+    def update_anchor(self, anchor, x, y):
+        anchor.set_properties(x = x,
+                              y = y)
+
+
+    def resize_item_event(self, item, target, event, anchor):
+
+        if event.state & gtk.gdk.BUTTON1_MASK:
+            if anchor == self.ANCHOR_N:
+                self.animitem.resize_y1(event.y)
+            elif anchor == self.ANCHOR_NE:
+                self.animitem.resize_x2y1(event.x, event.y)
+            elif anchor == self.ANCHOR_SE:
+                self.animitem.resize_x2y2(event.x, event.y)
+            elif anchor == self.ANCHOR_S:
+                self.animitem.resize_y2(event.y)
+
+            self.update()
+
+#
+# The Filled rectangle
+#
+class AnimItemFillRect(AnimItem):
+
+    x = 0
+    y = 0
+    width = 0
+    height = 0
+    line_width = 1
+
+    def __init__(self, anim, x, y):
+        AnimItem.__init__(self, anim)
+        x,y = self.snap_to_grid(x, y)
+        self.x = x
+        self.y = y
+
+        self.item = \
+            goocanvas.Rect(
+                parent = self.rootitem,
+                x = self.x,
+                y = self.y,
+                width = self.width,
+                height = self.height,
+                fill_color_rgba = self.anim.color.fill,
+                stroke_color_rgba = self.anim.color.stroke,
+                line_width = self.line_width)
+
+        self.item.set_data("AnimItem", self)
+        self.item.connect("button_press_event", anim.item_event)
+        self.item.connect("button_release_event", anim.item_event)
+        self.item.connect("motion_notify_event", anim.item_event)
+
+    def resize_y1(self, y):
+        y1 = self.item.get_property("y")
+        h = self.item.get_property("height")
+        self.item.set_properties(y = y,
+                                 height = h - (y - y1))
+
+    def resize_y2(self, y):
+        y2 = self.item.get_property("y") \
+            + self.item.get_property("height")
+        h = self.item.get_property("height")
+        self.item.set_properties(height = h - (y2 - y))
+
+    def resize_x2y1(self, x, y):
+        x = self.item.get_property("x")
+        self.item.set_properties(y = y - x)
+
+    def resize_x2y2(self, x, y):
+        x1 = self.item.get_property("x")
+        y1 = self.item.get_property("y")
+        self.item.set_properties(width = x - x1,
+                                 height = y - y1)

Added: branches/gcomprixogoo/src/anim-activity/Color.py
==============================================================================
--- (empty file)
+++ branches/gcomprixogoo/src/anim-activity/Color.py	Sat May 10 16:48:20 2008
@@ -0,0 +1,179 @@
+#  gcompris - anim : color management
+#
+# Copyright (C) 2008 Bruno Coudoin
+#
+#   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 3 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, see <http://www.gnu.org/licenses/>.
+
+import gobject
+import goocanvas
+import gcompris
+import gcompris.utils
+import gcompris.skin
+import gcompris.bonus
+import gcompris.sound
+import gtk
+import gtk.gdk
+
+class Color:
+
+    # We keep the current color here
+    stroke = 0x101010FFL
+    fill   = 0xAA55CCFFL
+
+    def __init__(self, rootitem, drawing_area):
+        self.rootitem = goocanvas.Group(parent = rootitem)
+        self.drawing_area = drawing_area
+        self.running = False
+        # Part of UI: colors buttons
+        # COLOR SELECTION
+        # RGBA unsigned long. A is always FF.
+        # keep in mind if you change that to change the svg export: it does not pass A.
+        self.colors = [ 0x000000FFL, 0x202020FFL, 0x404040FFL, 0x505050FFL,
+                        0x815a38FFL, 0xb57c51FFL, 0xe5a370FFL, 0xfcc69cFFL,
+                        0xb20c0cFFL, 0xea2c2cFFL, 0xf26363FFL, 0xf7a3a3FFL,
+                        0xff6600FFL, 0xff8a3dFFL, 0xfcaf7bFFL, 0xf4c8abFFL,
+                        0x9b8904FFL, 0xd3bc10FFL, 0xf4dd2cFFL, 0xfcee85FFL,
+                        0x255b0cFFL, 0x38930eFFL, 0x56d11dFFL, 0x8fe268FFL,
+                        0x142f9bFFL, 0x2d52e5FFL, 0x667eddFFL, 0xa6b4eaFFL,
+                        0x328989FFL, 0x37b2b2FFL, 0x3ae0e0FFL, 0x96e0e0FFL,
+                        0x831891FFL, 0xc741d8FFL, 0xde81eaFFL, 0xeecdf2FFL,
+                        0x666666FFL, 0x838384FFL, 0xc4c4c4FFL, 0xffffffFFL
+                        ]
+        self.previous_color = 0L
+
+    # Display the color selector
+    def draw(self):
+
+        # Color selector buttons coord
+        x = 60
+        y = 420
+        w = 25
+        h = 20
+
+        self.fillcolor_tool = goocanvas.Rect(
+            parent = self.rootitem,
+            x = x + w/2,
+            y = y + h/2,
+            width = w,
+            height = h,
+            fill_color_rgba = self.fill,
+            stroke_color_rgba = 0xFFFFFFFFL,
+            line_width=1.0,
+            )
+
+        self.strokecolor_tool = goocanvas.Rect(
+            parent = self.rootitem,
+            x = x,
+            y = y,
+            width = w,
+            height = h,
+            fill_color_rgba = self.stroke,
+            stroke_color_rgba = 0xFFFFFFFFL,
+            line_width=1.0,
+            )
+
+        self.fillcolor_tool.connect("button_press_event",
+                                    self.displaycolor_item_event,
+                                    True)
+        self.strokecolor_tool.connect("button_press_event",
+                                      self.displaycolor_item_event,
+                                      False)
+
+        pixmap = gcompris.utils.load_pixmap(gcompris.skin.image_to_skin("draw/color-selector.png"))
+
+        x = (self.drawing_area[2] - self.drawing_area[0]
+             - pixmap.get_width())/2 + self.drawing_area[0]
+
+        color_pixmap_height = pixmap.get_height()
+
+        y = gcompris.BOARD_HEIGHT - color_pixmap_height - 30
+
+        c = 0
+
+        self.root_coloritem = \
+            goocanvas.Group(
+                parent = self.rootitem,
+                )
+        self.root_coloritem.props.visibility = goocanvas.ITEM_INVISIBLE
+
+
+        goocanvas.Image(
+            parent = self.root_coloritem,
+            pixbuf = pixmap,
+            x=x,
+            y=y,
+            )
+
+        for i in range(0,10):
+            x1=x+26+i*56
+
+            for j in range(0,4):
+                c = i*4 +j
+                item = \
+                    goocanvas.Rect(
+                        parent = self.root_coloritem,
+                        x = x1 + 26*(j%2),
+                        y = y + 8 + (color_pixmap_height/2 -6)*(j/2),
+                        width = 24,
+                        height = color_pixmap_height/2 - 8,
+                        fill_color_rgba = self.colors[c],
+                        stroke_color_rgba = 0x07A3E0FFL
+                        )
+
+                item.connect("button_press_event",
+                             self.color_item_event, self.colors[c])
+
+    # Fill Color event: display the color selector
+    def displaycolor_item_event(self, item, target, event, fill):
+        if self.running:
+            return
+
+        if self.previous_color:
+            self.root_coloritem.props.visibility = goocanvas.ITEM_INVISIBLE
+            if fill:
+                self.fill = self.previous_color
+            else:
+                self.stroke = self.previous_color
+            self.previous_color = 0L
+
+        else:
+
+            self.root_coloritem.props.visibility = goocanvas.ITEM_VISIBLE
+
+            if fill:
+                self.previous_color = self.fill
+                self.fill = 0L
+            else:
+                self.previous_color = self.stroke
+                self.stroke = 0L
+
+    # Color event
+    def color_item_event(self, item, target, event, color):
+        if self.running:
+            return
+
+        if event.type == gtk.gdk.BUTTON_PRESS:
+            gcompris.sound.play_ogg("sounds/drip.wav")
+            if event.button == 1:
+                self.previous_color = 0L
+
+            if self.stroke == 0L:
+                self.stroke = color
+                self.strokecolor_tool.set_properties(fill_color_rgba = color)
+            else:
+                self.fill = color
+                self.fillcolor_tool.set_properties(fill_color_rgba = color)
+
+            self.root_coloritem.props.visibility = goocanvas.ITEM_INVISIBLE
+

Added: branches/gcomprixogoo/src/anim-activity/Timeline.py
==============================================================================
--- (empty file)
+++ branches/gcomprixogoo/src/anim-activity/Timeline.py	Sat May 10 16:48:20 2008
@@ -0,0 +1,96 @@
+#  gcompris - anim : timeline management
+#
+# Copyright (C) 2008 Bruno Coudoin
+#
+#   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 3 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, see <http://www.gnu.org/licenses/>.
+
+import gobject
+import goocanvas
+import gcompris
+import gcompris.utils
+import gcompris.skin
+import gcompris.bonus
+import gcompris.sound
+import gtk
+import gtk.gdk
+
+class Timeline:
+
+    def __init__(self, rootitem, drawing_area):
+        self.rootitem = goocanvas.Group(parent = rootitem)
+        self.drawing_area = drawing_area
+        self.running = False
+
+        self.previous_selection = None
+        self.selected = None
+
+    def hide(self):
+        self.rootitem.props.visibility = goocanvas.ITEM_INVISIBLE
+
+    def show(self):
+        self.rootitem.props.visibility = goocanvas.ITEM_VISIBLE
+
+    def getTime(self):
+        if self.selected:
+            item.get_data("time")
+
+    # Display the timeline selector
+    def draw(self):
+
+        self.selected_color = 0x3030AAFFL
+        self.default_color = 0xFFFFFFFFL
+
+        # Timeline coord
+        x1 = self.drawing_area[0]
+        x2 = self.drawing_area[2]
+        y  = self.drawing_area[3] + 5
+        w = 20
+        h = 30
+
+
+        i = x1
+        t = 0
+        while i + w < x2:
+
+            item = goocanvas.Rect(
+                parent = self.rootitem,
+                x = i,
+                y = y,
+                width = w,
+                height = h,
+                fill_color_rgba = self.default_color,
+                stroke_color_rgba = 0x101080FFL,
+                line_width=1.0)
+            item.set_data("time", i)
+
+            if not self.selected:
+                self.selected = item
+
+            item.connect("button_press_event",
+                         self.timeline_item_event,
+                         t)
+
+            i += w + 1
+            t += 1
+
+    #
+    def timeline_item_event(self, item, target, event, time):
+
+        if self.previous_selection:
+            self.previous_selection.set_properties(fill_color_rgba = self.default_color)
+
+        item.set_properties(fill_color_rgba = self.selected_color)
+        self.previous_selection = item
+        self.selected = item
+

Modified: branches/gcomprixogoo/src/anim-activity/anim.py
==============================================================================
--- branches/gcomprixogoo/src/anim-activity/anim.py	(original)
+++ branches/gcomprixogoo/src/anim-activity/anim.py	Sat May 10 16:48:20 2008
@@ -16,6 +16,9 @@
 #   along with this program; if not, see <http://www.gnu.org/licenses/>.
 
 
+#  Version 3 of anim
+# Rewrote to support a timeline
+
 #  Version 2 of anim
 # Due to performance, the animation code as been rewriten
 # For now, the animation is done keeping difference
@@ -43,6 +46,10 @@
 import cPickle as pickle
 import base64
 
+from Color import *
+from Timeline import *
+from AnimItem import *
+
 fles=None
 
 # When anim is passed the mode 'draw', animation is disabled.
@@ -59,13 +66,6 @@
 
     # There is two board in the same code
     # here the diff in parameters
-
-    # The main list of items
-    # this parameter is used in svg save, to know where to get the list
-    self.itemlist = { 'draw' : 'framelist',
-		      'anim': 'animlist'
-                      }
-
     if self.gcomprisBoard.mode == 'draw':
       self.format_string = { 'gcompris' : 'GCompris draw 2 cPikle file',
                              'svg' : 'GCompris draw 2 svg file'
@@ -116,138 +116,8 @@
 
     self.file_type = ".gcanim"
 
-    # These are used to let us restart only after the bonux is displayed.
-    # When the bonus is displayed, it call us first with pause(1) and then with pause(0)
-    self.board_paused  = 0
-    self.gamewon       = 0
-
     self.MAX_TEXT_CHAR = 50
 
-    # kind of beautiful blue
-    self.ANCHOR_COLOR = 0x36ede480
-
-
-    # anchortype
-    self.ANCHOR_NW = 1
-    self.ANCHOR_N  = 2
-    self.ANCHOR_NE = 3
-    self.ANCHOR_E  = 4
-    self.ANCHOR_W  = 5
-    self.ANCHOR_SW = 6
-    self.ANCHOR_S  = 7
-    self.ANCHOR_SE = 8
-    self.ANCHOR_T  = 9
-
-    self.anchors = { 'LINE': [ self.ANCHOR_SW , self.ANCHOR_NE ],
-                     'RECT': [ self.ANCHOR_N,
-                               self.ANCHOR_NE,
-                               self.ANCHOR_E,
-                               self.ANCHOR_SE,
-                               self.ANCHOR_S,
-                               self.ANCHOR_SW,
-                               self.ANCHOR_W,
-                               self.ANCHOR_NW
-                               ],
-                     'TEXT': [ self.ANCHOR_T ]
-                     }
-    self.anchors ['FILL_RECT'] =  self.anchors ['RECT']
-    self.anchors ['CIRCLE'] =  self.anchors ['RECT']
-    self.anchors ['FILL_CIRCLE'] =  self.anchors ['RECT']
-    self.anchors ['IMAGE'] =  self.anchors ['RECT']
-
-    # goocanvas type corresponding
-    self.types = { 'RECT' : goocanvas.Rect,
-                   'FILL_RECT' : goocanvas.Rect,
-                   'CIRCLE' : goocanvas.Ellipse,
-                   'FILL_CIRCLE' : goocanvas.Ellipse,
-                   'TEXT' : goocanvas.Text,
-                   'IMAGE' : goocanvas.Image,
-                   'LINE' : goocanvas.Polyline
-                   }
-
-    # mutable goocanvas attributs
-    self.attributs = { 'LINE' : [ "points",
-                                  "stroke_color_rgba",
-                                  ],
-                       'RECT' : [ "x",
-                                  "y",
-                                  "width",
-                                  "height",
-                                  "stroke_color_rgba",
-                                  ],
-                       'FILL_RECT' : [ "x",
-                                       "y",
-                                       "width",
-                                       "height",
-                                       "fill_color_rgba",
-                                       ],
-                       'CIRCLE' : [ "center_x",
-                                    "center_y",
-                                    "radius_x",
-                                    "radius_y",
-                                    "stroke_color_rgba",
-                                    ],
-                       'FILL_CIRCLE' : [ "center_x",
-                                         "center_y",
-                                         "radius_x",
-                                         "radius_y",
-                                         "fill_color_rgba",
-                                         ],
-                       'TEXT' : [ "x",
-                                  "y",
-                                  "text",
-                                  "fill_color_rgba",
-                                  ],
-                       'IMAGE' : [ "x",
-                                   "y",
-                                   "width",
-                                   "height",
-                                   ]
-                       }
-
-    # non mutable goocanvas attributs
-    self.fixedattributs = { 'LINE' : { 'line_width': 8.0
-                                       },
-                            'RECT' : { 'line_width': 4.0
-                                       },
-                            'FILL_RECT' : { 'line_width': 1.0,
-                                            'stroke_color_rgba': 0x000000FFL
-                                            },
-                            'CIRCLE' : { 'line_width': 4.0 },
-                            'FILL_CIRCLE' : { 'line_width': 1.0,
-                                              'stroke_color_rgba': 0x000000FFL
-                                              },
-                            'TEXT' : { 'font': gcompris.FONT_BOARD_BIG_BOLD,
-                                       'anchor' : gtk.ANCHOR_CENTER
-                                       },
-                            'IMAGE' : {
-                                        }
-                       }
-
-
-    # events handled by each type
-    self.events = { 'LINE' : [ self.fillin_item_event,
-                               self.move_item_event,
-                               self.create_item_event,
-                               self.del_item_event ] ,
-                    'RECT' : [ self.fillout_item_event,
-                               self.move_item_event,
-                               self.create_item_event,
-                               self.del_item_event ],
-                    'TEXT' : [ self.fillin_item_event,
-                               self.move_item_event,
-                               self.create_item_event,
-                               self.del_item_event ],
-                    'IMAGE' : [ self.move_item_event,
-                                self.create_item_event,
-                                self.del_item_event ]
-                    }
-
-    self.events ['FILL_RECT']    = self.events ['LINE']
-    self.events ['FILL_CIRCLE']  = self.events ['LINE']
-    self.events ['CIRCLE']       = self.events ['RECT']
-
-
     # Part of UI : tools buttons
     # TOOL SELECTION
     self.tools = [
@@ -275,25 +145,6 @@
     # keep the tool selected
     self.current_tool=0
 
-    # Part of UI: colors buttons
-    # COLOR SELECTION
-    # RGBA unsigned long. A is always FF.
-    # keep in mind if you change that to change the svg export: it does not pass A.
-    self.colors = [   0x000000FFL, 0x202020FFL, 0x404040FFL, 0x505050FFL,
-                      0x815a38FFL, 0xb57c51FFL, 0xe5a370FFL, 0xfcc69cFFL,
-                      0xb20c0cFFL, 0xea2c2cFFL, 0xf26363FFL, 0xf7a3a3FFL,
-                      0xff6600FFL, 0xff8a3dFFL, 0xfcaf7bFFL, 0xf4c8abFFL,
-                      0x9b8904FFL, 0xd3bc10FFL, 0xf4dd2cFFL, 0xfcee85FFL,
-                      0x255b0cFFL, 0x38930eFFL, 0x56d11dFFL, 0x8fe268FFL,
-                      0x142f9bFFL, 0x2d52e5FFL, 0x667eddFFL, 0xa6b4eaFFL,
-                      0x328989FFL, 0x37b2b2FFL, 0x3ae0e0FFL, 0x96e0e0FFL,
-                      0x831891FFL, 0xc741d8FFL, 0xde81eaFFL, 0xeecdf2FFL,
-                      0x666666FFL, 0x838384FFL, 0xc4c4c4FFL, 0xffffffFFL
-                      ]
-
-    # keep the current color here
-    self.current_color = 0
-
     # step of the grid used for positioning objects
     # TODO : add a parameters to put step=5 in draw and step=1 in anim
     self.current_step = 0
@@ -347,7 +198,7 @@
     self.list_z_actual = []
 
     # used to handle draw creation of object
-    self.draw_created_object = False
+    self.created_object = None
 
   def start(self):
 
@@ -371,10 +222,15 @@
     # initialisation
     self.draw_tools()
     self.draw_animtools()
-    self.draw_colors()
+
+    self.timeline = Timeline(self.rootitem, self.drawing_area)
+    self.timeline.draw()
+
+    self.color = Color(self.rootitem, self.drawing_area)
+    self.color.draw()
+
     self.draw_drawing_area(self.grid_step)
     self.draw_playing_area()
-    self.pause(0)
 
 
   def end(self):
@@ -391,8 +247,6 @@
     self.rootitem.remove()
 
   def pause(self, pause):
-    #used to stop the event reception at the end?
-    self.board_paused = pause
     return
 
   def repeat(self):
@@ -423,11 +277,6 @@
     # was in anim1, but not print an animation is not interesting.
     elif (keyval == gtk.keysyms.F3):
       pass
-      #if self.gcomprisBoard.mode == 'draw':
-        # We can keep in draw2, svg export will be pure svg.
-        #self.ps_print(self.get_drawing(self.current_image))
-      #else:
-        #print "Sorry i can't print an animation"
 
     # AFAIR The keyboard part was written by bruno
     elif ((keyval == gtk.keysyms.Shift_L) or
@@ -449,7 +298,7 @@
           (keyval == gtk.keysyms.Num_Lock)):
       return False
 
-    if ( (not self.selected) and
+    if ( (not self.selected) or
          (gobject.type_name(self.selected.get_child(0)) != "GooCanvasText")
          ):
       # No Text object selected
@@ -593,13 +442,14 @@
 
           if not self.running:
             # unselect object if necessary
-            self.anim_item_unselect()
+            #self.anim_item_unselect()
 
             self.playing_start()
             return False
 
         elif (self.tools[tool][0] != "SELECT") and (self.selected):
-          self.anim_item_unselect()
+          #self.anim_item_unselect()
+          pass
 
         #
         # Normal case, tool button switch
@@ -617,75 +467,6 @@
         gcompris.set_cursor(self.tools[self.current_tool][3]);
 
 
-  # Display the color selector
-  def draw_colors(self):
-
-    pixmap = gcompris.utils.load_pixmap(gcompris.skin.image_to_skin("draw/color-selector.png"))
-
-    x = (self.drawing_area[2] - self.drawing_area[0]
-         - pixmap.get_width())/2 + self.drawing_area[0]
-
-    color_pixmap_height = pixmap.get_height()
-
-    y = gcompris.BOARD_HEIGHT - color_pixmap_height - 30
-
-    c = 0
-
-    self.root_coloritem = \
-      goocanvas.Group(
-        parent = self.rootitem,
-      )
-
-
-    goocanvas.Image(
-      parent = self.root_coloritem,
-      pixbuf = pixmap,
-      x=x,
-      y=y,
-      )
-
-    for i in range(0,10):
-      x1=x+26+i*56
-
-      for j in range(0,4):
-        c = i*4 +j
-        item = \
-          goocanvas.Rect(
-            parent = self.root_coloritem,
-            x = x1 + 26*(j%2),
-            y = y + 8 + (color_pixmap_height/2 -6)*(j/2),
-            width = 24,
-            height = color_pixmap_height/2 - 8,
-            fill_color_rgba = self.colors[c],
-            stroke_color_rgba = 0x07A3E0FFL
-            )
-
-        item.connect("button_press_event", self.color_item_event, c)
-        if (c==0):
-          self.current_color = c
-          self.old_color_item = item
-          self.old_color_item.props.line_width = 4.0
-          self.old_color_item.stroke_color_rgba = 0x16EC3DFFL
-
-  # Color event
-  def color_item_event(self, item, target, event, color):
-    if self.running:
-      return
-
-    if event.type == gtk.gdk.BUTTON_PRESS:
-      gcompris.sound.play_ogg("sounds/drip.wav")
-      if event.button == 1:
-        # Deactivate old button
-        self.old_color_item.props.line_width = 0.0
-        self.old_color_item.props.stroke_color_rgba = 0x144B9DFFL
-
-        # Activate new button
-        self.current_color = color
-        self.old_color_item = item
-        self.old_color_item.props.line_width = 4.0
-        self.old_color_item.props.stroke_color_rgba= 0x16EC3DFFL
-
-
   # Display the drawing area
   def draw_drawing_area(self,step):
 
@@ -705,9 +486,9 @@
       line_width=2.0,
       stroke_color_rgba=0x111199FFL
       )
-    item.connect("button_press_event", self.create_item_event)
-    item.connect("button_release_event", self.create_item_event)
-    item.connect("motion_notify_event", self.create_item_event)
+    item.connect("button_press_event", self.item_event)
+    item.connect("button_release_event", self.item_event)
+    item.connect("motion_notify_event", self.item_event)
 
     # The CanvasGroup for the edit space.
     self.root_drawingitem = \
@@ -811,7 +592,7 @@
   def playing_stop(self):
     self.running=False
     gobject.source_remove(self.timeout)
-    self.run_anim2()
+    #self.run_anim2()
 
   def speed_event(self, item, target, event, up):
 
@@ -855,9 +636,9 @@
         line_width=1.0,
         )
       # Clicking on lines let you create object
-      item.connect("button_press_event", self.create_item_event)
-      item.connect("button_release_event", self.create_item_event)
-      item.connect("motion_notify_event", self.create_item_event)
+      item.connect("button_press_event", self.item_event)
+      item.connect("button_release_event", self.item_event)
+      item.connect("motion_notify_event", self.item_event)
 
     for i in range(int(y1), int(y2), step):
       item = \
@@ -867,21 +648,12 @@
         fill_color_rgba=color,
         line_width=1.0,
         )
-      item.connect("button_press_event", self.create_item_event)
-      item.connect("button_release_event", self.create_item_event)
-      item.connect("motion_notify_event", self.create_item_event)
-
-  # Given x,y return a new x,y snapped to the grid
-  def snap_to_grid(self, x, y):
-    result = []
-    tmp = round(((x+(self.current_step)) -
-               self.drawing_area[0])/self.current_step) - 1
-    result.append(float(self.drawing_area[0] + tmp*self.current_step))
-
-    tmp = round(((y+(self.current_step)) -
-               self.drawing_area[1])/self.current_step) - 1
-    result.append(float(self.drawing_area[1] + tmp*self.current_step))
-    return result
+      item.connect("button_press_event", self.item_event)
+      item.connect("button_release_event", self.item_event)
+      item.connect("motion_notify_event", self.item_event)
+
+
+
 
 
   # Event when a click on any item. Perform the move
@@ -889,7 +661,7 @@
 
     if event.type == gtk.gdk.BUTTON_PRESS and event.button == 1:
       gcompris.sound.play_ogg("sounds/bleep.wav")
-      self.anim_item_unselect()
+      #self.anim_item_unselect()
 
     if self.tools[self.current_tool][0] == "CCW":
       if ((event.type == gtk.gdk.BUTTON_PRESS) and
@@ -923,7 +695,6 @@
     if self.tools[self.current_tool][0] == "RAISE":
       if event.type == gtk.gdk.BUTTON_PRESS and event.button == 1:
         item.get_property("parent").raise_(None)
-        self.z_raise(item.get_data("AnimItem"))
         return True
       else:
         return False
@@ -931,7 +702,6 @@
     if self.tools[self.current_tool][0] == "LOWER":
       if event.type == gtk.gdk.BUTTON_PRESS and event.button == 1:
         item.get_property("parent").lower(None)
-        self.z_lower(item.get_data("AnimItem"))
         return True
       else:
         return False
@@ -947,12 +717,12 @@
     # ---------------
     if event.type == gtk.gdk.BUTTON_RELEASE:
       if event.button == 1:
-        if self.draw_created_object:
-          self.draw_created_object = False
+        if self.created_object:
+          self.created_object = None
           return True
 
         # activate the anchors
-        self.anim_item_select(item.get_property("parent"))
+        #self.anim_item_select(item.get_property("parent"))
 
         return True
 
@@ -969,45 +739,88 @@
 
     return False
 
-  # Event when a click on an item happen on fill in type object
-  def fillin_item_event(self, item, target, event):
-    if event.type == gtk.gdk.BUTTON_PRESS:
-      if event.button == 1:
-        gcompris.sound.play_ogg("sounds/paint1.wav")
-        if self.tools[self.current_tool][0] == "FILL":
-          item.set_properties(fill_color_rgba=self.colors[self.current_color])
-          return True
-    return False
+  # Main callback on item comes here first
+  # And are then dispatched to the proper functions
+  def item_event(self, item, target, event):
+    if(event.type == gtk.gdk.BUTTON_PRESS and self.running==True):
+      self.playing_stop()
+      return False
+
+    # Right button is a shortcup to Shot
+    if (self.gcomprisBoard.mode != 'draw' and
+        event.type == gtk.gdk.BUTTON_PRESS and
+        event.button == 3):
+      self.Anim2Shot()
+      return False
 
-  # Event when a click on an item happen on border fill type object
-  def fillout_item_event(self, item, target, event):
     if event.type == gtk.gdk.BUTTON_PRESS:
+
       if event.button == 1:
-        gcompris.sound.play_ogg("sounds/paint1.wav")
-        if self.tools[self.current_tool][0] == "FILL":
-          item.set_properties(stroke_color_rgba=self.colors[self.current_color])
-          return True
-    return False
+        gcompris.sound.play_ogg("sounds/bleep.wav")
 
-  # Del an item and internal struct cleanup
-  def del_item(self, item):
-    item.get_property("parent").remove()
-    self.del_AnimItem(item.get_data("AnimItem"))
+        animItem = item.get_data("AnimItem")
+        if animItem:
+          if self.tools[self.current_tool][0] == "FILL":
+            animItem.fill(self.color.fill,
+                          self.color.stroke)
+          elif self.tools[self.current_tool][0] == "FILL":
+            animItem.flip()
+          elif self.tools[self.current_tool][0] == "DEL":
+            animItem.delete()
+          elif self.tools[self.current_tool][0] == "SELECT":
+            if self.selected:
+              self.selected.deselect()
+            animItem.select()
+            self.selected = animItem
+          elif self.tools[self.current_tool][0] == "RAISE":
+            animItem.raise_()
+          elif self.tools[self.current_tool][0] == "LOWER":
+            animItem.lower()
+          elif self.tools[self.current_tool][0] == "CCW":
+            animItem.rotate_ccw()
+          elif self.tools[self.current_tool][0] == "CW":
+            animItem.rotate_cw()
+
+        if self.tools[self.current_tool][0] == "FILL_RECT":
+          self.created_object = AnimItemFillRect(self,
+                                                 event.x, event.y)
+
+    #
+    # MOTION EVENT
+    # ------------
+    elif (event.type == gtk.gdk.MOTION_NOTIFY
+        and self.created_object):
+      # That's used only in item creation.
+      # In draw mode, item creation does not use drag&drop
+      if self.gcomprisBoard.mode == 'draw':
+        return False
+
+      if event.state & gtk.gdk.BUTTON1_MASK:
+        x = event.x
+        y = event.y
+
+        self.created_object.resize_item_event(item,
+                                              target,
+                                              event)
+
+    #
+    # MOUSE DRAG STOP
+    # ---------------
+    elif (event.type == gtk.gdk.BUTTON_RELEASE
+          and self.created_object):
+      # That's used only in item creation.
+      # In draw mode, item creation does not use drag&drop
+      if self.created_object:
+        self.created_object = False
+        return True
 
-  # Event when a click on an item happen
-  def del_item_event(self, item, target, event):
-    if event.type == gtk.gdk.BUTTON_PRESS:
-      if event.button == 1:
-        if self.tools[self.current_tool][0] == "DEL":
-          gcompris.sound.play_ogg("sounds/eraser1.wav",
-                                  "sounds/eraser2.wav")
-          self.del_item(item);
-          return True
     return False
 
+
   # Event when an event on the drawing area happen
-  def create_item_event(self, item, target, event):
-    if(event.type == gtk.gdk.BUTTON_PRESS and self.running==True):
+  def create_item_event_OLD(self, item, target, event):
+    if(event.type == gtk.gdk.BUTTON_PRESS
+       and self.running==True):
       self.playing_stop()
       return False
 
@@ -1030,32 +843,15 @@
     if event.type == gtk.gdk.BUTTON_PRESS:
 
       if event.button == 1:
-        gcompris.sound.play_ogg("sounds/bleep.wav")
-        self.newitem = None
-        #print "----------------------------------------"
-        #print "Current image = " + str(self.current_frame)
-        #self.dump_group(self.root_anim)
-
-        # All items are formatted this way:
-        #     ItemGroup:
-        #        Item (line, rect, ellipse, text)
-        #        AnchorsGroup
-        #           ANCHOR_SE
-        #           .....
-
-        self.newitemgroup = \
-          goocanvas.Group(
-            parent = self.root_anim,
-          )
-
 
         if self.tools[self.current_tool][0] == "LINE":
 
-          x,y = self.snap_to_grid(event.x,event.y)
+          x,y = self.snap_to_grid1(event.x,event.y)
           self.pos_x = x
           self.pos_y = y
 
-          tuple_points = (x , y,  self.pos_x, self.pos_y)
+          tuple_points = goocanvas.Points([(x , y),
+                                           (self.pos_x, self.pos_y)])
 
           if self.gcomprisBoard.mode == 'draw':
             dist = {'x' : 'width', 'y' : 'height'}
@@ -1072,13 +868,13 @@
             goocanvas.Polyline(
               parent = self.newitemgroup,
             points = tuple_points,
-            fill_color_rgba = self.colors[self.current_color],
+            fill_color_rgba = self.color.fill,
             line_width = 8.0
             )
 
         elif self.tools[self.current_tool][0] == "RECT":
 
-          x,y = self.snap_to_grid(event.x,event.y)
+          x,y = self.snap_to_grid1(event.x,event.y)
           self.pos_x = x
           self.pos_y = y
 
@@ -1103,7 +899,7 @@
               y = points['y2'],
               width = points['x2'] - points['x1'],
               height = points['y2'] - points['y1'],
-              stroke_color_rgba=self.colors[self.current_color],
+              stroke_color_rgba=self.color.stroke,
               line_width=4.0
               )
           #          self.newitem.set_data('empty',True)
@@ -1111,39 +907,12 @@
 
         elif self.tools[self.current_tool][0] == "FILL_RECT":
 
-          x,y = self.snap_to_grid(event.x,event.y)
-          self.pos_x = x
-          self.pos_y = y
-
-          points = {}
-          for c in ['x' , 'y']:
-            points[c + '1'] = eval(c)
-            points[c + '2'] = eval( 'self.pos_' + c )
-
-          if self.gcomprisBoard.mode == 'draw':
-            dist = {'x' : 'width', 'y' : 'height'}
-
-            points = {}
-            for c in ['x', 'y']:
-              points[c + '1'] = eval(c) - self.draw_defaults_size['LINE'][dist[c]]/2
-              points[c + '2'] = eval(c) + self.draw_defaults_size['LINE'][dist[c]]/2
-
-          self.newitem = \
-            goocanvas.Rect(
-            parent = self.newitemgroup,
-            x = points['x1'],
-            y = points['y1'],
-            width = points['x2'] - points['x1'],
-            height = points['y2'] - points['y1'],
-            fill_color=self.colors[self.current_color],
-            fill_color_rgba=self.colors[self.current_color],
-            stroke_color_rgba=0x000000FFL,
-            line_width=1.0
-            )
+          self.created_object = AnimItemFillRect(self,
+                                                 event.x, event.y)
 
         elif self.tools[self.current_tool][0] == "CIRCLE":
 
-          x,y = self.snap_to_grid(event.x,event.y)
+          x,y = self.snap_to_grid1(event.x,event.y)
           self.pos_x = x
           self.pos_y = y
 
@@ -1168,7 +937,7 @@
               center_y = points['y1'],
               radius_x = points['x2'] - points['x1'],
               radius_y = points['y2'] - points['y1'],
-              stroke_color_rgba = self.colors[self.current_color],
+              stroke_color_rgba = self.color.stroke,
               line_width = 5.0
             )
           #          self.newitem.set_data('empty',True)
@@ -1176,7 +945,7 @@
 
         elif self.tools[self.current_tool][0] == "FILL_CIRCLE":
 
-          x,y = self.snap_to_grid(event.x,event.y)
+          x,y = self.snap_to_grid1(event.x,event.y)
           self.pos_x = x
           self.pos_y = y
 
@@ -1202,14 +971,14 @@
             center_y = points['y1'],
             radius_x = points['x2'] - points['x1'],
             radius_y = points['y2'] - points['y1'],
-            fill_color_rgba = self.colors[self.current_color],
-            stroke_color_rgba = 0x000000FFL,
+            fill_color_rgba = self.color.fill,
+            stroke_color_rgba = self.color.stroke,
             line_width = 1.0
             )
 
         elif self.tools[self.current_tool][0] == "TEXT":
 
-          x,y = self.snap_to_grid(event.x,event.y)
+          x,y = self.snap_to_grid1(event.x,event.y)
           self.pos_x = x
           self.pos_y = y
 
@@ -1218,148 +987,46 @@
               parent = self.newitemgroup,
               x = self.pos_x,
               y = self.pos_y,
-              fill_color_rgba = self.colors[self.current_color],
+              fill_color_rgba = self.color.fill,
               font = gcompris.FONT_BOARD_BIG_BOLD,
               text = u'?',
               anchor=gtk.ANCHOR_CENTER
               )
 
-        if self.newitem != 0:
-          self.anchorize(self.newitemgroup)
-          anAnimItem = self.AnimItem()
-          anAnimItem.z = self.new_z()
-          anAnimItem.canvas_item = self.newitem
-          anAnimItem.type = self.tools[self.current_tool][0]
-          anAnimItem.canvas_item.set_data("AnimItem", anAnimItem)
-          self.framelist.append(anAnimItem)
-          self.list_z_actual.append(anAnimItem.z)
-          self.draw_created_object = True
-
-          if self.gcomprisBoard.mode == 'draw':
-            # needed because used to set the anchors.
-            # The item has already the right size
-            (x1, x2, y1, y2) = self.get_bounds(self.newitem)
-            self.object_set_size_and_pos(self.newitemgroup, x1, x2, y1, y2)
-
-            self.anim_item_select(self.newitemgroup)
-            # in draw creation is finished. Object is selected.
-            self.newitem = None
-            self.newitemgroup = None
-          elif self.tools[self.current_tool][0] == "TEXT":
-            (x1, x2, y1, y2) = self.get_bounds(self.newitem)
-            self.object_set_size_and_pos(self.newitemgroup, x1, x2, y1, y2)
-            self.anim_item_select(self.newitemgroup)
-            self.newitem = None
-            self.newitemgroup = None
-
       return True
 
     #
     # MOTION EVENT
     # ------------
-    if event.type == gtk.gdk.MOTION_NOTIFY:
+    if (event.type == gtk.gdk.MOTION_NOTIFY
+        and self.created_object):
       # That's used only in item creation.
       # In draw mode, item creation does not use drag&drop
       if self.gcomprisBoard.mode == 'draw':
         return False
 
-      if ((self.tools[self.current_tool][0] == "IMAGE") or
-          (self.tools[self.current_tool][0] == "TEXT")):
-        return False
-
       if event.state & gtk.gdk.BUTTON1_MASK:
-        if (self.tools[self.current_tool][0] == "RAISE" or
-            self.tools[self.current_tool][0] == "LOWER"):
-          return False
-
         x = event.x
         y = event.y
-        x,y = self.snap_to_grid(event.x,event.y)
 
-        # Check drawing boundaries
-        if(event.x<self.drawing_area[0]):
-          x=self.drawing_area[0]
-        if(event.x>self.drawing_area[2]):
-          x=self.drawing_area[2]
-        if(event.y<self.drawing_area[1]):
-          y=self.drawing_area[1]
-        if(event.y>self.drawing_area[3]):
-          y=self.drawing_area[3]
-
-#        if self.tools[self.current_tool][0] == "LINE":
-#          self.newitem.set_properties( points=( self.pos_x, self.pos_y, x, y) )
-#        elif (self.tools[self.current_tool][0] == "RECT" or
-#              self.tools[self.current_tool][0] == "FILL_RECT" or
-#              self.tools[self.current_tool][0] == "CIRCLE" or
-#              self.tools[self.current_tool][0] == "FILL_CIRCLE"):
-#          self.newitem.set_properties(
-#            x2=x,
-#            y2=y)
+        self.created_object.resize_item_event(item,
+                                              target,
+                                              event)
 
-        if self.tools[self.current_tool][0] == "LINE":
-          points= self.newitem.get_property("points")
-          x1 = points[0]
-          y1 = points[1]
-        elif (self.tools[self.current_tool][0] == "RECT" or
-              self.tools[self.current_tool][0] == "FILL_RECT"):
-          x1 = self.newitem.get_property("x")
-          y1 = self.newitem.get_property("y")
-        elif (self.tools[self.current_tool][0] == "CIRCLE" or
-              self.tools[self.current_tool][0] == "FILL_CIRCLE"):
-          x1 = self.newitem.get_property("center_x") \
-              - self.newitem.get_property("radius_x")
-          y1 = self.newitem.get_property("center_y") \
-              - self.newitem.get_property("radius_y")
-
-        self.object_set_size_and_pos(self.newitemgroup,
-                                     x1 = x1,
-                                     y1 = y1,
-                                     x2 = x,
-                                     y2 = y
-                                     )
     #
     # MOUSE DRAG STOP
     # ---------------
     if event.type == gtk.gdk.BUTTON_RELEASE:
       # That's used only in item creation.
       # In draw mode, item creation does not use drag&drop
-      if self.draw_created_object:
-        self.draw_created_object = False
+      if self.created_object:
+        self.created_object = False
         return True
 
       if ((self.tools[self.current_tool][0] == "IMAGE") or
           (self.tools[self.current_tool][0] == "TEXT")):
         return False
 
-      if event.button == 1:
-        if (self.tools[self.current_tool][0] == "RAISE" or
-            self.tools[self.current_tool][0] == "LOWER"):
-          return False
-        # We have to remove empty created items (the kid did not drag enough)
-        if self.tools[self.current_tool][0] == "LINE":
-          # need to delete empty line. self.newitem est l'objet courant
-          pass
-        elif (self.tools[self.current_tool][0] == "RECT" or
-              self.tools[self.current_tool][0] == "FILL_RECT" or
-              self.tools[self.current_tool][0] == "CIRCLE" or
-              self.tools[self.current_tool][0] == "FILL_CIRCLE"):
-          # Oups, empty rect
-          #self.del_item(self.newitem)
-          pass
-
-#        print self.tools[self.current_tool][0]
-#        print self.newitem.get_bounds()
-#        print self.newitemgroup.get_bounds()
-
-        return True
-    return False
-
-  def snapshot_event(self, item, target, event):
-    if event.type == gtk.gdk.BUTTON_PRESS:
-      self.Anim2Shot()
-
-  def run_flash(self):
-    self.flash.props.visibility = goocanvas.ITEM_INVISIBLE
     return False
 
   def playing_start(self):
@@ -1368,7 +1035,7 @@
       self.root_coloritem.props.visibility = goocanvas.ITEM_INVISIBLE
       self.root_toolitem.props.visibility = goocanvas.ITEM_INVISIBLE
       self.root_playingitem.props.visibility = goocanvas.ITEM_VISIBLE
-      self.Anim2Run()
+      #self.Anim2Run()
 
   def playing_event(self, item, target, event, state):
     if event.type == gtk.gdk.BUTTON_PRESS:
@@ -1379,8 +1046,6 @@
 
   # Display the animation tools
   def draw_animtools(self):
-    # Desactived for the moment
-
     x_left = 8
     y_top  = 472
     minibutton_width = 32
@@ -1410,6 +1075,8 @@
       font = gcompris.skin.get_font("gcompris/board/medium"),
       fill_color = "white")
 
+
+
   def object_set_size_and_pos(self, object, x1, y1, x2, y2):
     if gobject.type_name(object.get_child(0)) == "GooCanvasLine":
       object.get_child(0).set_properties(
@@ -1569,7 +1236,7 @@
         y2 = y1 + real_item.get_property("height")
       elif gobject.type_name(real_item)=="GooCanvasText":
         y1 = y
-        y2 = y + real_item.get_property("text_height")
+        y2 = y + 20
         pass
 
       if (anchor_type == self.ANCHOR_N):
@@ -1637,131 +1304,6 @@
                                      )
 
 
-  def get_bounds(self, item):
-
-    bounds = item.get_bounds()
-
-    return (bounds.x1, bounds.y1, bounds.x2, bounds.y2)
-
-
-  def item_type(self, item):
-
-    item_type = ''
-
-    if gobject.type_name(item)=="GooCanvasGroup":
-      item_type='GROUP'
-    elif gobject.type_name(item)=="GooCanvasLine":
-      item_type='LINE'
-    elif gobject.type_name(item)=="GooCanvasImage":
-      item_type='IMAGE'
-    elif gobject.type_name(item)=="GooCanvasRect":
-      try:
-        # Can't do it here because it needs to be C compatible for the svgexport
-        empty = gcompris.utils.canvas_get_property(item, "empty")
-        #empty = item.get_data('empty')
-        if not empty:
-          empty = False
-        else:
-          empty = True
-        # empty is passed from C, not python object
-        # if we get it that means is True
-      except:
-        empty = False
-
-      if empty:
-        item_type='RECT'
-      else:
-        item_type='FILL_RECT'
-
-    elif gobject.type_name(item)=="GooCanvasEllipse":
-      try:
-        #empty = item.get_data('empty')
-        # Can't do it here because it needs to be C compatible for the svgexport
-        empty = gcompris.utils.canvas_get_property(item, "empty")
-
-        if not empty:
-          empty = Fale
-        else:
-          empty = True
-        # empty is passed from C, not python object
-        # if we get it that means is True
-      except:
-        empty = False
-
-      if empty:
-        item_type='CIRCLE'
-      else:
-        item_type='FILL_CIRCLE'
-
-    elif gobject.type_name(item)=="GooCanvasText":
-      item_type='TEXT'
-
-
-    return item_type
-
-
-  #
-  # Call anchorize recursively on each item of the group
-  #
-  def recursive_anchorize(self, root_item):
-    for item in root_item.item_list:
-      if gobject.type_name(item)=="GooCanvasGroup":
-        self.recursive_anchorize(item)
-      else:
-        self.anchorize(item.get_property("parent"))
-
-  #
-  # Add the anchors and callbacks on an item
-  #
-  def anchorize(self, group):
-    # group contains normal items.
-
-    item = group.get_child(0)
-
-    item_type = self.item_type(item)
-
-    if item_type == "GROUP" or not item_type:
-      return
-
-    for event in self.events[item_type]:
-      item.connect("button_press_event", event)
-      item.connect("button_release_event", event)
-      item.connect("motion_notify_event", event)
-
-    anchorgroup = \
-      goocanvas.Group(
-        parent = group,
-      )
-    anchorgroup.set_data('anchors',True)
-    anchorgroup.props.visibility = goocanvas.ITEM_INVISIBLE
-
-    for anchor_type in self.anchors[item_type]:
-      anchor = \
-          goocanvas.Rect(
-        parent = anchorgroup,
-        fill_color_rgba=self.ANCHOR_COLOR,
-        stroke_color_rgba=0x000000FFL,
-        line_width=1,
-        )
-      anchor.set_data('anchor_type', anchor_type)
-      anchor.connect("button_press_event", self.resize_item_event, anchor_type)
-      anchor.connect("button_release_event", self.resize_item_event, anchor_type)
-      anchor.connect("motion_notify_event", self.resize_item_event, anchor_type)
-
-  def select_tool_TBD(self):
-    # Deactivate old button
-    self.old_tool_item.set_properties(
-      pixbuf = gcompris.utils.load_pixmap(gcompris.skin.image_to_skin(
-          self.tools[self.current_tool][1])))
-
-    # Activate new button
-    self.current_tool = self.select_tool_number
-    self.old_tool_item = self.select_tool
-    self.old_tool_item.set_properties(
-      pixbuf = gcompris.utils.load_pixmap(gcompris.skin.image_to_skin(self.tools[self.current_tool][2])))
-    gcompris.set_cursor(self.tools[self.current_tool][3]);
-
-
   def rotate_relative(self, item, angle):
     bounds = item.get_bounds()
     #    print "Item bounds : ", bounds
@@ -1799,274 +1341,6 @@
 
     return
 
-  def item_flip(self, item):
-    bounds = self.get_bounds(item)
-    (cx, cy) = ( (bounds[2]+bounds[0])/2 , (bounds[3]+bounds[1])/2)
-
-    mat = ( -1, 0, 0, 1, 2*cx, 0)
-
-    item.get_property("parent").set_transform(mat)
-
-
-###########################################
-# Anim 2 specific
-###########################################
-
-  class AnimItem:
-    def __init__(self):
-      self.z = None
-      self.frames_info = {}
-      self.canvas_item = None
-      self.z_previous = None
-
-  def new_z(self):
-    if self.list_z_actual != []:
-      return int(self.list_z_actual[-1] + 1 )
-    else:
-      return 1
-
-  def del_AnimItem(self, AnimItem):
-    # AnimItem is really deleted only on shot.
-    self.list_z_actual.remove(AnimItem.z)
-    AnimItem.z = None
-    #AnimItem.frames_info[self.current_frame]['deleted']=True
-
-  def z_raise(self, anAnimItem):
-    index = self.list_z_actual.index(anAnimItem.z)
-    if index < len(self.list_z_actual) -1 :
-      if index < len(self.list_z_actual) - 2 :
-        anAnimItem.z = (self.list_z_actual[index + 1] + self.list_z_actual[index + 2])/2.0
-      else:
-        anAnimItem.z = self.list_z_actual[-1] + 1
-      self.list_z_actual.pop(index)
-      self.list_z_actual.insert(index+1, anAnimItem.z)
-
-  def z_lower(self, anAnimItem):
-    index = self.list_z_actual.index(anAnimItem.z)
-    if index > 0:
-      if index > 1:
-         anAnimItem.z = (self.list_z_actual[index - 1] + self.list_z_actual[index - 2])/2.0
-      else:
-        anAnimItem.z = self.list_z_actual[0] /2.0
-      self.list_z_actual.pop(index)
-      self.list_z_actual.insert(index-1, anAnimItem.z)
-
-  # Version 2: compare attributes and put those with difference in frames_info
-  #
-  # self.attributs is list of specific attributs usable for animation
-  # There is matrice (rotation, flip) and z position to check too
-
-
-  def get_animitem_properties(self, anAnimItem):
-    properties = {'matrice' : anAnimItem.canvas_item.get_transform() }
-    for property_name in self.attributs[anAnimItem.type]:
-      properties [property_name] = anAnimItem.canvas_item.get_property(property_name)
-      if property_name == 'text':
-        properties [property_name] = properties [property_name].decode('UTF-8')
-    return properties
-
-  def z_reinit(self):
-    for anAnimItem in self.framelist:
-      anAnimItem.z = self.list_z_actual.index(anAnimItem.z)+1
-      anAnimItem.z_previous =  anAnimItem.z
-
-    self.list_z_last_shot= range(1, len(self.list_z_actual) + 1)
-    self.list_z_actual=self.list_z_last_shot[:]
-
-  def z_delete_on_shot(self, anAnimItem):
-    if anAnimItem.z_previous:
-        self.list_z_last_shot.remove(anAnimItem.z_previous)
-
-  def get_modified_parameters(self, animItem):
-        print "get_modified_parameters=", animItem
-        modified= {}
-        dict_properties = self.get_animitem_properties(animItem)
-        print "dict_properties=", dict_properties
-        frames = animItem.frames_info.keys()
-        if frames != []:
-          frames.sort()
-          frames.reverse()
-
-          for property in dict_properties.keys():
-            for frame in frames:
-              print animItem.type, property, frame, animItem.frames_info[frame]
-              if animItem.frames_info[frame].has_key(property):
-                if not animItem.frames_info[frame][property]==dict_properties[property]:
-                  modified[property]=dict_properties[property]
-                break
-        else:
-          modified = dict_properties
-          modified.update(self.fixedattributs[animItem.type])
-          if animItem.type == 'IMAGE':
-            modified['image_name']= animItem.image_name
-          modified['create']=True
-          self.animlist.append(animItem)
-
-        if animItem.z != animItem.z_previous:
-          if animItem.z_previous:
-            self.list_z_last_shot.remove(animItem.z_previous)
-          modified['z'] = self.z_find_index(animItem)
-          self.list_z_last_shot.insert( modified['z'], animItem.z)
-
-        return modified
-
-  def Anim2Shot(self):
-    if self.gcomprisBoard.mode == 'draw':
-      return
-    self.flash.props.visibility = goocanvas.ITEM_VISIBLE
-    for anAnimItem in self.framelist[:]:
-      if not anAnimItem.z:
-        # deleted
-        self.z_delete_on_shot(anAnimItem)
-        modified = { 'delete': True }
-        self.framelist.remove(anAnimItem)
-        if self.animlist.count(anAnimItem) == 0:
-          # deleted without being in any shot
-          continue
-      else:
-        modified = self.get_modified_parameters(anAnimItem)
-        print "Anim2Shot modified", modified
-
-
-      if len(modified) != 0:
-        print ">>MARKING MODIFIED"
-        anAnimItem.frames_info[self.current_frame] = modified
-#
-    self.current_frame = self.current_frame + 1
-    self.frames_total =  self.current_frame
-    self.z_reinit()
-    self.item_frame_counter.set_properties(text=self.current_frame + 1)
-    # print self.current_frame + 1
-    self.timeout = gobject.timeout_add(500, self.run_flash)
-
-  def z_find_index(self, anAnimItem):
-    def f(x): return x < anAnimItem.z
-
-    return len(filter(f, self.list_z_last_shot))
-
-#    self.z_reinit()
-
-  def apply_frame(self, frame):
-    print "apply_frame", frame, self.playlist
-    for item in self.playlist:
-      print "item ",item
-      if not item.frames_info.has_key(frame):
-        continue
-      modif = item.frames_info[frame].copy()
-      print "modif ",modif
-      if modif.has_key('delete'):
-        item.canvas_item.remove()
-        continue
-      if modif.has_key('create'):
-        del modif['create']
-        z = modif['z']
-        del modif['z']
-        matrice = modif['matrice']
-        del modif['matrice']
-        if item.type == 'IMAGE':
-          image = modif['image_name']
-          del modif['image_name']
-          pixmap = gcompris.utils.load_pixmap(image)
-          modif['pixbuf']= pixmap
-        item.canvas_item = self.types[item.type](
-          parent = self.playing,
-          **modif)
-        #delta = len(self.playing.get_n_children()) - z -1
-        #if delta != 0:
-        #  item.canvas_item.lower(delta)
-        if matrice:
-          item.canvas_item.set_transform(matrice)
-        continue
-      else:
-        if modif.has_key('z'):
-          z = modif['z']
-          del modif['z']
-          index = self.playing.item_list.index(item.canvas_item)
-          if index > z:
-            item.canvas_item.lower(index - z)
-          else:
-            item.canvas_item.raise_(z - index)
-        if  modif.has_key('matrice'):
-          matrice = modif['matrice']
-          del modif['matrice']
-          if matrice:
-            item.canvas_item.set_transform(matrice)
-        if len(modif) != 0:
-          item.canvas_item.set_properties(**modif)
-
-  def run_anim2(self):
-    if self.running:
-      if self.current_frame==0:
-        self.playing.remove()
-        self.playing = goocanvas.Group(
-          parent = self.rootitem,
-          )
-      self.apply_frame((self.current_frame)%(self.frames_total))
-      self.current_frame=(self.current_frame+1)%(self.frames_total)
-      self.item_frame_counter.set_properties(text=self.current_frame + 1)
-    else:
-      self.playing.remove()
-      self.current_frame = self.frames_total
-      self.item_frame_counter.set_properties(text=self.current_frame + 1)
-      self.root_anim.props.visibility = goocanvas.ITEM_VISIBLE
-      self.root_coloritem.props.visibility = goocanvas.ITEM_VISIBLE
-      self.root_toolitem.props.visibility = goocanvas.ITEM_VISIBLE
-      self.root_playingitem.props.visibility = goocanvas.ITEM_INVISIBLE
-      gcompris.bar_hide(False)
-    return self.running
-
-  def Anim2Run(self):
-    gcompris.bar_hide(True)
-    if self.frames_total==0:
-      #print "Mmm... Need to make shots before run anim !!"
-      self.running=False
-      return
-    # Hide the current drawing
-    self.root_anim.props.visibility = goocanvas.ITEM_INVISIBLE
-    self.playing = goocanvas.Group(
-      parent = self.root_anim,
-      )
-
-    self.playlist = []
-    print "Creating list"
-    for aItem in self.animlist:
-      print aItem
-      playItem = self.AnimItem()
-      playItem.frames_info = aItem.frames_info.copy()
-      playItem.type = aItem.type
-      self.playlist.append(playItem)
-
-    # Show the first drawing
-    self.apply_frame(0)
-    self.current_frame = 0
-
-    self.timeout = gobject.timeout_add(1000/self.anim_speed, self.run_anim2)
-
-
-  def anim_item_select(self, item):
-    if (self.selected):
-      self.anim_item_unselect()
-
-    self.selected = item
-    self.selected.get_child(1).props.visibility = goocanvas.ITEM_VISIBLE
-
-
-  def anim_item_unselect(self):
-    if not self.selected:
-      return
-    if ((gobject.type_name(self.selected.get_child(0)) == "GooCanvasText")
-        and (self.last_commit)):
-      #suppress preedit
-      self.selected.get_child(0).set_properties(text = self.last_commit)
-      self.last_commit = None
-      gcompris.im_reset()
-
-    self.selected.get_child(1).props.visibility = goocanvas.ITEM_INVISIBLE
-    self.selected = None
-
-
-
-
 ###############################################
 #
 #             GLOBAL functions
@@ -2074,327 +1348,14 @@
 ###############################################
 def general_save(filename, filetype):
   global fles
-
   print "filename=%s filetype=%s" %(filename, filetype)
-  fles.z_reinit()
-
-  anim2_to_file(filename)
 
 
 def general_restore(filename, filetype):
-  #print "general_restore : ", filename, " type ",filetype
-
-  filename = filename + fles.file_type
-  # Determine the file format by reading the first line
-  file = open(filename, 'r')
-  line = file.read(24)
-  file.close();
-  filetype = ""
-  if(line == "UGCompris draw 2 cPikle"
-     or line == "UGCompris anim 2 cPikle"):
-    filetype = 'image/gcompris+anim'
-  elif(line == "<?xml version='1.0' enco"):
-    filetype = 'image/svg+xml'
-
-  if (filetype in ['image/gcompris+anim','image/gcompris+draw']):
-    file_to_anim2(filename)
-
-
-def anim2_to_file(filename):
-  global fles
-
-  file = open(filename, 'wb')
-
-  # Save the descriptif frame:
-  pickle.dump(fles.format_string['gcompris'], file, True)
-
-  # save the total of frames
-  pickle.dump(fles.frames_total, file, True)
-
-  # save the list into
-  list_to = []
-
-  # get the list
-  list_from = []
-
-  if (fles.gcomprisBoard.mode == 'draw'):
-    # in draw we need to get the list in z order, because of svg.
-    def get_item_at(z):
-      for item in eval('fles.' + fles.itemlist[fles.gcomprisBoard.mode]):
-        if item.z == z: return item
-    for z in fles.list_z_actual:
-      list_from.append(get_item_at(z))
-
-    # now each item needs to get it's frames_info updated
-    for anAnimItem in list_from[:]:
-      modified = fles.get_modified_parameters(anAnimItem)
-      if len(modified) != 0:
-        anAnimItem.frames_info[fles.current_frame] = modified
-
-  else:
-    list_from = fles.animlist
-
-  for item in list_from:
-    frames_info_copied = {}
-    for t, d  in item.frames_info.iteritems():
-      frames_info_copied[t] = d.copy();
-    Sitem = [ item.type, frames_info_copied]
-    list_frames = Sitem[1].keys()
-    list_frames.sort()
-    if ((Sitem[0] == 'TEXT') and (Sitem[1][list_frames[0]].has_key('anchor'))):
-        Sitem[1][list_frames[0]]['text-anchor'] = 'middle'
-        del Sitem[1][list_frames[0]]['anchor']
-    list_to.append(Sitem)
-
-  pickle.dump(list_to, file, True)
-  file.close()
-
-def file_to_anim2(filename):
-  global fles
-
-  file =   open(filename, 'rb')
-  try:
-    desc = pickle.load(file)
-  except:
-    file.close()
-    print 'Cannot load ', filename , " as a GCompris animation"
-    return
-
-  print "file_to_anim2 A"
-  if type(desc) == type('str'):
-    # string
-    if 'desc' != fles.format_string['gcompris']:
-      if (desc == 'GCompris draw 2 cPikle file'
-          or desc == 'GCompris anim 2 cPikle file'):
-        fles.frames_total = pickle.load(file)
-      else:
-        print "ERROR: Unrecognized file format, file", filename, ' has description : ', desc
-        file.close()
-        return
-    else:
-      print "ERROR: Unrecognized file format (desc), file", filename, ' has description : ', desc
-      file.close()
-      return
-
-  elif type(desc) == type(1):
-    print filename, 'has no description. Are you sure it\'s', fles.format_string['gcompris'],'?'
-    # int
-    fles.frames_total = desc
-
-  print "file_to_anim2 B"
-  picklelist = pickle.load(file)
-  file.close()
-  list_restore(picklelist)
-  print "file_to_anim2 C"
-
-def list_restore(picklelist):
-  global fles
-
-  print "list_restore"
-  def update_anchors(item):
-    global fles
-
-    data_list = { 'LINE' : ['parent', 'points'],
-                  'IMAGE' : ['parent', 'x', 'y', 'width', 'height'],
-                  'TEXT' : ['parent', 'x', 'y'],
-                  'RECT': ['parent', 'x', 'y', 'width', 'height'],
-                  'FILL_RECT': ['parent', 'x', 'y', 'width', 'height'],
-                  'CIRCLE': ['parent', 'center_x', 'center_y', 'radius_x', 'radius_y'],
-                  'FILL_CIRCLE': ['parent', 'center_x', 'center_y', 'radius_x', 'radius_y'],
-      }
-
-    data = {}
-    for prop in data_list[item.type]:
-      print prop
-      data[prop] = item.canvas_item.get_property(prop)
-
-    if item.type == 'LINE':
-      param = data['parent'], data['points'][0], data['points'][1], data['points'][2], data['points'][3],
-    else:
-      bounds = item.canvas_item.get_bounds()
-      param = data['parent'], bounds.x1, bounds.y1, bounds.x2, bounds.y2
-
-    fles.object_set_size_and_pos(*param)
-
-  fles.selected = None
+  print "general_restore : ", filename, " type ",filetype
 
-  for item in fles.framelist:
-    print item
-    try:
-      # can have been removed before by a delete action. No matter
-      item.canvas_item.get_property("parent").remove()
-    except:
-      pass
-
-  fles.framelist = []
-  fles.animlist=[]
 
-  for Sitem in picklelist:
-    print "Sitem"
-    print Sitem
-    AItem = fles.AnimItem()
-    AItem.type = Sitem[0]
-    AItem.frames_info = Sitem[1]
-    fles.animlist.append(AItem)
-
-  missing_images = []
-  for fles.current_frame in range(fles.frames_total+1):
-    for item in fles.animlist[:]:
-      if fles.gcomprisBoard.mode == 'draw':
-        item.z = fles.animlist.index(item)
-      restore_item(item, fles.current_frame, missing_images)
-
-  if missing_images:
-    list_images = ''
-    for im in missing_images:
-      list_images = list_images + im + '\n'
-      gcompris.utils.dialog(_('Warning: the following images cannot be accessed on your system.\n') +
-                            list_images +
-                            _('The corresponding items have been skipped.'),
-                            None)
-  fles.list_z_last_shot= []
-  for item in fles.framelist:
-    fles.list_z_last_shot.append(item.z)
-    #FIXMEupdate_anchors(item)
-  fles.list_z_last_shot.sort()
-  fles.list_z_actual = fles.list_z_last_shot[:]
-  fles.z_reinit()
-  fles.current_frame = fles.frames_total
-
-  fles.root_anim.props.visibility = goocanvas.ITEM_VISIBLE
-
-  # now each item needs to get it's frames_info cleared
-  if fles.gcomprisBoard.mode != 'draw':
-    fles.item_frame_counter.set_properties(text=fles.current_frame + 1)
-  else:
-    for anAnimItem in fles.animlist[:]:
-      anAnimItem.frames_info = {}
 
-def restore_item(item, frame, missing):
-  global fles
-
-  print "restore_item A"
-  if not item.frames_info.has_key(frame):
-    return
-
-  print "restore_item B"
-  modif = item.frames_info[frame].copy()
-
-  if modif.has_key('delete'):
-    item.canvas_item.get_property("parent").remove()
-    fles.framelist.remove(item)
-    return False
-
-  # To be backward compatible, delete unsupported gnomecanvas properties
-  try:
-    del modif['height_set']
-    del modif['width_set']
-  except:
-    pass
-
-  print "restore_item C"
-  # To be backward compatible, rename some properties
-  if ( ((item.type == 'CIRCLE') or (item.type == 'FILL_CIRCLE'))
-        and (modif.has_key('x2')) ):
-    modif['radius_x'] = (modif['x2'] - modif['x1'])/2
-    modif['radius_y'] = (modif['y2'] - modif['y1'])/2
-    modif['center_x'] = modif['x1'] + modif['radius_x']
-    modif['center_y'] = modif['y1'] + modif['radius_y']
-    del modif['x1']
-    del modif['x2']
-    del modif['y1']
-    del modif['y2']
-
-  if ( ((item.type == 'RECT') or (item.type == 'FILL_RECT'))
-        and modif.has_key('x2') ):
-    modif['x'] = modif['x1']
-    modif['y'] = modif['y1']
-    modif['width'] = modif['x2'] - modif['x1']
-    modif['height'] = modif['y2'] - modif['y1']
-    del modif['x1']
-    del modif['x2']
-    del modif['y1']
-    del modif['y2']
-
-  if (modif.has_key('width-units')):
-    modif['line_width'] = modif['width-units']
-    del modif['width-units']
-
-  if (modif.has_key('outline_color_rgba')):
-    modif['stroke_color_rgba'] = modif['outline_color_rgba']
-    del modif['outline_color_rgba']
-
-  if (modif.has_key('create') or (fles.gcomprisBoard.mode == 'draw')):
-
-    if modif.has_key('create'):
-      del modif['create']
-    if modif.has_key('z'):
-      item.z = modif['z']
-      del modif['z']
-    if fles.gcomprisBoard.mode == 'draw':
-      modif.update(fles.fixedattributs[item.type])
-    matrice = modif['matrice']
-    del modif['matrice']
-    if ((item.type == 'TEXT') and (modif.has_key('text-anchor'))):
-      del modif['text-anchor']
-      del item.frames_info[frame]['text-anchor']
-      item.frames_info[frame]['anchor']= gtk.ANCHOR_CENTER
-      modif['anchor']= gtk.ANCHOR_CENTER
-    if item.type == 'IMAGE':
-      item.image_name =  modif['image_name']
-
-      if (not os.access(gcompris.DATA_DIR + '/' + item.image_name, os.R_OK)
-          and not os.access(item.image_name, os.R_OK)):
-        missing.append(item.image_name)
-        fles.animlist.remove(item)
-        return False
-      del modif['image_name']
-      pixmap = gcompris.utils.load_pixmap(item.image_name)
-      modif['pixbuf']= pixmap
-
-    print "restore_item D"
-    newitemgroup = goocanvas.Group(
-      parent = fles.root_anim,
-        )
-
-    print modif
-    print "restore_item E %s" %(item.type,)
-    item.canvas_item = fles.types[item.type](
-      parent = newitemgroup,
-      **modif)
-    print item.canvas_item
-    item.canvas_item.set_data("AnimItem", item)
-    fles.anchorize(newitemgroup)
-    #delta = len(fles.root_anim.item_list) - item.z -1
-    #if delta != 0:
-    #  newitemgroup.lower(delta)
-    if matrice:
-      newitemgroup.set_transform(matrice)
-    fles.framelist.append(item)
-    print "restore_item F"
-    return True
-  else:
-    if modif.has_key('z'):
-      item.z = modif['z']
-      del modif['z']
-      index = fles.root_anim.item_list.index(item.canvas_item.get_property("parent"))
-      if index > item.z:
-        item.canvas_item.get_property("parent").lower(index - item.z)
-      else:
-        item.canvas_item.get_property("parent").raise_(item.z - index)
-    if  modif.has_key('matrice'):
-      matrice = modif['matrice']
-      del modif['matrice']
-      if matrice:
-        item.canvas_item.get_property("parent").set_transform(matrice)
-    if len(modif) != 0:
-      # Bourrin: je supprime les ancres et je les remets apres les modifs
-      # Pas envie de me faire ch*** a retraiter les resize et les move
-      #item.canvas_item.get_property("parent").get_child(1).remove()
-      item.canvas_item.set_properties(**modif)
-      #fles.anchorize(item.canvas_item.get_property("parent"))
-    return True
-  print "restore_item END"
 
 def image_selected(image):
   #fles is used because self is not passed through callback
@@ -2415,23 +1376,4 @@
     pixbuf = pixmap,
     )
 
-  anAnimItem = fles.AnimItem()
-  anAnimItem.z = fles.new_z()
-  anAnimItem.canvas_item = fles.newitem
-  anAnimItem.canvas_item.set_data("AnimItem", anAnimItem)
-  anAnimItem.type = 'IMAGE'
-  anAnimItem.image_name = image
-  fles.framelist.append(anAnimItem)
-  fles.list_z_actual.append(anAnimItem.z)
-
-  fles.anchorize(fles.newitemgroup)
-  width  = pixmap.get_width()
-  height = pixmap.get_height()
-  fles.object_set_size_and_pos(fles.newitemgroup,
-                               x, y,
-                               x + width, y + height)
-  fles.anim_item_select(fles.newitemgroup)
-
-  fles.newitem = None
-  fles.newitemgroup = None
 

Added: branches/gcomprixogoo/src/doubleclick-activity/Makefile.am
==============================================================================
--- (empty file)
+++ branches/gcomprixogoo/src/doubleclick-activity/Makefile.am	Sat May 10 16:48:20 2008
@@ -0,0 +1,32 @@
+SUBDIRS =
+
+pythondir = $(PYTHON_PLUGIN_DIR)
+
+dist_python_DATA= 	doubleclick.py
+
+
+
+xmldir = $(pkgdatadir)/@PACKAGE_DATA_DIR@
+
+xml_in_files = \
+	doubleclick.xml.in
+
+
+xml_DATA = $(xml_in_files:.xml.in=.xml)
+
+# Do not use the INTLTOOL_XML_RULE, we don't need to embed the translations
+# in the file themselves. GCompris pick the translations from the po file at
+# runtime.
+#
+$(xml_DATA): %.xml: %.xml.in
+	sed -e "s/\(<\{1\}\/*\)_/\1/g" $< > $@
+
+# Use this directive and instead of the one above to embed the translations
+# in the xml files directly, this is needed for the tool gcompris2spip
+# INTLTOOL_XML_RULE@
+
+icondir = $(pkgdatadir)/@PACKAGE_DATA_DIR@
+icon_DATA = doubleclick.svg
+
+EXTRA_DIST = $(icon_DATA) ${xml_in_files} init_path.sh
+CLEANFILES = $(xml_DATA)

Added: branches/gcomprixogoo/src/doubleclick-activity/doubleclick.py
==============================================================================
--- (empty file)
+++ branches/gcomprixogoo/src/doubleclick-activity/doubleclick.py	Sat May 10 16:48:20 2008
@@ -0,0 +1,496 @@
+#  gcompris - doubleclick
+#
+# Copyright (C) 2008 Bruno Coudoin
+#
+#   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 3 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, see <http://www.gnu.org/licenses/>.
+#
+
+import gobject
+import goocanvas
+import gcompris
+import gcompris.utils
+import gcompris.skin
+import gcompris.bonus
+import gcompris.sound
+import gtk
+import gtk.gdk
+from gcompris import gcompris_gettext as _
+
+# ----------------------------------------
+# Double click in a timely fashion to goal against Tux
+
+class Gcompris_doubleclick:
+  """double click goal"""
+
+
+  def __init__(self, gcomprisBoard):
+    self.gcomprisBoard = gcomprisBoard
+
+    self.gcomprisBoard.disable_im_context = True
+
+    # These are used to let us restart only after the bonus is displayed.
+    # When the bonus is displayed, it call us first with pause(1) and then with pause(0)
+    self.board_paused  = 0
+    self.gamewon       = 0
+    self.timer_indic   = 0
+    self.timerinc      = 10
+
+  def start(self):
+    self.gcomprisBoard.level=1
+    self.gcomprisBoard.maxlevel=9
+    self.gcomprisBoard.sublevel=1
+    self.gcomprisBoard.number_of_sublevel=1
+    gcompris.bar_set(gcompris.BAR_LEVEL)
+    gcompris.set_background(self.gcomprisBoard.canvas.get_root_item(),
+                            "doubleclick/penalty_bg.svg")
+    gcompris.bar_set_level(self.gcomprisBoard)
+
+
+    self.ballinc = 20        # Event loop timer for the ball move
+
+    # Create our rootitem. We put each canvas item in it so at the end we
+    # only have to kill it. The canvas deletes all the items it contains automaticaly.
+    self.rootitem = goocanvas.Group(
+      parent = self.gcomprisBoard.canvas.get_root_item() )
+
+    # Help
+    self.help_item = \
+        goocanvas.Text(
+          parent = self.rootitem,
+          font = gcompris.skin.get_font("gcompris/board/medium"),
+          x = gcompris.BOARD_WIDTH / 2,
+          y = gcompris.BOARD_HEIGHT - 170,
+          anchor = gtk.ANCHOR_CENTER,
+          fill_color = "white"
+          )
+    self.help_item.props.visibility = \
+        goocanvas.ITEM_INVISIBLE
+
+    # Tux
+    pixbuf = gcompris.utils.load_pixmap("doubleclick/teen_tux.svg")
+    item = goocanvas.Image(
+      parent = self.rootitem,
+      pixbuf = pixbuf,
+      x = gcompris.BOARD_WIDTH/2 - pixbuf.get_width()/2,
+      y = 195.0
+      )
+    item.connect("button_press_event", self.help)
+
+    # The activity help
+    item = goocanvas.Image(
+      parent = self.rootitem,
+      pixbuf = gcompris.utils.load_pixmap("doubleclick/doubleclick.svg"),
+      x = gcompris.BOARD_WIDTH  - 150,
+      y = gcompris.BOARD_HEIGHT - 100
+      )
+    item.connect("button_press_event", self.help)
+
+    # The click indicator
+    indicator_h = 30
+    indicator_w = 10
+    y_ref = 107
+
+    self.indicator = []
+    self.indicator.append(
+      Indicator(self.rootitem,
+                gcompris.BOARD_WIDTH/2 - 350,
+                y_ref,
+                indicator_w,
+                indicator_h,
+                0,
+                200)
+      )
+    self.indicator.append(
+      Indicator(self.rootitem,
+                gcompris.BOARD_WIDTH/2,
+                y_ref - 80,
+                indicator_h,
+                indicator_w,
+                1,
+                100)
+      )
+    self.indicator.append(
+      Indicator(self.rootitem,
+                gcompris.BOARD_WIDTH/2 + 350,
+                y_ref,
+                indicator_w,
+                indicator_h,
+                2,
+                200)
+      )
+
+    self.balloon = Balloon(self, 10, 10)
+    self.balloon.item.connect("button_press_event",
+                              self.shoot_item_event)
+
+    self.next_level()
+
+
+  def end(self):
+
+    self.balloon.reset()
+
+    if self.timer_indic:
+      gobject.source_remove(self.timer_indic)
+    self.timer_indic = 0
+
+    # Remove the root item removes all the others inside it
+    self.rootitem.remove()
+    self.rootitem = None
+
+  def ok(self):
+    pass
+
+
+  def repeat(self):
+    pass
+
+
+  def config(self):
+    pass
+
+
+  def key_press(self, keyval, commit_str, preedit_str):
+    return False
+
+  # Called by gcompris core
+  def pause(self, pause):
+
+    self.board_paused = pause
+
+    # When the bonus is displayed, it call us first with pause(1) and then with pause(0)
+    # the game is won
+    if(pause == 0):
+      self.next_level()
+      self.gamewon = 0
+
+    return
+
+
+  # Called by gcompris when the user click on the level icon
+  def set_level(self, level):
+    self.gcomprisBoard.level=level
+    self.gcomprisBoard.sublevel=1
+    self.next_level()
+
+  # End of Initialisation
+  # ---------------------
+
+  def next_level(self):
+
+    # Set the level in the control bar
+    gcompris.bar_set_level(self.gcomprisBoard);
+    self.balloon.reset()
+
+    if self.timer_indic:
+      gobject.source_remove(self.timer_indic)
+    self.timer_indic = 0
+
+    if(self.gcomprisBoard.level == 1):
+      winlimit = 1000
+    elif(self.gcomprisBoard.level == 2):
+      winlimit = 800
+    elif(self.gcomprisBoard.level == 3):
+      winlimit = 600
+    elif(self.gcomprisBoard.level == 4):
+      winlimit = 400
+    elif(self.gcomprisBoard.level == 5):
+      winlimit = 250
+    elif(self.gcomprisBoard.level == 6):
+      winlimit = 200
+    elif(self.gcomprisBoard.level == 7):
+      winlimit = 180
+    elif(self.gcomprisBoard.level == 8):
+      winlimit = 170
+    elif(self.gcomprisBoard.level == 9):
+      winlimit = 160
+
+    self.counter = [0, 0, 0]
+    for i in self.indicator:
+      i.reset()
+      i.winlimit = winlimit
+
+
+  # Code that increments the sublevel and level
+  # And bail out if no more levels are available
+  # return 1 if continue, 0 if bail out
+  def increment_level(self):
+    self.gcomprisBoard.sublevel += 1
+
+    if(self.gcomprisBoard.sublevel>self.gcomprisBoard.number_of_sublevel):
+      # Try the next level
+      self.gcomprisBoard.sublevel=1
+      self.gcomprisBoard.level += 1
+      if(self.gcomprisBoard.level>self.gcomprisBoard.maxlevel):
+        self.gcomprisBoard.level = self.gcomprisBoard.maxlevel
+
+    return 1
+
+  # Update the counter and return true if click action
+  # is compteted
+  def update_counter(self, button, time):
+
+    if self.counter[button] == 0:
+      # FIRST CLICK
+      # Check we are not already running
+      for i in range(3):
+        if self.counter[i] != 0:
+          return False
+
+      self.counter[button] = time
+      self.indicator[button].start()
+      self.timer_indic  = gobject.timeout_add(self.timerinc,
+                                              self.indicator[button].refresh,
+                                              self.timerinc)
+      gcompris.sound.play_ogg("sounds/flip.wav")
+      return False
+    elif self.counter[button] != 0:
+      # SECOND CLICK
+      self.counter[button] = abs(self.counter[button] - time)
+      self.counter[button] = 0
+      self.balloon.move_to(self.indicator[button].stop())
+      return True
+
+  def shoot_item_event(self, item, target, event=None):
+    if event.type == gtk.gdk.BUTTON_PRESS:
+      if event.button <= 3:
+        if self.balloon.need_reset:
+          self.balloon.reset()
+          for i in range(3):
+            self.counter[i] = 0
+            self.indicator[i].reset()
+        else:
+          self.update_counter(event.button - 1,
+                              event.time)
+
+    return False
+
+  #
+  # Display an info string when the user clicks
+  # on the wrong item
+  def help(self, item, target, event=None):
+    if event.type == gtk.gdk.BUTTON_PRESS:
+      if self.balloon.need_reset:
+        text=_("Click on the balloon to place it again.")
+      else:
+        text=_("Click twice on the balloon to shoot it.")
+
+      self.help_item.set_properties(text = text)
+      self.help_item.props.visibility = \
+          goocanvas.ITEM_VISIBLE
+
+    return False
+
+class Indicator:
+  winlimit = 0
+  color_init = 0x1212CCC0
+  color_done = 0x000012C0
+  item = 0
+  orientation = 0
+  counter = 0
+  stopped = True
+  # orientation = 0 : horizontal, left assigned
+  #             = 1 : vertical, top assigned
+  #             = 2 : horizontal, right assigned
+  #
+  def __init__(self, rootitem, x, y, w, h,
+               orientation, max):
+    self.x = x
+    self.y = y
+    self.w = w
+    self.h = h
+    self.max = max
+    self.orientation = orientation
+    self.item = goocanvas.Rect(
+        parent = rootitem,
+        stroke_color_rgba=0xFFFFFFFFL,
+        line_width = 1)
+    self.reset()
+
+  def reset(self):
+    self.item.set_properties(
+      x = self.x,
+      y = self.y,
+      width = self.w,
+      height = self.h,
+      fill_color_rgba = self.color_init)
+    self.stopped = True
+
+  #
+  # Return the calculated coordinate of the ballon
+  # return: (win, X, Y) with win = True or False
+  #
+  def stop(self):
+    self.stopped = True
+
+    return (self.counter <= self.winlimit,
+            self.target_x,
+            self.target_y)
+
+
+  def start(self):
+    self.stopped = False
+    self.counter = 0
+
+  def refresh(self, timerinc):
+    self.counter += timerinc
+    self.update(self.counter)
+
+    if self.stopped:
+      return False
+    return True
+
+  def update(self, counter):
+    length = min( (counter * self.max) / self.winlimit,
+                  self.max)
+
+    if self.orientation == 0:
+      x2 = self.x + length
+      self.item.set_properties(width = length)
+      self.target_x = x2
+      self.target_y = self.y
+    elif self.orientation == 1:
+      y2 = self.y + length
+      self.item.set_properties(height = length)
+      self.target_x = self.x
+      self.target_y = y2
+    elif self.orientation == 2:
+      x1 = (self.x + self.w) - length
+      self.item.set_properties(x = x1,
+                               width = length)
+      self.target_x = x1
+      self.target_y = self.y
+
+    # Calc a proportional red and green color
+    color = 0L
+    if counter <= self.winlimit:
+      cg = 0xFF - min( 0xFF,
+                       (counter * 0xFF) / self.winlimit)
+      cg = max(cg, 0x50)
+      cr = 0x12
+    else:
+      cg = 0x12
+      cr = min( 0xFF,
+                ((counter - self.winlimit) * 0xFF) / self.winlimit)
+      cr += 0x90
+      cr = min(0xFF, cr)
+
+    color = self.color_done | (cg<<16) | (cr<<24)
+
+    self.item.set_properties(fill_color_rgba = color)
+
+#
+# The balloon display and it's motion
+#
+class Balloon:
+  x = 0
+  y = 0
+  size = 0
+  stopped = True
+  item = 0
+  timerinc = 20
+  timer = 0
+  need_reset = False
+
+  def __init__(self, doubleclick, x, y):
+
+    self.doubleclick = doubleclick
+    self.rootitem = doubleclick.rootitem
+    self.x = x
+    self.y = y
+
+    # Balloon shadow
+    self.shadow = goocanvas.Image(
+      parent = self.rootitem,
+      pixbuf = gcompris.utils.load_pixmap("doubleclick/foot_shadow.svg"),
+      )
+
+    # Balloon
+    self.item = goocanvas.Image(
+      parent = self.rootitem,
+      pixbuf = gcompris.utils.load_pixmap("doubleclick/foot.svg"),
+      )
+
+    bounds = self.item.get_bounds()
+    self.size = bounds.y2 - bounds.y1
+
+  def reset(self):
+    self.need_reset = False
+    self.x = gcompris.BOARD_WIDTH/2
+    self.y = gcompris.BOARD_HEIGHT - 115
+
+    self.item.set_properties(
+      x = self.x - self.size/2,
+      y = self.y - self.size/2,
+      )
+
+    self.shadow.set_properties(
+      x = self.x - self.size/2,
+      y = self.y + self.size/2 - 5,
+      )
+
+    # This item is clickeable and it must be seen
+    gcompris.utils.item_focus_init(self.item, None)
+
+    if self.timer:
+      gobject.source_remove(self.timer)
+    self.timer = 0
+
+
+  def move_step(self):
+    self.x -= self.dx
+    self.y -= self.dy
+    self.item.set_properties(
+      x = self.x - self.size/2,
+      y = self.y - self.size/2,
+      )
+    self.step -= 1
+
+    if self.step == 0:
+      if self.win:
+        gcompris.sound.play_ogg("sounds/bonus.wav")
+        self.doubleclick.increment_level()
+        self.doubleclick.next_level()
+      else:
+        gcompris.sound.play_ogg("sounds/tuxok.wav")
+        # This item is clickeable and it must be seen
+        gcompris.utils.item_focus_init(self.item, None)
+
+      return False
+
+    return True
+
+
+  # target: (win, X, Y) with win = True or False
+  def move_to(self, target):
+    if self.timer != 0:
+      return
+
+    self.need_reset = True
+    gcompris.sound.play_ogg("sounds/brick.wav")
+
+    self.win = target[0]
+    target_x = target[1]
+    target_y = target[2]
+    if target[0] == False:
+      target_x = gcompris.BOARD_WIDTH / 2
+      target_y = 260
+
+    self.step = 100.0
+    self.dx = (self.x - target_x) / self.step
+    self.dy = (self.y - target_y) / self.step
+
+    self.timer  = gobject.timeout_add(self.timerinc,
+                                      self.move_step)
+

Added: branches/gcomprixogoo/src/doubleclick-activity/doubleclick.svg
==============================================================================
--- (empty file)
+++ branches/gcomprixogoo/src/doubleclick-activity/doubleclick.svg	Sat May 10 16:48:20 2008
@@ -0,0 +1,558 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448)  -->
+<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";
+   version="1.0"
+   id="Layer_1"
+   width="100"
+   height="100"
+   viewBox="0 0 429.499 448.256"
+   overflow="visible"
+   enable-background="new 0 0 429.499 448.256"
+   xml:space="preserve"
+   sodipodi:version="0.32"
+   inkscape:version="0.46"
+   sodipodi:docname="doubleclick.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape"
+   style="overflow:visible"><metadata
+   id="metadata282"><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="defs280"><inkscape:perspective
+     sodipodi:type="inkscape:persp3d"
+     inkscape:vp_x="0 : 224.12801 : 1"
+     inkscape:vp_y="0 : 1000 : 0"
+     inkscape:vp_z="429.49899 : 224.12801 : 1"
+     inkscape:persp3d-origin="214.7495 : 149.41867 : 1"
+     id="perspective284" /></defs><sodipodi:namedview
+   inkscape:window-height="719"
+   inkscape:window-width="984"
+   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="2.2040976"
+   inkscape:cx="65.002009"
+   inkscape:cy="63.146668"
+   inkscape:window-x="256"
+   inkscape:window-y="146"
+   inkscape:current-layer="Layer_1" />
+<path
+   d="M 387.384,231.558 C 395.558,231.558 402.184,224.933 402.184,216.761 C 402.184,208.587 395.558,201.962 387.384,201.962 C 379.211,201.962 372.586,208.587 372.586,216.761 C 372.586,224.933 379.211,231.558 387.384,231.558"
+   id="path3"
+   style="fill:#ffffff" />
+<path
+   d="M 344.219,155.692 L 346.835,159.18 C 346.835,159.18 342.476,182.288 352.94,190.573 L 361.66,305.244 L 362.532,314.401 C 362.532,314.401 355.992,309.169 354.248,313.528 C 352.503,317.888 349.512,332.307 352.067,352.769 C 352.503,356.257 352.067,354.077 352.067,354.077 L 345.091,356.258 C 345.091,356.258 343.347,302.628 335.498,306.117 C 335.498,306.117 324.162,303.063 315.442,344.485 L 305.556,344.312 C 305.556,344.312 325.034,307.86 316.313,293.036 C 316.313,293.036 301.052,284.752 297.129,310.476 L 302.36,284.316 C 302.36,284.316 315.004,268.183 308.464,264.259 C 301.924,260.334 307.156,259.462 307.156,259.462 L 297.999,268.618 L 293.203,264.259 L 305.848,246.382 C 305.848,246.382 303.232,232.865 274.019,242.022 C 244.806,251.179 257.451,246.382 257.451,246.382 C 257.451,246.382 300.811,231.907 299.624,224.321 C 298.436,216.734 281.868,199.293 276.636,198.857 C 271.404,198.421 311.081,221.094 313.261,219.35 C 315.442,217.606 323.06,207.753 321.11,187.085 C 321.11,187.
 085 330.702,206.705 333.318,200.601 C 335.934,194.497 345.321,156.651 345.321,156.651"
+   id="path5"
+   style="fill:#ffffff" />
+<polyline
+   points="197.775,340.125 210.333,343.614 212.98,379.802 194.635,381.982 197.284,364.105 195.539,355.385   194.635,340.823 "
+   id="polyline7"
+   style="fill:#ffffff" />
+<path
+   d="M 372.124,305.244 C 399.975,305.244 429.242,273.361 429.242,248.999 C 429.242,214.173 394.41,188.243 372.085,188.243 C 338.712,188.243 311.656,215.298 311.656,248.674 C 311.656,282.045 338.75,305.244 372.124,305.244"
+   id="path9"
+   style="fill:#d1eefc" />
+<path
+   d="M 313.687,246.877 C 313.884,279.448 340.449,305.694 373.022,305.499 C 405.59,305.304 429.001,278.518 428.806,245.946 C 428.63,216.51 394.397,187.413 372.31,187.546 C 339.736,187.743 313.49,214.307 313.687,246.877"
+   id="path11"
+   style="fill:#d2eefc" />
+<path
+   d="M 311.998,246.505 C 312.388,278.281 338.465,303.725 370.242,303.334 C 402.02,302.944 427.465,276.867 427.073,245.088 C 426.682,213.312 400.604,187.868 368.828,188.258 C 337.051,188.65 311.605,214.727 311.998,246.505"
+   id="path13"
+   style="fill:#d3eefc" />
+<path
+   d="M 319.079,245.758 C 319.859,275.946 344.964,299.787 375.154,299.007 C 405.342,298.228 429.183,273.122 428.406,242.934 C 427.622,212.745 402.517,188.902 372.33,189.684 C 342.141,190.464 318.299,215.568 319.079,245.758"
+   id="path15"
+   style="fill:#d5effc" />
+<path
+   d="M 320.877,245.382 C 321.851,274.778 346.472,297.818 375.865,296.844 C 405.26,295.867 428.298,271.248 427.326,241.856 C 426.349,212.46 401.73,189.419 372.337,190.396 C 342.94,191.37 319.904,215.989 320.877,245.382"
+   id="path17"
+   style="fill:#d6f0fc" />
+<path
+   d="M 322.673,245.01 C 323.842,273.611 347.976,295.847 376.576,294.679 C 405.174,293.51 427.414,269.378 426.245,240.777 C 425.078,212.178 400.944,189.938 372.342,191.11 C 343.744,192.278 321.505,216.41 322.673,245.01"
+   id="path19"
+   style="fill:#d7f0fc" />
+<path
+   d="M 324.47,244.636 C 325.833,272.443 349.481,293.88 377.286,292.516 C 405.093,291.153 426.529,267.505 425.165,239.699 C 423.804,211.895 400.156,190.457 372.35,191.82 C 344.545,193.184 323.105,216.832 324.47,244.636"
+   id="path21"
+   style="fill:#d8f0fc" />
+<path
+   d="M 326.268,244.263 C 327.828,271.276 350.987,291.909 377.998,290.352 C 405.011,288.794 425.646,265.633 424.087,238.622 C 422.53,211.611 399.368,190.976 372.357,192.534 C 345.345,194.092 324.71,217.251 326.268,244.263"
+   id="path23"
+   style="fill:#d9f1fd" />
+<path
+   d="M 328.064,243.889 C 329.815,270.108 352.492,289.942 378.71,288.187 C 404.926,286.434 424.759,263.759 423.008,237.544 C 421.256,211.326 398.581,191.492 372.362,193.245 C 346.146,194.998 326.312,217.672 328.064,243.889"
+   id="path25"
+   style="fill:#daf1fd" />
+<path
+   d="M 329.859,243.516 C 331.808,268.941 353.997,287.972 379.419,286.026 C 404.844,284.079 423.875,261.89 421.93,236.466 C 419.982,211.043 397.793,192.01 372.371,193.957 C 346.947,195.906 327.914,218.093 329.859,243.516"
+   id="path27"
+   style="fill:#dbf2fd" />
+<path
+   d="M 331.659,243.143 C 333.801,267.773 355.501,286.001 380.131,283.861 C 404.76,281.718 422.991,260.016 420.85,235.389 C 418.708,210.759 397.007,192.528 372.378,194.67 C 347.747,196.812 329.516,218.514 331.659,243.143"
+   id="path29"
+   style="fill:#ddf2fd" />
+<path
+   d="M 333.456,242.77 C 335.792,266.603 357.009,284.031 380.842,281.696 C 404.678,279.362 422.108,258.144 419.77,234.31 C 417.434,210.475 396.219,193.046 372.385,195.381 C 348.548,197.718 331.12,218.936 333.456,242.77"
+   id="path31"
+   style="fill:#def2fd" />
+<path
+   d="M 335.252,242.395 C 337.783,265.436 358.515,282.064 381.555,279.533 C 404.596,277.005 421.222,256.273 418.692,233.232 C 416.162,210.191 395.432,193.564 372.392,196.095 C 349.348,198.625 332.722,219.355 335.252,242.395"
+   id="path33"
+   style="fill:#dff3fd" />
+<path
+   d="M 337.051,242.022 C 339.777,264.267 360.02,280.093 382.264,277.37 C 404.51,274.643 420.336,254.4 417.613,232.152 C 414.886,209.907 394.643,194.083 372.395,196.806 C 350.152,199.534 334.325,219.775 337.051,242.022"
+   id="path35"
+   style="fill:#e0f3fd" />
+<path
+   d="M 338.848,241.647 C 341.768,263.099 361.525,278.125 382.975,275.205 C 404.428,272.286 419.453,252.527 416.534,231.077 C 413.614,209.623 393.856,194.601 372.403,197.521 C 350.951,200.439 335.929,220.196 338.848,241.647"
+   id="path37"
+   style="fill:#e1f3fd" />
+<path
+   d="M 340.646,241.275 C 343.758,261.932 363.029,276.156 383.688,273.043 C 404.346,269.928 418.569,250.656 415.454,230 C 412.342,209.34 393.068,195.119 372.411,198.232 C 351.753,201.344 337.529,220.617 340.646,241.275"
+   id="path39"
+   style="fill:#e2f4fd" />
+<path
+   d="M 342.439,240.902 C 345.749,260.764 364.533,274.187 384.399,270.878 C 404.26,267.57 417.682,248.784 414.374,228.92 C 411.066,209.058 392.281,195.637 372.418,198.945 C 352.553,202.253 339.132,221.038 342.439,240.902"
+   id="path41"
+   style="fill:#e3f4fd" />
+<path
+   d="M 344.238,240.529 C 347.74,259.597 366.04,272.217 385.111,268.713 C 404.177,265.21 416.797,246.912 413.295,227.842 C 409.793,208.774 391.494,196.154 372.424,199.656 C 353.354,203.16 340.735,221.458 344.238,240.529"
+   id="path43"
+   style="fill:#e4f5fd" />
+<path
+   d="M 346.035,240.154 C 349.732,258.429 367.547,270.248 385.819,266.55 C 404.096,262.852 415.915,245.038 412.215,226.763 C 408.519,208.49 390.703,196.672 372.431,200.369 C 354.154,204.067 342.337,221.878 346.035,240.154"
+   id="path45"
+   style="fill:#e5f5fd" />
+<path
+   d="M 347.831,239.78 C 351.723,257.262 369.05,268.277 386.532,264.386 C 404.012,260.492 415.029,243.166 411.135,225.685 C 407.246,208.206 389.917,197.187 372.439,201.081 C 354.957,204.974 343.94,222.299 347.831,239.78"
+   id="path47"
+   style="fill:#e6f5fd" />
+<path
+   d="M 349.63,239.406 C 353.714,256.094 370.557,266.308 387.244,262.222 C 403.931,258.136 414.143,241.295 410.057,224.609 C 405.97,207.921 389.129,197.706 372.446,201.795 C 355.759,205.881 345.543,222.722 349.63,239.406"
+   id="path49"
+   style="fill:#e7f6fd" />
+<path
+   d="M 351.427,239.034 C 355.707,254.926 372.064,264.338 387.955,260.057 C 403.846,255.776 413.26,239.421 408.977,223.531 C 404.698,207.638 388.343,198.225 372.45,202.505 C 356.559,206.787 347.146,223.141 351.427,239.034"
+   id="path51"
+   style="fill:#e8f6fd" />
+<path
+   d="M 353.225,238.661 C 357.7,253.759 373.568,262.37 388.663,257.896 C 403.764,253.418 412.375,237.551 407.899,222.453 C 403.423,207.355 387.556,198.744 372.456,203.218 C 357.36,207.693 348.748,223.562 353.225,238.661"
+   id="path53"
+   style="fill:#e9f7fe" />
+<path
+   d="M 355.02,238.287 C 359.691,252.591 375.073,260.399 389.376,255.731 C 403.68,251.061 411.489,235.678 406.819,221.375 C 402.15,207.07 386.769,199.262 372.463,203.931 C 358.159,208.599 350.353,223.982 355.02,238.287"
+   id="path55"
+   style="fill:#e9f7fe" />
+<path
+   d="M 356.817,237.913 C 361.682,251.423 376.578,258.431 390.088,253.567 C 403.598,248.701 410.604,233.806 405.739,220.296 C 400.876,206.785 385.979,199.778 372.47,204.643 C 358.961,209.509 351.953,224.403 356.817,237.913"
+   id="path57"
+   style="fill:#eaf7fe" />
+<path
+   d="M 358.615,237.539 C 363.675,250.254 378.083,256.462 390.799,251.402 C 403.514,246.345 409.722,231.934 404.663,219.219 C 399.603,206.503 385.192,200.296 372.476,205.357 C 359.762,210.413 353.555,224.822 358.615,237.539"
+   id="path59"
+   style="fill:#ebf7fe" />
+<path
+   d="M 360.412,237.165 C 365.666,249.086 379.59,254.493 391.508,249.239 C 403.431,243.985 408.836,230.063 403.583,218.142 C 398.328,206.22 384.405,200.814 372.484,206.067 C 360.564,211.321 355.159,225.244 360.412,237.165"
+   id="path61"
+   style="fill:#ecf8fe" />
+<path
+   d="M 362.21,236.792 C 367.657,247.919 381.095,252.523 392.221,247.076 C 403.349,241.627 407.952,228.189 402.504,217.062 C 397.056,205.937 383.617,201.332 372.492,206.78 C 361.366,212.227 356.76,225.665 362.21,236.792"
+   id="path63"
+   style="fill:#edf8fe" />
+<path
+   d="M 364.008,236.419 C 369.65,246.75 382.601,250.553 392.932,244.908 C 403.264,239.265 407.065,226.314 401.424,215.984 C 395.783,205.652 382.832,201.849 372.499,207.492 C 362.165,213.137 358.364,226.085 364.008,236.419"
+   id="path65"
+   style="fill:#eef9fe" />
+<path
+   d="M 365.804,236.044 C 371.639,245.583 384.107,248.584 393.644,242.745 C 403.182,236.909 406.183,224.443 400.344,214.906 C 394.509,205.368 382.045,202.367 372.505,208.204 C 362.967,214.041 359.966,226.506 365.804,236.044"
+   id="path67"
+   style="fill:#eff9fe" />
+<path
+   d="M 367.6,235.671 C 373.631,244.415 385.612,246.613 394.355,240.581 C 403.098,234.55 405.297,222.573 399.264,213.827 C 393.236,205.085 381.255,202.886 372.512,208.917 C 363.769,214.949 361.57,226.927 367.6,235.671"
+   id="path69"
+   style="fill:#f0f9fe" />
+<path
+   d="M 369.396,235.298 C 375.624,243.246 387.115,244.643 395.064,238.418 C 403.013,232.191 404.415,220.7 398.187,212.75 C 391.96,204.801 380.467,203.404 372.517,209.63 C 364.569,215.856 363.171,227.347 369.396,235.298"
+   id="path71"
+   style="fill:#f1fafe" />
+<path
+   d="M 371.194,234.925 C 377.614,242.08 388.621,242.676 395.776,236.255 C 402.932,229.835 403.527,218.828 397.108,211.673 C 390.686,204.516 379.681,203.92 372.524,210.34 C 365.369,216.763 364.771,227.768 371.194,234.925"
+   id="path73"
+   style="fill:#f3fafe" />
+<path
+   d="M 372.991,234.55 C 379.606,240.911 390.125,240.705 396.488,234.09 C 402.847,227.475 402.643,216.955 396.028,210.595 C 389.413,204.234 378.892,204.438 372.531,211.053 C 366.17,217.668 366.376,228.189 372.991,234.55"
+   id="path75"
+   style="fill:#f4fbfe" />
+<path
+   d="M 374.79,234.175 C 381.6,239.743 391.634,238.737 397.199,231.926 C 402.765,225.118 401.758,215.083 394.948,209.517 C 388.138,203.95 378.106,204.958 372.538,211.767 C 366.973,218.578 367.979,228.61 374.79,234.175"
+   id="path77"
+   style="fill:#f5fbfe" />
+<path
+   d="M 376.584,233.803 C 383.588,238.576 393.136,236.768 397.909,229.764 C 402.683,222.759 400.876,213.213 393.87,208.439 C 386.865,203.665 377.317,205.474 372.545,212.479 C 367.772,219.483 369.582,229.031 376.584,233.803"
+   id="path79"
+   style="fill:#f6fbfe" />
+<path
+   d="M 378.383,233.429 C 385.581,237.408 394.643,234.799 398.62,227.6 C 402.599,220.402 399.99,211.339 392.792,207.361 C 385.591,203.381 376.53,205.992 372.553,213.191 C 368.574,220.391 371.184,229.452 378.383,233.429"
+   id="path81"
+   style="fill:#f7fcfe" />
+<path
+   d="M 380.179,233.057 C 387.574,236.242 396.148,232.828 399.332,225.435 C 402.518,218.041 399.104,209.466 391.713,206.283 C 384.317,203.1 375.743,206.51 372.561,213.903 C 369.375,221.298 372.787,229.872 380.179,233.057"
+   id="path83"
+   style="fill:#f8fcff" />
+<path
+   d="M 381.978,232.684 C 389.565,235.073 397.654,230.86 400.044,223.27 C 402.434,215.685 398.221,207.594 390.633,205.205 C 383.045,202.815 374.957,207.029 372.566,214.616 C 370.176,222.206 374.39,230.292 381.978,232.684"
+   id="path85"
+   style="fill:#fafdff" />
+<path
+   d="M 383.774,232.31 C 391.555,233.907 399.158,228.889 400.753,221.107 C 402.35,213.325 397.335,205.724 389.552,204.128 C 381.772,202.53 374.168,207.546 372.572,215.328 C 370.977,223.11 375.993,230.713 383.774,232.31"
+   id="path87"
+   style="fill:#fbfeff" />
+<path
+   d="M 385.57,231.934 C 393.549,232.737 400.664,226.92 401.465,218.944 C 402.269,210.966 396.451,203.85 388.475,203.048 C 380.497,202.248 373.381,208.064 372.58,216.042 C 371.776,224.017 377.595,231.133 385.57,231.934"
+   id="path89"
+   style="fill:#fdfeff" />
+<polyline
+   points="208.91,279.228 214.143,272.834 217.655,274.549 214.143,285.624 209.983,286.757 208.91,279.228   "
+   id="polyline91"
+   style="fill:#404040" />
+<polyline
+   points="236.235,328.643 228.095,327.481 220.538,333.295 214.724,347.247 211.727,367.68 210.655,383.871   212.399,390.266 217.655,399.074 224.607,394.335 221.145,382.331 226.352,371.663 232.165,354.223 236.493,344.312 238.56,336.782   236.235,328.643 "
+   id="polyline93"
+   style="fill:#bfbfbf" />
+<polyline
+   points="216.178,233.593 205.131,245.219 202.515,254.813 206.586,265.277 214.143,272.834   223.443,278.647 237.397,288.53 247.28,296.67 256.581,300.739 263.557,299.576 266.465,292.6 266.465,284.46 260.909,284.665   258.325,285.624 250.188,282.135 249.023,273.996 245.536,269.927 242.628,262.37 235.652,260.045 235.652,253.65 229.84,252.487   229.26,243.766 222.283,240.859 221.119,235.627 214.724,236.209 "
+   id="polyline95"
+   style="fill:#bfbfbf" />
+<polyline
+   points="272.86,315.272 276.349,301.32 276.349,285.624 283.904,267.602 289.718,264.114 295.532,265.277   303.089,273.415 301.369,286.059 295.532,296.67 293.206,312.367 290.301,323.413 286.812,329.224 279.254,331.549 272.86,328.643   270.533,322.832 271.697,317.599 "
+   id="polyline97"
+   style="fill:#808080" />
+<path
+   d="M 146.5,253.271 C 146.5,253.271 142.057,278.067 143.8,279.228 C 145.545,280.391 140.221,284.316 140.221,284.316 L 131.592,281.554 L 126.941,278.647 L 123.453,273.415 L 122.289,269.347 L 117.64,271.672 L 128.685,287.368 L 135.081,290.856 L 140.313,291.438 L 142.638,292.6 L 150.194,300.157 L 146.126,306.553 L 150.194,312.949 L 155.426,315.273 L 165.309,313.529 L 172.285,307.135 L 174.405,298.269 L 162.402,303.064 L 157.753,304.809 L 155.426,303.064 L 153.101,293.763 L 146.705,287.949 L 151.356,283.301 L 150.775,276.905 L 147.287,267.604 L 149.612,258.301 L 147.287,255.977"
+   id="path99"
+   style="fill:#ed1c24" />
+<path
+   d="M 150.485,259.754 L 182.459,237.37 C 182.459,237.37 201.355,228.941 204.55,230.685 C 207.747,232.429 215.596,231.557 216.177,233.592 C 216.758,235.626 205.131,245.218 205.131,245.218 C 205.131,245.218 200.482,261.497 204.842,263.822 C 209.202,266.147 201.354,271.09 201.354,271.09 L 207.747,281.554 L 212.69,286.494 L 231.291,294.343 L 230.911,321.988 L 231.291,325.448 C 231.291,325.448 218.784,328.004 214.866,340.823 C 214.866,340.823 202.514,344.922 197.865,338.236 C 193.214,331.549 196.702,338.528 196.702,338.528 C 196.702,338.528 199.027,323.993 202.514,323.121 C 202.514,323.121 193.213,285.916 187.69,286.206 C 187.69,286.206 161.529,305.1 157.752,304.809 L 149.032,287.949 L 152.229,281.264 L 147.869,262.952 L 150.485,259.754"
+   id="path101"
+   style="fill:#9b6f41" />
+<polyline
+   points="40.611,127.787 46.134,130.403 44.68,136.798 46.423,145.228 48.75,153.657 53.69,161.215   65.318,173.423 74.911,178.073 83.631,180.109 95.839,198.712 92.932,202.781 88.572,206.27 83.631,207.433 75.491,205.689   62.12,196.968 49.04,184.76 35.669,168.772 33.925,165.576 27.821,165.284 18.81,157.145 10.09,155.983 4.566,154.529 1.95,151.041   6.893,149.588 10.09,148.424 7.183,145.228 5.232,140.607 6.602,138.251 12.415,140.287 13.869,141.448 9.217,130.984   10.381,128.95 15.613,128.659 17.066,126.915 17.647,123.427 22.298,123.718 34.533,138.514 38.575,134.474 40.611,127.787 "
+   id="polyline103"
+   style="fill:#9b6f41" />
+<g
+   id="g105">
+	<defs
+   id="defs107">
+		<polyline
+   id="XMLID_1_"
+   points="21.426,123.718 36.625,137.119 37.414,133.019 39.738,128.659 42.555,129.095 40.03,136.798     40.611,137.671 42.063,141.448 44.39,147.263 46.741,154.907 43.807,155.983 36.25,163.54 28.693,164.121 21.135,159.18     12.997,154.82 7.474,154.82 2.822,152.786 4.276,150.17 7.765,148.424 6.31,146.1 4.857,142.903 4.857,139.415 11.252,139.996     12.706,139.415 9.217,130.984 10.813,129.793 15.613,130.112 17.357,130.984 16.774,124.879 20.262,123.718 21.426,123.718   " />
+	</defs>
+	<clipPath
+   id="XMLID_3_">
+		<use
+   xlink:href="#XMLID_1_"
+   id="use111"
+   x="0"
+   y="0"
+   width="429.49899"
+   height="448.25601" />
+	</clipPath>
+</g>
+<polyline
+   points="236.816,146.681 252.221,148.716 284.777,152.786 298.729,149.296 311.229,151.041   324.018,154.529 328.959,154.239 330.413,157.727 326.344,161.215 321.402,161.505 328.378,164.412 327.797,169.936   323.146,169.936 314.135,164.121 308.613,166.447 310.646,171.969 309.194,178.364 306.578,179.237 301.927,174.295   295.822,173.423 289.718,170.807 273.732,170.225 258.907,171.68 247.571,171.969 237.688,170.516 238.56,156.564 236.816,146.681   "
+   id="polyline113"
+   style="fill:#9b6f41" />
+<path
+   d="M 83.048,174.514 C 83.048,174.514 87.486,168.563 92.595,160.383 C 97.701,152.202 103.479,141.792 106.157,132.875 L 122.289,128.079 L 129.266,131.567 L 131.01,126.335 L 137.114,122.629 C 137.114,122.629 138.709,130.29 143.432,134.584 C 148.153,138.876 156.001,139.804 168.506,126.335 L 173.301,132.004 L 183.112,128.515 L 185.945,129.823 C 185.945,129.823 195.26,134.489 205.515,138.316 C 215.772,142.141 228.978,146.552 232.745,143.193 C 232.745,143.193 236.221,148.374 238.133,157.215 C 240.05,166.056 238.392,177.131 224.108,186.069 C 224.108,186.069 222.399,183.78 219.495,181.763 C 216.593,179.746 212.493,178.003 207.715,179.093 C 202.934,180.183 202.289,180.074 202.837,179.692 C 203.387,179.311 205.13,178.657 205.13,178.657 C 205.13,178.657 205.151,191.57 206.399,204.494 C 207.644,217.42 213.021,234.424 217.921,234.467 C 217.921,234.467 212.475,229.16 203.387,230.979 C 181.167,235.426 167.358,248.377 151.066,258.012 L 149.468,254.233 L 147.288,254.815 L 117.639,269.929 L
  129.847,296.089 L 121.707,296.672 L 113.568,297.253 C 113.568,297.253 108.168,294.585 103.36,289.945 C 98.553,285.305 94.338,278.693 96.71,270.799 C 96.709,270.799 100.622,264.215 105.087,252.674 C 109.55,241.132 114.564,224.637 116.767,204.817 L 113.279,204.817 L 107.32,204.381 L 101.361,203.944 C 101.361,203.944 95.904,198.57 90.884,192.206 C 85.866,185.84 81.288,178.482 83.048,174.514"
+   id="path115"
+   style="fill:#ed1c24" />
+<path
+   d="M 148.941,163.28 C 148.941,163.28 174.61,164.121 178.97,160.924 C 183.331,157.727 179.843,160.924 179.843,160.924 L 185.947,180.69 L 176.938,198.713 L 175.483,222.547 L 155.137,228.361 L 155.137,215.572 L 162.113,183.016 L 162.113,181.563 L 146.706,185.049 L 147.578,176.33 L 148.16,162.959"
+   id="path117"
+   style="fill:#fff200" />
+<path
+   d="M 144.962,23.145 L 161.531,23.145 L 171.994,24.889 L 186.819,43.202 L 192.051,56.283 L 192.542,73.636 L 195.539,86.803 L 193.577,103.371 L 183.125,117.237 L 173.739,124.3 L 167.778,124.562 L 169.87,127.701 L 164.801,131.93 L 152.081,135.722 L 142.346,135.636 L 138.478,131.189 L 140.166,119.503 L 134.498,113.835 L 127.521,101.627 L 121.417,99.883 C 121.417,99.883 102.232,92.035 124.033,71.106 C 145.833,50.178 142.345,26.633 142.345,26.633"
+   id="path119"
+   style="fill:#9b6f41" />
+<path
+   d="M 199.17,1.43 C 200.914,2.478 202.31,1.083 204.053,2.478 C 206.146,5.966 211.378,8.756 209.983,13.988 C 210.679,15.383 212.424,16.78 212.424,18.524 C 210.332,23.407 210.332,29.336 205.797,33.173 C 201.959,37.36 196.727,37.709 191.494,36.661 C 190.45,38.056 189.404,39.8 190.45,41.544 C 194.635,45.032 192.194,51.312 193.937,55.846 C 188.356,61.078 196.03,68.054 192.541,73.636 C 198.471,82.705 198.82,96.308 193.587,105.727 C 190.449,109.562 187.657,114.794 183.123,117.237 C 182.773,120.376 179.285,123.515 176.496,125.608 C 174.403,125.957 172.658,127.003 170.914,127.702 C 174.052,126.656 171.96,132.236 175.796,130.841 C 178.588,127.004 183.472,127.004 187.657,127.702 C 189.749,133.632 182.076,128.4 179.285,130.841 C 174.053,132.585 174.752,138.166 172.309,142.004 C 168.474,146.887 163.241,151.77 156.962,150.375 C 156.265,150.026 156.265,149.677 156.265,148.98 C 158.009,146.887 161.147,148.282 163.241,146.887 C 168.124,143.748 172.658,138.516 171.961,132.237 L 168.82,128.7
 48 L 169.868,127.703 C 167.427,127.004 162.892,128.052 162.543,124.564 C 164.287,122.471 166.031,124.564 167.776,124.564 C 173.357,124.564 178.588,122.121 181.028,116.89 C 181.379,116.89 182.076,116.89 182.425,117.239 C 186.26,110.612 192.889,104.332 193.935,95.961 C 195.68,88.288 193.586,80.963 191.145,74.683 L 191.492,74.336 C 188.355,71.544 192.54,63.871 188.355,60.731 C 189.052,58.64 186.959,57.941 186.61,56.197 C 181.728,54.802 182.772,48.872 176.843,49.57 C 173.704,49.919 169.867,49.57 167.426,47.826 C 165.331,45.384 165.331,41.896 165.681,39.454 C 162.193,35.268 165.331,24.455 156.264,26.199 C 159.054,27.943 159.054,31.781 161.496,33.873 C 162.194,39.454 167.775,46.778 161.146,50.615 C 157.31,51.663 154.519,54.103 151.378,56.197 C 145.101,54.104 146.845,62.824 141.264,62.127 C 136.729,66.312 143.705,72.591 137.426,76.427 C 138.125,78.521 137.078,80.963 134.637,82.008 C 133.241,83.056 130.8,82.008 129.753,83.404 C 129.056,81.313 127.312,79.219 125.567,77.824 C 121.729,
 78.172 117.196,79.915 116.497,84.102 C 115.453,88.636 116.15,93.52 119.638,96.659 C 121.729,99.1 124.521,99.45 127.661,99.45 C 128.706,100.845 126.962,102.241 125.568,102.241 C 119.986,101.892 115.801,97.356 113.709,92.473 C 105.337,90.032 106.384,80.265 101.501,74.683 C 101.501,70.498 96.966,67.359 99.757,62.824 C 100.802,61.429 101.849,59.336 100.454,57.941 C 97.664,57.941 95.57,53.754 92.781,56.546 C 88.594,57.941 85.106,61.429 80.573,60.034 C 75.341,56.546 67.668,52.709 67.319,45.383 C 68.713,40.849 65.923,34.919 71.504,31.78 C 71.853,29.337 73.249,26.897 75.69,25.502 C 78.83,25.502 80.225,22.014 81.969,19.921 C 89.294,20.618 96.618,17.479 100.803,25.502 C 102.547,28.292 102.547,31.78 103.246,34.919 C 104.641,35.966 106.734,36.314 108.129,35.966 C 113.011,32.825 113.71,27.593 119.291,26.198 C 125.22,26.896 128.361,19.571 134.639,22.361 C 139.172,19.222 145.103,21.664 149.987,20.27 C 152.778,20.618 154.869,24.804 158.009,22.71 C 158.707,19.92 161.497,19.571 163.939,19.222
  C 168.474,21.315 173.357,19.222 177.891,22.361 C 179.635,19.222 174.053,15.385 177.891,11.897 C 182.077,10.153 178.938,2.83 185.217,3.875 C 187.31,-1.706 194.982,0.387 199.169,0.387 L 199.169,1.43"
+   id="path121" />
+<path
+   d="M 189.055,28.289 C 190.102,30.383 189.055,32.476 188.358,34.567 C 185.566,32.823 186.962,27.94 182.775,27.591 C 181.731,26.894 181.381,25.499 180.335,24.801 C 182.428,20.615 187.659,25.15 189.055,28.289"
+   id="path123"
+   style="fill:#00adef" />
+<path
+   d="M 106.736,39.799 C 107.085,43.287 102.549,43.287 102.549,46.079 C 101.852,48.519 103.248,52.356 99.76,53.751 C 98.364,54.101 97.667,53.404 97.317,52.007 C 95.923,46.079 103.249,45.031 101.853,39.102 C 103.596,39.452 104.643,40.148 106.736,39.799"
+   id="path125"
+   style="fill:#00adef" />
+<path
+   d="M 184.172,65.264 C 181.031,68.752 176.498,62.125 172.66,66.31 L 170.916,64.565 C 172.311,63.17 173.707,62.472 175.798,62.125 C 178.59,62.472 183.125,62.472 184.172,65.264"
+   id="path127" />
+<path
+   d="M 161.846,64.565 C 162.545,68.053 158.358,65.961 156.964,67.008 C 154.173,68.403 152.081,69.798 149.291,70.496 C 149.291,66.309 154.87,65.264 157.662,63.17 C 159.057,63.869 160.452,63.17 161.846,64.565"
+   id="path129" />
+<path
+   d="M 185.218,74.681 C 183.822,76.077 184.868,78.867 182.427,79.216 C 181.03,78.867 179.985,78.169 178.939,77.123 C 178.939,76.424 179.287,75.378 178.589,75.029 C 177.194,75.029 175.797,77.821 174.754,75.029 C 175.798,73.285 177.542,71.89 179.287,71.193 C 182.079,71.193 184.172,72.589 185.218,74.681"
+   id="path131" />
+<path
+   d="M 165.685,76.774 C 165.685,78.169 164.29,79.216 163.244,80.611 C 160.803,80.961 158.359,78.867 158.012,76.774 L 153.826,79.913 C 152.082,79.216 153.826,77.822 153.826,76.774 C 156.614,73.984 163.591,70.496 165.685,76.774"
+   id="path133" />
+<path
+   d="M 126.269,91.424 C 126.269,92.121 126.269,92.82 125.572,93.517 C 123.478,93.864 122.781,91.424 122.433,90.029 C 122.781,88.285 123.478,86.192 125.572,85.494 C 126.965,86.889 124.874,90.029 126.269,91.424"
+   id="path135" />
+<path
+   d="M 179.986,87.937 C 179.636,90.727 176.149,92.122 174.405,93.865 C 170.566,93.518 165.684,97.006 163.243,92.121 L 163.243,91.424 C 167.078,90.029 173.01,94.563 176.149,89.331 C 176.846,88.286 178.59,85.145 179.986,87.937"
+   id="path137" />
+<path
+   d="M 184.519,100.841 C 183.475,102.237 182.428,100.841 181.382,100.493 C 180.336,106.073 175.799,110.608 170.22,112.352 C 167.079,112.003 163.592,112.003 161.15,109.91 C 158.011,107.817 159.755,101.888 156.268,101.888 C 155.57,102.585 154.523,103.981 153.477,102.585 C 155.222,100.144 156.615,95.958 159.756,95.609 C 160.453,95.958 160.803,96.656 160.453,97.702 L 159.407,98.75 C 162.895,103.283 169.523,100.841 174.407,100.145 C 176.848,98.401 181.032,97.703 181.032,93.865 C 183.475,94.563 183.125,98.75 184.519,100.841"
+   id="path139" />
+<path
+   d="M 176.846,102.585 C 176.149,106.422 172.66,108.515 169.522,109.214 C 166.382,108.864 162.197,109.214 161.846,105.027 C 163.94,105.027 166.382,103.981 168.822,104.328 C 168.822,105.725 169.173,106.422 170.219,107.12 C 171.265,107.817 171.963,106.771 172.66,106.073 C 171.266,102.585 175.452,103.283 176.846,102.585"
+   id="path141"
+   style="fill:#ffffff" />
+<path
+   d="M 156.964,122.817 C 158.01,122.118 159.405,122.118 160.102,123.514 C 159.057,127.351 154.173,125.258 151.381,125.258 C 140.569,125.258 133.244,115.142 129.756,106.423 C 129.756,105.377 128.361,103.982 130.105,103.632 C 134.989,113.399 143.361,124.212 156.964,122.817"
+   id="path143" />
+<path
+   d="M 29.649,129.793 L 36.625,137.118 C 35.23,134.327 36.625,131.188 38.021,128.745 C 39.416,126.305 42.555,126.305 44.648,127.001 C 52.321,131.188 42.206,138.513 48.485,142.698 C 48.833,152.116 53.019,160.138 59.995,165.719 C 60.344,166.417 62.088,167.114 61.041,167.812 L 59.646,169.207 C 54.414,166.068 51.274,158.743 46.74,154.906 C 48.832,151.767 46.74,146.884 44.996,143.745 C 46.042,140.953 41.856,136.42 44.647,132.932 C 43.95,131.537 43.95,129.793 42.554,129.095 C 39.415,128.399 39.764,131.886 39.066,133.631 C 39.764,139.211 33.485,141.653 34.532,147.583 C 33.486,148.978 32.09,147.931 31.741,146.536 C 32.09,143.745 32.438,140.607 34.532,138.514 C 30.345,133.282 25.114,129.793 20.928,124.561 L 17.79,124.561 C 16.744,129.444 22.325,133.281 25.115,137.466 C 24.766,138.164 23.72,139.908 23.022,138.514 C 18.138,135.375 17.093,129.095 10.814,129.793 C 10.465,135.025 14.999,137.815 18.138,142.001 C 17.441,143.046 19.882,144.791 17.79,145.838 C 13.953,143.744 10.117,138.513 5
 .233,140.606 C 5.582,146.884 13.605,144.791 15.349,150.023 C 11.512,152.466 6.977,149.674 3.141,151.767 C 8.722,156.303 18.488,152.466 22.325,159.442 C 25.464,162.93 29.65,163.627 34.184,163.627 C 34.533,164.674 35.928,164.674 35.579,165.72 C 32.439,168.859 28.602,165.72 25.463,165.023 C 23.022,162.581 19.882,161.882 18.138,158.744 C 11.86,157 2.441,158.395 0,150.722 C 1.396,148.28 4.186,148.629 6.279,147.583 C 3.488,145.49 1.047,142.351 3.14,139.21 C 4.535,136.769 7.673,137.466 9.767,137.815 C 10.464,134.676 5.581,132.234 7.673,128.745 C 9.767,124.91 16.743,130.142 15.348,123.514 C 16.045,120.724 19.882,122.118 21.975,122.468 C 25.463,123.863 26.161,128.399 29.649,129.793"
+   id="path145" />
+<path
+   d="M 141.617,131.538 C 144.756,134.328 148.593,135.026 152.081,135.722 C 156.614,133.978 163.591,134.677 164.289,128.746 L 166.381,128.746 C 167.777,130.491 166.381,132.933 164.289,133.631 C 163.59,133.631 162.545,133.978 161.846,133.282 C 161.149,137.816 155.918,137.467 152.779,138.514 C 147.547,137.466 141.268,136.769 138.478,131.188 C 137.43,128.745 137.082,124.91 138.478,122.468 C 142.662,123.514 138.827,128.746 141.617,131.538"
+   id="path147" />
+<path
+   d="M 132.897,128.746 C 131.501,132.235 131.851,137.467 133.245,141.304 C 137.779,148.28 145.453,147.583 152.081,150.024 C 152.43,153.513 147.546,151.768 145.454,151.768 C 139.524,150.373 133.595,146.537 130.804,141.653 C 128.363,138.514 131.153,132.235 125.572,131.189 C 118.945,128.399 112.666,131.887 107.781,136.072 C 106.736,138.515 104.992,141.304 103.248,143.397 C 100.108,140.607 105.34,137.119 106.037,133.979 C 112.665,128.051 121.386,125.957 129.757,130.144 C 131.153,128.051 131.851,124.214 134.989,123.516 C 139.174,125.607 132.897,126.305 132.897,128.746"
+   id="path149" />
+<path
+   d="M 231.607,142.351 C 235.447,142.002 236.838,147.234 240.677,144.095 C 243.815,145.839 249.047,143.745 251.142,147.583 C 258.817,147.931 267.188,149.328 274.861,151.071 C 283.928,151.071 293,151.767 300.674,147.583 C 305.906,146.885 309.044,150.373 313.928,150.373 C 316.37,152.816 321.253,150.373 323.695,152.816 C 325.091,151.419 327.53,152.118 329.274,152.467 C 331.718,153.862 331.718,156.304 331.017,158.395 L 327.88,161.536 C 329.973,162.932 331.718,165.024 331.017,167.465 C 328.927,173.745 320.904,168.512 318.81,175.139 C 316.371,175.835 314.973,174.092 312.882,173.395 C 311.486,175.835 312.533,180.372 308.695,181.068 C 303.464,180.022 299.975,172.348 292.999,174.791 C 288.116,170.257 280.44,171.302 274.86,170.604 C 268.231,170.953 260.56,173.046 253.93,171.651 L 256.373,169.907 C 266.837,167.814 279.394,167.465 289.51,168.859 C 293.697,175.488 304.16,168.859 306.6,177.929 C 308.695,178.976 309.393,176.883 309.741,175.139 C 311.137,170.953 303.464,169.208 305.906,165
 .721 C 310.788,167.116 315.321,159.443 319.16,166.419 C 319.509,165.721 320.205,166.07 320.903,165.721 C 321.253,167.814 323.345,168.86 325.437,168.513 C 326.485,168.86 327.181,167.815 327.879,167.117 C 328.577,165.722 327.528,164.676 326.484,164.327 C 322.296,162.234 316.369,163.629 314.625,158.049 C 318.112,156.653 321.948,161.537 326.484,159.095 C 327.18,158.746 327.879,158.049 328.577,157.35 C 328.577,156.305 328.577,154.56 326.834,154.56 C 316.717,158.048 309.393,147.932 299.624,150.723 C 284.627,159.444 266.837,151.073 251.49,150.025 L 250.442,147.932 C 246.257,150.374 242.421,144.793 237.886,147.932 C 240.675,154.908 239.63,162.582 238.932,169.908 C 242.769,171.652 247.652,168.86 251.839,170.954 C 251.839,174.791 246.607,172.349 244.862,173.047 L 238.584,172 C 237.19,176.185 235.097,180.721 230.912,182.464 C 228.12,179.672 234.051,178.277 234.399,175.488 C 237.19,166.07 239.632,152.467 232.307,144.443 C 216.261,146.885 201.959,139.909 189.404,131.189 C 191.148,129.445
  193.239,130.84 194.983,131.538 C 205.448,138.863 218.006,143.047 231.607,142.351"
+   id="path151" />
+<path
+   d="M 101.677,147.387 C 98.888,157.851 92.609,167.268 83.889,174.943 C 83.191,174.943 82.842,174.245 82.144,173.548 L 82.144,172.5 C 92.956,165.873 95.05,155.06 100.282,145.643 L 101.677,147.387"
+   id="path153" />
+<path
+   d="M 345.322,156.651 C 342.88,170.604 341.833,185.254 334.857,197.113 C 332.762,198.161 329.973,199.207 327.53,198.161 C 325.092,196.764 323.346,193.974 322.298,191.881 C 321.95,198.508 322.998,207.229 321.254,213.159 C 330.323,200.601 343.227,192.929 356.832,189.44 C 357.53,189.788 357.879,190.486 357.879,191.532 C 355.785,193.625 352.648,192.579 350.553,193.974 C 348.459,195.02 346.02,195.718 343.926,197.113 C 345.322,197.462 347.066,198.161 346.367,199.905 C 343.926,203.045 344.275,206.881 343.226,210.717 C 348.458,213.509 354.39,215.253 359.972,217.694 C 360.319,219.09 359.274,219.438 358.576,220.136 L 364.155,220.835 L 367.296,239.67 C 366.6,240.366 364.155,239.32 364.855,241.065 C 365.899,242.111 367.644,239.321 368.344,241.764 C 367.296,244.204 364.506,245.949 362.762,248.041 L 352.648,257.459 L 350.553,255.018 C 348.459,256.064 349.508,258.157 348.112,259.205 C 342.532,257.46 336.601,256.413 331.719,252.228 C 329.974,256.762 327.183,261.994 322.298,264.087 L 320.9
 04,263.039 C 325.438,260.25 327.182,255.018 330.671,251.529 C 327.183,247.342 328.579,240.716 325.785,236.181 C 326.486,233.39 325.785,229.902 322.648,229.902 C 321.253,229.554 319.161,230.6 318.462,228.507 C 318.113,227.81 318.81,227.461 319.16,227.111 C 328.927,229.901 334.157,219.089 339.737,213.159 C 340.089,207.577 342.181,202.695 344.274,197.812 L 343.924,197.113 C 340.088,199.207 336.599,201.3 333.461,204.438 C 334.505,206.532 340.786,206.183 337.992,209.67 C 335.554,210.02 333.809,207.228 331.717,206.182 C 314.276,221.18 309.043,246.643 316.717,267.572 C 319.858,268.618 324.392,265.479 326.834,268.269 C 325.783,275.943 334.855,280.477 335.9,287.802 C 341.48,289.198 346.712,289.896 352.645,288.85 C 355.433,284.663 360.317,282.221 363.109,278.037 C 366.597,280.826 359.97,282.222 359.272,285.014 L 354.738,290.594 C 363.109,294.431 371.829,300.71 381.246,294.781 C 387.526,295.478 390.664,290.943 394.153,286.409 C 395.198,282.922 398.339,279.432 401.129,277.689 L 402.175,
 278.387 C 395.897,282.921 395.546,290.594 390.664,296.175 C 394.852,301.059 399.386,297.222 403.223,294.78 C 410.548,289.198 416.475,282.571 420.663,275.246 C 417.523,274.549 417.872,267.572 413.687,271.41 C 410.894,273.85 407.407,277.688 403.919,276.293 C 403.57,275.595 404.266,275.595 404.616,275.246 C 397.989,274.897 390.312,271.41 383.687,272.456 C 384.385,264.781 387.525,256.76 387.525,248.039 C 388.569,246.295 391.012,246.295 391.362,244.202 L 389.268,243.156 L 401.827,231.993 C 401.128,227.46 399.033,222.576 400.43,218.041 C 401.827,218.39 401.478,220.134 402.174,220.833 C 402.872,225.017 403.919,229.553 404.266,233.737 C 408.803,235.831 416.474,234.785 417.523,241.761 C 417.523,242.807 417.174,244.201 417.872,244.9 C 418.569,241.062 419.962,237.923 422.756,234.785 C 423.451,234.087 424.5,234.785 424.847,235.831 C 424.847,237.924 422.408,238.97 421.36,240.364 C 420.315,247.689 418.57,255.015 417.873,262.689 C 416.476,263.735 415.432,265.479 415.781,267.572 C 419.268,2
 66.875 418.919,271.41 422.058,271.41 C 428.684,258.852 427.29,243.852 425.195,230.249 C 426.244,229.9 426.592,231.297 427.291,231.645 C 433.221,253.271 426.939,274.898 411.594,290.247 C 396.597,304.549 374.271,311.176 354.74,304.549 C 337.299,301.756 320.554,285.363 314.627,268.969 C 308.346,255.017 310.09,235.483 316.371,221.879 C 314.627,220.834 312.184,221.181 310.09,220.135 C 299.626,214.553 290.904,204.089 280.791,197.113 C 280.093,195.718 281.838,196.416 282.535,195.718 C 292.302,203.044 300.325,212.809 311.139,218.041 C 316.022,219.436 317.417,214.902 318.463,211.763 C 319.161,204.088 320.555,195.368 317.066,188.043 L 318.811,186.298 C 320.207,188.043 320.905,185.253 322.298,185.601 C 324.042,189.09 324.741,193.973 329.275,195.717 C 333.114,196.762 335.207,192.229 335.903,189.786 C 339.739,178.974 340.789,166.766 343.227,155.254 C 344.275,154.907 344.275,156.304 345.322,156.651"
+   id="path155" />
+<path
+   d="M 181.381,159.093 C 183.125,165.72 184.868,173.045 186.612,178.975 C 186.262,179.672 184.868,180.021 184.518,179.323 C 181.03,174.44 181.03,168.511 179.287,162.93 C 169.87,162.93 158.358,168.161 148.941,163.279 C 149.638,159.442 153.126,163.626 155.569,162.93 C 163.94,162.232 173.01,161.186 181.381,159.093"
+   id="path157" />
+<path
+   d="M 207.89,177.232 L 207.89,197.113 C 207.192,197.812 206.844,198.857 205.797,198.508 L 204.402,197.113 C 204.75,186.3 206.146,174.092 201.612,164.675 C 201.959,163.977 203.007,163.28 203.702,164.326 C 206.844,167.813 206.844,172.696 207.89,177.232"
+   id="path159" />
+<path
+   d="M 348.111,170.953 C 347.415,177.232 350.552,182.464 351.946,188.044 C 351.599,189.091 349.854,189.091 349.508,188.393 C 346.02,181.417 342.88,171.65 347.415,163.627 C 351.946,164.325 347.065,168.162 348.111,170.953"
+   id="path161" />
+<path
+   d="M 148.593,166.418 C 149.291,171.65 148.593,177.231 147.547,182.463 C 153.127,183.509 158.359,177.579 163.941,181.067 C 160.103,192.23 155.919,203.739 155.919,216.647 C 155.57,217.345 154.871,217.345 153.826,217.345 L 153.127,216.647 C 153.826,204.788 156.268,193.625 160.453,183.51 C 155.57,182.811 150.686,185.952 145.804,185.952 C 142.663,180.021 148.594,173.394 145.804,167.115 C 146.15,166.418 147.546,164.325 148.593,166.418"
+   id="path163" />
+<path
+   d="M 318.463,171.65 C 315.322,172.347 314.277,169.557 314.277,167.115 C 315.672,168.162 318.811,168.859 318.463,171.65"
+   id="path165"
+   style="fill:#9b6f41" />
+<path
+   d="M 58.6,190.835 C 58.6,191.881 58.251,192.579 57.554,192.928 L 56.508,192.928 C 47.787,185.602 41.858,177.232 34.533,168.511 C 35.579,166.418 36.974,168.511 38.021,168.858 C 43.951,176.534 50.578,184.905 58.6,190.835"
+   id="path167" />
+<path
+   d="M 115.805,168.859 C 113.712,176.883 116.154,186.998 117.201,194.672 C 118.246,214.902 114.061,234.436 107.782,252.573 C 105.691,262.341 92.436,269.666 98.715,280.826 C 101.156,285.71 106.737,288.501 109.527,291.989 C 108.483,294.43 106.039,292.339 104.994,291.989 C 99.062,286.408 92.436,280.477 94.878,271.757 C 95.575,268.618 99.413,267.224 98.715,263.736 C 111.27,248.04 111.621,226.413 115.109,206.532 C 110.226,207.577 103.597,206.881 100.806,202.345 C 103.597,201.648 107.086,203.393 110.225,204.089 C 118.945,203.74 113.014,192.928 113.713,187.696 C 112.317,181.417 110.922,174.091 115.109,168.859 L 115.805,168.859"
+   id="path169" />
+<path
+   d="M 69.414,174.79 L 81.971,178.976 C 82.32,178.278 82.32,177.58 83.017,177.232 C 86.156,180.371 86.852,185.254 89.296,188.742 C 92.784,192.579 96.969,197.113 99.76,200.95 C 98.714,203.044 97.667,200.252 96.272,200.601 C 94.876,205.137 90.341,207.926 85.808,208.972 C 76.041,207.228 65.926,203.74 60.693,194.672 C 64.181,194.672 66.971,199.206 70.111,200.95 C 76.738,203.044 84.761,210.02 91.388,203.044 C 92.435,201.996 93.481,199.904 95.225,199.904 C 90.34,193.974 84.761,188.044 82.667,181.067 C 81.272,182.811 79.528,181.067 77.784,181.067 C 72.901,177.579 64.529,177.579 63.134,170.603 C 65.576,170.604 67.321,172.696 69.414,174.79"
+   id="path171" />
+<path
+   d="M 222.888,183.161 C 220.099,185.603 218.703,180.371 215.912,180.371 C 213.471,180.371 210.679,179.323 208.589,179.672 C 209.984,174.79 215.565,178.277 218.356,178.277 C 220.099,179.323 222.888,180.371 222.888,183.161"
+   id="path173" />
+<path
+   d="M 186.263,183.51 C 178.939,191.532 178.939,202.345 176.498,212.461 C 176.846,214.205 177.542,217.346 176.149,219.089 C 175.103,220.135 174.055,219.089 173.707,218.042 C 174.405,205.137 175.798,192.58 183.475,182.464 C 184.519,182.464 185.566,182.464 186.263,183.51"
+   id="path175" />
+<path
+   d="M 229.168,183.859 C 229.168,185.952 226.726,186.299 224.982,186.649 C 223.935,187.348 223.587,185.603 222.541,185.603 C 223.588,183.859 227.423,181.417 229.168,183.859"
+   id="path177" />
+<path
+   d="M 423.453,222.228 C 423.104,223.274 422.409,222.577 421.709,222.924 C 418.571,218.041 416.827,212.112 411.595,208.625 C 409.501,211.764 406.364,214.205 402.875,215.948 L 401.83,214.553 C 401.83,216.297 399.735,216.297 398.689,217.345 C 392.76,211.763 385.435,209.67 379.156,204.787 C 372.875,208.624 369.738,215.6 362.761,217.692 L 362.41,217.344 C 367.642,213.507 371.83,208.624 376.014,204.088 C 371.829,201.298 369.386,196.067 365.202,192.23 C 365.55,191.184 367.294,191.184 367.641,191.88 L 377.41,202.693 C 380.899,203.392 379.848,199.205 382.294,198.856 L 389.27,193.624 C 381.945,189.787 372.527,190.834 364.504,189.439 L 365.55,187.695 C 390.315,186.299 413.34,199.904 423.453,222.228"
+   id="path179" />
+<path
+   d="M 207.89,202.694 C 209.983,212.46 211.379,222.228 216.262,230.599 L 214.168,232.343 C 217.309,234.436 221.843,232.692 223.238,237.575 C 222.887,241.062 226.725,240.364 228.47,241.762 C 232.307,244.551 230.563,250.829 235.794,252.226 C 241.026,254.317 235.096,260.597 241.724,260.597 C 247.654,262.69 242.422,270.014 249.047,271.41 C 250.79,273.154 250.79,275.595 250.443,278.037 C 252.885,281.176 255.328,283.619 258.816,284.315 C 259.163,282.92 260.211,281.874 261.605,281.874 C 264.048,281.176 266.139,282.571 267.884,283.619 C 269.975,274.897 275.906,265.13 284.627,260.597 C 288.115,260.597 290.208,260.248 293.696,260.946 C 297.183,256.062 303.111,252.574 303.463,246.296 C 301.02,242.809 296.835,241.413 293.348,240.365 C 286.371,241.413 278.696,241.413 272.768,244.552 C 272.419,244.203 271.719,243.506 272.07,242.809 C 280.44,238.622 293.348,234.787 302.068,241.064 C 304.161,243.506 307.649,245.948 306.253,249.086 C 303.464,253.971 298.93,258.504 295.441,263.038 C 298.231,
 264.434 301.368,266.876 303.463,269.667 C 305.207,275.247 304.856,281.525 301.367,286.06 C 298.23,285.015 297.183,289.898 293.696,288.153 C 291.953,287.456 291.953,285.364 290.902,284.317 C 289.858,285.712 289.159,287.804 287.415,288.503 C 285.323,289.55 282.533,288.503 281.488,286.41 C 281.138,283.968 282.182,282.223 283.231,280.479 C 284.976,278.735 287.765,278.388 289.858,279.433 L 291.254,281.526 C 292.998,279.783 295.441,279.783 297.879,279.783 L 300.323,281.876 C 302.416,279.085 302.067,274.202 300.673,271.064 C 298.58,267.226 295.091,265.832 291.604,264.087 C 269.975,273.156 285.672,302.107 271.372,316.407 C 271.025,317.454 272.07,318.152 272.42,319.198 C 273.815,316.407 277.303,316.059 279.396,315.71 C 278.697,314.314 279.047,312.571 279.047,311.177 C 280.441,309.082 282.534,309.082 284.628,308.735 C 286.023,308.735 287.767,309.432 287.767,311.177 C 288.117,313.616 287.416,315.71 285.325,317.454 L 281.49,317.454 C 280.791,319.547 280.791,320.592 281.49,322.686 C 282.
 184,318.848 286.722,319.546 289.161,319.198 C 291.256,318.502 291.605,315.012 291.955,312.92 L 292.302,300.362 C 295.443,298.618 291.955,296.525 293.698,294.432 C 295.093,292.34 295.442,290.247 297.881,288.502 L 300.325,290.247 C 305.907,282.572 310.789,272.107 306.952,262.69 C 304.162,260.946 303.113,267.224 301.369,262.69 C 302.766,259.549 306.254,259.899 308.346,259.899 C 314.278,266.178 309.045,274.201 309.742,281.525 C 304.51,287.803 301.72,295.129 295.79,301.059 C 295.79,312.57 294.394,327.567 282.535,332.103 C 275.558,334.197 272.071,327.567 265.794,330.01 C 261.956,327.22 256.375,325.476 255.677,320.243 C 251.492,319.545 244.865,320.939 243.12,315.011 C 243.12,312.22 244.167,309.779 246.956,309.08 C 247.304,309.08 247.304,308.732 247.654,308.732 C 245.56,304.894 240.677,302.802 237.19,300.71 C 226.028,300.011 235.447,311.87 232.655,318.15 C 232.655,319.894 232.655,321.637 230.912,321.987 C 230.215,321.987 229.864,321.289 229.168,320.59 C 230.215,312.918 229.168,302.8
 03 228.471,295.128 C 222.541,291.989 216.959,287.803 209.984,286.757 C 207.192,283.619 207.192,280.13 203.008,278.037 C 200.915,275.943 200.915,273.154 200.216,270.362 C 202.659,270.362 202.659,267.922 204.403,266.875 C 204.054,263.037 200.565,261.293 200.914,257.108 C 200.914,249.434 206.146,241.761 212.424,238.273 C 213.122,238.969 213.47,239.668 213.47,240.364 C 206.843,244.202 203.356,251.527 204.402,259.202 C 205.797,265.13 212.773,269.316 216.958,272.456 C 216.61,275.595 211.726,274.897 211.378,278.387 C 210.678,280.13 210.332,282.921 211.726,284.316 L 212.772,284.316 L 217.654,274.549 C 222.886,274.549 226.724,281.525 232.306,282.921 C 236.143,285.014 241.026,288.501 242.77,292.686 C 240.676,292.339 238.933,294.431 237.887,296.175 C 239.282,300.71 245.21,301.059 248.351,304.895 C 250.095,306.988 253.583,309.43 256.022,306.638 C 258.118,305.593 257.071,303.5 258.467,302.453 C 252.534,301.755 247.302,297.918 243.118,294.083 C 249.746,292.686 255.675,302.104 261.954,296.
 873 C 267.884,293.733 260.907,289.548 264.394,286.059 C 263.349,285.014 262.302,283.62 260.907,284.664 L 260.21,284.664 C 260.21,286.757 260.907,289.198 258.467,290.942 C 257.419,291.291 256.723,290.246 256.022,289.896 C 260.56,285.709 252.885,286.408 252.535,283.619 C 244.166,283.619 250.443,265.13 241.723,274.549 C 241.026,274.549 240.676,275.595 239.978,275.246 L 238.933,273.85 C 241.375,271.41 243.119,268.269 242.07,265.129 C 241.026,261.99 237.887,262.34 235.446,261.642 C 234.05,263.386 233.351,265.829 230.562,265.479 C 228.469,261.642 237.189,259.898 235.095,255.364 C 233.003,252.573 228.817,251.876 226.027,253.27 C 222.54,253.969 222.19,261.292 218.702,257.457 C 220.446,253.27 224.981,250.829 228.817,249.435 C 230.213,247.341 228.119,245.597 227.074,244.203 C 223.237,239.669 219.052,249.784 216.958,244.203 C 219.399,242.808 221.842,241.063 220.795,237.925 C 219.399,234.786 215.911,236.877 213.47,236.53 C 213.47,235.482 212.424,232.692 214.516,231.994 C 208.934,224.669
  207.54,214.554 205.447,205.137 L 206.145,199.905 C 207.89,199.904 207.192,201.996 207.89,202.694"
+   id="path181" />
+<path
+   d="M 302.767,224.321 C 290.905,237.226 268.583,234.087 253.585,230.249 L 251.842,228.506 C 253.237,225.366 254.28,229.553 256.024,229.203 C 270.329,231.993 287.768,233.737 299.627,224.321 C 296.838,215.251 288.467,207.577 279.747,204.089 C 281.491,201.996 284.979,204.089 287.418,205.137 C 295.442,209.321 298.582,217.693 302.767,224.321"
+   id="path183" />
+<path
+   d="M 156.964,226.413 C 162.545,225.367 168.126,223.274 174.054,221.53 C 174.754,222.577 176.148,222.925 175.798,224.322 C 173.707,226.763 170.219,225.018 167.778,226.066 L 154.87,230.251 C 152.779,227.811 152.779,223.625 153.476,220.136 L 154.87,219.09 C 157.313,220.833 154.87,224.669 156.964,226.413"
+   id="path185" />
+<path
+   d="M 211.727,231.994 C 207.541,234.088 203.007,229.901 198.821,232.344 C 198.124,231.994 197.426,231.646 197.775,230.6 C 201.613,227.81 206.495,228.856 210.679,229.902 C 211.03,230.599 212.076,230.949 211.727,231.994"
+   id="path187" />
+<path
+   d="M 195.334,231.994 C 194.635,236.181 190.102,234.088 187.659,236.181 C 175.798,239.669 166.382,250.133 155.918,257.11 L 152.081,261.644 C 152.081,261.294 151.382,261.294 151.035,261.294 C 145.803,271.063 159.406,279.433 150.686,287.804 C 154.523,290.944 155.221,296.176 156.268,301.06 C 173.011,301.06 185.219,286.41 196.728,275.248 C 197.776,275.597 197.428,277.341 197.079,278.039 L 189.056,286.41 C 196.033,291.991 197.079,300.712 199.869,308.734 C 201.265,313.965 200.915,320.245 205.101,324.43 C 203.704,326.871 200.566,324.43 200.217,327.917 C 200.566,331.755 196.032,338.73 203.009,340.125 C 206.148,342.218 211.381,341.173 214.868,340.823 C 216.613,334.197 221.494,326.173 228.82,324.778 C 229.17,323.732 230.565,322.685 231.262,323.732 C 232.309,324.778 232.657,326.172 232.657,327.917 C 230.914,329.313 228.122,327.567 226.379,328.615 C 216.264,331.055 222.193,348.496 210.335,343.614 C 206.149,344.312 201.266,343.264 197.777,340.125 C 196.382,341.52 196.729,344.313 197.42
 9,345.707 C 200.916,349.544 206.497,350.939 211.729,349.544 C 213.125,348.496 213.125,345.357 215.914,346.405 C 216.961,348.844 213.822,351.288 213.473,354.077 C 212.776,358.614 212.776,363.496 211.729,367.681 C 209.985,368.031 208.937,366.286 208.591,365.242 C 210.335,363.846 208.938,362.102 209.288,360.358 C 205.102,359.31 201.615,358.962 197.429,359.31 C 198.474,366.287 194.289,376.402 203.01,378.146 C 205.103,377.798 208.938,379.194 208.592,375.705 C 208.592,372.914 208.939,370.822 209.987,368.729 C 210.683,368.729 211.033,369.426 211.731,369.774 C 210.683,377.449 211.383,384.774 212.428,392.796 C 218.01,392.796 212.08,398.726 217.659,399.074 C 219.754,399.423 221.148,398.725 222.545,396.982 C 224.289,394.889 220.8,392.097 223.94,390.703 C 228.475,391.052 227.427,397.33 232.312,397.68 C 233.707,399.773 237.544,400.818 239.637,402.911 C 243.82,402.215 246.614,406.749 249.052,409.19 C 250.448,412.678 251.496,417.911 249.404,421.746 C 248.706,423.143 246.961,424.188 245.915
 ,425.235 C 246.961,428.026 246.265,431.513 243.474,432.909 C 238.242,434.653 235.102,423.49 232.661,432.909 C 231.266,433.955 229.87,435.003 228.126,434.653 C 225.337,433.608 224.988,431.165 224.988,428.722 C 223.593,429.42 218.011,431.164 216.965,427.327 C 215.571,424.886 218.709,423.838 218.361,421.049 C 214.173,417.91 210.338,411.981 204.059,411.981 C 204.059,415.119 201.269,417.911 198.827,418.957 C 196.386,419.654 194.989,418.259 193.944,416.514 C 194.293,415.119 193.595,413.725 194.641,412.329 L 193.944,411.981 C 192.548,413.376 192.2,416.513 189.41,416.863 C 187.665,416.863 185.572,415.817 184.874,414.074 C 184.177,412.678 183.828,409.886 185.224,408.492 C 183.131,406.749 182.433,403.26 182.781,400.817 C 188.713,395.238 179.293,387.913 186.619,382.331 C 193.595,383.378 187.665,373.961 194.641,374.657 C 193.595,367.68 196.733,358.614 191.5,352.682 C 188.712,347.101 196.732,346.405 194.641,340.823 C 196.733,338.032 194.989,335.242 196.037,332.103 C 197.083,328.615 197.7
 81,325.127 199.873,322.335 C 196.386,310.825 196.037,297.222 187.316,288.151 C 183.13,291.989 178.944,295.477 174.41,298.267 C 176.154,300.36 174.759,303.499 174.059,305.592 C 173.014,306.987 171.967,308.732 170.224,309.079 C 167.783,306.637 173.712,303.149 170.921,300.359 C 166.386,301.754 163.595,309.079 157.666,306.986 C 149.643,302.801 154.874,290.941 145.458,287.801 C 147.202,286.406 149.295,285.012 149.993,282.57 C 149.296,274.896 144.063,264.78 149.643,257.107 C 153.83,258.851 154.527,253.619 158.016,252.572 L 176.851,238.272 C 182.78,236.178 188.362,232.69 194.64,231.295 L 195.334,231.994"
+   id="path189" />
+<path
+   d="M 386.133,244.901 C 386.481,245.947 385.436,246.296 385.083,246.994 C 380.203,243.157 373.227,243.853 369.039,239.669 C 374.62,238.274 379.851,243.157 385.435,244.552 C 385.436,244.901 385.783,245.25 386.133,244.901"
+   id="path191" />
+<path
+   d="M 140.57,243.853 C 142.662,244.901 145.105,245.597 147.546,245.947 C 148.592,246.994 147.546,248.389 146.849,249.086 C 139.174,243.157 126.618,251.528 120.688,242.109 C 123.477,240.365 125.571,243.157 128.013,243.853 L 140.57,243.853"
+   id="path193" />
+<path
+   d="M 152.779,248.04 C 152.779,248.738 151.732,249.086 151.382,249.436 C 150.686,249.785 150.338,249.086 149.638,248.739 C 149.988,248.041 148.941,246.297 150.685,246.297 C 151.382,246.295 151.732,247.341 152.779,248.04"
+   id="path195" />
+<path
+   d="M 160.452,248.738 C 160.102,249.784 158.358,250.482 157.313,249.435 C 156.614,248.738 156.267,247.341 157.661,246.644 C 158.708,246.994 160.103,247.341 160.452,248.738"
+   id="path197" />
+<path
+   d="M 216.611,248.738 C 214.517,251.528 211.379,254.317 213.47,257.805 C 213.122,262.341 224.631,264.434 217.655,267.224 C 213.122,263.736 208.589,259.203 209.983,253.62 C 210.679,251.178 214.168,246.994 216.611,248.738"
+   id="path199" />
+<path
+   d="M 148.941,255.016 C 147.197,258.155 144.405,260.946 144.405,265.13 C 144.058,271.41 148.941,280.826 140.22,284.316 C 135.337,285.363 131.151,282.921 126.964,281.525 C 123.476,278.038 123.129,273.503 120.338,270.014 L 119.292,270.363 C 120.338,277.689 125.571,286.059 133.245,289.199 L 142.314,290.247 C 145.453,294.084 150.337,296.176 149.988,301.408 C 150.685,304.549 146.849,305.943 148.592,308.733 C 151.731,313.615 158.01,313.268 163.242,311.871 C 165.333,311.524 167.077,308.036 168.821,309.779 C 168.821,313.615 164.986,313.965 162.196,315.36 C 156.266,315.709 148.941,315.36 145.453,309.081 C 144.755,305.244 139.872,305.244 137.081,302.804 C 131.151,293.735 119.641,303.152 112.315,296.176 L 110.223,294.432 C 114.059,291.991 117.199,296.874 121.732,296.176 C 123.826,295.827 126.617,296.525 128.012,294.432 C 123.826,289.549 123.826,283.271 118.594,278.735 C 117.199,275.596 116.153,268.62 110.92,272.458 C 107.779,272.108 106.385,275.248 104.991,276.645 C 104.642,278.736 1
 06.735,280.829 107.432,282.574 C 104.642,283.969 103.595,280.829 102.548,278.736 C 101.503,274.9 105.34,272.459 107.78,270.016 C 111.268,269.668 115.456,267.575 118.245,268.272 C 128.362,265.132 137.081,258.157 146.499,253.273 C 147.546,252.922 147.894,254.667 148.941,255.016"
+   id="path201" />
+<path
+   d="M 142.662,258.853 C 136.036,266.178 149.638,284.665 132.897,280.478 C 127.665,279.782 125.921,273.851 124.525,269.666 C 130.106,266.178 137.082,263.736 142.662,258.853"
+   id="path203"
+   style="fill:#fff200" />
+<path
+   d="M 361.367,270.014 C 363.46,270.363 363.111,272.456 364.155,273.851 L 362.411,275.247 C 368.344,275.596 374.62,274.55 379.85,272.457 L 381.247,274.201 C 375.318,275.944 369.737,278.038 362.761,277.34 C 360.319,272.108 356.134,266.179 351.946,260.946 L 351.946,259.203 C 356.135,261.293 358.228,266.526 361.367,270.014"
+   id="path205" />
+<path
+   d="M 242.771,282.222 C 243.12,282.921 242.771,284.664 241.724,285.014 C 235.096,279.782 228.47,274.549 222.887,268.27 C 224.982,266.875 227.422,269.666 229.167,271.062 L 242.771,282.222"
+   id="path207" />
+<path
+   d="M 295.093,269.667 C 295.79,271.411 295.093,273.852 293.698,275.247 C 292.302,277.689 289.511,275.596 287.767,275.247 C 286.372,273.851 286.722,271.411 287.416,269.667 C 288.814,265.83 293,267.922 295.093,269.667"
+   id="path209" />
+<path
+   d="M 207.89,278.038 C 206.146,276.643 204.751,275.944 204.054,273.851 C 204.403,272.107 205.1,270.363 206.495,269.317 L 212.077,272.107 L 207.89,278.038"
+   id="path211"
+   style="fill:#ffffff" />
+<path
+   d="M 291.955,271.411 C 291.955,272.457 291.605,273.503 290.21,273.155 C 289.86,271.757 290.904,271.411 291.955,271.411"
+   id="path213"
+   style="fill:#ffffff" />
+<path
+   d="M 232.655,286.757 L 229.517,292.339 C 226.028,289.198 220.447,288.501 216.611,284.664 C 216.959,282.571 217.655,280.477 219.052,278.733 C 224.285,279.782 227.423,285.363 232.655,286.757"
+   id="path215"
+   style="fill:#ffffff" />
+<path
+   d="M 287.417,282.921 C 286.723,283.619 287.417,285.014 286.023,285.71 L 284.978,285.71 L 285.325,282.571 C 286.023,282.921 286.723,283.27 287.417,282.921"
+   id="path217"
+   style="fill:#ffffff" />
+<path
+   d="M 296.487,282.921 C 296.837,283.966 296.136,284.316 295.79,284.664 L 295.093,284.664 L 295.093,282.571 C 295.442,282.921 296.137,282.222 296.487,282.921"
+   id="path219"
+   style="fill:#ffffff" />
+<path
+   d="M 253.932,290.943 C 254.281,292.339 253.237,292.686 252.536,293.384 C 249.048,293.035 246.26,289.548 243.469,286.757 L 243.816,285.71 C 247.304,287.107 251.143,287.803 253.932,290.943"
+   id="path221" />
+<path
+   d="M 237.19,290.594 C 235.794,293.035 234.748,296.524 233.352,298.268 C 232.655,295.128 233.352,291.641 235.096,289.199 C 235.795,289.897 236.493,289.897 237.19,290.594"
+   id="path223"
+   style="fill:#404040" />
+<path
+   d="M 317.417,294.083 C 319.161,311.87 315.322,330.01 305.558,344.312 C 311.139,328.964 318.115,311.871 314.278,293.384 C 311.139,293.384 307.651,294.431 305.558,297.572 C 302.418,299.316 303.813,305.244 299.977,303.849 C 299.626,298.966 304.51,293.734 309.045,291.291 C 311.833,290.247 316.719,289.897 317.417,294.083"
+   id="path225" />
+<path
+   d="M 351.946,291.99 C 356.484,295.129 361.717,297.222 366.949,299.316 C 361.717,301.755 355.435,303.849 349.508,301.059 C 344.623,299.316 340.09,296.175 335.903,293.036 L 335.903,290.595 C 340.788,290.943 347.415,291.641 351.946,291.99"
+   id="path227"
+   style="fill:#b9e5fa" />
+<path
+   d="M 145.803,298.268 L 145.803,302.803 C 139.524,301.755 132.897,297.572 130.454,291.291 C 135.338,295.478 142.662,290.247 145.803,298.268"
+   id="path229"
+   style="fill:#fff200" />
+<path
+   d="M 341.135,312.918 C 346.367,325.127 348.459,338.73 347.415,353.728 C 346.715,354.426 345.671,355.821 344.623,354.776 C 343.577,352.682 345.322,349.892 344.623,347.101 C 345.322,332.103 341.833,318.5 333.463,306.988 C 329.625,306.638 327.53,310.476 325.439,312.919 C 321.604,321.639 319.162,331.755 318.115,341.173 C 317.066,341.52 317.066,342.917 316.022,342.568 L 314.627,340.126 C 320.206,327.918 317.417,309.78 333.113,303.851 C 337.994,304.199 338.695,309.779 341.135,312.918"
+   id="path231" />
+<path
+   d="M 363.46,313.615 C 363.809,314.313 363.46,315.36 362.762,315.709 C 360.32,316.059 358.923,313.615 356.485,314.313 C 345.672,323.382 354.391,338.73 352.298,349.543 C 351.6,349.543 351.252,348.844 350.553,348.495 C 350.203,336.637 343.227,318.847 356.485,311.523 C 359.274,311.524 362.063,311.175 363.46,313.615"
+   id="path233" />
+<path
+   d="M 284.629,311.871 C 284.629,312.919 284.629,313.965 283.582,314.313 C 282.885,313.964 282.185,313.964 282.535,312.918 C 283.233,312.57 283.582,311.524 284.629,311.871"
+   id="path235"
+   style="fill:#ffffff" />
+<path
+   d="M 265.794,323.382 C 267.886,323.382 267.537,324.429 268.232,326.172 C 264.396,325.822 260.561,324.079 258.817,320.243 C 258.817,318.847 259.512,317.452 260.561,316.405 C 259.164,319.545 263.701,321.988 265.794,323.382"
+   id="path237"
+   style="fill:#ffffff" />
+<path
+   d="M 277.653,322.335 L 275.558,322.335 C 274.861,321.289 275.558,319.545 276.952,319.196 L 278.349,319.196 L 277.653,322.335"
+   id="path239"
+   style="fill:#ffffff" />
+<path
+   d="M 286.723,324.08 L 285.326,324.08 L 287.768,321.988 C 288.117,321.988 288.117,324.778 286.723,324.08"
+   id="path241"
+   style="fill:#ffffff" />
+<path
+   d="M 275.209,326.172 C 278.002,326.87 280.093,325.476 281.141,323.382 C 280.791,324.079 282.885,326.522 284.629,327.916 C 280.441,328.964 276.258,329.661 272.77,326.521 L 272.072,322.684 C 272.071,324.778 274.164,325.476 275.209,326.172"
+   id="path243"
+   style="fill:#808080" />
+<path
+   d="M 239.979,331.754 C 240.677,336.287 239.283,340.474 235.794,342.566 C 235.446,340.473 236.492,337.683 237.19,335.241 C 233.352,339.079 226.028,333.497 222.887,341.172 C 222.191,341.519 221.842,340.822 221.144,340.474 C 221.144,337.335 224.982,335.94 227.075,334.197 C 230.215,334.197 233.352,334.197 235.447,332.453 C 236.839,331.056 235.096,330.011 234.399,328.965 C 236.145,325.127 239.633,328.964 239.979,331.754"
+   id="path245" />
+<path
+   d="M 222.191,344.312 C 222.191,344.66 221.493,345.008 221.144,345.357 C 223.587,346.055 228.818,343.614 230.214,347.45 C 228.818,349.544 224.982,347.8 223.237,348.496 L 220.795,347.45 C 219.749,351.637 218.005,355.473 218.355,360.009 C 217.655,360.358 217.308,361.752 216.261,361.404 L 214.866,359.31 C 216.611,354.078 216.958,348.15 219.749,343.265 C 220.447,343.264 221.493,343.264 222.191,344.312"
+   id="path247" />
+<path
+   d="M 236.493,344.312 C 233.352,351.984 229.864,359.309 227.075,367.333 L 226.377,368.029 C 223.588,365.589 227.075,362.1 227.075,358.96 L 221.144,358.264 C 221.493,357.914 220.795,357.566 220.447,357.216 C 221.843,355.124 224.982,356.17 226.725,355.82 L 227.422,356.868 C 231.26,353.031 230.214,345.706 235.446,343.264 L 236.493,344.312"
+   id="path249" />
+<path
+   d="M 210.333,353.381 L 209.636,356.868 C 204.404,355.472 196.032,358.613 194.636,351.287 C 194.636,350.589 193.59,348.844 195.335,348.844 C 199.868,353.032 204.751,353.032 210.333,353.381"
+   id="path251"
+   style="fill:#404040" />
+<path
+   d="M 216.611,368.03 C 216.611,372.217 216.261,377.098 216.959,380.936 C 221.843,380.238 222.191,376.75 222.888,372.566 C 223.588,371.868 224.285,371.868 224.983,371.868 C 226.378,376.401 222.542,381.982 224.983,386.865 C 224.983,387.563 224.632,388.262 224.286,388.609 C 221.145,387.563 221.844,384.424 221.145,382.331 C 220.099,381.633 217.656,384.075 216.959,380.936 C 214.867,384.075 219.75,388.609 214.517,388.957 C 213.122,382.33 213.471,374.656 214.168,368.029 C 214.867,367.68 215.912,366.635 216.611,368.03"
+   id="path253" />
+<path
+   d="M 224.982,369.425 C 223.935,371.518 220.795,370.122 218.703,370.471 C 217.655,370.122 217.655,368.03 218.703,367.68 C 220.796,368.03 224.285,366.635 224.982,369.425"
+   id="path255" />
+<path
+   d="M 205.797,381.982 C 206.494,381.632 207.541,382.331 207.89,381.286 C 208.589,382.331 208.24,384.075 208.24,385.122 C 202.659,386.518 199.171,383.03 194.636,381.982 C 193.939,380.587 193.24,379.193 193.939,377.797 C 197.775,379.193 201.264,381.632 205.797,381.982"
+   id="path257"
+   style="fill:#404040" />
+<path
+   d="M 209.635,394.54 C 206.843,395.585 203.356,393.842 200.216,393.145 C 198.821,390.703 196.381,390.005 197.427,386.865 C 200.914,391.051 212.076,384.424 209.635,394.54"
+   id="path259"
+   style="fill:#ffffff" />
+<path
+   d="M 226.726,398.028 C 224.983,400.122 224.286,403.609 221.843,404.306 C 221.843,401.516 224.632,399.422 226.726,398.028"
+   id="path261"
+   style="fill:#ffffff" />
+<path
+   d="M 232.655,402.214 C 231.607,404.654 229.168,406.399 227.423,408.143 C 226.377,406.049 229.168,400.47 232.655,402.214"
+   id="path263"
+   style="fill:#ffffff" />
+<path
+   d="M 189.751,411.282 C 190.102,412.329 189.404,412.678 189.055,413.724 L 188.358,413.724 L 187.66,410.584 L 189.751,411.282"
+   id="path265"
+   style="fill:#ffffff" />
+<path
+   d="M 241.027,411.981 C 239.632,414.074 237.54,417.211 235.096,418.608 L 234.399,418.608 C 233.702,415.817 235.096,412.329 237.54,410.585 C 238.584,411.282 241.377,409.538 241.027,411.981"
+   id="path267"
+   style="fill:#ffffff" />
+<path
+   d="M 199.868,411.981 C 199.868,412.678 200.565,415.119 198.822,415.817 L 197.427,415.817 C 197.427,414.074 197.427,410.934 199.868,411.981"
+   id="path269"
+   style="fill:#ffffff" />
+<path
+   d="M 221.145,425.933 L 221.145,426.282 L 220.099,426.282 L 220.448,425.235 C 220.796,425.583 220.796,425.933 221.145,425.933"
+   id="path271"
+   style="fill:#ffffff" />
+<path
+   d="M 241.377,429.42 C 240.678,428.025 242.423,429.42 242.772,428.375 L 242.772,429.42 L 241.377,429.42"
+   id="path273"
+   style="fill:#ffffff" />
+<path
+   d="M 230.912,429.42 C 230.563,430.118 230.563,430.815 230.215,431.164 L 228.819,431.164 L 228.819,428.722 L 230.912,429.42"
+   id="path275"
+   style="fill:#ffffff" />
+<path
+   d="M 218.006,438.49 L 218.703,439.536 C 214.867,441.63 208.935,436.746 206.146,440.931 C 193.938,443.025 181.381,440.236 168.822,441.63 C 171.265,444.071 176.498,440.584 177.195,444.768 C 172.66,445.816 166.033,444.42 160.452,444.072 C 148.244,445.118 135.338,444.072 124.525,448.258 L 122.781,446.863 L 124.874,445.118 C 137.082,441.979 149.291,442.329 161.847,441.631 C 161.847,439.537 164.29,439.887 165.685,439.189 L 189.405,439.189 C 189.405,437.793 191.149,437.097 192.543,436.748 C 201.959,438.14 209.286,434.653 218.006,438.49"
+   id="path277" />
+</svg>
\ No newline at end of file

Added: branches/gcomprixogoo/src/doubleclick-activity/doubleclick.xml.in
==============================================================================
--- (empty file)
+++ branches/gcomprixogoo/src/doubleclick-activity/doubleclick.xml.in	Sat May 10 16:48:20 2008
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<GCompris>
+  <Board
+        name="doubleclick"
+        type="python:doubleclick"
+        section="/computer/mouse"
+        icon="boardicons/doubleclick.svg"
+        difficulty="2"
+        author="Bruno Coudoin (bruno coudoin free fr)"
+        boarddir="">
+        <_title>Penalty kick</_title>
+        <_description>Double click the mouse on the ball to score a goal.</_description>
+	<_prerequisite>Mouse-manipulation</_prerequisite>
+	<_goal>Motor-coordination</_goal>
+	 <_manual>Double click the mouse on the ball to kick it. You can double click the left right or middle mouse button. If you lose, Tux catches the ball. You must click on it to bring it back to its former position</_manual>
+        <_credit></_credit>
+  </Board>
+  <Data directory=""/>
+</GCompris>

Added: branches/gcomprixogoo/src/doubleclick-activity/gcompris
==============================================================================
--- (empty file)
+++ branches/gcomprixogoo/src/doubleclick-activity/gcompris	Sat May 10 16:48:20 2008
@@ -0,0 +1 @@
+link ../boards/python/gcompris
\ No newline at end of file

Added: branches/gcomprixogoo/src/doubleclick-activity/init_path.sh
==============================================================================
--- (empty file)
+++ branches/gcomprixogoo/src/doubleclick-activity/init_path.sh	Sat May 10 16:48:20 2008
@@ -0,0 +1,8 @@
+# Set the different path for this activity
+# This is sourced by runit.sh
+path=$1
+activity=doubleclick
+plugindir=$path/../boards/.libs
+pythonplugindir=$path
+resourcedir=$path/resources
+section="/computer/mouse"

Added: branches/gcomprixogoo/src/doubleclick-activity/resources/Makefile.am
==============================================================================
--- (empty file)
+++ branches/gcomprixogoo/src/doubleclick-activity/resources/Makefile.am	Sat May 10 16:48:20 2008
@@ -0,0 +1 @@
+SUBDIRS = doubleclick

Added: branches/gcomprixogoo/src/doubleclick-activity/resources/doubleclick/Makefile.am
==============================================================================
--- (empty file)
+++ branches/gcomprixogoo/src/doubleclick-activity/resources/doubleclick/Makefile.am	Sat May 10 16:48:20 2008
@@ -0,0 +1,9 @@
+imgdir = $(pkgdatadir)/@PACKAGE_DATA_DIR@/erase
+img_DATA = \
+	doubleclick.svg \
+	foot_shadow.svg \
+	foot.svg \
+	penalty_bg.svg \
+	teen_tux.svg
+
+EXTRA_DIST = $(img_DATA)

Added: branches/gcomprixogoo/src/doubleclick-activity/resources/doubleclick/doubleclick.svg
==============================================================================
--- (empty file)
+++ branches/gcomprixogoo/src/doubleclick-activity/resources/doubleclick/doubleclick.svg	Sat May 10 16:48:20 2008
@@ -0,0 +1,149 @@
+<?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:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd";
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape";
+   width="131.09132"
+   height="111.153"
+   id="svg2"
+   sodipodi:version="0.32"
+   inkscape:version="0.46"
+   version="1.0"
+   sodipodi:docbase="/home/mat/Travaux/Inkscape/Gcompris/boardicons"
+   sodipodi:docname="doubleclick.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape">
+  <defs
+     id="defs4">
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 50 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="100 : 50 : 1"
+       inkscape:persp3d-origin="50 : 33.333333 : 1"
+       id="perspective4868" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="1.14875"
+     inkscape:cx="-2.3939067"
+     inkscape:cy="-55.638014"
+     inkscape:document-units="px"
+     inkscape:current-layer="layer1"
+     width="100px"
+     height="100px"
+     inkscape:window-width="1123"
+     inkscape:window-height="916"
+     inkscape:window-x="82"
+     inkscape:window-y="73"
+     showgrid="false" />
+  <metadata
+     id="metadata7">
+    <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>
+  <g
+     inkscape:label="Calque 1"
+     inkscape:groupmode="layer"
+     id="layer1"
+     transform="translate(-2.5651483,-1.17111)">
+    <path
+       style="fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.28695655"
+       d="M 49.618344,85.191357 C 61.521735,90.686388 97.572763,50.03881 68.173661,38.701973 C 41.876969,28.561479 34.042975,79.606158 49.618344,85.191357 z"
+       id="path3049"
+       sodipodi:nodetypes="csc" />
+    <path
+       style="fill:#83cbc6;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2.12582922;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+       d="M 48.947537,82.193684 C 60.850928,87.688715 96.901948,47.041137 67.502854,35.704301 C 41.206162,25.563807 33.372168,76.608485 48.947537,82.193684 z"
+       id="path2092"
+       sodipodi:nodetypes="csc" />
+    <path
+       style="fill:#83cbc6;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2.12582922;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+       d="M 46.026801,46.412013 C 46.026801,46.412013 63.13088,61.443363 77.518386,57.073211"
+       id="path2979"
+       sodipodi:nodetypes="cc" />
+    <path
+       style="fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2.12582922;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+       d="M 48.51412,80.774465 C 60.417511,86.269496 96.468528,45.621918 67.069437,34.285082 C 40.772745,24.144587 32.938751,75.189266 48.51412,80.774465 z"
+       id="path3035"
+       sodipodi:nodetypes="csc" />
+    <path
+       style="fill:#83cbc6;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2.12582922;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+       d="M 46.274731,44.580978 C 46.274731,44.580978 63.37881,59.612328 77.766316,55.242176"
+       id="path3039"
+       sodipodi:nodetypes="cc" />
+    <path
+       style="fill:#83cbc6;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2.12582922;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+       d="M 67.451498,36.744501 L 59.902219,53.937426"
+       id="path3037" />
+    <path
+       style="fill:#83cbc6;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2.12582922;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+       d="M 66.466811,36.515071 L 58.917532,53.707996"
+       id="path2981" />
+    <path
+       style="fill:#000000;fill-opacity:0.27391304;fill-rule:evenodd;stroke:none;stroke-width:2.12582922;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+       d="M 57.900016,80.222353 C 65.047953,78.27692 71.630111,70.442914 72.071937,66.377141 C 72.513763,62.311368 68.287555,73.240095 56.57932,73.300959 C 48.491996,71.267326 50.495452,73.303718 43.216984,74.959348 C 48.988296,83.590545 47.167737,81.570589 57.900016,80.222353 z"
+       id="path3045"
+       sodipodi:nodetypes="ccccc" />
+    <path
+       style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       d="M 67.812116,33.792355 C 68.52526,31.5379 69.426345,14.935135 91.818451,32.406661 C 110.04286,44.497631 113.40097,38.861493 120.63079,41.33788 C 140.9796,47.394876 132.89605,68.630906 121.91905,74.83264 C 115.60237,79.589842 101.2185,90.976629 110.4655,96.071366 C 123.54699,103.27876 135.90587,91.119931 126.70401,111.82411"
+       id="path3071"
+       sodipodi:nodetypes="ccccsc" />
+    <g
+       id="g22156"
+       transform="translate(10.49012,19.13986)">
+      <path
+         id="path21267"
+         d="M 20.980236,5.9570105 L 9.9380067,-2.3246617 L 4.4168919,-5.0852191 L 8.4657094,-10.790371 L 16.19527,-15.023226 L 24.66098,-6.005405 L 29.261909,-1.7725502 L 37.543581,-8.397888 L 39.56799,-6.1894421 L 40.120101,-2.692736 L 37.727618,13.318497 L 19.323902,14.790794 L 15.275084,12.214274 L 16.563345,9.4537166 L 20.980236,5.9570105 z"
+         style="fill:#ff0000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+      <path
+         sodipodi:nodetypes="ccccccccccscccccccccccccccc"
+         id="path20377"
+         d="M 17.486149,-17.96875 L 7.734375,-12.357686 L -0.54510135,-4.90625 L 9.5782095,0.069425677 L 17.125,5.78125 L 11.40625,11.46875 L 16.75,17 L 39.1875,15.34375 L 42.875,-6 L 38.65625,-11.15625 C 38.65625,-11.15625 31.479222,-4.9166387 29.822889,-4.9166385 C 28.166554,-4.9166385 17.48615,-17.96875 17.486149,-17.96875 z M 16.1875,-12.09375 L 25.031166,-1.7742399 L 29.638851,0.62854729 L 36.0625,-5.09375 L 37.90625,-5.8125 L 38.84375,-3.0625 L 38.083361,0.26047297 L 35.902703,11.670186 L 26.5,12.78125 L 19.125,13.125 L 17.65625,12.03125 L 23.9375,7.8125 L 22.09375,2.84375 L 7.53125,-5.8125 L 16.1875,-12.09375 z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+    </g>
+    <path
+       style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       d="M 67.075966,33.056207 C 67.78911,30.801752 68.690195,14.198988 91.082301,31.670513 C 109.30671,43.761483 112.66482,38.125345 119.89464,40.601732 C 140.24345,46.658729 132.1599,67.894759 121.1829,74.096493 C 114.86622,78.853695 105.81424,88.499459 115.06124,93.594196 C 128.14273,100.80159 135.16972,90.383784 125.96786,111.08796"
+       id="path22160"
+       sodipodi:nodetypes="ccccsc" />
+    <path
+       style="fill:#d35f5f;fill-opacity:0.75;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       d="M 47.348648,44.060744 L 51.949577,38.515504 L 56.859441,35.646133 L 63.022551,35.529277 L 65.650169,36.055839 L 58.690347,51.396683 L 52.285484,47.951074 L 47.348648,44.060744 z"
+       id="path24915"
+       sodipodi:nodetypes="cccccccc" />
+    <path
+       style="fill:#ffffff;fill-opacity:0.44868032;fill-rule:evenodd;stroke:none;stroke-width:2.12582922;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+       d="M 65.205137,36.181089 C 63.335253,40.15093 64.396297,37.862893 62.813714,41.744628 C 63.25554,45.810401 57.064425,37.210535 47.761548,43.65254 C 53.900934,35.389417 56.129193,34.464778 65.205137,36.181089 z"
+       id="path3047"
+       sodipodi:nodetypes="cccc" />
+    <text
+       xml:space="preserve"
+       style="font-size:47.05569839px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;fill:#0fb8aa;fill-opacity:1;stroke:#000000;stroke-width:1.5954684;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;font-family:Mallige;-inkscape-font-specification:Mallige Bold"
+       x="1.3986744"
+       y="78.025269"
+       id="text5611"
+       transform="scale(0.9450394,1.0581569)"><tspan
+         sodipodi:role="line"
+         id="tspan5613"
+         x="1.3986744"
+         y="78.025269"
+         style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;stroke-width:1.5954684;font-family:Mallige;-inkscape-font-specification:Mallige Bold">2</tspan></text>
+  </g>
+</svg>

Added: branches/gcomprixogoo/src/doubleclick-activity/resources/doubleclick/foot.svg
==============================================================================
--- (empty file)
+++ branches/gcomprixogoo/src/doubleclick-activity/resources/doubleclick/foot.svg	Sat May 10 16:48:20 2008
@@ -0,0 +1,123 @@
+<?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:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd";
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape";
+   width="61.475903"
+   height="62.522274"
+   id="svg1902"
+   sodipodi:version="0.32"
+   inkscape:version="0.46"
+   version="1.0"
+   sodipodi:docbase="/home/mat/Travaux/Inkscape/Gcompris/boardicons"
+   sodipodi:docname="foot.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape">
+  <defs
+     id="defs1904">
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 50 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="100 : 50 : 1"
+       inkscape:persp3d-origin="50 : 33.333333 : 1"
+       id="perspective20" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="4.1324561"
+     inkscape:cx="42.656931"
+     inkscape:cy="53.965188"
+     inkscape:document-units="px"
+     inkscape:current-layer="layer1"
+     height="100px"
+     width="100px"
+     inkscape:window-width="1005"
+     inkscape:window-height="877"
+     inkscape:window-x="79"
+     inkscape:window-y="49"
+     showgrid="false" />
+  <metadata
+     id="metadata1907">
+    <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>
+  <g
+     inkscape:label="Calque 1"
+     inkscape:groupmode="layer"
+     id="layer1"
+     transform="translate(-16.493709,-15.443454)">
+    <g
+       id="g3163">
+      <path
+         id="path14311"
+         d="M 68.824225,24.043885 L 71.647152,28.067674 L 74.644026,32.698262 L 76.942358,38.127412 L 77.969611,44.687366 L 77.762774,49.918877 L 76.738228,56.568569 L 73.389314,63.780724 L 70.622526,67.588178 L 65.66423,71.645083 L 60.657999,74.628868 L 54.758727,77.344509 L 50.661976,77.677285 L 44.066908,77.965727 L 39.342841,77.40433 L 33.057329,74.760795 L 28.209996,71.439955 L 23.580449,66.419966 L 19.642597,60.448116 L 17.408646,53.172929 L 16.493709,45.840053 L 18.111332,39.318024 L 19.78374,34.022415 L 22.628603,28.675527 L 27.092443,23.411433 L 33.062943,19.003057 L 38.822504,16.447128 L 44.210877,15.443454 L 51.705831,15.57646 L 56.931203,17.498351 L 62.896208,19.541494 L 66.550539,22.453706 L 68.824225,24.043885 z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+      <path
+         id="path12514"
+         d="M 67.054517,24.830801 L 69.7092,28.620828 L 72.527488,32.982386 L 74.688991,38.096027 L 75.655375,44.274639 L 75.461251,49.201962 L 74.498332,55.464954 L 71.349845,62.257548 L 68.748495,65.843438 L 64.086484,69.664125 L 59.379324,72.474084 L 53.832419,75.031429 L 49.980262,75.344578 L 43.778929,75.615799 L 39.336842,75.08672 L 33.426381,72.59646 L 28.868195,69.468371 L 24.514676,64.739942 L 20.811492,59.115042 L 18.710397,52.262701 L 17.84957,45.356113 L 19.370169,39.213403 L 20.942368,34.225808 L 23.617026,29.189997 L 27.814015,24.232275 L 33.427777,20.080621 L 38.843323,17.673693 L 43.909949,16.728742 L 50.957476,16.854526 L 55.871035,18.665029 L 61.48008,20.589785 L 64.916457,23.332924 L 67.054517,24.830801 z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+      <path
+         id="path13406"
+         d="M 65.183264,26.214686 L 62.705088,23.284969 L 59.458118,21.690918 L 54.781475,19.002025 L 51.297591,18.286367 L 47.826605,17.859488 L 45.765945,18.094284 L 45.003599,19.574342 L 47.003852,21.078246 L 49.574685,22.99121 L 50.879452,24.38086 L 54.350436,24.80774 L 57.158184,25.842312 L 60.260897,27.298 L 63.212902,28.470935 L 65.183264,26.214686 z"
+         style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+      <path
+         sodipodi:nodetypes="cccccccccccccccc"
+         id="path13408"
+         d="M 67.359398,37.837908 L 65.486411,33.000992 L 62.726172,29.938939 L 59.203586,28.356943 L 54.7099,26.672748 L 52.334925,26.053262 L 49.242753,27.92456 L 47.022576,30.770421 L 48.697877,36.37283 L 51.246473,41.870067 L 54.743257,42.874505 L 58.397199,44.306084 L 61.422362,42.97577 L 63.867669,41.028725 L 66.058723,39.630853 L 67.359398,37.837908 z"
+         style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+      <path
+         sodipodi:nodetypes="cccccccccccccccc"
+         id="path13410"
+         d="M 74.264401,44.046132 L 72.081191,41.537528 L 68.670615,39.371948 L 65.7356,41.670386 L 62.951294,44.251577 L 62.057591,45.882052 L 62.20594,49.203009 L 62.524346,53.239888 L 62.903161,55.538065 L 65.558041,57.262049 L 68.149883,58.595408 L 70.512458,58.966726 L 72.495721,56.999256 L 73.699647,53.040469 L 74.438549,47.944647 L 74.264401,44.046132 z"
+         style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+      <path
+         id="path13412"
+         d="M 68.455889,62.384118 L 67.519396,59.96566 L 63.990361,58.239275 L 60.913448,57.361145 L 57.500513,58.23377 L 53.96912,59.545593 L 51.271021,60.96564 L 49.752781,64.070145 L 48.004076,68.19743 L 47.149073,70.694241 L 50.264685,72.438707 L 53.492305,73.599589 L 57.312213,72.564491 L 60.14812,71.138418 L 63.102482,69.273146 L 66.149505,66.391122 L 68.455889,62.384118 z"
+         style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+      <path
+         sodipodi:nodetypes="ccccccccccccccccc"
+         id="path13414"
+         d="M 49.112503,43.554786 L 46.549853,48.007013 L 44.448134,50.413678 L 40.583077,50.438049 L 36.092866,49.911074 L 32.945809,48.453754 L 30.723709,46.095095 L 29.341544,42.972771 L 29.384414,40.841456 L 30.834492,38.281558 L 33.02242,34.713749 L 35.478031,32.035751 L 37.940188,31.456992 L 42.500732,31.546874 L 44.318028,32.04608 L 46.886502,36.99725 L 49.112503,43.554786 z"
+         style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+      <path
+         sodipodi:nodetypes="ccccccccc"
+         id="path13416"
+         d="M 42.697749,19.422908 L 40.19969,20.218458 L 36.386233,21.397945 L 33.85174,23.389524 L 30.563713,23.967344 L 35.37643,20.429409 L 39.58396,18.798673 L 42.859089,17.932075 L 42.697749,19.422908 z"
+         style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+      <path
+         sodipodi:nodetypes="ccccccccccccc"
+         id="path13418"
+         d="M 32.105205,25.494884 L 34.148438,30.031441 L 31.310174,34.495721 L 28.715274,38.226001 L 27.972279,40.139227 L 24.197521,42.185049 L 21.53403,41.288838 L 20.795752,37.125653 L 22.807172,32.697534 L 25.139357,29.268088 L 27.622247,26.121393 L 29.611431,25.277549 L 32.105205,25.494884 z"
+         style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+      <path
+         id="path13420"
+         d="M 20.050398,42.077085 L 19.029429,47.040571 L 20.316579,54.217854 L 21.273048,47.810473 L 20.050398,42.077085 z"
+         style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+      <path
+         id="path13422"
+         d="M 35.521651,70.045404 L 35.999573,71.471217 L 34.083168,71.844377 L 27.50538,66.779215 L 23.533031,61.310757 L 21.692295,57.195789 L 22.297482,55.28859 L 27.83967,58.807658 C 27.83967,58.807658 29.491001,61.773539 30.225187,62.754129 C 30.959373,63.73472 35.646558,69.750599 35.521651,70.045404 z"
+         style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+      <path
+         sodipodi:nodetypes="cccccccccccc"
+         id="path13424"
+         d="M 50.123412,60.003131 L 47.44938,55.779935 L 44.958306,52.561439 L 38.980988,51.665489 L 33.141476,50.763515 L 30.221823,56.526254 L 31.148871,59.783238 L 33.228481,64.025288 L 36.55316,68.408904 L 41.710084,69.485405 L 45.568692,69.316644 L 50.123412,60.003131 z"
+         style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+    </g>
+  </g>
+</svg>

Added: branches/gcomprixogoo/src/doubleclick-activity/resources/doubleclick/foot_shadow.svg
==============================================================================
--- (empty file)
+++ branches/gcomprixogoo/src/doubleclick-activity/resources/doubleclick/foot_shadow.svg	Sat May 10 16:48:20 2008
@@ -0,0 +1,67 @@
+<?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:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd";
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape";
+   width="61.475899"
+   height="13.88292"
+   id="svg3177"
+   sodipodi:version="0.32"
+   inkscape:version="0.46"
+   version="1.0"
+   sodipodi:docname="foot_shadow.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape">
+  <defs
+     id="defs3179">
+    <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="perspective3185" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="5.6"
+     inkscape:cx="32.146256"
+     inkscape:cy="1.079584"
+     inkscape:document-units="px"
+     inkscape:current-layer="layer1"
+     showgrid="false"
+     inkscape:window-width="641"
+     inkscape:window-height="719"
+     inkscape:window-x="555"
+     inkscape:window-y="191" />
+  <metadata
+     id="metadata3182">
+    <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>
+  <g
+     inkscape:label="Calque 1"
+     inkscape:groupmode="layer"
+     id="layer1"
+     transform="translate(-312.11919,-413.99215)">
+    <path
+       style="opacity:0.64723032;fill:#000000;fill-opacity:0.2815249;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       d="M 364.44971,415.90186 L 367.27263,416.79533 L 370.26951,417.82354 L 372.56784,419.02907 L 373.59509,420.48569 L 373.38825,421.64734 L 372.36371,423.12388 L 369.01479,424.72533 L 366.24801,425.57076 L 361.28971,426.47159 L 356.28348,427.13413 L 350.38421,427.73713 L 346.28746,427.81102 L 339.69239,427.87507 L 334.96832,427.75041 L 328.68281,427.16342 L 323.83548,426.42604 L 319.20593,425.31136 L 315.26808,423.98533 L 313.03413,422.36989 L 312.11919,420.74164 L 313.73682,419.29344 L 315.40922,418.11757 L 318.25409,416.9303 L 322.71793,415.76142 L 328.68843,414.78255 L 334.44799,414.21502 L 339.83636,413.99215 L 347.33131,414.02169 L 352.55669,414.44844 L 358.52169,414.90211 L 362.17602,415.54876 L 364.44971,415.90186 z"
+       id="path16085" />
+  </g>
+</svg>

Added: branches/gcomprixogoo/src/doubleclick-activity/resources/doubleclick/penalty_bg.svg
==============================================================================
--- (empty file)
+++ branches/gcomprixogoo/src/doubleclick-activity/resources/doubleclick/penalty_bg.svg	Sat May 10 16:48:20 2008
@@ -0,0 +1,594 @@
+<?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="svg1"
+   sodipodi:version="0.32"
+   inkscape:version="0.46"
+   width="800"
+   height="520"
+   sodipodi:docbase="/home/bruno/Projets/gcompris/gcompris-ressources"
+   sodipodi:docname="penalty_bg.svg"
+   inkscape:export-filename="/home/bruno/Projets/gcompris/gcompris-ressources/country.png"
+   inkscape:export-xdpi="72.000000"
+   inkscape:export-ydpi="72.000000"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape"
+   version="1.0">
+  <defs
+     id="defs3">
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 325 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1000 : 325 : 1"
+       inkscape:persp3d-origin="500 : 216.66667 : 1"
+       id="perspective3842" />
+    <linearGradient
+       id="linearGradient7712"
+       inkscape:collect="always">
+      <stop
+         id="stop7714"
+         offset="0"
+         style="stop-color:#78e981;stop-opacity:1;" />
+      <stop
+         id="stop7716"
+         offset="1"
+         style="stop-color:#78e981;stop-opacity:0;" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient6049">
+      <stop
+         style="stop-color:#7fda82;stop-opacity:1;"
+         offset="0"
+         id="stop6051" />
+      <stop
+         style="stop-color:#7fda82;stop-opacity:0;"
+         offset="1"
+         id="stop6053" />
+    </linearGradient>
+    <linearGradient
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="scale(0.809349,1.235562)"
+       y2="316.92795"
+       x2="686.68677"
+       y1="943.94452"
+       x1="811.64789"
+       id="linearGradient24397"
+       xlink:href="#linearGradient883"
+       inkscape:collect="always" />
+    <linearGradient
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="scale(0.816695,1.224447)"
+       y2="313.6897"
+       x2="678.57996"
+       y1="974.45667"
+       x1="810.2674"
+       id="linearGradient24395"
+       xlink:href="#linearGradient883"
+       inkscape:collect="always" />
+    <linearGradient
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="scale(0.814358,1.227961)"
+       y2="314.91479"
+       x2="681.22241"
+       y1="963.94263"
+       x1="810.57025"
+       id="linearGradient24393"
+       xlink:href="#linearGradient883"
+       inkscape:collect="always" />
+    <linearGradient
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="scale(0.812999,1.230014)"
+       y2="315.81985"
+       x2="682.8847"
+       y1="957.1701"
+       x1="810.70245"
+       id="linearGradient24391"
+       xlink:href="#linearGradient883"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="575.28162"
+       x2="167.57657"
+       y1="528.22559"
+       x1="236.21625"
+       gradientTransform="matrix(0.293362,-4.475587e-2,4.095369e-2,0.251891,-106.5498,36.51195)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient24416"
+       xlink:href="#linearGradient899"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="320.85052"
+       x2="251.32333"
+       y1="306.41135"
+       x1="488.58859"
+       gradientTransform="matrix(0.257988,-3.935914e-2,4.656907e-2,0.286429,-81.97359,55.94688)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient24413"
+       xlink:href="#linearGradient883"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient899">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0.0000000;"
+         offset="0.0000000"
+         id="stop900" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1.0000000;"
+         offset="1.0000000"
+         id="stop901" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient883">
+      <stop
+         style="stop-color:#1f1f1f;stop-opacity:0.55371898;"
+         offset="0.0000000"
+         id="stop884" />
+      <stop
+         style="stop-color:#000000;stop-opacity:0.0000000;"
+         offset="1.0000000"
+         id="stop885" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient878">
+      <stop
+         style="stop-color:#1f1f1f;stop-opacity:1.0000000;"
+         offset="0.0000000"
+         id="stop879" />
+      <stop
+         style="stop-color:#000000;stop-opacity:0.0000000;"
+         offset="1.0000000"
+         id="stop881" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient839">
+      <stop
+         style="stop-color:#4f4f4f;stop-opacity:1.0000000;"
+         offset="0.0000000"
+         id="stop840" />
+      <stop
+         style="stop-color:#bebebe;stop-opacity:1.0000000;"
+         offset="0.27444443"
+         id="stop843" />
+      <stop
+         style="stop-color:#fff;stop-opacity:1;"
+         offset="1"
+         id="stop841" />
+    </linearGradient>
+    <linearGradient
+       xlink:href="#linearGradient883"
+       id="linearGradient842"
+       x1="0.79310346"
+       y1="2.0703125"
+       x2="0.40229887"
+       y2="0.109375" />
+    <linearGradient
+       xlink:href="#linearGradient899"
+       id="linearGradient848"
+       x1="0.66666669"
+       y1="0.44117647"
+       x2="-0.029304029"
+       y2="0.91830063" />
+    <linearGradient
+       xlink:href="#linearGradient839"
+       id="linearGradient849"
+       x1="0.93772894"
+       y1="0.8312102"
+       x2="0.35897437"
+       y2="0.092356689" />
+    <linearGradient
+       xlink:href="#linearGradient883"
+       id="linearGradient850"
+       x1="1.8869566"
+       y1="0.34090909"
+       x2="0.70434785"
+       y2="0.41287878" />
+    <linearGradient
+       xlink:href="#linearGradient839"
+       id="linearGradient860"
+       x1="0.59340662"
+       y1="0.92253524"
+       x2="0.42124543"
+       y2="-0.69366199" />
+    <linearGradient
+       xlink:href="#linearGradient883"
+       id="linearGradient882" />
+    <linearGradient
+       xlink:href="#linearGradient883"
+       id="linearGradient938"
+       x1="0.91520959"
+       y1="3.9872444"
+       x2="0.48107174"
+       y2="0.077422217"
+       gradientTransform="scale(0.991004,1.009077)" />
+    <linearGradient
+       xlink:href="#linearGradient883"
+       id="linearGradient1259"
+       x1="0.92114639"
+       y1="4.0513387"
+       x2="0.47915608"
+       y2="0.070798859"
+       gradientTransform="scale(0.993849,1.00619)" />
+    <linearGradient
+       xlink:href="#linearGradient883"
+       id="linearGradient1260"
+       x1="0.92504448"
+       y1="4.0943632"
+       x2="0.47776312"
+       y2="0.066172279"
+       gradientTransform="scale(0.99551,1.00451)" />
+    <linearGradient
+       gradientUnits="userSpaceOnUse"
+       y2="317.5282"
+       x2="232.14055"
+       y1="317.5282"
+       x1="36.458801"
+       gradientTransform="scale(1.246039,0.802543)"
+       id="linearGradient837"
+       xlink:href="#linearGradient834" />
+    <linearGradient
+       id="linearGradient834">
+      <stop
+         id="stop835"
+         offset="0.0000000"
+         style="stop-color:#ffffff;stop-opacity:0.40000001;" />
+      <stop
+         id="stop836"
+         offset="1.0000000"
+         style="stop-color:#ffffff;stop-opacity:0.10000000;" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient1569"
+       xlink:href="#linearGradient834" />
+    <linearGradient
+       id="linearGradient1563">
+      <stop
+         id="stop1565"
+         offset="0.0000000"
+         style="stop-color:#ffffff;stop-opacity:0.40000001;" />
+      <stop
+         id="stop1567"
+         offset="1.0000000"
+         style="stop-color:#ffffff;stop-opacity:0.10000000;" />
+    </linearGradient>
+    <linearGradient
+       y2="316.92795"
+       x2="686.68677"
+       y1="943.94452"
+       x1="811.64789"
+       gradientTransform="matrix(0.226295,0,0,0.334646,-161.4443,-27.70986)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient25607"
+       xlink:href="#linearGradient883"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="313.6897"
+       x2="678.57996"
+       y1="974.45667"
+       x1="810.2674"
+       gradientTransform="matrix(0.228349,0,0,0.331635,-161.4443,-27.70986)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient25610"
+       xlink:href="#linearGradient883"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="314.91479"
+       x2="681.22241"
+       y1="963.94263"
+       x1="810.57025"
+       gradientTransform="matrix(0.227695,0,0,0.332587,-161.4443,-27.70986)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient25613"
+       xlink:href="#linearGradient883"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="315.81985"
+       x2="682.8847"
+       y1="957.1701"
+       x1="810.70245"
+       gradientTransform="matrix(0.227315,0,0,0.333143,-161.4443,-27.70986)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient25616"
+       xlink:href="#linearGradient883"
+       inkscape:collect="always" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient6049"
+       id="linearGradient6055"
+       gradientTransform="matrix(0.942262,0,0,0.560339,7.268872,-4.933964)"
+       x1="200.72862"
+       y1="152.6812"
+       x2="214.6274"
+       y2="324.48575"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       gradientUnits="userSpaceOnUse"
+       y2="1721.6411"
+       x2="153.49289"
+       y1="1167.0593"
+       x1="153.49289"
+       gradientTransform="matrix(2.381141,0,0,1.1174347,4.0094543,-1321.6588)"
+       id="linearGradient7718"
+       xlink:href="#linearGradient7712"
+       inkscape:collect="always" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="0.97433862"
+     inkscape:cx="597.68974"
+     inkscape:cy="312.61102"
+     inkscape:window-width="1252"
+     inkscape:window-height="719"
+     showguides="true"
+     snaptoguides="true"
+     inkscape:window-x="4"
+     inkscape:window-y="49"
+     inkscape:current-layer="svg1"
+     showgrid="false"
+     inkscape:guide-bbox="true" />
+  <metadata
+     id="metadata44">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:title>Etiquette Icons</dc:title>
+        <dc:description />
+        <dc:subject>
+          <rdf:Bag>
+            <rdf:li>device</rdf:li>
+            <rdf:li>hash</rdf:li>
+            <rdf:li>icons</rdf:li>
+            <rdf:li>computer</rdf:li>
+            <rdf:li />
+            <rdf:li>hardware</rdf:li>
+          </rdf:Bag>
+        </dc:subject>
+        <dc:publisher>
+          <cc:Agent
+             rdf:about="http://www.openclipart.org";>
+            <dc:title>Andy Fitzsimon</dc:title>
+          </cc:Agent>
+        </dc:publisher>
+        <dc:creator>
+          <cc:Agent
+             rdf:about="">
+            <dc:title>Andy Fitzsimon</dc:title>
+          </cc:Agent>
+        </dc:creator>
+        <dc:rights>
+          <cc:Agent
+             rdf:about="">
+            <dc:title>Andy Fitzsimon</dc:title>
+          </cc:Agent>
+        </dc:rights>
+        <dc:date />
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage"; />
+        <cc:license
+           rdf:resource="http://web.resource.org/cc/PublicDomain";>
+          <dc:date />
+        </cc:license>
+        <dc:language>en</dc:language>
+      </cc:Work>
+      <cc:License
+         rdf:about="http://web.resource.org/cc/PublicDomain";>
+        <cc:permits
+           rdf:resource="http://web.resource.org/cc/Reproduction"; />
+        <cc:permits
+           rdf:resource="http://web.resource.org/cc/Distribution"; />
+        <cc:permits
+           rdf:resource="http://web.resource.org/cc/DerivativeWorks"; />
+      </cc:License>
+    </rdf:RDF>
+  </metadata>
+  <rect
+     inkscape:export-ydpi="71.000000"
+     inkscape:export-xdpi="71.000000"
+     inkscape:export-filename="/home/bcoudoin/Projets/gcompris/gcompris-ressources/country.png"
+     style="fill:#7cdcf2;fill-opacity:1;fill-rule:evenodd;stroke:#040000;stroke-width:5.94574833;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+     id="rect9886"
+     width="792.96552"
+     height="392.40768"
+     x="3.4049828"
+     y="4.0774107"
+     rx="9.615922"
+     ry="6.3501425" />
+  <path
+     inkscape:export-ydpi="71.000000"
+     inkscape:export-xdpi="71.000000"
+     inkscape:export-filename="/home/bcoudoin/Projets/gcompris/gcompris-ressources/country.png"
+     style="fill:#22c422;fill-opacity:1;fill-rule:evenodd;stroke:#040000;stroke-width:8.40949535;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+     d="M 795.73877,133.57888 L 797.35782,507.72182 C 797.35782,513.3068 793.97518,517.80298 789.77342,517.80298 L 11.630227,517.80298 C 7.428494,517.80298 4.0458711,513.3068 4.0458711,507.72182 L 4.0458711,135.49931 C 297.61997,120.26933 506.02768,148.57744 795.73877,133.57888 z"
+     id="rect9883"
+     sodipodi:nodetypes="ccccccc" />
+  <path
+     inkscape:export-ydpi="71.000000"
+     inkscape:export-xdpi="71.000000"
+     inkscape:export-filename="/home/bcoudoin/Projets/gcompris/gcompris-ressources/country.png"
+     style="fill:url(#linearGradient7718);fill-opacity:1;fill-rule:evenodd;stroke:#040000;stroke-width:0;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1"
+     d="M 106.9485,207.53885 L 362.24602,187.3947 C 579.34274,385.95841 787.68862,162.5879 787.68862,167.51991 L 789.278,497.92073 C 789.278,502.85275 785.95733,506.82327 781.83258,506.82327 L 17.945293,506.82327 C 13.820537,506.82327 10.499886,502.85275 10.499886,497.92073 L 10.499886,141.62029 C 10.499886,136.68826 80.572954,201.78338 106.9485,207.53885 z"
+     id="path6138"
+     sodipodi:nodetypes="ccccccccc" />
+  <rect
+     style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#b4b4b4;stroke-width:0.53450119;stroke-linecap:round;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+     id="rect4479"
+     width="3.5038869"
+     height="78.164032"
+     x="287.03409"
+     y="-73.770073"
+     rx="9.5035429"
+     ry="4.9412823"
+     transform="matrix(0.1948782,0.9808275,-0.8418831,0.53966,0,0)" />
+  <rect
+     style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#b4b4b4;stroke-width:1.72731352;stroke-linecap:round;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+     id="rect4523"
+     width="784.89435"
+     height="5.9043722"
+     x="7.8243551"
+     y="283.55609"
+     rx="0"
+     ry="6.3501425" />
+  <rect
+     style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#b4b4b4;stroke-width:2.06492805;stroke-linecap:round;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+     id="rect3866"
+     width="15.517658"
+     height="263.41678"
+     x="47.188988"
+     y="25.804819"
+     rx="9.615922"
+     ry="6.3501425" />
+  <rect
+     style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#b4b4b4;stroke-width:0.53450119;stroke-linecap:round;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+     id="rect4481"
+     width="3.5038869"
+     height="78.164062"
+     x="-181.36327"
+     y="777.53815"
+     rx="9.5035429"
+     ry="4.9412842"
+     transform="matrix(-0.1948782,0.9808275,0.8418831,0.53966,0,0)" />
+  <rect
+     style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#b4b4b4;stroke-width:2.06492805;stroke-linecap:round;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+     id="rect4469"
+     width="15.517658"
+     height="263.41678"
+     x="746.74207"
+     y="25.804819"
+     rx="9.615922"
+     ry="6.3501425" />
+  <rect
+     style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#b4b4b4;stroke-width:1.11410594;stroke-linecap:round;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+     id="rect4473"
+     width="5.5515437"
+     height="214.33786"
+     x="47.519623"
+     y="47.341705"
+     rx="9.5894327"
+     ry="6.3101144"
+     transform="matrix(0.9880498,-0.1541349,0.2664873,0.9638384,0,0)" />
+  <rect
+     style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#b4b4b4;stroke-width:3.1780405;stroke-linecap:round;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+     id="rect4471"
+     width="13.532172"
+     height="715.50238"
+     x="26.484396"
+     y="-762.0437"
+     rx="9.615922"
+     ry="6.3501425"
+     transform="matrix(0,1,-1,0,0,0)" />
+  <rect
+     style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#b4b4b4;stroke-width:1.11410594;stroke-linecap:round;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+     id="rect4475"
+     width="5.5515437"
+     height="214.33786"
+     x="-738.04315"
+     y="-76.595444"
+     rx="9.5894327"
+     ry="6.3101144"
+     transform="matrix(-0.9880498,-0.1541349,-0.2664873,0.9638384,0,0)" />
+  <rect
+     style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#b4b4b4;stroke-width:1.72603655;stroke-linecap:round;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+     id="rect4477"
+     width="4.9643812"
+     height="575.30023"
+     x="-257.24786"
+     y="-621.47113"
+     rx="8.1718636"
+     ry="6.3106852"
+     transform="matrix(-0.2778293,-0.9606305,-0.9999973,2.3156449e-3,0,0)" />
+  <path
+     style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.02980483px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+     d="M 77.014289,83.119944 L 735.90523,80.21739"
+     id="path4483" />
+  <path
+     style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.02541614px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+     d="M 88.610466,122.30439 L 722.05456,122.30439"
+     id="path4485" />
+  <path
+     style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.02660346px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+     d="M 100.83401,167.29397 L 709.7376,167.29397"
+     id="path4487" />
+  <path
+     style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.0274235px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+     d="M 112.062,207.92971 L 697.42105,207.92971"
+     id="path4489" />
+  <path
+     style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:0.84213573px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+     d="M 64.882079,136.55614 L 83.327699,122.21287"
+     id="path4491" />
+  <path
+     style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:0.91875952px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+     d="M 62.386889,192.53268 L 95.144626,169.918"
+     id="path4493" />
+  <path
+     style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:0.91854715px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+     d="M 63.381963,239.82376 L 106.65495,210.00458"
+     id="path4495" />
+  <path
+     style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.02980483px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+     d="M 72.588326,84.571218 L 63.471931,89.53306"
+     id="path4499" />
+  <path
+     style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.02980483px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+     d="M 107.80359,41.032925 L 166.30324,242.76035"
+     id="path4501" />
+  <path
+     style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.02980483px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+     d="M 189.39521,41.032925 L 235.57915,239.85779"
+     id="path4503" />
+  <path
+     style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.01558852px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+     d="M 290.99258,41.026025 L 320.25704,242.76725"
+     id="path4505" />
+  <path
+     style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.01932645px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+     d="M 417.24141,41.02784 L 406.45435,241.31414"
+     id="path4507" />
+  <path
+     style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.01369894px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+     d="M 535.78309,41.750744 L 508.05614,241.31687"
+     id="path4509" />
+  <path
+     style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.01884842px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+     d="M 657.39817,41.027607 L 605.04508,239.86311"
+     id="path4511" />
+  <path
+     style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.02980483px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+     d="M 737.44469,80.21739 L 748.22094,86.022496"
+     id="path4513" />
+  <path
+     style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:0.75150597px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+     d="M 727.29485,123.62059 L 746.05507,133.32407"
+     id="path4515" />
+  <path
+     style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.02980483px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+     d="M 713.19814,169.10807 L 746.68149,181.44392"
+     id="path4519" />
+  <path
+     style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.02980483px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+     d="M 702.42187,208.65535 L 745.91176,232.96424"
+     id="path4521" />
+  <path
+     sodipodi:type="arc"
+     style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#b4b4b4;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+     id="path4525"
+     sodipodi:cx="390.00815"
+     sodipodi:cy="420.44528"
+     sodipodi:rx="24.632093"
+     sodipodi:ry="10.263372"
+     d="M 414.64024,420.44528 A 24.632093,10.263372 0 1 1 365.37605,420.44528 A 24.632093,10.263372 0 1 1 414.64024,420.44528 z"
+     transform="matrix(0.801208,0,0,0.8228993,87.793865,89.856234)" />
+</svg>

Added: branches/gcomprixogoo/src/doubleclick-activity/resources/doubleclick/teen_tux.svg
==============================================================================
--- (empty file)
+++ branches/gcomprixogoo/src/doubleclick-activity/resources/doubleclick/teen_tux.svg	Sat May 10 16:48:20 2008
@@ -0,0 +1,1342 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Sodipodi ("http://www.sodipodi.com/";) -->
+<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="svg602"
+   sodipodi:version="0.32"
+   width="141.35524"
+   height="160.66397"
+   xml:space="preserve"
+   sodipodi:docbase="/home/franck/Dessins/Vectoriels/Animaux"
+   sodipodi:docname="teen_tux.svg"
+   inkscape:version="0.46"
+   inkscape:export-filename="/home/franck/teen_tux.png"
+   inkscape:export-xdpi="36.261902"
+   inkscape:export-ydpi="36.261902"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape"
+   version="1.0"
+   sodipodi:modified="true"><metadata
+     id="metadata7318"><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="defs604"><inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 253.88734 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="446.74988 : 253.88734 : 1"
+       inkscape:persp3d-origin="223.37494 : 169.25823 : 1"
+       id="perspective268" /><linearGradient
+       id="linearGradient863"><stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop864" /><stop
+         style="stop-color:#000000;stop-opacity:0;"
+         offset="1"
+         id="stop865" /></linearGradient><linearGradient
+       id="linearGradient716"><stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop717" /><stop
+         style="stop-color:#000000;stop-opacity:1;"
+         offset="1"
+         id="stop718" /></linearGradient><linearGradient
+       id="linearGradient738"><stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop739" /><stop
+         style="stop-color:#aadae5;stop-opacity:1;"
+         offset="1"
+         id="stop740" /></linearGradient><linearGradient
+       id="linearGradient688"><stop
+         style="stop-color:#ab7200;stop-opacity:1;"
+         offset="0"
+         id="stop689" /><stop
+         style="stop-color:#000000;stop-opacity:1;"
+         offset="1"
+         id="stop690" /></linearGradient><linearGradient
+       id="linearGradient635"><stop
+         style="stop-color:#ffed00;stop-opacity:1;"
+         offset="0"
+         id="stop636" /><stop
+         style="stop-color:#ca6d00;stop-opacity:1;"
+         offset="1"
+         id="stop637" /></linearGradient><linearGradient
+       id="linearGradient621"><stop
+         style="stop-color:#000;stop-opacity:1;"
+         offset="0"
+         id="stop622" /><stop
+         style="stop-color:#fff;stop-opacity:1;"
+         offset="1"
+         id="stop623" /></linearGradient><linearGradient
+       xlink:href="#linearGradient635"
+       id="linearGradient624"
+       x1="0.39273584"
+       y1="0.99219495"
+       x2="0.39285502"
+       y2="0.37499994"
+       spreadMethod="reflect" /><linearGradient
+       xlink:href="#linearGradient635"
+       id="linearGradient628"
+       x1="0.61744964"
+       y1="1.0929911"
+       x2="0.19798657"
+       y2="-0.48837268" /><radialGradient
+       xlink:href="#linearGradient635"
+       id="radialGradient629"
+       cx="0.043638851"
+       cy="0.50796098"
+       r="1.1210434"
+       fx="0.043638851"
+       fy="0.50796098"
+       gradientTransform="translate(6.098844e-7,1.225341e-6)" /><radialGradient
+       xlink:href="#linearGradient635"
+       id="radialGradient633"
+       cx="2.7225094e-06"
+       cy="0.50006461"
+       r="0.87587297"
+       fx="2.7225094e-06"
+       fy="0.50006461"
+       gradientTransform="translate(3.571768e-8,1.016935e-6)" /><radialGradient
+       xlink:href="#linearGradient635"
+       id="radialGradient634"
+       cx="0.40272298"
+       cy="0.53182161"
+       r="1.4208493"
+       fx="0.40272298"
+       fy="0.53182161" /><linearGradient
+       xlink:href="#linearGradient635"
+       id="linearGradient638"
+       x1="0.20220785"
+       y1="0.5078156"
+       x2="1.2169119"
+       y2="0.49218762" /><linearGradient
+       xlink:href="#linearGradient635"
+       id="linearGradient639"
+       x1="0.013438066"
+       y1="1.0434941"
+       x2="0.60067159"
+       y2="-0.2173906" /><linearGradient
+       xlink:href="#linearGradient635"
+       id="linearGradient640"
+       x1="0.026315417"
+       y1="0.96872169"
+       x2="1.2017543"
+       y2="-0.046875328" /><linearGradient
+       xlink:href="#linearGradient635"
+       id="linearGradient645"
+       x1="0.49328572"
+       y1="0.68763548"
+       x2="0.50335562"
+       y2="-0.2083268"
+       gradientTransform="translate(-1.736693e-8,1.12503e-6)" /><linearGradient
+       xlink:href="#linearGradient635"
+       id="linearGradient662"
+       x1="0.49999797"
+       y1="4.2856517"
+       x2="0.51006711"
+       y2="-0.57142854" /><linearGradient
+       xlink:href="#linearGradient688"
+       id="linearGradient663"
+       x1="0.79970354"
+       y1="0.015626904"
+       x2="0.099991366"
+       y2="0.984375"
+       gradientTransform="translate(-1.354258e-6,2.60932e-8)" /><linearGradient
+       xlink:href="#linearGradient688"
+       id="linearGradient664"
+       x1="1.2969635"
+       y1="0.070344955"
+       x2="-0.17187244"
+       y2="0.6640628" /><radialGradient
+       xlink:href="#linearGradient635"
+       id="radialGradient703"
+       cx="0.04363846"
+       cy="0.50796008"
+       r="1.1210434"
+       fx="0.04363846"
+       fy="0.50796008" /><linearGradient
+       xlink:href="#linearGradient738"
+       id="linearGradient737"
+       x1="0.47649938"
+       y1="0.81473005"
+       x2="0.5805366"
+       y2="0.79629445"
+       spreadMethod="reflect" /><linearGradient
+       xlink:href="#linearGradient635"
+       id="linearGradient693"
+       x1="0.0042525777"
+       y1="0.96091604"
+       x2="0.71120477"
+       y2="-0.039063033" /><radialGradient
+       xlink:href="#linearGradient716"
+       id="radialGradient715"
+       cx="398.81259"
+       cy="448.45496"
+       r="3.2000804"
+       fx="398.81259"
+       fy="448.45496"
+       gradientUnits="userSpaceOnUse" /><linearGradient
+       xlink:href="#linearGradient716"
+       id="linearGradient816"
+       x1="0.62363487"
+       y1="0.46874478"
+       x2="0.61797768"
+       y2="0.88281232" /><radialGradient
+       xlink:href="#linearGradient716"
+       id="radialGradient817"
+       cx="0.48727369"
+       cy="0.47593319"
+       r="0.71674091"
+       fx="0.48727369"
+       fy="0.47593319"
+       gradientTransform="translate(-7.996448e-8,-1.684752e-6)"
+       spreadMethod="reflect" /><linearGradient
+       xlink:href="#linearGradient621"
+       id="linearGradient839"
+       x1="0.2053477"
+       y1="0.59407485"
+       x2="1.6655757"
+       y2="0.55364496" /><linearGradient
+       xlink:href="#linearGradient716"
+       id="linearGradient851"
+       x1="0.46980006"
+       y1="-0.17842805"
+       x2="0.44630876"
+       y2="0.73214781"
+       gradientTransform="translate(2.988028e-8,1.287356e-6)" /><linearGradient
+       xlink:href="#linearGradient716"
+       id="linearGradient852"
+       x1="976.84369"
+       y1="107.62695"
+       x2="963.12238"
+       y2="131.2186"
+       gradientTransform="scale(0.681964,1.466353)"
+       gradientUnits="userSpaceOnUse" /><radialGradient
+       xlink:href="#linearGradient635"
+       id="radialGradient844"
+       cx="518.95081"
+       cy="255.83875"
+       r="35.748646"
+       fx="518.95081"
+       fy="255.83875"
+       gradientTransform="scale(1.071609,0.933176)"
+       gradientUnits="userSpaceOnUse" /><radialGradient
+       xlink:href="#linearGradient635"
+       id="radialGradient845"
+       cx="627.73273"
+       cy="238.98836"
+       r="32.21587"
+       fx="627.73273"
+       fy="238.98836"
+       gradientTransform="scale(1.029559,0.971289)"
+       gradientUnits="userSpaceOnUse" /><radialGradient
+       xlink:href="#linearGradient635"
+       id="radialGradient856"
+       cx="316.48978"
+       cy="612.65088"
+       r="19.19334"
+       fx="316.48978"
+       fy="612.65088"
+       gradientTransform="scale(1.324236,0.755152)"
+       gradientUnits="userSpaceOnUse" /><linearGradient
+       xlink:href="#linearGradient716"
+       id="linearGradient858"
+       x1="753.22681"
+       y1="119.42756"
+       x2="792.34631"
+       y2="164.06831"
+       gradientTransform="scale(0.695796,1.437203)"
+       gradientUnits="userSpaceOnUse" /><radialGradient
+       xlink:href="#linearGradient621"
+       id="radialGradient859"
+       cx="436.16489"
+       cy="467.00381"
+       r="375.85541"
+       fx="436.16489"
+       fy="467.00381"
+       gradientTransform="scale(0.869312,1.150335)"
+       gradientUnits="userSpaceOnUse" /><radialGradient
+       xlink:href="#linearGradient863"
+       id="radialGradient861"
+       cx="507.87173"
+       cy="129.27283"
+       r="10.994515"
+       fx="507.87173"
+       fy="129.27283"
+       gradientTransform="scale(1.213351,0.824164)"
+       gradientUnits="userSpaceOnUse" /><linearGradient
+       xlink:href="#linearGradient688"
+       id="linearGradient862"
+       x1="416.56958"
+       y1="195.51714"
+       x2="416.71439"
+       y2="191.44444"
+       gradientTransform="scale(1.448846,0.690205)"
+       gradientUnits="userSpaceOnUse" /><radialGradient
+       xlink:href="#linearGradient863"
+       id="radialGradient866"
+       gradientTransform="scale(0.935494,1.068954)"
+       cx="647.78204"
+       cy="173.57755"
+       fx="647.78204"
+       fy="173.57755"
+       r="37.421352"
+       gradientUnits="userSpaceOnUse" /><linearGradient
+       xlink:href="#linearGradient688"
+       id="linearGradient875"
+       x1="516.53217"
+       y1="157.80261"
+       x2="516.67694"
+       y2="153.73006"
+       gradientTransform="scale(1.166501,0.857265)"
+       gradientUnits="userSpaceOnUse" /><radialGradient
+       fy="1313.4293"
+       fx="121.25413"
+       r="94.423256"
+       cy="1313.4293"
+       cx="121.25413"
+       id="radialGradient792"
+       xlink:href="#linearGradient793"
+       gradientTransform="scale(1.843793,0.54236)"
+       gradientUnits="userSpaceOnUse" /><radialGradient
+       fy="838.19031"
+       fx="180.43095"
+       r="208.31294"
+       cy="838.19031"
+       cx="180.43095"
+       id="radialGradient791"
+       xlink:href="#linearGradient752"
+       gradientTransform="scale(1.086211,0.920631)"
+       gradientUnits="userSpaceOnUse" /><radialGradient
+       fy="194.15067"
+       fx="380.15894"
+       r="239.55167"
+       cy="194.15067"
+       cx="380.15894"
+       id="radialGradient790"
+       xlink:href="#linearGradient752"
+       gradientTransform="scale(0.960784,1.040816)"
+       gradientUnits="userSpaceOnUse" /><linearGradient
+       id="linearGradient777"
+       xlink:href="#linearGradient773"
+       gradientTransform="scale(0.456435,2.190892)"
+       x1="560.91315"
+       y1="222.59503"
+       x2="613.33484"
+       y2="222.59503"
+       gradientUnits="userSpaceOnUse" /><linearGradient
+       spreadMethod="reflect"
+       y2="330.97864"
+       x2="635.79547"
+       y1="332.25705"
+       x1="583.42834"
+       id="linearGradient776"
+       xlink:href="#linearGradient773"
+       gradientTransform="scale(0.435072,2.298471)"
+       gradientUnits="userSpaceOnUse" /><linearGradient
+       spreadMethod="reflect"
+       y2="391.93359"
+       x2="933.54626"
+       y1="411.24408"
+       x1="882.16602"
+       id="linearGradient772"
+       xlink:href="#linearGradient773"
+       gradientTransform="scale(0.524771,1.905592)"
+       gradientUnits="userSpaceOnUse" /><radialGradient
+       fy="701.71252"
+       fx="396.68253"
+       r="410.12088"
+       cy="701.71252"
+       cx="396.68253"
+       id="radialGradient771"
+       xlink:href="#linearGradient741"
+       gradientTransform="scale(0.939775,1.064084)"
+       gradientUnits="userSpaceOnUse" /><linearGradient
+       gradientTransform="scale(1.252535,0.798381)"
+       y2="627.12494"
+       x2="277.05493"
+       y1="627.12494"
+       x1="260.04443"
+       id="linearGradient766"
+       xlink:href="#linearGradient747"
+       gradientUnits="userSpaceOnUse" /><radialGradient
+       fy="1281.7985"
+       fx="301.28275"
+       r="54.085499"
+       cy="1281.7985"
+       cx="301.28275"
+       id="radialGradient757"
+       xlink:href="#linearGradient752"
+       gradientTransform="scale(1.473487,0.678662)"
+       gradientUnits="userSpaceOnUse" /><radialGradient
+       gradientTransform="scale(1.380778,0.724229)"
+       fy="734.93884"
+       fx="246.82065"
+       r="47.936661"
+       cy="734.93884"
+       cx="246.82065"
+       id="radialGradient751"
+       xlink:href="#linearGradient752"
+       gradientUnits="userSpaceOnUse" /><linearGradient
+       y2="482.06024"
+       x2="346.55405"
+       y1="482.06024"
+       x1="278.64069"
+       id="linearGradient746"
+       xlink:href="#linearGradient747"
+       gradientTransform="scale(0.991231,1.008847)"
+       gradientUnits="userSpaceOnUse" /><radialGradient
+       fy="519.74316"
+       fx="312.09265"
+       r="5.3116341"
+       cy="519.74316"
+       cx="312.09265"
+       id="radialGradient740"
+       xlink:href="#linearGradient741"
+       gradientUnits="userSpaceOnUse" /><linearGradient
+       y2="340.09332"
+       x2="847.4079"
+       y1="609.45142"
+       x1="599.00037"
+       id="linearGradient734"
+       xlink:href="#linearGradient726"
+       gradientTransform="scale(0.8458,1.182312)"
+       gradientUnits="userSpaceOnUse" /><radialGradient
+       fy="636.96069"
+       fx="447.3382"
+       r="1075.431"
+       cy="636.96069"
+       cx="447.3382"
+       id="radialGradient733"
+       xlink:href="#linearGradient726"
+       gradientTransform="scale(0.829746,1.205188)"
+       gradientUnits="userSpaceOnUse" /><linearGradient
+       y2="677.97052"
+       x2="401.52457"
+       y1="571.19098"
+       x1="286.49103"
+       id="linearGradient732"
+       xlink:href="#linearGradient726"
+       gradientTransform="scale(0.872485,1.146151)"
+       gradientUnits="userSpaceOnUse" /><radialGradient
+       gradientTransform="scale(1.464026,0.683048)"
+       fy="572.64862"
+       fx="228.26057"
+       r="146.71986"
+       cy="572.64862"
+       cx="228.26057"
+       id="radialGradient731"
+       xlink:href="#linearGradient726"
+       gradientUnits="userSpaceOnUse" /><linearGradient
+       y2="622.78149"
+       x2="300.31851"
+       y1="638.94238"
+       x1="113.77926"
+       id="linearGradient730"
+       xlink:href="#linearGradient726"
+       gradientTransform="scale(1.758904,0.568536)"
+       gradientUnits="userSpaceOnUse" /><linearGradient
+       y2="747.9173"
+       x2="248.83731"
+       y1="800.7193"
+       x1="135.55649"
+       id="linearGradient729"
+       xlink:href="#linearGradient726"
+       gradientTransform="scale(1.967748,0.508195)"
+       gradientUnits="userSpaceOnUse" /><linearGradient
+       id="linearGradient726"><stop
+         id="stop727"
+         offset="0"
+         style="stop-color:#000;stop-opacity:1;" /><stop
+         id="stop728"
+         offset="1"
+         style="stop-color:#fff;stop-opacity:1;" /></linearGradient><linearGradient
+       id="linearGradient741"><stop
+         id="stop742"
+         offset="0"
+         style="stop-color:#ffffff;stop-opacity:1;" /><stop
+         id="stop743"
+         offset="1"
+         style="stop-color:#000000;stop-opacity:1;" /></linearGradient><linearGradient
+       id="linearGradient747"><stop
+         id="stop748"
+         offset="0"
+         style="stop-color:#ffcd12;stop-opacity:1;" /><stop
+         id="stop749"
+         offset="1"
+         style="stop-color:#d29a3d;stop-opacity:1;" /></linearGradient><linearGradient
+       id="linearGradient752"><stop
+         id="stop753"
+         offset="0"
+         style="stop-color:#ffff00;stop-opacity:1;" /><stop
+         id="stop754"
+         offset="1"
+         style="stop-color:#ffa53d;stop-opacity:1;" /></linearGradient><linearGradient
+       id="linearGradient773"><stop
+         id="stop774"
+         offset="0"
+         style="stop-color:#9e2d1d;stop-opacity:1;" /><stop
+         id="stop775"
+         offset="1"
+         style="stop-color:#ea3f00;stop-opacity:1;" /></linearGradient><linearGradient
+       id="linearGradient793"><stop
+         id="stop794"
+         offset="0"
+         style="stop-color:#ffff00;stop-opacity:0.2902;" /><stop
+         id="stop795"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1;" /></linearGradient><radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient752"
+       id="radialGradient8172"
+       cx="201.39731"
+       cy="1318.2263"
+       fx="201.39731"
+       fy="1318.2263"
+       r="57.774055"
+       gradientTransform="scale(1.5179,0.658805)"
+       gradientUnits="userSpaceOnUse" /><radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient741"
+       id="radialGradient8174"
+       cx="312.09265"
+       cy="519.74316"
+       fx="312.09265"
+       fy="519.74316"
+       r="5.3116341"
+       gradientUnits="userSpaceOnUse" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient747"
+       id="linearGradient8176"
+       x1="278.64069"
+       y1="482.06024"
+       x2="346.55405"
+       y2="482.06024"
+       gradientTransform="scale(0.991231,1.008847)"
+       gradientUnits="userSpaceOnUse" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient726"
+       id="linearGradient8284"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.872485,0,0,1.146151,802.2407,275.3859)"
+       x1="286.49103"
+       y1="571.19098"
+       x2="401.52457"
+       y2="677.97052" /><radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient741"
+       id="radialGradient8291"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.939775,0,0,1.064084,913.9062,292.3049)"
+       cx="396.68253"
+       cy="701.71252"
+       fx="396.68253"
+       fy="701.71252"
+       r="410.12088" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient747"
+       id="linearGradient8294"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.252535,0,0,0.798381,913.9062,292.3049)"
+       x1="260.04443"
+       y1="627.12494"
+       x2="277.05493"
+       y2="627.12494" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient773"
+       id="linearGradient8297"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.456435,0,0,2.190892,913.9062,292.3049)"
+       x1="560.91315"
+       y1="222.59503"
+       x2="613.33484"
+       y2="222.59503" /><radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient752"
+       id="radialGradient8302"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.380778,0,0,0.724229,913.9062,292.3049)"
+       cx="246.82065"
+       cy="734.93884"
+       fx="246.82065"
+       fy="734.93884"
+       r="47.936661" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient726"
+       id="linearGradient8309"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.8458,0,0,1.182312,913.9062,292.3049)"
+       x1="599.00037"
+       y1="609.45142"
+       x2="847.4079"
+       y2="340.09332" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient773"
+       id="linearGradient8312"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.524771,0,0,1.905592,913.9062,292.3049)"
+       spreadMethod="reflect"
+       x1="882.16602"
+       y1="411.24408"
+       x2="933.54626"
+       y2="391.93359" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient726"
+       id="linearGradient8315"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.967748,0,0,0.508195,913.9062,292.3049)"
+       x1="135.55649"
+       y1="800.7193"
+       x2="248.83731"
+       y2="747.9173" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient726"
+       id="linearGradient8318"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.758904,0,0,0.568536,913.9062,292.3049)"
+       x1="113.77926"
+       y1="638.94238"
+       x2="300.31851"
+       y2="622.78149" /><radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient726"
+       id="radialGradient8322"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.44822,-0.21455,0.100099,0.675674,863.9213,386.8265)"
+       cx="228.26057"
+       cy="572.64862"
+       fx="228.26057"
+       fy="572.64862"
+       r="146.71986" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient773"
+       id="linearGradient8325"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.435072,0,0,2.298471,913.9062,292.3049)"
+       spreadMethod="reflect"
+       x1="583.42834"
+       y1="332.25705"
+       x2="635.79547"
+       y2="330.97864" /><radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient752"
+       id="radialGradient8329"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.473487,0,0,0.678662,913.9062,292.3049)"
+       cx="301.28275"
+       cy="1281.7985"
+       fx="301.28275"
+       fy="1281.7985"
+       r="54.085499" /><radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient752"
+       id="radialGradient8332"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.5179,0,0,0.658805,913.9062,292.3049)"
+       cx="201.39731"
+       cy="1318.2263"
+       fx="201.39731"
+       fy="1318.2263"
+       r="57.774055" /><radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient726"
+       id="radialGradient8335"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.829746,0,0,1.205188,913.9062,292.3049)"
+       cx="447.3382"
+       cy="636.96069"
+       fx="447.3382"
+       fy="636.96069"
+       r="1075.431" /><radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient726"
+       id="radialGradient8353"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.44822,-0.21455,0.100099,0.675674,863.9213,386.8265)"
+       cx="228.26057"
+       cy="572.64862"
+       fx="228.26057"
+       fy="572.64862"
+       r="146.71986" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient726"
+       id="linearGradient8355"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.758904,0,0,0.568536,913.9062,292.3049)"
+       x1="113.77926"
+       y1="638.94238"
+       x2="300.31851"
+       y2="622.78149" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient726"
+       id="linearGradient8357"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.967748,0,0,0.508195,913.9062,292.3049)"
+       x1="135.55649"
+       y1="800.7193"
+       x2="248.83731"
+       y2="747.9173" /><radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient741"
+       id="radialGradient8359"
+       gradientUnits="userSpaceOnUse"
+       cx="312.09265"
+       cy="519.74316"
+       fx="312.09265"
+       fy="519.74316"
+       r="5.3116341" /><radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient741"
+       id="radialGradient8361"
+       gradientUnits="userSpaceOnUse"
+       cx="312.09265"
+       cy="519.74316"
+       fx="312.09265"
+       fy="519.74316"
+       r="5.3116341" /><radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient752"
+       id="radialGradient8363"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.380778,0,0,0.724229,913.9062,292.3049)"
+       cx="246.82065"
+       cy="734.93884"
+       fx="246.82065"
+       fy="734.93884"
+       r="47.936661" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient747"
+       id="linearGradient8365"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="scale(0.991231,1.008847)"
+       x1="278.64069"
+       y1="482.06024"
+       x2="346.55405"
+       y2="482.06024" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient747"
+       id="linearGradient8367"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="scale(0.991231,1.008847)"
+       x1="278.64069"
+       y1="482.06024"
+       x2="346.55405"
+       y2="482.06024" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient773"
+       id="linearGradient8369"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.456435,0,0,2.190892,913.9062,292.3049)"
+       x1="560.91315"
+       y1="222.59503"
+       x2="613.33484"
+       y2="222.59503" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient747"
+       id="linearGradient8371"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.252535,0,0,0.798381,913.9062,292.3049)"
+       x1="260.04443"
+       y1="627.12494"
+       x2="277.05493"
+       y2="627.12494" /><radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient716"
+       id="radialGradient8373"
+       cx="398.81259"
+       cy="448.45496"
+       fx="398.81259"
+       fy="448.45496"
+       r="3.2000804"
+       gradientUnits="userSpaceOnUse" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient716"
+       id="linearGradient8376"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(2.045892,0,0,4.399059,-1434.675,-66.28949)"
+       x1="976.84369"
+       y1="107.62695"
+       x2="963.12238"
+       y2="131.2186" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient716"
+       id="linearGradient8391"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(2.087388,0,0,4.311609,-1434.675,-66.28949)"
+       x1="753.22681"
+       y1="119.42756"
+       x2="792.34631"
+       y2="164.06831" /><radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient716"
+       id="radialGradient8398"
+       gradientUnits="userSpaceOnUse"
+       cx="398.81259"
+       cy="448.45496"
+       fx="398.81259"
+       fy="448.45496"
+       r="3.2000804" /><radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient716"
+       id="radialGradient8400"
+       gradientUnits="userSpaceOnUse"
+       cx="398.81259"
+       cy="448.45496"
+       fx="398.81259"
+       fy="448.45496"
+       r="3.2000804" /><radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient635"
+       id="radialGradient8402"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="scale(1.324236,0.755152)"
+       cx="316.48978"
+       cy="612.65088"
+       fx="316.48978"
+       fy="612.65088"
+       r="19.19334" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient688"
+       id="linearGradient8404"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="scale(1.448846,0.690205)"
+       x1="416.56958"
+       y1="195.51714"
+       x2="416.71439"
+       y2="191.44444" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient688"
+       id="linearGradient8406"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="scale(1.166501,0.857265)"
+       x1="516.53217"
+       y1="157.80261"
+       x2="516.67694"
+       y2="153.73006" /><radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient621"
+       id="radialGradient8420"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="scale(0.869312,1.150335)"
+       cx="436.16489"
+       cy="467.00381"
+       fx="436.16489"
+       fy="467.00381"
+       r="375.85541" /><radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient863"
+       id="radialGradient8422"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="scale(1.213351,0.824164)"
+       cx="507.87173"
+       cy="129.27283"
+       fx="507.87173"
+       fy="129.27283"
+       r="10.994515" /><radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient863"
+       id="radialGradient8424"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="scale(0.935494,1.068954)"
+       cx="647.78204"
+       cy="173.57755"
+       fx="647.78204"
+       fy="173.57755"
+       r="37.421352" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient716"
+       id="linearGradient8426"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(2.087388,0,0,4.311609,-1434.675,-66.28949)"
+       x1="753.22681"
+       y1="119.42756"
+       x2="792.34631"
+       y2="164.06831" /><radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient635"
+       id="radialGradient8428"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="scale(1.029559,0.971289)"
+       cx="627.73273"
+       cy="238.98836"
+       fx="627.73273"
+       fy="238.98836"
+       r="32.21587" /><radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient635"
+       id="radialGradient8430"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="scale(1.071609,0.933176)"
+       cx="518.95081"
+       cy="255.83875"
+       fx="518.95081"
+       fy="255.83875"
+       r="35.748646" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient716"
+       id="linearGradient8432"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(2.045892,0,0,4.399059,-1434.675,-66.28949)"
+       x1="976.84369"
+       y1="107.62695"
+       x2="963.12238"
+       y2="131.2186" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient716"
+       id="linearGradient8435"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.942178,0,0,4.399059,-1334.708,-69.52118)"
+       x1="976.84369"
+       y1="107.62695"
+       x2="963.12238"
+       y2="131.2186" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient716"
+       id="linearGradient8441"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.98157,0,0,4.311609,-1362.985,-63.86572)"
+       x1="753.22681"
+       y1="119.42756"
+       x2="792.34631"
+       y2="164.06831" /><radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient621"
+       id="radialGradient8448"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="scale(0.869312,1.150335)"
+       cx="436.16489"
+       cy="467.00381"
+       fx="436.16489"
+       fy="467.00381"
+       r="375.85541" /><radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient863"
+       id="radialGradient8450"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="scale(1.213351,0.824164)"
+       cx="507.87173"
+       cy="129.27283"
+       fx="507.87173"
+       fy="129.27283"
+       r="10.994515" /><radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient863"
+       id="radialGradient8452"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="scale(0.935494,1.068954)"
+       cx="647.78204"
+       cy="173.57755"
+       fx="647.78204"
+       fy="173.57755"
+       r="37.421352" /><radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient863"
+       id="radialGradient8455"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(2.826134,0,0,3.206862,-1451.314,-67.09741)"
+       cx="647.78204"
+       cy="173.57755"
+       fx="647.78204"
+       fy="173.57755"
+       r="37.421352" /><radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient621"
+       id="radialGradient8460"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(2.475729,0,0,3.451005,-637.5003,-1015.629)"
+       cx="436.16489"
+       cy="467.00381"
+       fx="436.16489"
+       fy="467.00381"
+       r="375.85541" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient747"
+       id="linearGradient17741"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.246463,0.123191,-7.852313e-2,0.79451,97.88113,-203.9433)"
+       x1="260.04443"
+       y1="627.12494"
+       x2="277.05493"
+       y2="627.12494" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient773"
+       id="linearGradient17744"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.454222,4.489173e-2,-0.215481,2.180271,97.88113,-203.9433)"
+       x1="560.91315"
+       y1="222.59503"
+       x2="613.33484"
+       y2="222.59503" /><radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient752"
+       id="radialGradient17749"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.374084,0.135804,-7.123006e-2,0.720718,97.88113,-203.9433)"
+       cx="246.82065"
+       cy="734.93884"
+       fx="246.82065"
+       fy="734.93884"
+       r="47.936661" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient726"
+       id="linearGradient17756"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.958208,0.193534,-4.998248e-2,0.505731,97.88113,-203.9433)"
+       x1="135.55649"
+       y1="800.7193"
+       x2="248.83731"
+       y2="747.9173" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient726"
+       id="linearGradient17759"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.750377,0.172993,-5.591719e-2,0.56578,97.88113,-203.9433)"
+       x1="113.77926"
+       y1="638.94238"
+       x2="300.31851"
+       y2="622.78149" /><radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient726"
+       id="radialGradient17763"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.462301,-7.107315e-2,3.315919e-2,0.682243,38.84208,-114.7961)"
+       cx="228.26057"
+       cy="572.64862"
+       fx="228.26057"
+       fy="572.64862"
+       r="146.71986" /></defs><sodipodi:namedview
+     id="base"
+     inkscape:zoom="0.6188714"
+     inkscape:cx="278.37555"
+     inkscape:cy="316.16856"
+     inkscape:window-width="822"
+     inkscape:window-height="722"
+     inkscape:window-x="3"
+     inkscape:window-y="25"
+     inkscape:current-layer="svg602"
+     showgrid="false" /><g
+     id="g18394"
+     transform="matrix(0.316408,0,0,0.316408,-43.939804,-69.713481)"><path
+       sodipodi:nodetypes="csccsss"
+       id="path756"
+       d="M 376.54277,220.3452 C 314.68115,219.6294 278.3887,264.4884 288.18583,381.7065 C 291.73861,424.8687 80.359866,671.5008 328.60775,704.2779 L 419.5338,706.0497 C 587.04834,695.4192 555.86164,538.5801 550.08321,520.6917 C 533.0407,458.9403 476.47735,400.758 476.07864,367.611 C 475.69161,266.4066 440.75022,219.288 376.54277,220.3452 z"
+       style="font-size:12px;fill:url(#radialGradient8460);fill-rule:evenodd" /><path
+       transform="matrix(1.935345,0.9474,-0.897698,1.891647,-673.9044,-529.6322)"
+       sodipodi:ry="10.630493"
+       sodipodi:rx="15.650421"
+       sodipodi:cy="107.43024"
+       sodipodi:cx="615.68225"
+       d="M 631.33267,107.43024 A 15.650421,10.630493 0 1 1 600.03183,107.43024 A 15.650421,10.630493 0 1 1 631.33267,107.43024 z"
+       id="path860"
+       style="font-size:12px;fill:url(#radialGradient8450);fill-rule:evenodd"
+       sodipodi:type="arc" /><path
+       sodipodi:nodetypes="cssccscss"
+       id="path793"
+       d="M 478.16426,612.44281 C 448.69856,650.32471 407.62275,678.65971 341.50235,677.47471 C 274.11008,675.01441 252.87657,640.80601 256.37125,550.85821 C 258.45251,512.59261 261.95321,477.48682 275.05676,453.61522 C 281.85076,435.71152 308.96258,421.39861 321.7961,376.92208 C 342.81245,392.31829 377.9622,405.9445 385.20075,406.0357 C 398.97955,406.3309 420.06149,384.15658 431.18118,371.17978 C 445.7485,423.36821 470.41785,454.46502 478.23435,467.00695 C 520.51541,534.84886 484.71133,602.49691 478.16426,612.44281 z"
+       style="font-size:12px;fill:#f8f7f7;fill-rule:evenodd" /><path
+       sodipodi:nodetypes="cccccccccccccccccccccc"
+       id="path871"
+       d="M 357.08471,604.70806 C 357.08471,637.97776 354.97408,657.21431 351.03256,657.21431 C 347.09105,657.21431 346.41894,635.73552 346.41894,602.46582 C 346.41894,554.65442 360.74798,526.85922 363.07365,518.78 C 367.01516,518.78 358.70055,559.32043 357.08471,604.70806 z M 483.01667,485.27099 C 495.63301,496.42049 483.6255,506.324 486.77943,522.4847 C 465.15354,503.8181 422.67103,504.3963 408.13841,488.19989 C 427.75293,497.21114 476.52936,494.04059 483.01667,485.27099 z M 356.16097,484.92907 C 363.06125,491.28847 364.36221,500.6165 366.84729,508.8551 C 367.93425,501.0317 376.33516,491.8555 383.09889,485.9113 C 374.48117,487.3753 364.77869,485.97067 356.16097,484.92907 z M 275.98922,483.86016 C 269.00525,491.82696 271.60659,496.59194 263.14506,519.25124 C 280.98683,499.33214 312.11009,519.77188 344.07789,484.08899 C 316.2067,500.03718 282.47623,492.62946 275.98922,483.86016 z M 435.41575,369.53669 C 426.49531,395.66459 406.90172,418.27226 385.48943,418.27226 C 372.99756,
 418.27226 330.54133,403.35818 326.08081,377.23088 C 342.70873,393.50138 376.30804,403.04492 390.31706,403.59752 C 405.80878,403.98272 421.03726,384.61259 435.41575,369.53669 z"
+       style="font-size:12px;fill:url(#radialGradient8455);fill-rule:evenodd" /><path
+       style="font-size:12px;fill:url(#linearGradient8441);fill-rule:evenodd"
+       d="M 249.44396,548.14838 C 249.44396,609.92888 327.20778,611.14988 311.04386,633.70028 C 296.32582,655.86428 198.95604,597.15797 198.95604,535.37777 C 204.90249,488.63027 235.61195,430.40176 287.29224,393.11344 C 302.1291,382.40836 296.39425,424.51194 275.27233,454.28431 C 258.78552,477.52329 249.44396,517.25813 249.44396,548.14838 z"
+       id="path758"
+       sodipodi:nodetypes="cscssc" /><g
+       id="g1065"
+       transform="matrix(2.847918,0,0,3,-1334.436,-53.1644)"
+       style="font-size:12px"><path
+         style="font-size:12px;fill:url(#radialGradient8428);fill-rule:evenodd"
+         d="M 662.6023,249.8415 C 652.9563,254.7202 643.0236,269.4045 630.2927,263.3619 C 621.3526,259.2146 625.6634,249.1638 625.1563,243.5311 C 624.668,230.5505 623.5071,211.1312 631.9468,211.184 C 642.1547,211.246 638.0258,215.2545 645.4196,217.3441 C 653.505,219.306 658.7389,209.0467 664.847,213.6095 C 669.4787,219.944 664.6217,223.322 670.205,229.4906 C 673.1685,233.0602 677.7506,232.9839 680.3539,235.8973 C 685.7736,241.3478 668.3201,246.6544 662.6023,249.8415 z"
+         id="path842"
+         sodipodi:nodetypes="csssscsss"
+         transform="translate(-7.1875,-4.375031)" /><path
+         style="font-size:12px;fill:url(#radialGradient8430);fill-rule:evenodd"
+         d="M 550.8908,255.4014 C 562.5947,256.6532 574.367,267.8037 584.6032,256.5396 C 591.8317,248.7246 584.743,239.3914 580.5155,234.7902 C 570.7341,224.8274 565.2408,206.427 556.2229,206.4986 C 548.5882,206.8092 550.0632,210.9825 544.7009,215.234 C 537.4953,220.6488 532.9891,216.239 528.6392,223.1506 C 525.9871,226.8955 526.7585,231.7788 527.8864,236.9511 C 528.6785,241.8714 527.0976,242.9494 525.4163,244.55 C 519.9332,250.7329 540.853,254.0325 550.8908,255.4014 z"
+         id="path843"
+         sodipodi:nodetypes="cssssssss"
+         transform="translate(-7.1875,-4.375031)" /></g><path
+       style="font-size:12px;fill:url(#linearGradient8435);fill-rule:evenodd"
+       d="M 516.10935,519.22912 C 514.82095,592.92262 465.15098,593.22292 478.29526,618.56242 C 496.15285,654.24172 572.02651,586.82092 572.02651,525.04102 C 572.02651,464.51272 486.06005,395.3691 477.31808,400.956 C 422.7907,443.6787 518.37202,457.84252 516.10935,519.22912 z"
+       id="path857"
+       sodipodi:nodetypes="cscss" /><path
+       transform="matrix(0.877458,-4.83359e-2,5.500371e-2,0.998486,59.33467,-168.8019)"
+       sodipodi:ry="22.132584"
+       sodipodi:rx="19.739868"
+       sodipodi:cy="514.60022"
+       sodipodi:cx="305.66895"
+       d="M 325.40881,514.60022 A 19.739868,22.132584 0 1 1 285.92908,514.60022 A 19.739868,22.132584 0 1 1 325.40881,514.60022 z"
+       id="path737"
+       style="fill:#fafafa;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       sodipodi:type="arc" /><path
+       transform="matrix(0.871818,0.110465,-0.1257,0.992068,202.2596,-215.2858)"
+       sodipodi:ry="22.132584"
+       sodipodi:rx="19.739868"
+       sodipodi:cy="514.60022"
+       sodipodi:cx="305.66895"
+       d="M 325.40881,514.60022 A 19.739868,22.132584 0 1 1 285.92908,514.60022 A 19.739868,22.132584 0 1 1 325.40881,514.60022 z"
+       id="path738"
+       style="fill:#fafafa;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       sodipodi:type="arc" /><path
+       transform="matrix(0.995152,9.835295e-2,-9.835295e-2,0.995152,99.30707,-206.2069)"
+       sodipodi:ry="11.365356"
+       sodipodi:rx="11.365372"
+       sodipodi:cy="519.38562"
+       sodipodi:cx="311.6507"
+       d="M 323.01607,519.38562 A 11.365372,11.365356 0 1 1 300.28532,519.38562 A 11.365372,11.365356 0 1 1 323.01607,519.38562 z"
+       id="path739"
+       style="fill:url(#radialGradient8359);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       sodipodi:type="arc" /><path
+       transform="matrix(0.995152,9.835295e-2,-9.835295e-2,0.995152,143.9459,-207.806)"
+       sodipodi:ry="11.365356"
+       sodipodi:rx="11.365372"
+       sodipodi:cy="519.38562"
+       sodipodi:cx="311.6507"
+       d="M 323.01607,519.38562 A 11.365372,11.365356 0 1 1 300.28532,519.38562 A 11.365372,11.365356 0 1 1 323.01607,519.38562 z"
+       id="path744"
+       style="fill:url(#radialGradient8361);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       sodipodi:type="arc" /><path
+       sodipodi:nodetypes="cssssss"
+       id="path736"
+       d="M 445.23466,363.89191 C 448.41529,379.10129 422.52399,398.33466 395.82636,405.51268 C 375.64095,411.37762 319.80457,387.33307 320.36137,371.65069 C 321.0052,355.64088 345.56394,352.30644 360.13978,350.57421 C 372.81878,350.09923 365.72739,343.02778 383.11496,340.9662 C 398.23904,340.34961 390.82452,351.06472 402.94727,350.60852 C 415.98137,348.93193 444.63138,349.58883 445.23466,363.89191 z"
+       style="font-size:12px;fill:url(#radialGradient17749);fill-rule:evenodd;stroke-width:1" /><path
+       transform="matrix(0.995152,9.835295e-2,-9.835295e-2,0.995152,88.34279,-216.9079)"
+       sodipodi:ry="30.50708"
+       sodipodi:rx="29.908905"
+       sodipodi:cy="520.58197"
+       sodipodi:cx="309.85617"
+       d="M 339.76508,520.58197 A 29.908905,30.50708 0 1 1 279.94727,520.58197 A 29.908905,30.50708 0 1 1 339.76508,520.58197 z"
+       id="path745"
+       style="fill:none;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient8365);stroke-width:7.5;stroke-linecap:round;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1"
+       sodipodi:type="arc" /><path
+       transform="matrix(0.995152,9.835295e-2,-9.835295e-2,0.995152,160.8352,-220.563)"
+       sodipodi:ry="30.50708"
+       sodipodi:rx="29.908905"
+       sodipodi:cy="520.58197"
+       sodipodi:cx="309.85617"
+       d="M 339.76508,520.58197 A 29.908905,30.50708 0 1 1 279.94727,520.58197 A 29.908905,30.50708 0 1 1 339.76508,520.58197 z"
+       id="path750"
+       style="fill:none;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient8367);stroke-width:7.5;stroke-linecap:round;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1"
+       sodipodi:type="arc" /><path
+       sodipodi:nodetypes="cc"
+       id="path765"
+       d="M 375.10746,336.89791 C 374.81773,329.45352 390.64157,327.71682 389.74861,337.53892"
+       style="fill:none;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient17741);stroke-width:6.62500286;stroke-linecap:round;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1" /><path
+       sodipodi:nodetypes="csscc"
+       id="path778"
+       d="M 327.74555,371.34597 C 332.51537,372.15944 335.5138,379.33674 339.01059,383.23767 C 345.30667,390.8668 379.15053,401.27461 388.33898,401.37631 C 401.9725,401.5795 415.24078,391.32113 432.26682,384.05867 C 434.53648,383.32092 439.87285,372.40012 442.45734,371.56074"
+       style="fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000038pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" /></g><g
+     id="g780"
+     transform="translate(775.03549,71.9771)"><Board
+       type="python:connect4"
+       section="/boards/."
+       name="connect4"
+       icon="boardicons/python.png"
+       difficulty="2"
+       boarddir="connect4"
+       author="Laurent Lacheny (laurent lacheny wanadoo fr)"
+       id="Board781"><title
+         id="title7796">Connect 4</title><title
+         xml:lang="cs"
+         id="title7798">Spojit 4</title><title
+         xml:lang="en_CA"
+         id="title7800">Connect 4</title><description
+         id="description7802">Arrange four coins in a row</description><description
+         xml:lang="cs"
+         id="description7804">UspoÅÃdat ÄtyÅi mince do Åady</description><description
+         xml:lang="en_CA"
+         id="description7806">Arrange four coins in a row</description><prerequisite
+         id="prerequisite7808">Mouse manipulation</prerequisite><prerequisite
+         xml:lang="ar"
+         id="prerequisite7810">ØØØØÙØÙ ØÙÙØØØ</prerequisite><prerequisite
+         xml:lang="bg"
+         id="prerequisite7812">ÐÐÐÑÐÑÐÐ Ñ ÐÐÑÐÐÑÐ</prerequisite><prerequisite
+         xml:lang="ca"
+         id="prerequisite7814">Manipulacià del ratolÃ</prerequisite><prerequisite
+         xml:lang="cs"
+         id="prerequisite7816">Manipulace s myÅÃ</prerequisite><prerequisite
+         xml:lang="da"
+         id="prerequisite7818">Brug af mus</prerequisite><prerequisite
+         xml:lang="de"
+         id="prerequisite7820">Maus-Handhabung</prerequisite><prerequisite
+         xml:lang="en_CA"
+         id="prerequisite7822">Mouse manipulation</prerequisite><prerequisite
+         xml:lang="en_GB"
+         id="prerequisite7824">Mouse manipulation</prerequisite><prerequisite
+         xml:lang="es"
+         id="prerequisite7826">ManipulaciÃn del ratÃn</prerequisite><prerequisite
+         xml:lang="et"
+         id="prerequisite7828">Hiire tundmine</prerequisite><prerequisite
+         xml:lang="fi"
+         id="prerequisite7830">Hiiren kÃyttÃÃ</prerequisite><prerequisite
+         xml:lang="fr"
+         id="prerequisite7832">Manipulation de la souris</prerequisite><prerequisite
+         xml:lang="gu"
+         id="prerequisite7834">àààà àààààààà ààààà</prerequisite><prerequisite
+         xml:lang="hr"
+         id="prerequisite7836">Upravljanje miÅem</prerequisite><prerequisite
+         xml:lang="hu"
+         id="prerequisite7838">EgÃrkezelÃs</prerequisite><prerequisite
+         xml:lang="it"
+         id="prerequisite7840">Utilizzo del mouse</prerequisite><prerequisite
+         xml:lang="lt"
+         id="prerequisite7842">MokÄti naudotis pele</prerequisite><prerequisite
+         xml:lang="mk"
+         id="prerequisite7844">ÐÐÐÐÑÐ ÑÐ ÐÐÑÐÑÐ</prerequisite><prerequisite
+         xml:lang="ms"
+         id="prerequisite7846">Manipulasi tetikus</prerequisite><prerequisite
+         xml:lang="nb"
+         id="prerequisite7848">Bruk av mus</prerequisite><prerequisite
+         xml:lang="nl"
+         id="prerequisite7850">Omgaan met de muis</prerequisite><prerequisite
+         xml:lang="nn"
+         id="prerequisite7852">Du mà kunna bruka musa.</prerequisite><prerequisite
+         xml:lang="pl"
+         id="prerequisite7854">PosÅugiwanie siÄ myszkÄ</prerequisite><prerequisite
+         xml:lang="pt"
+         id="prerequisite7856">Manipular o rato</prerequisite><prerequisite
+         xml:lang="pt_BR"
+         id="prerequisite7858">ManipulaÃÃo do Mouse</prerequisite><prerequisite
+         xml:lang="ro"
+         id="prerequisite7860">Folosirea mausului</prerequisite><prerequisite
+         xml:lang="ru"
+         id="prerequisite7862">ÐÐÐÐÑÐ Ñ ÐÑÑÑÑ.</prerequisite><prerequisite
+         xml:lang="sk"
+         id="prerequisite7864">ManipulÃcia s myÅou</prerequisite><prerequisite
+         xml:lang="sl"
+         id="prerequisite7866">Ravnanje z miÅko</prerequisite><prerequisite
+         xml:lang="sr"
+         id="prerequisite7868">ÐÐÑÐÑÐÑÐ ÐÐÑÐÐ</prerequisite><prerequisite
+         xml:lang="sr Latn"
+         id="prerequisite7870">Baratanje miÅem</prerequisite><prerequisite
+         xml:lang="sv"
+         id="prerequisite7872">Musmanipulering</prerequisite><prerequisite
+         xml:lang="tr"
+         id="prerequisite7874">Fare iÅlemleri</prerequisite><prerequisite
+         xml:lang="zh_CN"
+         id="prerequisite7876">éææç</prerequisite><goal
+         id="goal7878">Create a line of 4 pieces either horizontaly or vertically</goal><goal
+         xml:lang="cs"
+         id="goal7880">VytvoÅit Åadu 4 kamenÅ buÄ vodorovnÄ nebo svisle</goal><goal
+         xml:lang="en_CA"
+         id="goal7882">Create a line of 4 pieces either horizontally or vertically</goal><manual
+         id="manual7884">Click anywhere in the line in which you want to drop a piece</manual><manual
+         xml:lang="cs"
+         id="manual7886">Klikni kdekoli ve sloupci, kde chceÅ pustit kÃmen</manual><manual
+         xml:lang="en_CA"
+         id="manual7888">Click anywhere in the line in which you want to drop a piece</manual><credit
+         id="credit7890">Laurent Lacheny. Images and Artificial Intelligence taken from project 4stattack by Jeroen Vloothuis. The original project can be found on http://forcedattack.sourceforge.net</credit><credit
+         xml:lang="cs"
+         id="credit7892">Laurent Lacheny. ObrÃzky a umÄlà inteligence pÅevzaty z projektu 4stattack od Jeroen Vloothuis. PÅvodnà projekt najdete na http://forcedattack.sourceforge.net</credit><credit
+         xml:lang="en_CA"
+         id="credit7894">Laurent Lacheny. Images and Artificial Intelligence taken from project 4stattack by Jeroen Vloothuis. The original project can be found on http://forcedattack.sourceforge.net</credit></Board></g><g
+     id="g782"
+     transform="translate(775.03549,71.9771)"><Board
+       type="python:connect4"
+       section="/boards/."
+       name="connect4"
+       icon="boardicons/python.png"
+       difficulty="2"
+       boarddir="connect4"
+       author="Laurent Lacheny (laurent lacheny wanadoo fr)"
+       id="Board783"><title
+         id="title7898">Connect 4</title><title
+         xml:lang="cs"
+         id="title7900">Spojit 4</title><title
+         xml:lang="en_CA"
+         id="title7902">Connect 4</title><description
+         id="description7904">Arrange four coins in a row</description><description
+         xml:lang="cs"
+         id="description7906">UspoÅÃdat ÄtyÅi mince do Åady</description><description
+         xml:lang="en_CA"
+         id="description7908">Arrange four coins in a row</description><prerequisite
+         id="prerequisite7910">Mouse manipulation</prerequisite><prerequisite
+         xml:lang="ar"
+         id="prerequisite7912">ØØØØÙØÙ ØÙÙØØØ</prerequisite><prerequisite
+         xml:lang="bg"
+         id="prerequisite7914">ÐÐÐÑÐÑÐÐ Ñ ÐÐÑÐÐÑÐ</prerequisite><prerequisite
+         xml:lang="ca"
+         id="prerequisite7916">Manipulacià del ratolÃ</prerequisite><prerequisite
+         xml:lang="cs"
+         id="prerequisite7918">Manipulace s myÅÃ</prerequisite><prerequisite
+         xml:lang="da"
+         id="prerequisite7920">Brug af mus</prerequisite><prerequisite
+         xml:lang="de"
+         id="prerequisite7922">Maus-Handhabung</prerequisite><prerequisite
+         xml:lang="en_CA"
+         id="prerequisite7924">Mouse manipulation</prerequisite><prerequisite
+         xml:lang="en_GB"
+         id="prerequisite7926">Mouse manipulation</prerequisite><prerequisite
+         xml:lang="es"
+         id="prerequisite7928">ManipulaciÃn del ratÃn</prerequisite><prerequisite
+         xml:lang="et"
+         id="prerequisite7930">Hiire tundmine</prerequisite><prerequisite
+         xml:lang="fi"
+         id="prerequisite7932">Hiiren kÃyttÃÃ</prerequisite><prerequisite
+         xml:lang="fr"
+         id="prerequisite7934">Manipulation de la souris</prerequisite><prerequisite
+         xml:lang="gu"
+         id="prerequisite7936">àààà àààààààà ààààà</prerequisite><prerequisite
+         xml:lang="hr"
+         id="prerequisite7938">Upravljanje miÅem</prerequisite><prerequisite
+         xml:lang="hu"
+         id="prerequisite7940">EgÃrkezelÃs</prerequisite><prerequisite
+         xml:lang="it"
+         id="prerequisite7942">Utilizzo del mouse</prerequisite><prerequisite
+         xml:lang="lt"
+         id="prerequisite7944">MokÄti naudotis pele</prerequisite><prerequisite
+         xml:lang="mk"
+         id="prerequisite7946">ÐÐÐÐÑÐ ÑÐ ÐÐÑÐÑÐ</prerequisite><prerequisite
+         xml:lang="ms"
+         id="prerequisite7948">Manipulasi tetikus</prerequisite><prerequisite
+         xml:lang="nb"
+         id="prerequisite7950">Bruk av mus</prerequisite><prerequisite
+         xml:lang="nl"
+         id="prerequisite7952">Omgaan met de muis</prerequisite><prerequisite
+         xml:lang="nn"
+         id="prerequisite7954">Du mà kunna bruka musa.</prerequisite><prerequisite
+         xml:lang="pl"
+         id="prerequisite7956">PosÅugiwanie siÄ myszkÄ</prerequisite><prerequisite
+         xml:lang="pt"
+         id="prerequisite7958">Manipular o rato</prerequisite><prerequisite
+         xml:lang="pt_BR"
+         id="prerequisite7960">ManipulaÃÃo do Mouse</prerequisite><prerequisite
+         xml:lang="ro"
+         id="prerequisite7962">Folosirea mausului</prerequisite><prerequisite
+         xml:lang="ru"
+         id="prerequisite7964">ÐÐÐÐÑÐ Ñ ÐÑÑÑÑ.</prerequisite><prerequisite
+         xml:lang="sk"
+         id="prerequisite7966">ManipulÃcia s myÅou</prerequisite><prerequisite
+         xml:lang="sl"
+         id="prerequisite7968">Ravnanje z miÅko</prerequisite><prerequisite
+         xml:lang="sr"
+         id="prerequisite7970">ÐÐÑÐÑÐÑÐ ÐÐÑÐÐ</prerequisite><prerequisite
+         xml:lang="sr Latn"
+         id="prerequisite7972">Baratanje miÅem</prerequisite><prerequisite
+         xml:lang="sv"
+         id="prerequisite7974">Musmanipulering</prerequisite><prerequisite
+         xml:lang="tr"
+         id="prerequisite7976">Fare iÅlemleri</prerequisite><prerequisite
+         xml:lang="zh_CN"
+         id="prerequisite7978">éææç</prerequisite><goal
+         id="goal7980">Create a line of 4 pieces either horizontaly or vertically</goal><goal
+         xml:lang="cs"
+         id="goal7982">VytvoÅit Åadu 4 kamenÅ buÄ vodorovnÄ nebo svisle</goal><goal
+         xml:lang="en_CA"
+         id="goal7984">Create a line of 4 pieces either horizontally or vertically</goal><manual
+         id="manual7986">Click anywhere in the line in which you want to drop a piece</manual><manual
+         xml:lang="cs"
+         id="manual7988">Klikni kdekoli ve sloupci, kde chceÅ pustit kÃmen</manual><manual
+         xml:lang="en_CA"
+         id="manual7990">Click anywhere in the line in which you want to drop a piece</manual><credit
+         id="credit7992">Laurent Lacheny. Images and Artificial Intelligence taken from project 4stattack by Jeroen Vloothuis. The original project can be found on http://forcedattack.sourceforge.net</credit><credit
+         xml:lang="cs"
+         id="credit7994">Laurent Lacheny. ObrÃzky a umÄlà inteligence pÅevzaty z projektu 4stattack od Jeroen Vloothuis. PÅvodnà projekt najdete na http://forcedattack.sourceforge.net</credit><credit
+         xml:lang="en_CA"
+         id="credit7996">Laurent Lacheny. Images and Artificial Intelligence taken from project 4stattack by Jeroen Vloothuis. The original project can be found on http://forcedattack.sourceforge.net</credit></Board></g></svg>
\ No newline at end of file



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]