[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] [gnunet] branch master updated (5bd70d462 -> 3256190f2)
From: |
gnunet |
Subject: |
[GNUnet-SVN] [gnunet] branch master updated (5bd70d462 -> 3256190f2) |
Date: |
Wed, 01 Aug 2018 16:31:49 +0200 |
This is an automated email from the git hooks/post-receive script.
dvn pushed a change to branch master
in repository gnunet.
from 5bd70d462 GNUNET_SCHEDULER_do_work: always check if shutdown is
necessary and update wakeup time
new 227562cb2 README.md: Create a Markdown README document
new 34bd9d209 README.md: syntax fix, and logo resize
new cca76741c README.md: Fix image alignment, and sizing
new 8f2201c8f README.md: Add file transfer via cadet usage example.
new 7881dd86f README.md: make architecture svg larger
new 3256190f2 README.md: Add examples for using gnunet-fs
The 6 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
README.md | 214 ++++
contrib/branding/logo/gnunet-logo-dark-text.svg | 1411 +++++++++++++++++++++++
contrib/gnunet-arch-full.svg | 648 +++++++++++
3 files changed, 2273 insertions(+)
create mode 100644 README.md
create mode 100644 contrib/branding/logo/gnunet-logo-dark-text.svg
create mode 100644 contrib/gnunet-arch-full.svg
diff --git a/README.md b/README.md
new file mode 100644
index 000000000..f52b68bab
--- /dev/null
+++ b/README.md
@@ -0,0 +1,214 @@
+<p align="center">
+ <a href="https://gnunet.org"><img
src="contrib/branding/logo/gnunet-logo-dark-text.svg" alt="GNUnet"
width="300px"/></a>
+</p>
+
+> GNUnet is a *new* network protocol stack for building secure, distributed,
and privacy-preserving applications.
+
+* [Install](#how-to-install-gnunet)
+ * [From Source](#from-source)
+ * [Using Docker](#docker)
+* [Using GNUnet](#using-gnunet)
+* [License](#license)
+
+How to Install GNUnet
+---------------------
+
+### 1. From Source
+
+**Dependencies**
+
+Install these packages. Some of them may need to be installed from source
depending on your OS.
+
+```
+- libmicrohttpd >= 0.9.42
+- libgcrypt >= 1.6
+- libgnurl >= 7.35.0 (recommended, available from
https://gnunet.org/gnurl)
+- libcurl >= 7.35.0 (alternative to libgnurl)
+- libunistring >= 0.9.2
+- gnutls >= 3.2.12 (highly recommended: a gnutls linked
against libunbound)
+- libidn >= 1.0
+- libextractor >= 0.6.1 (highly recommended)
+- openssl >= 1.0 (binary, used to generate X.509
certificate)
+- libltdl >= 2.2 (part of GNU libtool)
+- sqlite >= 3.8 (default database, required)
+- mysql >= 5.1 (alternative to sqlite)
+- postgres >= 9.5 (alternative to sqlite)
+- Texinfo >= 5.2 [*1]
+- which (for the bootstrap script)
+- gettext
+- zlib
+- pkg-config
+```
+
+
+You can also install the dependencies with the [GNU Guix package
manager:](https://https://www.gnu.org/software/guix/) by using the provided
environment file:
+
+```shell
+guix package -l guix-env.scm
+```
+
+
+**Using GNU Make**
+
+```shell
+./bootstrap # Run this to generate the configure files.
+./configure # See the various flags avalable to you.
+make
+make install
+```
+
+**Using the [GNU Guix package
manager:](https://https://www.gnu.org/software/guix/)**
+
+```shell
+# To build, run tests, and install:
+guix package -f guix-env.scm
+
+# To skip the testing phase:
+guix package -f guix-env.scm:notest
+```
+
+
+### 2. Docker
+
+```
+cd docker
+docker build -t gnunet .
+```
+
+
+
+Using GNUnet
+-------------
+
+There are many possible ways to use the subsystems of GNUnet, so we will
provide a few examples in this section.
+
+<p align="center">
+ <a href="contrib/gnunet-arch-full.svg"><img
src="contrib/gnunet-arch-full.svg" alt="GNUnet Modular Architecture"
width="600px" border="1px"/></a>
+</p>
+
+>***GNUnet is composed of over 30 modular subsystems***
+
+
+### Start GNUnet Services
+
+Before we can begin using most of the components we must start them.
+
+```shell
+gnunet-arm --start
+```
+
+Now we can open up another shell and try using some of the modules.
+
+### Cadet
+
+#### Examples
+
+Open a Cadet connection:
+
+```shell
+# Node 1
+gnunet-cadet -o <shared secret>
+```
+
+Conect to peer:
+
+```shell
+# Node 2
+gnunet-cadet <peer-id of Node 1> <shared secret>
+```
+
+#### Sharing Files
+
+With the cli tool, you can also share files:
+
+```shell
+# Node 1
+gnunet-cadet -o <shared secret> > filename
+```
+
+On the Node 2 we're going to send the file to Node 1, and to do this we need
to make use of
[coprocesses](https://www.gnu.org/software/bash/manual/html_node/Coprocesses.html).
+The syntax for using coprocesses varies per shell. In our example we are
assuming Bash. More info for different shells can be found
[here](https://unix.stackexchange.com/questions/86270/how-do-you-use-the-command-coproc-in-various-shells)
+
+```shell
+# Node 2
+coproc gnunet-cadet <peer-id of Node 1> <shared secret>
+cat <file> >&"${COPROC[1]}"
+```
+
+Now this enables us to do some fun things, such as streaming video by piping
to a media player:
+
+```shell
+# Node 1
+gnunet-cadet -o <shared secret> | vlc -
+```
+
+```shell
+# Node 2
+coproc gnunet-cadet <peer-id of Node 1> <shared secret>
+cat <video-file> >&"${COPROC[1]}"
+```
+
+### Filesharing
+
+You can use GNUnet as a content-addressed storage, much like IPFS: sharing
immutable files in a decentralized fashion with added privacy.
+
+For instance, you can get a nice cat picture with
+```sh
+gnunet-download
gnunet://fs/loc/CB0ZX5EM1ZNNRT7AX93RVHCN1H49242DWZ4AXBTCJBAG22Z33VHYMR61J71YJXTXHEC22TNE0PRWA6D5X7NFNY2J9BNMG0SFN5DKZ0G.R48JSE2T4Y3W2AMDHZYX2MMDJC4HR0BVTJYNWJT2DGK7EQXR35DT84H9ZRAK3QTCTHDBAE1S6W16P8PCKC4HGEEKNW2T42HXF9RS1J0.1906755.J5Z3BDEG2PW332001GGZ2SSKCCSV8WDM696HNARG49X9TMABC4DG.B6Y7BCJ6B5K40EXCXASX1HQAD8MBJ9WTFWPCE3F15Q3Q4Y2PB8BKVGCS5HA4FG4484858NB74PBEE5V1638MGG7NS40A82K7QKK3G0G.1577833200
--output cat.png
+```
+
+You can also give files to the network, like so:
+
+```sh
+$ echo "I love GNUnet" > ILoveGNUnet.txt
+$ gnunet-publish ILoveGNUnet.txt
+
+Publishing `/tmp/ILoveGNUnet.txt` done.
+URI is
`gnunet://fs/chk/SXA4RGZWDHE4PDWD2F4XG778J4SZY3E3SNDZ9AWFRZYYBV52W1T2WQNZCF1NYAT842800SSBQ8F247TG6MX7H4S1RWZZSC8ZXGQ4YPR.AZ3B5WR1XCWCWR6W30S2365KFY7A3R5AMF5SRN3Z11R72SMVQDX3F6GXQSZMWZGM5BSYVDQEJ93CR024QAAE65CKHM52GH8MZK1BM90.14`.
+```
+
+The URI you get is what you can use to retrieve the file with
`gnunet-download`.
+
+### GNS
+
+*coming soon*
+
+
+### VPN
+
+*coming soon*
+
+### Running a Hostlist Server
+
+*coming soon*
+
+GNUnet Configuration
+--------------------------
+### Examples
+
+```yaml
+[transport]
+OPTIONS = -L DEBUG
+PLUGINS = tcp
+#PLUGINS = udp
+
+[transport-tcp]
+OPTIONS = -L DEBUG
+BINDTO = 192.168.0.2
+```
+
+TODO: *explain what this does and add more*
+
+
+Philosophy
+-------------------------
+
+
+Related Projects
+-------------------------
+
+
+
+ <a href="https://pep.foundation"><img
src="https://pep.foundation/static/media/uploads/peplogo.svg"
alt="pep.foundation" width="80px"/></a> <a href="https://secushare.org"><img
src="https://secushare.org/img/secushare-0444.png" alt="Secushare"
width="80px"/></a>
+
+
diff --git a/contrib/branding/logo/gnunet-logo-dark-text.svg
b/contrib/branding/logo/gnunet-logo-dark-text.svg
new file mode 100644
index 000000000..5644e0ae7
--- /dev/null
+++ b/contrib/branding/logo/gnunet-logo-dark-text.svg
@@ -0,0 +1,1411 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ version="1.1"
+ id="svg2"
+ height="280"
+ width="320">
+ <title
+ id="title3310">logo for GNUnet</title>
+ <defs
+ id="defs4">
+ <linearGradient
+ id="gnunet">
+ <stop
+ style="stop-color:#ff0000;stop-opacity:0.58431375;"
+ offset="0"
+ id="stop9516" />
+ <stop
+ style="stop-color:#ffcc00;stop-opacity:1;"
+ offset="1"
+ id="stop9518" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4094">
+ <stop
+ style="stop-color:#232323;stop-opacity:1;"
+ offset="0"
+ id="stop4096" />
+ <stop
+ style="stop-color:#4d4d4d;stop-opacity:1;"
+ offset="1"
+ id="stop4098" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4014">
+ <stop
+ style="stop-color:#a0a0a0;stop-opacity:1;"
+ offset="0"
+ id="stop4016" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="1"
+ id="stop4018" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4678">
+ <stop
+ style="stop-color:#e5e5e5;stop-opacity:1;"
+ offset="0"
+ id="stop4680" />
+ <stop
+ style="stop-color:#d3cdcd;stop-opacity:1;"
+ offset="1"
+ id="stop4682" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4341">
+ <stop
+ id="stop4343"
+ offset="0"
+ style="stop-color:#333333;stop-opacity:1;" />
+ <stop
+ id="stop4345"
+ offset="1"
+ style="stop-color:#484848;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4696-5">
+ <stop
+ id="stop4698-6"
+ offset="0"
+ style="stop-color:#ffb638;stop-opacity:1;" />
+ <stop
+ id="stop4700-2"
+ offset="1"
+ style="stop-color:#f0ae26;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4702-3-6">
+ <stop
+ id="stop4704-1"
+ offset="0"
+ style="stop-color:#ff0000;stop-opacity:0.58431375;" />
+ <stop
+ id="stop4706-8"
+ offset="1"
+ style="stop-color:#ffcc00;stop-opacity:1;" />
+ </linearGradient>
+ <color-profile
+ name="Artifex-PS-CMYK-Profile"
+ xlink:href="/usr/share/color/icc/ghostscript/ps_cmyk.icc"
+ id="color-profile27" />
+ <linearGradient
+ y2="69.791016"
+ x2="177.04297"
+ y1="63.65625"
+ x1="142.96875"
+
gradientTransform="matrix(-0.88803314,0,0,0.88803314,595.57001,1106.9291)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3138"
+ xlink:href="#linearGradient4702-3-6" />
+ <linearGradient
+ y2="1043.709"
+ x2="80.655251"
+ y1="1025.709"
+ x1="108.08774"
+
gradientTransform="matrix(-0.49726789,0,0,0.49726789,555.31016,722.70088)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3141"
+ xlink:href="#linearGradient4696-5" />
+ <linearGradient
+ y2="922.07178"
+ x2="78.000107"
+ y1="1004.8033"
+ x1="113.5146"
+
gradientTransform="matrix(0.88803314,0,0,0.88803314,415.18739,350.00262)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3144"
+ xlink:href="#linearGradient4702-3-6" />
+ <linearGradient
+ y2="70.667412"
+ x2="176.60477"
+ y1="63.65625"
+ x1="142.96875"
+ gradientTransform="matrix(0.88803314,0,0,0.88803314,415.2161,1106.9294)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3148"
+ xlink:href="#linearGradient4702-3-6" />
+ <linearGradient
+ y2="70.667412"
+ x2="176.60477"
+ y1="63.65625"
+ x1="142.96875"
+ gradientTransform="matrix(0.88803314,0,0,0.88803314,415.2161,1106.9294)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3780"
+ xlink:href="#linearGradient4702-3-6" />
+ <linearGradient
+ y2="922.07178"
+ x2="78.000107"
+ y1="1004.8033"
+ x1="113.5146"
+
gradientTransform="matrix(0.88803314,0,0,0.88803314,415.18739,350.00262)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3782"
+ xlink:href="#linearGradient4702-3-6" />
+ <linearGradient
+ y2="1043.709"
+ x2="80.655251"
+ y1="1025.709"
+ x1="108.08774"
+
gradientTransform="matrix(-0.49726789,0,0,0.49726789,555.31016,722.70088)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3784"
+ xlink:href="#linearGradient4696-5" />
+ <linearGradient
+ y2="69.791016"
+ x2="177.04297"
+ y1="63.65625"
+ x1="142.96875"
+
gradientTransform="matrix(-0.88803314,0,0,0.88803314,595.57001,1106.9291)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3786"
+ xlink:href="#linearGradient4702-3-6" />
+ <filter
+ id="filter9204"
+ style="color-interpolation-filters:sRGB">
+ <feColorMatrix
+ id="feColorMatrix9194"
+ result="colormatrix"
+ values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 -0.2125 -0.7154 -0.0721 1 0 "
+ in="SourceGraphic" />
+ <feComposite
+ k1="0"
+ id="feComposite9196"
+ result="composite"
+ k4="0"
+ k3="0"
+ k2="1"
+ operator="arithmetic"
+ in2="colormatrix"
+ in="SourceGraphic" />
+ <feGaussianBlur
+ id="feGaussianBlur9198"
+ result="blur1"
+ stdDeviation="5 0.01" />
+ <feGaussianBlur
+ id="feGaussianBlur9200"
+ result="blur2"
+ stdDeviation="0.01 5"
+ in="composite" />
+ <feBlend
+ id="feBlend9202"
+ result="blend"
+ mode="darken"
+ in2="blur1"
+ in="blur2" />
+ </filter>
+ <filter
+ id="filter9330"
+ style="color-interpolation-filters:sRGB">
+ <feGaussianBlur
+ id="feGaussianBlur9328"
+ result="blur"
+ stdDeviation="2 2" />
+ </filter>
+ </defs>
+ <metadata
+ id="metadata7">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title>logo for GNUnet</dc:title>
+ <dc:creator>
+ <cc:Agent>
+ <dc:title>Luis Felipe López Acevedo, Amirouche Boubekki, carlo von
lynX</dc:title>
+ </cc:Agent>
+ </dc:creator>
+ <dc:rights>
+ <cc:Agent>
+ <dc:title>GNUnet e.V.</dc:title>
+ </cc:Agent>
+ </dc:rights>
+ <cc:license
+ rdf:resource="http://creativecommons.org/licenses/by-sa/4.0/" />
+ <dc:description />
+ </cc:Work>
+ <cc:License
+ rdf:about="http://creativecommons.org/licenses/by-sa/4.0/">
+ <cc:permits
+ rdf:resource="http://creativecommons.org/ns#Reproduction" />
+ <cc:permits
+ rdf:resource="http://creativecommons.org/ns#Distribution" />
+ <cc:requires
+ rdf:resource="http://creativecommons.org/ns#Notice" />
+ <cc:requires
+ rdf:resource="http://creativecommons.org/ns#Attribution" />
+ <cc:permits
+ rdf:resource="http://creativecommons.org/ns#DerivativeWorks" />
+ <cc:requires
+ rdf:resource="http://creativecommons.org/ns#ShareAlike" />
+ </cc:License>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g5346"
+ style="display:none"
+ transform="translate(-387.41463,-609.81931)">
+ <text
+ xml:space="preserve"
+
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16.53852463px;line-height:125%;font-family:Ubuntu;-inkscape-font-specification:Ubuntu;letter-spacing:0px;word-spacing:0px;display:inline;opacity:1;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.03365779px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ x="453.95291"
+ y="869.96057"
+ id="text5344"><tspan
+ id="tspan5342"
+ x="453.95291"
+ y="869.96057"
+
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:49.33333206px;font-family:'Ubuntu
Bold';-inkscape-font-specification:'Ubuntu Bold,
';fill:#ffffff;stroke-width:1.03365779px"
+ dx="0 0 0">gnu net</tspan></text>
+ </g>
+ <g
+ transform="translate(-387.41463,-609.81931)"
+ style="display:none"
+ id="g950">
+ <text
+ id="text948"
+ y="869.21057"
+ x="467.77612"
+
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16.53852463px;line-height:125%;font-family:Ubuntu;-inkscape-font-specification:Ubuntu;letter-spacing:0px;word-spacing:0px;display:inline;opacity:1;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.03365779px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ xml:space="preserve"><tspan
+ dx="0 -2.5 -3 0 -19.25 -2.5 -3"
+
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:50.66666794px;font-family:'Anonymous
Pro';-inkscape-font-specification:'Anonymous Pro
Bold';fill:#ffffff;stroke-width:1.03365779px"
+ y="869.21057"
+ x="467.77612"
+ id="tspan946">gnu net</tspan></text>
+ </g>
+ <g
+ id="g941"
+ style="display:none"
+ transform="translate(0,-20)">
+ <ellipse
+ ry="17.690269"
+ rx="17.68549"
+
style="display:inline;opacity:1;fill:#ee0000;fill-opacity:1;stroke:#ee0000;stroke-width:1.68696308;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0.97635139"
+ id="ellipse937"
+ cx="157.97346"
+ cy="180.65355" />
+ <ellipse
+ ry="17.690269"
+ rx="17.68549"
+
style="display:inline;opacity:1;fill:#ee0000;fill-opacity:1;stroke:#ee0000;stroke-width:1.68696308;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0.97635139"
+ id="ellipse939"
+ cx="157.97346"
+ cy="111.16864" />
+ </g>
+ <g
+ transform="translate(-387.41463,-609.81931)"
+ style="display:none"
+ id="g935">
+ <g
+ aria-label="gnu net"
+
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16.53852463px;line-height:125%;font-family:Ubuntu;-inkscape-font-specification:Ubuntu;letter-spacing:0px;word-spacing:0px;display:inline;opacity:1;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.03365779px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;image-rendering:auto"
+ id="g933">
+ <path
+ d="m 423.90503,684.79003 h 22.14128 v 61.61056 q 0,11.55196
4.3855,16.04443 4.38546,4.49242 12.72857,4.49242 12.19374,0 20.00203,-9.94753
7.80828,-9.94753 7.80828,-27.48942 v -44.71046 h 22.14128 v 99.6893 h -22.14128
v -24.92231 q -3.31586,12.83553 -12.30071,20.10899 -8.98489,7.27346
-22.14132,7.27346 -15.29567,0 -23.95963,-9.94753 -8.664,-10.0545
-8.664,-30.59135 z"
+
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:50.66666794px;font-family:'Anonymous
Pro';-inkscape-font-specification:'Anonymous Pro
Bold';fill:#ffffff;stroke-width:4.46906853px"
+ id="path925" />
+ <path
+ d="m 669.48029,784.47933 h -22.14128 v -61.50359 q 0,-11.65892
-4.3855,-16.15139 -4.38546,-4.49243 -12.72857,-4.49243 -12.30071,0
-20.10899,9.94753 -7.70132,9.94754 -7.70132,27.48947 v 44.71041 h -22.14128 v
-99.6893 h 22.14128 v 25.02928 q 3.31586,-12.94249 12.30071,-20.10899
8.98489,-7.27346 22.14132,-7.27346 15.29567,0 23.95967,9.94753 8.66396,9.94753
8.66396,30.59135 z"
+
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:50.66666794px;font-family:'Anonymous
Pro';-inkscape-font-specification:'Anonymous Pro
Bold';fill:#ffffff;stroke-width:4.46906853px"
+ id="path927" />
+ </g>
+ </g>
+ <g
+ id="g1296"
+ style="display:none"
+ transform="translate(0,-67.278107)">
+ <path
+
style="fill:none;stroke:#dddddd;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="m 62.698223,85.778107 -39.5,48.000003 v 0 l -1,2"
+ id="path1256" />
+ <path
+
style="fill:none;stroke:#dddddd;stroke-width:2.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="m 12.698223,104.77811 10,29 21,-10.5 v 0 0"
+ id="path1258" />
+ <path
+
style="display:inline;fill:none;fill-rule:evenodd;stroke:#dddddd;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="m 11.809253,105.24526 63.6227,34.91188 23.31802,-11.09978
-35.03955,28.74946 11.86161,-17.77468 -53.18435,-5.79678 40.95076,23.69646
25.32406,0.49689 24.193047,3.02495 v 48.02104 l 21.04995,-32.14943
-20.559,-15.87161 32.52749,48.02104 -8.06937,31.38386 -24.94907,-31.76198
24.94907,77.51429 22.25436,-36.69889 21.97354,37.07701 -43.59987,-0.37188
41.32877,-28.87448 22.05899,-21.17152 -19.90986,50.171 -3.71591,-29.60613
-8.57843,-31.7682 -9.69437,24.71516 54.37611,-52.19866 -24.9 [...]
+ id="path1260" />
+ <path
+
style="display:inline;fill:none;fill-rule:evenodd;stroke:#dddddd;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="m 98.868943,129.31358 37.045597,48.02106"
+ id="path1262" />
+ <path
+
style="display:inline;fill:none;fill-rule:evenodd;stroke:#dddddd;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="m 88.284483,158.4287 10.96248,-29.11512 12.474537,32.51819"
+ id="path1264" />
+ <path
+
style="display:inline;fill:none;fill-rule:evenodd;stroke:#dddddd;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="m 212.13974,133.78236 54.69043,-3.64603 -31.75647,27.04795"
+ id="path1266" />
+ <path
+ transform="translate(-387.41463,-542.5412)"
+
style="display:inline;opacity:1;fill:none;fill-opacity:1;stroke:#dddddd;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="m 399.11285,648.31931 50.5,-19.5 -14.05,28.1 0.925,-1.725
-5.875,11.75 -0.25,-0.75"
+ id="path1268" />
+ <path
+ transform="translate(-387.41463,-542.5412)"
+
style="display:inline;opacity:1;fill:#729fcf;fill-rule:evenodd;stroke:#dddddd;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="m 601.57854,741.42859 -2.26809,-64.28015"
+ id="path1270" />
+ <path
+
style="fill:none;stroke:#dddddd;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="m 189.57322,206.52811 -44,2.625 25.375,17.125 v 0"
+ id="path1272" />
+ <path
+ transform="translate(-387.41463,-542.5412)"
+
style="display:inline;opacity:1;fill:none;fill-rule:evenodd;stroke:#dddddd;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="m 475.69911,700.21367 24.57107,51.42411"
+ id="path1274" />
+ <path
+ transform="translate(-387.41463,-542.5412)"
+
style="display:inline;opacity:1;fill:none;fill-rule:evenodd;stroke:#dddddd;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="m 534.29164,751.63778 12.85257,40.08057"
+ id="path1276" />
+ <path
+ transform="translate(-387.41463,-542.5412)"
+
style="display:inline;opacity:1;fill:none;fill-rule:evenodd;stroke:#dddddd;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="m 525.21925,783.02162 0.37803,45.75234"
+ id="path1278" />
+ <path
+ transform="translate(-387.41463,-542.5412)"
+
style="display:inline;opacity:1;fill:none;fill-rule:evenodd;stroke:#dddddd;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="m 601.95657,742.56293 -12.09653,36.6775"
+ id="path1280" />
+ <path
+ transform="translate(-387.41463,-542.5412)"
+
style="display:inline;opacity:1;fill:none;fill-rule:evenodd;stroke:#dddddd;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="m 475.69911,700.59178 46.98395,22.0278 10.85256,28.26194"
+ id="path1282" />
+ <path
+ transform="translate(-387.41463,-542.5412)"
+
style="display:inline;opacity:1;fill:none;fill-rule:evenodd;stroke:#dddddd;stroke-width:1.58654225px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ d="m 589.104,778.86231 -12.85255,-66.17074 v 36.6775 z"
+ id="path1284" />
+ <path
+ transform="translate(-387.41463,-542.5412)"
+
style="display:inline;opacity:1;fill:none;fill-rule:evenodd;stroke:#dddddd;stroke-width:1.58654225px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ d="m 557.35064,768.27501 31.75336,10.5873"
+ id="path1286" />
+ <path
+ transform="translate(-387.41463,-542.5412)"
+
style="display:inline;opacity:1;fill:none;fill-rule:evenodd;stroke:#dddddd;stroke-width:1.58654225px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ d="m 500.27018,704.37298 v 48.77728 l 24.57105,30.2495 23.81505,9.45293"
+ id="path1288" />
+ <path
+ transform="translate(-387.41463,-542.5412)"
+
style="display:inline;opacity:1;fill:none;fill-rule:evenodd;stroke:#dddddd;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="m 524.46323,829.53019 44.98392,-0.37812"
+ id="path1290" />
+ <path
+ transform="translate(-387.41463,-542.5412)"
+
style="display:inline;opacity:1;fill:none;stroke:#dddddd;stroke-width:2.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="m 694.61285,647.31931 -40.285,-17.00922 -4.715,-1.99078 29,57.5 v
-0.5 0 h 0.5 v 0"
+ id="path1292" />
+ <path
+ transform="translate(-387.41463,-542.5412)"
+
style="display:inline;opacity:1;fill:none;fill-rule:evenodd;stroke:#dddddd;stroke-width:1.58654225px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ d="m 409.92428,677.14844 54.05634,6.0499"
+ id="path1294" />
+ </g>
+ <g
+ transform="translate(0,-67.278107)"
+ style="display:none"
+ id="g1254">
+ <ellipse
+ transform="translate(-387.41463,-542.5412)"
+ ry="4.1593032"
+ rx="4.1581793"
+ cy="829.24042"
+ cx="568.98083"
+ id="ellipse1194"
+
style="display:inline;opacity:1;fill:#ffffff;fill-opacity:1;stroke:#eeeeee;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
/>
+ <ellipse
+ transform="translate(-387.41463,-542.5412)"
+ ry="4.1593032"
+ rx="4.1581793"
+
style="display:inline;opacity:1;fill:#ffffff;fill-opacity:1;stroke:#eeeeee;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="ellipse1196"
+ cx="588.85413"
+ cy="778.67493" />
+ <ellipse
+ transform="translate(-387.41463,-542.5412)"
+ ry="4.1593032"
+ rx="4.1581793"
+ cy="740.67249"
+ cx="601.57867"
+ id="ellipse1198"
+
style="display:inline;opacity:1;fill:#ffffff;fill-opacity:1;stroke:#eeeeee;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
/>
+ <ellipse
+ transform="translate(-387.41463,-542.5412)"
+ ry="4.1593032"
+ rx="4.1581793"
+
style="display:inline;opacity:1;fill:#ffffff;fill-opacity:1;stroke:#eeeeee;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="ellipse1200"
+ cx="525.79852"
+ cy="829.24042" />
+ <ellipse
+ transform="translate(-387.41463,-542.5412)"
+ ry="4.1593032"
+ rx="4.1581793"
+
style="display:inline;opacity:1;fill:#ffffff;fill-opacity:1;stroke:#eeeeee;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="ellipse1202"
+ cx="557.82654"
+ cy="768.71582" />
+ <ellipse
+ transform="translate(-387.41463,-542.5412)"
+ ry="4.1593032"
+ rx="4.1581793"
+ cy="783.02173"
+ cx="525.21936"
+ id="ellipse1204"
+
style="display:inline;opacity:1;fill:#ffffff;fill-opacity:1;stroke:#eeeeee;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
/>
+ <ellipse
+ transform="translate(-387.41463,-542.5412)"
+ ry="4.1593032"
+ rx="4.1581793"
+
style="display:inline;opacity:1;fill:#ffffff;fill-opacity:1;stroke:#eeeeee;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="ellipse1206"
+ cx="400.09586"
+ cy="647.34271" />
+ <ellipse
+ transform="translate(-387.41463,-542.5412)"
+ ry="4.1593032"
+ rx="4.1581793"
+
style="display:inline;opacity:1;fill:#ffffff;fill-opacity:1;stroke:#eeeeee;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="ellipse1208"
+ cx="450.11285"
+ cy="628.31934" />
+ <ellipse
+ transform="translate(-387.41463,-542.5412)"
+ ry="4.1593032"
+ rx="4.1581793"
+
style="display:inline;opacity:1;fill:#ffffff;fill-opacity:1;stroke:#eeeeee;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="ellipse1210"
+ cx="622.36951"
+ cy="699.45752" />
+ <ellipse
+ transform="translate(-387.41463,-542.5412)"
+ ry="4.1593032"
+ rx="4.1581793"
+
style="display:inline;opacity:1;fill:#ffffff;fill-opacity:1;stroke:#eeeeee;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="ellipse1212"
+ cx="547.21771"
+ cy="792.29773" />
+ <ellipse
+ transform="translate(-387.41463,-542.5412)"
+ ry="4.1593032"
+ rx="4.1581793"
+
style="display:inline;opacity:1;fill:#ffffff;fill-opacity:1;stroke:#eeeeee;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="ellipse1214"
+ cx="566.20697"
+ cy="800.12549" />
+ <ellipse
+ transform="translate(-387.41463,-542.5412)"
+ ry="4.1593032"
+ rx="4.1581793"
+ cy="751.63794"
+ cx="500.64822"
+ id="ellipse1216"
+
style="display:inline;opacity:1;fill:#ffffff;fill-opacity:1;stroke:#eeeeee;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
/>
+ <ellipse
+ transform="translate(-387.41463,-542.5412)"
+ ry="4.1593032"
+ rx="4.1581793"
+
style="display:inline;opacity:1;fill:#ffffff;fill-opacity:1;stroke:#eeeeee;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="ellipse1218"
+ cx="533.33447"
+ cy="751.72632" />
+ <ellipse
+ transform="translate(-387.41463,-542.5412)"
+ ry="4.1593032"
+ rx="4.1581793"
+
style="display:inline;opacity:1;fill:#ffffff;fill-opacity:1;stroke:#eeeeee;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="ellipse1220"
+ cx="450.75012"
+ cy="699.83545" />
+ <ellipse
+ transform="translate(-387.41463,-542.5412)"
+ ry="4.1593032"
+ rx="4.1581793"
+ cy="700.59174"
+ cx="476.07718"
+ id="ellipse1222"
+
style="display:inline;opacity:1;fill:#ffffff;fill-opacity:1;stroke:#eeeeee;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
/>
+ <ellipse
+ transform="translate(-387.41463,-542.5412)"
+ ry="4.1593032"
+ rx="4.1581793"
+
style="display:inline;opacity:1;fill:#ffffff;fill-opacity:1;stroke:#eeeeee;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="ellipse1224"
+ cx="521.49146"
+ cy="719.65314" />
+ <ellipse
+ transform="translate(-387.41463,-542.5412)"
+ ry="4.1593032"
+ rx="4.1581793"
+
style="display:inline;opacity:1;fill:#ffffff;fill-opacity:1;stroke:#eeeeee;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="ellipse1226"
+ cx="500.6362"
+ cy="703.87305" />
+ <ellipse
+ ry="4.1593032"
+ rx="4.1581793"
+ cy="134.28851"
+ cx="211.9584"
+ id="ellipse1228"
+
style="display:inline;opacity:1;fill:#ffffff;fill-opacity:1;stroke:#eeeeee;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
/>
+ <ellipse
+ transform="translate(-387.41463,-542.5412)"
+ ry="4.1593032"
+ rx="4.1581793"
+
style="display:inline;opacity:1;fill:#ffffff;fill-opacity:1;stroke:#eeeeee;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="ellipse1230"
+ cx="576.62964"
+ cy="713.44794" />
+ <ellipse
+ ry="4.1593032"
+ rx="4.1581793"
+ cy="123.16669"
+ cx="43.166531"
+ id="ellipse1232"
+
style="display:inline;opacity:1;fill:#ffffff;fill-opacity:1;stroke:#eeeeee;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
/>
+ <ellipse
+ ry="4.1593032"
+ rx="4.1581793"
+
style="display:inline;opacity:1;fill:#ffffff;fill-opacity:1;stroke:#eeeeee;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="ellipse1234"
+ cx="98.865997"
+ cy="129.43542" />
+ <ellipse
+ ry="4.1593032"
+ rx="4.1581793"
+ cy="130.05022"
+ cx="267.08618"
+ id="ellipse1236"
+
style="display:inline;opacity:1;fill:#ffffff;fill-opacity:1;stroke:#eeeeee;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
/>
+ <ellipse
+ transform="translate(-387.41463,-542.5412)"
+ ry="4.1593032"
+ rx="4.1581793"
+
style="display:inline;opacity:1;fill:#ffffff;fill-opacity:1;stroke:#eeeeee;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="ellipse1238"
+ cx="679.07196"
+ cy="686.22339" />
+ <ellipse
+ transform="translate(-387.41463,-542.5412)"
+ ry="4.1593032"
+ rx="4.1581793"
+ cy="748.99109"
+ cx="577.00763"
+ id="ellipse1240"
+
style="display:inline;opacity:1;fill:#ffffff;fill-opacity:1;stroke:#eeeeee;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
/>
+ <ellipse
+ transform="translate(-387.41463,-542.5412)"
+ ry="4.1593032"
+ rx="4.1581793"
+
style="display:inline;opacity:1;fill:#ffffff;fill-opacity:1;stroke:#eeeeee;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="ellipse1242"
+ cx="577.00763"
+ cy="748.99109" />
+ <ellipse
+ transform="translate(-387.41463,-542.5412)"
+ ry="4.1593032"
+ rx="4.1581793"
+ cy="748.99109"
+ cx="577.07013"
+ id="ellipse1244"
+
style="display:inline;opacity:1;fill:#ffffff;fill-opacity:1;stroke:#eeeeee;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
/>
+ <ellipse
+ transform="translate(0,-3e-6)"
+ ry="4.1593032"
+ rx="4.1581793"
+ cy="133.85095"
+ cx="22.887779"
+ id="ellipse1246"
+
style="display:inline;opacity:1;fill:#ffffff;fill-opacity:1;stroke:#eeeeee;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
/>
+ <ellipse
+ transform="translate(-387.41463,-542.5412)"
+ ry="4.1593032"
+ rx="4.1581793"
+ cy="682.1922"
+ cx="462.47165"
+ id="ellipse1248"
+
style="display:inline;opacity:1;fill:#ffffff;fill-opacity:1;stroke:#eeeeee;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
/>
+ <ellipse
+ transform="translate(-387.41463,-542.5412)"
+ ry="4.1593032"
+ rx="4.1581793"
+ cy="647.3053"
+ cx="694.58264"
+ id="ellipse1250"
+
style="display:inline;opacity:1;fill:#ffffff;fill-opacity:1;stroke:#eeeeee;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
/>
+ <ellipse
+ transform="translate(-387.41463,-542.5412)"
+ ry="4.1593032"
+ rx="4.1581793"
+
style="display:inline;opacity:1;fill:#ffffff;fill-opacity:1;stroke:#eeeeee;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="ellipse1252"
+ cx="649.61285"
+ cy="628.31934" />
+ </g>
+ <g
+ transform="translate(0,-67.278107)"
+ style="display:inline"
+ id="g1533">
+ <path
+ id="path1493"
+ d="m 62.698223,85.778107 -39.5,48.000003 v 0 l -1,2"
+
style="fill:none;stroke:#3399cc;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
/>
+ <path
+ id="path1495"
+ d="m 12.698223,104.77811 10,29 21,-10.5 v 0 0"
+
style="fill:none;stroke:#3399cc;stroke-width:2.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
/>
+ <path
+ id="path1497"
+ d="m 11.809253,105.24526 63.6227,34.91188 23.31802,-11.09978
-35.03955,28.74946 11.86161,-17.77468 -53.18435,-5.79678 40.95076,23.69646
25.32406,0.49689 24.193047,3.02495 v 48.02104 l 21.04995,-32.14943
-20.559,-15.87161 32.52749,48.02104 -8.06937,31.38386 -24.94907,-31.76198
24.94907,77.51429 22.25436,-36.69889 21.97354,37.07701 -43.59987,-0.37188
41.32877,-28.87448 22.05899,-21.17152 -19.90986,50.171 -3.71591,-29.60613
-8.57843,-31.7682 -9.69437,24.71516 54.37611,-52.19866 -24.9 [...]
+
style="display:inline;fill:none;fill-rule:evenodd;stroke:#3399cc;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
/>
+ <path
+ id="path1499"
+ d="m 98.868943,129.31358 37.045597,48.02106"
+
style="display:inline;fill:none;fill-rule:evenodd;stroke:#3399cc;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
/>
+ <path
+ id="path1501"
+ d="m 88.284483,158.4287 10.96248,-29.11512 12.474537,32.51819"
+
style="display:inline;fill:none;fill-rule:evenodd;stroke:#3399cc;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
/>
+ <path
+ id="path1503"
+ d="m 212.13974,133.78236 54.69043,-3.64603 -31.75647,27.04795"
+
style="display:inline;fill:none;fill-rule:evenodd;stroke:#3399cc;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
/>
+ <path
+ id="path1505"
+ d="m 399.11285,648.31931 50.5,-19.5 -14.05,28.1 0.925,-1.725
-5.875,11.75 -0.25,-0.75"
+
style="display:inline;opacity:1;fill:none;fill-opacity:1;stroke:#3399cc;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ transform="translate(-387.41463,-542.5412)" />
+ <path
+ id="path1507"
+ d="m 601.57854,741.42859 -2.26809,-64.28015"
+
style="display:inline;opacity:1;fill:#729fcf;fill-rule:evenodd;stroke:#3399cc;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ transform="translate(-387.41463,-542.5412)" />
+ <path
+ id="path1509"
+ d="m 189.57322,206.52811 -44,2.625 25.375,17.125 v 0"
+
style="fill:none;stroke:#3399cc;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
/>
+ <path
+ id="path1511"
+ d="m 475.69911,700.21367 24.57107,51.42411"
+
style="display:inline;opacity:1;fill:none;fill-rule:evenodd;stroke:#3399cc;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ transform="translate(-387.41463,-542.5412)" />
+ <path
+ id="path1513"
+ d="m 534.29164,751.63778 12.85257,40.08057"
+
style="display:inline;opacity:1;fill:none;fill-rule:evenodd;stroke:#3399cc;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ transform="translate(-387.41463,-542.5412)" />
+ <path
+ id="path1515"
+ d="m 525.21925,783.02162 0.37803,45.75234"
+
style="display:inline;opacity:1;fill:none;fill-rule:evenodd;stroke:#3399cc;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ transform="translate(-387.41463,-542.5412)" />
+ <path
+ id="path1517"
+ d="m 601.95657,742.56293 -12.09653,36.6775"
+
style="display:inline;opacity:1;fill:none;fill-rule:evenodd;stroke:#3399cc;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ transform="translate(-387.41463,-542.5412)" />
+ <path
+ id="path1519"
+ d="m 475.69911,700.59178 46.98395,22.0278 10.85256,28.26194"
+
style="display:inline;opacity:1;fill:none;fill-rule:evenodd;stroke:#3399cc;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ transform="translate(-387.41463,-542.5412)" />
+ <path
+ id="path1521"
+ d="m 589.104,778.86231 -12.85255,-66.17074 v 36.6775 z"
+
style="display:inline;opacity:1;fill:none;fill-rule:evenodd;stroke:#3399cc;stroke-width:1.58654225px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ transform="translate(-387.41463,-542.5412)" />
+ <path
+ id="path1523"
+ d="m 557.35064,768.27501 31.75336,10.5873"
+
style="display:inline;opacity:1;fill:none;fill-rule:evenodd;stroke:#3399cc;stroke-width:1.58654225px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ transform="translate(-387.41463,-542.5412)" />
+ <path
+ id="path1525"
+ d="m 500.27018,704.37298 v 48.77728 l 24.57105,30.2495 23.81505,9.45293"
+
style="display:inline;opacity:1;fill:none;fill-rule:evenodd;stroke:#3399cc;stroke-width:1.58654225px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ transform="translate(-387.41463,-542.5412)" />
+ <path
+ id="path1527"
+ d="m 524.46323,829.53019 44.98392,-0.37812"
+
style="display:inline;opacity:1;fill:none;fill-rule:evenodd;stroke:#3399cc;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ transform="translate(-387.41463,-542.5412)" />
+ <path
+ id="path1529"
+ d="m 694.61285,647.31931 -40.285,-17.00922 -4.715,-1.99078 29,57.5 v
-0.5 0 h 0.5 v 0"
+
style="display:inline;opacity:1;fill:none;stroke:#3399cc;stroke-width:2.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ transform="translate(-387.41463,-542.5412)" />
+ <path
+ id="path1531"
+ d="m 409.92428,677.14844 54.05634,6.0499"
+
style="display:inline;opacity:1;fill:none;fill-rule:evenodd;stroke:#3399cc;stroke-width:1.58654225px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ transform="translate(-387.41463,-542.5412)" />
+ </g>
+ <g
+ id="g1491"
+ style="display:inline"
+ transform="translate(0,-67.278107)">
+ <ellipse
+
style="display:inline;opacity:1;fill:#419edb;fill-opacity:1;stroke:#3399cc;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="ellipse1431"
+ cx="568.98083"
+ cy="829.24042"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ <ellipse
+ cy="778.67493"
+ cx="588.85413"
+ id="ellipse1433"
+
style="display:inline;opacity:1;fill:#419edb;fill-opacity:1;stroke:#3399cc;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ <ellipse
+
style="display:inline;opacity:1;fill:#419edb;fill-opacity:1;stroke:#3399cc;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="ellipse1435"
+ cx="601.57867"
+ cy="740.67249"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ <ellipse
+ cy="829.24042"
+ cx="525.79852"
+ id="ellipse1437"
+
style="display:inline;opacity:1;fill:#419edb;fill-opacity:1;stroke:#3399cc;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ <ellipse
+ cy="768.71582"
+ cx="557.82654"
+ id="ellipse1439"
+
style="display:inline;opacity:1;fill:#419edb;fill-opacity:1;stroke:#3399cc;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ <ellipse
+
style="display:inline;opacity:1;fill:#419edb;fill-opacity:1;stroke:#3399cc;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="ellipse1441"
+ cx="525.21936"
+ cy="783.02173"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ <ellipse
+ cy="647.34271"
+ cx="400.09586"
+ id="ellipse1443"
+
style="display:inline;opacity:1;fill:#419edb;fill-opacity:1;stroke:#3399cc;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ <ellipse
+ cy="628.31934"
+ cx="450.11285"
+ id="ellipse1445"
+
style="display:inline;opacity:1;fill:#419edb;fill-opacity:1;stroke:#3399cc;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ <ellipse
+ cy="699.45752"
+ cx="622.36951"
+ id="ellipse1447"
+
style="display:inline;opacity:1;fill:#419edb;fill-opacity:1;stroke:#3399cc;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ <ellipse
+ cy="792.29773"
+ cx="547.21771"
+ id="ellipse1449"
+
style="display:inline;opacity:1;fill:#419edb;fill-opacity:1;stroke:#3399cc;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ <ellipse
+ cy="800.12549"
+ cx="566.20697"
+ id="ellipse1451"
+
style="display:inline;opacity:1;fill:#419edb;fill-opacity:1;stroke:#3399cc;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ <ellipse
+
style="display:inline;opacity:1;fill:#419edb;fill-opacity:1;stroke:#3399cc;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="ellipse1453"
+ cx="500.64822"
+ cy="751.63794"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ <ellipse
+ cy="751.72632"
+ cx="533.33447"
+ id="ellipse1455"
+
style="display:inline;opacity:1;fill:#419edb;fill-opacity:1;stroke:#3399cc;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ <ellipse
+ cy="699.83545"
+ cx="450.75012"
+ id="ellipse1457"
+
style="display:inline;opacity:1;fill:#419edb;fill-opacity:1;stroke:#3399cc;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ <ellipse
+
style="display:inline;opacity:1;fill:#419edb;fill-opacity:1;stroke:#3399cc;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="ellipse1459"
+ cx="476.07718"
+ cy="700.59174"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ <ellipse
+ cy="719.65314"
+ cx="521.49146"
+ id="ellipse1461"
+
style="display:inline;opacity:1;fill:#419edb;fill-opacity:1;stroke:#3399cc;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ <ellipse
+ cy="703.87305"
+ cx="500.6362"
+ id="ellipse1463"
+
style="display:inline;opacity:1;fill:#419edb;fill-opacity:1;stroke:#3399cc;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ <ellipse
+
style="display:inline;opacity:1;fill:#419edb;fill-opacity:1;stroke:#3399cc;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="ellipse1465"
+ cx="211.9584"
+ cy="134.28851"
+ rx="4.1581793"
+ ry="4.1593032" />
+ <ellipse
+ cy="713.44794"
+ cx="576.62964"
+ id="ellipse1467"
+
style="display:inline;opacity:1;fill:#419edb;fill-opacity:1;stroke:#3399cc;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ <ellipse
+
style="display:inline;opacity:1;fill:#419edb;fill-opacity:1;stroke:#3399cc;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="ellipse1469"
+ cx="43.166531"
+ cy="123.16669"
+ rx="4.1581793"
+ ry="4.1593032" />
+ <ellipse
+ cy="129.43542"
+ cx="98.865997"
+ id="ellipse1471"
+
style="display:inline;opacity:1;fill:#419edb;fill-opacity:1;stroke:#3399cc;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ rx="4.1581793"
+ ry="4.1593032" />
+ <ellipse
+
style="display:inline;opacity:1;fill:#419edb;fill-opacity:1;stroke:#3399cc;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="ellipse1473"
+ cx="267.08618"
+ cy="130.05022"
+ rx="4.1581793"
+ ry="4.1593032" />
+ <ellipse
+ cy="686.22339"
+ cx="679.07196"
+ id="ellipse1475"
+
style="display:inline;opacity:1;fill:#419edb;fill-opacity:1;stroke:#3399cc;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ <ellipse
+
style="display:inline;opacity:1;fill:#419edb;fill-opacity:1;stroke:#3399cc;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="ellipse1477"
+ cx="577.00763"
+ cy="748.99109"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ <ellipse
+ cy="748.99109"
+ cx="577.00763"
+ id="ellipse1479"
+
style="display:inline;opacity:1;fill:#419edb;fill-opacity:1;stroke:#3399cc;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ <ellipse
+
style="display:inline;opacity:1;fill:#419edb;fill-opacity:1;stroke:#3399cc;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="ellipse1481"
+ cx="577.07013"
+ cy="748.99109"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ <ellipse
+
style="display:inline;opacity:1;fill:#419edb;fill-opacity:1;stroke:#3399cc;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="ellipse1483"
+ cx="22.887779"
+ cy="133.85095"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(0,-3e-6)" />
+ <ellipse
+
style="display:inline;opacity:1;fill:#419edb;fill-opacity:1;stroke:#3399cc;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="ellipse1485"
+ cx="462.47165"
+ cy="682.1922"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ <ellipse
+
style="display:inline;opacity:1;fill:#419edb;fill-opacity:1;stroke:#3399cc;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="ellipse1487"
+ cx="694.58264"
+ cy="647.3053"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ <ellipse
+ cy="628.31934"
+ cx="649.61285"
+ id="ellipse1489"
+
style="display:inline;opacity:1;fill:#419edb;fill-opacity:1;stroke:#3399cc;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ </g>
+ <g
+ id="g1539"
+ style="display:inline"
+ transform="translate(0,-20)">
+ <ellipse
+ ry="4.1593032"
+ rx="4.1581793"
+
style="display:inline;opacity:1;fill:#3399cc;fill-opacity:1;stroke:#3399cc;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="ellipse1535"
+ cx="159.80099"
+ cy="276.32968" />
+ <ellipse
+ ry="4.1593032"
+ rx="4.1581793"
+
style="display:inline;opacity:1;fill:#3399cc;fill-opacity:1;stroke:#3399cc;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="ellipse1537"
+ cx="159.80099"
+ cy="259.99252" />
+ </g>
+ <g
+ transform="translate(0,-67.278107)"
+ style="display:none"
+ id="layer3">
+ <path
+ id="path5313"
+ d="m 62.698223,85.778107 -39.5,48.000003 v 0 l -1,2"
+
style="fill:none;stroke:#cc0000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.99607843"
/>
+ <path
+ id="path5311"
+ d="m 12.698223,104.77811 10,29 21,-10.5 v 0 0"
+
style="fill:none;stroke:#cc0000;stroke-width:2.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.99607843"
/>
+ <path
+ id="path9316"
+ d="m 11.809253,105.24526 63.6227,34.91188 23.31802,-11.09978
-35.03955,28.74946 11.86161,-17.77468 -53.18435,-5.79678 40.95076,23.69646
25.32406,0.49689 24.193047,3.02495 v 48.02104 l 21.04995,-32.14943
-20.559,-15.87161 32.52749,48.02104 -8.06937,31.38386 -24.94907,-31.76198
24.94907,77.51429 22.25436,-36.69889 21.97354,37.07701 -43.59987,-0.37188
41.32877,-28.87448 22.05899,-21.17152 -19.90986,50.171 -3.71591,-29.60613
-8.57843,-31.7682 -9.69437,24.71516 54.37611,-52.19866 -24.9 [...]
+
style="display:inline;fill:none;fill-rule:evenodd;stroke:#cc0000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.99607843"
/>
+ <path
+ id="path9318"
+ d="m 98.868943,129.31358 37.045597,48.02106"
+
style="display:inline;fill:none;fill-rule:evenodd;stroke:#cc0000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.99607843"
/>
+ <path
+ id="path12058"
+ d="m 88.284483,158.4287 10.96248,-29.11512 12.474537,32.51819"
+
style="display:inline;fill:none;fill-rule:evenodd;stroke:#cc0000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.99607843"
/>
+ <path
+ id="path12250"
+ d="m 212.13974,133.78236 54.69043,-3.64603 -31.75647,27.04795"
+
style="display:inline;fill:none;fill-rule:evenodd;stroke:#cc0000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.99607843"
/>
+ <path
+ id="path5161"
+ d="m 399.11285,648.31931 50.5,-19.5 -14.05,28.1 0.925,-1.725
-5.875,11.75 -0.25,-0.75"
+
style="display:inline;opacity:1;fill:none;fill-opacity:1;stroke:#cc0000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.99607843"
+ transform="translate(-387.41463,-542.5412)" />
+ <path
+ id="path12206"
+ d="m 601.57854,741.42859 -2.26809,-64.28015"
+
style="display:inline;opacity:1;fill:#729fcf;fill-rule:evenodd;stroke:#cc0000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.99607843"
+ transform="translate(-387.41463,-542.5412)" />
+ <path
+ id="path5331"
+ d="m 189.57322,206.52811 -44,2.625 25.375,17.125 v 0"
+
style="fill:none;stroke:#cc0000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.99607843"
/>
+ <path
+ id="path9320"
+ d="m 475.69911,700.21367 24.57107,51.42411"
+
style="display:inline;opacity:1;fill:none;fill-rule:evenodd;stroke:#cc0000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.99607843"
+ transform="translate(-387.41463,-542.5412)" />
+ <path
+ id="path9322"
+ d="m 534.29164,751.63778 12.85257,40.08057"
+
style="display:inline;opacity:1;fill:none;fill-rule:evenodd;stroke:#cc0000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.99607843"
+ transform="translate(-387.41463,-542.5412)" />
+ <path
+ id="path9324"
+ d="m 525.21925,783.02162 0.37803,45.75234"
+
style="display:inline;opacity:1;fill:none;fill-rule:evenodd;stroke:#cc0000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.99607843"
+ transform="translate(-387.41463,-542.5412)" />
+ <path
+ id="path9326"
+ d="m 601.95657,742.56293 -12.09653,36.6775"
+
style="display:inline;opacity:1;fill:none;fill-rule:evenodd;stroke:#cc0000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.99607843"
+ transform="translate(-387.41463,-542.5412)" />
+ <path
+ id="path12060"
+ d="m 475.69911,700.59178 46.98395,22.0278 10.85256,28.26194"
+
style="display:inline;opacity:1;fill:none;fill-rule:evenodd;stroke:#cc0000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.99607843"
+ transform="translate(-387.41463,-542.5412)" />
+ <path
+ id="path12208"
+ d="m 589.104,778.86231 -12.85255,-66.17074 v 36.6775 z"
+
style="display:inline;opacity:1;fill:none;fill-rule:evenodd;stroke:#cc0000;stroke-width:1.58654225px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:0.99607843"
+ transform="translate(-387.41463,-542.5412)" />
+ <path
+ id="path12210"
+ d="m 557.35064,768.27501 31.75336,10.5873"
+
style="display:inline;opacity:1;fill:none;fill-rule:evenodd;stroke:#cc0000;stroke-width:1.58654225px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:0.99607843"
+ transform="translate(-387.41463,-542.5412)" />
+ <path
+ id="path12212"
+ d="m 500.27018,704.37298 v 48.77728 l 24.57105,30.2495 23.81505,9.45293"
+
style="display:inline;opacity:1;fill:none;fill-rule:evenodd;stroke:#cc0000;stroke-width:1.58654225px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:0.99607843"
+ transform="translate(-387.41463,-542.5412)" />
+ <path
+ id="path12216"
+ d="m 524.46323,829.53019 44.98392,-0.37812"
+
style="display:inline;opacity:1;fill:none;fill-rule:evenodd;stroke:#cc0000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.99607843"
+ transform="translate(-387.41463,-542.5412)" />
+ <path
+ id="path5163"
+ d="m 694.61285,647.31931 -40.285,-17.00922 -4.715,-1.99078 29,57.5 v
-0.5 0 h 0.5 v 0"
+
style="display:inline;opacity:1;fill:none;stroke:#cc0000;stroke-width:2.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.99607843"
+ transform="translate(-387.41463,-542.5412)" />
+ <path
+ id="path12214"
+ d="m 409.92428,677.14844 54.05634,6.0499"
+
style="display:inline;opacity:1;fill:none;fill-rule:evenodd;stroke:#cc0000;stroke-width:1.58654225px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:0.99607843"
+ transform="translate(-387.41463,-542.5412)" />
+ </g>
+ <g
+ id="g325"
+ style="display:none"
+ transform="translate(0,-67.278107)">
+ <ellipse
+
style="display:inline;opacity:1;fill:#ee0000;fill-opacity:1;stroke:#cc0000;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="ellipse12254"
+ cx="568.98083"
+ cy="829.24042"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ <ellipse
+ cy="778.67493"
+ cx="588.85413"
+ id="ellipse12290"
+
style="display:inline;opacity:1;fill:#ee0000;fill-opacity:1;stroke:#cc0000;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ <ellipse
+
style="display:inline;opacity:1;fill:#ee0000;fill-opacity:1;stroke:#cc0000;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="ellipse12284"
+ cx="601.57867"
+ cy="740.67249"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ <ellipse
+ cy="829.24042"
+ cx="525.79852"
+ id="ellipse12256"
+
style="display:inline;opacity:1;fill:#ee0000;fill-opacity:1;stroke:#cc0000;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ <ellipse
+ cy="768.71582"
+ cx="557.82654"
+ id="ellipse12306"
+
style="display:inline;opacity:1;fill:#ee0000;fill-opacity:1;stroke:#cc0000;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ <ellipse
+
style="display:inline;opacity:1;fill:#ee0000;fill-opacity:1;stroke:#cc0000;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="ellipse12280"
+ cx="525.21936"
+ cy="783.02173"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ <ellipse
+ cy="647.34271"
+ cx="400.09586"
+ id="ellipse12258"
+
style="display:inline;opacity:1;fill:#ee0000;fill-opacity:1;stroke:#cc0000;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ <ellipse
+ cy="628.31934"
+ cx="450.11285"
+ id="ellipse12258-3"
+
style="display:inline;opacity:1;fill:#ee0000;fill-opacity:1;stroke:#cc0000;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ <ellipse
+ cy="699.45752"
+ cx="622.36951"
+ id="ellipse12294"
+
style="display:inline;opacity:1;fill:#ee0000;fill-opacity:1;stroke:#cc0000;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ <ellipse
+ cy="792.29773"
+ cx="547.21771"
+ id="ellipse12252"
+
style="display:inline;opacity:1;fill:#ee0000;fill-opacity:1;stroke:#cc0000;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ <ellipse
+ cy="800.12549"
+ cx="566.20697"
+ id="ellipse12282"
+
style="display:inline;opacity:1;fill:#ee0000;fill-opacity:1;stroke:#cc0000;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ <ellipse
+
style="display:inline;opacity:1;fill:#ee0000;fill-opacity:1;stroke:#cc0000;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="ellipse12276"
+ cx="500.64822"
+ cy="751.63794"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ <ellipse
+ cy="751.72632"
+ cx="533.33447"
+ id="ellipse12278"
+
style="display:inline;opacity:1;fill:#ee0000;fill-opacity:1;stroke:#cc0000;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ <ellipse
+ cy="699.83545"
+ cx="450.75012"
+ id="ellipse12262"
+
style="display:inline;opacity:1;fill:#ee0000;fill-opacity:1;stroke:#cc0000;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ <ellipse
+
style="display:inline;opacity:1;fill:#ee0000;fill-opacity:1;stroke:#cc0000;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="ellipse12268"
+ cx="476.07718"
+ cy="700.59174"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ <ellipse
+ cy="719.65314"
+ cx="521.49146"
+ id="ellipse12270"
+
style="display:inline;opacity:1;fill:#ee0000;fill-opacity:1;stroke:#cc0000;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ <ellipse
+ cy="703.87305"
+ cx="500.6362"
+ id="ellipse12274"
+
style="display:inline;opacity:1;fill:#ee0000;fill-opacity:1;stroke:#cc0000;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ <ellipse
+
style="display:inline;opacity:1;fill:#ee0000;fill-opacity:1;stroke:#cc0000;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="ellipse12292"
+ cx="211.9584"
+ cy="134.28851"
+ rx="4.1581793"
+ ry="4.1593032" />
+ <ellipse
+ cy="713.44794"
+ cx="576.62964"
+ id="ellipse12286"
+
style="display:inline;opacity:1;fill:#ee0000;fill-opacity:1;stroke:#cc0000;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ <ellipse
+
style="display:inline;opacity:1;fill:#ee0000;fill-opacity:1;stroke:#cc0000;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="ellipse12260"
+ cx="43.166531"
+ cy="123.16669"
+ rx="4.1581793"
+ ry="4.1593032" />
+ <ellipse
+ cy="129.43542"
+ cx="98.865997"
+ id="ellipse12266"
+
style="display:inline;opacity:1;fill:#ee0000;fill-opacity:1;stroke:#cc0000;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ rx="4.1581793"
+ ry="4.1593032" />
+ <ellipse
+
style="display:inline;opacity:1;fill:#ee0000;fill-opacity:1;stroke:#cc0000;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="ellipse12296"
+ cx="267.08618"
+ cy="130.05022"
+ rx="4.1581793"
+ ry="4.1593032" />
+ <ellipse
+ cy="686.22339"
+ cx="679.07196"
+ id="ellipse12298"
+
style="display:inline;opacity:1;fill:#ee0000;fill-opacity:1;stroke:#cc0000;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ <ellipse
+
style="display:inline;opacity:1;fill:#ee0000;fill-opacity:1;stroke:#cc0000;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="ellipse12288"
+ cx="577.00763"
+ cy="748.99109"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ <ellipse
+ cy="748.99109"
+ cx="577.00763"
+ id="ellipse12302"
+
style="display:inline;opacity:1;fill:#ee0000;fill-opacity:1;stroke:#cc0000;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ <ellipse
+
style="display:inline;opacity:1;fill:#ee0000;fill-opacity:1;stroke:#cc0000;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="ellipse12304"
+ cx="577.07013"
+ cy="748.99109"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ <ellipse
+
style="display:inline;opacity:1;fill:#ee0000;fill-opacity:1;stroke:#cc0000;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="ellipse12264"
+ cx="22.887779"
+ cy="133.85095"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(0,-3e-6)" />
+ <ellipse
+
style="display:inline;opacity:1;fill:#ee0000;fill-opacity:1;stroke:#cc0000;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="ellipse12272"
+ cx="462.47165"
+ cy="682.1922"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ <ellipse
+
style="display:inline;opacity:1;fill:#ee0000;fill-opacity:1;stroke:#cc0000;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="ellipse12300"
+ cx="694.58264"
+ cy="647.3053"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ <ellipse
+ cy="628.31934"
+ cx="649.61285"
+ id="ellipse12258-3-0"
+
style="display:inline;opacity:1;fill:#ee0000;fill-opacity:1;stroke:#cc0000;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ rx="4.1581793"
+ ry="4.1593032"
+ transform="translate(-387.41463,-542.5412)" />
+ </g>
+ <g
+ transform="translate(0,-20)"
+ style="display:none"
+ id="layer6">
+ <ellipse
+ cy="276.32968"
+ cx="159.80099"
+ id="ellipse12282-8-9-0"
+
style="display:inline;opacity:1;fill:#ee0000;fill-opacity:1;stroke:#ee0000;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0.97635139"
+ rx="4.1581793"
+ ry="4.1593032" />
+ <ellipse
+ cy="259.99252"
+ cx="159.80099"
+ id="ellipse12282-8-9"
+
style="display:inline;opacity:1;fill:#ee0000;fill-opacity:1;stroke:#ee0000;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0.97635139"
+ rx="4.1581793"
+ ry="4.1593032" />
+ </g>
+ <g
+ id="g975"
+ style="display:inline"
+ transform="translate(-387.41463,-609.81931)">
+ <g
+ id="text973"
+
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16.53852463px;line-height:125%;font-family:Ubuntu;-inkscape-font-specification:Ubuntu;letter-spacing:0px;word-spacing:0px;display:inline;opacity:1;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.03365779px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;image-rendering:auto"
+ aria-label="gnu net">
+ <path
+ id="path977"
+
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:50.66666794px;font-family:'Anonymous
Pro';-inkscape-font-specification:'Anonymous Pro
Bold';fill:#292929;stroke-width:1.03365779px;fill-opacity:1"
+ d="m 489.62118,868.96318 q 0,2.375 -0.81641,4.23046 -0.81641,1.85547
-2.30078,3.14193 -1.45964,1.28646 -3.46354,1.95443 -1.97917,0.69271
-4.42839,0.69271 -6.01172,0 -10.26693,-3.63672 l 2.42448,-3.95834 q
3.53776,3.04297 7.84245,3.04297 2.64714,0 4.25521,-1.31119 1.63281,-1.28646
1.63281,-4.0573 v -2.47395 q -1.58333,1.36067 -3.04297,2.02864 -1.45963,0.64323
-3.38932,0.64323 -2.22656,0 -4.13151,-0.9401 -1.90495,-0.94011
-3.29037,-2.54818 -1.36067,-1.63281 -2.15234,-3.78516 -0.76 [...]
+ <path
+ id="path979"
+
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:50.66666794px;font-family:'Anonymous
Pro';-inkscape-font-specification:'Anonymous Pro
Bold';fill:#292929;stroke-width:1.03365779px;fill-opacity:1"
+ d="m 514.82951,869.21057 h -5.12109 v -14.22526 q 0,-2.69661
-1.01433,-3.73568 -1.01432,-1.03906 -2.94401,-1.03906 -2.84505,0
-4.65104,2.30078 -1.78125,2.30078 -1.78125,6.35808 v 10.34114 h -5.12109 v
-23.05729 h 5.12109 v 5.78906 q 0.76693,-2.99349 2.84505,-4.65104
2.07813,-1.68229 5.1211,-1.68229 3.53776,0 5.54166,2.30078 2.00391,2.30078
2.00391,7.07552 z" />
+ <path
+ id="path981"
+
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:50.66666794px;font-family:'Anonymous
Pro';-inkscape-font-specification:'Anonymous Pro
Bold';fill:#292929;stroke-width:1.03365779px;fill-opacity:1"
+ d="m 518.90503,846.15328 h 5.12109 v 14.25 q 0,2.67187
1.01433,3.71094 1.01432,1.03906 2.94401,1.03906 2.82031,0 4.6263,-2.30078
1.80599,-2.30078 1.80599,-6.35807 v -10.34115 h 5.12109 v 23.05729 h -5.12109 v
-5.76432 q -0.76693,2.96875 -2.84505,4.65104 -2.07813,1.68229 -5.1211,1.68229
-3.53776,0 -5.54166,-2.30078 -2.00391,-2.32552 -2.00391,-7.07552 z" />
+ <path
+ id="path983"
+
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:50.66666794px;font-family:'Anonymous
Pro';-inkscape-font-specification:'Anonymous Pro
Bold';fill:#292929;stroke-width:1.03365779px;fill-opacity:1"
+ d="m 575.70451,869.21057 h -5.12109 v -14.22526 q 0,-2.69661
-1.01433,-3.73568 -1.01432,-1.03906 -2.94401,-1.03906 -2.84505,0
-4.65104,2.30078 -1.78125,2.30078 -1.78125,6.35808 v 10.34114 h -5.12109 v
-23.05729 h 5.12109 v 5.78906 q 0.76693,-2.99349 2.84505,-4.65104
2.07813,-1.68229 5.1211,-1.68229 3.53776,0 5.54167,2.30078 2.0039,2.30078
2.0039,7.07552 z" />
+ <path
+ id="path985"
+
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:50.66666794px;font-family:'Anonymous
Pro';-inkscape-font-specification:'Anonymous Pro
Bold';fill:#292929;stroke-width:1.03365779px;fill-opacity:1"
+ d="m 583.76832,859.63635 q 0.37109,2.375 2.2513,3.95834
1.90495,1.55859 5.09635,1.55859 2.4987,0 4.32943,-0.76693 1.85547,-0.79166
3.19141,-2.07812 l 2.62239,3.61198 q -2.22656,2.22656 -4.72526,3.04297
-2.47396,0.8164 -5.41797,0.8164 -2.67187,0 -4.97265,-0.89062 -2.30079,-0.89063
-3.98308,-2.47396 -1.68229,-1.60807 -2.64713,-3.8099 -0.94011,-2.20182
-0.94011,-4.89844 0,-2.62239 0.86589,-4.82421 0.89062,-2.22657 2.47396,-3.83464
1.60807,-1.63281 3.83463,-2.52344 2.22657,-0.91536 [...]
+ <path
+ id="path987"
+
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:50.66666794px;font-family:'Anonymous
Pro';-inkscape-font-specification:'Anonymous Pro
Bold';fill:#292929;stroke-width:1.03365779px;fill-opacity:1"
+ d="m 627.08081,861.86291 q -0.39583,3.63672 -2.86979,5.78907
-2.44922,2.1276 -6.13542,2.1276 -2.02864,0 -3.71094,-0.66797 -1.68229,-0.66797
-2.86979,-1.85547 -1.1875,-1.1875 -1.85547,-2.84505 -0.64322,-1.68229
-0.64322,-3.66146 v -9.97005 h -5.22006 v -4.6263 h 5.22006 v -9.22787 h
5.12109 v 9.22787 h 9.67318 v 4.6263 h -9.67318 v 9.97005 q 0,2.22657
1.08854,3.31511 1.08854,1.08854 2.86979,1.08854 2.17709,0 3.24089,-1.26172
1.0638,-1.26172 1.26172,-3.04297 z" />
+ </g>
+ </g>
+</svg>
diff --git a/contrib/gnunet-arch-full.svg b/contrib/gnunet-arch-full.svg
new file mode 100644
index 000000000..766f2b855
--- /dev/null
+++ b/contrib/gnunet-arch-full.svg
@@ -0,0 +1,648 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
+ "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<!-- Generated by graphviz version 2.38.0 (20140413.2041)
+ -->
+<!-- Title: dependencies Pages: 1 -->
+<svg width="1277pt" height="836pt"
+ viewBox="0.00 0.00 1276.81 836.00" xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink">
+<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 832)">
+<title>dependencies</title>
+<polygon fill="white" stroke="none" points="-4,4 -4,-832 1272.81,-832
1272.81,4 -4,4"/>
+<!-- voting -->
+<g id="node1" class="node"><title>voting</title>
+<polygon fill="none" stroke="black" points="120.944,-743.562 80,-756
39.0559,-743.562 39.0942,-723.438 120.906,-723.438 120.944,-743.562"/>
+<text text-anchor="middle" x="80" y="-734.3" font-family="Times,serif"
font-size="14.00">voting</text>
+</g>
+<!-- consensus -->
+<g id="node2" class="node"><title>consensus</title>
+<ellipse fill="none" stroke="black" cx="112" cy="-594" rx="46.2923" ry="18"/>
+<text text-anchor="middle" x="112" y="-590.3" font-family="Times,serif"
font-size="14.00">consensus</text>
+</g>
+<!-- voting->consensus -->
+<g id="edge1" class="edge"><title>voting->consensus</title>
+<path fill="none" stroke="black" d="M121.028,-728.482C145.315,-721.103
174.155,-707.724 189,-684 197.487,-670.436 196.445,-662.162 189,-648
180.933,-632.654 166.19,-620.887 151.748,-612.383"/>
+<polygon fill="black" stroke="black" points="153.308,-609.247 142.857,-607.508
149.942,-615.385 153.308,-609.247"/>
+</g>
+<!-- identity -->
+<g id="node3" class="node"><title>identity</title>
+<ellipse fill="none" stroke="black" cx="282" cy="-450" rx="37.8943" ry="18"/>
+<text text-anchor="middle" x="282" y="-446.3" font-family="Times,serif"
font-size="14.00">identity</text>
+</g>
+<!-- voting->identity -->
+<g id="edge2" class="edge"><title>voting->identity</title>
+<path fill="none" stroke="black" d="M58.5145,-723.377C45.8789,-714.02
31.0387,-700.353 24,-684 5.02284,-639.911 -2.50901,-616.016 24,-576
46.6577,-541.798 71.8444,-557.396 109,-540 158.351,-516.894 214.207,-487.564
248.77,-469.032"/>
+<polygon fill="black" stroke="black" points="250.781,-471.924 257.931,-464.105
247.466,-465.759 250.781,-471.924"/>
+</g>
+<!-- cadet -->
+<g id="node4" class="node"><title>cadet</title>
+<ellipse fill="none" stroke="black" cx="538" cy="-450" rx="29.4969" ry="18"/>
+<text text-anchor="middle" x="538" y="-446.3" font-family="Times,serif"
font-size="14.00">cadet</text>
+</g>
+<!-- voting->cadet -->
+<g id="edge3" class="edge"><title>voting->cadet</title>
+<path fill="none" stroke="black" d="M72.0051,-723.243C55.682,-693.149
22.8306,-620.604 57,-576 70.8829,-557.877 390.653,-484.265 500.977,-459.316"/>
+<polygon fill="black" stroke="black" points="501.999,-462.673 510.983,-457.057
500.458,-455.845 501.999,-462.673"/>
+</g>
+<!-- secretsharing -->
+<g id="node5" class="node"><title>secretsharing</title>
+<ellipse fill="none" stroke="black" cx="123" cy="-666" rx="57.3905" ry="18"/>
+<text text-anchor="middle" x="123" y="-662.3" font-family="Times,serif"
font-size="14.00">secretsharing</text>
+</g>
+<!-- voting->secretsharing -->
+<g id="edge4" class="edge"><title>voting->secretsharing</title>
+<path fill="none" stroke="black" d="M88.4954,-723.17C93.8716,-714.418
100.986,-702.837 107.357,-692.466"/>
+<polygon fill="black" stroke="black" points="110.45,-694.117 112.702,-683.764
104.486,-690.453 110.45,-694.117"/>
+</g>
+<!-- consensus->cadet -->
+<g id="edge72" class="edge"><title>consensus->cadet</title>
+<path fill="none" stroke="black" d="M146.507,-581.905C153.275,-579.85
160.34,-577.79 167,-576 236.135,-557.417 256.193,-562.96 324,-540
360.547,-527.625 367.474,-519.056 403,-504 437.068,-489.562 476.509,-474.236
503.927,-463.798"/>
+<polygon fill="black" stroke="black" points="505.344,-467.004 513.453,-460.185
502.862,-460.459 505.344,-467.004"/>
+</g>
+<!-- set -->
+<g id="node24" class="node"><title>set</title>
+<ellipse fill="none" stroke="black" cx="517" cy="-522" rx="27" ry="18"/>
+<text text-anchor="middle" x="517" y="-518.3" font-family="Times,serif"
font-size="14.00">set</text>
+</g>
+<!-- consensus->set -->
+<g id="edge71" class="edge"><title>consensus->set</title>
+<path fill="none" stroke="black" d="M145.818,-581.678C152.772,-579.596
160.083,-577.583 167,-576 182.24,-572.511 394.44,-541.075 480.815,-528.33"/>
+<polygon fill="black" stroke="black" points="481.561,-531.758 490.943,-526.837
480.539,-524.833 481.561,-531.758"/>
+</g>
+<!-- dht -->
+<g id="node7" class="node"><title>dht</title>
+<ellipse fill="none" stroke="black" cx="756" cy="-378" rx="27" ry="18"/>
+<text text-anchor="middle" x="756" y="-374.3" font-family="Times,serif"
font-size="14.00">dht</text>
+</g>
+<!-- cadet->dht -->
+<g id="edge51" class="edge"><title>cadet->dht</title>
+<path fill="none" stroke="black" d="M563.434,-440.833C602.822,-428.186
678.592,-403.856 722.428,-389.78"/>
+<polygon fill="black" stroke="black" points="723.607,-393.078 732.058,-386.688
721.467,-386.413 723.607,-393.078"/>
+</g>
+<!-- core -->
+<g id="node8" class="node"><title>core</title>
+<ellipse fill="none" stroke="black" cx="555" cy="-234" rx="27" ry="18"/>
+<text text-anchor="middle" x="555" y="-230.3" font-family="Times,serif"
font-size="14.00">core</text>
+</g>
+<!-- cadet->core -->
+<g id="edge50" class="edge"><title>cadet->core</title>
+<path fill="none" stroke="black" d="M539.362,-431.849C542.303,-394.832
549.266,-307.181 552.824,-262.386"/>
+<polygon fill="black" stroke="black" points="556.328,-262.478 553.631,-252.232
549.35,-261.924 556.328,-262.478"/>
+</g>
+<!-- block -->
+<g id="node11" class="node"><title>block</title>
+<polygon fill="none" stroke="black" points="429,-324 385.598,-306 429,-288
472.402,-306 429,-324"/>
+<text text-anchor="middle" x="429" y="-302.3" font-family="Times,serif"
font-size="14.00">block</text>
+</g>
+<!-- cadet->block -->
+<g id="edge52" class="edge"><title>cadet->block</title>
+<path fill="none" stroke="blue" stroke-dasharray="1,5"
d="M522.106,-434.467C511.33,-424.227 497.085,-409.913 486,-396 469.058,-374.736
452.633,-348.272 441.802,-329.75"/>
+<polygon fill="blue" stroke="blue" points="444.702,-327.773 436.674,-320.859
438.638,-331.27 444.702,-327.773"/>
+</g>
+<!-- secretsharing->consensus -->
+<g id="edge5" class="edge"><title>secretsharing->consensus</title>
+<path fill="none" stroke="black" d="M120.281,-647.697C119.069,-639.983
117.612,-630.712 116.261,-622.112"/>
+<polygon fill="black" stroke="black" points="119.698,-621.44 114.688,-612.104
112.783,-622.526 119.698,-621.44"/>
+</g>
+<!-- fs -->
+<g id="node6" class="node"><title>fs</title>
+<polygon fill="none" stroke="black" points="100,-527.562 73,-540 46,-527.562
46.0252,-507.438 99.9748,-507.438 100,-527.562"/>
+<text text-anchor="middle" x="73" y="-518.3" font-family="Times,serif"
font-size="14.00">fs</text>
+</g>
+<!-- fs->identity -->
+<g id="edge12" class="edge"><title>fs->identity</title>
+<path fill="none" stroke="black" d="M100.21,-509.307C104.786,-507.46
109.507,-505.625 114,-504 164.764,-485.643 178.566,-484.387 230,-468
233.971,-466.735 238.108,-465.404 242.237,-464.067"/>
+<polygon fill="black" stroke="black" points="243.351,-467.386 251.778,-460.965
241.186,-460.729 243.351,-467.386"/>
+</g>
+<!-- fs->cadet -->
+<g id="edge9" class="edge"><title>fs->cadet</title>
+<path fill="none" stroke="black" d="M100.01,-516.934C178.772,-505.077
408.387,-470.512 499.803,-456.75"/>
+<polygon fill="black" stroke="black" points="500.372,-460.204 509.74,-455.254
499.33,-453.282 500.372,-460.204"/>
+</g>
+<!-- fs->dht -->
+<g id="edge6" class="edge"><title>fs->dht</title>
+<path fill="none" stroke="black" d="M100.081,-509.411C132.571,-495.433
183.726,-473.164 192,-468 213.144,-454.802 212.035,-441.688 235,-432
322.67,-395.017 615.27,-383.079 719.081,-379.955"/>
+<polygon fill="black" stroke="black" points="719.199,-383.453 729.093,-379.664
718.996,-376.456 719.199,-383.453"/>
+</g>
+<!-- fs->core -->
+<g id="edge7" class="edge"><title>fs->core</title>
+<path fill="none" stroke="black" d="M65.0877,-507.277C55.5997,-488.827
42.6595,-455.618 57,-432 93.0072,-372.699 269.007,-312.27 334,-288
397.135,-264.424 474.404,-248.714 518.841,-240.869"/>
+<polygon fill="black" stroke="black" points="519.614,-244.287 528.871,-239.134
518.42,-237.39 519.614,-244.287"/>
+</g>
+<!-- datastore -->
+<g id="node9" class="node"><title>datastore</title>
+<ellipse fill="none" stroke="black" cx="108" cy="-450" rx="42.4939" ry="18"/>
+<text text-anchor="middle" x="108" y="-446.3" font-family="Times,serif"
font-size="14.00">datastore</text>
+</g>
+<!-- fs->datastore -->
+<g id="edge8" class="edge"><title>fs->datastore</title>
+<path fill="none" stroke="black" d="M79.9149,-507.17C84.2467,-498.507
89.9645,-487.071 95.1098,-476.78"/>
+<polygon fill="black" stroke="black" points="98.2763,-478.274 99.618,-467.764
92.0153,-475.143 98.2763,-478.274"/>
+</g>
+<!-- ats -->
+<g id="node10" class="node"><title>ats</title>
+<ellipse fill="none" stroke="black" cx="385" cy="-90" rx="27" ry="18"/>
+<text text-anchor="middle" x="385" y="-86.3" font-family="Times,serif"
font-size="14.00">ats</text>
+</g>
+<!-- fs->ats -->
+<g id="edge10" class="edge"><title>fs->ats</title>
+<path fill="none" stroke="black" d="M60.2844,-507.296C39.3694,-483.267
0,-431.113 0,-379 0,-379 0,-379 0,-233 0,-159.097 252.872,-111.714
348.742,-96.4063"/>
+<polygon fill="black" stroke="black" points="349.504,-99.8296 358.84,-94.8203
348.418,-92.9144 349.504,-99.8296"/>
+</g>
+<!-- fs->block -->
+<g id="edge11" class="edge"><title>fs->block</title>
+<path fill="none" stroke="blue" stroke-dasharray="1,5"
d="M99.0792,-507.426C116.81,-497.613 140.343,-483.417 159,-468 175.732,-454.174
174.815,-445.258 192,-432 259.224,-380.139 351.062,-338.689 398.245,-319.166"/>
+<polygon fill="blue" stroke="blue" points="399.679,-322.361 407.611,-315.337
397.03,-315.881 399.679,-322.361"/>
+</g>
+<!-- dht->core -->
+<g id="edge42" class="edge"><title>dht->core</title>
+<path fill="none" stroke="black" d="M780.722,-370.233C802.496,-362.816
832.877,-348.569 847,-324 854.974,-310.128 857.48,-300.09 847,-288
810.092,-245.421 650.341,-266.908 596,-252 592.628,-251.075 589.164,-249.944
585.745,-248.709"/>
+<polygon fill="black" stroke="black" points="586.936,-245.416 576.348,-245.037
584.388,-251.936 586.936,-245.416"/>
+</g>
+<!-- dht->block -->
+<g id="edge44" class="edge"><title>dht->block</title>
+<path fill="none" stroke="black" d="M730.132,-372.774C681.84,-364.697
574.817,-345.908 486,-324 478.104,-322.052 469.673,-319.694 461.782,-317.363"/>
+<polygon fill="black" stroke="black" points="462.742,-313.997 452.157,-314.456
460.718,-320.698 462.742,-313.997"/>
+</g>
+<!-- nse -->
+<g id="node27" class="node"><title>nse</title>
+<ellipse fill="none" stroke="black" cx="811" cy="-306" rx="27" ry="18"/>
+<text text-anchor="middle" x="811" y="-302.3" font-family="Times,serif"
font-size="14.00">nse</text>
+</g>
+<!-- dht->nse -->
+<g id="edge43" class="edge"><title>dht->nse</title>
+<path fill="none" stroke="black" d="M767.934,-361.811C775.214,-352.546
784.663,-340.52 792.854,-330.094"/>
+<polygon fill="black" stroke="black" points="795.663,-332.185 799.089,-322.159
790.159,-327.86 795.663,-332.185"/>
+</g>
+<!-- datacache -->
+<g id="node28" class="node"><title>datacache</title>
+<polygon fill="none" stroke="black" points="702,-324 637.818,-306 702,-288
766.182,-306 702,-324"/>
+<text text-anchor="middle" x="702" y="-302.3" font-family="Times,serif"
font-size="14.00">datacache</text>
+</g>
+<!-- dht->datacache -->
+<g id="edge45" class="edge"><title>dht->datacache</title>
+<path fill="none" stroke="black" d="M744.016,-361.465C736.66,-351.93
727.125,-339.57 718.998,-329.034"/>
+<polygon fill="black" stroke="black" points="721.73,-326.846 712.851,-321.066
716.187,-331.121 721.73,-326.846"/>
+</g>
+<!-- peerinfo -->
+<g id="node29" class="node"><title>peerinfo</title>
+<ellipse fill="none" stroke="black" cx="518" cy="-90" rx="40.0939" ry="18"/>
+<text text-anchor="middle" x="518" y="-86.3" font-family="Times,serif"
font-size="14.00">peerinfo</text>
+</g>
+<!-- dht->peerinfo -->
+<g id="edge46" class="edge"><title>dht->peerinfo</title>
+<path fill="none" stroke="black" d="M728.828,-376.457C687.438,-374.282
608.033,-364.658 557,-324 495.436,-274.952 504.26,-168.494 512.535,-118.27"/>
+<polygon fill="black" stroke="black" points="516.027,-118.624 514.32,-108.168
509.133,-117.406 516.027,-118.624"/>
+</g>
+<!-- hello -->
+<g id="node30" class="node"><title>hello</title>
+<polygon fill="none" stroke="black" points="854,-36 813.614,-18
854,-3.55271e-15 894.386,-18 854,-36"/>
+<text text-anchor="middle" x="854" y="-14.3" font-family="Times,serif"
font-size="14.00">hello</text>
+</g>
+<!-- dht->hello -->
+<g id="edge47" class="edge"><title>dht->hello</title>
+<path fill="none" stroke="black" d="M782.364,-373.864C833.24,-367.278
942.225,-350.399 968,-324 996.322,-294.992 988,-275.542 988,-235 988,-235
988,-235 988,-161 988,-99.7534 921.245,-54.2239 881.968,-32.736"/>
+<polygon fill="black" stroke="black" points="883.108,-29.3792 872.632,-27.796
879.834,-35.5665 883.108,-29.3792"/>
+</g>
+<!-- transport -->
+<g id="node33" class="node"><title>transport</title>
+<ellipse fill="none" stroke="black" cx="680" cy="-162" rx="42.4939" ry="18"/>
+<text text-anchor="middle" x="680" y="-158.3" font-family="Times,serif"
font-size="14.00">transport</text>
+</g>
+<!-- core->transport -->
+<g id="edge58" class="edge"><title>core->transport</title>
+<path fill="none" stroke="black" d="M575.083,-221.753C594.251,-211.02
623.495,-194.643 646.244,-181.903"/>
+<polygon fill="black" stroke="black" points="648.219,-184.809 655.234,-176.869
644.799,-178.701 648.219,-184.809"/>
+</g>
+<!-- exit -->
+<g id="node12" class="node"><title>exit</title>
+<polygon fill="none" stroke="black" points="952,-540 898,-540 898,-504
952,-504 952,-540"/>
+<text text-anchor="middle" x="925" y="-518.3" font-family="Times,serif"
font-size="14.00">exit</text>
+</g>
+<!-- exit->cadet -->
+<g id="edge13" class="edge"><title>exit->cadet</title>
+<path fill="none" stroke="black" d="M897.67,-514.323C883.742,-511.021
866.513,-507.093 851,-504 752.337,-484.331 635.236,-465.765 576.155,-456.729"/>
+<polygon fill="black" stroke="black" points="576.571,-453.252 566.158,-455.206
575.517,-460.172 576.571,-453.252"/>
+</g>
+<!-- tun -->
+<g id="node13" class="node"><title>tun</title>
+<polygon fill="none" stroke="black" points="929,-468 897.995,-450 929,-432
960.005,-450 929,-468"/>
+<text text-anchor="middle" x="929" y="-446.3" font-family="Times,serif"
font-size="14.00">tun</text>
+</g>
+<!-- exit->tun -->
+<g id="edge14" class="edge"><title>exit->tun</title>
+<path fill="none" stroke="black" d="M925.989,-503.697C926.436,-495.868
926.975,-486.435 927.473,-477.728"/>
+<polygon fill="black" stroke="black" points="930.974,-477.806 928.05,-467.622
923.985,-477.406 930.974,-477.806"/>
+</g>
+<!-- dnsstub -->
+<g id="node14" class="node"><title>dnsstub</title>
+<polygon fill="none" stroke="black" points="1032,-468 978.877,-450 1032,-432
1085.12,-450 1032,-468"/>
+<text text-anchor="middle" x="1032" y="-446.3" font-family="Times,serif"
font-size="14.00">dnsstub</text>
+</g>
+<!-- exit->dnsstub -->
+<g id="edge15" class="edge"><title>exit->dnsstub</title>
+<path fill="none" stroke="black" d="M951.175,-503.876C967.88,-492.948
989.443,-478.841 1006.1,-467.947"/>
+<polygon fill="black" stroke="black" points="1008.33,-470.67 1014.78,-462.266
1004.49,-464.812 1008.33,-470.67"/>
+</g>
+<!-- vpn -->
+<g id="node15" class="node"><title>vpn</title>
+<ellipse fill="none" stroke="black" cx="815" cy="-522" rx="27" ry="18"/>
+<text text-anchor="middle" x="815" y="-518.3" font-family="Times,serif"
font-size="14.00">vpn</text>
+</g>
+<!-- vpn->cadet -->
+<g id="edge16" class="edge"><title>vpn->cadet</title>
+<path fill="none" stroke="black" d="M793.129,-511.116C787.017,-508.578
780.317,-506.003 774,-504 705.524,-482.293 623.185,-465.931 576.085,-457.463"/>
+<polygon fill="black" stroke="black" points="576.482,-453.979 566.025,-455.678
575.26,-460.871 576.482,-453.979"/>
+</g>
+<!-- vpn->tun -->
+<g id="edge18" class="edge"><title>vpn->tun</title>
+<path fill="none" stroke="black" d="M834.339,-509.125C854.149,-496.961
884.945,-478.051 905.995,-465.126"/>
+<polygon fill="black" stroke="black" points="907.942,-468.038 914.632,-459.822
904.279,-462.072 907.942,-468.038"/>
+</g>
+<!-- regex -->
+<g id="node16" class="node"><title>regex</title>
+<ellipse fill="none" stroke="black" cx="756" cy="-450" rx="30.5947" ry="18"/>
+<text text-anchor="middle" x="756" y="-446.3" font-family="Times,serif"
font-size="14.00">regex</text>
+</g>
+<!-- vpn->regex -->
+<g id="edge17" class="edge"><title>vpn->regex</title>
+<path fill="none" stroke="black" d="M802.198,-505.811C794.496,-496.673
784.53,-484.849 775.827,-474.524"/>
+<polygon fill="black" stroke="black" points="778.307,-472.035 769.186,-466.644
772.954,-476.546 778.307,-472.035"/>
+</g>
+<!-- regex->dht -->
+<g id="edge57" class="edge"><title>regex->dht</title>
+<path fill="none" stroke="black" d="M756,-431.697C756,-423.983 756,-414.712
756,-406.112"/>
+<polygon fill="black" stroke="black" points="759.5,-406.104 756,-396.104
752.5,-406.104 759.5,-406.104"/>
+</g>
+<!-- regex->block -->
+<g id="edge49" class="edge"><title>regex->block</title>
+<path fill="none" stroke="blue" stroke-dasharray="1,5"
d="M732.22,-438.673C673.767,-413.29 523.157,-347.888 458.838,-319.957"/>
+<polygon fill="blue" stroke="blue" points="459.85,-316.581 449.283,-315.808
457.061,-323.002 459.85,-316.581"/>
+</g>
+<!-- pt -->
+<g id="node17" class="node"><title>pt</title>
+<polygon fill="none" stroke="black" points="986,-599.562 959,-612 932,-599.562
932.025,-579.438 985.975,-579.438 986,-599.562"/>
+<text text-anchor="middle" x="959" y="-590.3" font-family="Times,serif"
font-size="14.00">pt</text>
+</g>
+<!-- pt->cadet -->
+<g id="edge19" class="edge"><title>pt->cadet</title>
+<path fill="none" stroke="black" d="M931.717,-579.439C928.807,-578.197
925.864,-577.023 923,-576 860.875,-553.809 836.841,-571.725 779,-540
758.602,-528.812 761.339,-515.294 741,-504 688.34,-474.76 619.008,-461.18
576.516,-455.23"/>
+<polygon fill="black" stroke="black" points="576.951,-451.758 566.577,-453.91
576.029,-458.697 576.951,-451.758"/>
+</g>
+<!-- pt->vpn -->
+<g id="edge20" class="edge"><title>pt->vpn</title>
+<path fill="none" stroke="black" d="M931.915,-579.834C907.352,-567.894
871.179,-550.309 845.585,-537.868"/>
+<polygon fill="black" stroke="black" points="846.864,-534.598 836.34,-533.373
843.803,-540.893 846.864,-534.598"/>
+</g>
+<!-- dns -->
+<g id="node18" class="node"><title>dns</title>
+<ellipse fill="none" stroke="black" cx="997" cy="-522" rx="27" ry="18"/>
+<text text-anchor="middle" x="997" y="-518.3" font-family="Times,serif"
font-size="14.00">dns</text>
+</g>
+<!-- pt->dns -->
+<g id="edge21" class="edge"><title>pt->dns</title>
+<path fill="none" stroke="black" d="M966.508,-579.17C971.277,-570.385
977.594,-558.748 983.241,-548.346"/>
+<polygon fill="black" stroke="black" points="986.48,-549.716 988.175,-539.257
980.328,-546.376 986.48,-549.716"/>
+</g>
+<!-- dnsparser -->
+<g id="node19" class="node"><title>dnsparser</title>
+<polygon fill="none" stroke="black" points="1143,-540 1080.49,-522 1143,-504
1205.51,-522 1143,-540"/>
+<text text-anchor="middle" x="1143" y="-518.3" font-family="Times,serif"
font-size="14.00">dnsparser</text>
+</g>
+<!-- pt->dnsparser -->
+<g id="edge22" class="edge"><title>pt->dnsparser</title>
+<path fill="none" stroke="black" d="M986.15,-582.671C1018.5,-570.365
1072.61,-549.781 1108.05,-536.296"/>
+<polygon fill="black" stroke="black" points="1109.42,-539.521 1117.52,-532.694
1106.93,-532.979 1109.42,-539.521"/>
+</g>
+<!-- dns->tun -->
+<g id="edge23" class="edge"><title>dns->tun</title>
+<path fill="none" stroke="black" d="M982.91,-506.496C972.543,-495.824
958.362,-481.226 947.147,-469.681"/>
+<polygon fill="black" stroke="black" points="949.418,-466.995 939.94,-462.261
944.397,-471.873 949.418,-466.995"/>
+</g>
+<!-- dns->dnsstub -->
+<g id="edge24" class="edge"><title>dns->dnsstub</title>
+<path fill="none" stroke="black" d="M1005.12,-504.765C1009.59,-495.828
1015.21,-484.573 1020.16,-474.673"/>
+<polygon fill="black" stroke="black" points="1023.3,-476.227 1024.64,-465.717
1017.04,-473.096 1023.3,-476.227"/>
+</g>
+<!-- gnsrecord -->
+<g id="node25" class="node"><title>gnsrecord</title>
+<ellipse fill="none" stroke="black" cx="1192" cy="-450" rx="45.4919" ry="18"/>
+<text text-anchor="middle" x="1192" y="-446.3" font-family="Times,serif"
font-size="14.00">gnsrecord</text>
+</g>
+<!-- dnsparser->gnsrecord -->
+<g id="edge39" class="edge"><title>dnsparser->gnsrecord</title>
+<path fill="none" stroke="blue" stroke-dasharray="1,5"
d="M1152.92,-506.834C1159.12,-497.971 1167.29,-486.304 1174.55,-475.928"/>
+<polygon fill="blue" stroke="blue" points="1177.51,-477.805 1180.38,-467.606
1171.77,-473.791 1177.51,-477.805"/>
+</g>
+<!-- zonemaster -->
+<g id="node20" class="node"><title>zonemaster</title>
+<polygon fill="none" stroke="black" points="914.433,-599.562 851,-612
787.567,-599.562 787.626,-579.438 914.374,-579.438 914.433,-599.562"/>
+<text text-anchor="middle" x="851" y="-590.3" font-family="Times,serif"
font-size="14.00">zonemaster</text>
+</g>
+<!-- zonemaster->dht -->
+<g id="edge26" class="edge"><title>zonemaster->dht</title>
+<path fill="none" stroke="black" d="M853.642,-579.298C856.499,-561.438
859.583,-529.479 851,-504 836.849,-461.994 802.343,-422.916 779.052,-399.996"/>
+<polygon fill="black" stroke="black" points="781.264,-397.267 771.628,-392.861
776.413,-402.314 781.264,-397.267"/>
+</g>
+<!-- namestore -->
+<g id="node21" class="node"><title>namestore</title>
+<ellipse fill="none" stroke="black" cx="685" cy="-522" rx="47.3916" ry="18"/>
+<text text-anchor="middle" x="685" y="-518.3" font-family="Times,serif"
font-size="14.00">namestore</text>
+</g>
+<!-- zonemaster->namestore -->
+<g id="edge25" class="edge"><title>zonemaster->namestore</title>
+<path fill="none" stroke="black" d="M818.599,-579.337C791.812,-568.041
753.653,-551.95 724.971,-539.855"/>
+<polygon fill="black" stroke="black" points="726.212,-536.58 715.637,-535.919
723.492,-543.03 726.212,-536.58"/>
+</g>
+<!-- namestore->identity -->
+<g id="edge37" class="edge"><title>namestore->identity</title>
+<path fill="none" stroke="black" d="M642.634,-513.641C566.046,-500.338
405.247,-472.408 326.867,-458.793"/>
+<polygon fill="black" stroke="black" points="327.275,-455.312 316.823,-457.049
326.077,-462.208 327.275,-455.312"/>
+</g>
+<!-- namestore->gnsrecord -->
+<g id="edge38" class="edge"><title>namestore->gnsrecord</title>
+<path fill="none" stroke="black" d="M726.085,-512.971C742.503,-509.919
761.609,-506.564 779,-504 918.405,-483.451 954.522,-488.05 1094,-468
1109.42,-465.784 1126.13,-463.019 1141.32,-460.368"/>
+<polygon fill="black" stroke="black" points="1142.32,-463.746 1151.56,-458.558
1141.1,-456.853 1142.32,-463.746"/>
+</g>
+<!-- gns -->
+<g id="node22" class="node"><title>gns</title>
+<ellipse fill="none" stroke="black" cx="850" cy="-666" rx="27" ry="18"/>
+<text text-anchor="middle" x="850" y="-662.3" font-family="Times,serif"
font-size="14.00">gns</text>
+</g>
+<!-- gns->identity -->
+<g id="edge34" class="edge"><title>gns->identity</title>
+<path fill="none" stroke="black" d="M823.048,-663.899C740.091,-660.169
489.801,-646.281 417,-612 395.952,-602.089 396.543,-591.28 379,-576
359.686,-559.178 350.742,-559.383 334,-540 317.464,-520.856 303.335,-495.717
293.996,-477.041"/>
+<polygon fill="black" stroke="black" points="297.085,-475.39 289.562,-467.93
290.791,-478.453 297.085,-475.39"/>
+</g>
+<!-- gns->dht -->
+<g id="edge28" class="edge"><title>gns->dht</title>
+<path fill="none" stroke="black" d="M870.511,-653.985C875.467,-651.699
880.829,-649.525 886,-648 1002.11,-613.746 1046.93,-664.524 1156,-612
1236.59,-573.194 1305.75,-498.559 1246,-432 1215.85,-398.416 902.601,-384.19
793.343,-380.225"/>
+<polygon fill="black" stroke="black" points="793.243,-376.719 783.125,-379.863
792.995,-383.715 793.243,-376.719"/>
+</g>
+<!-- gns->block -->
+<g id="edge29" class="edge"><title>gns->block</title>
+<path fill="none" stroke="blue" stroke-dasharray="1,5"
d="M822.824,-664.872C770.707,-663.582 654.321,-655.598 569,-612
548.284,-601.414 548.925,-590.83 531,-576 509.902,-558.544 496.079,-562.857
481,-540 438.212,-475.142 430.206,-380.324 428.985,-334.208"/>
+<polygon fill="blue" stroke="blue" points="432.483,-334.033 428.808,-324.096
425.484,-334.156 432.483,-334.033"/>
+</g>
+<!-- gns->dnsstub -->
+<g id="edge33" class="edge"><title>gns->dnsstub</title>
+<path fill="none" stroke="black" d="M871.065,-654.325C875.905,-652.077
881.078,-649.834 886,-648 941.778,-627.217 973.486,-654.658 1015,-612
1049.82,-576.222 1044.5,-512.583 1037.99,-476.971"/>
+<polygon fill="black" stroke="black" points="1041.36,-476 1035.97,-466.88
1034.5,-477.373 1041.36,-476"/>
+</g>
+<!-- gns->vpn -->
+<g id="edge31" class="edge"><title>gns->vpn</title>
+<path fill="none" stroke="black" d="M827.858,-655.35C811.041,-646.688
789.135,-632.213 779,-612 768.086,-590.233 781.353,-564.325 794.756,-546.091"/>
+<polygon fill="black" stroke="black" points="797.832,-547.84 801.242,-537.808
792.321,-543.524 797.832,-547.84"/>
+</g>
+<!-- gns->dns -->
+<g id="edge27" class="edge"><title>gns->dns</title>
+<path fill="none" stroke="black" d="M871.13,-654.496C875.967,-652.239
881.122,-649.949 886,-648 933.377,-629.072 964.65,-653.009 995,-612
1008.03,-594.39 1007.25,-568.995 1003.95,-549.835"/>
+<polygon fill="black" stroke="black" points="1007.35,-549.022 1001.93,-539.921
1000.49,-550.418 1007.35,-549.022"/>
+</g>
+<!-- gns->dnsparser -->
+<g id="edge32" class="edge"><title>gns->dnsparser</title>
+<path fill="none" stroke="black" d="M870.586,-654.227C875.54,-651.931
880.881,-649.692 886,-648 963.461,-622.391 995.505,-653.066 1066,-612
1093.37,-596.054 1115.84,-566.774 1129.29,-546.163"/>
+<polygon fill="black" stroke="black" points="1132.29,-547.978 1134.66,-537.654
1126.37,-544.243 1132.29,-547.978"/>
+</g>
+<!-- revocation -->
+<g id="node23" class="node"><title>revocation</title>
+<ellipse fill="none" stroke="black" cx="474" cy="-594" rx="48.1917" ry="18"/>
+<text text-anchor="middle" x="474" y="-590.3" font-family="Times,serif"
font-size="14.00">revocation</text>
+</g>
+<!-- gns->revocation -->
+<g id="edge30" class="edge"><title>gns->revocation</title>
+<path fill="none" stroke="black" d="M823.776,-661.482C769.658,-654.024
641.808,-635.374 536,-612 531.019,-610.9 525.841,-609.65 520.694,-608.34"/>
+<polygon fill="black" stroke="black" points="521.456,-604.922 510.895,-605.77
519.68,-611.693 521.456,-604.922"/>
+</g>
+<!-- gns->gnsrecord -->
+<g id="edge41" class="edge"><title>gns->gnsrecord</title>
+<path fill="none" stroke="black" d="M870.549,-654.113C875.504,-651.822
880.856,-649.613 886,-648 978.027,-619.137 1009.84,-646.249 1100,-612
1156.37,-590.587 1185.79,-592.754 1215,-540 1225.98,-520.174 1217.7,-494.957
1208.15,-476.431"/>
+<polygon fill="black" stroke="black" points="1211.2,-474.717 1203.29,-467.672
1205.08,-478.114 1211.2,-474.717"/>
+</g>
+<!-- revocation->core -->
+<g id="edge35" class="edge"><title>revocation->core</title>
+<path fill="none" stroke="black" d="M447.586,-578.755C410.639,-556.683
348,-510.49 348,-451 348,-451 348,-451 348,-377 348,-335.398 347.208,-317.038
377,-288 415.046,-250.916 477.859,-239.613 517.794,-236.267"/>
+<polygon fill="black" stroke="black" points="518.191,-239.747 527.918,-235.547
517.695,-232.765 518.191,-239.747"/>
+</g>
+<!-- revocation->set -->
+<g id="edge36" class="edge"><title>revocation->set</title>
+<path fill="none" stroke="black" d="M484.409,-576.055C489.683,-567.469
496.183,-556.888 501.987,-547.439"/>
+<polygon fill="black" stroke="black" points="505.024,-549.182 507.276,-538.829
499.06,-545.518 505.024,-549.182"/>
+</g>
+<!-- set->cadet -->
+<g id="edge75" class="edge"><title>set->cadet</title>
+<path fill="none" stroke="black" d="M522.084,-504.055C524.482,-496.059
527.401,-486.331 530.08,-477.4"/>
+<polygon fill="black" stroke="black" points="533.442,-478.373 532.963,-467.789
526.737,-476.362 533.442,-478.373"/>
+</g>
+<!-- conversation -->
+<g id="node26" class="node"><title>conversation</title>
+<polygon fill="none" stroke="black" points="1017.18,-743.562 948,-756
878.82,-743.562 878.884,-723.438 1017.12,-723.438 1017.18,-743.562"/>
+<text text-anchor="middle" x="948" y="-734.3" font-family="Times,serif"
font-size="14.00">conversation</text>
+</g>
+<!-- conversation->cadet -->
+<g id="edge53" class="edge"><title>conversation->cadet</title>
+<path fill="none" stroke="black" d="M900.537,-723.335C873.864,-714.435
840.677,-701.257 814,-684 756.206,-646.615 759.329,-615.558 703,-576
673.069,-554.981 658.318,-561.866 629,-540 611.601,-527.024 611.36,-519.336
596,-504 585.077,-493.094 572.479,-481.475 561.82,-471.903"/>
+<polygon fill="black" stroke="black" points="563.901,-469.069 554.107,-465.028
559.243,-474.295 563.901,-469.069"/>
+</g>
+<!-- conversation->gns -->
+<g id="edge54" class="edge"><title>conversation->gns</title>
+<path fill="none" stroke="black" d="M928.638,-723.17C913.533,-712.381
892.408,-697.291 875.857,-685.469"/>
+<polygon fill="black" stroke="black" points="877.846,-682.589 867.674,-679.625
873.777,-688.285 877.846,-682.589"/>
+</g>
+<!-- conversation->gnsrecord -->
+<g id="edge40" class="edge"><title>conversation->gnsrecord</title>
+<path fill="none" stroke="blue" stroke-dasharray="1,5"
d="M1017.21,-728.51C1076.25,-719.968 1155.24,-705.041 1179,-684
1241.33,-628.786 1256.97,-583.117 1231,-504 1227.58,-493.58 1221.24,-483.522
1214.65,-475.019"/>
+<polygon fill="blue" stroke="blue" points="1217.15,-472.551 1208.08,-467.08
1211.76,-477.015 1217.15,-472.551"/>
+</g>
+<!-- speaker -->
+<g id="node31" class="node"><title>speaker</title>
+<polygon fill="none" stroke="black" points="948,-684 894.877,-666 948,-648
1001.12,-666 948,-684"/>
+<text text-anchor="middle" x="948" y="-662.3" font-family="Times,serif"
font-size="14.00">speaker</text>
+</g>
+<!-- conversation->speaker -->
+<g id="edge55" class="edge"><title>conversation->speaker</title>
+<path fill="none" stroke="black" d="M948,-723.17C948,-714.919 948,-704.153
948,-694.256"/>
+<polygon fill="black" stroke="black" points="951.5,-694.019 948,-684.019
944.5,-694.019 951.5,-694.019"/>
+</g>
+<!-- microphone -->
+<g id="node32" class="node"><title>microphone</title>
+<polygon fill="none" stroke="black" points="1095,-684 1019.76,-666 1095,-648
1170.24,-666 1095,-684"/>
+<text text-anchor="middle" x="1095" y="-662.3" font-family="Times,serif"
font-size="14.00">microphone</text>
+</g>
+<!-- conversation->microphone -->
+<g id="edge56" class="edge"><title>conversation->microphone</title>
+<path fill="none" stroke="black" d="M976.692,-723.337C1001.14,-711.695
1036.29,-694.958 1061.92,-682.753"/>
+<polygon fill="black" stroke="black" points="1063.71,-685.777 1071.23,-678.318
1060.7,-679.457 1063.71,-685.777"/>
+</g>
+<!-- nse->core -->
+<g id="edge48" class="edge"><title>nse->core</title>
+<path fill="none" stroke="black" d="M790.412,-294.231C785.459,-291.935
780.118,-289.695 775,-288 697.966,-262.487 673.625,-275.652 596,-252
592.83,-251.034 589.569,-249.913 586.336,-248.716"/>
+<polygon fill="black" stroke="black" points="587.428,-245.385 576.841,-244.978
584.864,-251.899 587.428,-245.385"/>
+</g>
+<!-- peerinfo->hello -->
+<g id="edge76" class="edge"><title>peerinfo->hello</title>
+<path fill="none" stroke="black" d="M548.194,-77.9517C554.676,-75.8006
561.524,-73.6914 568,-72 654.752,-49.3407 758.747,-32.6176 814.333,-24.4966"/>
+<polygon fill="black" stroke="black" points="815.063,-27.9277 824.46,-23.0344
814.062,-20.9995 815.063,-27.9277"/>
+</g>
+<!-- transport->ats -->
+<g id="edge66" class="edge"><title>transport->ats</title>
+<path fill="none" stroke="black" d="M644.122,-152.487C587.168,-138.972
476.742,-112.769 420.21,-99.3548"/>
+<polygon fill="black" stroke="black" points="420.844,-95.9082 410.306,-97.0048
419.228,-102.719 420.844,-95.9082"/>
+</g>
+<!-- transport->peerinfo -->
+<g id="edge68" class="edge"><title>transport->peerinfo</title>
+<path fill="none" stroke="black" d="M651.411,-148.647C624.725,-137.116
584.738,-119.837 555.501,-107.204"/>
+<polygon fill="black" stroke="black" points="556.601,-103.867 546.033,-103.113
553.824,-110.292 556.601,-103.867"/>
+</g>
+<!-- transport->hello -->
+<g id="edge67" class="edge"><title>transport->hello</title>
+<path fill="none" stroke="black" d="M721.405,-157.922C756.719,-153.037
806.213,-140.439 835,-108 850.042,-91.0495 854.193,-65.1533 854.935,-45.6573"/>
+<polygon fill="black" stroke="black" points="858.435,-45.6195 855.044,-35.5822
851.436,-45.5437 858.435,-45.6195"/>
+</g>
+<!-- nat -->
+<g id="node36" class="node"><title>nat</title>
+<polygon fill="none" stroke="black" points="796,-108 765.835,-90 796,-72
826.165,-90 796,-108"/>
+<text text-anchor="middle" x="796" y="-86.3" font-family="Times,serif"
font-size="14.00">nat</text>
+</g>
+<!-- transport->nat -->
+<g id="edge69" class="edge"><title>transport->nat</title>
+<path fill="none" stroke="black" d="M703.474,-146.834C723.706,-134.626
752.749,-117.1 772.878,-104.953"/>
+<polygon fill="black" stroke="black" points="774.946,-107.793 781.7,-99.6294
771.33,-101.799 774.946,-107.793"/>
+</g>
+<!-- fragmentation -->
+<g id="node37" class="node"><title>fragmentation</title>
+<polygon fill="none" stroke="black" points="662,-108 576.537,-90 662,-72
747.463,-90 662,-108"/>
+<text text-anchor="middle" x="662" y="-86.3" font-family="Times,serif"
font-size="14.00">fragmentation</text>
+</g>
+<!-- transport->fragmentation -->
+<g id="edge70" class="edge"><title>transport->fragmentation</title>
+<path fill="none" stroke="black" d="M675.643,-144.055C673.556,-135.941
671.011,-126.044 668.687,-117.006"/>
+<polygon fill="black" stroke="black" points="672.073,-116.12 666.193,-107.307
665.294,-117.864 672.073,-116.12"/>
+</g>
+<!-- topology -->
+<g id="node34" class="node"><title>topology</title>
+<polygon fill="none" stroke="black" points="959.5,-324 894.5,-324 894.5,-288
959.5,-288 959.5,-324"/>
+<text text-anchor="middle" x="927" y="-302.3" font-family="Times,serif"
font-size="14.00">topology</text>
+</g>
+<!-- topology->core -->
+<g id="edge61" class="edge"><title>topology->core</title>
+<path fill="none" stroke="black" d="M894.413,-292.17C889.63,-290.593
884.724,-289.139 880,-288 756.312,-258.18 718.97,-284.656 596,-252
592.621,-251.103 589.151,-249.989 585.73,-248.765"/>
+<polygon fill="black" stroke="black" points="586.918,-245.471 576.329,-245.106
584.379,-251.995 586.918,-245.471"/>
+</g>
+<!-- topology->peerinfo -->
+<g id="edge59" class="edge"><title>topology->peerinfo</title>
+<path fill="none" stroke="black" d="M894.233,-295.354C862.315,-285.612
812.655,-269.532 771,-252 705.781,-224.55 688.475,-218.336 629,-180
597.704,-159.827 564.778,-132.553 542.992,-113.534"/>
+<polygon fill="black" stroke="black" points="545.032,-110.666 535.215,-106.682
540.404,-115.919 545.032,-110.666"/>
+</g>
+<!-- topology->hello -->
+<g id="edge62" class="edge"><title>topology->hello</title>
+<path fill="none" stroke="black" d="M922.652,-287.966C910.314,-239.626
875.032,-101.398 860.438,-44.2243"/>
+<polygon fill="black" stroke="black" points="863.829,-43.3557 857.964,-34.532
857.046,-45.087 863.829,-43.3557"/>
+</g>
+<!-- topology->transport -->
+<g id="edge60" class="edge"><title>topology->transport</title>
+<path fill="none" stroke="black" d="M897.206,-287.871C850.798,-261.191
761.564,-209.891 713.17,-182.069"/>
+<polygon fill="black" stroke="black" points="714.758,-178.945 704.344,-176.995
711.269,-185.014 714.758,-178.945"/>
+</g>
+<!-- hostlist -->
+<g id="node35" class="node"><title>hostlist</title>
+<polygon fill="none" stroke="black" points="214,-324 158,-324 158,-288
214,-288 214,-324"/>
+<text text-anchor="middle" x="186" y="-302.3" font-family="Times,serif"
font-size="14.00">hostlist</text>
+</g>
+<!-- hostlist->core -->
+<g id="edge63" class="edge"><title>hostlist->core</title>
+<path fill="none" stroke="black" d="M214.167,-292.599C218.733,-290.88
223.455,-289.271 228,-288 330.933,-259.219 456.746,-244.294 517.975,-238.275"/>
+<polygon fill="black" stroke="black" points="518.666,-241.725 528.286,-237.286
517.998,-234.757 518.666,-241.725"/>
+</g>
+<!-- hostlist->peerinfo -->
+<g id="edge64" class="edge"><title>hostlist->peerinfo</title>
+<path fill="none" stroke="black" d="M212.608,-287.849C273.449,-248.632
422.455,-152.586 487.166,-110.875"/>
+<polygon fill="black" stroke="black" points="489.21,-113.721 495.719,-105.362
485.418,-107.838 489.21,-113.721"/>
+</g>
+<!-- hostlist->hello -->
+<g id="edge65" class="edge"><title>hostlist->hello</title>
+<path fill="none" stroke="black" d="M192.198,-287.715C209.228,-243.039
261.382,-123.627 349,-72 425.521,-26.9118 694.449,-19.9666 805.486,-19.053"/>
+<polygon fill="black" stroke="black" points="805.751,-22.5513 815.727,-18.9823
805.703,-15.5515 805.751,-22.5513"/>
+</g>
+<!-- scalarproduct -->
+<g id="node38" class="node"><title>scalarproduct</title>
+<ellipse fill="none" stroke="black" cx="636" cy="-594" rx="57.6901" ry="18"/>
+<text text-anchor="middle" x="636" y="-590.3" font-family="Times,serif"
font-size="14.00">scalarproduct</text>
+</g>
+<!-- scalarproduct->cadet -->
+<g id="edge74" class="edge"><title>scalarproduct->cadet</title>
+<path fill="none" stroke="black" d="M622.726,-576.035C614.79,-565.742
604.61,-552.266 596,-540 581.021,-518.662 564.9,-493.752 553.465,-475.721"/>
+<polygon fill="black" stroke="black" points="556.241,-473.562 547.943,-466.975
550.322,-477.299 556.241,-473.562"/>
+</g>
+<!-- scalarproduct->set -->
+<g id="edge73" class="edge"><title>scalarproduct->set</title>
+<path fill="none" stroke="black" d="M610.179,-577.811C591.059,-566.564
565.021,-551.248 545.33,-539.665"/>
+<polygon fill="black" stroke="black" points="546.899,-536.527 536.505,-534.473
543.349,-542.56 546.899,-536.527"/>
+</g>
+<!-- secushare -->
+<g id="node39" class="node"><title>secushare</title>
+<polygon fill="none" stroke="black" points="633.366,-815.562 578,-828
522.634,-815.562 522.686,-795.438 633.314,-795.438 633.366,-815.562"/>
+<text text-anchor="middle" x="578" y="-806.3" font-family="Times,serif"
font-size="14.00">secushare</text>
+</g>
+<!-- social -->
+<g id="node42" class="node"><title>social</title>
+<ellipse fill="none" stroke="black" cx="578" cy="-738" rx="31.3957" ry="18"/>
+<text text-anchor="middle" x="578" y="-734.3" font-family="Times,serif"
font-size="14.00">social</text>
+</g>
+<!-- secushare->social -->
+<g id="edge80" class="edge"><title>secushare->social</title>
+<path fill="none" stroke="black" d="M578,-795.17C578,-786.919 578,-776.153
578,-766.256"/>
+<polygon fill="black" stroke="black" points="581.5,-766.019 578,-756.019
574.5,-766.019 581.5,-766.019"/>
+</g>
+<!-- multicast -->
+<g id="node40" class="node"><title>multicast</title>
+<ellipse fill="none" stroke="black" cx="326" cy="-594" rx="43.5923" ry="18"/>
+<text text-anchor="middle" x="326" y="-590.3" font-family="Times,serif"
font-size="14.00">multicast</text>
+</g>
+<!-- multicast->cadet -->
+<g id="edge82" class="edge"><title>multicast->cadet</title>
+<path fill="none" stroke="black" d="M347.889,-578.338C386.803,-552.273
467.927,-497.935 510.526,-469.402"/>
+<polygon fill="black" stroke="black" points="512.642,-472.198 519.003,-463.725
508.747,-466.382 512.642,-472.198"/>
+</g>
+<!-- psyc -->
+<g id="node41" class="node"><title>psyc</title>
+<ellipse fill="none" stroke="black" cx="326" cy="-666" rx="27" ry="18"/>
+<text text-anchor="middle" x="326" y="-662.3" font-family="Times,serif"
font-size="14.00">psyc</text>
+</g>
+<!-- psyc->multicast -->
+<g id="edge81" class="edge"><title>psyc->multicast</title>
+<path fill="none" stroke="black" d="M326,-647.697C326,-639.983 326,-630.712
326,-622.112"/>
+<polygon fill="black" stroke="black" points="329.5,-622.104 326,-612.104
322.5,-622.104 329.5,-622.104"/>
+</g>
+<!-- psycstore -->
+<g id="node43" class="node"><title>psycstore</title>
+<ellipse fill="none" stroke="black" cx="220" cy="-594" rx="44.393" ry="18"/>
+<text text-anchor="middle" x="220" y="-590.3" font-family="Times,serif"
font-size="14.00">psycstore</text>
+</g>
+<!-- psyc->psycstore -->
+<g id="edge79" class="edge"><title>psyc->psycstore</title>
+<path fill="none" stroke="black" d="M307.536,-652.807C291.938,-642.506
269.271,-627.537 250.911,-615.413"/>
+<polygon fill="black" stroke="black" points="252.567,-612.312 242.294,-609.722
248.71,-618.154 252.567,-612.312"/>
+</g>
+<!-- social->gns -->
+<g id="edge78" class="edge"><title>social->gns</title>
+<path fill="none" stroke="black" d="M605.831,-729.838C655.82,-716.973
760.68,-689.987 815.282,-675.935"/>
+<polygon fill="black" stroke="black" points="816.373,-679.268 825.185,-673.386
814.628,-672.489 816.373,-679.268"/>
+</g>
+<!-- social->psyc -->
+<g id="edge77" class="edge"><title>social->psyc</title>
+<path fill="none" stroke="black" d="M550.552,-729.376C504.247,-716.513
410.731,-690.537 360.222,-676.506"/>
+<polygon fill="black" stroke="black" points="360.996,-673.089 350.424,-673.784
359.122,-679.833 360.996,-673.089"/>
+</g>
+<!-- rps -->
+<g id="node44" class="node"><title>rps</title>
+<ellipse fill="none" stroke="black" cx="593" cy="-306" rx="27" ry="18"/>
+<text text-anchor="middle" x="593" y="-302.3" font-family="Times,serif"
font-size="14.00">rps</text>
+</g>
+<!-- rps->core -->
+<g id="edge83" class="edge"><title>rps->core</title>
+<path fill="none" stroke="black" d="M584.187,-288.765C579.582,-280.283
573.845,-269.714 568.679,-260.197"/>
+<polygon fill="black" stroke="black" points="571.613,-258.266 563.766,-251.147
565.461,-261.606 571.613,-258.266"/>
+</g>
+</g>
+</svg>
--
To stop receiving notification emails like this one, please contact
address@hidden
- [GNUnet-SVN] [gnunet] branch master updated (5bd70d462 -> 3256190f2),
gnunet <=
- [GNUnet-SVN] [gnunet] 02/06: README.md: syntax fix, and logo resize, gnunet, 2018/08/01
- [GNUnet-SVN] [gnunet] 05/06: README.md: make architecture svg larger, gnunet, 2018/08/01
- [GNUnet-SVN] [gnunet] 03/06: README.md: Fix image alignment, and sizing, gnunet, 2018/08/01
- [GNUnet-SVN] [gnunet] 04/06: README.md: Add file transfer via cadet usage example., gnunet, 2018/08/01
- [GNUnet-SVN] [gnunet] 06/06: README.md: Add examples for using gnunet-fs, gnunet, 2018/08/01
- [GNUnet-SVN] [gnunet] 01/06: README.md: Create a Markdown README document, gnunet, 2018/08/01