zik 0.16.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (84) hide show
  1. data.tar.gz.sig +0 -0
  2. data/ChangeLog +222 -0
  3. data/INSTALL +34 -0
  4. data/Makefile.in +199 -0
  5. data/README +53 -0
  6. data/ZiK.desktop +11 -0
  7. data/ZiK.rb +377 -0
  8. data/configure +269 -0
  9. data/dependencies +142 -0
  10. data/doc/COPYING +340 -0
  11. data/doc/ChangeLog +222 -0
  12. data/doc/html/fr/index.html +128 -0
  13. data/doc/html/index.html +126 -0
  14. data/doc/html/pix/ZiK3.png +0 -0
  15. data/doc/html/pix/capture.png +0 -0
  16. data/doc/html/pix/capture_cd.png +0 -0
  17. data/doc/html/pix/capture_compact.png +0 -0
  18. data/doc/html/pix/capture_radio.png +0 -0
  19. data/doc/html/pix/icon.png +0 -0
  20. data/doc/html/pix/logo.png +0 -0
  21. data/doc/html/styles/main.css +47 -0
  22. data/doc/man/manpage.1 +43 -0
  23. data/gui/assistant.rb +133 -0
  24. data/gui/cdgui.rb +54 -0
  25. data/gui/common.rb +56 -0
  26. data/gui/config.rb +120 -0
  27. data/gui/edit.rb +413 -0
  28. data/gui/error.rb +124 -0
  29. data/gui/gui.rb +1383 -0
  30. data/gui/mod.rb +239 -0
  31. data/gui/preference.rb +496 -0
  32. data/gui/progress.rb +50 -0
  33. data/gui/radiogui.rb +404 -0
  34. data/gui/search.rb +249 -0
  35. data/gui/socket.rb +107 -0
  36. data/mod/brainz.rb +76 -0
  37. data/mod/brainz/dialogs.rb +132 -0
  38. data/mod/brainz/functions.rb +55 -0
  39. data/mod/brainz/ofa.rb +76 -0
  40. data/mod/brainz/song.rb +139 -0
  41. data/mod/brainz/widget.rb +34 -0
  42. data/mod/cover.rb +90 -0
  43. data/mod/cover/application-x-cd-image.svg +666 -0
  44. data/mod/cover/config.rb +79 -0
  45. data/mod/cover/configwidget.rb +35 -0
  46. data/mod/cover/widget.rb +147 -0
  47. data/mod/hotkeys.rb +137 -0
  48. data/mod/hotkeys/config.rb +84 -0
  49. data/mod/hotkeys/configwidget.rb +93 -0
  50. data/mod/interact.rb +131 -0
  51. data/mod/interact/configwidget.rb +107 -0
  52. data/mod/interact/interaction.rb +79 -0
  53. data/mod/notify.rb +128 -0
  54. data/mod/notify/config.rb +96 -0
  55. data/mod/notify/configwidget.rb +76 -0
  56. data/mod/notify/window.rb +56 -0
  57. data/mod/trayicon.rb +83 -0
  58. data/mod/trayicon/config.rb +79 -0
  59. data/mod/trayicon/configwidget.rb +35 -0
  60. data/mod/trayicon/icon.rb +99 -0
  61. data/pix/ZiK.svg +78 -0
  62. data/pix/ZiK3.png +0 -0
  63. data/pix/assistant/capture.png +0 -0
  64. data/pix/gtk-directory.svg +287 -0
  65. data/pix/media-cdrom.svg +292 -0
  66. data/pix/network-wireless.svg +429 -0
  67. data/pix/player_play.svg +286 -0
  68. data/pix/sound.svg +244 -0
  69. data/pix/sound_directory.svg +464 -0
  70. data/player/cdplayer.rb +108 -0
  71. data/player/player.rb +132 -0
  72. data/player/radioplayer.rb +124 -0
  73. data/playlist/cdlist.rb +140 -0
  74. data/playlist/common.rb +343 -0
  75. data/playlist/editlist.rb +50 -0
  76. data/playlist/export.rb +108 -0
  77. data/playlist/playlist.rb +143 -0
  78. data/playlist/radiolist.rb +148 -0
  79. data/playlist/song.rb +122 -0
  80. data/po/ZiK.pot +622 -0
  81. data/po/fr/ZiK.po +658 -0
  82. data/zik +2 -0
  83. metadata +265 -0
  84. metadata.gz.sig +0 -0
@@ -0,0 +1,55 @@
1
+ =begin
2
+ Copyright 2007-2011 Vincent Carmona
3
+ vinc4mai@gmail.com
4
+
5
+ This file is part of ZiK.
6
+
7
+ ZiK is free software; you can redistribute it and/or modify
8
+ it under the terms of the GNU General Public License as published by
9
+ the Free Software Foundation; either version 2 of the License, or
10
+ (at your option) any later version.
11
+
12
+ ZiK is distributed in the hope that it will be useful,
13
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
14
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15
+ GNU General Public License for more details.
16
+
17
+ You should have received a copy of the GNU General Public License
18
+ along with ZiK; if not, write to the Free Software
19
+ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
20
+ =end
21
+
22
+ module Brainz
23
+ OFA_KEY_T100TAG='3839dbda127e29ccd213da2be833b756'#ZiK does not yet have an id. Use T1000-tag one thanks to the author authorization.
24
+ OFA_KEY=OFA_KEY_T100TAG
25
+ OFA_URL='http://ofa.musicdns.org/ofa/1/track'
26
+ MB_URL='http://musicbrainz.org/show/puid/?puid='
27
+
28
+ class GstError < Exception
29
+ end
30
+ class PuidsParseError < Exception
31
+ end
32
+ class PuidsError < Exception
33
+ end
34
+
35
+ def Brainz.tag(zik, zikSong)
36
+ zik.cursor=Gdk::Cursor::WATCH
37
+ if zikSong.type==SONG_FILE
38
+ song=Song.new(zikSong)#Do not recreate songs already used. Used a colection ??
39
+ begin
40
+ puids=song.puids
41
+ raise PuidsError.new if puids.nil?
42
+ ModErrorInfo.new(self, "get puids: #{puids.join(', ')}.")
43
+ song.get_tag
44
+ TagDialog.new(zik, song)
45
+ rescue PuidsParseError
46
+ ModErrorError.new(self, _("Cannot retrieve song id (parse error)."), true)
47
+ rescue PuidsError
48
+ ModErrorError.new(self, _("Cannot retrieve song id."), true)
49
+ end
50
+ else
51
+ ModErrorError.new(self, _("Only files are supported."), true)
52
+ end
53
+ zik.cursor=Gdk::Cursor::ARROW
54
+ end
55
+ end
data/mod/brainz/ofa.rb ADDED
@@ -0,0 +1,76 @@
1
+ # encoding: UTF-8
2
+ =begin
3
+ Copyright 2007-2011 Vincent Carmona
4
+ vinc4mai@gmail.com
5
+
6
+ This file is part of ZiK.
7
+
8
+ ZiK is free software; you can redistribute it and/or modify
9
+ it under the terms of the GNU General Public License as published by
10
+ the Free Software Foundation; either version 2 of the License, or
11
+ (at your option) any later version.
12
+
13
+ ZiK is distributed in the hope that it will be useful,
14
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
15
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
+ GNU General Public License for more details.
17
+
18
+ You should have received a copy of the GNU General Public License
19
+ along with ZiK; if not, write to the Free Software
20
+ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
21
+ =end
22
+
23
+ module Brainz
24
+ class OfaNotFound < Exception
25
+ end
26
+
27
+ class Ofa
28
+ def initialize
29
+ @source=Gst::ElementFactory.make("filesrc")
30
+ @decoder=Gst::ElementFactory.make("decodebin")
31
+ @decoder.signal_connect("new-decoded-pad"){|dbin, pad, is_last| pad.link @convertor.get_pad("sink")}
32
+ @convertor=Gst::ElementFactory.make("audioconvert")
33
+ @ofa=Gst::ElementFactory.make("ofa")
34
+ #***********ofa is in bad. Check for bad
35
+ raise OfaNotFound.new unless @ofa
36
+ @sink=Gst::ElementFactory.make("fakesink")
37
+ #@sink.sync=false
38
+ @pipeline=Gst::Pipeline.new("converter")
39
+ @pipeline.add(@source, @decoder, @convertor, @ofa, @sink)
40
+ @source >> @decoder
41
+ @convertor >> @ofa >> @sink
42
+ @pipeline.bus.add_watch {|bus, message|
43
+ ModErrorError.new(Brainz.mod,
44
+ "Gst Error. "+message.parse) if message.type==Gst::Message::ERROR
45
+ case message.type
46
+ when Gst::Message::Type::ERROR
47
+ #ModErrorError.new(Brainz.mod, "Gst error. "+message.parse)
48
+ @pipeline.stop
49
+ @mainloop.quit
50
+ @fingerprint=nil
51
+ raise GstError.new
52
+ when Gst::Message::Type::EOS
53
+ @pipeline.stop
54
+ @mainloop.quit
55
+ @fingerprint=@ofa.fingerprint
56
+ end
57
+ true
58
+ }
59
+
60
+ @mainloop=GLib::MainLoop.new
61
+ end
62
+
63
+ def stop
64
+ @pipeline.stop
65
+ @mainloop.quit
66
+ end
67
+
68
+ def fingerprint(file)
69
+ stop
70
+ @source.location=file
71
+ @pipeline.play
72
+ @mainloop.run
73
+ @fingerprint
74
+ end
75
+ end
76
+ end
@@ -0,0 +1,139 @@
1
+ =begin
2
+ Copyright 2007-2011 Vincent Carmona
3
+ vinc4mai@gmail.com
4
+
5
+ This file is part of ZiK.
6
+
7
+ ZiK is free software; you can redistribute it and/or modify
8
+ it under the terms of the GNU General Public License as published by
9
+ the Free Software Foundation; either version 2 of the License, or
10
+ (at your option) any later version.
11
+
12
+ ZiK is distributed in the hope that it will be useful,
13
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
14
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15
+ GNU General Public License for more details.
16
+
17
+ You should have received a copy of the GNU General Public License
18
+ along with ZiK; if not, write to the Free Software
19
+ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
20
+ =end
21
+
22
+ module Brainz
23
+ class Song
24
+
25
+ def Song.ofa
26
+ @@ofa=Ofa.new
27
+ end
28
+ Song.ofa
29
+
30
+ attr_reader :file, :tags
31
+
32
+ def initialize(song)
33
+ @zik=song
34
+ @file=song.path
35
+ song.duration>0 ? @duration=song.duration*1000 : @duration=song.duration
36
+ end
37
+
38
+ def fingerprint
39
+ @fingerprint||=@@ofa.fingerprint(@file)
40
+ end
41
+
42
+ def puids
43
+ fingerprint
44
+ @puids||=post
45
+ end
46
+
47
+ def get_tag
48
+ @tags=[{:titles=>[@zik.title], :artists=>[@zik.artist], :albums=>[@zik.album], :tracks=>[@zik.track]}]
49
+ @puids.each{|puid|
50
+ url=MB_URL+puid
51
+ case res=Net::HTTP.get_response(URI.parse(url))
52
+ when Net::HTTPSuccess
53
+ @tags.push(parse_html(res.body))
54
+ when Net::HTTPRedirection
55
+ ModErrorError.new(Brainz.mod, "musicbrainz redirection.", true)
56
+ @tags.push({})
57
+ else
58
+ ModErrorError.new(Brainz.mod, _("Http error")+"#{res.error!}.", true)
59
+ @tags.push({})
60
+ end
61
+ }
62
+ @tags
63
+ end
64
+
65
+ def update_zik(name_format, title, artist, album, track=-1)
66
+ @zik.title=title; @zik.artist=artist; @zik.album=album; @zik.track=track
67
+ @zik.refresh_name(name_format)
68
+ @zik.write_tag(@zik.path)
69
+ end
70
+
71
+ private
72
+
73
+ def post(url=OFA_URL)
74
+ data={:cid=>OFA_KEY, :cvr=>'1.0', :fpt=>@fingerprint, :fmt=>File.extname(@file)[1..-1], :dur=>@duration.to_s, :rmd=>"1"}
75
+ data[:brt]='0'
76
+ data[:art]='unknown'
77
+ data[:ttl]='unknown'
78
+ data[:alb]='unknown'
79
+ data[:tnm]='0'
80
+ data[:gnr]='unknown'
81
+ data[:yrr]='0'
82
+ data[:enc]='false'
83
+
84
+ case res=Net::HTTP.post_form(URI.parse(url), data)
85
+ when Net::HTTPSuccess
86
+ @puids=parse_xml(res.body)
87
+ when Net::HTTPRedirection
88
+ ModErrorWarning.new(Brainz.mod, "#{url} is moved to #{reponse['location']}")
89
+ post(res['location'])
90
+ else
91
+ ModErrorError.new(Brainz.mod, _("musicdns error.\n")+res.error, true)
92
+ @puids||=nil
93
+ end
94
+ end
95
+
96
+ def parse_xml(data)
97
+ doc=REXML::Document.new(data)
98
+ list=doc.elements["/metadata/track/puid-list"]
99
+ @puids=[]
100
+ begin
101
+ list.elements.each{|puid| @puids.push(puid.attributes['id'])}
102
+ rescue
103
+ raise PuidsParseError.new
104
+ end
105
+ begin
106
+ track=doc.elements["/metadata/track"]
107
+ #track.elements['title'].text
108
+ #track.elements['artist/name'].text
109
+ rescue
110
+ ModErrorWarning.new(Brainz.mod, "Cannot get title or artist from ofa.")
111
+ end
112
+ @puids
113
+ end
114
+
115
+ def parse_html(data)
116
+ tags={}
117
+ doc=REXML::Document.new(data)
118
+ t=doc.elements['/html/body/table'].next_element.elements['tr/td'].next_element.elements
119
+
120
+ tmp=t.collect('table'){|el| el if el.attribute('class').value=="artisttitle"}.compact!
121
+ tags[:artists]=[]
122
+ tmp.each{|table| tags[:artists].push(table.elements['tr/td'].next_element.elements['a'].text)} unless tmp.nil?
123
+
124
+ tmp=t.collect('table'){|el| el if el.attribute('class').value=="releasebegin"}.compact!
125
+ tags[:albums]=[]
126
+ tmp.each{|table| tags[:albums].push(table.elements['tr/td'].next_element.elements['a'].text)} unless tmp.nil?
127
+
128
+ tmp=t.collect('table'){|el| el if el.attribute('class').value=="releasetracks"}.compact!
129
+ tags[:tracks]=[]; tags[:titles]=[]
130
+ tmp.each{|table|
131
+ track=table.elements['tr']
132
+ track.each_element_with_attribute('class','no'){|el| tags[:tracks].push(el.text.to_i)}
133
+ track.each_element_with_attribute('class','title'){|el| tags[:titles].push(el.elements['a'].text)}
134
+ track.each_element_with_attribute('class','title va'){|el| tags[:titles].push(el.elements['a'].text)}
135
+ } unless tmp.nil?
136
+ tags
137
+ end
138
+ end
139
+ end
@@ -0,0 +1,34 @@
1
+ # encoding: UTF-8
2
+ =begin
3
+ Copyright 2007-2011 Vincent Carmona
4
+ vinc4mai@gmail.com
5
+
6
+ This file is part of ZiK.
7
+
8
+ ZiK is free software; you can redistribute it and/or modify
9
+ it under the terms of the GNU General Public License as published by
10
+ the Free Software Foundation; either version 2 of the License, or
11
+ (at your option) any later version.
12
+
13
+ ZiK is distributed in the hope that it will be useful,
14
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
15
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
+ GNU General Public License for more details.
17
+
18
+ You should have received a copy of the GNU General Public License
19
+ along with ZiK; if not, write to the Free Software
20
+ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
21
+ =end
22
+
23
+ module Brainz
24
+ class Widget < Gtk::Button
25
+ def initialize(zik)
26
+ super('Brainz')
27
+ self.signal_connect('clicked'){
28
+ playlist=zik.playlist
29
+ Brainz.tag(zik, playlist.songs[playlist.current])
30
+ }
31
+ self.show_all
32
+ end
33
+ end
34
+ end
data/mod/cover.rb ADDED
@@ -0,0 +1,90 @@
1
+ # encoding: UTF-8
2
+ =begin
3
+ Copyright 2007-2011 Vincent Carmona
4
+ vinc4mai@gmail.com
5
+
6
+ This file is part of ZiK.
7
+
8
+ ZiK is free software; you can redistribute it and/or modify
9
+ it under the terms of the GNU General Public License as published by
10
+ the Free Software Foundation; either version 2 of the License, or
11
+ (at your option) any later version.
12
+
13
+ ZiK is distributed in the hope that it will be useful,
14
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
15
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
+ GNU General Public License for more details.
17
+
18
+ You should have received a copy of the GNU General Public License
19
+ along with ZiK; if not, write to the Free Software
20
+ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
21
+ =end
22
+
23
+ module Cover
24
+ def Cover.mod
25
+ @m||=Mod.new('cover', "Cover", _("Display album covers."),
26
+ 'Vincent Carmona <vinc4mai@gmail.com>', 'GPL-2')
27
+ end
28
+
29
+ Cover.mod
30
+ def @m.init(input)
31
+ @dir=input[:mod_dir]
32
+ @zik=zik
33
+ require File.join(@dir, 'cover', 'config')
34
+ @config=Configuration.new(input[:config_dir])
35
+ require File.join(@dir, 'cover', 'configwidget')
36
+ end
37
+
38
+ def @m.load
39
+ unless @loaded
40
+ require File.join(@dir, 'cover', 'widget')
41
+ @widget=Widget.new(@dir, @zik)
42
+ pack(@widget)
43
+ @widget.show_all
44
+ expander.expanded=true
45
+ @zik.signal_connect('play'){|widget, song|
46
+ if @loaded
47
+ tf=@widget.new_song(song)
48
+ @widget.show
49
+ if @config[:hide]
50
+ expander.expanded=tf
51
+ else
52
+ expander.expanded=true
53
+ end
54
+ end
55
+ }
56
+ ModErrorInfo.new(self, "module loaded.")
57
+ @loaded=true
58
+ else
59
+ false
60
+ end
61
+ end
62
+
63
+ def @m.unload
64
+ if @loaded
65
+ @widget.destroy
66
+ @loaded=false
67
+ ModErrorInfo.new(self, "module unloaded.")
68
+ true
69
+ else
70
+ false
71
+ end
72
+ end
73
+
74
+ def @m.configwidget
75
+ @wconfig=ConfigWidget.new(@config)
76
+ end
77
+
78
+ def @m.saveconfig
79
+ if @loaded
80
+ @config[:hide]=@wconfig.bhide.active?
81
+ true
82
+ else
83
+ false
84
+ end
85
+ end
86
+
87
+ def @m.quit
88
+ @config.save if @config
89
+ end
90
+ end
@@ -0,0 +1,666 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <!-- Created with Inkscape (http://www.inkscape.org/) -->
3
+ <svg
4
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
5
+ xmlns:cc="http://creativecommons.org/ns#"
6
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
7
+ xmlns:svg="http://www.w3.org/2000/svg"
8
+ xmlns="http://www.w3.org/2000/svg"
9
+ xmlns:xlink="http://www.w3.org/1999/xlink"
10
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
11
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
12
+ inkscape:export-ydpi="240.00000"
13
+ inkscape:export-xdpi="240.00000"
14
+ inkscape:export-filename="/home/lapo/text.png"
15
+ sodipodi:docname="application-x-cd-image.svg"
16
+ sodipodi:docbase="/home/dobey/Projects/gnome-icon-theme/scalable/mimetypes"
17
+ inkscape:version="0.46"
18
+ sodipodi:version="0.32"
19
+ id="svg249"
20
+ height="48.000000px"
21
+ width="48.000000px"
22
+ inkscape:output_extension="org.inkscape.output.svg.inkscape">
23
+ <defs
24
+ id="defs3">
25
+ <linearGradient
26
+ inkscape:collect="always"
27
+ xlink:href="#linearGradient3656"
28
+ id="linearGradient5816"
29
+ gradientUnits="userSpaceOnUse"
30
+ x1="-26.753757"
31
+ y1="11.566258"
32
+ x2="-24.75"
33
+ y2="9.687501" />
34
+ <radialGradient
35
+ inkscape:collect="always"
36
+ xlink:href="#linearGradient3741"
37
+ id="radialGradient5810"
38
+ gradientUnits="userSpaceOnUse"
39
+ gradientTransform="matrix(1.8860258,0,0,1.1764706,-3.5441033,-4.2352941)"
40
+ cx="4"
41
+ cy="5.2999997"
42
+ fx="4"
43
+ fy="5.2999997"
44
+ r="17" />
45
+ <linearGradient
46
+ inkscape:collect="always"
47
+ xlink:href="#linearGradient3702"
48
+ id="linearGradient5804"
49
+ gradientUnits="userSpaceOnUse"
50
+ x1="25.058096"
51
+ y1="47.027729"
52
+ x2="25.058096"
53
+ y2="39.999443" />
54
+ <radialGradient
55
+ inkscape:collect="always"
56
+ xlink:href="#linearGradient3688"
57
+ id="radialGradient5802"
58
+ gradientUnits="userSpaceOnUse"
59
+ gradientTransform="matrix(2.003784,0,0,1.4,-20.01187,-104.4)"
60
+ cx="4.9929786"
61
+ cy="43.5"
62
+ fx="4.9929786"
63
+ fy="43.5"
64
+ r="2.5" />
65
+ <radialGradient
66
+ inkscape:collect="always"
67
+ xlink:href="#linearGradient3688"
68
+ id="radialGradient5800"
69
+ gradientUnits="userSpaceOnUse"
70
+ gradientTransform="matrix(2.003784,0,0,1.4,27.98813,-17.4)"
71
+ cx="4.9929786"
72
+ cy="43.5"
73
+ fx="4.9929786"
74
+ fy="43.5"
75
+ r="2.5" />
76
+ <linearGradient
77
+ inkscape:collect="always"
78
+ xlink:href="#linearGradient3702"
79
+ id="linearGradient5798"
80
+ gradientUnits="userSpaceOnUse"
81
+ x1="25.058096"
82
+ y1="47.027729"
83
+ x2="25.058096"
84
+ y2="39.999443" />
85
+ <radialGradient
86
+ inkscape:collect="always"
87
+ xlink:href="#linearGradient3688"
88
+ id="radialGradient5796"
89
+ gradientUnits="userSpaceOnUse"
90
+ gradientTransform="matrix(2.003784,0,0,1.4,-20.01187,-104.4)"
91
+ cx="4.9929786"
92
+ cy="43.5"
93
+ fx="4.9929786"
94
+ fy="43.5"
95
+ r="2.5" />
96
+ <radialGradient
97
+ inkscape:collect="always"
98
+ xlink:href="#linearGradient3688"
99
+ id="radialGradient5794"
100
+ gradientUnits="userSpaceOnUse"
101
+ gradientTransform="matrix(2.003784,0,0,1.4,27.98813,-17.4)"
102
+ cx="4.9929786"
103
+ cy="43.5"
104
+ fx="4.9929786"
105
+ fy="43.5"
106
+ r="2.5" />
107
+ <linearGradient
108
+ inkscape:collect="always"
109
+ id="linearGradient3656">
110
+ <stop
111
+ style="stop-color:#ffffff;stop-opacity:1;"
112
+ offset="0"
113
+ id="stop3658" />
114
+ <stop
115
+ style="stop-color:#ffffff;stop-opacity:0;"
116
+ offset="1"
117
+ id="stop3660" />
118
+ </linearGradient>
119
+ <linearGradient
120
+ inkscape:collect="always"
121
+ id="linearGradient3520">
122
+ <stop
123
+ style="stop-color:#000000;stop-opacity:0.41295547"
124
+ offset="0"
125
+ id="stop3522" />
126
+ <stop
127
+ style="stop-color:#000000;stop-opacity:0;"
128
+ offset="1"
129
+ id="stop3524" />
130
+ </linearGradient>
131
+ <linearGradient
132
+ id="linearGradient3671">
133
+ <stop
134
+ style="stop-color:#ffffff;stop-opacity:1;"
135
+ offset="0"
136
+ id="stop3673" />
137
+ <stop
138
+ id="stop3691"
139
+ offset="0.47533694"
140
+ style="stop-color:#ffffff;stop-opacity:1;" />
141
+ <stop
142
+ style="stop-color:#ffffff;stop-opacity:0;"
143
+ offset="1"
144
+ id="stop3675" />
145
+ </linearGradient>
146
+ <linearGradient
147
+ inkscape:collect="always"
148
+ id="linearGradient3741">
149
+ <stop
150
+ style="stop-color:#ffffff;stop-opacity:1;"
151
+ offset="0"
152
+ id="stop3743" />
153
+ <stop
154
+ style="stop-color:#ffffff;stop-opacity:0;"
155
+ offset="1"
156
+ id="stop3745" />
157
+ </linearGradient>
158
+ <linearGradient
159
+ inkscape:collect="always"
160
+ id="linearGradient3613">
161
+ <stop
162
+ style="stop-color:#888a85;stop-opacity:1"
163
+ offset="0"
164
+ id="stop3615" />
165
+ <stop
166
+ style="stop-color:#babdb6;stop-opacity:1"
167
+ offset="1"
168
+ id="stop3617" />
169
+ </linearGradient>
170
+ <linearGradient
171
+ id="linearGradient3683">
172
+ <stop
173
+ id="stop3685"
174
+ offset="0"
175
+ style="stop-color:#f6f6f5;stop-opacity:1;" />
176
+ <stop
177
+ id="stop3689"
178
+ offset="1"
179
+ style="stop-color:#d3d7cf;stop-opacity:1" />
180
+ </linearGradient>
181
+ <linearGradient
182
+ id="linearGradient3688"
183
+ inkscape:collect="always">
184
+ <stop
185
+ id="stop3690"
186
+ offset="0"
187
+ style="stop-color:black;stop-opacity:1;" />
188
+ <stop
189
+ id="stop3692"
190
+ offset="1"
191
+ style="stop-color:black;stop-opacity:0;" />
192
+ </linearGradient>
193
+ <linearGradient
194
+ id="linearGradient3702">
195
+ <stop
196
+ id="stop3704"
197
+ offset="0"
198
+ style="stop-color:black;stop-opacity:0;" />
199
+ <stop
200
+ style="stop-color:black;stop-opacity:1;"
201
+ offset="0.5"
202
+ id="stop3710" />
203
+ <stop
204
+ id="stop3706"
205
+ offset="1"
206
+ style="stop-color:black;stop-opacity:0;" />
207
+ </linearGradient>
208
+ <linearGradient
209
+ inkscape:collect="always"
210
+ xlink:href="#linearGradient3520"
211
+ id="linearGradient2466"
212
+ gradientUnits="userSpaceOnUse"
213
+ gradientTransform="matrix(0.9223058,0,0,0.9185751,57.552632,1.3257)"
214
+ x1="-18.588562"
215
+ y1="11.052948"
216
+ x2="-28.789402"
217
+ y2="14.069944" />
218
+ <radialGradient
219
+ inkscape:collect="always"
220
+ xlink:href="#linearGradient3671"
221
+ id="radialGradient2469"
222
+ gradientUnits="userSpaceOnUse"
223
+ gradientTransform="matrix(0.4073362,-0.2798276,0.7510293,1.0932492,34.81516,-8.43787)"
224
+ cx="-26.305403"
225
+ cy="10.108011"
226
+ fx="-26.305403"
227
+ fy="10.108011"
228
+ r="7.0421038" />
229
+ <radialGradient
230
+ inkscape:collect="always"
231
+ xlink:href="#linearGradient3683"
232
+ id="radialGradient2476"
233
+ gradientUnits="userSpaceOnUse"
234
+ gradientTransform="matrix(3.9957492,0,0,1.9350367,150.62141,-31.167422)"
235
+ cx="-30.249996"
236
+ cy="35.357208"
237
+ fx="-30.249996"
238
+ fy="35.357208"
239
+ r="18.000002" />
240
+ <linearGradient
241
+ inkscape:collect="always"
242
+ xlink:href="#linearGradient3613"
243
+ id="linearGradient2478"
244
+ gradientUnits="userSpaceOnUse"
245
+ gradientTransform="translate(60,0)"
246
+ x1="-47.5"
247
+ y1="49.020683"
248
+ x2="-62.75"
249
+ y2="-22.502075" />
250
+ <linearGradient
251
+ id="linearGradient23419"
252
+ inkscape:collect="always">
253
+ <stop
254
+ id="stop23421"
255
+ offset="0"
256
+ style="stop-color:#000000;stop-opacity:1;" />
257
+ <stop
258
+ id="stop23423"
259
+ offset="1"
260
+ style="stop-color:#000000;stop-opacity:0;" />
261
+ </linearGradient>
262
+ <linearGradient
263
+ y2="34.3075"
264
+ x2="32.511"
265
+ y1="11.1885"
266
+ x1="14.9966"
267
+ gradientUnits="userSpaceOnUse"
268
+ id="aigrd1">
269
+ <stop
270
+ id="stop3034"
271
+ style="stop-color:#EBEBEB"
272
+ offset="0" />
273
+ <stop
274
+ id="stop3036"
275
+ style="stop-color:#FFFFFF"
276
+ offset="0.5" />
277
+ <stop
278
+ id="stop3038"
279
+ style="stop-color:#EBEBEB"
280
+ offset="1" />
281
+ </linearGradient>
282
+ <linearGradient
283
+ y2="14.2033"
284
+ x2="35.3912"
285
+ y1="32.4165"
286
+ x1="12.2744"
287
+ gradientUnits="userSpaceOnUse"
288
+ id="aigrd2">
289
+ <stop
290
+ id="stop3043"
291
+ style="stop-color:#FBFBFB"
292
+ offset="0" />
293
+ <stop
294
+ id="stop3045"
295
+ style="stop-color:#B6B6B6"
296
+ offset="0.5" />
297
+ <stop
298
+ id="stop3047"
299
+ style="stop-color:#E4E4E4"
300
+ offset="1" />
301
+ </linearGradient>
302
+ <linearGradient
303
+ id="linearGradient6036"
304
+ inkscape:collect="always">
305
+ <stop
306
+ id="stop6038"
307
+ offset="0"
308
+ style="stop-color:#ffffff;stop-opacity:1;" />
309
+ <stop
310
+ id="stop6040"
311
+ offset="1"
312
+ style="stop-color:#ffffff;stop-opacity:0;" />
313
+ </linearGradient>
314
+ <linearGradient
315
+ id="linearGradient6028"
316
+ inkscape:collect="always">
317
+ <stop
318
+ id="stop6030"
319
+ offset="0"
320
+ style="stop-color:#ffffff;stop-opacity:1;" />
321
+ <stop
322
+ id="stop6032"
323
+ offset="1"
324
+ style="stop-color:#ffffff;stop-opacity:0;" />
325
+ </linearGradient>
326
+ <linearGradient
327
+ id="linearGradient4409"
328
+ inkscape:collect="always">
329
+ <stop
330
+ id="stop4411"
331
+ offset="0"
332
+ style="stop-color:#ffffff;stop-opacity:1;" />
333
+ <stop
334
+ id="stop4413"
335
+ offset="1"
336
+ style="stop-color:#ffffff;stop-opacity:0;" />
337
+ </linearGradient>
338
+ <radialGradient
339
+ inkscape:collect="always"
340
+ xlink:href="#linearGradient23419"
341
+ id="radialGradient2669"
342
+ gradientUnits="userSpaceOnUse"
343
+ gradientTransform="matrix(1,0,0,0.25,0,31.22703)"
344
+ cx="23.334524"
345
+ cy="41.63604"
346
+ fx="23.334524"
347
+ fy="41.63604"
348
+ r="22.627417" />
349
+ <linearGradient
350
+ inkscape:collect="always"
351
+ xlink:href="#aigrd1"
352
+ id="linearGradient2671"
353
+ gradientUnits="userSpaceOnUse"
354
+ gradientTransform="matrix(1.190476,0,0,1.190476,-4.308944,-3.833323)"
355
+ x1="14.9966"
356
+ y1="11.1885"
357
+ x2="32.511"
358
+ y2="34.3075" />
359
+ <linearGradient
360
+ inkscape:collect="always"
361
+ xlink:href="#aigrd2"
362
+ id="linearGradient2673"
363
+ gradientUnits="userSpaceOnUse"
364
+ gradientTransform="matrix(1.190476,0,0,1.190476,-4.308944,-3.833324)"
365
+ x1="12.2744"
366
+ y1="32.4165"
367
+ x2="35.3912"
368
+ y2="14.2033" />
369
+ <linearGradient
370
+ inkscape:collect="always"
371
+ xlink:href="#linearGradient4409"
372
+ id="linearGradient2675"
373
+ gradientUnits="userSpaceOnUse"
374
+ gradientTransform="translate(0.5,-0.353553)"
375
+ x1="24.376854"
376
+ y1="22.524706"
377
+ x2="11.389072"
378
+ y2="7.7321281" />
379
+ <linearGradient
380
+ inkscape:collect="always"
381
+ xlink:href="#linearGradient6036"
382
+ id="linearGradient2677"
383
+ gradientUnits="userSpaceOnUse"
384
+ gradientTransform="translate(-8.452e-2,-1.333323)"
385
+ x1="10.501720"
386
+ y1="3.6100161"
387
+ x2="48.798885"
388
+ y2="54.698483" />
389
+ <linearGradient
390
+ inkscape:collect="always"
391
+ xlink:href="#linearGradient6028"
392
+ id="linearGradient2679"
393
+ gradientUnits="userSpaceOnUse"
394
+ x1="28.702885"
395
+ y1="31.494707"
396
+ x2="17.742729"
397
+ y2="18.366575" />
398
+ </defs>
399
+ <sodipodi:namedview
400
+ inkscape:window-y="146"
401
+ inkscape:window-x="270"
402
+ inkscape:window-height="872"
403
+ inkscape:window-width="1048"
404
+ inkscape:document-units="px"
405
+ inkscape:grid-bbox="true"
406
+ showgrid="false"
407
+ inkscape:current-layer="layer6"
408
+ inkscape:cy="10.206858"
409
+ inkscape:cx="42.21962"
410
+ inkscape:zoom="1"
411
+ inkscape:pageshadow="2"
412
+ inkscape:pageopacity="0.0"
413
+ borderopacity="0.25490196"
414
+ bordercolor="#666666"
415
+ pagecolor="#ffffff"
416
+ id="base"
417
+ inkscape:showpageshadow="false"
418
+ showborder="false">
419
+ <inkscape:grid
420
+ type="xygrid"
421
+ id="grid2681"
422
+ visible="true"
423
+ enabled="true" />
424
+ </sodipodi:namedview>
425
+ <metadata
426
+ id="metadata4">
427
+ <rdf:RDF>
428
+ <cc:Work
429
+ rdf:about="">
430
+ <dc:format>image/svg+xml</dc:format>
431
+ <dc:type
432
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
433
+ <dc:title>Generic Text</dc:title>
434
+ <dc:subject>
435
+ <rdf:Bag>
436
+ <rdf:li>text</rdf:li>
437
+ <rdf:li>plaintext</rdf:li>
438
+ <rdf:li>regular</rdf:li>
439
+ <rdf:li>document</rdf:li>
440
+ </rdf:Bag>
441
+ </dc:subject>
442
+ <cc:license
443
+ rdf:resource="http://creativecommons.org/licenses/GPL/2.0/" />
444
+ <dc:creator>
445
+ <cc:Agent>
446
+ <dc:title>Lapo Calamandrei</dc:title>
447
+ </cc:Agent>
448
+ </dc:creator>
449
+ <dc:source />
450
+ <dc:date />
451
+ <dc:rights>
452
+ <cc:Agent>
453
+ <dc:title />
454
+ </cc:Agent>
455
+ </dc:rights>
456
+ <dc:publisher>
457
+ <cc:Agent>
458
+ <dc:title />
459
+ </cc:Agent>
460
+ </dc:publisher>
461
+ <dc:identifier />
462
+ <dc:relation />
463
+ <dc:language />
464
+ <dc:coverage />
465
+ <dc:description />
466
+ <dc:contributor>
467
+ <cc:Agent>
468
+ <dc:title />
469
+ </cc:Agent>
470
+ </dc:contributor>
471
+ </cc:Work>
472
+ <cc:License
473
+ rdf:about="http://creativecommons.org/licenses/GPL/2.0/">
474
+ <cc:permits
475
+ rdf:resource="http://web.resource.org/cc/Reproduction" />
476
+ <cc:permits
477
+ rdf:resource="http://web.resource.org/cc/Distribution" />
478
+ <cc:requires
479
+ rdf:resource="http://web.resource.org/cc/Notice" />
480
+ <cc:permits
481
+ rdf:resource="http://web.resource.org/cc/DerivativeWorks" />
482
+ <cc:requires
483
+ rdf:resource="http://web.resource.org/cc/ShareAlike" />
484
+ <cc:requires
485
+ rdf:resource="http://web.resource.org/cc/SourceCode" />
486
+ </cc:License>
487
+ </rdf:RDF>
488
+ </metadata>
489
+ <g
490
+ inkscape:groupmode="layer"
491
+ id="layer6"
492
+ inkscape:label="Shadow">
493
+ <rect
494
+ style="opacity:0;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none;display:inline"
495
+ id="rect5504"
496
+ width="48"
497
+ height="48"
498
+ x="0"
499
+ y="0" />
500
+ <g
501
+ style="opacity:0.65587045;display:inline"
502
+ id="g5508"
503
+ inkscape:label="Shadow"
504
+ transform="matrix(1.0464281,0,0,0.8888889,-1.18572,5.72224)">
505
+ <g
506
+ id="g5511"
507
+ style="opacity:0.4"
508
+ transform="matrix(1.052632,0,0,1.285713,-1.263158,-13.42854)">
509
+ <rect
510
+ y="40"
511
+ x="38"
512
+ height="7"
513
+ width="5"
514
+ id="rect5513"
515
+ style="opacity:1;fill:url(#radialGradient5794);fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
516
+ <rect
517
+ transform="scale(-1,-1)"
518
+ y="-47"
519
+ x="-10"
520
+ height="7"
521
+ width="5"
522
+ id="rect5515"
523
+ style="opacity:1;fill:url(#radialGradient5796);fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
524
+ <rect
525
+ y="40"
526
+ x="10"
527
+ height="7.0000005"
528
+ width="28"
529
+ id="rect5517"
530
+ style="opacity:1;fill:url(#linearGradient5798);fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
531
+ </g>
532
+ </g>
533
+ <g
534
+ style="display:inline"
535
+ id="g5519"
536
+ inkscape:label="Shadow"
537
+ transform="matrix(0.9548466,0,0,0.5555562,1.01224,19.888875)">
538
+ <g
539
+ id="g5521"
540
+ style="opacity:0.4"
541
+ transform="matrix(1.052632,0,0,1.285713,-1.263158,-13.42854)">
542
+ <rect
543
+ y="40"
544
+ x="38"
545
+ height="7"
546
+ width="5"
547
+ id="rect5523"
548
+ style="opacity:1;fill:url(#radialGradient5800);fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
549
+ <rect
550
+ transform="scale(-1,-1)"
551
+ y="-47"
552
+ x="-10"
553
+ height="7"
554
+ width="5"
555
+ id="rect5525"
556
+ style="opacity:1;fill:url(#radialGradient5802);fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
557
+ <rect
558
+ y="40"
559
+ x="10"
560
+ height="7.0000005"
561
+ width="28"
562
+ id="rect5527"
563
+ style="opacity:1;fill:url(#linearGradient5804);fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
564
+ </g>
565
+ </g>
566
+ <path
567
+ style="fill:url(#radialGradient2476);fill-opacity:1;stroke:url(#linearGradient2478);stroke-width:1;stroke-miterlimit:4;display:inline"
568
+ d="M 8.52386,3.5 C 8.52386,3.5 26,3.5 27.5,3.5 C 31.37705,3.572942 34,6 36.5,8.5 C 39,11 41.10768,13.752625 41.5,17.5 C 41.5,19 41.5,42.47614 41.5,42.47614 C 41.5,43.59736 40.59736,44.5 39.47615,44.5 L 8.52386,44.5 C 7.40264,44.5 6.5,43.59736 6.5,42.47614 L 6.5,5.523858 C 6.5,4.402641 7.40264,3.5 8.52386,3.5 z"
569
+ id="path5529"
570
+ sodipodi:nodetypes="ccsccccccc" />
571
+ <path
572
+ sodipodi:type="inkscape:offset"
573
+ inkscape:radius="-0.4861359"
574
+ inkscape:original="M 8.53125 3.5 C 7.410033 3.5 6.5 4.4100329 6.5 5.53125 L 6.5 42.46875 C 6.5 43.589967 7.4100329 44.5 8.53125 44.5 L 39.46875 44.5 C 40.589967 44.5 41.5 43.589966 41.5 42.46875 C 41.5 42.46875 41.5 19 41.5 17.5 C 41.5 16 41 13 39 11 C 37 9 36 8 34 6 C 32 4 29 3.5 27.5 3.5 C 26 3.5 8.5312499 3.5 8.53125 3.5 z "
575
+ style="opacity:0.68016196;fill:url(#radialGradient5810);fill-opacity:1;stroke:none;stroke-width:1;stroke-miterlimit:4;display:inline"
576
+ id="path5531"
577
+ d="M 8.53125,4 C 7.6730803,4 7,4.6730802 7,5.53125 L 7,42.46875 C 7,43.32692 7.6730802,44 8.53125,44 L 39.46875,44 C 40.326919,44 41,43.326918 41,42.46875 C 41,42.46875 41,19 41,17.5 C 41,16.10803 40.513021,13.200521 38.65625,11.34375 C 36.65625,9.34375 35.65625,8.34375 33.65625,6.34375 C 31.799479,4.4869792 28.89197,4 27.5,4 C 26,4 8.53125,4 8.53125,4 z" />
578
+ <path
579
+ style="fill:url(#radialGradient2469);fill-opacity:1;stroke:none;stroke-width:1;stroke-miterlimit:4;display:inline"
580
+ d="M 27.5,4 C 26.11111,4 27.45793,4.497088 28.84375,5.125 C 30.22957,5.752912 33.81663,8.340052 33,12 C 37.32331,11.569417 39.67913,15.122378 40,16.28125 C 40.32087,17.440122 41,18.888889 41,17.5 C 41.02833,13.694419 38.15457,11.068299 36.15625,8.84375 C 34.15793,6.619201 31.15379,4.476761 27.5,4 z"
581
+ id="path5533"
582
+ sodipodi:nodetypes="ccccczc" />
583
+ <g
584
+ inkscape:label="Layer 1"
585
+ id="g2660"
586
+ transform="translate(7.9142189,10.975972)">
587
+ <path
588
+ transform="matrix(0.655734,0,0,0.718377,0.826171,-3.228013)"
589
+ inkscape:r_cy="true"
590
+ inkscape:r_cx="true"
591
+ d="M 45.961941,41.63604 A 22.627417,5.6568542 0 1 1 0.70710754,41.63604 A 22.627417,5.6568542 0 1 1 45.961941,41.63604 z"
592
+ sodipodi:ry="5.6568542"
593
+ sodipodi:rx="22.627417"
594
+ sodipodi:cy="41.63604"
595
+ sodipodi:cx="23.334524"
596
+ id="path23417"
597
+ style="opacity:0.39000001;fill:url(#radialGradient2669);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;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"
598
+ sodipodi:type="arc" />
599
+ <path
600
+ style="fill:url(#linearGradient2671);fill-rule:nonzero;stroke:none;stroke-miterlimit:4"
601
+ d="M 16.1356,1.5228814 C 8.5634317,1.5228814 2.4744725,7.778819 2.4744725,15.558639 C 2.4744725,23.338459 8.5634317,29.594397 16.1356,29.594397 C 23.707769,29.594397 29.796729,23.338459 29.796729,15.558639 C 29.796729,7.778819 23.707769,1.5228814 16.1356,1.5228814 L 16.1356,1.5228814 z M 16.1356,18.927221 C 14.340138,18.927221 12.856929,17.403338 12.856929,15.558639 C 12.856929,13.713939 14.340138,12.190057 16.1356,12.190057 C 17.931063,12.190057 19.414271,13.713939 19.414271,15.558639 C 19.414271,17.403338 17.931063,18.927221 16.1356,18.927221 z"
602
+ id="path3040"
603
+ inkscape:r_cx="true"
604
+ inkscape:r_cy="true" />
605
+ <path
606
+ style="fill:url(#linearGradient2673);fill-rule:nonzero;stroke:#808080;stroke-width:0.99999988;stroke-miterlimit:4;stroke-opacity:1"
607
+ d="M 16.135585,1.5228819 C 8.5634244,1.5228819 2.4744714,7.7788247 2.4744714,15.55865 C 2.4744714,23.338477 8.5634244,29.59442 16.135585,29.59442 C 23.707746,29.59442 29.7967,23.338477 29.7967,15.55865 C 29.7967,7.7788247 23.707746,1.5228819 16.135585,1.5228819 L 16.135585,1.5228819 z M 16.135585,18.927236 C 14.340125,18.927236 12.856918,17.403352 12.856918,15.55865 C 12.856918,13.71395 14.340125,12.190066 16.135585,12.190066 C 17.931045,12.190066 19.414253,13.71395 19.414253,15.55865 C 19.414253,17.403352 17.931045,18.927236 16.135585,18.927236 z"
608
+ id="path3049"
609
+ inkscape:r_cx="true"
610
+ inkscape:r_cy="true" />
611
+ <path
612
+ sodipodi:nodetypes="csccssccsc"
613
+ id="path3531"
614
+ d="M 15.576949,1.9442499 C 8.5201408,2.2177184 2.9215359,8.1541309 2.9215359,15.474114 C 2.9215359,18.792508 4.0671844,21.808658 5.9817374,24.155946 L 13.271764,17.816078 C 12.798757,17.247905 12.583745,16.439562 12.583745,15.642544 C 12.583745,13.358382 14.094746,11.891712 16.234463,11.891712 C 17.207523,11.891712 18.182706,12.345411 18.764591,13.068222 L 26.218553,6.812567 C 23.808617,3.8319421 20.156766,1.9442499 16.07053,1.9442499 C 15.89954,1.9442499 15.746313,1.9376866 15.576949,1.9442499 z"
615
+ style="fill:url(#linearGradient2675);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-miterlimit:4;stroke-opacity:1" />
616
+ <path
617
+ style="opacity:0.51098902;fill:#eeeeec;fill-rule:nonzero;stroke:none;stroke-miterlimit:4"
618
+ d="M 16.1356,8.7512976 C 12.435564,8.7512976 9.5099538,11.845544 9.5099538,15.558639 C 9.5099538,19.360142 12.521612,22.365981 16.1356,22.365981 C 19.835636,22.365981 22.761247,19.271735 22.761247,15.558639 C 22.761247,11.757136 19.749589,8.7512976 16.1356,8.7512976 L 16.1356,8.7512976 z M 16.1356,19.271735 C 14.156511,19.271735 12.521612,17.592002 12.521612,15.558639 C 12.521612,13.525277 14.156511,11.845544 16.1356,11.845544 C 18.114689,11.845544 19.749589,13.525277 19.749589,15.558639 C 19.749589,17.592002 18.114689,19.271735 16.1356,19.271735 z"
619
+ id="path3051"
620
+ inkscape:r_cx="true"
621
+ inkscape:r_cy="true" />
622
+ <path
623
+ sodipodi:nodetypes="cccccc"
624
+ id="path5264"
625
+ d="M 16.135577,2.5495971 C 9.1193401,2.5495971 3.4774178,8.3479206 3.4774178,15.558654 C 3.4774178,22.769388 9.1193401,28.567711 16.135577,28.567711 C 23.151814,28.567711 28.793737,22.769388 28.793737,15.558654 C 28.793737,8.3479206 23.151814,2.5495971 16.135577,2.5495971 L 16.135577,2.5495971 z"
626
+ style="opacity:0.54644811;fill:none;fill-rule:nonzero;stroke:url(#linearGradient2677);stroke-width:1;stroke-miterlimit:4;stroke-opacity:1"
627
+ inkscape:r_cx="true"
628
+ inkscape:r_cy="true" />
629
+ <path
630
+ transform="matrix(0.655734,0,0,0.673717,0.228396,-1.224721)"
631
+ d="M 30.405591,24.930641 A 6.0987959,6.0987959 0 1 1 18.207999,24.930641 A 6.0987959,6.0987959 0 1 1 30.405591,24.930641 z"
632
+ sodipodi:ry="6.0987959"
633
+ sodipodi:rx="6.0987959"
634
+ sodipodi:cy="24.930641"
635
+ sodipodi:cx="24.306795"
636
+ id="path6026"
637
+ style="opacity:0.67213111;fill:none;fill-opacity:0.31638417;fill-rule:nonzero;stroke:url(#linearGradient2679);stroke-width:1.40001273;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
638
+ sodipodi:type="arc"
639
+ inkscape:r_cx="true"
640
+ inkscape:r_cy="true" />
641
+ </g>
642
+ <path
643
+ sodipodi:type="inkscape:offset"
644
+ inkscape:radius="-0.99436891"
645
+ inkscape:original="M -51.46875 3.5 C -52.589967 3.5 -53.5 4.4100329 -53.5 5.53125 L -53.5 42.46875 C -53.5 43.589967 -52.589966 44.5 -51.46875 44.5 L -20.53125 44.5 C -19.410033 44.5 -18.5 43.589966 -18.5 42.46875 C -18.5 42.46875 -18.5 19 -18.5 17.5 C -18.5 16 -19 13 -21 11 C -23 9 -24 8 -26 6 C -28 4 -31 3.5 -32.5 3.5 C -34 3.5 -51.468749 3.5 -51.46875 3.5 z "
646
+ style="fill:none;fill-opacity:1;stroke:url(#linearGradient5816);stroke-width:1;stroke-miterlimit:4;display:inline"
647
+ id="path5537"
648
+ d="M -51.46875,4.5 C -52.051916,4.5 -52.5,4.9480842 -52.5,5.53125 L -52.5,42.46875 C -52.5,43.051915 -52.051914,43.5 -51.46875,43.5 L -20.53125,43.5 C -19.948085,43.5 -19.5,43.051914 -19.5,42.46875 C -19.5,42.46875 -19.5,19 -19.5,17.5 C -19.5,16.220971 -19.980469,13.394531 -21.6875,11.6875 C -23.6875,9.6875 -24.6875,8.6875 -26.6875,6.6875 C -28.394531,4.9804687 -31.220971,4.5 -32.5,4.5 C -34,4.5 -51.46875,4.5 -51.46875,4.5 z"
649
+ transform="translate(60,0)" />
650
+ <path
651
+ style="opacity:0.87854249;fill:url(#linearGradient2466);fill-opacity:1;stroke:none;stroke-width:1;stroke-miterlimit:4;display:inline"
652
+ d="M 28.60088,5.014353 C 29.52318,5.014353 31.60932,11.210015 30.68702,15.343603 C 34.98198,14.915844 39.5404,15.43178 40,16.28125 C 39.67913,15.122378 37.32331,11.569417 33,12 C 33.86466,8.124761 29.81343,5.382702 28.60088,5.014353 z"
653
+ id="path5535"
654
+ sodipodi:nodetypes="ccccc" />
655
+ </g>
656
+ <g
657
+ style="display:inline"
658
+ inkscape:groupmode="layer"
659
+ inkscape:label="Base"
660
+ id="layer1" />
661
+ <g
662
+ inkscape:groupmode="layer"
663
+ id="layer5"
664
+ inkscape:label="Text"
665
+ style="display:inline" />
666
+ </svg>