merge with 2.3.x

This commit is contained in:
Dane Springmeyer 2013-10-28 14:45:52 -07:00
commit 0d58a8aee4
22 changed files with 857 additions and 381 deletions

View file

@ -7,10 +7,10 @@ before_install:
- echo 'yes' | sudo add-apt-repository ppa:mapnik/boost
- echo 'yes' | sudo add-apt-repository ppa:ubuntu-toolchain-r/test
- sudo apt-get update -qq
- sudo apt-get install -qq gcc-4.7 g++-4.7 libboost-dev libboost-filesystem-dev libboost-program-options-dev libboost-python-dev libboost-regex-dev libboost-system-dev libboost-thread-dev python-nose libicu-dev libpng-dev libjpeg-dev libtiff-dev libwebp-dev libz-dev libfreetype6-dev libxml2-dev libproj-dev
- sudo apt-get install -qq gcc-4.7 g++-4.7 make libboost-dev libboost-filesystem-dev libboost-program-options-dev libboost-python-dev libboost-regex-dev libboost-system-dev libboost-thread-dev python-nose libicu-dev libpng-dev libjpeg-dev libtiff-dev libwebp-dev libz-dev libfreetype6-dev libxml2-dev libproj-dev libcairo-dev python-cairo-dev libsqlite3-dev postgresql-server-dev*
script:
- if [ "${CXX}" = 'g++' ]; then export CXX="g++-4.7" && export CC="gcc-4.7"; fi; ./configure CXX=${CXX} CC=${CC} DEMO=False BINDINGS=python CPP_TESTS=True CAIRO=False FAST=True || cat config.log
- if [ "${CXX}" = 'g++' ]; then export CXX="g++-4.7" && export CC="gcc-4.7"; fi; ./configure CXX=${CXX} CC=${CC} DEMO=False BINDINGS=python CPP_TESTS=True CAIRO=True FAST=True || cat config.log
- JOBS=1 make
- make test-local

View file

@ -14,6 +14,8 @@ Released ...
Summary: TODO
- Fixed crash when rendering to cairo context from python (#2031)
- Moved `label-position-tolerance` from unsigned type to double
- Default PNG encoding method when `png` is supplied is now `png8:m=h`, so paletted png using hextree color quantization (#2028)

View file

@ -12,19 +12,18 @@ _/ _/ _/_/_/ _/_/_/ _/ _/ _/ _/ _/
# What is Mapnik?
Mapnik is an open source toolkit and API for developing mapping applications. At the core is a C++ shared library providing algorithms and patterns for spatial data access and visualization. High-level bindings for Java, JavaScript, Python, and Ruby facilitate rapid application development in a variety of environments.
Mapnik is an open source toolkit for developing mapping applications. At the core is a C++ shared library providing algorithms and patterns for spatial data access and visualization. High-level bindings for JavaScript, Python, and Ruby facilitate rapid application development in a variety of environments.
# Overview
Mapnik is basically a collection of geographic objects like maps, layers, datasources, features, and geometries. The library doesn't rely on any OS specific "windowing systems" and it can be deployed to any server environment. It is intended to play fair in a multi-threaded environment and is aimed primarily, but not exclusively, at web-based development.
For further information see [http://mapnik.org](http://mapnik.org) and also our [wiki documentation](https://github.com/mapnik/mapnik/wiki) here on GitHub.
# Installation
See [INSTALL.md](https://github.com/mapnik/mapnik/blob/master/INSTALL.md) for installation instructions.
See [INSTALL.md](https://github.com/mapnik/mapnik/blob/master/INSTALL.md) for installation instructions and the [Install](https://github.com/mapnik/mapnik/wiki/Mapnik-Installation) page on the wiki for guides.
# License
Mapnik software is free and is released under LGPL ([GNU Lesser General Public License](http://www.gnu.org/licenses/lgpl.html_)). Please see [COPYING](https://github.com/mapnik/mapnik/blob/master/COPYING) for more information.
Mapnik software is free and is released under the LGPL ([GNU Lesser General Public License](http://www.gnu.org/licenses/lgpl.html_)). Please see [COPYING](https://github.com/mapnik/mapnik/blob/master/COPYING) for more information.

View file

@ -38,6 +38,7 @@
#if defined(HAVE_CAIRO) && defined(HAVE_PYCAIRO)
#include <mapnik/cairo_context.hpp>
#include <pycairo.h>
#include <cairo.h>
#endif
using mapnik::image_32;
@ -208,7 +209,7 @@ void composite(image_32 & dst, image_32 & src, mapnik::composite_mode_e mode, fl
#if defined(HAVE_CAIRO) && defined(HAVE_PYCAIRO)
std::shared_ptr<image_32> from_cairo(PycairoSurface* py_surface)
{
mapnik::cairo_surface_ptr surface(py_surface->surface, mapnik::cairo_surface_closer());
mapnik::cairo_surface_ptr surface(cairo_surface_reference(py_surface->surface), mapnik::cairo_surface_closer());
std::shared_ptr<image_32> image_ptr = std::make_shared<image_32>(surface);
return image_ptr;
}

View file

@ -117,6 +117,7 @@ void clear_cache()
#if defined(HAVE_CAIRO) && defined(HAVE_PYCAIRO)
#include <pycairo.h>
#include <cairo.h>
static Pycairo_CAPI_t *Pycairo_CAPI;
#endif
@ -201,7 +202,7 @@ void render5(const mapnik::Map& map,
unsigned offset_y = 0)
{
python_unblock_auto_block b;
mapnik::cairo_ptr context(py_context->ctx, mapnik::cairo_closer());
mapnik::cairo_ptr context(cairo_reference(py_context->ctx), mapnik::cairo_closer());
mapnik::cairo_renderer<mapnik::cairo_ptr> ren(map,context,scale_factor,offset_x, offset_y);
ren.apply();
}
@ -209,7 +210,7 @@ void render5(const mapnik::Map& map,
void render6(const mapnik::Map& map, PycairoContext* py_context)
{
python_unblock_auto_block b;
mapnik::cairo_ptr context(py_context->ctx, mapnik::cairo_closer());
mapnik::cairo_ptr context(cairo_reference(py_context->ctx), mapnik::cairo_closer());
mapnik::cairo_renderer<mapnik::cairo_ptr> ren(map,context);
ren.apply();
}
@ -220,7 +221,7 @@ void render_with_detector2(
std::shared_ptr<mapnik::label_collision_detector4> detector)
{
python_unblock_auto_block b;
mapnik::cairo_ptr context(py_context->ctx, mapnik::cairo_closer());
mapnik::cairo_ptr context(cairo_reference(py_context->ctx), mapnik::cairo_closer());
mapnik::cairo_renderer<mapnik::cairo_ptr> ren(map,context,detector);
ren.apply();
}
@ -234,7 +235,7 @@ void render_with_detector3(
unsigned offset_y = 0u)
{
python_unblock_auto_block b;
mapnik::cairo_ptr context(py_context->ctx, mapnik::cairo_closer());
mapnik::cairo_ptr context(cairo_reference(py_context->ctx), mapnik::cairo_closer());
mapnik::cairo_renderer<mapnik::cairo_ptr> ren(map,context,detector,scale_factor,offset_x,offset_y);
ren.apply();
}

View file

@ -301,7 +301,7 @@ int main ( int argc , char** argv)
cairo_image_surface_create(CAIRO_FORMAT_ARGB32,m.width(),m.height()),
cairo_surface_closer());
double scale_factor = 1.0;
cairo_ptr image_context = (create_context(image_surface));
cairo_ptr image_context(create_context(image_surface));
mapnik::cairo_renderer<cairo_ptr> png_render(m,image_context,scale_factor);
png_render.apply();
// we can now write to png with cairo functionality

View file

@ -1,82 +0,0 @@
# $Id: rundemo.py 577 2008-01-03 11:39:10Z artem $
#
# This file is part of Mapnik (c++ mapping toolkit)
# Copyright (C) 2005 Jean-Francois Doyon
#
# Mapnik is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
# Import everything. In this case this is safe, in more complex systems, you
# will want to be more selective.
try:
from mapnik import *
except:
print '\n\nThe mapnik library and python bindings must have been compiled and \
installed successfully before running this script.\n\n'
raise
m = Map(690,690,"+proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs")
m.background = Color(255,100,100,255)
road_style = Style()
#Road
road_rule = Rule()
road_stroke = Stroke(Color('white'), 1)
road_stroke.opacity = 0.7
#road_rule.filter = Filter("[CLASS] = 'BENDUNDER' or [CLASS] = 'BENDOVER'")
road_rule.symbols.append(LineSymbolizer(road_stroke))
road_style.rules.append(road_rule);
#Road text
text_symbolizer = TextSymbolizer(Expression('[NAME]'), 'DejaVu Sans Book', 20, Color('black'))
text_symbolizer.label_placement=label_placement.LINE_PLACEMENT
text_symbolizer.minimum_distance = 0
#text_symbolizer.max_char_angle_delta = 40
#text_symbolizer.force_odd_labels = 1
text_symbolizer.label_spacing = 20
text_symbolizer.label_position_tolerance = 50
text_symbolizer.minimum_distance = 5
text_symbolizer.avoid_edges = 0
text_symbolizer.halo_fill = Color('yellow')
text_symbolizer.halo_radius = 1
road_rule = Rule()
#road_rule.filter = Filter("[CLASS] = 'BENDUNDER' or [CLASS] = 'BENDOVER'")
road_rule.symbols.append(text_symbolizer)
road_style.rules.append(road_rule)
road_layer = Layer('road')
road_layer.datasource = Shapefile(file='../data/test/charplacement')
m.append_style('road', road_style)
road_layer.styles.append('road')
m.layers.append(road_layer)
# Draw map
# Set the initial extent of the map.
m.zoom_to_box(Box2d(0,0,14,-14))
# Render
im = Image(m.width,m.height)
render(m, im)
# Save image to file
im.save('output.png') # true-colour RGBA
print "Done\n"

View file

@ -1,83 +0,0 @@
# $Id: rundemo.py 577 2008-01-03 11:39:10Z artem $
#
# This file is part of Mapnik (c++ mapping toolkit)
# Copyright (C) 2005 Jean-Francois Doyon
#
# Mapnik is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
# Import everything. In this case this is safe, in more complex systems, you
# will want to be more selective.
try:
from mapnik import *
except:
print '\n\nThe mapnik library and python bindings must have been compiled and \
installed successfully before running this script.\n\n'
raise
m = Map(690,690,"+proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs")
m.background = Color(255,100,100,255)
road_style = Style()
#Road
road_rule = Rule()
road_stroke = Stroke(Color('white'), 1)
road_stroke.line_cap = line_cap.ROUND_CAP
road_stroke.line_join = line_join.ROUND_JOIN
#road_rule.filter = Filter("[CLASS] = 'CROSS'")
road_rule.symbols.append(LineSymbolizer(road_stroke))
road_style.rules.append(road_rule);
#Road text
text_symbolizer = TextSymbolizer(Expression('[NAME]'), 'DejaVu Sans Book', 10, Color('black'))
text_symbolizer.label_placement=label_placement.LINE_PLACEMENT
text_symbolizer.minimum_distance = 0
#text_symbolizer.max_char_angle_delta = 40
#text_symbolizer.force_odd_labels = 1
#FIXME: Displacement cannot be set from python so we can't set it here, lol!
text_symbolizer.label_spacing = 60
text_symbolizer.label_position_tolerance = 5
text_symbolizer.avoid_edges = 0
text_symbolizer.halo_fill = Color('yellow')
text_symbolizer.halo_radius = 1
road_rule = Rule()
#road_rule.filter = Filter("[CLASS] = 'CROSS'")
road_rule.symbols.append(text_symbolizer)
road_style.rules.append(road_rule)
road_layer = Layer('road')
road_layer.datasource = Shapefile(file='../data/test/displacement')
m.append_style('road', road_style)
road_layer.styles.append('road')
m.layers.append(road_layer)
# Draw map
# Set the initial extent of the map.
m.zoom_to_box(Box2d(0,0,14,-14))
# Render
im = Image(m.width,m.height)
render(m, im)
# Save image to file
im.save('output.png') # true-colour RGBA
print "Done\n"

View file

@ -1,84 +0,0 @@
# $Id: rundemo.py 577 2008-01-03 11:39:10Z artem $
#
# This file is part of Mapnik (c++ mapping toolkit)
# Copyright (C) 2005 Jean-Francois Doyon
#
# Mapnik is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
# Import everything. In this case this is safe, in more complex systems, you
# will want to be more selective.
try:
from mapnik import *
except:
print '\n\nThe mapnik library and python bindings must have been compiled and \
installed successfully before running this script.\n\n'
raise
m = Map(690,690,"+proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs")
m.background = Color(255,100,100,255)
road_style = Style()
#Road
road_rule = Rule()
road_stroke = Stroke(Color('white'), 12)
road_stroke.opacity = 0.7
#road_stroke.line_cap = line_cap.ROUND_CAP
#road_stroke.line_join = line_join.ROUND_JOIN
#road_rule.filter = Filter("[CLASS] = 'CROSS'")
road_rule.symbols.append(LineSymbolizer(road_stroke))
road_style.rules.append(road_rule);
#Road text
text_symbolizer = TextSymbolizer(Expression('[NAME]'), 'DejaVu Sans Book', 10, Color('black'))
text_symbolizer.label_placement=label_placement.LINE_PLACEMENT
text_symbolizer.minimum_distance = 0
#text_symbolizer.max_char_angle_delta = 40
#text_symbolizer.force_odd_labels = 1
text_symbolizer.label_spacing = 60
text_symbolizer.label_position_tolerance = 50
text_symbolizer.minimum_distance = 5
text_symbolizer.avoid_edges = 0
text_symbolizer.halo_fill = Color('yellow')
text_symbolizer.halo_radius = 1
road_rule = Rule()
#road_rule.filter = Filter("[CLASS] = 'CROSS'")
road_rule.symbols.append(text_symbolizer)
road_style.rules.append(road_rule)
road_layer = Layer('road')
road_layer.datasource = Shapefile(file='../data/test/overlap')
m.append_style('road', road_style)
road_layer.styles.append('road')
m.layers.append(road_layer)
# Draw map
# Set the initial extent of the map.
m.zoom_to_box(Box2d(0,0,14,-14))
# Render
im = Image(m.width,m.height)
render(m, im)
# Save image to file
im.save('output.png') # true-colour RGBA
print "Done\n"

View file

@ -1,82 +0,0 @@
# $Id: rundemo.py 577 2008-01-03 11:39:10Z artem $
#
# This file is part of Mapnik (c++ mapping toolkit)
# Copyright (C) 2005 Jean-Francois Doyon
#
# Mapnik is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
# Import everything. In this case this is safe, in more complex systems, you
# will want to be more selective.
try:
from mapnik import *
except:
print '\n\nThe mapnik library and python bindings must have been compiled and \
installed successfully before running this script.\n\n'
raise
m = Map(690,690,"+proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs")
m.background = Color(255,100,100,255)
road_style = Style()
#Road
road_rule = Rule()
road_stroke = Stroke(Color('white'), 12)
road_stroke.line_cap = line_cap.ROUND_CAP
road_stroke.line_join = line_join.ROUND_JOIN
#road_rule.filter = Filter("[CLASS] = 'STRAIGHT'")
road_rule.symbols.append(LineSymbolizer(road_stroke))
road_style.rules.append(road_rule);
#Road text
text_symbolizer = TextSymbolizer(Expression('[NAME]'), 'DejaVu Sans Book', 10, Color('black'))
text_symbolizer.label_placement=label_placement.LINE_PLACEMENT
text_symbolizer.minimum_distance = 0
#text_symbolizer.max_char_angle_delta = 40
#text_symbolizer.force_odd_labels = 1
text_symbolizer.label_spacing = 80
text_symbolizer.label_position_tolerance = 5
text_symbolizer.avoid_edges = 0
text_symbolizer.halo_fill = Color('yellow')
text_symbolizer.halo_radius = 1
road_rule = Rule()
#road_rule.filter = Filter("[CLASS] = 'STRAIGHT'")
road_rule.symbols.append(text_symbolizer)
road_style.rules.append(road_rule)
road_layer = Layer('road')
road_layer.datasource = Shapefile(file='../data/test/textspacing')
m.append_style('road', road_style)
road_layer.styles.append('road')
m.layers.append(road_layer)
# Draw map
# Set the initial extent of the map.
m.zoom_to_box(Box2d(0,0,14,-14))
# Render
im = Image(m.width,m.height)
render(m, im)
# Save image to file
im.save('output.png') # true-colour RGBA
print "Done\n"

View file

@ -1,6 +1,7 @@
#!/usr/bin/env python
import os
import shutil
import mapnik
from nose.tools import *
from utilities import execution_path, run_all
@ -10,53 +11,182 @@ def setup():
# from another directory we need to chdir()
os.chdir(execution_path('.'))
if mapnik.has_pycairo() and 'sqlite' in mapnik.DatasourceCache.plugin_names():
def make_tmp_map():
m = mapnik.Map(512,512)
m.background_color = mapnik.Color('steelblue')
ds = mapnik.MemoryDatasource()
context = mapnik.Context()
context.push('Name')
f = mapnik.Feature(context,1)
f['Name'] = 'Hello'
f.add_geometries_from_wkt('POINT (0 0)')
ds.add_feature(f)
s = mapnik.Style()
r = mapnik.Rule()
sym = mapnik.MarkersSymbolizer()
sym.allow_overlap = True
r.symbols.append(sym)
s.rules.append(r)
lyr = mapnik.Layer('Layer')
lyr.datasource = ds
lyr.styles.append('style')
m.append_style('style',s)
m.layers.append(lyr)
return m
def _pycairo_surface(type,sym):
import cairo
test_cairo_file = '/tmp/test.%s' % type
m = mapnik.Map(256,256)
mapnik.load_map(m,'../data/good_maps/%s_symbolizer.xml' % sym)
if hasattr(cairo,'%sSurface' % type.upper()):
surface = getattr(cairo,'%sSurface' % type.upper())(test_cairo_file, m.width,m.height)
mapnik.render(m, surface)
surface.finish()
if os.path.exists(test_cairo_file):
def draw_title(m,ctx,text,size=10,color=mapnik.Color('black')):
""" Draw a Map Title near the top of a page."""
middle = m.width/2.0
ctx.set_source_rgba(*cairo_color(color))
ctx.select_font_face("DejaVu Sans Book", cairo.FONT_SLANT_NORMAL, cairo.FONT_WEIGHT_NORMAL)
ctx.set_font_size(size)
x_bearing, y_bearing, width, height = ctx.text_extents(text)[:4]
ctx.move_to(middle - width / 2 - x_bearing, 20.0 - height / 2 - y_bearing)
ctx.show_text(text)
def draw_neatline(m,ctx):
w,h = m.width, m.height
ctx.set_source_rgba(*cairo_color(mapnik.Color('black')))
outline = [
[0,0],[w,0],[w,h],[0,h]
]
ctx.set_line_width(1)
for idx,pt in enumerate(outline):
if (idx == 0):
ctx.move_to(*pt)
else:
ctx.line_to(*pt)
ctx.close_path()
inset = 6
inline = [
[inset,inset],[w-inset,inset],[w-inset,h-inset],[inset,h-inset]
]
ctx.set_line_width(inset/2)
for idx,pt in enumerate(inline):
if (idx == 0):
ctx.move_to(*pt)
else:
ctx.line_to(*pt)
ctx.close_path()
ctx.stroke()
def cairo_color(c):
""" Return a Cairo color tuple from a Mapnik Color."""
ctx_c = (c.r/255.0,c.g/255.0,c.b/255.0,c.a/255.0)
return ctx_c
if mapnik.has_pycairo():
import cairo
def test_passing_pycairo_context_svg():
m = make_tmp_map()
m.zoom_to_box(mapnik.Box2d(-180,-90,180,90))
test_cairo_file = '/tmp/mapnik-cairo-context-test.svg'
surface = cairo.SVGSurface(test_cairo_file, m.width, m.height)
expected_cairo_file = './images/pycairo/cairo-cairo-expected.svg'
context = cairo.Context(surface)
mapnik.render(m,context)
draw_title(m,context,"Hello Map",size=20)
draw_neatline(m,context)
surface.finish()
if not os.path.exists(expected_cairo_file):
print 'generated expected cairo surface file %s' % expected_cairo_file
shutil.copy(test_cairo_file,expected_cairo_file)
diff = abs(os.stat(expected_cairo_file).st_size-os.stat(test_cairo_file).st_size)
msg = 'diff in size (%s) between actual (%s) and expected(%s)' % (diff,test_cairo_file,'tests/python_tests/'+ expected_cairo_file)
eq_( diff < 1500, True, msg)
os.remove(test_cairo_file)
def test_passing_pycairo_context_pdf():
m = make_tmp_map()
m.zoom_to_box(mapnik.Box2d(-180,-90,180,90))
test_cairo_file = '/tmp/mapnik-cairo-context-test.pdf'
surface = cairo.PDFSurface(test_cairo_file, m.width, m.height)
expected_cairo_file = './images/pycairo/cairo-cairo-expected.pdf'
context = cairo.Context(surface)
mapnik.render(m,context)
draw_title(m,context,"Hello Map",size=20)
draw_neatline(m,context)
surface.finish()
if not os.path.exists(expected_cairo_file):
print 'generated expected cairo surface file %s' % expected_cairo_file
shutil.copy(test_cairo_file,expected_cairo_file)
diff = abs(os.stat(expected_cairo_file).st_size-os.stat(test_cairo_file).st_size)
msg = 'diff in size (%s) between actual (%s) and expected(%s)' % (diff,test_cairo_file,'tests/python_tests/'+ expected_cairo_file)
eq_( diff < 1500, True, msg)
os.remove(test_cairo_file)
def test_passing_pycairo_context_png():
m = make_tmp_map()
m.zoom_to_box(mapnik.Box2d(-180,-90,180,90))
test_cairo_file = '/tmp/mapnik-cairo-context-test.png'
surface = cairo.ImageSurface(cairo.FORMAT_ARGB32, m.width, m.height)
expected_cairo_file = './images/pycairo/cairo-cairo-expected.png'
expected_cairo_file2 = './images/pycairo/cairo-cairo-expected-reduced.png'
context = cairo.Context(surface)
mapnik.render(m,context)
draw_title(m,context,"Hello Map",size=20)
draw_neatline(m,context)
surface.write_to_png(test_cairo_file)
reduced_color_image = test_cairo_file.replace('png','-mapnik.png')
im = mapnik.Image.from_cairo(surface)
im.save(reduced_color_image,'png8')
surface.finish()
if not os.path.exists(expected_cairo_file):
print 'generated expected cairo surface file %s' % expected_cairo_file
shutil.copy(test_cairo_file,expected_cairo_file)
diff = abs(os.stat(expected_cairo_file).st_size-os.stat(test_cairo_file).st_size)
msg = 'diff in size (%s) between actual (%s) and expected(%s)' % (diff,test_cairo_file,'tests/python_tests/'+ expected_cairo_file)
eq_( diff < 500, True, msg)
os.remove(test_cairo_file)
if not os.path.exists(expected_cairo_file2):
print 'generated expected cairo surface file %s' % expected_cairo_file2
shutil.copy(reduced_color_image,expected_cairo_file2)
diff = abs(os.stat(expected_cairo_file2).st_size-os.stat(reduced_color_image).st_size)
msg = 'diff in size (%s) between actual (%s) and expected(%s)' % (diff,reduced_color_image,'tests/python_tests/'+ expected_cairo_file2)
eq_( diff < 500, True, msg)
os.remove(reduced_color_image)
if 'sqlite' in mapnik.DatasourceCache.plugin_names():
def _pycairo_surface(type,sym):
test_cairo_file = '/tmp/mapnik-cairo-surface-test.%s.%s' % (sym,type)
expected_cairo_file = './images/pycairo/cairo-surface-expected.%s.%s' % (sym,type)
m = mapnik.Map(256,256)
mapnik.load_map(m,'../data/good_maps/%s_symbolizer.xml' % sym)
m.zoom_all()
if hasattr(cairo,'%sSurface' % type.upper()):
surface = getattr(cairo,'%sSurface' % type.upper())(test_cairo_file, m.width,m.height)
mapnik.render(m, surface)
surface.finish()
if not os.path.exists(expected_cairo_file):
print 'generated expected cairo surface file %s' % expected_cairo_file
shutil.copy(test_cairo_file,expected_cairo_file)
diff = abs(os.stat(expected_cairo_file).st_size-os.stat(test_cairo_file).st_size)
msg = 'diff in size (%s) between actual (%s) and expected(%s)' % (diff,test_cairo_file,'tests/python_tests/'+ expected_cairo_file)
eq_( diff < 2100, True, msg)
os.remove(test_cairo_file)
return True
else:
# Fail, the file wasn't written
return False
else:
print 'skipping cairo.%s test since surface is not available' % type.upper()
return True
print 'skipping cairo.%s test since surface is not available' % type.upper()
return True
def test_pycairo_svg_surface1():
eq_(_pycairo_surface('svg','point'),True)
def test_pycairo_svg_surface1():
eq_(_pycairo_surface('svg','point'),True)
def test_pycairo_svg_surface2():
eq_(_pycairo_surface('svg','building'),True)
def test_pycairo_svg_surface2():
eq_(_pycairo_surface('svg','building'),True)
def test_pycairo_svg_surface3():
eq_(_pycairo_surface('svg','polygon'),True)
def test_pycairo_svg_surface3():
eq_(_pycairo_surface('svg','polygon'),True)
def test_pycairo_pdf_surface1():
eq_(_pycairo_surface('pdf','point'),True)
def test_pycairo_pdf_surface1():
eq_(_pycairo_surface('pdf','point'),True)
def test_pycairo_pdf_surface2():
eq_(_pycairo_surface('pdf','building'),True)
def test_pycairo_pdf_surface2():
eq_(_pycairo_surface('pdf','building'),True)
def test_pycairo_pdf_surface3():
eq_(_pycairo_surface('pdf','polygon'),True)
def test_pycairo_ps_surface1():
eq_(_pycairo_surface('ps','point'),True)
def test_pycairo_ps_surface2():
eq_(_pycairo_surface('ps','building'),True)
def test_pycairo_ps_surface3():
eq_(_pycairo_surface('ps','polygon'),True)
def test_pycairo_pdf_surface3():
eq_(_pycairo_surface('pdf','polygon'),True)
if __name__ == "__main__":
setup()

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.1 KiB

View file

@ -0,0 +1,50 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="512pt" height="512pt" viewBox="0 0 512 512" version="1.1">
<defs>
<g>
<symbol overflow="visible" id="glyph0-0">
<path style="stroke:none;" d="M 1 3.53125 L 1 -14.109375 L 11 -14.109375 L 11 3.53125 Z M 2.125 2.421875 L 9.890625 2.421875 L 9.890625 -12.984375 L 2.125 -12.984375 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-1">
<path style="stroke:none;" d="M 1.96875 -14.578125 L 3.9375 -14.578125 L 3.9375 -8.609375 L 11.109375 -8.609375 L 11.109375 -14.578125 L 13.078125 -14.578125 L 13.078125 0 L 11.109375 0 L 11.109375 -6.9375 L 3.9375 -6.9375 L 3.9375 0 L 1.96875 0 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-2">
<path style="stroke:none;" d="M 11.234375 -5.921875 L 11.234375 -5.046875 L 2.984375 -5.046875 C 3.054688 -3.804688 3.425781 -2.859375 4.09375 -2.203125 C 4.757812 -1.554688 5.691406 -1.234375 6.890625 -1.234375 C 7.578125 -1.234375 8.242188 -1.316406 8.890625 -1.484375 C 9.535156 -1.660156 10.179688 -1.914062 10.828125 -2.25 L 10.828125 -0.5625 C 10.179688 -0.28125 9.519531 -0.0703125 8.84375 0.0625 C 8.164062 0.207031 7.476562 0.28125 6.78125 0.28125 C 5.03125 0.28125 3.644531 -0.222656 2.625 -1.234375 C 1.613281 -2.253906 1.109375 -3.628906 1.109375 -5.359375 C 1.109375 -7.148438 1.585938 -8.570312 2.546875 -9.625 C 3.515625 -10.675781 4.820312 -11.203125 6.46875 -11.203125 C 7.9375 -11.203125 9.097656 -10.726562 9.953125 -9.78125 C 10.804688 -8.832031 11.234375 -7.546875 11.234375 -5.921875 Z M 9.4375 -6.453125 C 9.425781 -7.429688 9.148438 -8.210938 8.609375 -8.796875 C 8.078125 -9.378906 7.367188 -9.671875 6.484375 -9.671875 C 5.484375 -9.671875 4.679688 -9.390625 4.078125 -8.828125 C 3.472656 -8.265625 3.125 -7.46875 3.03125 -6.4375 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-3">
<path style="stroke:none;" d="M 1.890625 -15.203125 L 3.6875 -15.203125 L 3.6875 0 L 1.890625 0 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-4">
<path style="stroke:none;" d="M 6.125 -9.671875 C 5.15625 -9.671875 4.390625 -9.296875 3.828125 -8.546875 C 3.273438 -7.796875 3 -6.765625 3 -5.453125 C 3 -4.148438 3.273438 -3.117188 3.828125 -2.359375 C 4.390625 -1.609375 5.15625 -1.234375 6.125 -1.234375 C 7.082031 -1.234375 7.835938 -1.609375 8.390625 -2.359375 C 8.953125 -3.117188 9.234375 -4.148438 9.234375 -5.453125 C 9.234375 -6.753906 8.953125 -7.78125 8.390625 -8.53125 C 7.835938 -9.289062 7.082031 -9.671875 6.125 -9.671875 Z M 6.125 -11.203125 C 7.6875 -11.203125 8.910156 -10.691406 9.796875 -9.671875 C 10.691406 -8.660156 11.140625 -7.253906 11.140625 -5.453125 C 11.140625 -3.671875 10.691406 -2.269531 9.796875 -1.25 C 8.910156 -0.226562 7.6875 0.28125 6.125 0.28125 C 4.550781 0.28125 3.320312 -0.226562 2.4375 -1.25 C 1.550781 -2.269531 1.109375 -3.671875 1.109375 -5.453125 C 1.109375 -7.253906 1.550781 -8.660156 2.4375 -9.671875 C 3.320312 -10.691406 4.550781 -11.203125 6.125 -11.203125 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-5">
<path style="stroke:none;" d=""/>
</symbol>
<symbol overflow="visible" id="glyph0-6">
<path style="stroke:none;" d="M 1.96875 -14.578125 L 4.90625 -14.578125 L 8.625 -4.65625 L 12.359375 -14.578125 L 15.296875 -14.578125 L 15.296875 0 L 13.375 0 L 13.375 -12.796875 L 9.625 -2.796875 L 7.640625 -2.796875 L 3.875 -12.796875 L 3.875 0 L 1.96875 0 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-7">
<path style="stroke:none;" d="M 6.859375 -5.5 C 5.398438 -5.5 4.390625 -5.332031 3.828125 -5 C 3.273438 -4.664062 3 -4.097656 3 -3.296875 C 3 -2.660156 3.207031 -2.15625 3.625 -1.78125 C 4.050781 -1.40625 4.625 -1.21875 5.34375 -1.21875 C 6.34375 -1.21875 7.140625 -1.570312 7.734375 -2.28125 C 8.335938 -2.988281 8.640625 -3.925781 8.640625 -5.09375 L 8.640625 -5.5 Z M 10.4375 -6.234375 L 10.4375 0 L 8.640625 0 L 8.640625 -1.65625 C 8.234375 -1 7.722656 -0.507812 7.109375 -0.1875 C 6.492188 0.125 5.742188 0.28125 4.859375 0.28125 C 3.742188 0.28125 2.851562 -0.03125 2.1875 -0.65625 C 1.53125 -1.289062 1.203125 -2.132812 1.203125 -3.1875 C 1.203125 -4.414062 1.613281 -5.34375 2.4375 -5.96875 C 3.257812 -6.59375 4.488281 -6.90625 6.125 -6.90625 L 8.640625 -6.90625 L 8.640625 -7.078125 C 8.640625 -7.910156 8.367188 -8.550781 7.828125 -9 C 7.285156 -9.445312 6.519531 -9.671875 5.53125 -9.671875 C 4.90625 -9.671875 4.296875 -9.597656 3.703125 -9.453125 C 3.117188 -9.304688 2.550781 -9.082031 2 -8.78125 L 2 -10.4375 C 2.65625 -10.695312 3.289062 -10.890625 3.90625 -11.015625 C 4.53125 -11.140625 5.132812 -11.203125 5.71875 -11.203125 C 7.300781 -11.203125 8.484375 -10.789062 9.265625 -9.96875 C 10.046875 -9.144531 10.4375 -7.898438 10.4375 -6.234375 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-8">
<path style="stroke:none;" d="M 3.625 -1.640625 L 3.625 4.15625 L 1.8125 4.15625 L 1.8125 -10.9375 L 3.625 -10.9375 L 3.625 -9.28125 C 4 -9.925781 4.472656 -10.40625 5.046875 -10.71875 C 5.628906 -11.039062 6.320312 -11.203125 7.125 -11.203125 C 8.445312 -11.203125 9.523438 -10.671875 10.359375 -9.609375 C 11.191406 -8.554688 11.609375 -7.171875 11.609375 -5.453125 C 11.609375 -3.734375 11.191406 -2.347656 10.359375 -1.296875 C 9.523438 -0.242188 8.445312 0.28125 7.125 0.28125 C 6.320312 0.28125 5.628906 0.125 5.046875 -0.1875 C 4.472656 -0.507812 4 -0.992188 3.625 -1.640625 Z M 9.734375 -5.453125 C 9.734375 -6.773438 9.460938 -7.8125 8.921875 -8.5625 C 8.378906 -9.320312 7.632812 -9.703125 6.6875 -9.703125 C 5.726562 -9.703125 4.976562 -9.320312 4.4375 -8.5625 C 3.894531 -7.8125 3.625 -6.773438 3.625 -5.453125 C 3.625 -4.140625 3.894531 -3.101562 4.4375 -2.34375 C 4.976562 -1.59375 5.726562 -1.21875 6.6875 -1.21875 C 7.632812 -1.21875 8.378906 -1.59375 8.921875 -2.34375 C 9.460938 -3.101562 9.734375 -4.140625 9.734375 -5.453125 Z "/>
</symbol>
</g>
</defs>
<g id="surface1">
<rect x="0" y="0" width="512" height="512" style="fill:rgb(27.45098%,50.980392%,70.588235%);fill-opacity:1;stroke:none;"/>
<path style="fill-rule:nonzero;fill:rgb(0%,0%,100%);fill-opacity:1;stroke-width:0.5;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:4;" d="M 5 0 L 4.503906 2.167969 L 3.117188 3.910156 L 1.113281 4.875 L -1.113281 4.875 L -3.117188 3.910156 L -4.503906 2.167969 L -5 0 L -4.503906 -2.167969 L -3.117188 -3.910156 L -1.113281 -4.875 L 1.113281 -4.875 L 3.117188 -3.910156 L 4.503906 -2.167969 Z " transform="matrix(1,0,0,1,256,256)"/>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-1" x="205.929688" y="25.523438"/>
<use xlink:href="#glyph0-2" x="220.96875" y="25.523438"/>
<use xlink:href="#glyph0-3" x="233.273438" y="25.523438"/>
<use xlink:href="#glyph0-3" x="238.830078" y="25.523438"/>
<use xlink:href="#glyph0-4" x="244.386719" y="25.523438"/>
<use xlink:href="#glyph0-5" x="256.623047" y="25.523438"/>
<use xlink:href="#glyph0-6" x="262.980469" y="25.523438"/>
<use xlink:href="#glyph0-7" x="280.236328" y="25.523438"/>
<use xlink:href="#glyph0-8" x="292.492188" y="25.523438"/>
</g>
<path style="fill:none;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 0 0 L 512 0 L 512 512 L 0 512 Z M 6 6 L 506 6 L 506 506 L 6 506 Z "/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 7.1 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 70 KiB

View file

@ -0,0 +1,328 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="256pt" height="256pt" viewBox="0 0 256 256" version="1.1">
<defs>
<g>
<symbol overflow="visible" id="glyph0-0">
<path style="stroke:none;" d="M 0.5 1.765625 L 0.5 -7.046875 L 5.5 -7.046875 L 5.5 1.765625 Z M 1.0625 1.21875 L 4.9375 1.21875 L 4.9375 -6.484375 L 1.0625 -6.484375 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-1">
<path style="stroke:none;" d="M 1.96875 -3.484375 L 1.96875 -0.8125 L 3.546875 -0.8125 C 4.078125 -0.8125 4.46875 -0.921875 4.71875 -1.140625 C 4.976562 -1.359375 5.109375 -1.695312 5.109375 -2.15625 C 5.109375 -2.601562 4.976562 -2.9375 4.71875 -3.15625 C 4.46875 -3.375 4.078125 -3.484375 3.546875 -3.484375 Z M 1.96875 -6.484375 L 1.96875 -4.28125 L 3.421875 -4.28125 C 3.910156 -4.28125 4.269531 -4.367188 4.5 -4.546875 C 4.738281 -4.734375 4.859375 -5.007812 4.859375 -5.375 C 4.859375 -5.75 4.738281 -6.023438 4.5 -6.203125 C 4.269531 -6.390625 3.910156 -6.484375 3.421875 -6.484375 Z M 0.984375 -7.296875 L 3.5 -7.296875 C 4.25 -7.296875 4.828125 -7.140625 5.234375 -6.828125 C 5.640625 -6.515625 5.84375 -6.066406 5.84375 -5.484375 C 5.84375 -5.035156 5.738281 -4.679688 5.53125 -4.421875 C 5.320312 -4.160156 5.019531 -4 4.625 -3.9375 C 5.101562 -3.832031 5.476562 -3.613281 5.75 -3.28125 C 6.019531 -2.945312 6.15625 -2.535156 6.15625 -2.046875 C 6.15625 -1.390625 5.929688 -0.882812 5.484375 -0.53125 C 5.046875 -0.175781 4.414062 0 3.59375 0 L 0.984375 0 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-2">
<path style="stroke:none;" d="M 4.109375 -4.625 C 4.003906 -4.6875 3.894531 -4.726562 3.78125 -4.75 C 3.664062 -4.78125 3.535156 -4.796875 3.390625 -4.796875 C 2.878906 -4.796875 2.488281 -4.628906 2.21875 -4.296875 C 1.945312 -3.972656 1.8125 -3.5 1.8125 -2.875 L 1.8125 0 L 0.90625 0 L 0.90625 -5.46875 L 1.8125 -5.46875 L 1.8125 -4.625 C 2 -4.957031 2.242188 -5.203125 2.546875 -5.359375 C 2.847656 -5.515625 3.21875 -5.59375 3.65625 -5.59375 C 3.71875 -5.59375 3.785156 -5.585938 3.859375 -5.578125 C 3.929688 -5.578125 4.015625 -5.566406 4.109375 -5.546875 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-3">
<path style="stroke:none;" d="M 3.421875 -2.75 C 2.703125 -2.75 2.203125 -2.664062 1.921875 -2.5 C 1.640625 -2.332031 1.5 -2.050781 1.5 -1.65625 C 1.5 -1.332031 1.601562 -1.078125 1.8125 -0.890625 C 2.019531 -0.703125 2.304688 -0.609375 2.671875 -0.609375 C 3.171875 -0.609375 3.570312 -0.785156 3.875 -1.140625 C 4.175781 -1.492188 4.328125 -1.960938 4.328125 -2.546875 L 4.328125 -2.75 Z M 5.21875 -3.125 L 5.21875 0 L 4.328125 0 L 4.328125 -0.828125 C 4.117188 -0.492188 3.859375 -0.25 3.546875 -0.09375 C 3.242188 0.0625 2.875 0.140625 2.4375 0.140625 C 1.875 0.140625 1.425781 -0.015625 1.09375 -0.328125 C 0.757812 -0.640625 0.59375 -1.0625 0.59375 -1.59375 C 0.59375 -2.207031 0.800781 -2.671875 1.21875 -2.984375 C 1.632812 -3.296875 2.25 -3.453125 3.0625 -3.453125 L 4.328125 -3.453125 L 4.328125 -3.546875 C 4.328125 -3.953125 4.1875 -4.269531 3.90625 -4.5 C 3.632812 -4.726562 3.253906 -4.84375 2.765625 -4.84375 C 2.453125 -4.84375 2.144531 -4.800781 1.84375 -4.71875 C 1.550781 -4.644531 1.269531 -4.535156 1 -4.390625 L 1 -5.21875 C 1.332031 -5.34375 1.648438 -5.4375 1.953125 -5.5 C 2.265625 -5.5625 2.566406 -5.59375 2.859375 -5.59375 C 3.648438 -5.59375 4.238281 -5.390625 4.625 -4.984375 C 5.019531 -4.578125 5.21875 -3.957031 5.21875 -3.125 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-4">
<path style="stroke:none;" d="M 0.546875 -5.46875 L 4.8125 -5.46875 L 4.8125 -4.65625 L 1.4375 -0.71875 L 4.8125 -0.71875 L 4.8125 0 L 0.4375 0 L 0.4375 -0.828125 L 3.8125 -4.75 L 0.546875 -4.75 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-5">
<path style="stroke:none;" d="M 0.9375 -5.46875 L 1.84375 -5.46875 L 1.84375 0 L 0.9375 0 Z M 0.9375 -7.59375 L 1.84375 -7.59375 L 1.84375 -6.453125 L 0.9375 -6.453125 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-6">
<path style="stroke:none;" d="M 0.9375 -7.59375 L 1.84375 -7.59375 L 1.84375 0 L 0.9375 0 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-7">
<path style="stroke:none;" d=""/>
</symbol>
<symbol overflow="visible" id="glyph0-8">
<path style="stroke:none;" d="M 3.09375 -7.59375 C 2.664062 -6.84375 2.34375 -6.097656 2.125 -5.359375 C 1.914062 -4.628906 1.8125 -3.890625 1.8125 -3.140625 C 1.8125 -2.390625 1.914062 -1.644531 2.125 -0.90625 C 2.34375 -0.164062 2.664062 0.570312 3.09375 1.3125 L 2.3125 1.3125 C 1.832031 0.550781 1.46875 -0.195312 1.21875 -0.9375 C 0.976562 -1.675781 0.859375 -2.410156 0.859375 -3.140625 C 0.859375 -3.867188 0.976562 -4.597656 1.21875 -5.328125 C 1.457031 -6.066406 1.820312 -6.820312 2.3125 -7.59375 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-9">
<path style="stroke:none;" d="M 4.421875 -5.3125 L 4.421875 -4.453125 C 4.171875 -4.585938 3.910156 -4.6875 3.640625 -4.75 C 3.367188 -4.8125 3.082031 -4.84375 2.78125 -4.84375 C 2.34375 -4.84375 2.007812 -4.773438 1.78125 -4.640625 C 1.5625 -4.503906 1.453125 -4.300781 1.453125 -4.03125 C 1.453125 -3.820312 1.53125 -3.65625 1.6875 -3.53125 C 1.84375 -3.414062 2.164062 -3.304688 2.65625 -3.203125 L 2.953125 -3.125 C 3.597656 -2.988281 4.050781 -2.796875 4.3125 -2.546875 C 4.582031 -2.296875 4.71875 -1.953125 4.71875 -1.515625 C 4.71875 -1.003906 4.515625 -0.597656 4.109375 -0.296875 C 3.710938 -0.00390625 3.164062 0.140625 2.46875 0.140625 C 2.164062 0.140625 1.851562 0.109375 1.53125 0.046875 C 1.21875 -0.00390625 0.890625 -0.0859375 0.546875 -0.203125 L 0.546875 -1.125 C 0.878906 -0.957031 1.203125 -0.828125 1.515625 -0.734375 C 1.835938 -0.648438 2.160156 -0.609375 2.484375 -0.609375 C 2.898438 -0.609375 3.222656 -0.679688 3.453125 -0.828125 C 3.679688 -0.972656 3.796875 -1.175781 3.796875 -1.4375 C 3.796875 -1.6875 3.710938 -1.875 3.546875 -2 C 3.390625 -2.132812 3.03125 -2.257812 2.46875 -2.375 L 2.15625 -2.453125 C 1.601562 -2.566406 1.203125 -2.742188 0.953125 -2.984375 C 0.703125 -3.234375 0.578125 -3.566406 0.578125 -3.984375 C 0.578125 -4.503906 0.757812 -4.898438 1.125 -5.171875 C 1.488281 -5.453125 2.007812 -5.59375 2.6875 -5.59375 C 3.007812 -5.59375 3.316406 -5.566406 3.609375 -5.515625 C 3.910156 -5.472656 4.179688 -5.40625 4.421875 -5.3125 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-10">
<path style="stroke:none;" d="M 0.296875 -5.46875 L 1.25 -5.46875 L 2.953125 -0.875 L 4.671875 -5.46875 L 5.625 -5.46875 L 3.5625 0 L 2.34375 0 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-11">
<path style="stroke:none;" d="M 4.546875 -2.796875 C 4.546875 -3.453125 4.410156 -3.957031 4.140625 -4.3125 C 3.867188 -4.664062 3.492188 -4.84375 3.015625 -4.84375 C 2.523438 -4.84375 2.144531 -4.664062 1.875 -4.3125 C 1.613281 -3.957031 1.484375 -3.453125 1.484375 -2.796875 C 1.484375 -2.148438 1.613281 -1.644531 1.875 -1.28125 C 2.144531 -0.925781 2.523438 -0.75 3.015625 -0.75 C 3.492188 -0.75 3.867188 -0.925781 4.140625 -1.28125 C 4.410156 -1.644531 4.546875 -2.148438 4.546875 -2.796875 Z M 5.4375 -0.671875 C 5.4375 0.253906 5.226562 0.941406 4.8125 1.390625 C 4.40625 1.847656 3.773438 2.078125 2.921875 2.078125 C 2.609375 2.078125 2.3125 2.050781 2.03125 2 C 1.75 1.957031 1.476562 1.890625 1.21875 1.796875 L 1.21875 0.921875 C 1.476562 1.066406 1.734375 1.171875 1.984375 1.234375 C 2.242188 1.304688 2.507812 1.34375 2.78125 1.34375 C 3.363281 1.34375 3.800781 1.1875 4.09375 0.875 C 4.394531 0.570312 4.546875 0.109375 4.546875 -0.515625 L 4.546875 -0.96875 C 4.359375 -0.644531 4.117188 -0.398438 3.828125 -0.234375 C 3.535156 -0.078125 3.1875 0 2.78125 0 C 2.113281 0 1.570312 -0.253906 1.15625 -0.765625 C 0.75 -1.273438 0.546875 -1.953125 0.546875 -2.796875 C 0.546875 -3.640625 0.75 -4.316406 1.15625 -4.828125 C 1.570312 -5.335938 2.113281 -5.59375 2.78125 -5.59375 C 3.1875 -5.59375 3.535156 -5.515625 3.828125 -5.359375 C 4.117188 -5.203125 4.359375 -4.960938 4.546875 -4.640625 L 4.546875 -5.46875 L 5.4375 -5.46875 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-12">
<path style="stroke:none;" d="M 2.4375 -3.921875 C 2.132812 -3.660156 1.914062 -3.394531 1.78125 -3.125 C 1.644531 -2.863281 1.578125 -2.59375 1.578125 -2.3125 C 1.578125 -1.832031 1.75 -1.4375 2.09375 -1.125 C 2.4375 -0.8125 2.867188 -0.65625 3.390625 -0.65625 C 3.703125 -0.65625 3.988281 -0.703125 4.25 -0.796875 C 4.519531 -0.898438 4.773438 -1.054688 5.015625 -1.265625 Z M 3.125 -4.46875 L 5.59375 -1.921875 C 5.789062 -2.210938 5.941406 -2.523438 6.046875 -2.859375 C 6.160156 -3.191406 6.222656 -3.539062 6.234375 -3.90625 L 7.15625 -3.90625 C 7.113281 -3.476562 7.003906 -3.050781 6.828125 -2.625 C 6.660156 -2.207031 6.425781 -1.796875 6.125 -1.390625 L 7.484375 0 L 6.265625 0 L 5.5625 -0.71875 C 5.21875 -0.425781 4.859375 -0.207031 4.484375 -0.0625 C 4.117188 0.0703125 3.722656 0.140625 3.296875 0.140625 C 2.515625 0.140625 1.875 -0.0820312 1.375 -0.53125 C 0.875 -0.976562 0.625 -1.550781 0.625 -2.25 C 0.625 -2.664062 0.734375 -3.054688 0.953125 -3.421875 C 1.171875 -3.785156 1.5 -4.128906 1.9375 -4.453125 C 1.78125 -4.660156 1.660156 -4.863281 1.578125 -5.0625 C 1.492188 -5.269531 1.453125 -5.472656 1.453125 -5.671875 C 1.453125 -6.191406 1.632812 -6.613281 2 -6.9375 C 2.363281 -7.257812 2.84375 -7.421875 3.4375 -7.421875 C 3.707031 -7.421875 3.976562 -7.390625 4.25 -7.328125 C 4.519531 -7.273438 4.789062 -7.191406 5.0625 -7.078125 L 5.0625 -6.1875 C 4.78125 -6.332031 4.507812 -6.445312 4.25 -6.53125 C 4 -6.613281 3.765625 -6.65625 3.546875 -6.65625 C 3.203125 -6.65625 2.921875 -6.5625 2.703125 -6.375 C 2.492188 -6.195312 2.390625 -5.960938 2.390625 -5.671875 C 2.390625 -5.515625 2.4375 -5.347656 2.53125 -5.171875 C 2.625 -5.003906 2.820312 -4.769531 3.125 -4.46875 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-13">
<path style="stroke:none;" d="M 1.828125 -7.015625 L 1.828125 -5.46875 L 3.6875 -5.46875 L 3.6875 -4.765625 L 1.828125 -4.765625 L 1.828125 -1.796875 C 1.828125 -1.359375 1.890625 -1.070312 2.015625 -0.9375 C 2.140625 -0.8125 2.390625 -0.75 2.765625 -0.75 L 3.6875 -0.75 L 3.6875 0 L 2.765625 0 C 2.066406 0 1.582031 -0.128906 1.3125 -0.390625 C 1.050781 -0.648438 0.921875 -1.117188 0.921875 -1.796875 L 0.921875 -4.765625 L 0.265625 -4.765625 L 0.265625 -5.46875 L 0.921875 -5.46875 L 0.921875 -7.015625 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-14">
<path style="stroke:none;" d="M 3.71875 -7.59375 L 3.71875 -6.84375 L 2.859375 -6.84375 C 2.535156 -6.84375 2.3125 -6.773438 2.1875 -6.640625 C 2.0625 -6.515625 2 -6.285156 2 -5.953125 L 2 -5.46875 L 3.46875 -5.46875 L 3.46875 -4.765625 L 2 -4.765625 L 2 0 L 1.09375 0 L 1.09375 -4.765625 L 0.234375 -4.765625 L 0.234375 -5.46875 L 1.09375 -5.46875 L 1.09375 -5.84375 C 1.09375 -6.457031 1.234375 -6.898438 1.515625 -7.171875 C 1.796875 -7.453125 2.242188 -7.59375 2.859375 -7.59375 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-15">
<path style="stroke:none;" d="M 0.796875 -7.59375 L 1.578125 -7.59375 C 2.066406 -6.820312 2.429688 -6.066406 2.671875 -5.328125 C 2.921875 -4.597656 3.046875 -3.867188 3.046875 -3.140625 C 3.046875 -2.410156 2.921875 -1.675781 2.671875 -0.9375 C 2.429688 -0.195312 2.066406 0.550781 1.578125 1.3125 L 0.796875 1.3125 C 1.234375 0.570312 1.554688 -0.164062 1.765625 -0.90625 C 1.984375 -1.644531 2.09375 -2.390625 2.09375 -3.140625 C 2.09375 -3.890625 1.984375 -4.628906 1.765625 -5.359375 C 1.554688 -6.097656 1.234375 -6.84375 0.796875 -7.59375 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-16">
<path style="stroke:none;" d="M 0.984375 -7.296875 L 2.453125 -7.296875 L 4.3125 -2.328125 L 6.1875 -7.296875 L 7.65625 -7.296875 L 7.65625 0 L 6.6875 0 L 6.6875 -6.40625 L 4.8125 -1.40625 L 3.8125 -1.40625 L 1.9375 -6.40625 L 1.9375 0 L 0.984375 0 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-17">
<path style="stroke:none;" d="M 3.0625 -4.84375 C 2.582031 -4.84375 2.203125 -4.65625 1.921875 -4.28125 C 1.640625 -3.90625 1.5 -3.390625 1.5 -2.734375 C 1.5 -2.078125 1.632812 -1.5625 1.90625 -1.1875 C 2.1875 -0.8125 2.570312 -0.625 3.0625 -0.625 C 3.539062 -0.625 3.921875 -0.8125 4.203125 -1.1875 C 4.484375 -1.5625 4.625 -2.078125 4.625 -2.734375 C 4.625 -3.378906 4.484375 -3.890625 4.203125 -4.265625 C 3.921875 -4.648438 3.539062 -4.84375 3.0625 -4.84375 Z M 3.0625 -5.59375 C 3.84375 -5.59375 4.457031 -5.335938 4.90625 -4.828125 C 5.351562 -4.328125 5.578125 -3.628906 5.578125 -2.734375 C 5.578125 -1.835938 5.351562 -1.132812 4.90625 -0.625 C 4.457031 -0.113281 3.84375 0.140625 3.0625 0.140625 C 2.28125 0.140625 1.664062 -0.113281 1.21875 -0.625 C 0.769531 -1.132812 0.546875 -1.835938 0.546875 -2.734375 C 0.546875 -3.628906 0.769531 -4.328125 1.21875 -4.828125 C 1.664062 -5.335938 2.28125 -5.59375 3.0625 -5.59375 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-18">
<path style="stroke:none;" d="M 5.484375 -3.296875 L 5.484375 0 L 4.59375 0 L 4.59375 -3.265625 C 4.59375 -3.785156 4.488281 -4.171875 4.28125 -4.421875 C 4.082031 -4.679688 3.78125 -4.8125 3.375 -4.8125 C 2.894531 -4.8125 2.515625 -4.65625 2.234375 -4.34375 C 1.953125 -4.039062 1.8125 -3.625 1.8125 -3.09375 L 1.8125 0 L 0.90625 0 L 0.90625 -5.46875 L 1.8125 -5.46875 L 1.8125 -4.625 C 2.03125 -4.945312 2.285156 -5.1875 2.578125 -5.34375 C 2.867188 -5.507812 3.203125 -5.59375 3.578125 -5.59375 C 4.203125 -5.59375 4.675781 -5.398438 5 -5.015625 C 5.320312 -4.628906 5.484375 -4.054688 5.484375 -3.296875 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-19">
<path style="stroke:none;" d="M 4.875 -5.265625 L 4.875 -4.421875 C 4.625 -4.554688 4.367188 -4.660156 4.109375 -4.734375 C 3.859375 -4.804688 3.601562 -4.84375 3.34375 -4.84375 C 2.757812 -4.84375 2.304688 -4.65625 1.984375 -4.28125 C 1.660156 -3.914062 1.5 -3.398438 1.5 -2.734375 C 1.5 -2.066406 1.660156 -1.546875 1.984375 -1.171875 C 2.304688 -0.804688 2.757812 -0.625 3.34375 -0.625 C 3.601562 -0.625 3.859375 -0.65625 4.109375 -0.71875 C 4.367188 -0.789062 4.625 -0.898438 4.875 -1.046875 L 4.875 -0.203125 C 4.625 -0.0859375 4.363281 -0.00390625 4.09375 0.046875 C 3.832031 0.109375 3.550781 0.140625 3.25 0.140625 C 2.414062 0.140625 1.753906 -0.113281 1.265625 -0.625 C 0.785156 -1.144531 0.546875 -1.847656 0.546875 -2.734375 C 0.546875 -3.617188 0.789062 -4.316406 1.28125 -4.828125 C 1.769531 -5.335938 2.441406 -5.59375 3.296875 -5.59375 C 3.578125 -5.59375 3.847656 -5.566406 4.109375 -5.515625 C 4.367188 -5.460938 4.625 -5.378906 4.875 -5.265625 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-20">
<path style="stroke:none;" d="M 5.484375 -3.296875 L 5.484375 0 L 4.59375 0 L 4.59375 -3.265625 C 4.59375 -3.785156 4.488281 -4.171875 4.28125 -4.421875 C 4.082031 -4.679688 3.78125 -4.8125 3.375 -4.8125 C 2.894531 -4.8125 2.515625 -4.65625 2.234375 -4.34375 C 1.953125 -4.039062 1.8125 -3.625 1.8125 -3.09375 L 1.8125 0 L 0.90625 0 L 0.90625 -7.59375 L 1.8125 -7.59375 L 1.8125 -4.625 C 2.03125 -4.945312 2.285156 -5.1875 2.578125 -5.34375 C 2.867188 -5.507812 3.203125 -5.59375 3.578125 -5.59375 C 4.203125 -5.59375 4.675781 -5.398438 5 -5.015625 C 5.320312 -4.628906 5.484375 -4.054688 5.484375 -3.296875 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-21">
<path style="stroke:none;" d="M 5.625 -2.953125 L 5.625 -2.515625 L 1.484375 -2.515625 C 1.523438 -1.898438 1.710938 -1.429688 2.046875 -1.109375 C 2.378906 -0.785156 2.84375 -0.625 3.4375 -0.625 C 3.78125 -0.625 4.113281 -0.664062 4.4375 -0.75 C 4.769531 -0.832031 5.09375 -0.957031 5.40625 -1.125 L 5.40625 -0.28125 C 5.082031 -0.144531 4.75 -0.0390625 4.40625 0.03125 C 4.070312 0.101562 3.734375 0.140625 3.390625 0.140625 C 2.515625 0.140625 1.820312 -0.109375 1.3125 -0.609375 C 0.800781 -1.117188 0.546875 -1.8125 0.546875 -2.6875 C 0.546875 -3.582031 0.785156 -4.289062 1.265625 -4.8125 C 1.753906 -5.332031 2.410156 -5.59375 3.234375 -5.59375 C 3.972656 -5.59375 4.554688 -5.359375 4.984375 -4.890625 C 5.410156 -4.421875 5.625 -3.773438 5.625 -2.953125 Z M 4.71875 -3.21875 C 4.71875 -3.707031 4.582031 -4.097656 4.3125 -4.390625 C 4.039062 -4.691406 3.6875 -4.84375 3.25 -4.84375 C 2.738281 -4.84375 2.332031 -4.695312 2.03125 -4.40625 C 1.738281 -4.125 1.566406 -3.726562 1.515625 -3.21875 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-22">
<path style="stroke:none;" d="M 4.546875 -4.640625 L 4.546875 -7.59375 L 5.4375 -7.59375 L 5.4375 0 L 4.546875 0 L 4.546875 -0.828125 C 4.359375 -0.492188 4.117188 -0.25 3.828125 -0.09375 C 3.535156 0.0625 3.1875 0.140625 2.78125 0.140625 C 2.125 0.140625 1.585938 -0.117188 1.171875 -0.640625 C 0.753906 -1.171875 0.546875 -1.867188 0.546875 -2.734375 C 0.546875 -3.585938 0.753906 -4.273438 1.171875 -4.796875 C 1.585938 -5.328125 2.125 -5.59375 2.78125 -5.59375 C 3.1875 -5.59375 3.535156 -5.515625 3.828125 -5.359375 C 4.117188 -5.203125 4.359375 -4.960938 4.546875 -4.640625 Z M 1.484375 -2.734375 C 1.484375 -2.066406 1.617188 -1.546875 1.890625 -1.171875 C 2.160156 -0.796875 2.535156 -0.609375 3.015625 -0.609375 C 3.484375 -0.609375 3.851562 -0.796875 4.125 -1.171875 C 4.40625 -1.546875 4.546875 -2.066406 4.546875 -2.734375 C 4.546875 -3.390625 4.40625 -3.90625 4.125 -4.28125 C 3.851562 -4.65625 3.484375 -4.84375 3.015625 -4.84375 C 2.535156 -4.84375 2.160156 -4.65625 1.890625 -4.28125 C 1.617188 -3.90625 1.484375 -3.390625 1.484375 -2.734375 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-23">
<path style="stroke:none;" d="M 0.84375 -2.15625 L 0.84375 -5.46875 L 1.75 -5.46875 L 1.75 -2.1875 C 1.75 -1.675781 1.847656 -1.289062 2.046875 -1.03125 C 2.253906 -0.769531 2.554688 -0.640625 2.953125 -0.640625 C 3.441406 -0.640625 3.828125 -0.789062 4.109375 -1.09375 C 4.390625 -1.40625 4.53125 -1.832031 4.53125 -2.375 L 4.53125 -5.46875 L 5.4375 -5.46875 L 5.4375 0 L 4.53125 0 L 4.53125 -0.84375 C 4.3125 -0.507812 4.054688 -0.257812 3.765625 -0.09375 C 3.484375 0.0625 3.148438 0.140625 2.765625 0.140625 C 2.140625 0.140625 1.660156 -0.0507812 1.328125 -0.4375 C 1.003906 -0.832031 0.84375 -1.40625 0.84375 -2.15625 Z M 3.109375 -5.59375 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-24">
<path style="stroke:none;" d="M 1.8125 -0.828125 L 1.8125 2.078125 L 0.90625 2.078125 L 0.90625 -5.46875 L 1.8125 -5.46875 L 1.8125 -4.640625 C 2 -4.960938 2.234375 -5.203125 2.515625 -5.359375 C 2.804688 -5.515625 3.15625 -5.59375 3.5625 -5.59375 C 4.226562 -5.59375 4.765625 -5.328125 5.171875 -4.796875 C 5.585938 -4.273438 5.796875 -3.585938 5.796875 -2.734375 C 5.796875 -1.867188 5.585938 -1.171875 5.171875 -0.640625 C 4.765625 -0.117188 4.226562 0.140625 3.5625 0.140625 C 3.15625 0.140625 2.804688 0.0625 2.515625 -0.09375 C 2.234375 -0.25 2 -0.492188 1.8125 -0.828125 Z M 4.875 -2.734375 C 4.875 -3.390625 4.734375 -3.90625 4.453125 -4.28125 C 4.179688 -4.65625 3.8125 -4.84375 3.34375 -4.84375 C 2.863281 -4.84375 2.488281 -4.65625 2.21875 -4.28125 C 1.945312 -3.90625 1.8125 -3.390625 1.8125 -2.734375 C 1.8125 -2.066406 1.945312 -1.546875 2.21875 -1.171875 C 2.488281 -0.796875 2.863281 -0.609375 3.34375 -0.609375 C 3.8125 -0.609375 4.179688 -0.796875 4.453125 -1.171875 C 4.734375 -1.546875 4.875 -2.066406 4.875 -2.734375 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-25">
<path style="stroke:none;" d="M 5.484375 -5.46875 L 3.515625 -2.8125 L 5.59375 0 L 4.53125 0 L 2.9375 -2.15625 L 1.34375 0 L 0.28125 0 L 2.40625 -2.859375 L 0.46875 -5.46875 L 1.53125 -5.46875 L 2.984375 -3.515625 L 4.421875 -5.46875 Z "/>
</symbol>
</g>
<image id="image23" width="16" height="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAABmJLR0QA/wD/AP+gvaeTAAAB40lEQVQokT2Su24UQRREz+2+PTM7+2ANESSAbCMIiPgKQAYJRGjJCL6Xv3BowN717Ly6i2At8pLq6FRRQQU1dcQxSAahSpxsGQ5vlE80o4yERBHBzQtBRgGArJSKJ66vPwfrCGCQAQoYhuN1aMAhYFQ16zVd92Gaz6RNHtCEtMiFIgZhTspIlFgXE5Xz58+FhV8eb8wmSsYMi90YYnwKLRgxOYGYeLTl9u7TOJ2W0iiHuT+i2zghnR+6q80aLAaLNAvaln74lsuraVxISFHyUpjmtuj079379YLGAYL7A/ehfzFPrYpLUSUNPVKSXt/uvrctjeNAlVitOBw+DuMzaSGhEjQi1aU8Poznu/svzZKUcMNJnGzZ7y7mfJ5zrRJVgrKruOT98PL2/ke9xCqCY2AEpv7t1D+XTiQ0oRJKTtKTaT7bdxfLLVZhCQx3B9C8Vd7kAc1IqRSk1A1nv++u6hVeYRFveFjQ4jEXNQcVk8Khr8bpdN99rZc0ayxihtn/hoBm5h7JpXj0ve9+NkusgggRMxwWMUWC4UgmhVwY8oPvtsWd4BAIDnZ8J02kSiDRjxSRdbbfXR7XiWAQQjiSVJaayGrDze7y4bSjOEyvNysWiRqcFIhAjAmC4VXi9v5qN7/7B2ykEOmIxVwvAAAAAElFTkSuQmCC"/>
<image id="image26" width="16" height="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAABmJLR0QA/wD/AP+gvaeTAAAATUlEQVQokZXNSwrAAAgD0bH3v7PdFIqQ+HEZ3mDgL1OMcdI2cFoHjRbBoKMGoy4fNvoPlvoL9hqIkwaek+4CqW3gtA4aLYJeZ9Zg1MALX2IYF9KsZQAAAAAASUVORK5CYII="/>
<image id="image29" width="16" height="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAABmJLR0QA/wD/AP+gvaeTAAAATUlEQVQokZXNSwrAAAgD0bH3v7PdFIqQ+HEZ3mDgL1OMcdI2cFoHjRbBoKMGoy4fNvoPlvoL9hqIkwaek+4CqW3gtA4aLYJeZ9Zg1MALX2IYF9KsZQAAAAAASUVORK5CYII="/>
<linearGradient id="linear0" gradientUnits="userSpaceOnUse" x1="0" y1="-30" x2="0" y2="-10" gradientTransform="matrix(1,0,0,1,53.809602,179.402308)">
<stop offset="0" style="stop-color:rgb(0%,50.196078%,0%);stop-opacity:1;"/>
<stop offset="1" style="stop-color:rgb(0%,50.196078%,0%);stop-opacity:0;"/>
</linearGradient>
<radialGradient id="radial0" gradientUnits="userSpaceOnUse" cx="-2.5" cy="-22.5" fx="0.5" fy="-20.5" r="5" >
<stop offset="0" style="stop-color:rgb(100%,0%,0%);stop-opacity:1;"/>
<stop offset="0.5" style="stop-color:rgb(100%,25.098039%,25.098039%);stop-opacity:1;"/>
<stop offset="0.6" style="stop-color:rgb(50.196078%,100%,50.196078%);stop-opacity:1;"/>
<stop offset="0.75" style="stop-color:rgb(100%,67.45098%,67.45098%);stop-opacity:1;"/>
<stop offset="1" style="stop-color:rgb(100%,100%,100%);stop-opacity:1;"/>
</radialGradient>
<image id="image32" width="16" height="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAABmJLR0QA/wD/AP+gvaeTAAAATUlEQVQokZXNSwrAAAgD0bH3v7PdFIqQ+HEZ3mDgL1OMcdI2cFoHjRbBoKMGoy4fNvoPlvoL9hqIkwaek+4CqW3gtA4aLYJeZ9Zg1MALX2IYF9KsZQAAAAAASUVORK5CYII="/>
<image id="image35" width="4" height="4" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAIAAAAmkwkpAAAABmJLR0QA/wD/AP+gvaeTAAAADElEQVQImWNgIB0AAAA0AAEjQ4N1AAAAAElFTkSuQmCC"/>
</defs>
<g id="surface19">
<rect x="0" y="0" width="256" height="256" style="fill:rgb(70.980392%,81.568627%,81.568627%);fill-opacity:1;stroke:none;"/>
<use xlink:href="#image23" transform="matrix(1,0,0,1,-8,92.517317)"/>
<use xlink:href="#image26" transform="matrix(1,0,0,1,248.000002,160.88379)"/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 20.363281 183.917969 L 20.363281 186.589844 L 21.941406 186.589844 C 22.472656 186.589844 22.863281 186.480469 23.113281 186.261719 C 23.371094 186.042969 23.503906 185.707031 23.503906 185.246094 C 23.503906 184.800781 23.371094 184.464844 23.113281 184.246094 C 22.863281 184.027344 22.472656 183.917969 21.941406 183.917969 Z M 20.363281 180.917969 L 20.363281 183.121094 L 21.816406 183.121094 C 22.304688 183.121094 22.664062 183.035156 22.894531 182.855469 C 23.132812 182.667969 23.253906 182.394531 23.253906 182.027344 C 23.253906 181.652344 23.132812 181.378906 22.894531 181.199219 C 22.664062 181.011719 22.304688 180.917969 21.816406 180.917969 Z M 19.378906 180.105469 L 21.894531 180.105469 C 22.644531 180.105469 23.222656 180.261719 23.628906 180.574219 C 24.035156 180.886719 24.238281 181.335938 24.238281 181.917969 C 24.238281 182.367188 24.132812 182.722656 23.925781 182.980469 C 23.714844 183.242188 23.414062 183.402344 23.019531 183.464844 C 23.496094 183.570312 23.871094 183.789062 24.144531 184.121094 C 24.414062 184.457031 24.550781 184.867188 24.550781 185.355469 C 24.550781 186.011719 24.324219 186.519531 23.878906 186.871094 C 23.441406 187.226562 22.808594 187.402344 21.988281 187.402344 L 19.378906 187.402344 Z "/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 28.503906 182.777344 C 28.398438 182.714844 28.289062 182.675781 28.175781 182.652344 C 28.058594 182.621094 27.929688 182.605469 27.785156 182.605469 C 27.273438 182.605469 26.882812 182.773438 26.613281 183.105469 C 26.339844 183.429688 26.207031 183.902344 26.207031 184.527344 L 26.207031 187.402344 L 25.300781 187.402344 L 25.300781 181.933594 L 26.207031 181.933594 L 26.207031 182.777344 C 26.394531 182.445312 26.636719 182.199219 26.941406 182.042969 C 27.242188 181.886719 27.613281 181.808594 28.050781 181.808594 C 28.113281 181.808594 28.179688 181.816406 28.253906 181.824219 C 28.324219 181.824219 28.410156 181.835938 28.503906 181.855469 Z "/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 31.816406 184.652344 C 31.097656 184.652344 30.597656 184.738281 30.316406 184.902344 C 30.035156 185.070312 29.894531 185.351562 29.894531 185.746094 C 29.894531 186.070312 29.996094 186.324219 30.207031 186.511719 C 30.414062 186.699219 30.699219 186.792969 31.066406 186.792969 C 31.566406 186.792969 31.964844 186.617188 32.269531 186.261719 C 32.570312 185.910156 32.722656 185.441406 32.722656 184.855469 L 32.722656 184.652344 Z M 33.613281 184.277344 L 33.613281 187.402344 L 32.722656 187.402344 L 32.722656 186.574219 C 32.511719 186.910156 32.253906 187.152344 31.941406 187.308594 C 31.636719 187.464844 31.269531 187.542969 30.832031 187.542969 C 30.269531 187.542969 29.820312 187.386719 29.488281 187.074219 C 29.152344 186.761719 28.988281 186.339844 28.988281 185.808594 C 28.988281 185.195312 29.195312 184.730469 29.613281 184.417969 C 30.027344 184.105469 30.644531 183.949219 31.457031 183.949219 L 32.722656 183.949219 L 32.722656 183.855469 C 32.722656 183.449219 32.582031 183.132812 32.300781 182.902344 C 32.027344 182.675781 31.648438 182.558594 31.160156 182.558594 C 30.847656 182.558594 30.539062 182.601562 30.238281 182.683594 C 29.945312 182.757812 29.664062 182.867188 29.394531 183.011719 L 29.394531 182.183594 C 29.726562 182.058594 30.042969 181.964844 30.347656 181.902344 C 30.660156 181.839844 30.960938 181.808594 31.253906 181.808594 C 32.042969 181.808594 32.632812 182.011719 33.019531 182.417969 C 33.414062 182.824219 33.613281 183.445312 33.613281 184.277344 Z "/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 34.941406 181.933594 L 39.207031 181.933594 L 39.207031 182.746094 L 35.832031 186.683594 L 39.207031 186.683594 L 39.207031 187.402344 L 34.832031 187.402344 L 34.832031 186.574219 L 38.207031 182.652344 L 34.941406 182.652344 Z "/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 40.332031 181.933594 L 41.238281 181.933594 L 41.238281 187.402344 L 40.332031 187.402344 Z M 40.332031 179.808594 L 41.238281 179.808594 L 41.238281 180.949219 L 40.332031 180.949219 Z "/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 42.332031 179.808594 L 43.238281 179.808594 L 43.238281 187.402344 L 42.332031 187.402344 Z "/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 49.488281 179.808594 C 49.058594 180.558594 48.738281 181.304688 48.519531 182.042969 C 48.308594 182.773438 48.207031 183.511719 48.207031 184.261719 C 48.207031 185.011719 48.308594 185.757812 48.519531 186.496094 C 48.738281 187.238281 49.058594 187.972656 49.488281 188.714844 L 48.707031 188.714844 C 48.226562 187.953125 47.863281 187.207031 47.613281 186.464844 C 47.371094 185.726562 47.253906 184.992188 47.253906 184.261719 C 47.253906 183.535156 47.371094 182.804688 47.613281 182.074219 C 47.851562 181.335938 48.214844 180.582031 48.707031 179.808594 Z "/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 53.816406 182.089844 L 53.816406 182.949219 C 53.566406 182.816406 53.304688 182.714844 53.035156 182.652344 C 52.761719 182.589844 52.476562 182.558594 52.175781 182.558594 C 51.738281 182.558594 51.402344 182.628906 51.175781 182.761719 C 50.957031 182.898438 50.847656 183.101562 50.847656 183.371094 C 50.847656 183.582031 50.925781 183.746094 51.082031 183.871094 C 51.238281 183.988281 51.558594 184.097656 52.050781 184.199219 L 52.347656 184.277344 C 52.992188 184.414062 53.445312 184.605469 53.707031 184.855469 C 53.976562 185.105469 54.113281 185.449219 54.113281 185.886719 C 54.113281 186.398438 53.910156 186.804688 53.503906 187.105469 C 53.105469 187.398438 52.558594 187.542969 51.863281 187.542969 C 51.558594 187.542969 51.246094 187.511719 50.925781 187.449219 C 50.613281 187.398438 50.285156 187.316406 49.941406 187.199219 L 49.941406 186.277344 C 50.273438 186.445312 50.597656 186.574219 50.910156 186.667969 C 51.230469 186.753906 51.554688 186.792969 51.878906 186.792969 C 52.292969 186.792969 52.617188 186.722656 52.847656 186.574219 C 53.074219 186.429688 53.191406 186.226562 53.191406 185.964844 C 53.191406 185.714844 53.105469 185.527344 52.941406 185.402344 C 52.785156 185.269531 52.425781 185.144531 51.863281 185.027344 L 51.550781 184.949219 C 50.996094 184.835938 50.597656 184.660156 50.347656 184.417969 C 50.097656 184.167969 49.972656 183.835938 49.972656 183.417969 C 49.972656 182.898438 50.152344 182.503906 50.519531 182.230469 C 50.882812 181.949219 51.402344 181.808594 52.082031 181.808594 C 52.402344 181.808594 52.710938 181.835938 53.003906 181.886719 C 53.304688 181.929688 53.574219 181.996094 53.816406 182.089844 Z "/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 54.691406 181.933594 L 55.644531 181.933594 L 57.347656 186.527344 L 59.066406 181.933594 L 60.019531 181.933594 L 57.957031 187.402344 L 56.738281 187.402344 Z "/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 63.941406 184.605469 C 63.941406 183.949219 63.804688 183.445312 63.535156 183.089844 C 63.261719 182.738281 62.886719 182.558594 62.410156 182.558594 C 61.917969 182.558594 61.539062 182.738281 61.269531 183.089844 C 61.007812 183.445312 60.878906 183.949219 60.878906 184.605469 C 60.878906 185.253906 61.007812 185.757812 61.269531 186.121094 C 61.539062 186.476562 61.917969 186.652344 62.410156 186.652344 C 62.886719 186.652344 63.261719 186.476562 63.535156 186.121094 C 63.804688 185.757812 63.941406 185.253906 63.941406 184.605469 Z M 64.832031 186.730469 C 64.832031 187.65625 64.621094 188.34375 64.207031 188.792969 C 63.800781 189.25 63.167969 189.480469 62.316406 189.480469 C 62.003906 189.480469 61.707031 189.453125 61.425781 189.402344 C 61.144531 189.359375 60.871094 189.292969 60.613281 189.199219 L 60.613281 188.324219 C 60.871094 188.46875 61.128906 188.574219 61.378906 188.636719 C 61.636719 188.707031 61.902344 188.746094 62.175781 188.746094 C 62.757812 188.746094 63.195312 188.589844 63.488281 188.277344 C 63.789062 187.972656 63.941406 187.511719 63.941406 186.886719 L 63.941406 186.433594 C 63.753906 186.757812 63.511719 187.003906 63.222656 187.167969 C 62.929688 187.324219 62.582031 187.402344 62.175781 187.402344 C 61.507812 187.402344 60.964844 187.148438 60.550781 186.636719 C 60.144531 186.128906 59.941406 185.449219 59.941406 184.605469 C 59.941406 183.761719 60.144531 183.085938 60.550781 182.574219 C 60.964844 182.066406 61.507812 181.808594 62.175781 181.808594 C 62.582031 181.808594 62.929688 181.886719 63.222656 182.042969 C 63.511719 182.199219 63.753906 182.441406 63.941406 182.761719 L 63.941406 181.933594 L 64.832031 181.933594 Z "/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 70.832031 183.480469 C 70.527344 183.742188 70.308594 184.007812 70.175781 184.277344 C 70.039062 184.539062 69.972656 184.808594 69.972656 185.089844 C 69.972656 185.570312 70.144531 185.964844 70.488281 186.277344 C 70.832031 186.589844 71.261719 186.746094 71.785156 186.746094 C 72.097656 186.746094 72.382812 186.699219 72.644531 186.605469 C 72.914062 186.503906 73.167969 186.347656 73.410156 186.136719 Z M 71.519531 182.933594 L 73.988281 185.480469 C 74.183594 185.191406 74.335938 184.878906 74.441406 184.542969 C 74.554688 184.210938 74.617188 183.863281 74.628906 183.496094 L 75.550781 183.496094 C 75.507812 183.925781 75.398438 184.351562 75.222656 184.777344 C 75.054688 185.195312 74.820312 185.605469 74.519531 186.011719 L 75.878906 187.402344 L 74.660156 187.402344 L 73.957031 186.683594 C 73.613281 186.976562 73.253906 187.195312 72.878906 187.339844 C 72.511719 187.472656 72.117188 187.542969 71.691406 187.542969 C 70.910156 187.542969 70.269531 187.320312 69.769531 186.871094 C 69.269531 186.425781 69.019531 185.851562 69.019531 185.152344 C 69.019531 184.738281 69.128906 184.347656 69.347656 183.980469 C 69.566406 183.617188 69.894531 183.273438 70.332031 182.949219 C 70.175781 182.742188 70.054688 182.539062 69.972656 182.339844 C 69.886719 182.132812 69.847656 181.929688 69.847656 181.730469 C 69.847656 181.210938 70.027344 180.789062 70.394531 180.464844 C 70.757812 180.144531 71.238281 179.980469 71.832031 179.980469 C 72.101562 179.980469 72.371094 180.011719 72.644531 180.074219 C 72.914062 180.128906 73.183594 180.210938 73.457031 180.324219 L 73.457031 181.214844 C 73.175781 181.070312 72.902344 180.957031 72.644531 180.871094 C 72.394531 180.789062 72.160156 180.746094 71.941406 180.746094 C 71.597656 180.746094 71.316406 180.839844 71.097656 181.027344 C 70.886719 181.207031 70.785156 181.441406 70.785156 181.730469 C 70.785156 181.886719 70.832031 182.054688 70.925781 182.230469 C 71.019531 182.398438 71.214844 182.632812 71.519531 182.933594 Z "/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 80.222656 180.386719 L 80.222656 181.933594 L 82.082031 181.933594 L 82.082031 182.636719 L 80.222656 182.636719 L 80.222656 185.605469 C 80.222656 186.042969 80.285156 186.332031 80.410156 186.464844 C 80.535156 186.589844 80.785156 186.652344 81.160156 186.652344 L 82.082031 186.652344 L 82.082031 187.402344 L 81.160156 187.402344 C 80.460938 187.402344 79.976562 187.273438 79.707031 187.011719 C 79.445312 186.753906 79.316406 186.285156 79.316406 185.605469 L 79.316406 182.636719 L 78.660156 182.636719 L 78.660156 181.933594 L 79.316406 181.933594 L 79.316406 180.386719 Z "/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 82.332031 181.933594 L 83.238281 181.933594 L 83.238281 187.402344 L 82.332031 187.402344 Z M 82.332031 179.808594 L 83.238281 179.808594 L 83.238281 180.949219 L 82.332031 180.949219 Z "/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 87.113281 179.808594 L 87.113281 180.558594 L 86.253906 180.558594 C 85.929688 180.558594 85.707031 180.628906 85.582031 180.761719 C 85.457031 180.886719 85.394531 181.117188 85.394531 181.449219 L 85.394531 181.933594 L 86.863281 181.933594 L 86.863281 182.636719 L 85.394531 182.636719 L 85.394531 187.402344 L 84.488281 187.402344 L 84.488281 182.636719 L 83.628906 182.636719 L 83.628906 181.933594 L 84.488281 181.933594 L 84.488281 181.558594 C 84.488281 180.945312 84.628906 180.503906 84.910156 180.230469 C 85.191406 179.949219 85.636719 179.808594 86.253906 179.808594 Z "/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 87.191406 179.808594 L 87.972656 179.808594 C 88.460938 180.582031 88.824219 181.335938 89.066406 182.074219 C 89.316406 182.804688 89.441406 183.535156 89.441406 184.261719 C 89.441406 184.992188 89.316406 185.726562 89.066406 186.464844 C 88.824219 187.207031 88.460938 187.953125 87.972656 188.714844 L 87.191406 188.714844 C 87.628906 187.972656 87.949219 187.238281 88.160156 186.496094 C 88.378906 185.757812 88.488281 185.011719 88.488281 184.261719 C 88.488281 183.511719 88.378906 182.773438 88.160156 182.042969 C 87.949219 181.304688 87.628906 180.558594 87.191406 179.808594 Z "/>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-1" x="18.394737" y="187.402308"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-2" x="24.394737" y="187.402308"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-3" x="28.394737" y="187.402308"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-4" x="34.394737" y="187.402308"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-5" x="39.394737" y="187.402308"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-6" x="41.394737" y="187.402308"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-7" x="43.394737" y="187.402308"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-8" x="46.394737" y="187.402308"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-9" x="49.394737" y="187.402308"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-10" x="54.394737" y="187.402308"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-11" x="59.394737" y="187.402308"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-7" x="65.394737" y="187.402308"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-12" x="68.394737" y="187.402308"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-7" x="75.394737" y="187.402308"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-13" x="78.394737" y="187.402308"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-5" x="81.394737" y="187.402308"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-14" x="83.394737" y="187.402308"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-15" x="86.394737" y="187.402308"/>
</g>
<use xlink:href="#image29" transform="matrix(1,0,0,1,45.894737,151.402308)"/>
<path style=" stroke:none;fill-rule:nonzero;fill:url(#linear0);" d="M 63.808594 159.402344 L 63.132812 160.847656 L 61.199219 162.097656 L 58.265625 162.984375 L 54.730469 163.386719 L 51.074219 163.25 L 47.785156 162.59375 L 45.308594 161.507812 L 43.980469 160.136719 L 43.980469 158.667969 L 45.308594 157.296875 L 47.785156 156.210938 L 51.074219 155.554688 L 54.730469 155.417969 L 58.265625 155.820312 L 61.199219 156.707031 L 63.132812 157.957031 Z "/>
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(0%,0%,100%);fill-opacity:1;" d="M 57.808594 159.402344 L 57.539062 163.015625 L 56.765625 166.140625 L 55.59375 168.355469 L 54.179688 169.359375 L 52.714844 169.019531 L 51.398438 167.382812 L 50.410156 164.667969 L 49.878906 161.238281 L 49.878906 157.566406 L 50.410156 154.136719 L 51.398438 151.421875 L 52.714844 149.785156 L 54.179688 149.445312 L 55.59375 150.449219 L 56.765625 152.664062 L 57.539062 155.789062 Z "/>
<path style="fill-rule:nonzero;fill:url(#radial0);stroke-width:0.4;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,50.196078%,0%);stroke-opacity:1;stroke-miterlimit:4;" d="M 4.998991 -19.999964 L 4.502898 -17.831996 L 3.116179 -16.089808 L 1.112273 -15.124964 L -1.11429 -15.124964 L -3.118196 -16.089808 L -4.504915 -17.831996 L -5.001009 -19.999964 L -4.504915 -22.167933 L -3.118196 -23.910121 L -1.11429 -24.874964 L 1.112273 -24.874964 L 3.116179 -23.910121 L 4.502898 -22.167933 Z " transform="matrix(1,0,0,1,53.809602,179.402308)"/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 189.554688 114.734375 L 191.023438 114.734375 L 192.882812 119.703125 L 194.757812 114.734375 L 196.226562 114.734375 L 196.226562 122.03125 L 195.257812 122.03125 L 195.257812 115.625 L 193.382812 120.625 L 192.382812 120.625 L 190.507812 115.625 L 190.507812 122.03125 L 189.554688 122.03125 Z "/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 199.632812 117.1875 C 199.152344 117.1875 198.773438 117.375 198.492188 117.75 C 198.210938 118.125 198.070312 118.640625 198.070312 119.296875 C 198.070312 119.953125 198.203125 120.46875 198.476562 120.84375 C 198.757812 121.21875 199.140625 121.40625 199.632812 121.40625 C 200.109375 121.40625 200.492188 121.21875 200.773438 120.84375 C 201.054688 120.46875 201.195312 119.953125 201.195312 119.296875 C 201.195312 118.652344 201.054688 118.140625 200.773438 117.765625 C 200.492188 117.382812 200.109375 117.1875 199.632812 117.1875 Z M 199.632812 116.4375 C 200.414062 116.4375 201.027344 116.695312 201.476562 117.203125 C 201.921875 117.703125 202.148438 118.402344 202.148438 119.296875 C 202.148438 120.195312 201.921875 120.898438 201.476562 121.40625 C 201.027344 121.917969 200.414062 122.171875 199.632812 122.171875 C 198.851562 122.171875 198.234375 121.917969 197.789062 121.40625 C 197.339844 120.898438 197.117188 120.195312 197.117188 119.296875 C 197.117188 118.402344 197.339844 117.703125 197.789062 117.203125 C 198.234375 116.695312 198.851562 116.4375 199.632812 116.4375 Z "/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 208.054688 118.734375 L 208.054688 122.03125 L 207.164062 122.03125 L 207.164062 118.765625 C 207.164062 118.246094 207.058594 117.859375 206.851562 117.609375 C 206.652344 117.351562 206.351562 117.21875 205.945312 117.21875 C 205.464844 117.21875 205.085938 117.375 204.804688 117.6875 C 204.523438 117.992188 204.382812 118.40625 204.382812 118.9375 L 204.382812 122.03125 L 203.476562 122.03125 L 203.476562 116.5625 L 204.382812 116.5625 L 204.382812 117.40625 C 204.601562 117.085938 204.855469 116.84375 205.148438 116.6875 C 205.4375 116.523438 205.773438 116.4375 206.148438 116.4375 C 206.773438 116.4375 207.246094 116.632812 207.570312 117.015625 C 207.890625 117.402344 208.054688 117.976562 208.054688 118.734375 Z "/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 213.117188 119.234375 C 213.117188 118.578125 212.980469 118.074219 212.710938 117.71875 C 212.4375 117.367188 212.0625 117.1875 211.585938 117.1875 C 211.09375 117.1875 210.714844 117.367188 210.445312 117.71875 C 210.183594 118.074219 210.054688 118.578125 210.054688 119.234375 C 210.054688 119.882812 210.183594 120.386719 210.445312 120.75 C 210.714844 121.105469 211.09375 121.28125 211.585938 121.28125 C 212.0625 121.28125 212.4375 121.105469 212.710938 120.75 C 212.980469 120.386719 213.117188 119.882812 213.117188 119.234375 Z M 214.007812 121.359375 C 214.007812 122.285156 213.796875 122.972656 213.382812 123.421875 C 212.976562 123.878906 212.34375 124.109375 211.492188 124.109375 C 211.179688 124.109375 210.882812 124.082031 210.601562 124.03125 C 210.320312 123.988281 210.046875 123.921875 209.789062 123.828125 L 209.789062 122.953125 C 210.046875 123.097656 210.304688 123.203125 210.554688 123.265625 C 210.8125 123.335938 211.078125 123.375 211.351562 123.375 C 211.933594 123.375 212.371094 123.21875 212.664062 122.90625 C 212.964844 122.601562 213.117188 122.140625 213.117188 121.515625 L 213.117188 121.0625 C 212.929688 121.386719 212.6875 121.632812 212.398438 121.796875 C 212.105469 121.953125 211.757812 122.03125 211.351562 122.03125 C 210.683594 122.03125 210.140625 121.777344 209.726562 121.265625 C 209.320312 120.757812 209.117188 120.078125 209.117188 119.234375 C 209.117188 118.390625 209.320312 117.714844 209.726562 117.203125 C 210.140625 116.695312 210.683594 116.4375 211.351562 116.4375 C 211.757812 116.4375 212.105469 116.515625 212.398438 116.671875 C 212.6875 116.828125 212.929688 117.070312 213.117188 117.390625 L 213.117188 116.5625 L 214.007812 116.5625 Z "/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 217.632812 117.1875 C 217.152344 117.1875 216.773438 117.375 216.492188 117.75 C 216.210938 118.125 216.070312 118.640625 216.070312 119.296875 C 216.070312 119.953125 216.203125 120.46875 216.476562 120.84375 C 216.757812 121.21875 217.140625 121.40625 217.632812 121.40625 C 218.109375 121.40625 218.492188 121.21875 218.773438 120.84375 C 219.054688 120.46875 219.195312 119.953125 219.195312 119.296875 C 219.195312 118.652344 219.054688 118.140625 218.773438 117.765625 C 218.492188 117.382812 218.109375 117.1875 217.632812 117.1875 Z M 217.632812 116.4375 C 218.414062 116.4375 219.027344 116.695312 219.476562 117.203125 C 219.921875 117.703125 220.148438 118.402344 220.148438 119.296875 C 220.148438 120.195312 219.921875 120.898438 219.476562 121.40625 C 219.027344 121.917969 218.414062 122.171875 217.632812 122.171875 C 216.851562 122.171875 216.234375 121.917969 215.789062 121.40625 C 215.339844 120.898438 215.117188 120.195312 215.117188 119.296875 C 215.117188 118.402344 215.339844 117.703125 215.789062 117.203125 C 216.234375 116.695312 216.851562 116.4375 217.632812 116.4375 Z "/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 221.507812 114.4375 L 222.414062 114.4375 L 222.414062 122.03125 L 221.507812 122.03125 Z "/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 223.507812 116.5625 L 224.414062 116.5625 L 224.414062 122.03125 L 223.507812 122.03125 Z M 223.507812 114.4375 L 224.414062 114.4375 L 224.414062 115.578125 L 223.507812 115.578125 Z "/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 227.992188 119.28125 C 227.273438 119.28125 226.773438 119.367188 226.492188 119.53125 C 226.210938 119.699219 226.070312 119.980469 226.070312 120.375 C 226.070312 120.699219 226.171875 120.953125 226.382812 121.140625 C 226.589844 121.328125 226.875 121.421875 227.242188 121.421875 C 227.742188 121.421875 228.140625 121.246094 228.445312 120.890625 C 228.746094 120.539062 228.898438 120.070312 228.898438 119.484375 L 228.898438 119.28125 Z M 229.789062 118.90625 L 229.789062 122.03125 L 228.898438 122.03125 L 228.898438 121.203125 C 228.6875 121.539062 228.429688 121.78125 228.117188 121.9375 C 227.8125 122.09375 227.445312 122.171875 227.007812 122.171875 C 226.445312 122.171875 225.996094 122.015625 225.664062 121.703125 C 225.328125 121.390625 225.164062 120.96875 225.164062 120.4375 C 225.164062 119.824219 225.371094 119.359375 225.789062 119.046875 C 226.203125 118.734375 226.820312 118.578125 227.632812 118.578125 L 228.898438 118.578125 L 228.898438 118.484375 C 228.898438 118.078125 228.757812 117.761719 228.476562 117.53125 C 228.203125 117.304688 227.824219 117.1875 227.335938 117.1875 C 227.023438 117.1875 226.714844 117.230469 226.414062 117.3125 C 226.121094 117.386719 225.839844 117.496094 225.570312 117.640625 L 225.570312 116.8125 C 225.902344 116.6875 226.21875 116.59375 226.523438 116.53125 C 226.835938 116.46875 227.136719 116.4375 227.429688 116.4375 C 228.21875 116.4375 228.808594 116.640625 229.195312 117.046875 C 229.589844 117.453125 229.789062 118.074219 229.789062 118.90625 Z "/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 236.664062 114.4375 C 236.234375 115.1875 235.914062 115.933594 235.695312 116.671875 C 235.484375 117.402344 235.382812 118.140625 235.382812 118.890625 C 235.382812 119.640625 235.484375 120.386719 235.695312 121.125 C 235.914062 121.867188 236.234375 122.601562 236.664062 123.34375 L 235.882812 123.34375 C 235.402344 122.582031 235.039062 121.835938 234.789062 121.09375 C 234.546875 120.355469 234.429688 119.621094 234.429688 118.890625 C 234.429688 118.164062 234.546875 117.433594 234.789062 116.703125 C 235.027344 115.964844 235.390625 115.210938 235.882812 114.4375 Z "/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 238.398438 115.015625 L 238.398438 116.5625 L 240.257812 116.5625 L 240.257812 117.265625 L 238.398438 117.265625 L 238.398438 120.234375 C 238.398438 120.671875 238.460938 120.960938 238.585938 121.09375 C 238.710938 121.21875 238.960938 121.28125 239.335938 121.28125 L 240.257812 121.28125 L 240.257812 122.03125 L 239.335938 122.03125 C 238.636719 122.03125 238.152344 121.902344 237.882812 121.640625 C 237.621094 121.382812 237.492188 120.914062 237.492188 120.234375 L 237.492188 117.265625 L 236.835938 117.265625 L 236.835938 116.5625 L 237.492188 116.5625 L 237.492188 115.015625 Z "/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 240.507812 116.5625 L 241.414062 116.5625 L 241.414062 122.03125 L 240.507812 122.03125 Z M 240.507812 114.4375 L 241.414062 114.4375 L 241.414062 115.578125 L 240.507812 115.578125 Z "/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 245.289062 114.4375 L 245.289062 115.1875 L 244.429688 115.1875 C 244.105469 115.1875 243.882812 115.257812 243.757812 115.390625 C 243.632812 115.515625 243.570312 115.746094 243.570312 116.078125 L 243.570312 116.5625 L 245.039062 116.5625 L 245.039062 117.265625 L 243.570312 117.265625 L 243.570312 122.03125 L 242.664062 122.03125 L 242.664062 117.265625 L 241.804688 117.265625 L 241.804688 116.5625 L 242.664062 116.5625 L 242.664062 116.1875 C 242.664062 115.574219 242.804688 115.132812 243.085938 114.859375 C 243.367188 114.578125 243.8125 114.4375 244.429688 114.4375 Z "/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 248.289062 114.4375 L 248.289062 115.1875 L 247.429688 115.1875 C 247.105469 115.1875 246.882812 115.257812 246.757812 115.390625 C 246.632812 115.515625 246.570312 115.746094 246.570312 116.078125 L 246.570312 116.5625 L 248.039062 116.5625 L 248.039062 117.265625 L 246.570312 117.265625 L 246.570312 122.03125 L 245.664062 122.03125 L 245.664062 117.265625 L 244.804688 117.265625 L 244.804688 116.5625 L 245.664062 116.5625 L 245.664062 116.1875 C 245.664062 115.574219 245.804688 115.132812 246.085938 114.859375 C 246.367188 114.578125 246.8125 114.4375 247.429688 114.4375 Z "/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 248.367188 114.4375 L 249.148438 114.4375 C 249.636719 115.210938 250 115.964844 250.242188 116.703125 C 250.492188 117.433594 250.617188 118.164062 250.617188 118.890625 C 250.617188 119.621094 250.492188 120.355469 250.242188 121.09375 C 250 121.835938 249.636719 122.582031 249.148438 123.34375 L 248.367188 123.34375 C 248.804688 122.601562 249.125 121.867188 249.335938 121.125 C 249.554688 120.386719 249.664062 119.640625 249.664062 118.890625 C 249.664062 118.140625 249.554688 117.402344 249.335938 116.671875 C 249.125 115.933594 248.804688 115.1875 248.367188 114.4375 Z "/>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-16" x="188.571152" y="122.029988"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-17" x="196.571152" y="122.029988"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-18" x="202.571152" y="122.029988"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-11" x="208.571152" y="122.029988"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-17" x="214.571152" y="122.029988"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-6" x="220.571152" y="122.029988"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-5" x="222.571152" y="122.029988"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-3" x="224.571152" y="122.029988"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-7" x="230.571152" y="122.029988"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-8" x="233.571152" y="122.029988"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-13" x="236.571152" y="122.029988"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-5" x="239.571152" y="122.029988"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-14" x="241.571152" y="122.029988"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-14" x="244.571152" y="122.029988"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-15" x="247.571152" y="122.029988"/>
</g>
<use xlink:href="#image32" transform="matrix(1,0,0,1,211.571152,86.029988)"/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 23.855469 201.613281 L 23.855469 202.457031 C 23.605469 202.324219 23.347656 202.21875 23.089844 202.144531 C 22.839844 202.074219 22.582031 202.035156 22.324219 202.035156 C 21.738281 202.035156 21.285156 202.222656 20.964844 202.597656 C 20.640625 202.964844 20.480469 203.480469 20.480469 204.144531 C 20.480469 204.8125 20.640625 205.332031 20.964844 205.707031 C 21.285156 206.074219 21.738281 206.253906 22.324219 206.253906 C 22.582031 206.253906 22.839844 206.222656 23.089844 206.160156 C 23.347656 206.089844 23.605469 205.980469 23.855469 205.832031 L 23.855469 206.675781 C 23.605469 206.792969 23.34375 206.875 23.074219 206.925781 C 22.8125 206.988281 22.53125 207.019531 22.230469 207.019531 C 21.394531 207.019531 20.734375 206.765625 20.246094 206.253906 C 19.765625 205.734375 19.527344 205.03125 19.527344 204.144531 C 19.527344 203.261719 19.769531 202.5625 20.261719 202.050781 C 20.75 201.542969 21.421875 201.285156 22.277344 201.285156 C 22.558594 201.285156 22.828125 201.3125 23.089844 201.363281 C 23.347656 201.417969 23.605469 201.5 23.855469 201.613281 Z "/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 29.464844 203.582031 L 29.464844 206.878906 L 28.574219 206.878906 L 28.574219 203.613281 C 28.574219 203.09375 28.46875 202.707031 28.261719 202.457031 C 28.0625 202.199219 27.761719 202.066406 27.355469 202.066406 C 26.875 202.066406 26.496094 202.222656 26.214844 202.535156 C 25.933594 202.839844 25.792969 203.253906 25.792969 203.785156 L 25.792969 206.878906 L 24.886719 206.878906 L 24.886719 199.285156 L 25.792969 199.285156 L 25.792969 202.253906 C 26.011719 201.933594 26.265625 201.691406 26.558594 201.535156 C 26.847656 201.371094 27.183594 201.285156 27.558594 201.285156 C 28.183594 201.285156 28.65625 201.480469 28.980469 201.863281 C 29.300781 202.25 29.464844 202.824219 29.464844 203.582031 Z "/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 30.917969 201.410156 L 31.824219 201.410156 L 31.824219 206.878906 L 30.917969 206.878906 Z M 30.917969 199.285156 L 31.824219 199.285156 L 31.824219 200.425781 L 30.917969 200.425781 Z "/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 32.917969 199.285156 L 33.824219 199.285156 L 33.824219 206.878906 L 32.917969 206.878906 Z "/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 39.605469 203.925781 L 39.605469 204.363281 L 35.464844 204.363281 C 35.503906 204.980469 35.691406 205.449219 36.027344 205.769531 C 36.359375 206.09375 36.824219 206.253906 37.417969 206.253906 C 37.761719 206.253906 38.09375 206.214844 38.417969 206.128906 C 38.75 206.046875 39.074219 205.921875 39.386719 205.753906 L 39.386719 206.597656 C 39.0625 206.734375 38.730469 206.839844 38.386719 206.910156 C 38.050781 206.980469 37.714844 207.019531 37.371094 207.019531 C 36.496094 207.019531 35.800781 206.769531 35.292969 206.269531 C 34.78125 205.761719 34.527344 205.066406 34.527344 204.191406 C 34.527344 203.296875 34.765625 202.589844 35.246094 202.066406 C 35.734375 201.546875 36.390625 201.285156 37.214844 201.285156 C 37.953125 201.285156 38.535156 201.519531 38.964844 201.988281 C 39.390625 202.457031 39.605469 203.105469 39.605469 203.925781 Z M 38.699219 203.660156 C 38.699219 203.171875 38.5625 202.78125 38.292969 202.488281 C 38.019531 202.1875 37.667969 202.035156 37.230469 202.035156 C 36.71875 202.035156 36.3125 202.183594 36.011719 202.472656 C 35.71875 202.753906 35.546875 203.152344 35.496094 203.660156 Z "/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 15.074219 211.285156 C 14.644531 212.035156 14.324219 212.78125 14.105469 213.519531 C 13.894531 214.25 13.792969 214.988281 13.792969 215.738281 C 13.792969 216.488281 13.894531 217.234375 14.105469 217.972656 C 14.324219 218.714844 14.644531 219.449219 15.074219 220.191406 L 14.292969 220.191406 C 13.8125 219.429688 13.449219 218.683594 13.199219 217.941406 C 12.957031 217.203125 12.839844 216.46875 12.839844 215.738281 C 12.839844 215.011719 12.957031 214.28125 13.199219 213.550781 C 13.4375 212.8125 13.800781 212.058594 14.292969 211.285156 Z "/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 19.527344 214.238281 L 19.527344 211.285156 L 20.417969 211.285156 L 20.417969 218.878906 L 19.527344 218.878906 L 19.527344 218.050781 C 19.339844 218.386719 19.097656 218.628906 18.808594 218.785156 C 18.515625 218.941406 18.167969 219.019531 17.761719 219.019531 C 17.105469 219.019531 16.566406 218.761719 16.152344 218.238281 C 15.734375 217.707031 15.527344 217.011719 15.527344 216.144531 C 15.527344 215.292969 15.734375 214.605469 16.152344 214.082031 C 16.566406 213.550781 17.105469 213.285156 17.761719 213.285156 C 18.167969 213.285156 18.515625 213.363281 18.808594 213.519531 C 19.097656 213.675781 19.339844 213.917969 19.527344 214.238281 Z M 16.464844 216.144531 C 16.464844 216.8125 16.597656 217.332031 16.871094 217.707031 C 17.140625 218.082031 17.515625 218.269531 17.996094 218.269531 C 18.464844 218.269531 18.832031 218.082031 19.105469 217.707031 C 19.386719 217.332031 19.527344 216.8125 19.527344 216.144531 C 19.527344 215.488281 19.386719 214.972656 19.105469 214.597656 C 18.832031 214.222656 18.464844 214.035156 17.996094 214.035156 C 17.515625 214.035156 17.140625 214.222656 16.871094 214.597656 C 16.597656 214.972656 16.464844 215.488281 16.464844 216.144531 Z "/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 26.605469 215.925781 L 26.605469 216.363281 L 22.464844 216.363281 C 22.503906 216.980469 22.691406 217.449219 23.027344 217.769531 C 23.359375 218.09375 23.824219 218.253906 24.417969 218.253906 C 24.761719 218.253906 25.09375 218.214844 25.417969 218.128906 C 25.75 218.046875 26.074219 217.921875 26.386719 217.753906 L 26.386719 218.597656 C 26.0625 218.734375 25.730469 218.839844 25.386719 218.910156 C 25.050781 218.980469 24.714844 219.019531 24.371094 219.019531 C 23.496094 219.019531 22.800781 218.769531 22.292969 218.269531 C 21.78125 217.761719 21.527344 217.066406 21.527344 216.191406 C 21.527344 215.296875 21.765625 214.589844 22.246094 214.066406 C 22.734375 213.546875 23.390625 213.285156 24.214844 213.285156 C 24.953125 213.285156 25.535156 213.519531 25.964844 213.988281 C 26.390625 214.457031 26.605469 215.105469 26.605469 215.925781 Z M 25.699219 215.660156 C 25.699219 215.171875 25.5625 214.78125 25.292969 214.488281 C 25.019531 214.1875 24.667969 214.035156 24.230469 214.035156 C 23.71875 214.035156 23.3125 214.183594 23.011719 214.472656 C 22.71875 214.753906 22.546875 215.152344 22.496094 215.660156 Z "/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 30.699219 211.285156 L 30.699219 212.035156 L 29.839844 212.035156 C 29.515625 212.035156 29.292969 212.105469 29.167969 212.238281 C 29.042969 212.363281 28.980469 212.59375 28.980469 212.925781 L 28.980469 213.410156 L 30.449219 213.410156 L 30.449219 214.113281 L 28.980469 214.113281 L 28.980469 218.878906 L 28.074219 218.878906 L 28.074219 214.113281 L 27.214844 214.113281 L 27.214844 213.410156 L 28.074219 213.410156 L 28.074219 213.035156 C 28.074219 212.421875 28.214844 211.980469 28.496094 211.707031 C 28.777344 211.425781 29.222656 211.285156 29.839844 211.285156 Z "/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 33.402344 216.128906 C 32.683594 216.128906 32.183594 216.214844 31.902344 216.378906 C 31.621094 216.546875 31.480469 216.828125 31.480469 217.222656 C 31.480469 217.546875 31.582031 217.800781 31.792969 217.988281 C 32 218.175781 32.285156 218.269531 32.652344 218.269531 C 33.152344 218.269531 33.550781 218.09375 33.855469 217.738281 C 34.15625 217.386719 34.308594 216.917969 34.308594 216.332031 L 34.308594 216.128906 Z M 35.199219 215.753906 L 35.199219 218.878906 L 34.308594 218.878906 L 34.308594 218.050781 C 34.097656 218.386719 33.839844 218.628906 33.527344 218.785156 C 33.222656 218.941406 32.855469 219.019531 32.417969 219.019531 C 31.855469 219.019531 31.40625 218.863281 31.074219 218.550781 C 30.738281 218.238281 30.574219 217.816406 30.574219 217.285156 C 30.574219 216.671875 30.78125 216.207031 31.199219 215.894531 C 31.613281 215.582031 32.230469 215.425781 33.042969 215.425781 L 34.308594 215.425781 L 34.308594 215.332031 C 34.308594 214.925781 34.167969 214.609375 33.886719 214.378906 C 33.613281 214.152344 33.234375 214.035156 32.746094 214.035156 C 32.433594 214.035156 32.125 214.078125 31.824219 214.160156 C 31.53125 214.234375 31.25 214.34375 30.980469 214.488281 L 30.980469 213.660156 C 31.3125 213.535156 31.628906 213.441406 31.933594 213.378906 C 32.246094 213.316406 32.546875 213.285156 32.839844 213.285156 C 33.628906 213.285156 34.21875 213.488281 34.605469 213.894531 C 35 214.300781 35.199219 214.921875 35.199219 215.753906 Z "/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 36.824219 216.722656 L 36.824219 213.410156 L 37.730469 213.410156 L 37.730469 216.691406 C 37.730469 217.203125 37.828125 217.589844 38.027344 217.847656 C 38.234375 218.109375 38.535156 218.238281 38.933594 218.238281 C 39.421875 218.238281 39.808594 218.089844 40.089844 217.785156 C 40.371094 217.472656 40.511719 217.046875 40.511719 216.503906 L 40.511719 213.410156 L 41.417969 213.410156 L 41.417969 218.878906 L 40.511719 218.878906 L 40.511719 218.035156 C 40.292969 218.371094 40.035156 218.621094 39.746094 218.785156 C 39.464844 218.941406 39.128906 219.019531 38.746094 219.019531 C 38.121094 219.019531 37.640625 218.828125 37.308594 218.441406 C 36.984375 218.046875 36.824219 217.472656 36.824219 216.722656 Z M 39.089844 213.285156 Z "/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 42.917969 211.285156 L 43.824219 211.285156 L 43.824219 218.878906 L 42.917969 218.878906 Z "/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 45.808594 211.863281 L 45.808594 213.410156 L 47.667969 213.410156 L 47.667969 214.113281 L 45.808594 214.113281 L 45.808594 217.082031 C 45.808594 217.519531 45.871094 217.808594 45.996094 217.941406 C 46.121094 218.066406 46.371094 218.128906 46.746094 218.128906 L 47.667969 218.128906 L 47.667969 218.878906 L 46.746094 218.878906 C 46.046875 218.878906 45.5625 218.75 45.292969 218.488281 C 45.03125 218.230469 44.902344 217.761719 44.902344 217.082031 L 44.902344 214.113281 L 44.246094 214.113281 L 44.246094 213.410156 L 44.902344 213.410156 L 44.902344 211.863281 Z "/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 24.042969 226.035156 C 23.5625 226.035156 23.183594 226.222656 22.902344 226.597656 C 22.621094 226.972656 22.480469 227.488281 22.480469 228.144531 C 22.480469 228.800781 22.613281 229.316406 22.886719 229.691406 C 23.167969 230.066406 23.550781 230.253906 24.042969 230.253906 C 24.519531 230.253906 24.902344 230.066406 25.183594 229.691406 C 25.464844 229.316406 25.605469 228.800781 25.605469 228.144531 C 25.605469 227.5 25.464844 226.988281 25.183594 226.613281 C 24.902344 226.230469 24.519531 226.035156 24.042969 226.035156 Z M 24.042969 225.285156 C 24.824219 225.285156 25.4375 225.542969 25.886719 226.050781 C 26.332031 226.550781 26.558594 227.25 26.558594 228.144531 C 26.558594 229.042969 26.332031 229.746094 25.886719 230.253906 C 25.4375 230.765625 24.824219 231.019531 24.042969 231.019531 C 23.261719 231.019531 22.644531 230.765625 22.199219 230.253906 C 21.75 229.746094 21.527344 229.042969 21.527344 228.144531 C 21.527344 227.25 21.75 226.550781 22.199219 226.050781 C 22.644531 225.542969 23.261719 225.285156 24.042969 225.285156 Z "/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 31.527344 228.082031 C 31.527344 227.425781 31.390625 226.921875 31.121094 226.566406 C 30.847656 226.214844 30.472656 226.035156 29.996094 226.035156 C 29.503906 226.035156 29.125 226.214844 28.855469 226.566406 C 28.59375 226.921875 28.464844 227.425781 28.464844 228.082031 C 28.464844 228.730469 28.59375 229.234375 28.855469 229.597656 C 29.125 229.953125 29.503906 230.128906 29.996094 230.128906 C 30.472656 230.128906 30.847656 229.953125 31.121094 229.597656 C 31.390625 229.234375 31.527344 228.730469 31.527344 228.082031 Z M 32.417969 230.207031 C 32.417969 231.132812 32.207031 231.820312 31.792969 232.269531 C 31.386719 232.726562 30.753906 232.957031 29.902344 232.957031 C 29.589844 232.957031 29.292969 232.929688 29.011719 232.878906 C 28.730469 232.835938 28.457031 232.769531 28.199219 232.675781 L 28.199219 231.800781 C 28.457031 231.945312 28.714844 232.050781 28.964844 232.113281 C 29.222656 232.183594 29.488281 232.222656 29.761719 232.222656 C 30.34375 232.222656 30.78125 232.066406 31.074219 231.753906 C 31.375 231.449219 31.527344 230.988281 31.527344 230.363281 L 31.527344 229.910156 C 31.339844 230.234375 31.097656 230.480469 30.808594 230.644531 C 30.515625 230.800781 30.167969 230.878906 29.761719 230.878906 C 29.09375 230.878906 28.550781 230.625 28.136719 230.113281 C 27.730469 229.605469 27.527344 228.925781 27.527344 228.082031 C 27.527344 227.238281 27.730469 226.5625 28.136719 226.050781 C 28.550781 225.542969 29.09375 225.285156 29.761719 225.285156 C 30.167969 225.285156 30.515625 225.363281 30.808594 225.519531 C 31.097656 225.675781 31.339844 225.917969 31.527344 226.238281 L 31.527344 225.410156 L 32.417969 225.410156 Z "/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 37.855469 225.613281 L 37.855469 226.457031 C 37.605469 226.324219 37.347656 226.21875 37.089844 226.144531 C 36.839844 226.074219 36.582031 226.035156 36.324219 226.035156 C 35.738281 226.035156 35.285156 226.222656 34.964844 226.597656 C 34.640625 226.964844 34.480469 227.480469 34.480469 228.144531 C 34.480469 228.8125 34.640625 229.332031 34.964844 229.707031 C 35.285156 230.074219 35.738281 230.253906 36.324219 230.253906 C 36.582031 230.253906 36.839844 230.222656 37.089844 230.160156 C 37.347656 230.089844 37.605469 229.980469 37.855469 229.832031 L 37.855469 230.675781 C 37.605469 230.792969 37.34375 230.875 37.074219 230.925781 C 36.8125 230.988281 36.53125 231.019531 36.230469 231.019531 C 35.394531 231.019531 34.734375 230.765625 34.246094 230.253906 C 33.765625 229.734375 33.527344 229.03125 33.527344 228.144531 C 33.527344 227.261719 33.769531 226.5625 34.261719 226.050781 C 34.75 225.542969 35.421875 225.285156 36.277344 225.285156 C 36.558594 225.285156 36.828125 225.3125 37.089844 225.363281 C 37.347656 225.417969 37.605469 225.5 37.855469 225.613281 Z "/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 19.292969 242.050781 L 19.292969 244.957031 L 18.386719 244.957031 L 18.386719 237.410156 L 19.292969 237.410156 L 19.292969 238.238281 C 19.480469 237.917969 19.714844 237.675781 19.996094 237.519531 C 20.285156 237.363281 20.636719 237.285156 21.042969 237.285156 C 21.707031 237.285156 22.246094 237.550781 22.652344 238.082031 C 23.066406 238.605469 23.277344 239.292969 23.277344 240.144531 C 23.277344 241.011719 23.066406 241.707031 22.652344 242.238281 C 22.246094 242.761719 21.707031 243.019531 21.042969 243.019531 C 20.636719 243.019531 20.285156 242.941406 19.996094 242.785156 C 19.714844 242.628906 19.480469 242.386719 19.292969 242.050781 Z M 22.355469 240.144531 C 22.355469 239.488281 22.214844 238.972656 21.933594 238.597656 C 21.660156 238.222656 21.292969 238.035156 20.824219 238.035156 C 20.34375 238.035156 19.96875 238.222656 19.699219 238.597656 C 19.425781 238.972656 19.292969 239.488281 19.292969 240.144531 C 19.292969 240.8125 19.425781 241.332031 19.699219 241.707031 C 19.96875 242.082031 20.34375 242.269531 20.824219 242.269531 C 21.292969 242.269531 21.660156 242.082031 21.933594 241.707031 C 22.214844 241.332031 22.355469 240.8125 22.355469 240.144531 Z "/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 24.417969 237.410156 L 25.324219 237.410156 L 25.324219 242.878906 L 24.417969 242.878906 Z M 24.417969 235.285156 L 25.324219 235.285156 L 25.324219 236.425781 L 24.417969 236.425781 Z "/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 30.964844 237.410156 L 28.996094 240.066406 L 31.074219 242.878906 L 30.011719 242.878906 L 28.417969 240.722656 L 26.824219 242.878906 L 25.761719 242.878906 L 27.886719 240.019531 L 25.949219 237.410156 L 27.011719 237.410156 L 28.464844 239.363281 L 29.902344 237.410156 Z "/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 36.105469 239.925781 L 36.105469 240.363281 L 31.964844 240.363281 C 32.003906 240.980469 32.191406 241.449219 32.527344 241.769531 C 32.859375 242.09375 33.324219 242.253906 33.917969 242.253906 C 34.261719 242.253906 34.59375 242.214844 34.917969 242.128906 C 35.25 242.046875 35.574219 241.921875 35.886719 241.753906 L 35.886719 242.597656 C 35.5625 242.734375 35.230469 242.839844 34.886719 242.910156 C 34.550781 242.980469 34.214844 243.019531 33.871094 243.019531 C 32.996094 243.019531 32.300781 242.769531 31.792969 242.269531 C 31.28125 241.761719 31.027344 241.066406 31.027344 240.191406 C 31.027344 239.296875 31.265625 238.589844 31.746094 238.066406 C 32.234375 237.546875 32.890625 237.285156 33.714844 237.285156 C 34.453125 237.285156 35.035156 237.519531 35.464844 237.988281 C 35.890625 238.457031 36.105469 239.105469 36.105469 239.925781 Z M 35.199219 239.660156 C 35.199219 239.171875 35.0625 238.78125 34.792969 238.488281 C 34.519531 238.1875 34.167969 238.035156 33.730469 238.035156 C 33.21875 238.035156 32.8125 238.183594 32.511719 238.472656 C 32.21875 238.753906 32.046875 239.152344 31.996094 239.660156 Z "/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 37.417969 235.285156 L 38.324219 235.285156 L 38.324219 242.878906 L 37.417969 242.878906 Z "/>
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:10;" d="M 39.277344 235.285156 L 40.058594 235.285156 C 40.546875 236.058594 40.910156 236.8125 41.152344 237.550781 C 41.402344 238.28125 41.527344 239.011719 41.527344 239.738281 C 41.527344 240.46875 41.402344 241.203125 41.152344 241.941406 C 40.910156 242.683594 40.546875 243.429688 40.058594 244.191406 L 39.277344 244.191406 C 39.714844 243.449219 40.035156 242.714844 40.246094 241.972656 C 40.464844 241.234375 40.574219 240.488281 40.574219 239.738281 C 40.574219 238.988281 40.464844 238.25 40.246094 237.519531 C 40.035156 236.78125 39.714844 236.035156 39.277344 235.285156 Z "/>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-19" x="18.978651" y="206.877778"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-20" x="23.978651" y="206.877778"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-5" x="29.978651" y="206.877778"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-6" x="31.978651" y="206.877778"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-21" x="33.978651" y="206.877778"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-8" x="11.978651" y="218.877778"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-22" x="14.978651" y="218.877778"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-21" x="20.978651" y="218.877778"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-14" x="26.978651" y="218.877778"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-3" x="29.978651" y="218.877778"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-23" x="35.978651" y="218.877778"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-6" x="41.978651" y="218.877778"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-13" x="43.978651" y="218.877778"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-17" x="20.978651" y="230.877778"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-11" x="26.978651" y="230.877778"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-19" x="32.978651" y="230.877778"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-24" x="17.478651" y="242.877778"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-5" x="23.478651" y="242.877778"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-25" x="25.478651" y="242.877778"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-21" x="30.478651" y="242.877778"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-6" x="36.478651" y="242.877778"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-15" x="38.478651" y="242.877778"/>
</g>
<use xlink:href="#image35" transform="matrix(1,0,0,1,27.478651,191.877778)"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 75 KiB

View file

@ -0,0 +1,35 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="256pt" height="256pt" viewBox="0 0 256 256" version="1.1">
<defs>
<image id="image48" width="16" height="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAABmJLR0QA/wD/AP+gvaeTAAAATUlEQVQokZXNSwrAAAgD0bH3v7PdFIqQ+HEZ3mDgL1OMcdI2cFoHjRbBoKMGoy4fNvoPlvoL9hqIkwaek+4CqW3gtA4aLYJeZ9Zg1MALX2IYF9KsZQAAAAAASUVORK5CYII="/>
<image id="image51" width="16" height="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAABmJLR0QA/wD/AP+gvaeTAAAATUlEQVQokZXNSwrAAAgD0bH3v7PdFIqQ+HEZ3mDgL1OMcdI2cFoHjRbBoKMGoy4fNvoPlvoL9hqIkwaek+4CqW3gtA4aLYJeZ9Zg1MALX2IYF9KsZQAAAAAASUVORK5CYII="/>
<image id="image54" width="16" height="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAABmJLR0QA/wD/AP+gvaeTAAAATUlEQVQokZXNSwrAAAgD0bH3v7PdFIqQ+HEZ3mDgL1OMcdI2cFoHjRbBoKMGoy4fNvoPlvoL9hqIkwaek+4CqW3gtA4aLYJeZ9Zg1MALX2IYF9KsZQAAAAAASUVORK5CYII="/>
<image id="image57" width="16" height="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAABmJLR0QA/wD/AP+gvaeTAAAATUlEQVQokZXNSwrAAAgD0bH3v7PdFIqQ+HEZ3mDgL1OMcdI2cFoHjRbBoKMGoy4fNvoPlvoL9hqIkwaek+4CqW3gtA4aLYJeZ9Zg1MALX2IYF9KsZQAAAAAASUVORK5CYII="/>
<image id="image60" width="16" height="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAABmJLR0QA/wD/AP+gvaeTAAAATUlEQVQokZXNSwrAAAgD0bH3v7PdFIqQ+HEZ3mDgL1OMcdI2cFoHjRbBoKMGoy4fNvoPlvoL9hqIkwaek+4CqW3gtA4aLYJeZ9Zg1MALX2IYF9KsZQAAAAAASUVORK5CYII="/>
<image id="image63" width="16" height="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAABmJLR0QA/wD/AP+gvaeTAAAATUlEQVQokZXNSwrAAAgD0bH3v7PdFIqQ+HEZ3mDgL1OMcdI2cFoHjRbBoKMGoy4fNvoPlvoL9hqIkwaek+4CqW3gtA4aLYJeZ9Zg1MALX2IYF9KsZQAAAAAASUVORK5CYII="/>
<image id="image66" width="16" height="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAABmJLR0QA/wD/AP+gvaeTAAAATUlEQVQokZXNSwrAAAgD0bH3v7PdFIqQ+HEZ3mDgL1OMcdI2cFoHjRbBoKMGoy4fNvoPlvoL9hqIkwaek+4CqW3gtA4aLYJeZ9Zg1MALX2IYF9KsZQAAAAAASUVORK5CYII="/>
<image id="image69" width="16" height="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAABmJLR0QA/wD/AP+gvaeTAAAATUlEQVQokZXNSwrAAAgD0bH3v7PdFIqQ+HEZ3mDgL1OMcdI2cFoHjRbBoKMGoy4fNvoPlvoL9hqIkwaek+4CqW3gtA4aLYJeZ9Zg1MALX2IYF9KsZQAAAAAASUVORK5CYII="/>
<image id="image72" width="16" height="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAABmJLR0QA/wD/AP+gvaeTAAAATUlEQVQokZXNSwrAAAgD0bH3v7PdFIqQ+HEZ3mDgL1OMcdI2cFoHjRbBoKMGoy4fNvoPlvoL9hqIkwaek+4CqW3gtA4aLYJeZ9Zg1MALX2IYF9KsZQAAAAAASUVORK5CYII="/>
</defs>
<g id="surface44">
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(90.196078%,90.196078%,98.039216%);fill-opacity:0.5;" d="M 115.65625 56.117188 L 105.6875 50.042969 L 102.367188 41.585938 L 108.777344 39.203125 L 132.507812 28.515625 L 132.222656 27.054688 L 141.789062 23.054688 L 145.058594 32.933594 L 157.566406 68.800781 L 159.464844 73.835938 L 139.804688 81.023438 L 135.675781 71.570312 L 135.882812 66.1875 L 136.332031 59.265625 L 134.109375 51.578125 L 131.019531 45.429688 L 127.984375 38.507812 L 122.578125 41.546875 L 118.730469 49.234375 Z "/>
<use xlink:href="#image48" transform="matrix(1,0,0,1,127.94131,42.841104)"/>
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(90.196078%,90.196078%,98.039216%);fill-opacity:0.5;" d="M 132.222656 27.054688 L 132.507812 28.515625 L 108.777344 39.203125 L 102.367188 41.585938 L 105.6875 50.042969 L 115.65625 56.117188 L 112.578125 61.574219 L 105.039062 74.605469 L 88.605469 74.414062 L 84.253906 74.566406 L 79.761719 74.644531 L 68.664062 79.027344 L 67.753906 79.296875 L 62.101562 68.839844 L 56.199219 60.996094 L 54.90625 61.496094 L 53.773438 58.652344 L 64.152344 54.578125 L 101.800781 39.277344 Z "/>
<use xlink:href="#image51" transform="matrix(1,0,0,1,79.836035,51.528053)"/>
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(90.196078%,90.196078%,98.039216%);fill-opacity:0.5;" d="M 115.65625 56.117188 L 118.730469 49.234375 L 122.578125 41.546875 L 127.984375 38.507812 L 131.019531 45.429688 L 134.109375 51.578125 L 136.332031 59.265625 L 135.882812 66.1875 L 129.527344 66.6875 L 124.503906 68.453125 L 121.441406 69.992188 L 109.082031 80.371094 L 104.925781 81.371094 L 102.195312 83.253906 L 101.664062 85.136719 L 100.078125 88.445312 L 97.773438 91.671875 L 94.757812 93.558594 L 91.441406 100.015625 L 71.058594 108.050781 L 61.679688 81.753906 L 67.753906 79.296875 L 68.664062 79.027344 L 79.761719 74.644531 L 84.253906 74.566406 L 88.605469 74.414062 L 105.039062 74.605469 L 112.578125 61.574219 Z "/>
<use xlink:href="#image54" transform="matrix(1,0,0,1,90.102079,69.169472)"/>
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(90.196078%,90.196078%,98.039216%);fill-opacity:0.5;" d="M 53.773438 58.652344 L 54.90625 61.496094 L 61.679688 81.753906 L 71.058594 108.050781 L 76.140625 119.121094 L 72.308594 122.695312 L 69.605469 130.535156 L 61.425781 133.496094 L 54.027344 114.699219 L 44.699219 118.351562 L 33.3125 123.15625 L 14.414062 130.113281 L 11.242188 120.925781 L 9.871094 116.082031 L 10.171875 111.96875 L 10.238281 106.011719 L 14.351562 105.242188 L 28.25 90.710938 L 23.488281 86.253906 L 21.667969 87.945312 L 16.679688 93.402344 L 11.117188 99.59375 L 7.113281 96.59375 L 0 79.527344 L 44.109375 62.304688 Z "/>
<use xlink:href="#image57" transform="matrix(1,0,0,1,31.167216,88.825)"/>
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(90.196078%,90.196078%,98.039216%);fill-opacity:0.5;" d="M 54.90625 61.496094 L 56.199219 60.996094 L 62.101562 68.839844 L 67.753906 79.296875 L 61.679688 81.753906 Z "/>
<use xlink:href="#image60" transform="matrix(1,0,0,1,53.212824,64.674519)"/>
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(90.196078%,90.196078%,98.039216%);fill-opacity:0.5;" d="M 135.882812 66.1875 L 135.675781 71.570312 L 139.804688 81.023438 L 127.082031 86.292969 L 110.335938 92.902344 L 109.199219 89.058594 L 101.835938 91.441406 L 103.257812 95.363281 L 91.441406 100.015625 L 94.757812 93.558594 L 97.773438 91.671875 L 100.078125 88.445312 L 101.664062 85.136719 L 102.195312 83.253906 L 104.925781 81.371094 L 109.082031 80.371094 L 121.441406 69.992188 L 124.503906 68.453125 L 129.527344 66.6875 Z "/>
<use xlink:href="#image63" transform="matrix(1,0,0,1,111.187238,73.378811)"/>
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(90.196078%,90.196078%,98.039216%);fill-opacity:0.5;" d="M 159.464844 73.835938 L 170.804688 68.917969 L 173.171875 76.296875 L 176.019531 82.679688 L 183.402344 90.136719 L 184.109375 93.789062 L 174.757812 89.945312 L 171.078125 89.90625 L 169.109375 93.441406 L 185.757812 103.707031 L 182.722656 112.007812 L 181.617188 113.125 L 179.890625 116.3125 L 174.433594 119.734375 L 167.976562 121.773438 L 157.070312 125.578125 L 144.289062 132.804688 L 141.585938 126.386719 L 147.519531 123.503906 L 151.734375 120.082031 L 153.800781 116.507812 L 155.917969 110.203125 L 155.929688 105.933594 L 149.34375 87.90625 L 143.125 89.828125 L 136.710938 92.828125 L 130.351562 95.019531 L 128.355469 90.597656 L 127.082031 86.292969 L 139.804688 81.023438 Z "/>
<use xlink:href="#image66" transform="matrix(1,0,0,1,153.144399,90.01164)"/>
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(90.196078%,90.196078%,98.039216%);fill-opacity:0.5;" d="M 183.402344 90.136719 L 188.046875 87.058594 L 192.929688 83.832031 L 200.394531 81.488281 L 201.0625 81.371094 L 205.175781 79.601562 L 213.167969 74.914062 L 216.90625 70.414062 L 228.015625 79.488281 L 228.765625 84.601562 L 242.207031 79.796875 L 241.550781 74.835938 L 245.570312 72.53125 L 247.820312 71.339844 L 250.59375 70.03125 L 252.679688 76.488281 L 254.8125 83.101562 L 256 85.5625 L 255.28125 85.714844 L 224.476562 96.902344 L 222.519531 98.167969 L 221.703125 98.9375 L 220.648438 100.207031 L 218.683594 102.28125 L 217.1875 107.625 L 217.277344 109.933594 L 221.75 133.035156 L 217.414062 146.066406 L 216.40625 148.449219 L 209.457031 155.371094 L 197.367188 172.246094 L 193.015625 173.746094 L 186.796875 175.4375 L 179.820312 175.511719 L 175.621094 173.015625 L 151.179688 179.433594 L 146.535156 182.738281 L 144.859375 184.625 L 144.503906 190.695312 L 150.546875 200.269531 L 153.316406 218.875 L 145.023438 226.640625 L 118.382812 232.945312 L 117.859375 231.675781 L 108.660156 207.035156 L 90.503906 158.40625 L 94.914062 153.0625 L 138.746094 132.382812 L 144.289062 132.804688 L 157.070312 125.578125 L 167.976562 121.773438 L 174.433594 119.734375 L 179.890625 116.3125 L 181.617188 113.125 L 182.722656 112.007812 L 185.757812 103.707031 L 169.109375 93.441406 L 171.078125 89.90625 L 174.757812 89.945312 L 184.109375 93.789062 Z "/>
<use xlink:href="#image69" transform="matrix(1,0,0,1,155.527409,142.794669)"/>
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(90.196078%,90.196078%,98.039216%);fill-opacity:0.5;" d="M 110.335938 92.902344 L 127.082031 86.292969 L 128.355469 90.597656 L 130.351562 95.019531 L 136.710938 92.828125 L 143.125 89.828125 L 149.34375 87.90625 L 155.929688 105.933594 L 155.917969 110.203125 L 153.800781 116.507812 L 151.734375 120.082031 L 147.519531 123.503906 L 141.585938 126.386719 L 144.289062 132.804688 L 138.746094 132.382812 L 94.914062 153.0625 L 90.503906 158.40625 L 90.121094 157.292969 L 86.664062 147.644531 L 86.144531 145.105469 L 83.292969 139.1875 L 79.503906 129.191406 L 76.140625 119.121094 L 71.058594 108.050781 L 91.441406 100.015625 L 103.257812 95.363281 Z "/>
<use xlink:href="#image72" transform="matrix(1,0,0,1,105.830723,109.774724)"/>
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(90.196078%,90.196078%,98.039216%);fill-opacity:0.5;" d="M 110.335938 92.902344 L 103.257812 95.363281 L 101.835938 91.441406 L 109.199219 89.058594 Z "/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 9.7 KiB

View file

@ -30,7 +30,7 @@ if 'Linux' == os.uname()[0]:
# which is older than the 1.12.14 version we used on OS X
# to generate the expected images, so we'll rachet back the threshold
# https://github.com/mapnik/mapnik/issues/1868
cairo_threshold = 120
cairo_threshold = 181
def render_cairo(m, output, scale_factor):
mapnik.render_to_file(m, output, 'ARGB32', scale_factor)