compony 0.2.0 → 0.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (91) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +25 -0
  3. data/Gemfile.lock +3 -3
  4. data/README.md +1397 -33
  5. data/Rakefile +6 -2
  6. data/TODO.md +1 -0
  7. data/VERSION +1 -0
  8. data/app/controllers/compony_controller.rb +3 -1
  9. data/compony.gemspec +7 -7
  10. data/config/locales/fr.yml +33 -0
  11. data/doc/ComponentGenerator.html +231 -0
  12. data/doc/Components.html +105 -0
  13. data/doc/ComponentsGenerator.html +203 -0
  14. data/doc/Compony/Component.html +2098 -0
  15. data/doc/Compony/ComponentMixins/Default/Labelling.html +406 -0
  16. data/doc/Compony/ComponentMixins/Default/Standalone/ResourcefulVerbDsl.html +539 -0
  17. data/doc/Compony/ComponentMixins/Default/Standalone/StandaloneDsl.html +588 -0
  18. data/doc/Compony/ComponentMixins/Default/Standalone/VerbDsl.html +577 -0
  19. data/doc/Compony/ComponentMixins/Default/Standalone.html +692 -0
  20. data/doc/Compony/ComponentMixins/Default.html +126 -0
  21. data/doc/Compony/ComponentMixins/Resourceful.html +1193 -0
  22. data/doc/Compony/ComponentMixins.html +126 -0
  23. data/doc/Compony/Components/Button.html +293 -0
  24. data/doc/Compony/Components/Destroy.html +384 -0
  25. data/doc/Compony/Components/Edit.html +462 -0
  26. data/doc/Compony/Components/Form.html +1112 -0
  27. data/doc/Compony/Components/New.html +462 -0
  28. data/doc/Compony/Components/WithForm.html +528 -0
  29. data/doc/Compony/Components.html +126 -0
  30. data/doc/Compony/ControllerMixin.html +136 -0
  31. data/doc/Compony/Engine.html +133 -0
  32. data/doc/Compony/MethodAccessibleHash.html +453 -0
  33. data/doc/Compony/ModelFields/Anchormodel.html +383 -0
  34. data/doc/Compony/ModelFields/Association.html +613 -0
  35. data/doc/Compony/ModelFields/Attachment.html +305 -0
  36. data/doc/Compony/ModelFields/Base.html +1066 -0
  37. data/doc/Compony/ModelFields/Boolean.html +232 -0
  38. data/doc/Compony/ModelFields/Color.html +299 -0
  39. data/doc/Compony/ModelFields/Currency.html +232 -0
  40. data/doc/Compony/ModelFields/Date.html +232 -0
  41. data/doc/Compony/ModelFields/Datetime.html +232 -0
  42. data/doc/Compony/ModelFields/Decimal.html +154 -0
  43. data/doc/Compony/ModelFields/Email.html +240 -0
  44. data/doc/Compony/ModelFields/Float.html +154 -0
  45. data/doc/Compony/ModelFields/Integer.html +154 -0
  46. data/doc/Compony/ModelFields/Percentage.html +232 -0
  47. data/doc/Compony/ModelFields/Phone.html +301 -0
  48. data/doc/Compony/ModelFields/RichText.html +232 -0
  49. data/doc/Compony/ModelFields/String.html +154 -0
  50. data/doc/Compony/ModelFields/Text.html +154 -0
  51. data/doc/Compony/ModelFields/Time.html +154 -0
  52. data/doc/Compony/ModelFields/Url.html +240 -0
  53. data/doc/Compony/ModelFields.html +126 -0
  54. data/doc/Compony/ModelMixin.html +524 -0
  55. data/doc/Compony/RequestContext.html +791 -0
  56. data/doc/Compony/Version.html +139 -0
  57. data/doc/Compony/ViewHelpers.html +443 -0
  58. data/doc/Compony.html +2156 -0
  59. data/doc/ComponyController.html +124 -0
  60. data/doc/_index.html +569 -0
  61. data/doc/class_list.html +51 -0
  62. data/doc/css/common.css +1 -0
  63. data/doc/css/full_list.css +58 -0
  64. data/doc/css/style.css +497 -0
  65. data/doc/file.README.html +1565 -0
  66. data/doc/file_list.html +56 -0
  67. data/doc/frames.html +17 -0
  68. data/doc/imgs/intro-example-destroy.png +0 -0
  69. data/doc/imgs/intro-example-edit.png +0 -0
  70. data/doc/imgs/intro-example-index.png +0 -0
  71. data/doc/imgs/intro-example-new.png +0 -0
  72. data/doc/imgs/intro-example-show.png +0 -0
  73. data/doc/index.html +1565 -0
  74. data/doc/js/app.js +314 -0
  75. data/doc/js/full_list.js +216 -0
  76. data/doc/js/jquery.js +4 -0
  77. data/doc/method_list.html +1435 -0
  78. data/doc/resourceful_lifecycle.png +0 -0
  79. data/doc/top-level-namespace.html +112 -0
  80. data/lib/compony/component.rb +2 -1
  81. data/lib/compony/component_mixins/default/standalone/resourceful_verb_dsl.rb +1 -1
  82. data/lib/compony/component_mixins/default/standalone/standalone_dsl.rb +14 -3
  83. data/lib/compony/component_mixins/default/standalone/verb_dsl.rb +14 -5
  84. data/lib/compony/component_mixins/default/standalone.rb +10 -3
  85. data/lib/compony/components/form.rb +6 -1
  86. data/lib/compony/components/with_form.rb +14 -1
  87. data/lib/compony/model_fields/anchormodel.rb +0 -22
  88. data/lib/compony/model_mixin.rb +12 -2
  89. data/lib/compony/version.rb +1 -7
  90. data/logo.svg +133 -0
  91. metadata +83 -6
Binary file
@@ -0,0 +1,112 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <meta charset="utf-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>
7
+ Top Level Namespace
8
+
9
+ &mdash; Documentation by YARD 0.9.34
10
+
11
+ </title>
12
+
13
+ <link rel="stylesheet" href="css/style.css" type="text/css" />
14
+
15
+ <link rel="stylesheet" href="css/common.css" type="text/css" />
16
+
17
+ <script type="text/javascript">
18
+ pathId = "";
19
+ relpath = '';
20
+ </script>
21
+
22
+
23
+ <script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
24
+
25
+ <script type="text/javascript" charset="utf-8" src="js/app.js"></script>
26
+
27
+
28
+ </head>
29
+ <body>
30
+ <div class="nav_wrap">
31
+ <iframe id="nav" src="class_list.html?1"></iframe>
32
+ <div id="resizer"></div>
33
+ </div>
34
+
35
+ <div id="main" tabindex="-1">
36
+ <div id="header">
37
+ <div id="menu">
38
+
39
+ <a href="_index.html">Index</a> &raquo;
40
+
41
+
42
+ <span class="title">Top Level Namespace</span>
43
+
44
+ </div>
45
+
46
+ <div id="search">
47
+
48
+ <a class="full_list_link" id="class_list_link"
49
+ href="class_list.html">
50
+
51
+ <svg width="24" height="24">
52
+ <rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
53
+ <rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
54
+ <rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
55
+ </svg>
56
+ </a>
57
+
58
+ </div>
59
+ <div class="clear"></div>
60
+ </div>
61
+
62
+ <div id="content"><h1>Top Level Namespace
63
+
64
+
65
+
66
+ </h1>
67
+ <div class="box_info">
68
+
69
+
70
+
71
+
72
+
73
+
74
+
75
+
76
+
77
+
78
+
79
+ </div>
80
+
81
+ <h2>Defined Under Namespace</h2>
82
+ <p class="children">
83
+
84
+
85
+ <strong class="modules">Modules:</strong> <span class='object_link'><a href="Components.html" title="Components (module)">Components</a></span>, <span class='object_link'><a href="Compony.html" title="Compony (module)">Compony</a></span>
86
+
87
+
88
+
89
+ <strong class="classes">Classes:</strong> <span class='object_link'><a href="ComponentGenerator.html" title="ComponentGenerator (class)">ComponentGenerator</a></span>, <span class='object_link'><a href="ComponentsGenerator.html" title="ComponentsGenerator (class)">ComponentsGenerator</a></span>, <span class='object_link'><a href="ComponyController.html" title="ComponyController (class)">ComponyController</a></span>
90
+
91
+
92
+ </p>
93
+
94
+
95
+
96
+
97
+
98
+
99
+
100
+
101
+
102
+ </div>
103
+
104
+ <div id="footer">
105
+ Generated on Wed Apr 24 17:14:05 2024 by
106
+ <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
107
+ 0.9.34 (ruby-3.2.2).
108
+ </div>
109
+
110
+ </div>
111
+ </body>
112
+ </html>
@@ -145,10 +145,11 @@ module Compony
145
145
  end
146
146
 
147
147
  # Renders the component using the controller passsed to it and returns it as a string.
148
- # @param standalone: pass true iff `render` is called from `render_standalone`
148
+ # @param [Boolean] standalone pass true iff `render` is called from `render_standalone`
149
149
  # Do not overwrite.
150
150
  def render(controller, standalone: false, **locals)
151
151
  # Call before_render hook if any and backfire instance variables back to the component
152
+ # TODO: Can .request_context be removed from the next line? Test well!
152
153
  RequestContext.new(self, controller, locals:).request_context.evaluate_with_backfire(&@before_render_block) if @before_render_block
153
154
  # Render, unless before_render has already issued a body (e.g. through redirecting).
154
155
  if controller.response_body.nil?
@@ -14,7 +14,7 @@ module Compony
14
14
  end
15
15
 
16
16
  # For internal usage only, processes the block and returns a config hash.
17
- def to_conf(&)
17
+ def to_conf(provide_defaults:, &)
18
18
  return super.deep_merge({
19
19
  load_data_block: @load_data_block,
20
20
  assign_attributes_block: @assign_attributes_block,
@@ -4,11 +4,13 @@ module Compony
4
4
  module Standalone
5
5
  # @api description
6
6
  # Wrapper and DSL helper for component's standalone config
7
+ # Pass `provide_defaults` true if this is the first standalone DSL of a component. Pass false if it is a subsequent one (e.g. if subclassed comp)
7
8
  class StandaloneDsl < Dslblend::Base
8
- def initialize(component, name = nil, path: nil)
9
+ def initialize(component, name = nil, provide_defaults:, path: nil)
9
10
  super()
10
11
  @component = component
11
12
  @name = name&.to_sym
13
+ @provide_defaults = provide_defaults
12
14
  @path = path
13
15
  @verbs = {}
14
16
  @skip_authentication = false
@@ -38,8 +40,17 @@ module Compony
38
40
  def verb(verb, *args, **nargs, &)
39
41
  verb = verb.to_sym
40
42
  verb_dsl_class = @component.resourceful? ? ResourcefulVerbDsl : VerbDsl
41
- @verbs[verb] ||= Compony::MethodAccessibleHash.new
42
- @verbs[verb].deep_merge! verb_dsl_class.new(@component, verb, *args, **nargs).to_conf(&)
43
+ if @verbs[verb]
44
+ @verbs[verb].deep_merge! verb_dsl_class.new(@component, verb, *args, **nargs).to_conf(provide_defaults: false, &)
45
+ else
46
+ # Note about provide_defaults:
47
+ # - We must pass false if this is the second time `standalone` was called for this component -> see @provide_defaults
48
+ # - We musst pass false if this is the second time `verb` was called for this component -> handled by the if statement (other branch)
49
+ # - We must pass true otherwise (handled by this branch)
50
+ @verbs[verb] = Compony::MethodAccessibleHash.new(
51
+ verb_dsl_class.new(@component, verb, *args, **nargs).to_conf(provide_defaults: @provide_defaults, &)
52
+ )
53
+ end
43
54
  end
44
55
 
45
56
  # DSL
@@ -17,18 +17,19 @@ module Compony
17
17
 
18
18
  @component = component
19
19
  @verb = verb
20
- @respond_blocks = { nil => proc { render_standalone(controller) } } # default format
20
+ @respond_blocks = {}
21
21
  @authorize_block = nil
22
22
  end
23
23
 
24
24
  # For internal usage only, processes the block and returns a config hash.
25
- def to_conf(&)
25
+ def to_conf(provide_defaults:, &)
26
26
  evaluate(&) if block_given?
27
- return {
27
+ base_config = provide_defaults ? default_config : {}
28
+ return base_config.deep_merge({
28
29
  verb: @verb,
29
- authorize_block: @authorize_block || proc { can?(comp_name.to_sym, family_name.to_sym) },
30
+ authorize_block: @authorize_block,
30
31
  respond_blocks: @respond_blocks
31
- }.compact
32
+ }.compact)
32
33
  end
33
34
 
34
35
  protected
@@ -45,6 +46,14 @@ module Compony
45
46
  def respond(format = nil, &block)
46
47
  @respond_blocks[format&.to_sym] = block
47
48
  end
49
+
50
+ # Internal, do not use
51
+ def default_config
52
+ return {
53
+ authorize_block: proc { can?(comp_name.to_sym, family_name.to_sym) },
54
+ respond_blocks: { nil => proc { render_standalone(controller) } }
55
+ }
56
+ end
48
57
  end
49
58
  end
50
59
  end
@@ -57,7 +57,7 @@ module Compony
57
57
  end
58
58
 
59
59
  # TODO: Make much prettier, providing message, action, subject and conditions
60
- fail CanCan::AccessDenied, inspect unless request_context.evaluate(&verb_config.authorize_block)
60
+ fail CanCan::AccessDenied, [inspect, verb_config.authorize_block.inspect].join(', ') unless request_context.evaluate(&verb_config.authorize_block)
61
61
 
62
62
  if verb_config.store_data_block
63
63
  request_context.evaluate_with_backfire(&verb_config.store_data_block)
@@ -104,11 +104,18 @@ module Compony
104
104
  protected
105
105
 
106
106
  # DSL method
107
+ # This can be called multiple times to make a component listen to multiple paths. Each standalone config (path) has a name, the default being `nil`.
108
+ # To have a component listen to multiple paths, call standalone again and provide a name, e.g.: standalone(:autocomplete, path: 'foo/bar/autocomplete')
109
+ # The kwarg parameter `path` is handled analog to the Rails route path
110
+ # @param name [Symbol,nil] The name of the standalone config, defaults to nil. Only provide if you add additional configs.
107
111
  def standalone(name = nil, *args, **nargs, &block)
108
112
  block = proc {} unless block_given? # If called without a block, must default to an empty block to provide a binding to the DSL.
109
113
  name = name&.to_sym # nil name is the most common case
110
- @standalone_configs[name] ||= Compony::MethodAccessibleHash.new
111
- @standalone_configs[name].deep_merge! StandaloneDsl.new(self, name, *args, **nargs).to_conf(&block)
114
+ if @standalone_configs[name]
115
+ @standalone_configs[name].deep_merge! StandaloneDsl.new(self, name, *args, provide_defaults: false, **nargs).to_conf(&block)
116
+ else
117
+ @standalone_configs[name] = Compony::MethodAccessibleHash.new(StandaloneDsl.new(self, name, *args, provide_defaults: true, **nargs).to_conf(&block))
118
+ end
112
119
  end
113
120
 
114
121
  # Undoes previous standalone calls
@@ -86,7 +86,7 @@ module Compony
86
86
  if hidden
87
87
  return model_field.simpleform_input_hidden(@simpleform, self, **input_opts)
88
88
  else
89
- unless @focus_given
89
+ unless @focus_given || @skip_autofocus
90
90
  input_opts[:autofocus] = true unless input_opts.key? :autofocus
91
91
  @focus_given = true
92
92
  end
@@ -136,6 +136,11 @@ module Compony
136
136
  fail 'schema requires a block to be given'
137
137
  end
138
138
  end
139
+
140
+ # DSL method, skips adding autofocus to the first field
141
+ def skip_autofocus
142
+ @skip_autofocus = true
143
+ end
139
144
  end
140
145
  end
141
146
  end
@@ -4,6 +4,12 @@ module Compony
4
4
  # This component is destined to take a sub-component that is a form component.
5
5
  # It can be called via :get or via `submit_verb` depending on whether its form should be shown or submitted.
6
6
  class WithForm < Component
7
+ def initialize(...)
8
+ # TODO: On the next line, use Compony.path instead? Likely, this was implemented before that method existed.
9
+ @submit_path_block = ->(controller) { controller.helpers.send("#{Compony.path_helper_name(comp_name, family_name)}_path") }
10
+ super
11
+ end
12
+
7
13
  # Returns an instance of the form component responsible for rendering the form.
8
14
  # Feel free to override this in subclasses.
9
15
  def form_comp
@@ -11,7 +17,7 @@ module Compony
11
17
  self,
12
18
  submit_verb:,
13
19
  # If applicable, Rails adds the route keys automatically, thus, e.g. :id does not need to be passed here, as it comes from the request.
14
- submit_path: ->(controller) { controller.helpers.send("#{Compony.path_helper_name(comp_name, family_name)}_path") }
20
+ submit_path: @submit_path_block
15
21
  )
16
22
  end
17
23
 
@@ -32,6 +38,13 @@ module Compony
32
38
  def form_comp_class(new_form_comp_class = nil)
33
39
  @form_comp_class ||= new_form_comp_class
34
40
  end
41
+
42
+ # DSL method
43
+ # Overrides the submit path which would otherwise default to this component
44
+ # This takes a block that will be called and given a controller
45
+ def submit_path(&new_submit_path_block)
46
+ @submit_path_block = new_submit_path_block
47
+ end
35
48
  end
36
49
  end
37
50
  end
@@ -10,28 +10,6 @@ module Compony
10
10
  return transform_and_join(data.send(@name), controller:) { |el| el&.label }
11
11
  end
12
12
 
13
- def simpleform_input(form, _component, name: nil, **input_opts)
14
- anchormodel_attribute = @model_class.anchormodel_attributes[@name]
15
- anchormodel_class = anchormodel_attribute.anchormodel_class
16
- input_opts[:input_html] ||= {}
17
- # Attempt to read selected key from html input options "value", as the caller might not know that this is a select.
18
- selected_key = input_opts[:input_html].delete(:value) # can also be both nil or blank
19
- if selected_key.blank? && form.object
20
- # No selected key override present and a model is present, use the model to find out what to select
21
- selected_cst = form.object.send(@name)
22
- selected_key = selected_cst&.key || anchormodel_class.all.first
23
- end
24
- opts = {
25
- collection: self.class.collect(anchormodel_class.all),
26
- label_method: :first,
27
- value_method: :second,
28
- selected: selected_key, # if used in select
29
- checked: selected_key, # if used in radio buttons
30
- include_blank: anchormodel_attribute.optional
31
- }.merge(input_opts)
32
- return form.input name || @name, **opts
33
- end
34
-
35
13
  def simpleform_input_hidden(form, _component, name: nil, **input_opts)
36
14
  if form.object
37
15
  selected_cst = form.object.send(@name)
@@ -19,7 +19,6 @@ module Compony
19
19
  end
20
20
 
21
21
  # DSL method, defines a new field which will be translated and can be added to field groups
22
- # For virtual attributes, you must pass a type explicitely, otherwise it's auto-infered.
23
22
  def field(name, type, **extra_attrs)
24
23
  name = name.to_sym
25
24
  self.fields = fields.dup
@@ -63,8 +62,12 @@ module Compony
63
62
  end
64
63
  end
65
64
 
66
- # Retrieves feasibility for the given instance
65
+ # Retrieves feasibility for the given instance, returning a boolean indicating whether the action is feasibly.
67
66
  # Calling this with an invalid action name will always return true.
67
+ # This also generates appropriate error messages for any reason causing it to return false.
68
+ # Feasilbility is cached, thus the second access will be faster.
69
+ # @param action_name [Symbol,String] the action that the feasibility should be checked for, e.g. :destroy
70
+ # @param recompute [Boolean] whether feasibility should be forcably recomputed even if a cached result is present
68
71
  def feasible?(action_name, recompute: false)
69
72
  action_name = action_name.to_sym
70
73
  @feasibility_messages ||= {}
@@ -83,12 +86,19 @@ module Compony
83
86
  return @feasibility_messages[action_name].none?
84
87
  end
85
88
 
89
+ # Retrieves feasibility for the given instance and returns an array of reasons preventing the feasibility. Returns an empty array if feasible.
90
+ # Conceptually, this is comparable to a model's `errors`.
91
+ # @param action_name [Symbol,String] the action that the feasibility should be checked for, e.g. :destroy
86
92
  def feasibility_messages(action_name)
87
93
  action_name = action_name.to_sym
88
94
  feasible?(action_name) if @feasibility_messages&.[](action_name).nil? # If feasibility check hasn't been performed yet for this action, perform it now
89
95
  return @feasibility_messages[action_name]
90
96
  end
91
97
 
98
+ # Retrieves feasibility for the given instance and returns a string holding all reasons preventing the feasibility. Returns an empty string if feasible.
99
+ # Messages are joined using commata. The first character is capitalized and a period is added to the end.
100
+ # Conceptually, this is comparable to a model's `full_messages`.
101
+ # @param action_name [Symbol,String] the action that the feasibility should be checked for, e.g. :destroy
92
102
  def full_feasibility_messages(action_name)
93
103
  text = feasibility_messages(action_name).join(', ').upcase_first
94
104
  text += '.' if text.present?
@@ -1,11 +1,5 @@
1
1
  module Compony
2
2
  module Version
3
- MAJOR = 0
4
- MINOR = 2
5
- PATCH = 0
6
-
7
- EDGE = false
8
-
9
- LABEL = [MAJOR, MINOR, PATCH, EDGE ? 'edge' : nil].compact.join('.')
3
+ LABEL = (Pathname.new(__FILE__).dirname.dirname.dirname / 'VERSION').read
10
4
  end
11
5
  end
data/logo.svg ADDED
@@ -0,0 +1,133 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <!-- Created with Inkscape (http://www.inkscape.org/) -->
3
+
4
+ <svg
5
+ width="200mm"
6
+ height="200mm"
7
+ viewBox="0 0 200 200"
8
+ version="1.1"
9
+ id="svg5"
10
+ xml:space="preserve"
11
+ inkscape:version="1.2.2 (b0a8486541, 2022-12-01)"
12
+ sodipodi:docname="logo.svg"
13
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
14
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
15
+ xmlns:xlink="http://www.w3.org/1999/xlink"
16
+ xmlns="http://www.w3.org/2000/svg"
17
+ xmlns:svg="http://www.w3.org/2000/svg"><sodipodi:namedview
18
+ id="namedview7"
19
+ pagecolor="#ffffff"
20
+ bordercolor="#666666"
21
+ borderopacity="1.0"
22
+ inkscape:showpageshadow="2"
23
+ inkscape:pageopacity="0.0"
24
+ inkscape:pagecheckerboard="0"
25
+ inkscape:deskcolor="#d1d1d1"
26
+ inkscape:document-units="mm"
27
+ showgrid="false"
28
+ inkscape:zoom="0.77887092"
29
+ inkscape:cx="341.52"
30
+ inkscape:cy="303.00271"
31
+ inkscape:window-width="1532"
32
+ inkscape:window-height="1036"
33
+ inkscape:window-x="384"
34
+ inkscape:window-y="0"
35
+ inkscape:window-maximized="1"
36
+ inkscape:current-layer="layer2" /><defs
37
+ id="defs2"><linearGradient
38
+ inkscape:collect="always"
39
+ id="linearGradient4245"><stop
40
+ style="stop-color:#6b006b;stop-opacity:1;"
41
+ offset="0.50034827"
42
+ id="stop4241" /><stop
43
+ style="stop-color:#501a50;stop-opacity:1;"
44
+ offset="0.9272868"
45
+ id="stop4243" /></linearGradient><linearGradient
46
+ inkscape:collect="always"
47
+ xlink:href="#linearGradient4245"
48
+ id="linearGradient4239"
49
+ x1="43.394249"
50
+ y1="190.80437"
51
+ x2="186.19225"
52
+ y2="49.854321"
53
+ gradientUnits="userSpaceOnUse"
54
+ gradientTransform="matrix(0.88763912,0,0,0.88763912,6.9268356,-23.034281)" /><inkscape:path-effect
55
+ effect="fill_between_many"
56
+ method="originald"
57
+ linkedpaths="#path2775-1-75,0,1|"
58
+ id="path-effect996" /></defs><g
59
+ inkscape:label="Ebene 1"
60
+ inkscape:groupmode="layer"
61
+ id="layer1"
62
+ style="display:none"
63
+ sodipodi:insensitive="true"><rect
64
+ style="fill:#ff0000;stroke:none;stroke-width:2.565;stroke-linejoin:bevel;-inkscape-stroke:none;stop-color:#000000"
65
+ id="rect1777"
66
+ width="181.25208"
67
+ height="181.25208"
68
+ x="14.784949"
69
+ y="33.804947"
70
+ ry="0" /><path
71
+ style="fill:#000000;stroke-width:0.485896"
72
+ d="m 78.084821,195.93085 c -0.104403,-0.20043 -0.237069,-1.23735 -0.294779,-2.30427 -0.128644,-2.37863 -0.971964,-4.13145 -3.245489,-6.7458 -5.589327,-6.42721 -8.47464,-10.14797 -8.47464,-10.92856 0,-0.48713 0.862603,-2.22033 1.91689,-3.85151 1.054301,-1.63121 2.049224,-3.68765 2.210938,-4.56988 0.283402,-1.54604 0.196492,-1.65454 -2.402816,-2.99985 -3.105605,-1.60735 -7.822289,-6.41042 -9.256406,-9.42592 -0.982266,-2.06542 -1.414091,-2.42536 -1.922606,-1.60256 -0.436425,0.70615 -1.543781,17.31002 -1.453317,21.79124 0.04463,2.21217 -0.106744,4.13829 -0.336499,4.28028 -0.575619,0.35574 -0.520373,4.91349 0.08608,7.09681 0.672282,2.42053 4.41404,5.73727 6.47248,5.73727 0.82197,0 2.376426,0.31282 3.454335,0.69514 1.077908,0.38234 2.61578,0.83845 3.417504,1.01359 l 1.457698,0.31844 -1.42949,0.75144 c -1.20326,0.63252 -2.779602,0.70232 -9.960862,0.44112 -9.093769,-0.33077 -14.205225,-1.35281 -14.515703,-2.90243 -0.113122,-0.5646 -0.707313,-0.75532 -2.256375,-0.72424 -2.433032,0.0489 -3.085222,-0.2579 -3.637676,-1.71097 -0.584508,-1.53738 1.70076,-15.52576 4.099302,-25.09226 0.636537,-2.53881 1.291735,-5.63923 1.455995,-6.88983 0.164261,-1.25058 0.746177,-2.84274 1.293149,-3.53809 0.948699,-1.20608 4.715185,-3.94972 7.812912,-5.69121 1.907965,-1.07262 2.644995,-2.19499 4.35133,-6.6263 2.615877,-6.79332 5.802705,-10.14855 18.375215,-19.34621 2.806048,-2.05282 6.129907,-4.50082 7.386333,-5.44 2.156533,-1.61197 4.349138,-4.23344 5.713438,-6.83092 0.597725,-1.13799 0.57898,-1.15155 -1.144145,-0.8283 -1.076613,0.20198 -1.7518,0.13865 -1.7518,-0.16431 0,-0.67984 1.944848,-4.35348 2.479794,-4.68409 0.526917,-0.32565 0.582603,-1.20686 0.07121,-1.1261 -2.108201,0.33287 -2.108201,-1.56223 0,-3.0475 0.868539,-0.6119 2.045781,-1.556057 2.616111,-2.098137 1.159651,-1.10224 2.355721,-4.34343 1.884301,-5.10621 -0.16839,-0.27247 -0.12933,-0.4971 0.0869,-0.49918 0.61136,-0.005 1.58122,-2.415571 1.284,-3.190147 -0.14631,-0.381277 -0.024,-0.693231 0.27185,-0.693231 0.29584,0 0.53789,-0.543501 0.53789,-1.207773 0,-1.256485 0.82733,-5.124559 1.45647,-6.809516 0.24674,-0.660801 -0.0355,-1.671523 -0.88212,-3.158325 -1.06581,-1.871909 -1.10381,-2.064178 -0.26403,-1.336214 0.53952,0.467675 1.1573,0.850318 1.37285,0.850318 0.89453,0 2.6899,-2.571595 2.6899,-3.852862 0,-1.449914 0.899687,-4.010403 2.402317,-6.836849 0.49726,-0.935351 1.1787,-2.629912 1.51433,-3.765694 0.56313,-1.90566 1.42819,-2.816559 1.42819,-1.503855 0,0.318256 0.4207,0.180482 0.9718,-0.318256 1.19682,-1.083108 1.28644,-0.431597 0.12148,0.883048 -0.62326,0.703339 -0.68813,1.016296 -0.24295,1.172017 0.33405,0.116854 0.60737,0.638399 0.60737,1.159001 0,0.520603 0.32237,1.070252 0.71636,1.221442 1.15556,0.443431 2.08692,-0.894246 1.83199,-2.631223 -0.17415,-1.186523 -0.0478,-1.561336 0.52616,-1.561336 0.41542,0 0.89045,0.218653 1.05561,0.485896 0.56681,0.917127 1.94557,0.475584 3.69572,-1.18355 3.46667,-3.28635 6.67978,-4.473812 8.68102,-3.208213 0.61274,0.387502 0.59538,0.498305 -0.12107,0.773245 -0.74258,0.284951 -0.70521,0.424056 0.33321,1.240878 0.64323,0.505974 1.7221,0.919952 2.39747,0.919952 0.67537,0 1.81257,0.222277 2.52712,0.493949 1.0598,0.402933 1.1921,0.622969 0.71806,1.194157 -0.5548,0.668502 -0.49397,2.073614 0.23317,5.384602 0.23301,1.061004 0.10895,1.665089 -0.43442,2.116081 -1.11797,0.927826 -0.28036,2.128357 3.00955,4.313578 6.39405,4.24704 7.94207,6.085976 8.54261,10.148001 0.25373,1.716236 0.10963,2.254062 -0.93756,3.498548 -1.18245,1.405253 -3.6941,2.976636 -4.75781,2.976636 -0.27577,0 -0.95279,-0.400848 -1.5045,-0.890782 -0.88888,-0.789356 -4.83566,-2.51049 -5.75684,-2.51049 -0.1915,0 -0.34818,0.353126 -0.34818,0.784726 0,0.721176 -0.0964,0.721532 -1.19093,0.0044 -1.60101,-1.048995 -5.61161,-1.537532 -5.61161,-0.683532 0,0.345087 0.85234,2.384628 1.89408,4.532333 1.65636,3.4148 2.25096,4.14635 4.73749,5.82868 1.56387,1.05806 3.01552,1.99935 3.22589,2.091737 0.21038,0.0924 1.89445,-0.935167 3.74242,-2.283477 4.38483,-3.19928 5.91289,-3.95819 7.96968,-3.95819 0.93285,0 1.83123,-0.21866 1.99639,-0.4859 0.16517,-0.26725 0.90026,-0.4859 1.63354,-0.4859 0.73329,0 3.09548,-0.85221 5.24934,-1.893779 2.15385,-1.041575 5.20342,-2.146114 6.77684,-2.454534 1.57341,-0.308422 4.00938,-0.913217 5.41325,-1.343991 1.40387,-0.430774 2.71579,-0.619437 2.91538,-0.419252 0.19958,0.200186 0.35547,1.642419 0.34639,3.204975 -0.0182,3.129801 -1.02499,4.844251 -2.85273,4.857601 -2.58309,0.0189 -2.72742,1.61065 -0.27307,3.01167 1.83276,1.04616 2.28663,2.17493 1.2795,3.182047 -0.57397,0.57394 -1.88609,0.81169 -4.95075,0.897 -4.04604,0.11267 -4.22091,0.0712 -5.89117,-1.39528 -2.28135,-2.003057 -4.9313,-2.290477 -7.106,-0.770767 -2.22124,1.552247 -8.90522,7.921127 -12.0155,11.449047 -0.66809,0.75782 -2.00391,1.96145 -2.96846,2.67473 -0.96455,0.71329 -2.13707,2.10471 -2.6056,3.09206 -1.10462,2.32783 -5.91946,9.7537 -7.51783,11.59468 -2.2747,2.61995 -8.96676,9.70179 -12.42279,13.14633 -3.27276,3.26188 -11.397987,8.62538 -15.825967,10.44677 -2.437195,1.00251 -3.19764,1.73026 -3.526591,3.375 -0.155061,0.77529 -0.723201,1.82072 -1.262541,2.32319 -0.719786,0.6706 -1.182407,2.19904 -1.739294,5.74647 -0.41728,2.65806 -0.966936,6.03544 -1.221469,7.50528 -0.530194,3.06168 -0.153161,7.41334 0.807577,9.32107 0.955518,1.89738 6.037228,6.24078 9.280758,7.93236 2.0019,1.04406 3.00335,1.91605 3.50417,3.05115 0.40547,0.91905 1.17392,1.70797 1.8221,1.87065 1.411567,0.35428 1.419427,0.8467 0.0277,1.7293 -0.80393,0.50982 -1.67127,0.59023 -3.27732,0.30385 -1.20123,-0.21419 -2.52923,-0.27987 -2.95111,-0.14598 -1.16459,0.36962 -3.857319,-1.13692 -3.534718,-1.97762 0.171768,-0.44761 -0.03388,-0.70536 -0.562838,-0.70536 -0.66527,0 -0.766271,0.26788 -0.500402,1.32716 0.1832,0.72993 0.370891,1.54989 0.417101,1.8221 0.04807,0.28294 -1.288188,0.55576 -3.119323,0.63689 -2.399317,0.10633 -3.356598,-0.0427 -3.813945,-0.59382 -0.537646,-0.64782 -0.696123,-0.65025 -1.325927,-0.0205 -0.747277,0.74729 -2.879831,0.98055 -3.207859,0.35088 z"
73
+ id="path1692" /><rect
74
+ style="fill:#ffff00;stroke:none;stroke-width:2.26466;stroke-linejoin:bevel;-inkscape-stroke:none;stop-color:#000000"
75
+ id="rect1893"
76
+ width="88.679382"
77
+ height="88.679382"
78
+ x="14.784949"
79
+ y="33.804947" /><rect
80
+ style="fill:#ffff00;stroke:none;stroke-width:2.26466;stroke-linejoin:bevel;-inkscape-stroke:none;stop-color:#000000"
81
+ id="rect1893-3"
82
+ width="88.679382"
83
+ height="88.679382"
84
+ x="107.35763"
85
+ y="33.804947" /><rect
86
+ style="fill:#ffff00;stroke:none;stroke-width:2.26466;stroke-linejoin:bevel;-inkscape-stroke:none;stop-color:#000000"
87
+ id="rect1893-6"
88
+ width="88.679382"
89
+ height="88.679382"
90
+ x="14.784949"
91
+ y="126.37762" /><rect
92
+ style="fill:#ffff00;stroke:none;stroke-width:2.26466;stroke-linejoin:bevel;-inkscape-stroke:none;stop-color:#000000"
93
+ id="rect1893-3-7"
94
+ width="88.679382"
95
+ height="88.679382"
96
+ x="107.35763"
97
+ y="126.37762" /></g><g
98
+ inkscape:groupmode="layer"
99
+ id="layer2"
100
+ inkscape:label="Ebene 2"><g
101
+ id="path2775-1-75"
102
+ transform="translate(-15.635683,38.72538)"
103
+ class="UnoptimicedTransforms"
104
+ style="fill:none;stroke:#000000"><path
105
+ style="color:#000000;fill:#ffffff;stroke:none;stroke-width:1.35977;-inkscape-stroke:none"
106
+ d="m 116.06031,-38.647596 -12.09913,5.753477 c -17.488322,8.316362 -22.301909,9.35968 -38.253772,8.293301 -7.553615,-0.504913 -15.683902,-1.325396 -18.066827,-1.822874 l -4.332424,-0.905016 0.62475,43.655879 c 0.665147,46.462334 1.261752,51.533524 8.636408,73.410844 3.551008,10.534175 13.799216,28.047805 22.32219,38.147805 7.696714,9.12087 22.800343,22.3055 33.054855,28.85501 3.89238,2.48598 7.69225,4.52936 8.44421,4.53379 2.24865,0.0221 23.00341,-16.33498 32.17003,-25.35374 16.75525,-16.48496 29.87321,-39.286585 35.42083,-61.568585 2.60952,-10.48132 2.9113,-15.507385 3.42237,-56.961398 l 0.56053,-45.465911 -7.51902,1.975622 c -10.30985,2.708591 -29.20312,2.565933 -37.84506,-0.286228 -3.84386,-1.2686 -11.38806,-4.546886 -16.76458,-7.28462 z"
107
+ id="path992" /></g><g
108
+ id="g2513"
109
+ transform="matrix(0.96227612,0,0,0.97544132,4.16167,-28.576473)"><path
110
+ style="fill:#321f32;fill-opacity:1;stroke-width:0.485896"
111
+ d="m 106.73871,125.75874 v 17.70589 c 0.29824,-0.26739 0.58008,-0.52819 0.82682,-0.77411 3.45603,-3.44453 10.14832,-10.52654 12.42302,-13.14648 0.5896,-0.67909 1.61901,-2.12256 2.73627,-3.7853 z"
112
+ id="path2492" /><path
113
+ style="fill:#231623;fill-opacity:1;stroke-width:0.485896"
114
+ d="m 70.493371,125.75874 c -10.786828,8.01657 -13.753752,11.36676 -16.212447,17.75189 -1.706333,4.4313 -2.443193,5.55385 -4.351156,6.62647 -3.097724,1.74148 -6.864262,4.48504 -7.81296,5.69112 -0.546971,0.69535 -1.1292,2.28771 -1.293461,3.53829 -0.16426,1.2506 -0.819188,4.35121 -1.455725,6.89002 12.416408,17.46424 12.898954,21.47259 16.310633,30.42966 10.927692,2.49612 6.08334,-2.40961 3.060795,-3.21996 -2.058438,0 -5.800192,-3.31659 -6.472474,-5.73711 -0.606452,-2.18332 -0.661918,-6.74099 -0.0863,-7.09673 0.229755,-0.14199 0.381043,-2.06819 0.336413,-4.28036 -0.09046,-4.48121 1.016717,-21.08528 1.453142,-21.79143 0.508514,-0.8228 0.940615,-0.46242 1.92288,1.603 1.434115,3.0155 6.150675,7.81843 9.256282,9.42578 2.599298,1.34531 2.686354,1.45378 2.402954,2.99982 -0.161709,0.88223 -1.156925,2.93854 -2.211234,4.56975 -1.054279,1.63117 -1.916679,3.36431 -1.916679,3.85144 0,0.78059 2.88562,4.50133 8.474935,10.92853 2.273528,2.61435 3.11664,4.36722 3.24528,6.74584 0.05771,1.06692 0.190156,2.10383 0.294555,2.30426 h 5.17e-4 c 0.32803,0.62967 2.460287,0.3964 3.207556,-0.35089 0.62981,-0.62975 0.788368,-0.62715 1.326018,0.0207 0.457349,0.55112 1.41493,0.7001 3.814237,0.59377 1.831138,-0.0811 3.16729,-0.35372 3.11919,-0.63666 -0.04621,-0.27221 -0.233829,-1.09218 -0.417029,-1.82211 -0.26587,-1.05928 -0.165042,-1.32757 0.500228,-1.32757 0.528939,0 0.734516,0.25778 0.562756,0.70539 -0.3226,0.8407 2.370079,2.34727 3.534668,1.97765 0.42188,-0.13389 1.750012,-0.0679 2.951241,0.14625 1.606048,0.28638 2.47339,0.20596 3.277319,-0.30386 1.391722,-0.8826 1.383657,-1.37533 -0.02791,-1.72961 -0.648179,-0.16268 -1.416641,-0.95164 -1.822111,-1.87069 -0.500819,-1.13509 -1.502281,-2.00691 -3.504179,-3.05097 -3.243527,-1.69158 -8.325061,-6.03496 -9.28057,-7.93233 -0.960739,-1.90773 -1.337892,-6.25921 -0.807703,-9.32088 0.25453,-1.46984 0.804351,-4.84743 1.221631,-7.50549 0.556889,-3.54742 1.019649,-5.07582 1.739429,-5.74642 0.539339,-0.50247 1.107395,-1.54808 1.262455,-2.32337 0.32895,-1.64474 1.089212,-2.37248 3.5264,-3.37499 3.900304,-1.60433 10.665593,-5.95515 14.460093,-9.19892 v -18.17928 z"
115
+ id="path2490"
116
+ sodipodi:nodetypes="cssssccccscsssssssscccsccsssscssssssssssccc" /><path
117
+ style="fill:#3c1c3c;fill-opacity:1;stroke-width:0.485896"
118
+ d="m 103.6531,59.857844 c -0.12964,-0.02519 -0.42246,0.136955 -0.87127,0.54312 -0.5511,0.498737 -0.97203,0.636582 -0.97203,0.318327 0,-1.312703 -0.86469,-0.401874 -1.42782,1.503784 -0.33563,1.135781 -1.017374,2.830311 -1.51463,3.765661 -1.502623,2.826443 -2.402438,5.38688 -2.402438,6.836792 0,1.281266 -1.795229,3.852995 -2.689758,3.852995 -0.21555,0 -0.833523,-0.382919 -1.373043,-0.850594 -0.839779,-0.727963 -0.801742,-0.535555 0.264067,1.336353 0.846619,1.4868 1.128856,2.497663 0.882116,3.158463 -0.629139,1.684955 -1.456241,5.55292 -1.456241,6.809404 0,0.664271 -0.242112,1.207678 -0.537952,1.207678 -0.29585,0 -0.418128,0.311704 -0.271818,0.692981 0.29722,0.774575 -0.6728,3.185503 -1.284159,3.190503 -0.21623,0.0021 -0.255207,0.226724 -0.08682,0.499194 0.47142,0.762779 -0.724474,4.003909 -1.884123,5.106148 -0.570329,0.54208 -1.747838,1.486163 -2.616377,2.09806 -2.108198,1.485267 -2.108198,3.380227 0,3.047357 0.511409,-0.0808 0.456122,0.80038 -0.0708,1.12603 -0.53494,0.33061 -2.479952,4.00463 -2.479952,4.68447 0,0.30296 0.675222,0.36631 1.751831,0.16433 1.723118,-0.32325 1.741846,-0.30962 1.144116,0.82837 -1.364298,2.59748 -3.556818,5.21862 -5.713346,6.83059 -1.256429,0.93918 -4.580582,3.38716 -7.386629,5.43998 -0.500024,0.3658 -0.960551,0.70733 -1.431438,1.05523 H 104.08305 V 64.865291 c -0.0331,-0.0099 -0.0657,-0.01609 -0.0992,-0.02894 -0.39399,-0.15119 -0.71624,-0.701029 -0.71624,-1.221631 0,-0.520601 -0.27315,-1.042248 -0.6072,-1.159102 -0.44518,-0.155721 -0.38038,-0.468684 0.24288,-1.172022 0.7281,-0.821652 0.96589,-1.383766 0.74983,-1.425753 z"
119
+ id="path2488" /><path
120
+ style="fill:#481b48;fill-opacity:1;stroke-width:0.485896"
121
+ d="m 120.1782,56.243078 c -1.91046,-0.0459 -4.36805,1.238373 -6.96805,3.703133 -1.75015,1.659132 -3.12909,2.100516 -3.6959,1.18339 -0.16516,-0.267242 -0.63981,-0.485758 -1.05523,-0.485758 -0.57396,0 -0.70073,0.374623 -0.52658,1.561145 0.20561,1.400965 -0.36071,2.541074 -1.19373,2.69751 v 58.200572 h 16.34319 c 1.81776,-2.7354 3.77046,-5.89198 4.42454,-7.27035 0.46853,-0.98735 1.64097,-2.37903 2.60552,-3.09232 0.96455,-0.71328 2.30021,-1.91695 2.9683,-2.67477 3.11027,-3.52792 9.79456,-9.89667 12.0158,-11.448911 2.1747,-1.519709 4.82468,-1.232043 7.10603,0.771017 1.67025,1.466464 1.84507,1.507924 5.89111,1.395254 3.06466,-0.0853 4.37663,-0.32316 4.9506,-0.897097 1.00713,-1.007117 0.55325,-2.136077 -1.27951,-3.182236 -2.45434,-1.401018 -2.31023,-2.992802 0.27285,-3.011702 1.82774,-0.01335 2.83486,-1.727787 2.85306,-4.857585 0.009,-1.562554 -0.14665,-3.004786 -0.34623,-3.204972 -0.19959,-0.200185 -1.51172,-0.01116 -2.91559,0.419613 -1.40386,0.430773 -3.83969,1.035165 -5.4131,1.343587 -1.57342,0.308419 -4.623,1.413056 -6.77685,2.45463 -2.15386,1.041568 -4.516,1.893942 -5.24929,1.893942 -0.73328,0 -1.46884,0.218508 -1.63401,0.485758 -0.16516,0.26724 -1.06341,0.485759 -1.99626,0.485759 -2.05679,0 -3.58471,0.759137 -7.96954,3.958414 -1.84797,1.348309 -3.53203,2.375985 -3.74241,2.283585 -0.21037,-0.09239 -1.66229,-1.033806 -3.22616,-2.091865 -2.48652,-1.682329 -3.08082,-2.413788 -4.73718,-5.828585 -1.04173,-2.147703 -1.89394,-4.187453 -1.89394,-4.53254 0,-0.853999 4.01054,-0.365315 5.61155,0.683679 1.09453,0.717132 1.19062,0.716525 1.19062,-0.0047 0,-0.431599 0.1568,-0.784448 0.3483,-0.784448 0.92118,0 4.86788,1.721086 5.75676,2.510441 0.5517,0.489934 1.22904,0.890902 1.50481,0.890902 1.06371,0 3.5754,-1.571311 4.75785,-2.976563 1.04719,-1.244484 1.19114,-1.78226 0.93741,-3.498494 -0.60054,-4.062021 -2.14858,-5.901182 -8.54263,-10.148218 -3.28991,-2.185219 -4.1276,-3.385607 -3.00963,-4.313432 0.54337,-0.450991 0.6676,-1.055147 0.4346,-2.116149 -0.72714,-3.310985 -0.78838,-4.716183 -0.23358,-5.384685 0.47404,-0.571187 0.34201,-0.791309 -0.71779,-1.194242 -0.71455,-0.271672 -1.85161,-0.494027 -2.52698,-0.494027 -0.67536,0 -1.75455,-0.413867 -2.39778,-0.91984 -1.03842,-0.816821 -1.07589,-0.955801 -0.33332,-1.240751 0.71645,-0.27494 0.73418,-0.385578 0.12144,-0.77308 -0.5003,-0.316399 -1.07625,-0.479759 -1.71307,-0.49506 z"
122
+ id="path1692-5" /></g><path
123
+ id="path2775-1"
124
+ style="fill:url(#linearGradient4239);fill-opacity:1;stroke:#000000;stroke-width:1.35977"
125
+ d="M 100.42463,0.07778856 88.325491,5.8312659 C 70.837174,14.147628 66.023587,15.190946 50.071724,14.124567 42.518109,13.619654 34.387822,12.799171 32.004897,12.301693 l -4.332424,-0.905016 0.62475,43.655879 c 0.665147,46.462334 1.261752,51.533524 8.636408,73.410844 3.551008,10.53418 13.799216,28.04781 22.32219,38.14781 7.696714,9.12087 22.800343,22.30549 33.054856,28.855 3.892377,2.48598 7.692253,4.52936 8.444213,4.53379 2.24865,0.0221 23.0034,-16.33498 32.17003,-25.35373 16.75525,-16.48496 29.87321,-39.28659 35.42083,-61.56859 2.60952,-10.48132 2.9113,-15.507385 3.42237,-56.961398 l 0.56053,-45.465911 -7.51902,1.975622 c -10.30985,2.708591 -29.20312,2.565933 -37.84506,-0.286228 -3.84386,-1.2686 -11.38806,-4.5468857 -16.76458,-7.2846199 z m -0.0408,9.60885264 8.83594,4.4993918 c 4.85966,2.474535 11.67833,5.437077 15.15273,6.583724 7.81118,2.577973 24.88876,2.707201 34.20757,0.258708 l 6.79611,-1.785721 -0.50688,41.095414 c -0.46189,37.469163 -0.73477,42.012172 -3.09347,51.485902 -5.01432,20.14016 -16.87126,40.74966 -32.01591,55.64997 -8.28545,8.15181 -27.04495,22.93669 -29.07746,22.91666 -0.67966,-0.005 -4.114525,-1.85057 -7.632781,-4.09757 -9.268833,-5.91994 -22.920632,-17.83711 -29.877496,-26.08123 -7.70371,-9.12907 -16.966277,-24.9594 -20.175931,-34.48096 -6.665734,-19.77435 -7.204954,-24.35814 -7.80616,-66.354207 l -0.565119,-39.45923 3.916383,0.818321 c 2.153879,0.449683 9.502186,1.191264 16.329729,1.647651 14.41848,0.963856 18.769612,0.01805 34.576824,-7.496539 z" /><path
126
+ inkscape:original-d="M 0,0"
127
+ inkscape:path-effect="#path-effect996"
128
+ d="M 0,0"
129
+ id="path998"
130
+ class="UnoptimicedTransforms" /><path
131
+ id="path2775-1-7"
132
+ style="fill:#ffffff;stroke:#000000;stroke-width:1.35977"
133
+ d="M 100.42463,0.07778395 88.325488,5.8312613 C 81.882978,8.8949245 77.165159,10.965428 72.972331,12.313155 l 2.369187,8.50843 c 3.846075,-1.215912 8.167679,-3.111446 14.106409,-5.934664 l 10.935863,-5.2002844 8.83596,4.4993914 c 4.85965,2.474518 11.67831,5.437087 15.15271,6.583725 0.12713,0.04196 0.26343,0.08135 0.3954,0.122014 l 2.36643,-8.499257 c -0.0555,-0.01782 -0.11507,-0.03473 -0.16972,-0.05275 -3.84377,-1.26859 -11.38816,-4.5469114 -16.76458,-7.2846179 z m 71.90402,10.57258305 -7.51902,1.975622 c -3.90112,1.024907 -9.03188,1.640722 -14.37061,1.856819 l -5.51266,8.247889 c 5.06254,-0.169594 9.96601,-0.733323 13.65367,-1.702237 l 6.79611,-1.78572 -0.19404,15.722868 6.88601,-3.17925 z m -144.65618,0.746305 0.297697,20.810772 6.876375,3.174664 -0.221552,-15.46462 3.916384,0.818321 c 2.141999,0.44721 9.421438,1.181964 16.216889,1.638936 L 49.199732,14.058969 C 41.902746,13.551045 34.296247,12.780047 32.004895,12.301688 Z m 144.12272,42.533898 -6.85666,0.791258 -0.0692,5.616326 c -0.0844,6.846077 -0.16297,12.570852 -0.24862,17.449415 l 6.84565,-0.904096 c 0.10551,-5.70791 0.19972,-12.485225 0.30181,-20.767196 z m -143.506684,0.508699 0.0088,0.613282 c 0.126427,8.831296 0.253253,16.109511 0.422004,22.350173 l 6.815368,0.900421 C 35.399233,72.954747 35.295539,66.742541 35.190093,59.376718 l -0.05917,-4.147567 z M 163.96105,97.639655 c -0.42307,6.285705 -1.06915,9.701565 -2.18526,14.184385 -0.80192,3.22094 -1.78083,6.45381 -2.91824,9.67353 l 6.19749,2.45496 c 1.28458,-3.6192 2.38914,-7.25372 3.29071,-10.87486 1.14434,-4.59626 1.84466,-8.14499 2.31369,-14.175208 z m -127.423738,0.489439 -6.609871,1.245829 c 0.984366,9.361367 2.638751,15.797807 5.638344,24.972547 l 6.161262,-2.44028 C 38.902341,113.25624 37.406099,107.27168 36.537312,98.129094 Z M 149.64409,141.47718 c -4.5306,7.89765 -9.93183,15.34664 -15.949,21.91303 l 5.40715,4.70763 c 5.92851,-6.75685 11.273,-14.28379 15.82424,-22.21806 z m -98.923308,0.45777 -5.275512,4.39619 c 4.246664,7.41346 9.269548,14.89881 13.810548,20.28006 0.570427,0.67599 1.186156,1.37632 1.832966,2.09259 l 5.458533,-4.75259 c -1.236371,-1.30098 -2.380206,-2.56032 -3.375116,-3.73932 -4.093518,-4.85093 -8.619604,-11.59363 -12.451419,-18.27693 z m 66.764288,36.35247 c -7.70733,6.32979 -15.53068,12.1158 -16.80265,12.10326 -0.67966,-0.005 -4.11453,-1.85057 -7.632778,-4.09757 -3.067022,-1.9589 -6.61544,-4.5811 -10.240943,-7.50296 l -3.951243,6.64014 c 4.737249,3.92814 9.462457,7.48706 13.453219,10.03591 3.892377,2.48598 7.692255,4.52935 8.444215,4.53379 1.5216,0.015 11.51537,-7.47181 20.66032,-15.1082 z" /></g></svg>