aboutsummaryrefslogtreecommitdiff
path: root/backend
diff options
context:
space:
mode:
Diffstat (limited to 'backend')
-rw-r--r--backend/app/views/index.scala.html39
-rw-r--r--backend/app/views/main.scala.html37
-rw-r--r--backend/app/views/panels/eicas.scala.html35
-rw-r--r--backend/app/views/panels/pfd.scala.html31
-rw-r--r--backend/public/images/instruments/distance.svg218
-rw-r--r--backend/public/images/instruments/generic.svg1063
-rw-r--r--backend/public/stylesheets/main.css18
7 files changed, 1418 insertions, 23 deletions
diff --git a/backend/app/views/index.scala.html b/backend/app/views/index.scala.html
index 7f12df8..654c2a1 100644
--- a/backend/app/views/index.scala.html
+++ b/backend/app/views/index.scala.html
@@ -1,11 +1,40 @@
-@main(""){
- <span id='ct' ></span>
+@main("Main"){
- <object id="attitude" type="image/svg+xml" data="@routes.Assets.at("images/instruments/attitude.svg")" width="300px" height="300px">Cannot load or display SVG image.</object>
+ <div class="row">
+ <div class="col-lg-2">
+ <div style="width: 100%; height: 450px; background-color: #000000; display: table;">
+ <div style="display: table-cell; text-align: center; vertical-align: middle;">no feed</div>
+ </div>
+ </div>
+ <div class="col-lg-6">
+ @panels.pfd()
+ <!-- <div style="width: 100%; height: 450px; background-color: #000000; display: table;">
+ <div style="display: table-cell; text-align: center; vertical-align: middle;">no feed</div>
+ </div> -->
+ </div>
+ <div class="col-lg-4">
+ station
+ <ul>
+ <li>server link</li>
+ <li>uav link</li>
+ </ul>
+ </div>
+ </div>
+ <div class="row">
+ <div class="col-lg-4">
+ uav
+ </div>
+ <div class="col-lg-4">
+
+ </div>
+ <div class="col-lg-4">
+ @panels.eicas()
+ </div>
+ </div>
- <object id="heading" type="image/svg+xml" data="@routes.Assets.at("images/instruments/heading.svg")" width="200px" height="200px">Cannot load or display SVG image.</object>
- <object id="altitude" type="image/svg+xml" data="@routes.Assets.at("images/instruments/altitude.svg")" width="200px" height="200px">Cannot load or display SVG image.</object>
+
+
<script type="text/javascript">
diff --git a/backend/app/views/main.scala.html b/backend/app/views/main.scala.html
index 4005beb..86f1384 100644
--- a/backend/app/views/main.scala.html
+++ b/backend/app/views/main.scala.html
@@ -2,14 +2,15 @@
<!DOCTYPE html>
-<html>
+<html lang="en">
<head>
- <title>@title</title>
+ <meta charset="utf-8">
+ <meta http-equiv="X-UA-Compatible" content="IE=edge">
+ <meta name="viewport" content="width=device-width, initial-scale=1">
+ <title>VFD - @title</title>
+
<link rel="stylesheet" media="screen" href="@routes.Assets.at("lib/bootstrap/css/bootstrap.css")">
<link rel="stylesheet" media="screen" href="@routes.Assets.at("stylesheets/main.css")">
- <script type="text/javascript" src="@routes.Assets.at("lib/vfd-frontend-fastopt.js")"></script>
- <script type="text/javascript" src="@routes.Assets.at("lib/jquery/jquery.js")"></script>
- <script type="text/javascript" src="@routes.Assets.at("lib/bootstrap/js/bootstrap.min.js")"></script>
</head>
<body>
<header>
@@ -35,21 +36,27 @@
</ul>
<ul class="nav navbar-nav navbar-right">
<li class="dropdown">
- <a href="#" class="dropdown-toggle" data-toggle="dropdown">options<b class="caret"></b></a>
- <ul class="dropdown-menu">
- <li>
- <form method="POST" action="">
- <button type="submit" style="width: 100%;" class="btn btn-default">Sign Out</button>
- </form>
- </li>
- </ul>
- </li>
+ <a href="#" class="dropdown-toggle" data-toggle="dropdown">options<b class="caret"></b></a>
+ <ul class="dropdown-menu">
+ <li>
+ <form method="POST" action="">
+ <button type="submit" style="width: 100%;" class="btn btn-default">Sign Out</button>
+ </form>
+ </li>
+ </ul>
+ </li>
</ul>
</div><!-- /.navbar-collapse -->
</div><!-- /.container-fluid -->
</nav>
</header>
- @content
+ <div class="container-fluid">
+ @content
+ </div>
+
+ <script type="text/javascript" src="@routes.Assets.at("lib/vfd-frontend-fastopt.js")"></script>
+ <script type="text/javascript" src="@routes.Assets.at("lib/jquery/jquery.js")"></script>
+ <script type="text/javascript" src="@routes.Assets.at("lib/bootstrap/js/bootstrap.min.js")"></script>
</body>
</html> \ No newline at end of file
diff --git a/backend/app/views/panels/eicas.scala.html b/backend/app/views/panels/eicas.scala.html
new file mode 100644
index 0000000..211adba
--- /dev/null
+++ b/backend/app/views/panels/eicas.scala.html
@@ -0,0 +1,35 @@
+@()
+
+@led(condition: String) = @{
+ "images/leds/" + (condition match {
+ case "error" => "red-on.svg"
+ case "warn" => "yellow-on.svg"
+ case "good" => "green-on.svg"
+ case "unknown" => "none.svg"
+ case _ => "a"
+ })
+}
+
+@instrument(name: String, condition: String, status: String) = {
+ <tr>
+ <td>@name</td>
+ <td>
+ <img src="@routes.Assets.at(led(condition))" alt="@condition" width="15px">
+ </td>
+ <td>
+ <span class="status @condition">
+ @status
+ </span>
+ </td>
+ </tr>
+}
+
+
+<!-- <table class="control-table">
+ @instrument("engine1", "unknown", "0 rpm")
+ @instrument("engine2", "unknown", "1000 rpm")
+ @instrument("engine3", "unknown", "2080 rpm")
+ @instrument("engine4", "unknown", "1000 rpm")
+ @instrument("battery", "unknown", "3000Wh")
+ @instrument("power", "unknown", "2000W")
+</table --> \ No newline at end of file
diff --git a/backend/app/views/panels/pfd.scala.html b/backend/app/views/panels/pfd.scala.html
new file mode 100644
index 0000000..9c89d6a
--- /dev/null
+++ b/backend/app/views/panels/pfd.scala.html
@@ -0,0 +1,31 @@
+@()
+
+@instrument(name: String) = {
+ @defining("images/instruments/" + name + ".svg") { location =>
+ <object id="@name" type="image/svg+xml" data="@routes.Assets.at(location)" width="100%">Error loading image.</object>
+ }
+}
+
+
+<div class="row">
+ <div class="col-lg-4">
+
+ </div>
+ <div class="col-lg-4">
+ @instrument("attitude")
+ </div>
+ <div class="col-lg-4">
+ @instrument("altitude")
+ </div>
+</div>
+<div class="row">
+ <div class="col-lg-4">
+
+ </div>
+ <div class="col-lg-4">
+ @instrument("heading")
+ </div>
+ <div class="col-lg-4">
+ @instrument("distance")
+ </div>
+</div> \ No newline at end of file
diff --git a/backend/public/images/instruments/distance.svg b/backend/public/images/instruments/distance.svg
new file mode 100644
index 0000000..1f4d6ff
--- /dev/null
+++ b/backend/public/images/instruments/distance.svg
@@ -0,0 +1,218 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="110"
+ height="110"
+ id="svg2987"
+ version="1.1"
+ inkscape:version="0.48.5 r10040"
+ sodipodi:docname="distance.svg"
+ viewBox="-55 -55 110 110">
+ <defs
+ id="defs2989" />
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#ffffff"
+ borderopacity="0.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="0"
+ inkscape:zoom="2.8"
+ inkscape:cx="138.05523"
+ inkscape:cy="39.382212"
+ inkscape:document-units="px"
+ inkscape:current-layer="layer1"
+ showgrid="true"
+ inkscape:window-width="1920"
+ inkscape:window-height="1029"
+ inkscape:window-x="0"
+ inkscape:window-y="27"
+ inkscape:window-maximized="1"
+ inkscape:snap-grids="true">
+ <inkscape:grid
+ type="xygrid"
+ id="grid2997"
+ units="px"
+ empspacing="5"
+ visible="true"
+ enabled="true"
+ snapvisiblegridlinesonly="true"
+ spacingx="1px"
+ spacingy="1px" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata2992">
+ <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 />
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer"
+ id="layer1">
+ <path
+ transform="matrix(0.13157895,0,0,0.13157895,-86.842106,-77.942392)"
+ d="m 1040,592.36218 a 380,380 0 1 1 -760,0 380,380 0 1 1 760,0 z"
+ sodipodi:ry="380"
+ sodipodi:rx="380"
+ sodipodi:cy="592.36218"
+ sodipodi:cx="660"
+ id="path3016"
+ style="fill:#4d4d4d;fill-opacity:1;stroke:none"
+ sodipodi:type="arc" />
+ <path
+ transform="matrix(0.11842105,0,0,0.11842105,-78.157899,-70.148156)"
+ d="m 1040,592.36218 a 380,380 0 1 1 -760,0 380,380 0 1 1 760,0 z"
+ sodipodi:ry="380"
+ sodipodi:rx="380"
+ sodipodi:cy="592.36218"
+ sodipodi:cx="660"
+ id="path3306"
+ style="fill:#666666;fill-opacity:1;stroke:none"
+ sodipodi:type="arc" />
+ <path
+ sodipodi:type="arc"
+ style="fill:#4d4d4d;fill-opacity:1;stroke:none"
+ id="path3304"
+ sodipodi:cx="660"
+ sodipodi:cy="592.36218"
+ sodipodi:rx="380"
+ sodipodi:ry="380"
+ d="m 1040,592.36218 a 380,380 0 1 1 -760,0 380,380 0 1 1 760,0 z"
+ transform="matrix(0.10526316,0,0,0.10526316,-69.47369,-62.353918)" />
+ <path
+ transform="matrix(0.09210526,0,0,0.09210526,-60.789477,-54.559677)"
+ d="m 1040,592.36218 a 380,380 0 1 1 -760,0 380,380 0 1 1 760,0 z"
+ sodipodi:ry="380"
+ sodipodi:rx="380"
+ sodipodi:cy="592.36218"
+ sodipodi:cx="660"
+ id="path3302"
+ style="fill:#666666;fill-opacity:1;stroke:none"
+ sodipodi:type="arc" />
+ <path
+ sodipodi:type="arc"
+ style="fill:#4d4d4d;fill-opacity:1;stroke:none"
+ id="path3300"
+ sodipodi:cx="660"
+ sodipodi:cy="592.36218"
+ sodipodi:rx="380"
+ sodipodi:ry="380"
+ d="m 1040,592.36218 a 380,380 0 1 1 -760,0 380,380 0 1 1 760,0 z"
+ transform="matrix(0.07894737,0,0,0.07894737,-52.105268,-46.765439)" />
+ <path
+ transform="matrix(0.06578947,0,0,0.06578947,-43.421055,-38.971198)"
+ d="m 1040,592.36218 a 380,380 0 1 1 -760,0 380,380 0 1 1 760,0 z"
+ sodipodi:ry="380"
+ sodipodi:rx="380"
+ sodipodi:cy="592.36218"
+ sodipodi:cx="660"
+ id="path3298"
+ style="fill:#666666;fill-opacity:1;stroke:none"
+ sodipodi:type="arc" />
+ <path
+ sodipodi:type="arc"
+ style="fill:#4d4d4d;fill-opacity:1;stroke:none"
+ id="path3277"
+ sodipodi:cx="660"
+ sodipodi:cy="592.36218"
+ sodipodi:rx="380"
+ sodipodi:ry="380"
+ d="m 1040,592.36218 a 380,380 0 1 1 -760,0 380,380 0 1 1 760,0 z"
+ transform="matrix(0.05263158,0,0,0.05263158,-34.736845,-31.176959)" />
+ <path
+ transform="matrix(0.03947368,0,0,0.03947368,-26.052632,-23.382717)"
+ d="m 1040,592.36218 a 380,380 0 1 1 -760,0 380,380 0 1 1 760,0 z"
+ sodipodi:ry="380"
+ sodipodi:rx="380"
+ sodipodi:cy="592.36218"
+ sodipodi:cx="660"
+ id="path3018"
+ style="fill:#666666;fill-opacity:1;stroke:#ff7f2a;stroke-width:16.18800173;stroke-miterlimit:4;stroke-dasharray:none"
+ sodipodi:type="arc" />
+ <path
+ inkscape:connector-curvature="0"
+ style="fill:#ff6600;fill-opacity:1;stroke:none;stroke-width:2.1;stroke-miterlimit:4;stroke-dasharray:none"
+ d="m -7.193878,-9.5918365 c -1.3243564,0 -2.3979591,1.0736028 -2.3979591,2.3979591 0,1.3243564 1.0736027,2.3979591 2.3979591,2.3979591 1.3243563,0 2.3979591,-1.0736027 2.3979591,-2.3979591 0,-1.3243563 -1.0736028,-2.3979591 -2.3979591,-2.3979591 z m 0,0.2397959 c 1.1919204,0 2.1581632,0.9662428 2.1581632,2.1581632 0,1.1919205 -0.9662428,2.1581632 -2.1581632,2.1581632 -1.1919205,0 -2.1581632,-0.9662427 -2.1581632,-2.1581632 0,-1.1919204 0.9662427,-2.1581632 2.1581632,-2.1581632 z"
+ id="path3085" />
+ <path
+ id="path3093"
+ d="m 7.1938766,-9.5918365 c -1.3243564,0 -2.3979591,1.0736028 -2.3979591,2.3979591 0,1.3243564 1.0736027,2.3979591 2.3979591,2.3979591 1.3243563,0 2.3979591,-1.0736027 2.3979591,-2.3979591 0,-1.3243563 -1.0736028,-2.3979591 -2.3979591,-2.3979591 z m 0,0.2397959 c 1.1919204,0 2.1581632,0.9662428 2.1581632,2.1581632 0,1.1919205 -0.9662428,2.1581632 -2.1581632,2.1581632 -1.1919205,0 -2.1581632,-0.9662427 -2.1581632,-2.1581632 0,-1.1919204 0.9662427,-2.1581632 2.1581632,-2.1581632 z"
+ style="fill:#ff6600;fill-opacity:1;stroke:none"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ style="fill:#ff6600;fill-opacity:1;stroke:none"
+ d="m 7.1938766,4.7959181 c -1.3243564,0 -2.3979591,1.0736028 -2.3979591,2.3979591 0,1.3243564 1.0736027,2.3979591 2.3979591,2.3979591 1.3243563,0 2.3979591,-1.0736027 2.3979591,-2.3979591 0,-1.3243563 -1.0736028,-2.3979591 -2.3979591,-2.3979591 z m 0,0.2397959 c 1.1919204,0 2.1581632,0.9662428 2.1581632,2.1581632 0,1.1919205 -0.9662428,2.1581632 -2.1581632,2.1581632 -1.1919205,0 -2.1581632,-0.9662427 -2.1581632,-2.1581632 0,-1.1919204 0.9662427,-2.1581632 2.1581632,-2.1581632 z"
+ id="path3095" />
+ <path
+ id="path3097"
+ d="m -7.193878,4.7959181 c -1.3243564,0 -2.3979591,1.0736028 -2.3979591,2.3979591 0,1.3243564 1.0736027,2.3979591 2.3979591,2.3979591 1.3243563,0 2.3979591,-1.0736027 2.3979591,-2.3979591 0,-1.3243563 -1.0736028,-2.3979591 -2.3979591,-2.3979591 z m 0,0.2397959 c 1.1919204,0 2.1581632,0.9662428 2.1581632,2.1581632 0,1.1919205 -0.9662428,2.1581632 -2.1581632,2.1581632 -1.1919205,0 -2.1581632,-0.9662427 -2.1581632,-2.1581632 0,-1.1919204 0.9662427,-2.1581632 2.1581632,-2.1581632 z"
+ style="fill:#ff6600;fill-opacity:1;stroke:none"
+ inkscape:connector-curvature="0" />
+ <path
+ style="fill:none;stroke:#ff6600;stroke-width:0.23979589;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ d="M -5.5431508,5.54315 5.5431493,-5.5431502"
+ id="path3099"
+ inkscape:connector-curvature="0" />
+ <path
+ style="fill:none;stroke:#ff6600;stroke-width:0.23979589;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ d="M -5.5431508,-5.5431502 5.5431493,5.54315"
+ id="path3101"
+ inkscape:connector-curvature="0" />
+ <path
+ sodipodi:type="star"
+ style="fill:none;stroke:#ff6600;stroke-width:0.79236584;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="path3778"
+ sodipodi:sides="3"
+ sodipodi:cx="-59"
+ sodipodi:cy="60"
+ sodipodi:r1="3.6055512"
+ sodipodi:r2="1.8027756"
+ sodipodi:arg1="1.0471976"
+ sodipodi:arg2="2.0943952"
+ inkscape:flatsided="false"
+ inkscape:rounded="0"
+ inkscape:randomized="0"
+ d="M -57.197225,63.122499 -59.901388,61.561249 -62.605551,60 l 2.704163,-1.56125 2.704164,-1.561249 0,3.122499 z"
+ transform="matrix(-7.7548453e-5,0.46106644,0.39934,8.9535203e-5,-23.962476,16.598427)"
+ inkscape:transform-center-y="-0.52004486" />
+ <path
+ style="fill:#00ff00;stroke:#00ff00;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+ d="m -50,-18.75 c 0.297619,0.05952 0.595238,0.119048 0.892857,0.178571 0.119048,0 0.239715,-0.01957 0.357143,0 0.242084,0.04035 0.471329,0.143864 0.714286,0.178572 0.176776,0.02525 0.359572,-0.02936 0.535714,0 0.18567,0.03095 0.353104,0.132919 0.535714,0.178571 0.294451,0.07361 0.598407,0.104959 0.892857,0.178572 0.182611,0.04565 0.351966,0.137738 0.535715,0.178571 0.353447,0.07854 0.717981,0.100028 1.071428,0.178572 0.183749,0.04083 0.357143,0.119047 0.535715,0.178571 0.357142,0.119048 0.709451,0.253721 1.071428,0.357143 0.05723,0.01635 0.119646,-0.0084 0.178572,0 0.35843,0.0512 0.711156,0.142544 1.071428,0.178571 0.236914,0.02369 0.478584,-0.03367 0.714286,0 0.186339,0.02662 0.357143,0.119048 0.535714,0.178572 0.416667,0 0.835401,-0.04146 1.25,0 0.187297,0.01873 0.349375,0.151951 0.535714,0.178571 0.235703,0.03367 0.476191,0 0.714286,0 0.238095,0 0.476191,0 0.714286,0 0.357143,0 0.714286,0 1.071428,0 0.238096,0 0.478584,0.03367 0.714286,0 0.186339,-0.02662 0.350045,-0.147626 0.535714,-0.178571 0.176142,-0.02936 0.366307,0.05647 0.535715,0 0.05647,-0.01882 -0.04953,-0.145554 0,-0.178572 1.080402,-0.720268 0.07149,0.258884 0.892857,-0.357143 0.134687,-0.101015 0.225677,-0.25197 0.357143,-0.357142 0.515632,-0.412506 0.509601,-0.235217 0.892857,-0.714286 0.13407,-0.167587 0.228373,-0.364022 0.357143,-0.535714 0.05051,-0.06734 0.124681,-0.113904 0.178571,-0.178572 0.101988,-0.122385 1.297569,-1.556459 1.428572,-1.785714 0.09339,-0.16343 0.09439,-0.367356 0.178571,-0.535714 0.09598,-0.191959 0.246724,-0.351683 0.357143,-0.535715 0.06848,-0.114131 0.119047,-0.238095 0.178571,-0.357143 0.178572,-0.357142 0.387419,-0.700689 0.535715,-1.071428 0.09115,-0.22787 0.108049,-0.479213 0.178571,-0.714286 0.108175,-0.360585 0.248967,-0.710844 0.357143,-1.071428 0.07052,-0.235073 0.100962,-0.481458 0.178571,-0.714286 0.377385,-1.132155 0.284942,-0.550868 0.535715,-1.428572 0.07629,-0.267001 0.214425,-0.964564 0.357142,-1.25 0.09598,-0.191958 0.261164,-0.343755 0.357143,-0.535714 1.003096,-2.006191 -0.08249,-0.03762 0.535715,-1.428571 0.216227,-0.486511 0.516558,-0.934253 0.714285,-1.428572 0.06991,-0.174768 0.09439,-0.367355 0.178572,-0.535714 0.09598,-0.191959 0.261163,-0.343756 0.357143,-0.535714 0.08418,-0.168359 0.112479,-0.359469 0.178571,-0.535715 0.03323,-0.470719 0.368814,-0.832749 0.535714,-1.25 0.06991,-0.174768 0.09439,-0.367355 0.178572,-0.535714 0.136569,-0.273139 0.55982,-0.863837 0.714285,-1.25 0.475265,-1.188161 -0.186741,0.132664 0.535715,-1.071428 0.136958,-0.228264 0.197423,-0.501327 0.357143,-0.714286 0.101015,-0.134687 0.263754,-0.21706 0.357142,-0.357143 0.219781,-0.32967 0.315935,-0.741758 0.535715,-1.071429 0.111406,-0.167109 0.599921,-0.599921 0.714285,-0.714285 0.416667,-0.416667 0.833334,-0.833334 1.25,-1.25 0.13948,-0.13948 0.432989,-0.381625 0.535715,-0.535715 0.07383,-0.110745 0.09871,-0.250663 0.178571,-0.357142 0.101015,-0.134687 0.25197,-0.225677 0.357143,-0.357143 0.13407,-0.167587 0.223073,-0.368128 0.357143,-0.535715 0.105173,-0.131466 0.256127,-0.222455 0.357143,-0.357142 0.07986,-0.10648 0.09871,-0.250664 0.178571,-0.357143 0.101015,-0.134687 0.256128,-0.222456 0.357143,-0.357143 0.422735,-0.563647 -0.134199,-0.222945 0.535714,-0.892857 0.649933,-0.649933 0.125471,0.189849 0.535715,-0.357143 0.128769,-0.171693 0.228373,-0.364022 0.357142,-0.535715 0.112156,-0.14954 0.46265,-0.389585 0.535715,-0.535714 0.178994,-0.357989 -0.295226,-0.0018 0.178571,-0.357143 1.770799,-1.328099 -0.35353,0.295211 0.892857,-0.535714 0.07004,-0.04669 0.106389,-0.135261 0.178572,-0.178571 0.228263,-0.136958 0.47619,-0.238096 0.714285,-0.357143 0.119048,-0.05952 0.230874,-0.136482 0.357143,-0.178572 0.05647,-0.01882 0.125332,0.02662 0.178572,0 0.191958,-0.09598 0.343756,-0.261163 0.535714,-0.357143 0.05324,-0.02662 0.120825,0.01444 0.178571,0 0.182611,-0.04565 0.351139,-0.141656 0.535715,-0.178571 0.116736,-0.02335 0.241649,0.02887 0.357143,0 0.129125,-0.03228 0.238095,-0.119048 0.357142,-0.178571 0.297619,-0.05952 0.592395,-0.135649 0.892858,-0.178572 0.117851,-0.01684 0.238095,0 0.357142,0 0.238096,0 0.476191,0 0.714286,0 0.119048,0 0.24165,0.02887 0.357143,0 0.129125,-0.03228 0.225855,-0.15669 0.357143,-0.178571 0.234856,-0.03914 0.47943,0.03914 0.714286,0 0.131288,-0.02188 0.225854,-0.15669 0.357142,-0.178572 0.347491,-0.05792 0.723939,0.05792 1.071429,0 0.242084,-0.04035 0.471329,-0.143863 0.714286,-0.178571 0.296962,-0.04242 0.918734,0 1.25,0 0.05952,0 0.136481,0.04209 0.178571,0 0.04209,-0.04209 -0.05324,-0.151952 0,-0.178572 C -4.000663,-50.231812 -30,-44 -4,-53 c 0.1124987,-0.03894 -33.119048,14 -33,14"
+ id="path3192"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="ccccsscscsccsscsssssscccssscssssssssscssscsscccssssssssssssssssssscsccsscccccsscsssssssssc" />
+ <path
+ style="fill:#00ff00;stroke:#00ff00;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+ d="m 37,-39 c 0.339238,0.286323 -23.076942,-8.950563 -22.714286,-8.678572 0.202031,0.151523 0.357143,0.357143 0.535715,0.535715 0.297619,0.297619 0.595238,0.595238 0.892857,0.892857 0.807636,0.807636 -0.15776,-0.184053 1.071428,1.25 0.109567,0.127827 0.238096,0.238095 0.357143,0.357143 0.297619,0.357143 0.607439,0.704462 0.892857,1.071428 0.131762,0.169408 0.223074,0.368128 0.357143,0.535715 0.342822,0.428527 0.728607,0.821473 1.071429,1.25 0.134069,0.167587 0.228373,0.364021 0.357143,0.535714 1.046559,1.395412 0.37132,0.376992 1.25,1.607143 0.124743,0.17464 0.225381,0.366306 0.357142,0.535714 0.285419,0.366967 0.607439,0.704462 0.892858,1.071429 0.395284,0.508223 0.676143,1.098919 1.071428,1.607143 0.155044,0.199341 0.38893,0.330215 0.535714,0.535714 0.154725,0.216614 0.200573,0.499001 0.357143,0.714286 3.190943,4.387545 -0.216344,-0.493646 1.607143,1.785714 0.319871,0.399838 0.572986,0.850161 0.892857,1.25 0.315519,0.394398 0.735874,0.69393 1.071429,1.071428 0.30886,0.347468 0.583997,0.723961 0.892857,1.071429 0.503332,0.566248 1.100326,1.044012 1.607143,1.607143 0.199097,0.221218 0.345183,0.485648 0.535714,0.714286 0.295565,0.354677 1.305583,1.163907 1.428572,1.25 0.218078,0.152654 0.489704,0.214227 0.714285,0.357142 0.416667,0.297619 0.833334,0.595238 1.25,0.892858 0.119048,0.05952 0.243011,0.110092 0.357143,0.178571 0.481522,0.288913 0.954816,0.591377 1.428572,0.892857 0.431074,0.27432 0.74827,0.547043 1.25,0.714286 0.112938,0.03765 0.244204,-0.03765 0.357142,0 0.252539,0.08418 0.467127,0.258279 0.714286,0.357143 0.154363,0.06175 0.377611,-0.0527 0.535714,0 0.12627,0.04209 0.228018,0.14629 0.357143,0.178571 0.115493,0.02887 0.238096,0 0.357143,0 0.05952,0 0.125332,-0.02662 0.178572,0 0.07529,0.03765 0.103279,0.140925 0.178571,0.178572 0.05324,0.02662 0.120204,-0.01167 0.178571,0 0.240657,0.04813 0.473629,0.13044 0.714286,0.178571 0.05837,0.01167 0.122102,-0.01882 0.178572,0 0.126269,0.04209 0.228017,0.14629 0.357142,0.178571 0.115494,0.02887 0.244205,-0.03765 0.357143,0 0.07986,0.02662 0.103279,0.140926 0.178572,0.178572 0.05324,0.02662 0.120825,-0.01444 0.178571,0 0.182611,0.04565 0.357143,0.119047 0.535714,0.178571 0.178572,0.05952 0.357143,0.119048 0.535715,0.178572 0.05952,0 0.120825,-0.01444 0.178571,0 0.182611,0.04565 0.350045,0.147626 0.535714,0.178571 0.176142,0.02936 0.360611,-0.03502 0.535715,0 0.130514,0.0261 0.230874,0.136482 0.357143,0.178572 0.232831,0.07761 0.473631,0.13044 0.714281,0.178571 0.0584,0.01167 0.11905,0 0.17858,0 0.23809,0.05952 0.47362,0.13044 0.71428,0.178571 0.0584,0.01167 0.12533,-0.02662 0.17857,0 0.84325,0.421624 -1.08993,-0.09391 0.71429,0.357143 0.17857,0.04464 0.35714,-0.08928 0.53571,0 0.47619,0.238095 -0.53571,0.178572 0.17857,0.178572"
+ id="path3194"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="csssscsssssssssssssssssccsscccscscscccccsccccccscccsccc" />
+ <path
+ style="fill:#00ff00;stroke:#00ff00;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+ d="m -34,40 c 0.124317,0.736668 -15.393362,-18.327802 -15,-18 0.258674,0.215561 -0.0057,-14.540561 0.25,-14.321429 0.162949,0.139671 0.372766,0.217473 0.535714,0.357143 0.255655,0.219133 0.455612,0.498725 0.714286,0.714286 0.10225,0.08521 0.250663,0.09871 0.357143,0.178571 0.134687,0.101016 0.225677,0.25197 0.357143,0.357143 0.167587,0.13407 0.357143,0.238095 0.535714,0.357143 0.238095,0.238095 0.458631,0.495153 0.714286,0.714286 0.325897,0.279341 0.732613,0.450762 1.071428,0.714286 0.366967,0.285418 0.704462,0.607438 1.071429,0.892857 0.169408,0.131761 0.372765,0.217472 0.535714,0.357143 0.255655,0.219132 0.46088,0.492555 0.714286,0.714285 0.223981,0.195984 0.47619,0.357143 0.714286,0.535715 0.647689,0.485766 1.332085,0.922811 1.964285,1.428571 0.197199,0.157759 0.338515,0.377955 0.535715,0.535714 0.377561,0.752881 1.358186,0.817072 1.964285,1.25 0.205499,0.146785 0.338515,0.377955 0.535715,0.535715 2.577478,2.061982 0.214504,0.136502 1.964285,1.25 0.270637,0.172223 1.30764,0.963155 1.785715,1.25 0.924277,0.554566 1.079703,0.567134 1.785714,1.071428 0.293483,0.209631 0.893906,0.698624 1.25,0.892857 0.467389,0.25494 0.961182,0.459346 1.428571,0.714286 0.188411,0.102769 0.351683,0.246724 0.535715,0.357143 2.423219,1.453932 0.298187,0.162648 1.964285,1.071428 0.421299,0.2298 0.828701,0.484487 1.25,0.714286 1.09127,0.595238 0.446429,0.14881 1.785715,0.892857 0.375216,0.208454 0.714285,0.476191 1.071428,0.714286 0.357143,0.238095 0.722148,0.464799 1.071429,0.714286 0.0685,0.04893 0.119047,0.119047 0.178571,0.178571 0.238095,0.238095 0.476191,0.476191 0.714286,0.714286 0.528844,0.528844 1.117762,1.04785 1.607143,1.607143 0.141325,0.161515 0.225381,0.366306 0.357143,0.535714 0.285418,0.366967 0.590307,0.718453 0.892857,1.071429 0.05478,0.06391 0.129643,0.110071 0.178571,0.178571 0.249486,0.349281 0.476191,0.714286 0.714286,1.071429 0.119047,0.178571 0.250663,0.349375 0.357143,0.535714 0.132071,0.231125 0.220185,0.486022 0.357143,0.714286 0.220838,0.368063 0.522327,0.687511 0.714285,1.071428 0.05324,0.10648 -0.03765,0.244205 0,0.357143 0.143353,0.430057 0.380796,0.823973 0.535715,1.25 0.677306,1.862593 -0.246537,-0.259198 0.357142,1.25 0.168359,0.420897 0.380796,0.823973 0.535715,1.25 0.167743,0.461294 0.222297,0.956611 0.357143,1.428571 0.05171,0.180989 0.12686,0.354726 0.178571,0.535715 0.06742,0.23598 0.111149,0.478305 0.178571,0.714285 0.205257,0.718399 0.478746,1.436238 0.714286,2.142858 0.05952,0.178571 0.137739,0.351965 0.178572,0.535714 0.07854,0.353447 0.100027,0.717981 0.178571,1.071427 0.277668,1.24951 0.136631,-0.335525 0.357143,1.42857 0.02215,0.1772 -0.03502,0.36061 0,0.53572 0.05221,0.26103 0.29258,0.45603 0.357143,0.71428 0.03314,0.13255 -0.05481,0.65948 0,0.71429 0.04209,0.0421 0.136481,-0.0421 0.178571,0 0.04209,0.0421 0,0.11905 0,0.17857 0,0.0595 0.05952,0.17857 0,0.17857 -0.05952,0 0,-0.23809 0,-0.17857 0,1.0119 -0.119047,0.0595 0.178572,0.35714 0.04209,0.0421 0,0.11905 0,0.17857 0,0.0595 0,0.11905 0,0.17858 0,0.11904 0,0.23809 0,0.35714 0,0.0595 0.05952,0.17857 0,0.17857 -0.05952,0 0,-0.11905 0,-0.17857"
+ id="path3196"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="csssssscssssssscsssssssssssscsssssssssscsssscscssscccsssscssssc" />
+ <path
+ style="fill:#1a1a1a;fill-opacity:1;stroke:none"
+ d="M 55 0 C 24.624339 1.8947806e-14 0 24.624339 0 55 C 9.4739031e-15 85.375661 24.624339 110 55 110 C 85.375661 110 110 85.375661 110 55 C 110 24.624339 85.375661 -7.1054274e-15 55 0 z M 55 5 C 82.614238 5 105 27.385762 105 55 C 105 82.614238 82.614238 105 55 105 C 27.385762 105 5 82.614238 5 55 C 5 27.385762 27.385762 5 55 5 z "
+ transform="translate(-55,-55)"
+ id="path2999" />
+ </g>
+</svg>
diff --git a/backend/public/images/instruments/generic.svg b/backend/public/images/instruments/generic.svg
new file mode 100644
index 0000000..02e4caa
--- /dev/null
+++ b/backend/public/images/instruments/generic.svg
@@ -0,0 +1,1063 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="110"
+ height="110"
+ id="svg2987"
+ version="1.1"
+ inkscape:version="0.48.5 r10040"
+ sodipodi:docname="generic.svg"
+ viewBox="-55 -55 110 110">
+ <defs
+ id="defs2989" />
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#ffffff"
+ borderopacity="0.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="0"
+ inkscape:zoom="2"
+ inkscape:cx="-32.598708"
+ inkscape:cy="85.113475"
+ inkscape:document-units="px"
+ inkscape:current-layer="layer1"
+ showgrid="true"
+ inkscape:window-width="1920"
+ inkscape:window-height="1029"
+ inkscape:window-x="0"
+ inkscape:window-y="27"
+ inkscape:window-maximized="1"
+ inkscape:snap-grids="true"
+ inkscape:snap-object-midpoints="true"
+ showguides="true"
+ inkscape:guide-bbox="true"
+ inkscape:snap-global="true"
+ inkscape:snap-nodes="false"
+ inkscape:snap-bbox="true">
+ <inkscape:grid
+ type="xygrid"
+ id="grid2997"
+ units="px"
+ empspacing="5"
+ visible="true"
+ enabled="true"
+ snapvisiblegridlinesonly="true"
+ spacingx="1px"
+ spacingy="1px" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata2992">
+ <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 />
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer"
+ id="layer1">
+ <path
+ transform="matrix(0.14473684,0,0,0.14473684,-95.526315,-85.73663)"
+ d="m 1040,592.36218 a 380,380 0 1 1 -760,0 380,380 0 1 1 760,0 z"
+ sodipodi:ry="380"
+ sodipodi:rx="380"
+ sodipodi:cy="592.36218"
+ sodipodi:cx="660"
+ id="path2999"
+ style="fill:#1a1a1a;fill-opacity:1;stroke:none"
+ sodipodi:type="arc" />
+ <path
+ transform="matrix(0.13157895,0,0,0.13157895,-86.842106,-77.942392)"
+ d="m 1040,592.36218 a 380,380 0 1 1 -760,0 380,380 0 1 1 760,0 z"
+ sodipodi:ry="380"
+ sodipodi:rx="380"
+ sodipodi:cy="592.36218"
+ sodipodi:cx="660"
+ id="path3016"
+ style="fill:#333333;fill-opacity:1;stroke:none"
+ sodipodi:type="arc" />
+ <path
+ inkscape:transform-center-y="-42.359375"
+ inkscape:transform-center-x="-14.765616"
+ inkscape:connector-curvature="0"
+ id="path3372"
+ d="m -8.4662647e-7,-50 7.8029586e-7,7.062499 C 9.4425578,-42.937502 18.162476,-39.882027 25.249998,-34.718749 l 4.156251,-5.718747 C 21.15285,-46.450357 10.993025,-49.999997 -1.6970551e-5,-49.999953 z"
+ style="fill:#000080;fill-opacity:1;stroke:#1a1a1a;stroke-width:0.10000000000000001;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
+ <path
+ style="fill:#d40000;fill-opacity:1;stroke:#1a1a1a;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ d="m -29.502325,40.414115 4.151232,-5.713683 c -7.63919,-5.550196 -12.89779,-13.147566 -15.596816,-21.490688 l -6.723873,2.183583 c 3.142869,9.715733 9.275914,18.559246 18.169498,25.020758 z"
+ id="path3347"
+ inkscape:connector-curvature="0"
+ inkscape:transform-center-x="36.448938"
+ inkscape:transform-center-y="26.811929" />
+ <path
+ transform="matrix(0.09210526,0,0,0.09210526,-60.789473,-54.559673)"
+ d="m 1040,592.36218 a 380,380 0 1 1 -760,0 380,380 0 1 1 760,0 z"
+ sodipodi:ry="380"
+ sodipodi:rx="380"
+ sodipodi:cy="592.36218"
+ sodipodi:cx="660"
+ id="path3018"
+ style="fill:#4d4d4d;fill-opacity:1;stroke:none"
+ sodipodi:type="arc" />
+ <path
+ inkscape:connector-curvature="0"
+ style="fill:#1a1a1a;fill-opacity:1;stroke:none"
+ d="m 0,-55 c -30.375661,0 -55,24.624339 -55,55 0,30.375661 24.624339,55 55,55 C 30.375661,55 55,30.375661 55,0 55,-30.375661 30.375661,-55 0,-55 z m 0,5 c 27.614238,0 50,22.385762 50,50 0,27.614238 -22.385762,50 -50,50 -27.614238,0 -50,-22.385762 -50,-50 0,-27.614238 22.385762,-50 50,-50 z"
+ id="path3741" />
+ <rect
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="rect3190"
+ width="0.5"
+ height="7"
+ x="-0.25"
+ y="-50"
+ inkscape:transform-center-y="-46.5" />
+ <rect
+ inkscape:transform-center-y="-37.61929"
+ y="-50"
+ x="-0.25"
+ height="7"
+ width="0.5"
+ id="rect3192"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ transform="matrix(0.80901699,-0.58778525,0.58778525,0.80901699,0,0)"
+ inkscape:transform-center-x="27.332014" />
+ <rect
+ inkscape:transform-center-x="44.224128"
+ transform="matrix(0.30901699,-0.95105652,0.95105652,0.30901699,0,0)"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="rect3194"
+ width="0.5"
+ height="7"
+ x="-0.24999993"
+ y="-50"
+ inkscape:transform-center-y="-14.36929" />
+ <rect
+ inkscape:transform-center-y="14.36929"
+ y="-50"
+ x="-0.24999984"
+ height="7"
+ width="0.5"
+ id="rect3196"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ transform="matrix(-0.309017,-0.95105651,0.95105651,-0.309017,0,0)"
+ inkscape:transform-center-x="44.224128" />
+ <rect
+ inkscape:transform-center-x="27.332015"
+ transform="matrix(-0.809017,-0.58778525,0.58778525,-0.809017,0,0)"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="rect3198"
+ width="0.5"
+ height="7"
+ x="-0.24999982"
+ y="-50"
+ inkscape:transform-center-y="37.61929" />
+ <rect
+ transform="matrix(-0.80901699,0.58778525,-0.58778525,-0.80901699,0,0)"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="rect3202"
+ width="0.5"
+ height="7"
+ x="-0.24999978"
+ y="-50"
+ inkscape:transform-center-y="37.61929"
+ inkscape:transform-center-x="-27.332014" />
+ <rect
+ inkscape:transform-center-x="-44.224128"
+ inkscape:transform-center-y="14.36929"
+ y="-50"
+ x="-0.24999975"
+ height="7"
+ width="0.5"
+ id="rect3204"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ transform="matrix(-0.30901699,0.95105652,-0.95105652,-0.30901699,0,0)" />
+ <rect
+ transform="matrix(0.309017,0.95105651,-0.95105651,0.309017,0,0)"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="rect3206"
+ width="0.5"
+ height="7"
+ x="-0.24999969"
+ y="-50"
+ inkscape:transform-center-y="-14.36929"
+ inkscape:transform-center-x="-44.224128" />
+ <rect
+ inkscape:transform-center-x="-27.332015"
+ inkscape:transform-center-y="-37.61929"
+ y="-50"
+ x="-0.2499997"
+ height="7"
+ width="0.5"
+ id="rect3208"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ transform="matrix(0.809017,0.58778525,-0.58778525,0.809017,0,0)" />
+ <rect
+ inkscape:transform-center-y="-47.905283"
+ y="-50"
+ x="-0.25"
+ height="4"
+ width="0.5"
+ id="rect3243"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ transform="matrix(0.99802673,-0.06279052,0.06279052,0.99802673,0,0)"
+ inkscape:transform-center-x="3.013945" />
+ <rect
+ inkscape:transform-center-x="6.0159953"
+ transform="matrix(0.9921147,-0.12533323,0.12533323,0.9921147,0,0)"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="rect3245"
+ width="0.5"
+ height="4"
+ x="-0.25"
+ y="-50"
+ inkscape:transform-center-y="-47.621506" />
+ <rect
+ inkscape:transform-center-y="-47.149788"
+ y="-50"
+ x="-0.25000003"
+ height="4"
+ width="0.5"
+ id="rect3247"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ transform="matrix(0.98228725,-0.18738131,0.18738131,0.98228725,0,0)"
+ inkscape:transform-center-x="8.9943032" />
+ <rect
+ inkscape:transform-center-x="11.937115"
+ transform="matrix(0.96858316,-0.24868988,0.24868988,0.96858316,0,0)"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="rect3249"
+ width="0.5"
+ height="4"
+ x="-0.25000003"
+ y="-50"
+ inkscape:transform-center-y="-46.491992" />
+ <rect
+ inkscape:transform-center-y="-45.650713"
+ y="-50"
+ x="-0.25000006"
+ height="4"
+ width="0.5"
+ id="rect3251"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ transform="matrix(0.95105652,-0.30901699,0.30901699,0.95105652,0,0)"
+ inkscape:transform-center-x="14.832816" />
+ <rect
+ inkscape:transform-center-x="17.669979"
+ transform="matrix(0.92977649,-0.36812455,0.36812455,0.92977649,0,0)"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="rect3253"
+ width="0.5"
+ height="4"
+ x="-0.25000006"
+ y="-50"
+ inkscape:transform-center-y="-44.629272" />
+ <rect
+ inkscape:transform-center-y="-43.431699"
+ y="-50"
+ x="-0.25000009"
+ height="4"
+ width="0.5"
+ id="rect3255"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ transform="matrix(0.90482705,-0.42577929,0.42577929,0.90482705,0,0)"
+ inkscape:transform-center-x="20.437407" />
+ <rect
+ inkscape:transform-center-x="23.124177"
+ transform="matrix(0.87630668,-0.48175367,0.48175367,0.87630668,0,0)"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="rect3257"
+ width="0.5"
+ height="4"
+ x="-0.25000015"
+ y="-50"
+ inkscape:transform-center-y="-42.062721" />
+ <rect
+ inkscape:transform-center-y="-40.527741"
+ y="-50"
+ x="-0.25000021"
+ height="4"
+ width="0.5"
+ id="rect3259"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ transform="matrix(0.84432793,-0.53582679,0.53582679,0.84432793,0,0)"
+ inkscape:transform-center-x="25.719687" />
+ <rect
+ inkscape:transform-center-x="30.596353"
+ transform="matrix(0.77051325,-0.63742399,0.63742399,0.77051325,0,0)"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="rect3261"
+ width="0.5"
+ height="4"
+ x="-0.2500003"
+ y="-50"
+ inkscape:transform-center-y="-36.984636" />
+ <rect
+ inkscape:transform-center-y="-34.990494"
+ y="-50"
+ x="-0.25000036"
+ height="4"
+ width="0.5"
+ id="rect3263"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ transform="matrix(0.72896863,-0.6845471,0.6845471,0.72896863,0,0)"
+ inkscape:transform-center-x="32.858262" />
+ <rect
+ inkscape:transform-center-x="34.990495"
+ transform="matrix(0.68454711,-0.72896862,0.72896862,0.68454711,0,0)"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="rect3265"
+ width="0.5"
+ height="4"
+ x="-0.25000039"
+ y="-50"
+ inkscape:transform-center-y="-32.858261" />
+ <rect
+ inkscape:transform-center-y="-30.596352"
+ y="-50"
+ x="-0.25000045"
+ height="4"
+ width="0.5"
+ id="rect3267"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ transform="matrix(0.637424,-0.77051324,0.77051324,0.637424,0,0)"
+ inkscape:transform-center-x="36.984637" />
+ <rect
+ inkscape:transform-center-x="38.832817"
+ transform="matrix(0.58778526,-0.80901699,0.80901699,0.58778526,0,0)"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="rect3269"
+ width="0.5"
+ height="4"
+ x="-0.25000051"
+ y="-50"
+ inkscape:transform-center-y="-28.213692" />
+ <rect
+ inkscape:transform-center-y="-25.719686"
+ y="-50"
+ x="-0.25000057"
+ height="4"
+ width="0.5"
+ id="rect3271"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ transform="matrix(0.5358268,-0.84432792,0.84432792,0.5358268,0,0)"
+ inkscape:transform-center-x="40.527742" />
+ <rect
+ inkscape:transform-center-x="42.062722"
+ transform="matrix(0.48175368,-0.87630668,0.87630668,0.48175368,0,0)"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="rect3273"
+ width="0.5"
+ height="4"
+ x="-0.25000066"
+ y="-50"
+ inkscape:transform-center-y="-23.124176" />
+ <rect
+ inkscape:transform-center-y="-20.437406"
+ y="-50"
+ x="-0.25000072"
+ height="4"
+ width="0.5"
+ id="rect3275"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ transform="matrix(0.4257793,-0.90482705,0.90482705,0.4257793,0,0)"
+ inkscape:transform-center-x="43.4317" />
+ <rect
+ inkscape:transform-center-x="44.629273"
+ transform="matrix(0.36812456,-0.92977648,0.92977648,0.36812456,0,0)"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="rect3277"
+ width="0.5"
+ height="4"
+ x="-0.2500008"
+ y="-50"
+ inkscape:transform-center-y="-17.669978" />
+ <rect
+ inkscape:transform-center-y="-11.937114"
+ y="-50"
+ x="-0.25000095"
+ height="4"
+ width="0.5"
+ id="rect3279"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ transform="matrix(0.24868989,-0.96858316,0.96858316,0.24868989,0,0)"
+ inkscape:transform-center-x="46.491993" />
+ <rect
+ inkscape:transform-center-x="47.149789"
+ transform="matrix(0.18738132,-0.98228725,0.98228725,0.18738132,0,0)"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="rect3281"
+ width="0.5"
+ height="4"
+ x="-0.25000101"
+ y="-50"
+ inkscape:transform-center-y="-8.9943026" />
+ <rect
+ inkscape:transform-center-y="-6.0159947"
+ y="-50"
+ x="-0.25000107"
+ height="4"
+ width="0.5"
+ id="rect3283"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ transform="matrix(0.12533324,-0.9921147,0.9921147,0.12533324,0,0)"
+ inkscape:transform-center-x="47.621507" />
+ <rect
+ inkscape:transform-center-x="47.905284"
+ transform="matrix(0.06279053,-0.99802673,0.99802673,0.06279053,0,0)"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="rect3285"
+ width="0.5"
+ height="4"
+ x="-0.25000116"
+ y="-50"
+ inkscape:transform-center-y="-3.0139445" />
+ <rect
+ y="-50"
+ x="-0.25000122"
+ height="4"
+ width="0.5"
+ id="rect3287"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ transform="matrix(1.0351335e-8,-1,1,1.0351335e-8,0,0)"
+ inkscape:transform-center-x="48.000001" />
+ <rect
+ inkscape:transform-center-x="47.905284"
+ transform="matrix(-0.06279051,-0.99802673,0.99802673,-0.06279051,0,0)"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="rect3289"
+ width="0.5"
+ height="4"
+ x="-0.25000128"
+ y="-50"
+ inkscape:transform-center-y="3.013945" />
+ <rect
+ inkscape:transform-center-y="6.0159951"
+ y="-50"
+ x="-0.25000134"
+ height="4"
+ width="0.5"
+ id="rect3291"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ transform="matrix(-0.12533322,-0.9921147,0.9921147,-0.12533322,0,0)"
+ inkscape:transform-center-x="47.621506" />
+ <rect
+ inkscape:transform-center-x="47.149788"
+ transform="matrix(-0.1873813,-0.98228725,0.98228725,-0.1873813,0,0)"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="rect3293"
+ width="0.5"
+ height="4"
+ x="-0.25000137"
+ y="-50"
+ inkscape:transform-center-y="8.994303" />
+ <rect
+ inkscape:transform-center-y="17.669978"
+ y="-50"
+ x="-0.2500014"
+ height="4"
+ width="0.5"
+ id="rect3295"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ transform="matrix(-0.36812454,-0.92977649,0.92977649,-0.36812454,0,0)"
+ inkscape:transform-center-x="44.629271" />
+ <rect
+ inkscape:transform-center-x="43.431698"
+ transform="matrix(-0.42577928,-0.90482706,0.90482706,-0.42577928,0,0)"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="rect3297"
+ width="0.5"
+ height="4"
+ x="-0.25000137"
+ y="-50"
+ inkscape:transform-center-y="20.437405" />
+ <rect
+ inkscape:transform-center-y="23.124175"
+ y="-50"
+ x="-0.25000131"
+ height="4"
+ width="0.5"
+ id="rect3299"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ transform="matrix(-0.48175366,-0.87630669,0.87630669,-0.48175366,0,0)"
+ inkscape:transform-center-x="42.06272" />
+ <rect
+ inkscape:transform-center-x="40.527739"
+ transform="matrix(-0.53582678,-0.84432793,0.84432793,-0.53582678,0,0)"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="rect3301"
+ width="0.5"
+ height="4"
+ x="-0.25000122"
+ y="-50"
+ inkscape:transform-center-y="25.719685" />
+ <rect
+ inkscape:transform-center-y="28.213691"
+ y="-50"
+ x="-0.25000113"
+ height="4"
+ width="0.5"
+ id="rect3303"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ transform="matrix(-0.58778524,-0.809017,0.809017,-0.58778524,0,0)"
+ inkscape:transform-center-x="38.832814" />
+ <rect
+ inkscape:transform-center-x="36.984634"
+ transform="matrix(-0.63742398,-0.77051325,0.77051325,-0.63742398,0,0)"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="rect3305"
+ width="0.5"
+ height="4"
+ x="-0.25000101"
+ y="-50"
+ inkscape:transform-center-y="30.59635" />
+ <rect
+ inkscape:transform-center-y="32.85826"
+ y="-50"
+ x="-0.25000086"
+ height="4"
+ width="0.5"
+ id="rect3307"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ transform="matrix(-0.6845471,-0.72896864,0.72896864,-0.6845471,0,0)"
+ inkscape:transform-center-x="34.990493" />
+ <rect
+ inkscape:transform-center-x="32.85826"
+ transform="matrix(-0.72896862,-0.68454712,0.68454712,-0.72896862,0,0)"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="rect3309"
+ width="0.5"
+ height="4"
+ x="-0.25000075"
+ y="-50"
+ inkscape:transform-center-y="34.990493" />
+ <rect
+ inkscape:transform-center-y="36.984634"
+ y="-50"
+ x="-0.25000063"
+ height="4"
+ width="0.5"
+ id="rect3311"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ transform="matrix(-0.77051323,-0.637424,0.637424,-0.77051323,0,0)"
+ inkscape:transform-center-x="30.59635" />
+ <rect
+ inkscape:transform-center-x="-30.596352"
+ transform="matrix(-0.77051326,0.63742397,-0.63742397,-0.77051326,0,0)"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="rect3349"
+ width="0.5"
+ height="4"
+ x="-0.24999872"
+ y="-50"
+ inkscape:transform-center-y="36.984635" />
+ <rect
+ inkscape:transform-center-y="34.990494"
+ y="-50"
+ x="-0.24999872"
+ height="4"
+ width="0.5"
+ id="rect3351"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ transform="matrix(-0.72896865,0.68454709,-0.68454709,-0.72896865,0,0)"
+ inkscape:transform-center-x="-32.858262" />
+ <rect
+ inkscape:transform-center-x="-34.990495"
+ transform="matrix(-0.68454713,0.72896861,-0.72896861,-0.68454713,0,0)"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="rect3353"
+ width="0.5"
+ height="4"
+ x="-0.24999875"
+ y="-50"
+ inkscape:transform-center-y="32.858261" />
+ <rect
+ inkscape:transform-center-y="30.596351"
+ y="-50"
+ x="-0.24999878"
+ height="4"
+ width="0.5"
+ id="rect3355"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ transform="matrix(-0.63742401,0.77051322,-0.77051322,-0.63742401,0,0)"
+ inkscape:transform-center-x="-36.984636" />
+ <rect
+ inkscape:transform-center-x="-38.832817"
+ transform="matrix(-0.58778528,0.80901698,-0.80901698,-0.58778528,0,0)"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="rect3357"
+ width="0.5"
+ height="4"
+ x="-0.24999879"
+ y="-50"
+ inkscape:transform-center-y="28.213692" />
+ <rect
+ inkscape:transform-center-y="25.719686"
+ y="-50"
+ x="-0.24999885"
+ height="4"
+ width="0.5"
+ id="rect3359"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ transform="matrix(-0.53582682,0.84432791,-0.84432791,-0.53582682,0,0)"
+ inkscape:transform-center-x="-40.527742" />
+ <rect
+ inkscape:transform-center-x="-42.062723"
+ transform="matrix(-0.4817537,0.87630667,-0.87630667,-0.4817537,0,0)"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="rect3361"
+ width="0.5"
+ height="4"
+ x="-0.24999894"
+ y="-50"
+ inkscape:transform-center-y="23.124176" />
+ <rect
+ inkscape:transform-center-y="20.437406"
+ y="-50"
+ x="-0.24999906"
+ height="4"
+ width="0.5"
+ id="rect3363"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ transform="matrix(-0.42577932,0.90482704,-0.90482704,-0.42577932,0,0)"
+ inkscape:transform-center-x="-43.431701" />
+ <rect
+ inkscape:transform-center-x="-44.629274"
+ transform="matrix(-0.36812458,0.92977647,-0.92977647,-0.36812458,0,0)"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="rect3365"
+ width="0.5"
+ height="4"
+ x="-0.24999921"
+ y="-50"
+ inkscape:transform-center-y="17.669978" />
+ <rect
+ inkscape:transform-center-y="11.937114"
+ y="-50"
+ x="-0.24999955"
+ height="4"
+ width="0.5"
+ id="rect3367"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ transform="matrix(-0.24868991,0.96858315,-0.96858315,-0.24868991,0,0)"
+ inkscape:transform-center-x="-46.491995" />
+ <rect
+ inkscape:transform-center-x="-47.149792"
+ transform="matrix(-0.18738134,0.98228725,-0.98228725,-0.18738134,0,0)"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="rect3369"
+ width="0.5"
+ height="4"
+ x="-0.24999976"
+ y="-50"
+ inkscape:transform-center-y="8.9943024" />
+ <rect
+ inkscape:transform-center-y="6.0159943"
+ y="-50"
+ x="-0.24999999"
+ height="4"
+ width="0.5"
+ id="rect3371"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ transform="matrix(-0.12533326,0.9921147,-0.9921147,-0.12533326,0,0)"
+ inkscape:transform-center-x="-47.62151" />
+ <rect
+ inkscape:transform-center-x="-47.905287"
+ transform="matrix(-0.06279055,0.99802673,-0.99802673,-0.06279055,0,0)"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="rect3373"
+ width="0.5"
+ height="4"
+ x="-0.25000024"
+ y="-50"
+ inkscape:transform-center-y="3.013944" />
+ <rect
+ y="-50"
+ x="-0.25000048"
+ height="4"
+ width="0.5"
+ id="rect3375"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ transform="matrix(-3.031187e-8,1,-1,-3.031187e-8,0,0)"
+ inkscape:transform-center-x="-48.000004" />
+ <rect
+ inkscape:transform-center-x="-47.905287"
+ transform="matrix(0.06279049,0.99802673,-0.99802673,0.06279049,0,0)"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="rect3377"
+ width="0.5"
+ height="4"
+ x="-0.25000072"
+ y="-50"
+ inkscape:transform-center-y="-3.0139452" />
+ <rect
+ inkscape:transform-center-y="-6.0159955"
+ y="-50"
+ x="-0.25000098"
+ height="4"
+ width="0.5"
+ id="rect3379"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ transform="matrix(0.1253332,0.99211471,-0.99211471,0.1253332,0,0)"
+ inkscape:transform-center-x="-47.62151" />
+ <rect
+ inkscape:transform-center-x="-47.149792"
+ transform="matrix(0.18738128,0.98228726,-0.98228726,0.18738128,0,0)"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="rect3381"
+ width="0.5"
+ height="4"
+ x="-0.25000125"
+ y="-50"
+ inkscape:transform-center-y="-8.9943036" />
+ <rect
+ inkscape:transform-center-y="-11.937115"
+ y="-50"
+ x="-0.25000149"
+ height="4"
+ width="0.5"
+ id="rect3383"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ transform="matrix(0.24868985,0.96858317,-0.96858317,0.24868985,0,0)"
+ inkscape:transform-center-x="-46.491996" />
+ <rect
+ inkscape:transform-center-x="-44.629275"
+ transform="matrix(0.36812452,0.9297765,-0.9297765,0.36812452,0,0)"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="rect3385"
+ width="0.5"
+ height="4"
+ x="-0.25000203"
+ y="-50"
+ inkscape:transform-center-y="-17.66998" />
+ <rect
+ inkscape:transform-center-y="-20.437408"
+ y="-50"
+ x="-0.25000226"
+ height="4"
+ width="0.5"
+ id="rect3387"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ transform="matrix(0.42577926,0.90482707,-0.90482707,0.42577926,0,0)"
+ inkscape:transform-center-x="-43.431702" />
+ <rect
+ inkscape:transform-center-x="-42.062724"
+ transform="matrix(0.48175364,0.8763067,-0.8763067,0.48175364,0,0)"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="rect3389"
+ width="0.5"
+ height="4"
+ x="-0.2500025"
+ y="-50"
+ inkscape:transform-center-y="-23.124178" />
+ <rect
+ inkscape:transform-center-y="-25.719688"
+ y="-50"
+ x="-0.25000274"
+ height="4"
+ width="0.5"
+ id="rect3391"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ transform="matrix(0.53582676,0.84432795,-0.84432795,0.53582676,0,0)"
+ inkscape:transform-center-x="-40.527744" />
+ <rect
+ inkscape:transform-center-x="-38.832819"
+ transform="matrix(0.58778522,0.80901702,-0.80901702,0.58778522,0,0)"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="rect3393"
+ width="0.5"
+ height="4"
+ x="-0.25000298"
+ y="-50"
+ inkscape:transform-center-y="-28.213694" />
+ <rect
+ inkscape:transform-center-y="-30.596354"
+ y="-50"
+ x="-0.25000322"
+ height="4"
+ width="0.5"
+ id="rect3395"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ transform="matrix(0.63742396,0.77051327,-0.77051327,0.63742396,0,0)"
+ inkscape:transform-center-x="-36.984639" />
+ <rect
+ inkscape:transform-center-x="-34.990497"
+ transform="matrix(0.68454708,0.72896865,-0.72896865,0.68454708,0,0)"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="rect3397"
+ width="0.5"
+ height="4"
+ x="-0.25000346"
+ y="-50"
+ inkscape:transform-center-y="-32.858264" />
+ <rect
+ inkscape:transform-center-y="-34.990497"
+ y="-50"
+ x="-0.25000373"
+ height="4"
+ width="0.5"
+ id="rect3399"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ transform="matrix(0.7289686,0.68454713,-0.68454713,0.7289686,0,0)"
+ inkscape:transform-center-x="-32.858264" />
+ <rect
+ inkscape:transform-center-x="-30.596354"
+ transform="matrix(0.77051322,0.63742402,-0.63742402,0.77051322,0,0)"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="rect3401"
+ width="0.5"
+ height="4"
+ x="-0.25000399"
+ y="-50"
+ inkscape:transform-center-y="-36.984639" />
+ <rect
+ inkscape:transform-center-y="-40.527744"
+ y="-50"
+ x="-0.25000447"
+ height="4"
+ width="0.5"
+ id="rect3403"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ transform="matrix(0.84432791,0.53582683,-0.53582683,0.84432791,0,0)"
+ inkscape:transform-center-x="-25.719688" />
+ <rect
+ inkscape:transform-center-x="-23.124178"
+ transform="matrix(0.87630666,0.48175371,-0.48175371,0.87630666,0,0)"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="rect3405"
+ width="0.5"
+ height="4"
+ x="-0.25000471"
+ y="-50"
+ inkscape:transform-center-y="-42.062724" />
+ <rect
+ inkscape:transform-center-y="-43.431702"
+ y="-50"
+ x="-0.25000495"
+ height="4"
+ width="0.5"
+ id="rect3407"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ transform="matrix(0.90482703,0.42577933,-0.42577933,0.90482703,0,0)"
+ inkscape:transform-center-x="-20.437407" />
+ <rect
+ inkscape:transform-center-x="-17.669979"
+ transform="matrix(0.92977647,0.36812459,-0.36812459,0.92977647,0,0)"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="rect3409"
+ width="0.5"
+ height="4"
+ x="-0.25000519"
+ y="-50"
+ inkscape:transform-center-y="-44.629275" />
+ <rect
+ inkscape:transform-center-y="-45.650716"
+ y="-50"
+ x="-0.25000542"
+ height="4"
+ width="0.5"
+ id="rect3411"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ transform="matrix(0.9510565,0.30901703,-0.30901703,0.9510565,0,0)"
+ inkscape:transform-center-x="-14.832816" />
+ <rect
+ inkscape:transform-center-x="-11.937114"
+ transform="matrix(0.96858315,0.24868992,-0.24868992,0.96858315,0,0)"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="rect3413"
+ width="0.5"
+ height="4"
+ x="-0.25000563"
+ y="-50"
+ inkscape:transform-center-y="-46.491995" />
+ <rect
+ inkscape:transform-center-y="-47.149791"
+ y="-50"
+ x="-0.25000581"
+ height="4"
+ width="0.5"
+ id="rect3415"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ transform="matrix(0.98228724,0.18738135,-0.18738135,0.98228724,0,0)"
+ inkscape:transform-center-x="-8.9943024" />
+ <rect
+ inkscape:transform-center-x="-6.0159943"
+ transform="matrix(0.9921147,0.12533327,-0.12533327,0.9921147,0,0)"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="rect3417"
+ width="0.5"
+ height="4"
+ x="-0.25000599"
+ y="-50"
+ inkscape:transform-center-y="-47.621509" />
+ <rect
+ inkscape:transform-center-y="-47.905286"
+ y="-50"
+ x="-0.25000617"
+ height="4"
+ width="0.5"
+ id="rect3419"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ transform="matrix(0.99802673,0.06279056,-0.06279056,0.99802673,0,0)"
+ inkscape:transform-center-x="-3.013944" />
+ <rect
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="rect3421"
+ width="0.5"
+ height="4"
+ x="-0.25000635"
+ y="-50"
+ inkscape:transform-center-y="-48.000003" />
+ <rect
+ inkscape:transform-center-y="11.937114"
+ y="-50"
+ x="-0.25000137"
+ height="4"
+ width="0.5"
+ id="rect3423"
+ style="fill:#f9f9f9;fill-opacity:1;stroke:#e6e6e6;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ transform="matrix(-0.24868987,-0.96858317,0.96858317,-0.24868987,0,0)"
+ inkscape:transform-center-x="46.491992" />
+ <text
+ xml:space="preserve"
+ style="font-size:8px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#f9f9f9;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial"
+ x="0.026167108"
+ y="-36.1035"
+ id="text3733"
+ sodipodi:linespacing="125%"
+ inkscape:transform-center-y="-38.934307"
+ inkscape:transform-center-x="0.42929375"><tspan
+ sodipodi:role="line"
+ id="tspan3735"
+ x="0.026167108"
+ y="-36.1035">4</tspan></text>
+ <text
+ inkscape:transform-center-y="-38.934307"
+ xml:space="preserve"
+ style="font-size:8px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#f9f9f9;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial"
+ x="22.653584"
+ y="-28.502102"
+ id="text3856"
+ sodipodi:linespacing="125%"><tspan
+ sodipodi:role="line"
+ id="tspan3858"
+ x="22.653584"
+ y="-28.502102">5</tspan></text>
+ <text
+ sodipodi:linespacing="125%"
+ id="text3860"
+ y="-8.8798885"
+ x="37.149273"
+ style="font-size:8px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#f9f9f9;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial"
+ xml:space="preserve"
+ inkscape:transform-center-y="-38.934307"><tspan
+ y="-8.8798885"
+ x="37.149273"
+ id="tspan3862"
+ sodipodi:role="line">6</tspan></text>
+ <text
+ inkscape:transform-center-y="-38.934307"
+ xml:space="preserve"
+ style="font-size:8px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#f9f9f9;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial"
+ x="37.149273"
+ y="15.515295"
+ id="text3864"
+ sodipodi:linespacing="125%"><tspan
+ sodipodi:role="line"
+ id="tspan3866"
+ x="37.149273"
+ y="15.515295">7</tspan></text>
+ <text
+ sodipodi:linespacing="125%"
+ id="text3868"
+ y="34.430401"
+ x="23.007137"
+ style="font-size:8px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#f9f9f9;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial"
+ xml:space="preserve"
+ inkscape:transform-center-y="-38.934307"><tspan
+ y="34.430401"
+ x="23.007137"
+ id="tspan3870"
+ sodipodi:role="line">8</tspan></text>
+ <text
+ sodipodi:linespacing="125%"
+ id="text3876"
+ y="34.253624"
+ x="-23.838688"
+ style="font-size:8px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#f9f9f9;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial"
+ xml:space="preserve"
+ inkscape:transform-center-y="-38.934307"><tspan
+ y="34.253624"
+ x="-23.838688"
+ id="tspan3878"
+ sodipodi:role="line">0</tspan></text>
+ <text
+ inkscape:transform-center-y="-38.934307"
+ xml:space="preserve"
+ style="font-size:8px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#f9f9f9;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial"
+ x="-36.920162"
+ y="15.515294"
+ id="text3880"
+ sodipodi:linespacing="125%"><tspan
+ sodipodi:role="line"
+ id="tspan3882"
+ x="-36.920162"
+ y="15.515294">1</tspan></text>
+ <text
+ sodipodi:linespacing="125%"
+ id="text3884"
+ y="-9.586997"
+ x="-37.273716"
+ style="font-size:8px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#f9f9f9;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial"
+ xml:space="preserve"
+ inkscape:transform-center-y="-38.934307"><tspan
+ y="-9.586997"
+ x="-37.273716"
+ id="tspan3886"
+ sodipodi:role="line">2</tspan></text>
+ <text
+ inkscape:transform-center-y="-38.934307"
+ xml:space="preserve"
+ style="font-size:8px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#f9f9f9;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial"
+ x="-22.247698"
+ y="-29.385986"
+ id="text3888"
+ sodipodi:linespacing="125%"><tspan
+ sodipodi:role="line"
+ id="tspan3890"
+ x="-22.247698"
+ y="-29.385986">3</tspan></text>
+ <path
+ style="fill:#f2f2f2;stroke:#1a1a1a;stroke-width:0.10141722;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ d="M -0.05195261,0.40925929 0.53642344,0.83673951 -22.150899,33.300471 l -6.995676,7.154101 4.642171,-8.864022 23.8640754,-31.60877087 z"
+ id="path4682"
+ inkscape:connector-curvature="0"
+ inkscape:transform-center-y="19.880424"
+ inkscape:transform-center-x="14.305076" />
+ <path
+ sodipodi:type="arc"
+ style="fill:#1a1a1a;fill-opacity:1;stroke:none"
+ id="path3900"
+ sodipodi:cx="55"
+ sodipodi:cy="55.000004"
+ sodipodi:rx="3.3363085"
+ sodipodi:ry="3.3363085"
+ d="m 58.336308,55.000004 a 3.3363085,3.3363085 0 1 1 -6.672616,0 3.3363085,3.3363085 0 1 1 6.672616,0 z"
+ transform="matrix(1.0490637,0,0,1.0490637,-57.698499,-57.6985)" />
+ </g>
+</svg>
diff --git a/backend/public/stylesheets/main.css b/backend/public/stylesheets/main.css
index 24fb7bc..815d2b9 100644
--- a/backend/public/stylesheets/main.css
+++ b/backend/public/stylesheets/main.css
@@ -3,6 +3,10 @@
src: url('../fonts/ds-digi.ttf')
}
+body {
+ background-color: #e6e6e6;
+}
+
nav.side {
position: absolute;
left: 0;
@@ -14,18 +18,17 @@ nav.side {
-moz-box-sizing:border-box;
}
-.status-table {
+.control-table {
border-collapse: collapse;
background: #e5e5e5;
border: 1px solid #969696;
margin-right: 10px;
}
-.status-table td {
+.control-table td {
padding: 10px;
}
-
.status {
font-size: 25px;
font-family: ds-digi;
@@ -33,6 +36,15 @@ nav.side {
.status.error {
color: #ff0000;
+ animation-name: blinker;
+ animation-duration: 1s;
+ animation-timing-function: linear;
+ animation-iteration-count: infinite;
+
+ -webkit-animation-name: blinker;
+ -webkit-animation-duration: 1s;
+ -webkit-animation-timing-function: linear;
+ -webkit-animation-iteration-count: infinite;
}
.status.critical {