mldonkey: Drop app not available in Debian Bullseye and Bookworm

Closes: #2157.

Original author of the app J. Carlos Romero <juancarlos.romero@gmail.com> has
been contacted to see if there is interest in continuing to maintain the app.
There has been no response.

Since the app is not available even in the current stable (Bullseye), few users
are presumably using it on a supported FreedomBox distribution. Any users are
advised to maintain the manually instead of relying on FreedomBox for it.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
This commit is contained in:
Sunil Mohan Adapa 2022-01-18 14:34:19 -08:00 committed by James Valleroy
parent e7399a4d8e
commit 668da20a02
No known key found for this signature in database
GPG Key ID: 77C0C75E7B650808
16 changed files with 4 additions and 1163 deletions

View File

@ -1,40 +0,0 @@
#!/usr/bin/python3
# -*- mode: python -*-
# SPDX-License-Identifier: AGPL-3.0-or-later
"""
Configuration helper for mldonkey.
"""
import argparse
from plinth import action_utils
def parse_arguments():
"""Return parsed command line arguments as dictionary."""
parser = argparse.ArgumentParser()
subparsers = parser.add_subparsers(dest='subcommand', help='Sub command')
subparsers.add_parser('pre-install', help='Perform pre-install operations')
subparsers.required = True
return parser.parse_args()
def subcommand_pre_install(_):
"""Preseed debconf values before packages are installed."""
action_utils.debconf_set_selections(
['mldonkey-server mldonkey-server/launch_at_startup boolean true'])
def main():
"""Parse arguments and perform all duties."""
arguments = parse_arguments()
subcommand = arguments.subcommand.replace('-', '_')
subcommand_method = globals()['subcommand_' + subcommand]
subcommand_method(arguments)
if __name__ == '__main__':
main()

1
debian/copyright vendored
View File

@ -7,7 +7,6 @@ License: AGPL-3+
Files: static/themes/default/icons/jsxc.png
static/themes/default/icons/jsxc.svg
static/themes/default/icons/mldonkey.svg
Copyright: 2011-2019 FreedomBox Authors
License: AGPL-3+

View File

@ -16,3 +16,4 @@ rm_conffile /etc/plinth/modules-enabled/coquelicot 20.14~
rm_conffile /etc/plinth/modules-enabled/diaspora 21.16~
rm_conffile /etc/plinth/modules-enabled/monkeysphere 21.16~
rm_conffile /etc/plinth/modules-enabled/tahoe 21.16~
rm_conffile /etc/plinth/modules-enabled/mldonkey 22.4~

View File

@ -109,8 +109,8 @@ MANUAL_PAGES = ('Apache_userdir', 'APU', 'Backups', 'BananaPro', 'BeagleBone',
'freedombox-manual', 'GettingHelp', 'GitWeb', 'Hardware',
'I2P', 'Ikiwiki', 'Infinoted', 'Introduction', 'JSXC',
'LetsEncrypt', 'Maker', 'MatrixSynapse', 'MediaWiki',
'Minetest', 'MiniDLNA', 'MLDonkey', 'Mumble', 'NameServices',
'Networks', 'OpenVPN', 'OrangePiZero', 'PageKite', 'pcDuino3',
'Minetest', 'MiniDLNA', 'Mumble', 'NameServices', 'Networks',
'OpenVPN', 'OrangePiZero', 'PageKite', 'pcDuino3',
'Performance', 'PineA64+', 'PioneerEdition', 'Plinth', 'Power',
'Privoxy', 'Quassel', 'QuickStart', 'Radicale', 'RaspberryPi2',
'RaspberryPi3B+', 'RaspberryPi3B', 'RaspberryPi4B',

View File

@ -1,107 +0,0 @@
# SPDX-License-Identifier: AGPL-3.0-or-later
"""
FreedomBox app for mldonkey.
"""
from django.utils.translation import gettext_lazy as _
from plinth import actions
from plinth import app as app_module
from plinth import cfg, frontpage, menu
from plinth.daemon import Daemon
from plinth.modules.apache.components import Webserver
from plinth.modules.backups.components import BackupRestore
from plinth.modules.firewall.components import Firewall
from plinth.modules.users import add_user_to_share_group
from plinth.modules.users.components import UsersAndGroups
from plinth.package import Packages
from plinth.utils import format_lazy
from . import manifest
_description = [
_('MLDonkey is a peer-to-peer file sharing application used to exchange '
'large files. It can participate in multiple peer-to-peer networks '
'including eDonkey, Kademlia, Overnet, BitTorrent and DirectConnect.'),
_('Users belonging to admin and ed2k group can control it through the web '
'interface. Users in the admin group can also control it through any of '
'the separate mobile or desktop front-ends or a telnet interface. See '
'manual.'),
format_lazy(
_('On {box_name}, downloaded files can be found in /var/lib/mldonkey/ '
'directory.'), box_name=cfg.box_name)
]
_SYSTEM_USER = 'mldonkey'
app = None
class MLDonkeyApp(app_module.App):
"""FreedomBox app for MLDonkey."""
app_id = 'mldonkey'
_version = 2
DAEMON = 'mldonkey-server'
def __init__(self):
"""Create components for the app."""
super().__init__()
groups = {'ed2k': _('Download files using eDonkey applications')}
info = app_module.Info(
app_id=self.app_id, version=self._version, name=_('MLDonkey'),
icon_filename='mldonkey',
short_description=_('Peer-to-peer File Sharing'),
description=_description, manual_page='MLDonkey',
clients=manifest.clients)
self.add(info)
menu_item = menu.Menu('menu-mldonkey', info.name,
info.short_description, info.icon_filename,
'mldonkey:index', parent_url_name='apps')
self.add(menu_item)
shortcuts = frontpage.Shortcut(
'shortcut-mldonkey', info.name,
short_description=info.short_description, icon=info.icon_filename,
url='/mldonkey/', login_required=True, clients=info.clients,
allowed_groups=list(groups))
self.add(shortcuts)
packages = Packages('packages-mldonkey', ['mldonkey-server'])
self.add(packages)
firewall = Firewall('firewall-mldonkey', info.name,
ports=['http', 'https'], is_external=True)
self.add(firewall)
webserver = Webserver('webserver-mldonkey', 'mldonkey-freedombox',
urls=['https://{host}/mldonkey/'])
self.add(webserver)
daemon = Daemon('daemon-mldonkey', self.DAEMON,
listen_ports=[(4080, 'tcp4')])
self.add(daemon)
users_and_groups = UsersAndGroups('users-and-groups-mldonkey',
reserved_usernames=[_SYSTEM_USER],
groups=groups)
self.add(users_and_groups)
backup_restore = BackupRestore('backup-restore-mldonkey',
**manifest.backup)
self.add(backup_restore)
def setup(helper, old_version=None):
"""Install and configure the module."""
helper.call('pre', actions.superuser_run, 'mldonkey', ['pre-install'])
app.setup(old_version)
if not old_version:
helper.call('post', app.enable)
add_user_to_share_group(_SYSTEM_USER, MLDonkeyApp.DAEMON)

View File

@ -1,21 +0,0 @@
##
## On all sites, provide mldonkey web interface on a path: /mldonkey
##
# Redirect /mldonkey to /mldonkey/ as the MLdonkey server web interface does not
# work without a slash at the end.
<Location ~ ^/mldonkey$>
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_URI} ^/mldonkey$
RewriteRule .* /mldonkey/ [R=301,L]
</IfModule>
</Location>
<Location /mldonkey/>
Include includes/freedombox-single-sign-on.conf
ProxyPass http://localhost:4080/
<IfModule mod_auth_pubtkt.c>
TKTAuthToken "admin" "ed2k"
</IfModule>
</Location>

View File

@ -1 +0,0 @@
plinth.modules.mldonkey

View File

@ -1,35 +0,0 @@
[Unit]
Description=MLDonkey: Multi-protocol, peer-to-peer file sharing server
After=syslog.target network.target nslcd.service
ConditionPathExists=/var/lib/mldonkey/downloads.ini
Documentation=man:mlnet(1) http://mldonkey.sourceforge.net/Main_Page
[Service]
ExecStart=
ExecStart=/usr/bin/mlnet
ExecStop=
Group=mldonkey
IgnoreSIGPIPE=yes
KillMode=control-group
LockPersonality=yes
NoNewPrivileges=yes
PrivateDevices=yes
PrivateMounts=yes
PrivateTmp=yes
ProtectControlGroups=yes
ProtectHome=yes
ProtectKernelLogs=yes
ProtectKernelModules=yes
ProtectKernelTunables=yes
ProtectSystem=full
RemainAfterExit=no
RestrictAddressFamilies=AF_UNIX AF_INET AF_INET6
RestrictRealtime=yes
StateDirectory=mldonkey
SystemCallArchitectures=native
Type=simple
User=mldonkey
WorkingDirectory=/var/lib/mldonkey
[Install]
WantedBy=multi-user.target

View File

@ -1,57 +0,0 @@
# SPDX-License-Identifier: AGPL-3.0-or-later
"""
Application manifest for mldonkey.
"""
from django.utils.translation import gettext_lazy as _
from plinth.clients import store_url
clients = [{
'name': _('MLDonkey'),
'platforms': [{
'type': 'web',
'url': '/mldonkey/'
}]
}, {
'name':
_('KMLDonkey'),
'platforms': [{
'type': 'download',
'os': 'gnu-linux',
'url': 'https://www.kde.org/applications/internet/kmldonkey/'
}, {
'type': 'package',
'format': 'deb',
'name': 'kmldonkey',
}]
}, {
'name':
_('AMLDonkey'),
'platforms': [{
'type': 'store',
'os': 'android',
'store_name': 'google-play',
'url': store_url('google-play', 'com.devwom.amldonkey'),
}]
}]
backup = {
'config': {
'files': [
'/var/lib/mldonkey/bittorrent.ini', '/var/lib/mldonkey/bt_dht.ini',
'/var/lib/mldonkey/directconnect.ini',
'/var/lib/mldonkey/donkey.ini', '/var/lib/mldonkey/downloads.ini',
'/var/lib/mldonkey/files.ini',
'/var/lib/mldonkey/file_sources.ini',
'/var/lib/mldonkey/fileTP.ini', '/var/lib/mldonkey/friends.ini',
'/var/lib/mldonkey/searches.ini', '/var/lib/mldonkey/servers.ini',
'/var/lib/mldonkey/shared_files.ini',
'/var/lib/mldonkey/shared_files_new.ini',
'/var/lib/mldonkey/statistics.ini',
'/var/lib/mldonkey/stats_bt.ini', '/var/lib/mldonkey/stats.ini',
'/var/lib/mldonkey/stats_mod.ini', '/var/lib/mldonkey/users.ini'
]
},
'services': ['mldonkey-server']
}

View File

@ -1,73 +0,0 @@
# SPDX-License-Identifier: AGPL-3.0-or-later
"""
Functional, browser based tests for mldonkey app.
"""
import pytest
from plinth.tests import functional
pytestmark = [
pytest.mark.apps, pytest.mark.mldonkey, pytest.mark.sso, pytest.mark.skip
]
class TestMldonkeyApp(functional.BaseAppTests):
app_name = 'mldonkey'
has_service = True
has_web = True
def test_upload(self, session_browser):
"""Test uploading an ed2k file to mldonkey."""
functional.app_enable(session_browser, 'mldonkey')
_remove_all_ed2k_files(session_browser)
_upload_sample_ed2k_file(session_browser)
assert _get_number_of_ed2k_files(session_browser) == 1
def test_backup_restore(self, session_browser):
"""Test backup and restore of ed2k files."""
functional.app_enable(session_browser, 'mldonkey')
_remove_all_ed2k_files(session_browser)
_upload_sample_ed2k_file(session_browser)
functional.backup_create(session_browser, 'mldonkey', 'test_mldonkey')
_remove_all_ed2k_files(session_browser)
functional.backup_restore(session_browser, 'mldonkey', 'test_mldonkey')
assert functional.service_is_running(session_browser, 'mldonkey')
assert _get_number_of_ed2k_files(session_browser) == 1
def _submit_command(browser, command):
"""Submit a command to mldonkey."""
with browser.get_iframe('commands') as commands_frame:
commands_frame.find_by_css('.txt2').fill(command)
commands_frame.find_by_css('.but2').click()
def _remove_all_ed2k_files(browser):
"""Remove all ed2k files from mldonkey."""
functional.visit(browser, '/mldonkey/')
_submit_command(browser, 'cancel all')
_submit_command(browser, 'confirm yes')
def _upload_sample_ed2k_file(browser):
"""Upload a sample ed2k file into mldonkey."""
functional.visit(browser, '/mldonkey/')
dllink_command = 'dllink ed2k://|file|foo.bar|123|' \
'0123456789ABCDEF0123456789ABCDEF|/'
_submit_command(browser, dllink_command)
def _get_number_of_ed2k_files(browser):
"""Return the number of ed2k files currently in mldonkey."""
functional.visit(browser, '/mldonkey/')
with browser.get_iframe('commands') as commands_frame:
commands_frame.find_by_xpath(
'//tr//td[contains(text(), "Transfers")]').click()
with browser.get_iframe('output') as output_frame:
functional.eventually(output_frame.find_by_css, ['.downloaded'])
return len(output_frame.find_by_css('.dl-1')) + len(
output_frame.find_by_css('.dl-2'))

View File

@ -1,13 +0,0 @@
# SPDX-License-Identifier: AGPL-3.0-or-later
"""
URLs for the mldonkey module.
"""
from django.urls import re_path
from plinth.views import AppView
urlpatterns = [
re_path(r'^apps/mldonkey/$', AppView.as_view(app_id='mldonkey'),
name='index')
]

View File

@ -40,7 +40,6 @@ markers = [
"mediawiki",
"minetest",
"minidlna",
"mldonkey",
"mumble",
"openvpn",
"pagekite",

View File

@ -48,6 +48,7 @@ DISABLED_APPS_TO_REMOVE = [
'restore',
'repro',
'tahoe',
'mldonkey',
]
REMOVED_FILES = [

Binary file not shown.

Before

Width:  |  Height:  |  Size: 33 KiB

View File

@ -1,812 +0,0 @@
<?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"
version="1.1"
id="svg834"
width="512"
height="512"
viewBox="0 0 512 512.00002"
sodipodi:docname="mldonkey.svg"
inkscape:version="0.92.4 (5da689c313, 2019-01-14)">
<metadata
id="metadata840">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<defs
id="defs838">
<linearGradient
inkscape:collect="always"
id="linearGradient2321">
<stop
style="stop-color:#f9f9fc;stop-opacity:1"
offset="0"
id="stop2315" />
<stop
id="stop2323"
offset="0.34539151"
style="stop-color:#585958;stop-opacity:1;" />
<stop
style="stop-color:#010200;stop-opacity:1"
offset="0.49345502"
id="stop2317" />
<stop
id="stop2325"
offset="0.59487128"
style="stop-color:#4b4b49;stop-opacity:1;" />
<stop
style="stop-color:#f6f6f2;stop-opacity:1"
offset="1"
id="stop2319" />
</linearGradient>
<linearGradient
inkscape:collect="always"
id="linearGradient2297">
<stop
style="stop-color:#7e7e7e;stop-opacity:0.55216694"
offset="0"
id="stop2293" />
<stop
id="stop2305"
offset="0.12476724"
style="stop-color:#4a4a4a;stop-opacity:0.65098039;" />
<stop
id="stop2301"
offset="0.49720672"
style="stop-color:#1d1d1d;stop-opacity:0.73836279" />
<stop
style="stop-color:#4b4b4b;stop-opacity:0.64705882;"
offset="0.85661083"
id="stop2303" />
<stop
style="stop-color:#7d7d7d;stop-opacity:0.56179774"
offset="1"
id="stop2295" />
</linearGradient>
<linearGradient
inkscape:collect="always"
id="linearGradient1615">
<stop
style="stop-color:#f1f1f1;stop-opacity:1"
offset="0"
id="stop1611" />
<stop
style="stop-color:#727272;stop-opacity:1"
offset="1"
id="stop1613" />
</linearGradient>
<linearGradient
id="linearGradient1317"
inkscape:collect="always">
<stop
id="stop1313"
offset="0"
style="stop-color:#d8d8d8;stop-opacity:1" />
<stop
id="stop1315"
offset="1"
style="stop-color:#c3c4c2;stop-opacity:0.6784969" />
</linearGradient>
<linearGradient
id="linearGradient1284"
inkscape:collect="always">
<stop
id="stop1280"
offset="0"
style="stop-color:#fefefe;stop-opacity:1" />
<stop
id="stop1282"
offset="1"
style="stop-color:#818183;stop-opacity:1" />
</linearGradient>
<linearGradient
inkscape:collect="always"
id="linearGradient1249">
<stop
style="stop-color:#393839;stop-opacity:1"
offset="0"
id="stop1245" />
<stop
style="stop-color:#d4d4d4;stop-opacity:1"
offset="1"
id="stop1247" />
</linearGradient>
<linearGradient
id="linearGradient1140"
inkscape:collect="always">
<stop
id="stop1130"
offset="0"
style="stop-color:#fdfdf9;stop-opacity:1" />
<stop
id="stop1136"
offset="0.38423604"
style="stop-color:#908e92;stop-opacity:1" />
<stop
style="stop-color:#737275;stop-opacity:1;"
offset="0.62589139"
id="stop2327" />
<stop
id="stop1138"
offset="1"
style="stop-color:#040404;stop-opacity:1" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient1140"
id="linearGradient1128"
x1="83.676682"
y1="13.086695"
x2="82.2323"
y2="146.30148"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(2.8089052,0,0,2.8089052,-146.93436,-293.06)" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient2321"
id="linearGradient1241"
x1="84.312614"
y1="4.6012702"
x2="83.720703"
y2="148.86621"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(2.8089052,0,0,2.8089052,-150.083,-299.2349)" />
<radialGradient
inkscape:collect="always"
xlink:href="#linearGradient1249"
id="radialGradient1253"
cx="171.01044"
cy="15.808512"
fx="171.01044"
fy="15.808512"
r="6.522552"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(3.6100203,-0.14451987,0.04589051,1.146318,-447.19811,21.646225)" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient1284"
id="linearGradient1286"
x1="174.20345"
y1="38.575394"
x2="174.31354"
y2="36.312466"
gradientUnits="userSpaceOnUse"
gradientTransform="translate(-3.1947194,-18.768976)" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient1317"
id="linearGradient1319"
x1="173.84599"
y1="40.271347"
x2="173.81586"
y2="29.671064"
gradientUnits="userSpaceOnUse"
gradientTransform="translate(-2.5957096,-22.096809)" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient1615"
id="linearGradient1617"
x1="170.71294"
y1="9.2172737"
x2="170.83336"
y2="14.541806"
gradientUnits="userSpaceOnUse" />
<filter
inkscape:collect="always"
style="color-interpolation-filters:sRGB"
id="filter1679"
x="-0.10064212"
width="1.2012842"
y="-0.16012728"
height="1.3202546">
<feGaussianBlur
inkscape:collect="always"
stdDeviation="0.32450511"
id="feGaussianBlur1681" />
</filter>
<filter
inkscape:collect="always"
style="color-interpolation-filters:sRGB"
id="filter1711"
x="-0.084191293"
width="1.1683826"
y="-0.1553445"
height="1.310689">
<feGaussianBlur
inkscape:collect="always"
stdDeviation="0.32740836"
id="feGaussianBlur1713" />
</filter>
<filter
inkscape:collect="always"
style="color-interpolation-filters:sRGB"
id="filter1771"
x="-0.076376386"
width="1.1527528"
y="-0.19149876"
height="1.3829975">
<feGaussianBlur
inkscape:collect="always"
stdDeviation="0.36451491"
id="feGaussianBlur1773" />
</filter>
<radialGradient
inkscape:collect="always"
xlink:href="#linearGradient1249"
id="radialGradient1253-0"
cx="171.01044"
cy="15.808512"
fx="171.01044"
fy="15.808512"
r="6.522552"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(3.6100203,-0.14451987,0.04589051,1.146318,-447.19811,21.646225)" />
<filter
inkscape:collect="always"
style="color-interpolation-filters:sRGB"
id="filter1771-6"
x="-0.076376386"
width="1.1527528"
y="-0.19149876"
height="1.3829975">
<feGaussianBlur
inkscape:collect="always"
stdDeviation="0.36451491"
id="feGaussianBlur1773-2" />
</filter>
<filter
inkscape:collect="always"
style="color-interpolation-filters:sRGB"
id="filter1711-8"
x="-0.084191293"
width="1.1683826"
y="-0.1553445"
height="1.310689">
<feGaussianBlur
inkscape:collect="always"
stdDeviation="0.32740836"
id="feGaussianBlur1713-7" />
</filter>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient1615"
id="linearGradient1617-9"
x1="170.71294"
y1="9.2172737"
x2="170.83336"
y2="14.541806"
gradientUnits="userSpaceOnUse" />
<filter
inkscape:collect="always"
style="color-interpolation-filters:sRGB"
id="filter1679-2"
x="-0.10064212"
width="1.2012842"
y="-0.16012728"
height="1.3202546">
<feGaussianBlur
inkscape:collect="always"
stdDeviation="0.32450511"
id="feGaussianBlur1681-3" />
</filter>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient1284"
id="linearGradient1860"
gradientUnits="userSpaceOnUse"
gradientTransform="translate(-3.1947194,-18.768976)"
x1="174.20345"
y1="38.575394"
x2="174.31354"
y2="36.312466" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient1317"
id="linearGradient1862"
gradientUnits="userSpaceOnUse"
gradientTransform="translate(-2.5957096,-22.096809)"
x1="173.84599"
y1="40.271347"
x2="173.81586"
y2="29.671064" />
<radialGradient
inkscape:collect="always"
xlink:href="#linearGradient1249"
id="radialGradient1253-0-8"
cx="171.01044"
cy="15.808512"
fx="171.01044"
fy="15.808512"
r="6.522552"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(3.6100203,-0.14451987,0.04589051,1.146318,-447.19811,21.646225)" />
<filter
inkscape:collect="always"
style="color-interpolation-filters:sRGB"
id="filter1771-6-1"
x="-0.076376386"
width="1.1527528"
y="-0.19149876"
height="1.3829975">
<feGaussianBlur
inkscape:collect="always"
stdDeviation="0.36451491"
id="feGaussianBlur1773-2-2" />
</filter>
<filter
inkscape:collect="always"
style="color-interpolation-filters:sRGB"
id="filter1711-8-1"
x="-0.084191293"
width="1.1683826"
y="-0.1553445"
height="1.310689">
<feGaussianBlur
inkscape:collect="always"
stdDeviation="0.32740836"
id="feGaussianBlur1713-7-9" />
</filter>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient1615"
id="linearGradient1617-9-4"
x1="170.71294"
y1="9.2172737"
x2="170.83336"
y2="14.541806"
gradientUnits="userSpaceOnUse" />
<filter
inkscape:collect="always"
style="color-interpolation-filters:sRGB"
id="filter1679-2-4"
x="-0.10064212"
width="1.2012842"
y="-0.16012728"
height="1.3202546">
<feGaussianBlur
inkscape:collect="always"
stdDeviation="0.32450511"
id="feGaussianBlur1681-3-5" />
</filter>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient1284"
id="linearGradient1943"
gradientUnits="userSpaceOnUse"
gradientTransform="translate(-3.1947194,-18.768976)"
x1="174.20345"
y1="38.575394"
x2="174.31354"
y2="36.312466" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient1317"
id="linearGradient1945"
gradientUnits="userSpaceOnUse"
gradientTransform="translate(-2.5957096,-22.096809)"
x1="173.84599"
y1="40.271347"
x2="173.81586"
y2="29.671064" />
<radialGradient
inkscape:collect="always"
xlink:href="#linearGradient1249"
id="radialGradient1253-0-8-6"
cx="171.01044"
cy="15.808512"
fx="171.01044"
fy="15.808512"
r="6.522552"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(3.6100203,-0.14451987,0.04589051,1.146318,-447.19811,21.646225)" />
<filter
inkscape:collect="always"
style="color-interpolation-filters:sRGB"
id="filter1771-6-1-1"
x="-0.076376386"
width="1.1527528"
y="-0.19149876"
height="1.3829975">
<feGaussianBlur
inkscape:collect="always"
stdDeviation="0.36451491"
id="feGaussianBlur1773-2-2-5" />
</filter>
<filter
inkscape:collect="always"
style="color-interpolation-filters:sRGB"
id="filter1711-8-1-7"
x="-0.084191293"
width="1.1683826"
y="-0.1553445"
height="1.310689">
<feGaussianBlur
inkscape:collect="always"
stdDeviation="0.32740836"
id="feGaussianBlur1713-7-9-6" />
</filter>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient1615"
id="linearGradient1617-9-4-5"
x1="170.71294"
y1="9.2172737"
x2="170.83336"
y2="14.541806"
gradientUnits="userSpaceOnUse" />
<filter
inkscape:collect="always"
style="color-interpolation-filters:sRGB"
id="filter1679-2-4-3"
x="-0.10064212"
width="1.2012842"
y="-0.16012728"
height="1.3202546">
<feGaussianBlur
inkscape:collect="always"
stdDeviation="0.32450511"
id="feGaussianBlur1681-3-5-7" />
</filter>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient1284"
id="linearGradient2026"
gradientUnits="userSpaceOnUse"
gradientTransform="translate(-3.1947194,-18.768976)"
x1="174.20345"
y1="38.575394"
x2="174.31354"
y2="36.312466" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient1317"
id="linearGradient2028"
gradientUnits="userSpaceOnUse"
gradientTransform="translate(-2.5957096,-22.096809)"
x1="173.84599"
y1="40.271347"
x2="173.81586"
y2="29.671064" />
<radialGradient
inkscape:collect="always"
xlink:href="#linearGradient1249"
id="radialGradient1253-0-8-6-7"
cx="171.01044"
cy="15.808512"
fx="171.01044"
fy="15.808512"
r="6.522552"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(3.6100203,-0.14451987,0.04589051,1.146318,-447.19811,21.646225)" />
<filter
inkscape:collect="always"
style="color-interpolation-filters:sRGB"
id="filter1771-6-1-1-7"
x="-0.076376386"
width="1.1527528"
y="-0.19149876"
height="1.3829975">
<feGaussianBlur
inkscape:collect="always"
stdDeviation="0.36451491"
id="feGaussianBlur1773-2-2-5-8" />
</filter>
<filter
inkscape:collect="always"
style="color-interpolation-filters:sRGB"
id="filter1711-8-1-7-8"
x="-0.084191293"
width="1.1683826"
y="-0.1553445"
height="1.310689">
<feGaussianBlur
inkscape:collect="always"
stdDeviation="0.32740836"
id="feGaussianBlur1713-7-9-6-4" />
</filter>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient1615"
id="linearGradient1617-9-4-5-3"
x1="170.71294"
y1="9.2172737"
x2="170.83336"
y2="14.541806"
gradientUnits="userSpaceOnUse" />
<filter
inkscape:collect="always"
style="color-interpolation-filters:sRGB"
id="filter1679-2-4-3-9"
x="-0.10064212"
width="1.2012842"
y="-0.16012728"
height="1.3202546">
<feGaussianBlur
inkscape:collect="always"
stdDeviation="0.32450511"
id="feGaussianBlur1681-3-5-7-2" />
</filter>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient1284"
id="linearGradient2109"
gradientUnits="userSpaceOnUse"
gradientTransform="translate(-3.1947194,-18.768976)"
x1="174.20345"
y1="38.575394"
x2="174.31354"
y2="36.312466" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient1317"
id="linearGradient2111"
gradientUnits="userSpaceOnUse"
gradientTransform="translate(-2.5957096,-22.096809)"
x1="173.84599"
y1="40.271347"
x2="173.81586"
y2="29.671064" />
<filter
style="color-interpolation-filters:sRGB"
inkscape:label="Drop Shadow"
id="filter2260">
<feFlood
flood-opacity="1"
flood-color="rgb(78,254,0)"
result="flood"
id="feFlood2250" />
<feComposite
in="flood"
in2="SourceGraphic"
operator="in"
result="composite1"
id="feComposite2252" />
<feGaussianBlur
in="composite1"
stdDeviation="6.0099999999999998"
result="blur"
id="feGaussianBlur2254" />
<feOffset
dx="0"
dy="0"
result="offset"
id="feOffset2256" />
<feComposite
in="SourceGraphic"
in2="offset"
operator="over"
result="composite2"
id="feComposite2258" />
</filter>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient2297"
id="linearGradient2299"
x1="-153"
y1="73.083328"
x2="-18.75"
y2="73.083328"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(2.8089052,0,0,2.8089052,321.03436,-289.88733)" />
</defs>
<sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="3532"
inkscape:window-height="1677"
id="namedview836"
showgrid="false"
inkscape:zoom="0.70710678"
inkscape:cx="728.74225"
inkscape:cy="-250.9281"
inkscape:window-x="0"
inkscape:window-y="27"
inkscape:window-maximized="0"
inkscape:current-layer="svg834"
fit-margin-top="0"
fit-margin-left="0"
fit-margin-right="0"
fit-margin-bottom="0" />
<g
id="g2360"
transform="translate(177.47438,339.3258)">
<ellipse
inkscape:label="Background"
ry="186.08997"
rx="188.54776"
cy="-84.60318"
cx="79.819618"
id="path2291"
style="opacity:1;fill:url(#linearGradient2299);fill-opacity:1;stroke:none;stroke-width:6.89113283;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.6784969" />
<path
inkscape:label="Glow boarder"
id="path2243"
d="M -87.160156,1.2734375 A 73.1576,72.26445 0 0 0 -133.3457,17.558594 c -1.77816,-2.383404 -3.10731,-4.10778 -3.30469,-4.191406 -0.90732,-0.384414 -20.76682,1.48e-4 -22.83008,0.798828 -1.41538,0.54789 -2.6618,0.997588 -2.79492,3.792968 -0.13311,2.795379 1.20568,13.114541 2.0625,14.576172 1.13147,1.930144 1.95588,2.579517 3.12891,3.128906 1.00707,0.471665 5.4128,0.503225 7.40625,0.476563 a 73.1576,72.26445 0 0 0 -10.64063,37.396484 73.1576,72.26445 0 0 0 73.158204,72.265621 73.1576,72.26445 0 0 0 73.158203,-72.265621 73.1576,72.26445 0 0 0 -10.576172,-37.253906 l 0.521484,-0.751953 c 0,0 6.758525,1.312578 8.271485,0.464844 1.51297,-0.847735 2.7068,-0.730102 3.99414,-4.109375 1.06491,-2.795379 1.610782,-11.736645 1.332032,-13.994141 -0.23393,-1.8945 -1.198425,-2.395882 -2.521485,-2.662109 -1.12444,-0.22626 -13.844073,-2.337558 -19.876953,-2.667969 -1.79498,-0.09831 -2.837547,0.798168 -4.123047,1.439453 -0.282079,0.140718 -1.585785,1.833062 -3.294922,4.154297 A 73.1576,72.26445 0 0 0 -87.160156,1.2734375 Z m 11.939453,11.9863285 a 61.275585,61.087334 0 0 1 28.642578,13.689453 c -5.835496,8.274823 -12.138672,17.433593 -12.138672,17.433593 L -85.222656,34.328125 -113.36523,45.242188 c 0,0 -6.68972,-9.398007 -12.94922,-18.056641 a 61.275585,61.087334 0 0 1 28.398434,-13.822266 11.718603,11.012663 0 0 0 4.564454,6.234375 11.718603,11.012663 0 0 0 13.779296,-0.169922 11.718603,11.012663 0 0 0 4.351563,-6.167968 z m 42.449219,3.853515 c 0.30053,-0.01354 0.53628,0.103089 0.78125,0.09961 3.42952,-0.04872 12.906473,1.312229 13.777343,1.43164 0.99529,0.136469 2.4596,0.490012 2.5625,2.083985 0.12005,1.859715 -0.01422,7.206544 -0.707031,8.814453 -0.36036,0.836283 -1.237514,1.806464 -1.996094,1.863281 -0.75859,0.05682 -7.434785,-1.712015 -8.478515,-1 -0.106098,0.07238 -0.446666,0.497465 -0.898438,1.09375 A 73.1576,72.26445 0 0 0 -36.71875,21.242188 c 1.405537,-1.898457 2.514855,-3.332449 2.775391,-3.44336 0.50586,-0.528243 0.871335,-0.672013 1.171875,-0.685547 z m -111.343746,0.804688 c 2.50554,-0.02531 4.5819,0.06861 5.00195,0.441406 0.17049,0.151309 0.95593,1.171157 1.97851,2.525391 a 73.1576,72.26445 0 0 0 -8.94726,9.96289 c -0.9094,-0.326779 -6.74016,0.357498 -7.93945,0.02344 -1.24347,-0.346365 -2.44155,-9.959448 -2.39649,-11.115235 0.0451,-1.155788 0.56401,-1.520901 1.86328,-1.46289 0.89371,0.0399 6.26355,-0.332823 10.43946,-0.375 z m 101.041011,12.189453 a 61.275585,61.087334 0 0 1 8.617188,10.888672 c -5.966506,8.577453 -13.140625,19.09375 -13.140625,19.09375 l -27.574219,73.207036 a 61.275585,61.087334 0 0 1 -11.132813,1.08203 61.275585,61.087334 0 0 1 -5.693359,-0.29493 L -121.5,61.958984 c 0,0 -9.38184,-12.007867 -16.56836,-21.138672 a 61.275585,61.087334 0 0 1 8.10352,-10.220703 c 6.84165,9.347327 14.88476,20.460938 14.88476,20.460938 l 29.841799,-11.431641 c 0,0 26.944558,10.403547 28.142578,9.871094 0.6921,-0.3076 7.830547,-10.603482 14.021484,-19.392578 z M -141.0625,46.130859 c 6.23987,8.258882 13.87109,18.476563 13.87109,18.476563 0,0 18.73863,47.098928 27.750004,68.283198 a 61.275585,61.087334 0 0 1 -15.029294,-5.40624 11.718603,11.012663 0 0 0 -0.41602,-5.18555 11.718603,11.012663 0 0 0 -9.88476,-7.52735 11.718603,11.012663 0 0 0 -1.72657,-0.0547 11.718603,11.012663 0 0 0 -4.01757,0.84765 61.275585,61.087334 0 0 1 -17.06446,-42.271481 61.275585,61.087334 0 0 1 0.28125,-5.607422 11.718603,11.012663 0 0 0 8.83399,-9.546875 11.718603,11.012663 0 0 0 -3.91797,-9.378906 61.275585,61.087334 0 0 1 1.32031,-2.628907 z m 109.576172,0.09766 a 61.275585,61.087334 0 0 1 0.896484,1.816406 11.718603,11.012663 0 0 0 -3.820312,5.453125 11.718603,11.012663 0 0 0 3.472656,11.267578 11.718603,11.012663 0 0 0 5.554688,2.570313 61.275585,61.087334 0 0 1 0.353515,5.957031 61.275585,61.087334 0 0 1 -17.574219,42.738278 11.718603,11.012663 0 0 0 -5.064453,-1.04102 11.718603,11.012663 0 0 0 -1.169922,0.0645 11.718603,11.012663 0 0 0 -9.882812,7.55859 11.718603,11.012663 0 0 0 -0.373047,5.38086 61.275585,61.087334 0 0 1 -9.894531,3.81445 c 8.799054,-22.72788 27.142578,-70.662103 27.142578,-70.662103 z m -53.916016,7.072265 -24.359376,9.917969 25.82422,57.837887 22.363281,-59.968746 z m -0.599609,5.390625 17.505859,5.591797 -15.708984,42.929684 -18.435542,-40.93359 z"
style="opacity:1;fill:#00ff18;fill-opacity:1;stroke:none;stroke-width:1.31736326;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;filter:url(#filter2260)"
inkscape:connector-curvature="0"
transform="matrix(2.8089052,0,0,2.8089052,321.03436,-289.88733)" />
<path
inkscape:connector-curvature="0"
id="path1161"
d="M 76.209425,-286.30954 A 205.49277,202.98399 0 0 0 -129.28503,-83.327733 205.49277,202.98399 0 0 0 76.209425,119.65954 205.49277,202.98399 0 0 0 281.70388,-83.327733 205.49277,202.98399 0 0 0 76.209425,-286.30954 Z m 33.536795,33.66846 a 172.11731,171.58853 0 0 1 125.36385,97.70821 32.916445,30.933527 0 0 0 -10.73089,15.31731 32.916445,30.933527 0 0 0 9.75437,31.64956 32.916445,30.933527 0 0 0 15.60257,7.21976 172.11731,171.58853 0 0 1 0.99301,16.73274 172.11731,171.58853 0 0 1 -49.36433,120.047773 32.916445,30.933527 0 0 0 -14.22556,-2.924126 32.916445,30.933527 0 0 0 -3.28619,0.180893 32.916445,30.933527 0 0 0 -27.7599,21.231392 32.916445,30.933527 0 0 0 -1.04784,15.114325 A 172.11731,171.58853 0 0 1 78.612356,87.570943 172.11731,171.58853 0 0 1 -0.50332756,68.204862 32.916445,30.933527 0 0 0 -1.6718602,53.639143 32.916445,30.933527 0 0 0 -29.437242,32.495558 a 32.916445,30.933527 0 0 0 -4.849744,-0.153647 32.916445,30.933527 0 0 0 -11.285001,2.380997 172.11731,171.58853 0 0 1 -47.932423,-118.736576 172.11731,171.58853 0 0 1 0.790004,-15.750717 32.916445,30.933527 0 0 0 24.813813,-26.816265 32.916445,30.933527 0 0 0 -11.005207,-26.34446 172.11731,171.58853 0 0 1 124.903036,-99.42537 32.916445,30.933527 0 0 0 12.821116,17.51177 32.916445,30.933527 0 0 0 38.70474,-0.4773 32.916445,30.933527 0 0 0 12.223128,-17.32524 z"
style="opacity:1;fill:url(#linearGradient1241);fill-opacity:1;stroke:none;stroke-width:3.70034862;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
inkscape:label="Green fill"
id="path2140"
d="m 224.93908,-249.91529 -67.29852,91.60213 -78.523165,-26.9205 -80.7615032,26.54744 -67.6770608,-86.36834 -54.960191,2.61688 3.73607,46.3634 24.303601,0.37306 66.557881,84.50306 94.970636,219.10558 21.308179,-5.23378 21.686723,4.1146 87.87156,-225.83707 54.58712,-77.39851 30.28899,-2.61689 2.61689,-42.25427 z m -143.73695,118.12215 56.10678,17.3801 L 86.660842,28.588764 22.610114,-108.45509 Z"
style="fill:#68ff4d;fill-opacity:0.54735155;stroke:none;stroke-width:2.80890512px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
inkscape:connector-curvature="0" />
<path
inkscape:connector-curvature="0"
id="path1095"
d="m 228.74025,-254.60213 c -5.04193,-0.27615 -7.97041,2.24197 -11.58126,4.04328 -3.61085,1.80131 -61.05526,85.33696 -61.05526,85.33696 l -74.452461,-28.24267 -79.0498293,30.65657 c 0,0 -62.8572317,-88.45407 -65.4058077,-89.53385 -2.548576,-1.07978 -58.332032,4.1e-4 -64.127532,2.24383 -3.97567,1.53897 -7.47674,2.80213 -7.85066,10.65409 -0.3739,7.85195 3.38664,36.8375 5.79336,40.94308 3.17819,5.42159 5.49388,7.24562 8.78881,8.78881 3.29493,1.54318 20.17494,1.42798 23.370966,1.3057 3.756265,3.80362 60.594462,79.99345 60.594462,79.99345 0,0 84.1477,211.54263 90.87795,220.14246 6.201467,5.42703 19.143728,4.35052 23.595899,3.27521 4.452174,-1.07528 2.29278,-3.80104 4.910099,-4.17496 2.617318,-0.37389 4.571218,-1.40861 6.440732,0.46083 1.869512,1.86958 0.692682,2.14421 3.01738,3.91162 2.11122,1.60515 20.053952,0.72378 21.549572,-1.51964 1.49561,-2.24342 89.33635,-231.81696 89.33635,-231.81696 l 49.96779,-71.95077 c 0,0 18.98407,3.6869 23.23383,1.3057 4.24979,-2.38121 7.60314,-2.05079 11.21916,-11.54284 2.99123,-7.85196 4.52453,-32.96713 3.74154,-39.30822 -0.65708,-5.32147 -3.36627,-6.72981 -7.08262,-7.47761 -3.15845,-0.63555 -38.88668,-6.56598 -55.83247,-7.49407 z m 0.2414,12.78271 c 0.84416,-0.038 1.50636,0.28957 2.19445,0.2798 9.6332,-0.13685 36.25305,3.68593 38.69925,4.02134 2.79567,0.38333 6.90878,1.37639 7.19782,5.85371 0.3372,5.22377 -0.04,20.2425 -1.98598,24.75897 -1.01222,2.34904 -3.47605,5.07418 -5.60683,5.23378 -2.13081,0.1596 -20.88362,-4.80889 -23.81536,-2.80891 -2.93174,1.99998 -58.32866,83.3784 -58.32866,83.3784 L 103.87015,100.49396 85.102054,92.13856 67.902995,99.654573 -20.248358,-115.85209 c 0,0 -67.228142,-86.10724 -68.779781,-87.28454 -1.551611,-1.1773 -19.077211,0.9345 -22.569971,-0.0384 -3.49279,-0.97291 -6.85809,-27.97515 -6.73152,-31.22164 0.12668,-3.2465 1.58428,-4.27207 5.23381,-4.10912 4.01654,0.17932 40.227088,-2.60587 43.373427,0.18653 3.146339,2.79238 67.5069815,91.8545 67.5069815,91.8545 l 83.8227915,-32.1104 c 0,0 75.68471,29.22258 79.04984,27.72697 3.36512,-1.49561 61.22104,-87.42295 65.03273,-89.04559 1.42091,-1.48378 2.44751,-1.88762 3.2917,-1.92563 z M 81.146545,-140.17216 12.723358,-112.31353 85.26115,50.147618 148.07748,-118.29891 Z m -1.684248,15.14175 49.172303,15.70683 L 84.509549,11.261836 32.725853,-103.71674 Z"
style="fill:url(#linearGradient1128);fill-opacity:1;stroke:none;stroke-width:2.80890512px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<g
transform="matrix(2.8089052,0,0,2.8089052,-151.56395,-300.42072)"
inkscape:label="Buttons"
id="g2138">
<g
id="g1779"
transform="translate(-27.746,46.914546)">
<circle
r="6.522552"
cy="13.564356"
cx="171.0506"
id="path1243"
style="opacity:1;fill:url(#radialGradient1253);fill-opacity:1;stroke:none;stroke-width:1.2627058;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
sodipodi:nodetypes="csccc"
inkscape:connector-curvature="0"
id="path1243-2"
d="m 176.41812,17.323544 c -1.18897,1.596329 -3.09095,2.630253 -5.23441,2.63025 -2.21054,-3e-6 -4.16425,-1.099658 -5.34392,-2.781777 -2.90901,-4.619562 3.04785,1.17774 5.47704,1.184418 2.57214,-0.101097 5.78348,-4.737417 5.10129,-1.032891 z"
style="opacity:1;fill:url(#linearGradient1286);fill-opacity:1;stroke:none;stroke-width:1.2627058;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;filter:url(#filter1771)" />
<path
sodipodi:nodetypes="ccscc"
inkscape:connector-curvature="0"
id="path1243-7"
d="m 172.04896,12.49945 c -2.941,-0.684068 -4.26308,0.281098 -5.70279,-2.131711 1.14573,-1.8749022 2.546,-2.9265982 4.90411,-2.9265952 2.26359,3e-6 3.25952,0.8868444 4.42916,2.6376522 -1.08952,2.215536 -1.67228,1.89706 -3.63048,2.420654 z"
style="opacity:1;fill:url(#linearGradient1319);fill-opacity:1;stroke:none;stroke-width:1.2627058;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;filter:url(#filter1711)" />
<path
sodipodi:nodetypes="zsscz"
inkscape:connector-curvature="0"
id="path1321"
d="m 167.25688,12.699119 c -0.85952,-0.945467 2.19638,-3.3943883 3.92686,-3.3278323 1.73047,0.06656 3.72717,1.1980183 3.66061,3.1947183 -0.0339,1.017556 -2.26293,1.663917 -3.72718,1.663918 -2.37935,0.05899 -3.00077,-0.585336 -3.86029,-1.530804 z"
style="fill:url(#linearGradient1617);fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;filter:url(#filter1679)" />
</g>
<g
id="g1779-7"
transform="translate(-89.928441,1.0561328)">
<circle
r="6.522552"
cy="13.564356"
cx="171.0506"
id="path1243-5"
style="opacity:1;fill:url(#radialGradient1253-0);fill-opacity:1;stroke:none;stroke-width:1.2627058;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
sodipodi:nodetypes="csccc"
inkscape:connector-curvature="0"
id="path1243-2-9"
d="m 176.41812,17.323544 c -1.18897,1.596329 -3.09095,2.630253 -5.23441,2.63025 -2.21054,-3e-6 -4.16425,-1.099658 -5.34392,-2.781777 -2.90901,-4.619562 3.04785,1.17774 5.47704,1.184418 2.57214,-0.101097 5.78348,-4.737417 5.10129,-1.032891 z"
style="opacity:1;fill:url(#linearGradient1860);fill-opacity:1;stroke:none;stroke-width:1.2627058;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;filter:url(#filter1771-6)" />
<path
sodipodi:nodetypes="ccscc"
inkscape:connector-curvature="0"
id="path1243-7-2"
d="m 172.04896,12.49945 c -2.941,-0.684068 -4.26308,0.281098 -5.70279,-2.131711 1.14573,-1.8749022 2.546,-2.9265982 4.90411,-2.9265952 2.26359,3e-6 3.25952,0.8868444 4.42916,2.6376522 -1.08952,2.215536 -1.67228,1.89706 -3.63048,2.420654 z"
style="opacity:1;fill:url(#linearGradient1862);fill-opacity:1;stroke:none;stroke-width:1.2627058;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;filter:url(#filter1711-8)" />
<path
sodipodi:nodetypes="zsscz"
inkscape:connector-curvature="0"
id="path1321-2"
d="m 167.25688,12.699119 c -0.85952,-0.945467 2.19638,-3.3943883 3.92686,-3.3278323 1.73047,0.06656 3.72717,1.1980183 3.66061,3.1947183 -0.0339,1.017556 -2.26293,1.663917 -3.72718,1.663918 -2.37935,0.05899 -3.00077,-0.585336 -3.86029,-1.530804 z"
style="fill:url(#linearGradient1617-9);fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;filter:url(#filter1679-2)" />
</g>
<g
id="g1779-7-0"
transform="translate(-152.00792,46.863336)">
<circle
r="6.522552"
cy="13.564356"
cx="171.0506"
id="path1243-5-3"
style="opacity:1;fill:url(#radialGradient1253-0-8);fill-opacity:1;stroke:none;stroke-width:1.2627058;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
sodipodi:nodetypes="csccc"
inkscape:connector-curvature="0"
id="path1243-2-9-6"
d="m 176.41812,17.323544 c -1.18897,1.596329 -3.09095,2.630253 -5.23441,2.63025 -2.21054,-3e-6 -4.16425,-1.099658 -5.34392,-2.781777 -2.90901,-4.619562 3.04785,1.17774 5.47704,1.184418 2.57214,-0.101097 5.78348,-4.737417 5.10129,-1.032891 z"
style="opacity:1;fill:url(#linearGradient1943);fill-opacity:1;stroke:none;stroke-width:1.2627058;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;filter:url(#filter1771-6-1)" />
<path
sodipodi:nodetypes="ccscc"
inkscape:connector-curvature="0"
id="path1243-7-2-1"
d="m 172.04896,12.49945 c -2.941,-0.684068 -4.26308,0.281098 -5.70279,-2.131711 1.14573,-1.8749022 2.546,-2.9265982 4.90411,-2.9265952 2.26359,3e-6 3.25952,0.8868444 4.42916,2.6376522 -1.08952,2.215536 -1.67228,1.89706 -3.63048,2.420654 z"
style="opacity:1;fill:url(#linearGradient1945);fill-opacity:1;stroke:none;stroke-width:1.2627058;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;filter:url(#filter1711-8-1)" />
<path
sodipodi:nodetypes="zsscz"
inkscape:connector-curvature="0"
id="path1321-2-0"
d="m 167.25688,12.699119 c -0.85952,-0.945467 2.19638,-3.3943883 3.92686,-3.3278323 1.73047,0.06656 3.72717,1.1980183 3.66061,3.1947183 -0.0339,1.017556 -2.26293,1.663917 -3.72718,1.663918 -2.37935,0.05899 -3.00077,-0.585336 -3.86029,-1.530804 z"
style="fill:url(#linearGradient1617-9-4);fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;filter:url(#filter1679-2-4)" />
</g>
<g
id="g1779-7-0-4"
transform="translate(-128.04752,114.5498)">
<circle
r="6.522552"
cy="13.564356"
cx="171.0506"
id="path1243-5-3-5"
style="opacity:1;fill:url(#radialGradient1253-0-8-6);fill-opacity:1;stroke:none;stroke-width:1.2627058;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
sodipodi:nodetypes="csccc"
inkscape:connector-curvature="0"
id="path1243-2-9-6-2"
d="m 176.41812,17.323544 c -1.18897,1.596329 -3.09095,2.630253 -5.23441,2.63025 -2.21054,-3e-6 -4.16425,-1.099658 -5.34392,-2.781777 -2.90901,-4.619562 3.04785,1.17774 5.47704,1.184418 2.57214,-0.101097 5.78348,-4.737417 5.10129,-1.032891 z"
style="opacity:1;fill:url(#linearGradient2026);fill-opacity:1;stroke:none;stroke-width:1.2627058;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;filter:url(#filter1771-6-1-1)" />
<path
sodipodi:nodetypes="ccscc"
inkscape:connector-curvature="0"
id="path1243-7-2-1-5"
d="m 172.04896,12.49945 c -2.941,-0.684068 -4.26308,0.281098 -5.70279,-2.131711 1.14573,-1.8749022 2.546,-2.9265982 4.90411,-2.9265952 2.26359,3e-6 3.25952,0.8868444 4.42916,2.6376522 -1.08952,2.215536 -1.67228,1.89706 -3.63048,2.420654 z"
style="opacity:1;fill:url(#linearGradient2028);fill-opacity:1;stroke:none;stroke-width:1.2627058;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;filter:url(#filter1711-8-1-7)" />
<path
sodipodi:nodetypes="zsscz"
inkscape:connector-curvature="0"
id="path1321-2-0-4"
d="m 167.25688,12.699119 c -0.85952,-0.945467 2.19638,-3.3943883 3.92686,-3.3278323 1.73047,0.06656 3.72717,1.1980183 3.66061,3.1947183 -0.0339,1.017556 -2.26293,1.663917 -3.72718,1.663918 -2.37935,0.05899 -3.00077,-0.585336 -3.86029,-1.530804 z"
style="fill:url(#linearGradient1617-9-4-5);fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;filter:url(#filter1679-2-4-3)" />
</g>
<g
id="g1779-7-0-4-0"
transform="translate(-52.124262,114.5498)">
<circle
r="6.522552"
cy="13.564356"
cx="171.0506"
id="path1243-5-3-5-6"
style="opacity:1;fill:url(#radialGradient1253-0-8-6-7);fill-opacity:1;stroke:none;stroke-width:1.2627058;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
sodipodi:nodetypes="csccc"
inkscape:connector-curvature="0"
id="path1243-2-9-6-2-8"
d="m 176.41812,17.323544 c -1.18897,1.596329 -3.09095,2.630253 -5.23441,2.63025 -2.21054,-3e-6 -4.16425,-1.099658 -5.34392,-2.781777 -2.90901,-4.619562 3.04785,1.17774 5.47704,1.184418 2.57214,-0.101097 5.78348,-4.737417 5.10129,-1.032891 z"
style="opacity:1;fill:url(#linearGradient2109);fill-opacity:1;stroke:none;stroke-width:1.2627058;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;filter:url(#filter1771-6-1-1-7)" />
<path
sodipodi:nodetypes="ccscc"
inkscape:connector-curvature="0"
id="path1243-7-2-1-5-9"
d="m 172.04896,12.49945 c -2.941,-0.684068 -4.26308,0.281098 -5.70279,-2.131711 1.14573,-1.8749022 2.546,-2.9265982 4.90411,-2.9265952 2.26359,3e-6 3.25952,0.8868444 4.42916,2.6376522 -1.08952,2.215536 -1.67228,1.89706 -3.63048,2.420654 z"
style="opacity:1;fill:url(#linearGradient2111);fill-opacity:1;stroke:none;stroke-width:1.2627058;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;filter:url(#filter1711-8-1-7-8)" />
<path
sodipodi:nodetypes="zsscz"
inkscape:connector-curvature="0"
id="path1321-2-0-4-2"
d="m 167.25688,12.699119 c -0.85952,-0.945467 2.19638,-3.3943883 3.92686,-3.3278323 1.73047,0.06656 3.72717,1.1980183 3.66061,3.1947183 -0.0339,1.017556 -2.26293,1.663917 -3.72718,1.663918 -2.37935,0.05899 -3.00077,-0.585336 -3.86029,-1.530804 z"
style="fill:url(#linearGradient1617-9-4-5-3);fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;filter:url(#filter1679-2-4-3-9)" />
</g>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 38 KiB